梁明亮 孫逸潔
基于STC12C5A60S2單片機的智能機器人設計
梁明亮 孫逸潔
介紹一種以STC12C5A60S2單片機為控制核心的智能機器人的總體設計思路,闡述了智能機器人的硬件設計原理和C51軟件設計方法。該機器人參加全國職業院校技能大賽,運行穩定可靠,為獲得優異的競賽成績起到了重要作用。
STC12C5A60S2;智能機器人;主控制板;C51
基于單片機及嵌入式技術的輪式智能機器人集電子技術、自動控制、嵌入式技術和機電一體化技術于一體,涉及微處理器控制、傳感檢測、無線網絡通信等多個學科和領域。機器人技術應用競賽是2011年教育部技能大賽設定的最具觀賞性和參賽隊數最多的比賽項目之一,參賽隊使用51系列單片機作為微處理器為控制核心的機器人平臺,在此基礎上設計開發參賽隊使用的機器人,使機器人在比賽場地中完成比賽任務。比賽分為第一階段初賽和第二階段決賽兩個部分,要求機器人自動完成“建筑材料”(小籃球)識別、抓取、運輸和投放。
根據機器人比賽規程,需要參賽隊選擇機器人類型,我們選用并自行設計3臺機器人參賽,分別為1臺手動機器人和2臺自動機器人。
機器人總體結構如圖1所示,主要由電路板(含單片機核心板、驅動板等)、主動輪、從動輪、金屬框架、直流驅動電機、電池、上部機構等組成,機器人的底部安裝有紅外線傳感器(16路),機器人金屬架上用于安裝建筑材料(小籃球)的存儲機構和投放機構,機器人單片機核心板、驅動板等是機器人硬件電路的核心。

圖1 機器人總體設計示意圖
機器人的硬件電路設計工作包括主控制板、直流電機驅動、電源驅動、巡跡傳感器板、傳感信號處理板、顏色識別模塊、舵機、直流電機等電路的設計和制作。顏色識別電路用于對抗賽中識別橋墩內的小籃球的顏色(有紅、藍2種顏色),顏色識別模塊安裝在機器人運行前方位置,對抗比賽時識別橋墩內已投入的籃球是紅色還是藍色,從而確定投入的小籃球已方的還是對方的,如果經過判斷分析是對方的,機器人將利用上部機構將對方的小藍球取下,再投放己方的小藍球。
采用STC12C5A60S2單片機作為微處理器為核心設計機器人主控制板,主控板主要電路原理如圖2所示。
圖2中(見下頁),U1為 STC12C5A60S2單片機,STC12C5A60S2是宏晶科技生產的單時鐘機器周期(1T)的單片機,指令代碼完全兼容傳統8051,速度比普通的8051單片機快10倍左右,其內部集成有MAX810專用復位電路,功耗低、抗干擾強,具有2路 PWM輸出,8路高速10位A/D轉換器,適合于電機控制及其他電磁干擾較強的應用領域。
主控制板輸入信號有兩類,一類是16路專用巡跡傳感器信號輸入,另一類超聲傳感器、顏色識別、光電、接近等其他傳感器信號的輸入。
紅外巡跡傳感器板有16路,安裝于機器人底部,可以準確地探測到地面白色引導線及白色引導線組成的十字交叉點。紅外光電傳感器的基本原理是,設計紅外發射電路和紅外光敏接收電路,紅外線在黑線和白線對光的反射系數不同,白色反射光線,黑色吸收光線,電路當檢測到黑線時,檢測電路向單片機發出一個高電平信號。當檢測到白色時,檢測電路向單片機發出一個低電平信號。巡跡輸出信號發送給傳感器信號處理板。P1.3、P1.4為STC12C5A60S2的兩路PWM輸出接口,向電機驅動板發出電機PWM脈寬調制信號和方向信號,分別控制左、右輪直流減速電機的轉速。
16路巡跡信號輸入到單片機的 P2口,U3、U4為74HC245,構成了總線驅動電路,使單片機P2口為復用狀態,這樣設計可以節省單片機I/O資源,P4.4口用于U3、U4的選擇控制。當P4.4為高電平時,P2口接收的是16路傳感器的高8位信號QQ8~QQ15;當P4.4為低電平時,P2口接收傳感器的低8位信號QQ0~QQ7。
外接的位置傳感器信號、顏色識別模塊的輸出信號、光電傳感信號、接近傳感器信號均輸入到STC12C5A60S2單片機的P0口,各類傳感信號通過TL521光電耦合器隔離、74HC14整形后送給單片機。光電開關用于探測機器人運行前方是否有標志物,在比賽中,其用途是探測機器人運行前方橋墩內的建筑材料(小籃球)是否裝滿或前方是否有障礙物。
單片機根據巡跡信號對機器人位置進行分析計算后,輸出PWM脈寬調制信號給電機驅動板,電機驅動板用于驅動機器人平臺上的左、右輪直流減速電機。利用PWM信號占空比的不同,來控制電機的不同轉速;利用方向信號控制電機的正反轉(直流24V供電),實現機器人平臺的前進、后退和轉彎。2臺主動輪電機選用直流減速電機,主要參數:額定電壓24VDC,轉速150轉/分,功率70W。P3口為控制輸出口,通過驅動板驅動并控制機器人上部機構的舵機、對抗機構的直流電機進行相關動作。

