www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導(dǎo)讀]本文介紹了基于CAN總線的集散控制系統(tǒng)的設(shè)計(jì)方法,給出了Intel 87C196KD微處理器和PHILIP SJA1000 CAN控制器組成的CAN總線智能節(jié)點(diǎn)的硬件電路和軟件程序。

引言

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

1. 基于CAN總線的集散控制系統(tǒng)


圖1 基于CAN總線的集散控制系統(tǒng)

  基于CAN總線的集散控制系統(tǒng)如圖1所示,采用現(xiàn)場總線式控制系統(tǒng)FCS(Fieldbus Control System)結(jié)構(gòu),由上位機(jī)、CAN總線控制網(wǎng)絡(luò)、CAN智能節(jié)點(diǎn)組成。上位機(jī)主要完成在線系統(tǒng)監(jiān)控,上位機(jī)通過CAN適配卡與CAN總線相連;CAN智能節(jié)點(diǎn)完成數(shù)據(jù)采集及計(jì)算、節(jié)點(diǎn)設(shè)定、節(jié)點(diǎn)控制、運(yùn)行顯示等。上位機(jī)和智能節(jié)點(diǎn)之間通過CAN現(xiàn)場總線交換各種數(shù)據(jù)和管理控制信息。

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

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

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

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

  CAN只需要通過報(bào)文濾波即可實(shí)現(xiàn)點(diǎn)對點(diǎn)、一點(diǎn)對多點(diǎn)及全局廣播等幾種方式傳送接收數(shù)據(jù),無需專門的“調(diào)度”。

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

  CAN上的節(jié)點(diǎn)數(shù)主要取決于總線驅(qū)動電路,目前可達(dá)110個(gè),報(bào)文標(biāo)識符可達(dá)2032種(CAN2.0A),而擴(kuò)展標(biāo)準(zhǔn)(CAN2.0B)的報(bào)文標(biāo)識符幾乎不受限制。

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

  CAN的每幀信息都有CRC校驗(yàn)及其他檢錯措施,保證了數(shù)據(jù)出錯率極低。

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

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

3. CAN智能節(jié)點(diǎn)硬件設(shè)計(jì)

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


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

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

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

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

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

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

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

4. CAN智能節(jié)點(diǎn)軟件設(shè)計(jì)

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

  a.CAN初始化部分
  

  #include <80c196kd.h>

  /* 應(yīng)包含的微控制器寄存器的定義*/

  #include _SFR_H_

  #include _FUNCS_H_

  #define BASE_CAN 0Xa000 /*定義CAN控制器基址*/

  typedef struct {

  unsigned int id; /*報(bào)文標(biāo)識符*/

  unsigned char rtr; /*遠(yuǎn)程幀位*/

  unsigned char dlen; /*數(shù)據(jù)長度*/

  unsigned char data[8]; /*數(shù)據(jù)*/

 ?。?nbsp;MSG_STRUCT; /*將CAN協(xié)議的幀用C語言的結(jié)構(gòu)表示*/

  void init_can()

 ?。?/p>

  *(unsigned char*)(BASE_CAN + 0) = 0x01; /*SJA1000進(jìn)入復(fù)位狀態(tài)*/

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

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

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

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

  *(unsigned char*)(BASE_CAN + 8) = 0xfa; /* 初始化輸出控制寄存器OCR */

 ?。?/p>

  b.報(bào)文發(fā)送部分

  unsigned char can_send(MSG_STRUCT smsg)

 ?。?/p>

  unsigned char v;

  int i;

  v=*(unsigned char*)(BASE_CAN + 2);

  if( v &0x08) /*判斷是否可以發(fā)送數(shù)據(jù)*/

  { v=smsg.id>>3; /*標(biāo)識符送識別碼寄存器*/

 ?。╱nsigned char*)(BASE_CAN + 10) = v;

  v=*(unsigned char*)(BASE_CAN + 10);

  v=smsg.id & 7; /*識別碼0-2位、RTR、DLC*/

  v<<=5;

  v+=smsg.dlen;

 ?。╱nsigned char*)(BASE_CAN + 11) = v;

  for(i=0;i 

 ?。?nbsp;*(unsigned char*)(BASE_CAN + 12+i) = smsg.data[i]; }

 ?。╱nsigned char*)(BASE_CAN + 1) = 0x01;

  return(1);

 ?。?/p>

  else

 ?。?nbsp;return(0);}

 ?。?/p>

  c.報(bào)文接收部分
  

  unsigned char can_receive()

  {

  MSG_STRUCT rmsg;

  int i;

  unsigned char buf1,buf2;

  while((*(unsigned char*)(BASE_CAN + 2)) & 0x01)/*判斷是否有可接收信息*/

  {buf1 = *(unsigned char*)(BASE_CAN + 20); /*將一幀信息取出*/

  buf2 = *(unsigned char*)(BASE_CAN + 21);

  rmsg.dlen = buf2 & 0x0f; /*數(shù)據(jù)長度*/

  for(i=0; i< rmsg.dlen; i++) /*取出數(shù)據(jù)*/

 ?。鹯msg.data[i]=*(unsigned char*)(BASE_CAN + 22 + i); }

  *(unsigned char*)(BASE_CAN + 1) = 0x04; /*釋放接收緩沖器*/

  rmsg.rtr = (buf2 >> 4) & 0x01; /*遠(yuǎn)程幀*/

  rmsg.id = buf1; /*取出報(bào)文標(biāo)識符*/

  rmsg.id <<= 3;

  rmsg.id |= (buf2 >> 5) & 0x06;

  switch (rmsg.id) /*按標(biāo)識符轉(zhuǎn)入不同的數(shù)據(jù)處理程序*/

  case ……

 ?。?/p>

  ……}

  break;

  case ……

 ?。?/p>

  }

5. 結(jié)束語

  本文的創(chuàng)新點(diǎn)在于:將現(xiàn)場總線引入到集散控制系統(tǒng)中,克服了傳統(tǒng)的串行通訊集散控制系統(tǒng)的實(shí)時(shí)性不強(qiáng),通訊可靠性差的問題。所給出的CAN智能節(jié)點(diǎn)已應(yīng)用于某發(fā)電廠的集散控制系統(tǒng)中,經(jīng)過一年多的運(yùn)行情況發(fā)現(xiàn)該設(shè)計(jì)方案具有較好的可靠性、實(shí)時(shí)性和靈活性。CAN智能節(jié)點(diǎn)不僅可以應(yīng)用于集散控制系統(tǒng),還可以用于其它分布式控制系統(tǒng)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