關(guān) 閉

新聞中心

EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > 基于CAN總線的分布式監(jiān)控系統(tǒng)智能節(jié)點(diǎn)設(shè)計

基于CAN總線的分布式監(jiān)控系統(tǒng)智能節(jié)點(diǎn)設(shè)計

作者: 時間:2009-08-17 來源:網(wǎng)絡(luò) 收藏
4.2監(jiān)控通信程序
  
  監(jiān)控的通信采用2.0A協(xié)議,通信模塊的軟件主要由初始化程序、發(fā)送程序、接收程序三部分組成。其中初始化程序是實(shí)現(xiàn)通信的關(guān)鍵,它主要用來完成控制器工作方式的選擇,即對P87C591中控制器控制段中的寄存器進(jìn)行設(shè)置,包括:定時寄存器和輸出控制寄存器設(shè)置;接收驗(yàn)收濾波寄存器和濾波屏蔽寄存器設(shè)置;設(shè)置發(fā)送數(shù)據(jù)幀類型(標(biāo)準(zhǔn)幀或擴(kuò)展幀)、標(biāo)識符、數(shù)據(jù)長度。初始化過程是在CAN控制器復(fù)位模式下完成的,監(jiān)控通信的初始化程序流程如圖4所示。
  

本文引用地址:http://2s4d.com/article/163647.htm


  
  監(jiān)控節(jié)點(diǎn)與CAN之間的數(shù)據(jù)交換是通過發(fā)送程序和接收程序?qū)崿F(xiàn)的。發(fā)送程序流程如圖5所示,從圖5中可以看出系統(tǒng)的每個節(jié)點(diǎn)采用定時中斷的方式主動向監(jiān)控計算機(jī)發(fā)送數(shù)據(jù)。這是利用了CAN總線可以采用多主機(jī)方式通信的特點(diǎn)。由于實(shí)時監(jiān)控功能是由各個控制節(jié)點(diǎn)完成,而監(jiān)控計算機(jī)主要用來實(shí)現(xiàn)管理功能,所以采用了定時上傳數(shù)據(jù)的方法,而沒有實(shí)時上傳所有傳感器采集到的數(shù)據(jù),從而減輕了總線負(fù)擔(dān)。這也是控制方法相對于集中控制方法的一個優(yōu)點(diǎn)。圖6為接收程序流程圖,接收緩沖區(qū)用來存放CAN總線上發(fā)來的數(shù)據(jù),CPU讀取數(shù)據(jù)后接收緩沖區(qū)將被清空,等待接收新的數(shù)據(jù)。
  
 


  
  5結(jié)束語
  
  本文CAN總線的節(jié)點(diǎn)經(jīng)過現(xiàn)場調(diào)試,可以對潛水電機(jī)運(yùn)行過程中出現(xiàn)的過流、過熱、短路、滲漏情況做出處理,對電機(jī)起到了保護(hù)作用;節(jié)點(diǎn)與上位計算機(jī)之間的數(shù)據(jù)通信穩(wěn)定可靠;可以通過現(xiàn)場設(shè)置模塊修改節(jié)點(diǎn)的參數(shù)。實(shí)驗(yàn)表明了節(jié)點(diǎn)的適用性和可靠性,開發(fā)過程中所提出的技術(shù)方案和實(shí)現(xiàn)方法可以在及工業(yè)底層監(jiān)控網(wǎng)絡(luò)的現(xiàn)場節(jié)點(diǎn)設(shè)計中推廣應(yīng)用。
  
  本文作者創(chuàng)新點(diǎn):設(shè)計了一種P87C591的監(jiān)控節(jié)點(diǎn),在軟/硬件設(shè)計中均采用了模塊化的結(jié)構(gòu),具有高度的靈活性和廣泛的適用性。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