米秀杰
MI Xiu-jie
(長春職業技術學院,長春 130033)
機器人技術是一種面向未來的現代化技術,機器人技術與網絡技術、基因技術、通信技術、計算機技術等一樣,屬于高新技術。機器人的定義是多種多樣的,在英文中機器人名為Robot,在1920年捷克作家卡雷爾·卡佩克(Karel Capek)的劇本《Rossum's Universal Robots》中首次出現,劇本中文意思為“羅薩姆的萬能機器人”。Robot為劇中的機器人,在捷克語中意為“苦力”,“奴隸”,英文的Robot 由此而來。1979年美國機器人協會將機器人定義為:“可重復編程的多功能操縱器,設計成通過不同的編程動作為執行多種任務移動原料、部件、工具或專門的設備。我國科學家對機器人的定義是:“機器人是一種自動化的機器,所不同的是這種機器具備一些與人或生物相似的智能能力,如感知能力、規劃能力、動作能力和協同能力,是一種具有高度靈活性的自動化機器”。
輪式移動機器人(Wheeled Mobile Robot-WMR)系統主要包括:機械結構、直流伺服電機、電源、測速元件、CCD攝像頭、微控制器、功率驅動模塊等。
1.1 移動機器人的體系結構
1.1.1 機械結構
機器人的移動方式有很多種,但大致就分為兩種:車輪式和足步式兩種,車輪移動方式的大部分技術比較成熟,控制也比較容易,而足步行走方式控制要困難得多,但隨著傳感器技術與微控制器的發展,已經有了很大的進展。
本文所研究的WMR采用車輪式移動機構。它有三個車輪,其中前輪為從動輪,為萬向自由輪,選用直徑為100mm的萬向夾板輪;后兩輪為驅動輪,固定式不可轉向,且相互獨立,選用硬橡膠夾板輪,直徑為200mm。兩個后輪各由一個200mm長的軸和軸承座固定在底板上,每個輪子有獨立的電氣驅動模塊和變速機構,變速機構采用鏈條傳動裝置。
機器人總體結構較為簡單,外觀上主體有圓形底座、長方形保護殼與攝像頭等。底座選用8mm厚的鋁板,能夠承受系統所需要的重量和強度,輪子、電機及傳動裝置與碼盤等都固定在其上。保護殼為3 mm厚的鋁板,上面固定有鋁型材支架,里面裝有控制驅動電路板和供電電源模塊。總體結構如圖1所示。

圖1 WMR的總體結構
1.1.2 電氣結構
輪式移動機器人的電氣結構,包括電源模塊、傳感器及其接口、控制電路、CCD攝像頭、直流伺服電機等。
1)電源
WMR是獨立行走的系統,控制電路板和光電編碼器需要有+5 V的電壓,功率驅動模塊需要有12V電壓,電機額定電樞電壓和勵磁電壓為24V。本課題中選用了4個12V的蓄電池,分為兩組,一組串聯為電機提供驅動,一組通過電源模塊為控制器和傳感器供電。
2)傳感器
本課題中采用的光電編碼器用來檢測機器人移動速度,檢測機器人所處環境及狀況的是外部傳感器,用來攝取環境信息的攝像頭,用來檢測當前障礙物距離的超聲波傳感器,有軌引導中使用的電磁感應器,都是外部傳感器。
3)控制電路
控制系統中主要采用了ATMEL公司的AT90S8515微控制器,主要因為它有兩路PWM輸出,非常適合用來控制兩個直流伺服電機。控制電路中還包括光電編碼器計數模塊、串行通訊模塊、電機驅動模塊、按鍵模塊等。
4)CCD攝像機及鏡頭
CCD攝像機采用臺灣敏通公司生產的MINTRON6482PD型攝像機,工作電壓為直流12V。將它安裝在移動機器人的正前方,鏡頭的視場范圍為車體前方大約0.5米到10米。攝像機安裝在車體前端的柱子上,高度可以自由調節,鏡頭的安裝位置根據目標的質心高度來定,考慮到搜索目標主要是地面目標,鏡頭稍微向下傾斜。為了使目標成像能有一定的清晰度,本課題中選用了焦距為6mm的固定焦距鏡頭,有很大的景深,調好像距范圍后,就能使目標在鏡頭前0.9~10m的范圍內有良好的清晰度。
1.2 機器人控制系統設計
1.2.1 控制系統結構
本文主要研究移動機器人系統的移動控制,未涉及機械手操作等特定任務實現控制。移動機器人系統本身對位置伺服的要求比較高,對速度也有一定的控制要求,所以一般都采用閉環控制。控制系統結構框圖如圖2所示。

