基于CAN總線的水下機器人執(zhí)行節(jié)點設(shè)計與實現(xiàn)
與傳統(tǒng)的纜控水下航行器(ROV)相比,自主水下航行器(AUV)具有如下特點:(1)環(huán)境適應性強,活動范圍大,可沖破人工潛水極限進入現(xiàn)場進行接近觀測;(2)體積小,使用方便,便于布放和回收;(3)可根據(jù)水聲信號遙控或預置程序控制,按要求進行相關(guān)項目觀測;(4)有自主動力,水下運行時間相對較長,有源噪聲低等。
本文引用地址:http://m.butianyuan.cn/article/188669.htm因水下機器人裝配有大量傳感器,要求控制系統(tǒng)具有較高的處理速度,又因開發(fā)費用較高,必須具有很好的可擴展性來改變測量裝置以實現(xiàn)多功能。分布式控制系統(tǒng)在適用范圍、可擴展性、控制速度、系統(tǒng)模塊化、可維護性、抗單點故障等方面具有明顯優(yōu)勢,是極佳的選擇。
圖1所示為本文開發(fā)的基于CAN總線的分布式水下機器人控制系統(tǒng)結(jié)構(gòu)。CAN總線具有如下特性:(1)實時性高。多主站工作方式,優(yōu)先級高的節(jié)點優(yōu)先傳輸數(shù)據(jù),數(shù)據(jù)傳輸率高(1Mbit/s);(2)檢錯和糾錯機制強。發(fā)送信息損壞自動重發(fā),采用獨特的非破壞總線仲裁技術(shù),有CRC及其它校驗;(3)連接簡單,可擴展性強,開發(fā)方便。通訊協(xié)議與開放系統(tǒng)互連模型OSI一致,應用層協(xié)議可有用戶自己定義。
圖1 水下機器人控制系統(tǒng)結(jié)構(gòu)
控制系統(tǒng)由各個功能節(jié)點通過CAN總線連接構(gòu)成,各節(jié)點大部分時間并行工作,只在必要時與中央控制節(jié)點通訊。其中的執(zhí)行節(jié)點直接控制AUV的現(xiàn)場執(zhí)行機構(gòu),對AUV的功能實現(xiàn)性起著至關(guān)重要的作用。在研究開發(fā)的AUV中,執(zhí)行節(jié)點除完成CAN通信外,還有以下幾個主要功能:(1)航行速度控制功能。其執(zhí)行部件為一三葉螺旋槳,產(chǎn)生主推力;(2)航行方向控制功能。執(zhí)行部件是一對垂直舵;(3)航行深度控制功能。實現(xiàn)深度控制與縱傾控制,執(zhí)行部件是一對水平舵;(4)傳感器模塊的旋轉(zhuǎn)調(diào)平控制功能,實現(xiàn)部分傳感器位姿調(diào)整。其中,(1)為速度伺服控制系統(tǒng),(2),(3),(4)為位置伺服控制系統(tǒng),均由無刷直流伺服電機進行驅(qū)動。
執(zhí)行節(jié)點硬件設(shè)計
CAN接口設(shè)計
節(jié)點主芯片選用Philips公司的P87C591,其兼容80C51指令集,并成功的集成了Philips公司的SJAl000CAN控制器,該嵌入式CAN控制器具有以下特點:(1)完全符合CAN210規(guī)范,控制CAN幀的接收和發(fā)送;(2)CAN接口包含5個實現(xiàn)CPU與CAN控制器連接的特殊功能寄存器。對重要CAN寄存器的訪問通過快速自動增加的尋址特性和對特殊功能寄存器的位尋址來實現(xiàn);(3)CAN控制器的發(fā)送緩沖區(qū)能夠保存一個完整的CAN信息幀(擴展或標準幀),只要通過CPU啟動發(fā)送,信息就從發(fā)送緩沖區(qū)傳輸?shù)紺AN內(nèi)核模塊;(4)當接收一個信息時,CAN內(nèi)核模塊將串行數(shù)據(jù)流轉(zhuǎn)換成并行數(shù)據(jù)傳輸?shù)津炇諡V波器,通過此可編程濾波器,P87C591確認接收需要的信息。
圖2所示為以P87C591為核心的CAN節(jié)點接口電路。P1.0,P1.1分別對應CAN的收(RXDC)和發(fā)(TXDC)線,通過高速光耦(6N137)與總線實現(xiàn)光電隔離。CAN收發(fā)器選用Philips的P82C250,以差分方式發(fā)送,CAN總線末端加124的終端匹配電阻。
圖2 CAN總線接口電路
無刷直流伺服系統(tǒng)構(gòu)建
根據(jù)應用場合,選擇了瑞士Maxon公司的EC系列無刷直流伺服電機(DCBrushless ServoMotor),其滿足以下要求:(1)電機重量輕,體積小,這在水下潛器設(shè)計中是十分關(guān)心的問題,而且轉(zhuǎn)動慣量約可減少50%左右;(2)無機械換向,大大減少了電磁干擾,適合AUV在狹小空間容納多種傳感器的特點;(3)特征曲線基本為直線,控制性好;(4)有一定的防潮和耐高溫能力。螺旋槳驅(qū)動和舵驅(qū)動功率不同,分別為400W和80W;工作電壓分別為直流48V和直流24V。
電機驅(qū)動器采用美國Accelus公司的直流無刷數(shù)字伺服驅(qū)動器,其有以下特點:(1)全數(shù)字驅(qū)動器,電流、速度和位置三環(huán)控制可以自由配置;(2)驅(qū)動器中集成有flash存儲器,其有配套的計算機軟件,通過驅(qū)動器上的RS232端口對驅(qū)動器進行部分功能設(shè)定。(3)由于為全數(shù)字驅(qū)動器,與控制器連接簡單。
圖3表示了一路直流無刷電機伺服系統(tǒng)。對螺旋槳,驅(qū)動器設(shè)置成速度控制模式,其它設(shè)置為位置控制模式。螺旋槳驅(qū)動電機采用PWM調(diào)速方式,其它驅(qū)動電機都通過微控制器I/O口輸出脈沖控制。
圖3 無刷電機伺服控制系統(tǒng)示意圖
電機驅(qū)動器按要求進行合理設(shè)置和連接后,與控制器P87C591密切相關(guān)的信號線有兩條:一條控制電機的轉(zhuǎn)速或位置,一條控制電機的轉(zhuǎn)向。對螺旋槳控制,將其驅(qū)動器設(shè)置為速度模式,采用PWM調(diào)速控制,電機的轉(zhuǎn)速與PWM的占空比成正比。其它電機控制系統(tǒng),驅(qū)動器設(shè)置為位置模式,由于這幾個電機控制系統(tǒng)對電機的轉(zhuǎn)速要求不高,采用定轉(zhuǎn)速,這樣脈沖頻率恒定,通過對P87C591的定時器編程產(chǎn)生脈沖,另外用控制器的一個端口控制電機的轉(zhuǎn)向。
為了保證系統(tǒng)工作安全、可靠,在控制器與驅(qū)動器之間,采用高速光耦6N137進行隔離,其原因:(1)控制器和驅(qū)動器存在接地電位差;(2)抑制環(huán)境干擾信號;(3)控制器供電4.5~5V,為弱電,而驅(qū)動器供電20~70V,相對較高。在電源輸入和電機輸出都配置保險絲進行安全保護。
執(zhí)行節(jié)點軟件設(shè)計
應用層協(xié)議制定
在CAN210規(guī)范標準中,為了用戶使用的靈活性,只對物理層和數(shù)據(jù)鏈路層進行了規(guī)定,沒有定義應用層,這就需要用戶根據(jù)自己需求制定應用層協(xié)議。雖然目前可以使用一些成熟的應用層協(xié)議,如HiLon、CANOpen、DeviceNET和SDS協(xié)議等,但缺乏針對性,因此首先制定CAN應用層協(xié)議。
伺服電機相關(guān)文章:伺服電機工作原理
評論