<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于CAN總線(xiàn)的集散控制系統智能節點(diǎn)的設計

基于CAN總線(xiàn)的集散控制系統智能節點(diǎn)的設計

作者: 時(shí)間:2009-08-14 來(lái)源:網(wǎng)絡(luò ) 收藏

引言

本文引用地址:http://dyxdggzs.com/article/163649.htm

  現場(chǎng)是當今自動(dòng)化領(lǐng)域技術(shù)發(fā)展的一個(gè)熱點(diǎn),被譽(yù)為自動(dòng)化領(lǐng)域的計算機局域網(wǎng)。它的出現,標志著(zhù)工業(yè)控制技術(shù)領(lǐng)域又一個(gè)新時(shí)代的開(kāi)始,并對該領(lǐng)域的發(fā)展產(chǎn)生了重要的影響??刂破骶钟蚓W(wǎng)(ControllerAeraNetwork)屬于現場(chǎng)的范疇,的數據通信具有極高的可靠性、實(shí)時(shí)性和靈活性的特點(diǎn),是一種有效支持和實(shí)時(shí)控制的多主串行總線(xiàn)。

1.總線(xiàn)的


圖1CAN總線(xiàn)的

  CAN總線(xiàn)的集散控制系統如圖1所示,采用現場(chǎng)總線(xiàn)式控制系統FCS(FieldbusControlSystem)結構,由上位機、CAN總線(xiàn)控制網(wǎng)絡(luò )、CAN組成。上位機主要完成在線(xiàn)系統監控,上位機通過(guò)CAN適配卡與CAN總線(xiàn)相連;CAN完成數據采集及計算、設定、節點(diǎn)控制、運行顯示等。上位機和節點(diǎn)之間通過(guò)CAN現場(chǎng)總線(xiàn)交換各種數據和管理控制信息。

2.CAN的性能特點(diǎn)

  CAN為多主方式工作,網(wǎng)絡(luò )上任一節點(diǎn)均可在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò )上其他節點(diǎn)發(fā)送信息,而不分主從,通訊方式靈活,且無(wú)需站地址等節點(diǎn)信息。

  CAN網(wǎng)絡(luò )上的節點(diǎn)信息分成不同的優(yōu)先級,可滿(mǎn)足不同的實(shí)時(shí)要求,高優(yōu)先級的數據最多可在134μs內得到傳輸。

  CAN采用非破壞性總線(xiàn)仲裁技術(shù),當多個(gè)節點(diǎn)同時(shí)向總線(xiàn)發(fā)送信息時(shí),優(yōu)先級較低的節點(diǎn)會(huì )主動(dòng)的退出發(fā)送,而優(yōu)先級較高的節點(diǎn)可不受影響地繼續傳輸數據,從而大大節省了總線(xiàn)沖突仲裁時(shí)間。

  CAN只需要通過(guò)報文濾波即可實(shí)現點(diǎn)對點(diǎn)、一點(diǎn)對多點(diǎn)及全局廣播等幾種方式傳送接收數據,無(wú)需專(zhuān)門(mén)的“調度”。

  CAN的直接通信距離最遠可達10km(速率5kbps以下);通信速率最高可達1Mbps(此時(shí)通信距離最長(cháng)為40m)。

  CAN上的節點(diǎn)數主要取決于總線(xiàn)驅動(dòng)電路,目前可達110個(gè),報文標識符可達2032種(CAN2.0A),而擴展標準(CAN2.0B)的報文標識符幾乎不受限制。

  CAN采用短幀結構,傳輸時(shí)間短,受干擾概率低,具有極好的檢錯效果。

  CAN的每幀信息都有CRC校驗及其他檢錯措施,保證了數據出錯率極低。

  CAN通信介質(zhì)可為雙絞線(xiàn)、同軸電纜或光纖,選擇靈活。

  CAN節點(diǎn)在錯誤嚴重的情況下具有自動(dòng)關(guān)閉輸出功能,以使總線(xiàn)上其他節點(diǎn)的操作不受影響。

3.CAN智能節點(diǎn)硬件

  目前常用的CAN器件分為兩大類(lèi),一類(lèi)是獨立的CAN控制器,如Philips的PCA82C250、SJA1000等,另一類(lèi)是帶有CAN功能的微控制器,如PIC的DSPIC6014、TI的TMS320F2812、Motorola的MC9S12DT128等等。本文采用Intel的87C196KD微處理器和PHILIP的SJA1000CAN控制器完成CAN總線(xiàn)智能節點(diǎn)的。