圖2 移動機器人控制系統結構框圖
1.2.2 AT90S8515控制器介紹
AT90S8515是基于AVR增強性能、RISC結構的低功耗、CMOS技術、八位微控制器(Enhanced RISC Microcontrollers)。AVR核為32個通用寄存器與豐富指令集。32個寄存器全部與運算邏輯單元連接,使得可以在一個時鐘周期內執行一條指令訪問到兩個獨立寄存器。
AT90S8515具有8K字節可下載的Flash存儲器,512字節的RAM,32條通用I/O線,512字節EEPROM,帶比較模式的靈活性定時器,可編程的串行UART,內部及外部中斷,帶內部晶振的可編程看門狗(WDT)定時器;一個為下載程序而設計的SPI串行口,以及2個可通過軟件選擇的省電模式。四個8位雙向I/O口A,B,C,D,A,B,C口中每個引腳內部都有上拉電阻,輸出緩沖器可以吸收20mA的電流,A,C口除可用作通用I/O口功能外,還可以類似51系列一樣,使用外部SRAM時,前者作為復用的地址/數據口,后者作為地址輸出,D口還具有其它許多功能。
總之,以AT90S8515作為嵌入式高效微控制器,無需額外的程序存儲器、數據存儲器、PWM控制專用芯片,大為簡化了系統的硬件,其內部的看門狗電路及相應指令控制,提高了系統的可靠性和安全性,與51系列單片機相比,性能上要強得多。
1.2.3 硬件設計
課堂中,教師提供實驗器材,鼓勵學生自主設計實驗,小組討論制定實驗方案。同時,教師巡視指導,選取實驗方案展示,并組織其他小組進行討論、補充、修正,確定方案。最后,教師可以選擇用表格的形式(表1)直觀呈現實驗步驟,使學生認識到確定、控制變量與設計實驗之間的關系,促進學生對控制變量的理解和運用,幫助其領會實驗設計思路,提高科學思維能力。
1)LEC5OE光電編碼器及測速
光電編碼器俗稱碼盤,是一種通過光電轉換將軸上的機械幾何位移量轉換成脈沖或數字量的傳感器。光電編碼器的基本結構由旋轉軸上的編碼圓盤以及裝在圓盤兩側的發光元件和光敏元件組成。圓盤上規則地刻有透光和不透光的線條或孔,當圓盤隨著轉軸旋轉時,光敏元件接收的光通量強弱隨著光線條同步變化,光敏元件波形經過整形輸出變為脈沖輸出。一般圓盤上還設有定相標志,產生零信號,每轉一圈產生一個,又稱基準脈沖。此外為判斷旋轉方向,可提供A,B兩路相位相差90°的脈沖信號。
本系統中所采用的是增量式光電編碼器LEC-2400BM-GOSE作為WMR的速度檢測傳感器。它的主要技術指標為:
(1)每轉輸出2400個幅值為5V、占空比為50%的脈沖信號
(2)零位脈沖信號寬度:1±0.5p
(3)信號位置精度:0.1p
2)光電編碼器的計數與鑒向
本系統采用的增量式光電編碼器,在同等精度下較絕對式編碼盤有結構簡單、價格便宜,設計硬件電路簡單等優點。光碼盤主要有兩種基本的計量方法,方法一,根據A(B)相脈沖信號的邏輯電平值進行計數操作,并判斷出光碼盤的運動方向,若為高電平,則認為光碼盤正轉,計數器加1;若為低電平,則認為光碼盤逆轉,計數器減1。硬件實現時,該方法只需一組雙向可逆計數器。方法二,光碼盤正轉時,A相脈沖上跳沿對應B相脈沖為高電平,則一組計數器加1;光碼盤逆轉時,B相脈沖上跳沿對應A相脈沖為高電平,則另一組計數器加1,兩組計數器的結果相減即可確定絕對位移量和方向。這種方法需要二組計數器,且不能直接給出方向狀態信息或最終方向結果。
1.3.1 鍵盤掃描程序
鍵盤掃描程序流程圖如圖3所示。初始化時將PD4、 PD6定義為輸出、高電平,PC4~PC7定義成輸入,正常情況下為高電平。當掃描按鍵時,依次將PD4和PD6置為低電平,讀PC4、PC7值,從而識別有無鍵按下以及哪個鍵被按下。相應鍵的功能定義有:啟動、停止、直行、繞行、左轉彎、右轉彎、加速、減速(均在預先設置的速度等信息情況下)。
1.3.2 光電編碼脈沖計數轉速讀取程序
轉速讀取程序流程圖如圖4所示。
1.3.3 主控程序
給出程序流程如圖所示。系統的初始化在進行Il0口初始化,定時器/計數器初始化,數據參數初始化包括給定轉速初始化,默認移動機器人行進方式初始化、PID參數初始化等。程序設計中,為了避免使用浮點數出現大量代碼而執行效率低,在數據運算處理中,大多采用整型。在很多情況下,能忽略小數點部分對整個數值的影響,就省略小數點部分,改為整型數。如果中間變量為浮點型且不能忽略小數點,可將中間變量乘以2n或更直觀的10n,轉換為長整型數,其中乘以2 n可以使用移位方式實現,速度快,而乘以10n生成的代碼量較大而速度較慢。在最后運算時除去相應的2n或10n恢復原值。程序經ICE200仿真調試驗證無誤后,使用RF810編程器寫入AT90S8515。
流程圖如圖5所示。

圖4 轉速讀取程序流程圖

圖5 主控程序流程
機器人能做許多人類無法做的工作,它無需像人類那樣的工作環境,只要機器不壞,可以長時間的進行工作。但機器人在自由度,靈巧度,傳感能力等方面有其局限性,相信在不斷的發展中,這些方面將得到逐步的改善。
[1]吳瑞詳.機器人技術與應用[M].北京:北京航空航天大學出版社,2000.
[2]蔣新松.機器人與工業自動化[M].石家莊:河北教育出版社,2003.
[3]朱世強.機器人技術與應用[M].杭州:浙江大學出版社,2000.