CAN總線技術(shù)在工業(yè)碼垛機(jī)器人控制系統(tǒng)中的應(yīng)用研究
在圖2所示的工業(yè)碼垛機(jī)器人控制系統(tǒng)中,上位主控機(jī)選用PC-104工控機(jī),通過PCI總線連接PCI-CAN適配卡,按CANopen協(xié)議標(biāo)準(zhǔn)與交流伺服電機(jī)控制器進(jìn)行通信。下位電機(jī)伺服驅(qū)動(dòng)器接受上位機(jī)發(fā)出的指令語(yǔ)言,按指令要求控制電機(jī)轉(zhuǎn)動(dòng),由電機(jī)帶動(dòng)執(zhí)行機(jī)構(gòu)完成動(dòng)作。同時(shí),電機(jī)伺服驅(qū)動(dòng)器通過交流電機(jī)上的光電編碼器檢測(cè)同步感應(yīng)電機(jī)運(yùn)動(dòng)狀態(tài),結(jié)合預(yù)先設(shè)定在驅(qū)動(dòng)器中的PI調(diào)節(jié)參數(shù),實(shí)現(xiàn)對(duì)電機(jī)運(yùn)動(dòng)狀態(tài)的實(shí)時(shí)控制。
采用驅(qū)動(dòng)器與工控機(jī)經(jīng)由CAN總線和PCI-CAN適配卡連接,主要是基于以下考慮。
1 實(shí)現(xiàn)一根雙絞線串接全部設(shè)備,節(jié)省安裝維護(hù)費(fèi)用。
2 實(shí)時(shí)性強(qiáng),信息可共享,提高多控制器系統(tǒng)的監(jiān)測(cè)、診斷和控制性能。
3 通過離線的任務(wù)調(diào)度、作業(yè)下載以及錯(cuò)誤監(jiān)控等方式,可實(shí)現(xiàn)工作人員遠(yuǎn)程操作。在工業(yè)碼垛機(jī)器人現(xiàn)場(chǎng)應(yīng)用中增加操作人員的安全系數(shù)。
4 CAN現(xiàn)場(chǎng)總線發(fā)展較為成熟,可供選擇的關(guān)聯(lián)驅(qū)動(dòng)器以及控制卡品種眾多,方便產(chǎn)品升級(jí)與維護(hù)。
統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)
對(duì)于工業(yè)碼垛機(jī)器人運(yùn)動(dòng)控制系統(tǒng)來說,上位主控機(jī)的控制程序十分重要,其主要部分可分為三大模塊,即1)PC與人對(duì)話模塊;2)CANopen協(xié)議通信模塊;3)運(yùn)動(dòng)控制模塊。通過人機(jī)對(duì)話模塊可以給用戶提供友好的控制界面,使用戶通過觸摸屏實(shí)施對(duì)機(jī)器人的控制,包括碼放點(diǎn)、抓取點(diǎn)的合理定位,碼放方式和貨物數(shù)量品種的正確選擇等。運(yùn)動(dòng)控制模塊可計(jì)算出所選碼放方式下電機(jī)所需要的運(yùn)動(dòng)控制數(shù)據(jù),再通過CANopen協(xié)議通信模塊對(duì)機(jī)器人的4個(gè)關(guān)節(jié)節(jié)點(diǎn)進(jìn)行數(shù)據(jù)傳輸與反饋接收管理。
機(jī)器人CANopen協(xié)議通信模塊主要功能為接收經(jīng)過運(yùn)動(dòng)控制模塊計(jì)算出的運(yùn)動(dòng)控制數(shù)據(jù),將其編譯為驅(qū)動(dòng)器可以接收的符合CANopen協(xié)議的命令控制字并發(fā)送;接收驅(qū)動(dòng)器返回的數(shù)據(jù)和命令并傳送給相應(yīng)的運(yùn)動(dòng)控制模塊,若沒有接收到伺服驅(qū)動(dòng)器的反饋信息,則繼續(xù)發(fā)送信息給驅(qū)動(dòng)器,超時(shí)則轉(zhuǎn)入錯(cuò)誤處理模塊進(jìn)行錯(cuò)誤顯示并報(bào)警。
圖3 CANopen協(xié)議通信程序流程圖
實(shí)際應(yīng)用過程中,控制系統(tǒng)CANopen初始化及應(yīng)用流程如下。
1 電機(jī)驅(qū)動(dòng)器初始化設(shè)置。設(shè)置電機(jī)驅(qū)動(dòng)器的控制方式為總線控制方式,電機(jī)驅(qū)動(dòng)器的節(jié)點(diǎn)ID,系統(tǒng)通信波特率可在電機(jī)驅(qū)動(dòng)器的HMI界面中進(jìn)行設(shè)置,也可采用電機(jī)驅(qū)動(dòng)器自帶的本地調(diào)試軟件PowerSuit進(jìn)行本地設(shè)置。
2 PCI-CAN適配卡初始化設(shè)置。在工控機(jī)一側(cè)對(duì)PCI-CAN適配卡進(jìn)行初始化設(shè)置,主要設(shè)置內(nèi)容有CAN總線節(jié)點(diǎn)個(gè)數(shù),波特率,CANopen協(xié)議命令的收發(fā)方式以及濾波方式等。
工業(yè)碼垛機(jī)器人的運(yùn)動(dòng)控制程序主要完成對(duì)碼垛方式的分解,解算相應(yīng)驅(qū)動(dòng)電機(jī)的運(yùn)行參數(shù)并通過CANopen協(xié)議通信模塊發(fā)送以完成工業(yè)碼垛機(jī)器人的作業(yè)動(dòng)作。具體解算方式因貨物形狀、碼放位置和碼放方式有所區(qū)別,在此不一一贅述。
錯(cuò)誤處理模塊的主要功能是接收驅(qū)動(dòng)器返回的錯(cuò)誤類型代碼,根據(jù)電機(jī)驅(qū)動(dòng)器廠家定義的對(duì)象字典判斷所屬錯(cuò)誤類型并執(zhí)行對(duì)應(yīng)的錯(cuò)誤處理函數(shù)或報(bào)警。
伺服電機(jī)相關(guān)文章:伺服電機(jī)工作原理
評(píng)論