圖2 主控制板電路原理
電機驅動電路采用專用芯片L298N作為電機驅動芯片。用該芯片作為電機驅動,穩定性好,驅動能力大,電路簡單,大大地簡化了驅動電路。L298N是SGS公司的產品,內部包含2個H橋的高電壓大電流橋式驅動器,接收標準TTL邏輯電平信號,可驅動46V、2 A以下的電機,工作溫度范圍在-25℃~130℃之間。機器人設計中,使用74HC245進行信號放大和緩沖,L298進行電流放大,單片機通過調節PWM信號的占空比實現對電機的調速與轉向。L298的第1和15腳單獨引出,接到電流采樣電阻,從而形成電流傳感信號,通過LM358運算放大器放大后產生ADM1、ADM2模擬電壓信號,送到單片機中進行電流的測量和分析,便于更好控制電機的電流及速度。
2.3.1 設計原則。
(1)機構要巧妙,重量要盡可能輕。在機器人競賽中,參賽機器人有總質量的限制,首先是3臺參賽機器人總重不能超過50KG,另外是在規定時間內,如果投球分數相同,則總重越輕的機器人參賽隊為勝出。所以在保證功能實現的前提下,結構越簡單越好。
(2)在對抗賽中可能會有機器人相互間的沖撞,機器人機械部件要有必要的強度、剛度和較好的可靠性。
(3)機構材料要選擇易加工的材料,還要方便賽前的簡單調試和維護。
(4)充分考慮與電路控制的可控制性,降低對控制系統的嚴格要求。
2.3.2 行走機構的設計。
機器人移動方式通常有輪式、履帶式和步行式等方式。我們采用輪式行走方式,輪式移動機構是最常用的一種移動機構,其優點為移動速度較高且較穩定,機構和控制都相對簡單。
輪式行走機構包括動輪和底部平臺。機器人底部平臺采用鋁合金型材,上部設計的投球機構安裝在機器人平臺的框架上,機器人底部框架要有一定的承受力。由于受比賽場地啟動區域面積限制,機器人底盤框架大小約為600mm×500mm。機器人上部機構固定安裝在底部平臺上。動輪包括主動輪2個,從動輪1個,主動輪采用金屬鋁芯、橡膠外胎,用于完成向前、向后直走,向左、向右轉向等技術動作。從動輪設計在運行前方,實際上為萬向輪,和兩只主動輪形成三角支撐著機器人的結構。從動輪無動力驅動,隨著主動輪的方向改變自己的方向。主動輪、從動輪形成了三點支撐的結構,平衡性和穩定性好。
2.3.3 上部機構的設計。
上部機構主要包括存儲建筑物(籃球)機絕、投球機構和抓取機構。采用串行螺旋儲存的方式儲存小籃球,空間利用率較高。投球機構為直落式,在舵機的控制下,籃球垂直向下,運動速度穩定,投球方式可靠。抓取機構可分為氣動手爪和機械式手爪兩種,氣動手爪相對比較簡單,但需在機器人上附載一個儲氣罐,重量較重,我們采用的是機械式手爪。
競賽機器人軟件編程主要包括主程序、PID電機控制程序等部分,按照參賽方案編寫參賽機器人程序,采用單片機Keil C51語言進行機器人的軟件設計。每次比賽前應根據場地上實際情況調整策略、更改程序。
STC12C5A60S2是整個主控制器的核心,它主要負責接收各類傳感信號并發出執行命令。自動機器人主程序運行后,選手按下啟動按鈕,機器人根據巡跡信號進行分析,控制機器人車體轉彎、停止,并實現橋墩的識別、球的抓取投放等動作。主程序運行時首先要對STC單片機定時器、兩路 PWM信號輸出的PCA模塊進行初始化。PWM即脈沖寬度調制控制,PWM信號通過L298放大后直接控制直流電機驅動兩個主動輪,PWM程序段如下:
void PWM(int motor1,int motor2)
{CCON=0X00;
CMOD=0X84;
CL=0X00;
CH=0X00;
CCAPM1=0X42;//右電機PWM控制
CCAP1L=motor2;
CCAP1H=0xf0;
PCA_PWM1=0;
CCAPM0=0X42;//左電機PWM控制
CCAP0L=motor1;
CCAP0H=0xf0;
PCA_PWM0=0;
CR=1;}//啟動PCA計數器
在機器人的控制程序中,STC12C5A60S2微處理器的主要任務要完成電機閉環控制,實現對機器人的位置、速度等調節,采用PID算法實現對直流電機轉速的精確控制。單片機將電機編碼器發送來的反饋值與輸出的PWM指令值進行比較,再按PID算法計算電機下一步的位置速度,較好地解決了運動過程中的位置偏差問題。
通過對手動機器人和自動機器人的測試,機器人運行穩定,能實現工件的自動識別、抓取、運輸。在本次全國競賽的決賽中,作者所指導參賽隊機器人運行穩定,反應迅速,自動機器人3次將對方已經投入的建筑材料(小藍球)從橋墩取下,決賽對抗中獲得了全國一等獎的好成績,驗證了所設計的智能機器人軟、硬件設計的可行性。
[1]2011年全國職業院校技能大賽大賽組委會.高職組機器人技術應用競賽指南[Z].2011:1-16.
[2]FIERRO R,L EWIS F L,“Control of nonholonomic mobile robot using neural networks,”IEEE Transactions on Neural Networks,vol.9,pp.589-600,1998.
[3]董宗祥,石紅瑞,楊杰.嵌入式智能小車測控系統的設計與實現[J].計算機測量與控制,2010(2):357-362.
Design of the Intelligent Robot Based on the STC12C5A60S2 MCU
Liang Mingliang Sun Yijie
The paper explains the general design of an I telligent robot that the key part of the control system is based on Type STC12C5A60S2Single Chip Micyoco and the design principle and methods of the type of robot.It is the higher liability of the robot that it won the technical skill competition for higher vocational colleges all over China.The robot has contribute a lot to the excellent competition result.
STC12C5A60S2;intelligent robot;main control board;C51
TP24
A
1672-6758(2012)05-0041-2
梁明亮,碩士,講師,鄭州鐵路職業技術學院,河南·鄭州。研究方向:單片機及機器人技術。郵政編碼:450052
孫逸潔,碩士,鄭州鐵路職業技術學院,河南·鄭州。研究方向:單片機應用技術。郵政編碼:450052
河南省教育廳科技攻關資助項目(2011C510003)
Class No.:TP24Document Mark:A
(責任編輯:鄭英玲)