摘 要:為實(shí)現(xiàn)多電機(jī)系統(tǒng)的遠(yuǎn)程監(jiān)控,提高通信可靠性,設(shè)計(jì)了一種基于ZigBee技術(shù)和CAN總線技術(shù)的多電機(jī)監(jiān)控系統(tǒng)。系統(tǒng)以CC2530和MCP2515為核心,設(shè)計(jì)了ZigBee核心電路、CAN接口等硬件電路和軟件方案,通過ZigBee網(wǎng)絡(luò)和CAN總線實(shí)現(xiàn)對(duì)電機(jī)的監(jiān)控。實(shí)驗(yàn)表明,系統(tǒng)實(shí)現(xiàn)監(jiān)控并通信穩(wěn)定,監(jiān)控節(jié)擴(kuò)展方便,具有一定的實(shí)用性。
關(guān)鍵詞: 多電機(jī)系統(tǒng);ZigBee;CAN總線;CC2530
DOI:10.16640/j.cnki.37-1222/t.2015.22.178
0 引言
多電機(jī)系統(tǒng)在工業(yè)現(xiàn)場(chǎng)中應(yīng)用廣泛,如機(jī)床上的電機(jī)驅(qū)動(dòng)設(shè)備、打印廠的傳送帶等。這些系統(tǒng)中,電機(jī)變成了可以收發(fā)控制命令,上傳狀態(tài)數(shù)據(jù)的節(jié)點(diǎn)[1-2]。這對(duì)于網(wǎng)絡(luò)、傳輸性能提出許多要求。ZigBee無線通訊技術(shù)適用于自動(dòng)控制領(lǐng)域,將ZigBee模塊嵌入到設(shè)備中使得用較少能量即可在多個(gè)節(jié)點(diǎn)之間完成通訊[3]。
針對(duì)多電機(jī)控制現(xiàn)場(chǎng)單機(jī)驅(qū)動(dòng)方式控制分散難以協(xié)調(diào)、布線困難的問題,本文以ZigBee與CAN總線技術(shù)建立通信網(wǎng)絡(luò),設(shè)計(jì)了一套多電機(jī)的監(jiān)控系統(tǒng)。
1 系統(tǒng)總體方案設(shè)計(jì)
本監(jiān)控系統(tǒng)總體結(jié)構(gòu)圖如圖1所示。本文設(shè)計(jì)的多電機(jī)監(jiān)控系統(tǒng)為三層結(jié)構(gòu),最上層為電機(jī)控制PC上位機(jī),中間則為數(shù)據(jù)傳輸模塊,下層為電機(jī)控制驅(qū)動(dòng)部分。
2 監(jiān)控系統(tǒng)ZigBee節(jié)點(diǎn)設(shè)計(jì)
2.1 匯聚節(jié)點(diǎn)硬件設(shè)計(jì)
Zigbee匯聚節(jié)點(diǎn)是由ZigBee芯片CC2530模塊、RS232電路和電源組成。模塊結(jié)構(gòu)圖如圖2a所示。匯聚節(jié)點(diǎn)通過232電路收發(fā)PC上位機(jī)傳輸?shù)臄?shù)據(jù),將數(shù)據(jù)轉(zhuǎn)換后由ZigBee模塊將此數(shù)據(jù)信息發(fā)送到終端節(jié)點(diǎn)的ZigBee模塊再轉(zhuǎn)發(fā)到CAN總線,實(shí)現(xiàn)數(shù)據(jù)交換。
2.2 終端節(jié)點(diǎn)硬件設(shè)計(jì)
Zigbee終端節(jié)點(diǎn)是由ZigBee芯片CC2530模塊、巴倫匹配電路、CAN模塊、光耦和電源組成,模塊結(jié)構(gòu)如圖2b所示。通過ZigBee模塊,終端節(jié)點(diǎn)接收無線節(jié)點(diǎn)發(fā)送的數(shù)據(jù)幀,數(shù)據(jù)進(jìn)入MCU轉(zhuǎn)換幀格式后再經(jīng)由CAN接口發(fā)送到總線網(wǎng)絡(luò)上的電機(jī)控制器。同樣CAN總線接收的消息經(jīng)終端節(jié)點(diǎn)接收經(jīng)MCU轉(zhuǎn)換為ZigBee數(shù)據(jù)幀格式進(jìn)行轉(zhuǎn)發(fā)。
終端節(jié)點(diǎn)的CAN控制器采用的是Microchip的MCP2515,CAN收發(fā)器采用了NXP的TJA1050。TJA1050可以為總線提供差分的發(fā)射能力,同時(shí)為CAN控制器提供差分的接收能力[4]。
3 系統(tǒng)軟件設(shè)計(jì)
電機(jī)監(jiān)控系統(tǒng)軟件部分主要為網(wǎng)絡(luò)管理、數(shù)據(jù)傳輸和CAN信號(hào)發(fā)送等。系統(tǒng)上電后,控制軟件程序依次執(zhí)行初始化、加電自檢測(cè)、CAN通訊傳輸?shù)攘鞒?,軟件流程圖與如圖3所示。
終端節(jié)點(diǎn)程序開始后進(jìn)行協(xié)議棧初始化,設(shè)置寄存器,申請(qǐng)加入ZigBee網(wǎng)絡(luò),若加入網(wǎng)成功則進(jìn)入休眠狀態(tài),否則繼續(xù)申請(qǐng)。在休眠狀態(tài)下,終端節(jié)點(diǎn)持續(xù)等待任務(wù)中斷,一旦中斷到來,則進(jìn)入中斷來源判斷流程。若是板外中斷,即PC上位機(jī)或其它終端發(fā)送的命令,則回復(fù)接收標(biāo)志信號(hào),進(jìn)行相應(yīng)的數(shù)據(jù)處理并轉(zhuǎn)發(fā),然后再次進(jìn)入休眠等待下次的任務(wù)中斷,以保證節(jié)點(diǎn)的低功耗。
ZigBee和CAN通信設(shè)計(jì)。本監(jiān)控系統(tǒng)設(shè)計(jì)中,上位機(jī)向電機(jī)控制器發(fā)送的參數(shù)有轉(zhuǎn)速、轉(zhuǎn)向、控制方式、電機(jī)工作狀態(tài)。對(duì)此需求,設(shè)計(jì)相應(yīng)協(xié)議,根據(jù)CAN數(shù)據(jù)格式定義物理量。規(guī)定電機(jī)控制器的CAN ID為0x100+編號(hào),如將發(fā)往一號(hào)電機(jī)的CAN ID定為0x101。下表1為CAN功能碼設(shè)定:
4 系統(tǒng)實(shí)驗(yàn)結(jié)果
系統(tǒng)通過對(duì)多個(gè)電機(jī)進(jìn)行監(jiān)控,每個(gè)電機(jī)包含一個(gè)ZigBee終端節(jié)點(diǎn)。通過PC上位機(jī)分別設(shè)置3種類型的電機(jī)工作狀態(tài),第一種為正轉(zhuǎn)3000R/min、第二種為正轉(zhuǎn)1500R/min、第三種為反轉(zhuǎn)1000R/min。實(shí)驗(yàn)結(jié)果顯示,上位機(jī)可以實(shí)時(shí)與控制電機(jī),電機(jī)轉(zhuǎn)速穩(wěn)定,整個(gè)監(jiān)控系統(tǒng)工作可靠,數(shù)據(jù)傳輸通信未出現(xiàn)沖突。
5 結(jié)束語
針對(duì)多電機(jī)系統(tǒng)維護(hù)復(fù)雜,網(wǎng)絡(luò)布線長(zhǎng)的問題,設(shè)計(jì)了基于ZigBee和CAN總線的多電機(jī)監(jiān)控系統(tǒng)。經(jīng)測(cè)試表明,整個(gè)系統(tǒng)實(shí)現(xiàn)了對(duì)多電機(jī)的轉(zhuǎn)速控制、命令發(fā)送和數(shù)據(jù)顯示。
參考文獻(xiàn):
[1]盧永杰.基于CAN總線的電機(jī)監(jiān)測(cè)與控制系統(tǒng)設(shè)計(jì)[J].自動(dòng)化與儀器,2013(01):48-50.
[2]賀安超,劉衛(wèi)國(guó),馬珊.基于CAN總線的多電機(jī)嵌入式監(jiān)控系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)測(cè)量與控制,2011,19(07):1605-1607.
[3]郭頌.基于Zigbee的LED草坪燈群控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].哈爾濱.哈爾濱理工大學(xué),2011.
[4]羅文俊.基于CAN總線的大型塑料機(jī)械控制系統(tǒng)的設(shè)計(jì)[D].武漢.武漢工程大學(xué),2012.
作者簡(jiǎn)介:范春豐(1990-),碩士研究生,研究方向:電機(jī)與智能電器。