圖2CAN智能節點(diǎn)硬件電路

  CAN智能節點(diǎn)硬件電路如圖2所示。電路主要由五部分組成:微控制器87C196KD、獨立CAN控制器SJA1000、CAN總線(xiàn)收發(fā)器82C250、高速光電耦合器6N137、復位電路。

  微控制器87C196KD是CAN智能節點(diǎn)的核心部分,87C196KD具有32K字節的ROM和1000字節的RAM,可用高級語(yǔ)言編程。87C196KD主要完成節點(diǎn)數據采集及計算、節點(diǎn)設定、節點(diǎn)控制、運行顯示等功能,并與CAN控制器SJA1000之間發(fā)送、接收數據。

  SJA1000芯片是一種應用廣泛、性能優(yōu)異的CAN總線(xiàn)控制器。SJA1000負責完成CAN總線(xiàn)通信協(xié)議的物理層和數據鏈路層的功能。它有Basicmode和Pelimode兩種工作模式,與Basicmode模式相比,Pelimode工作模式支持擴展幀,報文標識符可達29位,提供了更加強大的功能。為減少每幀非數據字符的數量,提高信息交換速度,在實(shí)際應用中宜采用Basicmode模式。在Basicmode模式下,SJA1000對于微處理器來(lái)說(shuō)相當于一個(gè)存儲器映像外圍設備,它的可尋址域由控制段和接收、發(fā)送緩沖器組成。SJA1000的AD0~AD7連接到87C196KD的P3口(數據總線(xiàn)),采用并口連接方式,數據讀寫(xiě)速度快。87C196KD地址總線(xiàn)的P4.6、P4.7通過(guò)譯碼器與SJA1000的片選信號CS相連,SJA1000的RD、WR、ALE分別與87C196KD的RD、WR、ALE相連,SJA1000的INT經(jīng)過(guò)非門(mén)與87C196KD的EXINT相連,微控制器也可以通過(guò)中斷的方式訪(fǎng)問(wèn)CAN控制器。

  82C250是CAN控制器與物理總線(xiàn)之間的接口。82C250的CANL和CANH與CAN總線(xiàn)相連,若82C250處于CAN總線(xiàn)的網(wǎng)絡(luò )終端,CANL和CANH之間需加一個(gè)匹配電阻,用于消除反射信號的干擾。RS用于選擇三種不同的工作方式:高速、斜率控制和待機,RS串接一個(gè)電阻后再接地,用于控制上升和下降斜率,減小射頻干擾。

  為了進(jìn)一步提高系統抗干擾能力,在CAN控制器SJA1000和CAN總線(xiàn)收發(fā)器82C250之間加接高速光電耦合器6N137,并采用DC-DC變換器隔離電源,這樣就很好的實(shí)現了總線(xiàn)上各個(gè)CAN節點(diǎn)之間的 器隔離。

  復位電路由看門(mén)狗MAX706和手動(dòng)復位按扭組成。當系統發(fā)生故障時(shí),MAX706自動(dòng)產(chǎn)生復位信號給87C196KD和SJA1000復位,若想重新啟動(dòng)程序,可用手動(dòng)復位按扭復位。

4.CAN智能節點(diǎn)軟件

  CAN智能節點(diǎn)的軟件設計主要包括三部分:CAN初始化程序、報文發(fā)送程序、報文接收程序。下面給出了BasicCAN模式CAN智能節點(diǎn)軟件的程序框圖和C語(yǔ)言源程序。

  a.CAN初始化部分
  

  #include80c196kd.h>

  /*應包含的微控制器寄存器的定義*/

  #include_SFR_H_

  #include_FUNCS_H_

  #defineBASE_CAN0Xa000/*定義CAN控制器基址*/

  typedefstruct{

  unsignedintid;/*報文標識符*/

  unsignedcharrtr;/*遠程幀位*/

  unsignedchardlen;/*數據長(cháng)度*/

  unsignedchardata[8];/*數據*/

 ?。齅SG_STRUCT;/*將CAN協(xié)議的幀用C語(yǔ)言的結構表示*/

  voidinit_can()

 ?。?/p>

 ?。╱nsignedchar*)(BASE_CAN+0)=0x01;/*SJA1000進(jìn)入復位狀態(tài)*/

 ?。╱nsignedchar*)(BASE_CAN+4)=0x00;/*初始化接收代碼寄存器ACR*/

 ?。╱nsignedchar*)(BASE_CAN+5)=0xff;/*初始化接收屏蔽寄存器AMR*/

 ?。╱nsignedchar*)(BASE_CAN+6)=0x00;/*初始化總線(xiàn)時(shí)序寄存器BTR0*/

 ?。╱nsignedchar*)(BASE_CAN+7)=0x14;/*初始化總線(xiàn)時(shí)序寄存器BTR1*/

 ?。╱nsignedchar*)(BASE_CAN+8)=0xfa;/*初始化輸出控制寄存器OCR*/

 ?。?/p>

 


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>