基于CAN總線的分布式控制器設(shè)計(jì)和實(shí)現(xiàn)
機(jī)電系統(tǒng)執(zhí)行部件包括電機(jī)、舵機(jī)、液壓缸、液壓馬達(dá)等,傳感部分有接觸和非接觸的接近傳感器(光電傳感器)、圖像傳感器(CCD、辨色傳感器)、聲音傳感器(麥克風(fēng))等,如果采用集中式的設(shè)計(jì)方式,不僅提高了對設(shè)計(jì)者的要求,而且難以適應(yīng)控制要求不斷變化的情況。軟件設(shè)計(jì)方面,集中式的硬件設(shè)計(jì)會(huì)使得軟件構(gòu)架十分繁瑣,無法多人協(xié)同工作,維護(hù)困難。控制系統(tǒng)硬件安裝方面,集中式的硬件構(gòu)架很可能增加線束方面的困難。綜上所述,采用分布式的設(shè)計(jì)可以減小設(shè)計(jì)風(fēng)險(xiǎn),提高設(shè)計(jì)效率,增加系統(tǒng)柔性。
本文引用地址:http://2s4d.com/article/163511.htm控制系統(tǒng)分為三部分:信號(hào)輸入部分、中央處理部分和信號(hào)輸出驅(qū)動(dòng)部分。信號(hào)輸入部分包括數(shù)字信號(hào)輸入和模擬信號(hào)輸入,信號(hào)輸出驅(qū)動(dòng)部分根據(jù)不同的驅(qū)動(dòng)部件設(shè)計(jì)相應(yīng)的驅(qū)動(dòng)電路。學(xué)生常用的執(zhí)行部件包括直流伺服電機(jī)、直流電機(jī)、氣動(dòng)控制閥等,后兩者同屬于一種控制模式,故驅(qū)動(dòng)部分主要為直流伺服驅(qū)動(dòng)和閥驅(qū)動(dòng)。因此分布式控制模塊可以分為:信號(hào)輸入模塊、主控模塊、直流伺服電機(jī)驅(qū)動(dòng)模塊、氣動(dòng)閥驅(qū)動(dòng)模塊等。
信號(hào)輸入模塊主要是傳感器信號(hào)的輸入和編碼,分為數(shù)字信號(hào)輸入和模擬信號(hào)輸入;主控模塊是信息的處理、決策和人機(jī)交互的平臺(tái),包括鍵盤輸入和LCD輸出;直流伺服電機(jī)控制驅(qū)動(dòng)模塊,采用LM629作為電機(jī)控制芯片,通過H橋驅(qū)動(dòng)完成直流電機(jī)的PID控制;閥驅(qū)動(dòng)模塊用于氣動(dòng)閥的開啟、關(guān)閉以及直流電機(jī)的驅(qū)動(dòng),故同樣通過H橋驅(qū)動(dòng)模式。各個(gè)模塊之間采用CAN總線構(gòu)架(如圖1)。控制芯片采用P89C58X2,用KeilC和CSOS系統(tǒng)進(jìn)行算法設(shè)計(jì),系統(tǒng)硬件和軟件構(gòu)架清晰,具有良好的擴(kuò)展性。
1 硬件電路構(gòu)架
1.1 直流伺服電機(jī)控制
P89C58X2與LM629之間采用總線方式連接,即單片機(jī)的P0口通過上拉電阻之后接LM629的數(shù)據(jù)輸入位,HI連接單片機(jī)的外部中斷口,編碼盤輸入A、B和IN口分別連接上拉電阻之后接電機(jī)的編碼盤,而LM629的輸出口PWM MAG和PWM SIG分別連接H橋電機(jī)驅(qū)動(dòng)的PWM和DIR、編碼盤和LM629,H橋與LM629之間均采用高速光隔6N137隔離,如圖2。
在單板上集成兩塊LM629,能使結(jié)構(gòu)更緊湊,算法更簡單,通過軟件可以方便地設(shè)定LM629工作在速度模式或者位移模式。
CAN總線是一種具有國際標(biāo)準(zhǔn)的性價(jià)比較高的現(xiàn)場總線,其最高傳輸速度可達(dá)1Mb/s,最遠(yuǎn)傳輸距離可達(dá)10km,性能穩(wěn)定,十分適合可靠性要求高的分布式系統(tǒng)。
本系統(tǒng)CAN總線控制芯片采用飛利浦公司的SJA1000,其支持CAN2.0B的標(biāo)準(zhǔn)協(xié)議,并且芯片可以工作在BasicCAN和PeliCAN兩種模式下??偩€收發(fā)器采用飛利浦公司的TJA1050,它符合ISO11898標(biāo)準(zhǔn),實(shí)現(xiàn)CAN控制器和通信線路的物理連接,提高CAN總線的驅(qū)動(dòng)能力和可靠性。
SJA1000和P89C58X2之間同樣采用總線方式連接,連接方法同LM629,而SJA1000和TJA1050之間連接如下:SJA1000的TX0連接TJA1050的TXD,RX0連接RXD,RX1接Vref輸出,SJA1000的TX1下拉電阻接地,TJA1050的CANL和CANH就是CAN總線輸出。當(dāng)多節(jié)點(diǎn)連接時(shí),CANL和CANH之間需要加1~2個(gè)阻值為120Ω的端接電阻,能有效防止通訊總線上產(chǎn)生的信號(hào)反射(如圖3)。在軟件設(shè)計(jì)中,通過修改SJA1000的寄存器使CAN工作在PeliCAN、單濾波器、正常模式和擴(kuò)展幀模式下。
伺服電機(jī)相關(guān)文章:伺服電機(jī)工作原理
pid控制器相關(guān)文章:pid控制器原理
評(píng)論