綦黎明,王寶慶,張 寧
(青島大學(xué)附屬醫(yī)院,山東 青島 266003)
隨著科技的發(fā)展,越來越多的領(lǐng)域使用機(jī)器人代替人手進(jìn)行工作。尤其在一些危險(xiǎn)的領(lǐng)域,如爆炸后的現(xiàn)場、氣體泄露的空間等會(huì)對偵查人員造成嚴(yán)重生命威脅的地方,用于偵查的機(jī)器人需求越來越大。一般具有控制系統(tǒng)的小車通過搭載偵測儀器便可進(jìn)入現(xiàn)場實(shí)現(xiàn)作業(yè),但在一些復(fù)雜環(huán)境下,普通的小車容易出現(xiàn)通信中斷、控制不穩(wěn)定等問題而無法準(zhǔn)確地實(shí)現(xiàn)運(yùn)動(dòng)的控制,反而增大偵查的難度。為了給偵查作業(yè)提供一個(gè)良好的負(fù)載平臺(tái),負(fù)載小車必須具備以下兩點(diǎn)要求[1]。
小車接收到控制終端的指令后,能實(shí)時(shí)執(zhí)行指令的要求,不能存在較長的延遲誤差。將PID算法應(yīng)用于閉環(huán)反饋系統(tǒng)內(nèi)可更好的達(dá)到本性能要求。
小車在相對密封的空間內(nèi)行走,只能通過無線通信來或許控制指令和傳送數(shù)據(jù),保證通信的可靠也是負(fù)載平臺(tái)的一個(gè)重要要求。所以,在該監(jiān)控小車的控制系統(tǒng)中使用89C52單片機(jī)作為控制核心控制器,電機(jī)上安裝碼盤用于反饋數(shù)據(jù)至控制器形成一個(gè)閉環(huán)控制系統(tǒng)[2],并通過加入了ZigBee通信模塊、測距避障防觸碰模塊等增加了系統(tǒng)控制的穩(wěn)定性和安全性,滿足監(jiān)控小車在實(shí)際場景的應(yīng)用。
PID 控制器是基于偏差的比例(Proportional)、積分(Integral)和微分(Derivative)的一種線性控制器,它是工業(yè)控制中較為常見的控制器[3]。由于PID控制器算法簡單魯棒性強(qiáng),因而被廣泛應(yīng)用于不同工業(yè)過程控制系統(tǒng)中。
PID控制器典型的控制結(jié)構(gòu),如圖1所示。PID控制器和被控對象是系統(tǒng)重要組成部分。PID控制器是一種具有線性系統(tǒng)的控制器,會(huì)通過給定的初始值和實(shí)際輸出值的差值構(gòu)成控制偏差,即:
再通過微分、比例和積分的線性組合組成系統(tǒng)的控制量并對被控對象進(jìn)行控制,如式(2)、式(3)所示。
圖1 PID控制結(jié)構(gòu)圖Fig.1 PID Control Structure Diagram
式中:KP、Ti、Td—PID控制器的比例增益、積分時(shí)間常數(shù)和微分時(shí)間常數(shù)。
這三個(gè)參數(shù)的選取將會(huì)對PID控制系統(tǒng)的控制效果產(chǎn)生直接影響。單片機(jī)接收電機(jī)編碼器反饋的數(shù)據(jù)后,根據(jù)PID算法自動(dòng)調(diào)節(jié)電機(jī)的輸出量實(shí)現(xiàn)對小車的穩(wěn)定控制。
小車控制系統(tǒng)采用的是STC公司生產(chǎn)的STC89C52單片機(jī)作為核心控制器,其中PID控制算法由單片機(jī)實(shí)現(xiàn),將QAZ2000-Zigbee模塊與單片機(jī)的串口相連作為通信模塊,核心控制器收到控制命令后根據(jù)設(shè)定好的通信協(xié)議解析通信指令,轉(zhuǎn)換為單片機(jī)的指令發(fā)送給電機(jī)驅(qū)動(dòng)模塊,通過給電機(jī)驅(qū)動(dòng)模塊的信號(hào)實(shí)現(xiàn)小車的行走狀態(tài)的控制。小車控制系統(tǒng)主要由電源模塊、通信模塊、驅(qū)動(dòng)模塊、以及安全避障模塊構(gòu)成,如圖2所示。
圖2 控制系統(tǒng)構(gòu)成圖Fig.2 The Composition Diagram of Control System
該小車控制系統(tǒng)的硬件設(shè)計(jì)主要圍繞主控制器STC89C52核心控制器進(jìn)行設(shè)計(jì)。
電源是小車系統(tǒng)的動(dòng)力來源,也是控制器的工作的必然需求,因此電源模塊的性能往往影響一個(gè)控制系統(tǒng)的工作性能,因此在進(jìn)行硬件系統(tǒng)的設(shè)計(jì)時(shí),首先需要對控制系統(tǒng)中各個(gè)模塊所需要的電源進(jìn)行統(tǒng)計(jì)和總結(jié),以便所設(shè)計(jì)的電源能夠符合系統(tǒng)的要求,在本系統(tǒng)中,我們采用的是STC89C52單片機(jī),所需要的電源電壓為5V,電流大約在(150~500)Ma之間,我們所選用的電機(jī)的額定電壓為24V,額定電流為300Ma,通信模塊的電壓為3.3V,工作電流為150Ma,因此我們接入的電源電壓至少為24V,并且在24V的基礎(chǔ)上完成5V和3.3V的轉(zhuǎn)換。在此系統(tǒng)中電流的需求較小,因此在一般的設(shè)計(jì)中可以滿足電流的要求,主要實(shí)現(xiàn)電壓的轉(zhuǎn)換和穩(wěn)壓[6-7]。電源模塊原理圖,如圖3所示。
圖3 電源模塊原理圖Fig.3 The Schematic Diagram of Power Module
因此采用24V蓄電池為該小車的動(dòng)力源,需要通過24V的電源降壓設(shè)計(jì),產(chǎn)生5V和3.3V電壓的電源,由24V直接降為5V,降壓的幅度太大,一般的降壓芯片只能在理論上完成,在小車工作工程中,降壓芯片的功率過高,及容易燒壞,因此,采用逐級降壓的方法完成降壓。為了保證系統(tǒng)的可靠,對供入系統(tǒng)的電壓進(jìn)行濾波處理,減少干擾,首先采用78M12降壓芯片,完成24V到12V的降壓,然后在采用78M05完成12V至5V的降壓,并對得到的電壓進(jìn)行濾波處理,保證系統(tǒng)電源的穩(wěn)定可靠。最后采用ASM1117-3.3芯片完成3.3V電壓。致此本系統(tǒng)的電源模塊設(shè)計(jì)完成。
在進(jìn)行電機(jī)驅(qū)動(dòng)電路設(shè)計(jì)之前,首先根據(jù)小車系統(tǒng)的功能要求,進(jìn)行電機(jī)的選擇,在本設(shè)計(jì)中選用ASLONGJGA25-2418直流無刷減速電機(jī),該電機(jī)具有噪音小,壽命長,調(diào)速性能好等優(yōu)點(diǎn),并且可以實(shí)現(xiàn)反饋調(diào)速,體積小,非常適合體積較小的小車系統(tǒng)使用。
ASLONGJGA25-2418直流無刷減速電機(jī)的接口分別為:PWM調(diào)速、電源負(fù)極、正反轉(zhuǎn)控制、反饋控制以及電源正極,根據(jù)該電機(jī)的接口以及驅(qū)動(dòng)原理,設(shè)計(jì)了電機(jī)驅(qū)動(dòng)電路,如圖4所示。
圖4 電機(jī)驅(qū)動(dòng)電路Fig.4 The Motor Drive Circuit
搭建了符合該小車系統(tǒng)的電機(jī)驅(qū)動(dòng)電路,如圖4所示。主要完成了電機(jī)的速度控制信號(hào)和方向的控制,當(dāng)系統(tǒng)由控制信號(hào)時(shí),相應(yīng)的I/O口就被置為高電平,三極管導(dǎo)通,輸出電壓0V。當(dāng)I/O口電平為低電平時(shí),三極管無法導(dǎo)通,輸出24V,實(shí)現(xiàn)了電機(jī)的PWM控制和方向的控制。但由于主控芯片的I/O電流很小,總體的電流為100多毫安,每一個(gè)I/O口的電流最大為幾十毫安,因此高電平很容易被拉低,控制失靈,因此在電路設(shè)計(jì)時(shí),在控制I/O出添加上拉電子,保證高電平及時(shí)有效。也保證了控制的安全可靠性[8]。
本系統(tǒng)中通信模塊選用QAZ2000XZigbee無線通信模塊,該模塊能通過串口轉(zhuǎn)Zigbee無線數(shù)據(jù)實(shí)現(xiàn)無線傳輸。它在TI公司CC2530F256芯片的基礎(chǔ)上,在射頻收發(fā)前端增加了C2591,Zigbee2007/PRO是它內(nèi)部運(yùn)行的協(xié)議棧,因此它具有zigbee協(xié)議的全部特性。該模塊具有如下的優(yōu)點(diǎn):(1)自動(dòng)組網(wǎng):模塊上電后自動(dòng)組網(wǎng),通過協(xié)調(diào)器給路由分配地址,無需人工操作,模塊即使掉電,網(wǎng)絡(luò)也可自動(dòng)進(jìn)行修復(fù)。(2)數(shù)據(jù)透傳:使用串口進(jìn)行傳輸,可實(shí)現(xiàn)數(shù)據(jù)在兩個(gè)模塊間通信。(3)靈活性強(qiáng):出廠設(shè)為路由器模式,用戶可根據(jù)使用要求將其設(shè)為協(xié)調(diào)器或路由器;(4)使用方便:用戶無需詳細(xì)了解zigbee協(xié)議,只需通過串口即可實(shí)現(xiàn)無線傳輸;為此設(shè)計(jì)了接口,如圖5所示。
圖5 無線模塊通信接口Fig.5 The Wireless Module Communication Interface
在小車行進(jìn)過程中,由于小車的工作環(huán)境是任意的,所以在小車前進(jìn)的路線上,存在著許多未知的障礙物,在小車運(yùn)動(dòng)控制操作中很難保證環(huán)境中設(shè)備和小車的安全行駛,所以在本課題的設(shè)計(jì)中增加了主動(dòng)測距避障防觸碰模塊[9]。
常見的測距方式有紅外測距、超聲測距和激光測距其中紅外測距容易受到環(huán)境中可見光的干擾,測距的干擾較大,而激光測距具有準(zhǔn)確率高,使用穩(wěn)定等優(yōu)點(diǎn),但是激光傳感器的造價(jià)高、價(jià)格貴,民用代價(jià)大,所以在這里采用超聲波傳感器,超聲傳感器具有價(jià)格低、結(jié)構(gòu)簡單等優(yōu)點(diǎn)。
在本課題的設(shè)計(jì)過程中,經(jīng)過大量的調(diào)研和對比,最終選用了型號(hào)為:KS103超聲傳感器模塊,模塊的測距范圍(1~800)cm,該模塊的結(jié)構(gòu)和引腳,如圖6所示。
圖6 測距模塊接口Fig.6 The Distance Module Interface
該測距模塊的接頭引腳分別為VCC、GND、SDA/TX、SCL/RX和MODE接腳,其中SDA/TX、SCL/RX分別為TTL電平的發(fā)送和接收接口,由于我們選用的主控模塊的芯片是STC89C52單片機(jī),該單片機(jī)的串口就是TTL電平,所以選用該超聲模塊可以直接與單片機(jī)的TTL電平相連接,大大簡化了電路的設(shè)計(jì),同時(shí)在嵌入式的開發(fā)也降低了難度,大大的提高了數(shù)據(jù)的傳送可靠性和準(zhǔn)確率,同時(shí)保證了數(shù)據(jù)傳輸?shù)乃俣取?/p>
小車的控制系統(tǒng)主要的職責(zé)是將操作人員設(shè)計(jì)的規(guī)劃轉(zhuǎn)換為小車的運(yùn)動(dòng),實(shí)現(xiàn)小車的期望運(yùn)動(dòng),同時(shí)小車系統(tǒng)中搭載了超聲測距安全模塊,小車有自主決定的權(quán)利,當(dāng)小車測量到前方的障礙物小于設(shè)定的安全值時(shí),小車發(fā)出警報(bào),提醒操作者前方有障礙物,當(dāng)在設(shè)定的時(shí)間,如果操作者沒有改變小車運(yùn)動(dòng)的方向,小車啟動(dòng)安全保護(hù)機(jī)制,剎車停止運(yùn)動(dòng)。小車控制的流程圖[10],如圖7所示。
圖7 小車控制流程圖Fig.7 TheControl Flow Chart of Vehicle
整個(gè)控制系統(tǒng)的軟件流程圖,如圖7所示。在進(jìn)行小車控制的時(shí)候需要將人的控制意愿轉(zhuǎn)換為小車的運(yùn)動(dòng)效果,所以需要約定好通信協(xié)議,也就是說只有約定好了人和機(jī)器之間的協(xié)議才能進(jìn)行通信,為此設(shè)計(jì)了如表1所示的通信協(xié)議。
表1 通信協(xié)議Tab.1 The Communication Protocol
按照表1的通信協(xié)議編寫控制程序,其中通信的信息包以(0×00)開頭,以(0×23)為包尾,中間兩個(gè)功能碼,分別代表兩個(gè)電機(jī)的功能,其中當(dāng)功能碼在(0~100)的范圍內(nèi)時(shí),電機(jī)正轉(zhuǎn),在(-100~0)的范圍內(nèi)時(shí),電機(jī)反轉(zhuǎn)。實(shí)現(xiàn)了電機(jī)的控制,也就實(shí)現(xiàn)了小車的運(yùn)動(dòng)控制。
由于小車工作的環(huán)境中存在著大量的障礙物,并且由于工作環(huán)境的多邊形和未知性,給小車的運(yùn)動(dòng)控制帶來了挑戰(zhàn),所以在本課題的設(shè)計(jì)中添加了超聲波避障模塊,超聲波避障的原理是通過測量前方障礙物的距離,與設(shè)定的距離進(jìn)行比較,當(dāng)障礙物的距離小于等于設(shè)定的安全距離時(shí),自動(dòng)啟動(dòng)安全程序,達(dá)到避障的功能。下邊首先通過編寫程序,單獨(dú)的使用超聲波避障模塊測量前方障礙物的距離,并將該距離通過串口顯示在電腦屏幕上。通過在實(shí)驗(yàn)室設(shè)置屏障測試小車控制系統(tǒng)的可靠性,如圖8所示。
圖8 小車實(shí)驗(yàn)場景Fig.8 The Experiment Scene of the Test
實(shí)驗(yàn)測距的結(jié)果,如表2所示。
表2 距離測試結(jié)果Tab.2 The Distance Test Result
通過表2可以得到,超聲波傳感器測量的精度完全滿足本實(shí)驗(yàn)的要求。
通過實(shí)驗(yàn)驗(yàn)證了靜止?fàn)顟B(tài)下超聲波傳感器的測距的可靠性,但是在實(shí)際應(yīng)用中,小車在工作環(huán)境中始終處于運(yùn)動(dòng)狀態(tài),所以對于小車運(yùn)動(dòng)狀態(tài)下避障的可靠性需要進(jìn)一步設(shè)計(jì)實(shí)驗(yàn)進(jìn)行進(jìn)一步的分析。
針對這個(gè)問題設(shè)計(jì)了如下的實(shí)驗(yàn),設(shè)定小車避障的安全距離為10cm,當(dāng)小車在運(yùn)動(dòng)過程中距離障礙物的距離<15cm時(shí),立即停止,測量小車的實(shí)際距離,與設(shè)定的安全距離進(jìn)行比較,通過設(shè)計(jì)以不同的速度運(yùn)動(dòng),測量最終停止的距離,保障小車運(yùn)行的安全。
通過表3可以得到,小車速度在(0~0.3)m/s的范圍內(nèi)運(yùn)動(dòng)時(shí),小車能夠自主的完成避障功能。
目前,還沒有一種安全可靠地室內(nèi)定位技術(shù),但在實(shí)際應(yīng)用中,我們通常希望能夠讓機(jī)器人在未知的環(huán)境中工作,因此,針對機(jī)器人在室內(nèi)未知環(huán)境下工作的需要,設(shè)計(jì)了一套能夠在未知環(huán)境中安全可靠工作的機(jī)器人系統(tǒng)。
該系統(tǒng)的優(yōu)點(diǎn)有:(1)在系統(tǒng)中為了提高系統(tǒng)的控制的可靠性使用了PID控制算法,并該系統(tǒng)進(jìn)行實(shí)驗(yàn)驗(yàn)證。監(jiān)控小車能在設(shè)定的空間內(nèi)完成操作人員的指定動(dòng)作而且運(yùn)動(dòng)時(shí)平穩(wěn)進(jìn)行,解決了開環(huán)控制系統(tǒng)誤差大、啟動(dòng)急促等缺點(diǎn)。(2)為了保證小車的運(yùn)動(dòng)安全,添加了超聲安全測距模塊,保證了使用的安全可靠,并分別設(shè)計(jì)了靜止?fàn)顟B(tài)下的距離測量實(shí)驗(yàn)和運(yùn)動(dòng)狀態(tài)下的避障停止實(shí)驗(yàn),驗(yàn)證了本課題設(shè)計(jì)的可靠性和安全性。小車在實(shí)際測試中可以準(zhǔn)確的避開障礙物而且執(zhí)行控制端發(fā)送的命令,滿足其應(yīng)用要求。