基于微處理器與CAN的工業(yè)聯(lián)機(jī)控制系統(tǒng)
1 引言
CAN總線是目前流行的總線技術(shù)之一,是一種基于微控制器件的網(wǎng)絡(luò)。它用開放的,具有可互操作的網(wǎng)絡(luò)將現(xiàn)場各種控制器及儀表設(shè)備互連,構(gòu)成現(xiàn)場總線控制系統(tǒng),將控制功能徹底下放到現(xiàn)場,降低了安裝成本和維護(hù)費(fèi)用。FCS實(shí)質(zhì)是一種開放的、具可互操作性的、徹底分散的分布式控制系統(tǒng)。CAN總線屬于工業(yè)現(xiàn)場總線的范疇是目前流行的現(xiàn)場總線控制系統(tǒng)之一。與一般的通信總線相比,CAN總線的數(shù)據(jù)通信具有突出的可靠性、實(shí)時(shí)性和靈活性,同時(shí)具備了現(xiàn)場總線優(yōu)點(diǎn)。本文提出一種基于CAN智能節(jié)點(diǎn)的設(shè)備聯(lián)機(jī)控制系統(tǒng)。
2 系統(tǒng)概述
本文設(shè)計(jì)的是一種基于工業(yè)設(shè)備控制系統(tǒng)的以CAN總線智能節(jié)點(diǎn)。節(jié)點(diǎn)分為控制節(jié)點(diǎn)、主機(jī)節(jié)點(diǎn)和從機(jī)節(jié)點(diǎn)三種,多個(gè)不同節(jié)點(diǎn)通過總線連接,形成多機(jī)聯(lián)控系統(tǒng)。系統(tǒng)雖然有三種不同功能的節(jié)點(diǎn),每類節(jié)點(diǎn)采用相同的CAN節(jié)點(diǎn)結(jié)構(gòu)。
圖1 CAN總線節(jié)點(diǎn)結(jié)構(gòu)示意圖
CAN總線節(jié)點(diǎn)可以歸納為三種構(gòu)成方式: 1) CAN控制器的單片機(jī)+CAN收發(fā)器;2) 帶有CAN控制器的單片機(jī)+CAN收發(fā)器;3)帶有CAN控制器的I/O端口+CAN收發(fā)器。系統(tǒng)結(jié)構(gòu)更為如圖1所示。本文選擇第一種方式連接方式,由于器件組合靈活,很容易實(shí)現(xiàn)高的性價(jià)比。
3 節(jié)點(diǎn)的硬件結(jié)構(gòu)設(shè)計(jì)
3.1 節(jié)點(diǎn)控制芯片選擇
本研究選用的是美國微芯Microchip Technology公司的PIC芯片(PIC16F873,28腳FLASH)和福州貝能公司的MPLAB開發(fā)工具。MPLAB開發(fā)系統(tǒng)是一種廉價(jià)的開發(fā)工具,集編程器與調(diào)試器為一體。它利用了PICI6F87X的在線調(diào)試能力和MICROCHIP的串行編程技術(shù)(In-Circuit Serial Programming)。它工作于MPLAB-IDE集成開發(fā)環(huán)境軟件包下,直接連接到應(yīng)用系統(tǒng)中去。PICI6F87X是MICIZOCHII)公司的中檔產(chǎn)品,繼承了MICROCI-III,的傳統(tǒng)特點(diǎn),實(shí)用、低價(jià)、指令集少、低功耗。
PIC16F873開發(fā)裝置的不足之處有:系統(tǒng)只能設(shè)置一個(gè)斷點(diǎn);運(yùn)行系統(tǒng)程序后單步執(zhí)行速度慢;由于占用了芯片資源,I/0管腳RB3,RB7,RB6功能不正常,無法調(diào)試.另外程序調(diào)試時(shí),應(yīng)注意編程電壓不能太低。
3.2 節(jié)點(diǎn)CAN通訊的硬件設(shè)計(jì)
在CAN中應(yīng)用的元器件主要包括CAN控制器和CAN收發(fā)器。本文選用的是獨(dú)立CAN控制器。PHILIPS公司的SJA1000管腳太多,占用過多的I/O口,MCP2510是目前市場上體積最小的CAIN控制器,通過SPI通訊方式與微處理器連接,連接端口少,所以系統(tǒng)選擇MCP2510作為CAN控制器。MCP2510只要跟MCU和驅(qū)動(dòng)芯片(8X250 )就可以構(gòu)成一個(gè)簡易局域網(wǎng)的節(jié)點(diǎn)。MCP2510可以完全實(shí)現(xiàn)CAN2.0A和CAN2.0B協(xié)議。圖2為MCP2510芯片的內(nèi)部結(jié)構(gòu)圖。
評論