<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統 > 設計應用 > 基于CAN的農業(yè)灌溉監(jiān)測系統設計

          基于CAN的農業(yè)灌溉監(jiān)測系統設計

          作者: 時間:2016-12-19 來源:網絡 收藏
          0引言

          近年來,隨著經濟社會的發(fā)展,各地水需求量逐漸增加,水資源供需的矛盾日益顯著。我國水資源利用效率很低,農業(yè)灌溉水利設施建設落后,水浪費現象嚴重。因此,如何提高農業(yè)灌溉水資源的利用率就顯得極其重要。通過測量灌溉流量的實時信息來有效地節(jié)約利用水資源,這就用到了自動控制系統。確保系統穩(wěn)定性,降低系統成本的重要環(huán)節(jié)是在自控系統中使用何種通訊方式?;诂F場總線的通訊與控制技術是目前工業(yè)自動控制領域中的主要技術之一,它具有信息數字化和控制分散化等技術優(yōu)點,在自動控制領域中應用日益廣泛?,F場總線技術的國際先進水平已經達到二芯載波電纜控制10Km距離的推廣階段,但我國在大田農業(yè)灌溉控制系統應用上,基于總線方式的控制技術還顯得相當薄弱[1]。因此,借鑒先進的設計思想,開發(fā)出具有自主知識產權的基于現場總線的灌溉控制系統,符合農業(yè)現代化對自動化技術的需求。

          本文引用地址:http://www.ex-cimer.com/article/201612/331330.htm

          1系統組成

          組成現場網絡,并通過以AT89C51處理器為核心的一個數據轉換系統。本系統CAN總線模塊以AT89C51為微處理器,在CAN總線通信接口上,采用了飛利浦公司的SJA1000和TJA1050芯片,SJA1000是獨立CAN通信控制器,TJA1050為高性能CAN總線收發(fā)器。電路主要由微控制器AT89C51、獨立CAN通信控制器SJA1000、CAN總線收發(fā)器TJA1050和流量計四部分所構成。微處理器AT89C51負責SJA1000的初始化,通過控制SJA1000實現數據的接收和發(fā)送等通信任務。系統結構原理圖如圖1-1所示:

          圖1-1系統結構原理圖

          1灌溉系統測量及數據處理

          水流量傳感器主要由閥體、水流轉子組件和霍爾傳感器組成。它裝在進水端,用于檢測進水流量,當水通過水流轉子組件時,磁性轉子轉動并且轉速隨著流量變化而變化,霍爾傳感器輸出相應脈沖信號,反饋給控制器,由控制器判斷水流量的大小,進行調控。接線端口有正極、信號輸出線、負極。單片機通過計算輸出脈沖數,結合水流量計的參數計算流過的水流量;單片機I/O與存儲器的接口連接,單片機將采集后的數據經處理后可以存放在存儲器中,單片機的I/O接口與液晶以及上位機連接,經過單片機采集處理后的數據可以進行實時顯示并上傳至上位機保存。流量計的接線方式如圖1-2所示:

          圖1-2水流量傳感器接線端口

          1.2灌溉系統通信部分的組成

          CAN總線器件比較流行的有兩大種:一種是有在片CAN的微控制器。另一種是獨立的CAN控制器,本設計選用PHILIPS公司的SJA1000CAN控制器以及TJA1050總線收發(fā)器,其中TJA1050可以支持110個CAN節(jié)點,SJA1000持CAN2。0A/B規(guī)約。SJA1000用于汽車和一般工業(yè)環(huán)境中的控制器局域網絡中,它是PHILIPS半導體PCA82C200CAN控制器(BasicCAN)的替代產品。而且,它增加了支持具有很多新特性的CAN2.0B協議的工作模式[2]。片內含信息緩沖、位流處理、位定時邏輯、接收濾波、錯誤管理邏輯等電路,并配置有豐富的功能寄存器??赏瓿蓴祿蓭?、總線填充、錯誤檢測、總線仲裁及錯誤界定處理等規(guī)范。SJA1000的數據線AD0-AD7連接到單片機的P0口,/CS與P2.0連接。P2.0為低時,CPU的外部存儲地址可選種SJA1000,CPU通過這些地址可以對SJA1000進行讀/寫操作。SJA1000的ALE,/WR,/RD引腳分別與CPU的相應引腳相連。/INT與CPU的INT0相連,CPU通過中斷方式對SJA1000進行訪問.試驗中應該加強CAN總線節(jié)點的抗干擾的能力,這就要求SJA1000當的RX0,TX0不直接與TJA1050中的RXD,TXD相連,而要通過光藕6N137和TJA1000相接,這樣總線上的各個節(jié)點之間的電氣隔離就能更好的實現。不過,應該注意的是,這樣光藕部分所應用的兩個電源必須完全電氣隔離,不然的話采用光偶就失去了意義。電源隔離可以采用帶多個5V隔離輸出開關電源來實現[3]。單片機與SJ1000的連接原理圖如圖1-3所示:

          圖1-3SJA1000與單片機接口設計原理圖

          TJA1050是控制器區(qū)域網絡(CAN)協議控制器和物理總線之間的接口。TJA1050可以為CAN控制器提供差動接收性能,為總線提供差動發(fā)送性能。能夠將輸出信號CANH和CANL的最佳匹配,能夠將電磁輻射變得更小。TJA1050的CAN總線接口部分采取了抗干擾和安全的一些措施。TJA1000的兩個引腳CANL,CANH都是用一個5.1Ω的電阻與CAN總線連通,其中電阻可以起到限流保護作用,使TJA1000不被過流的損害[4]。在地與CANL,CANH之間并聯了兩個30PF的電容,具有防輻射和濾除總線上的高頻干擾的能力。再就是在CANH,CANL與地間可以接入兩個防雷擊管,當地與兩個各輸入端之間出現瞬變干擾的時候,防雷擊管的放電可以起到一定的保護作用[5]。TJA1050設計原理圖如圖1-4所示:

          圖1-4TJA1050設計原理圖

          2系統的軟件設計

          CAN總線的軟件設計主要包含三部分:CAN初始化程序、報文的發(fā)送程序、報文的接收程序[6]。CAN初始化主要是設置CAN的通信參數。需要初始化的CAN控制寄存器有:模式寄存器、時分寄存器、接收代碼寄存器、屏蔽寄存器、總線定時寄存器、輸出控制寄存器等。值得注意的是以上寄存器只能在CAN控制器處于復位狀態(tài)下才可寫訪問[7]。發(fā)送數據程序把數據存儲區(qū)中待發(fā)送的數據取出,組成信息幀,并將主機的ID地址填入幀頭,將信息幀發(fā)送到CAN控制器的發(fā)送緩沖區(qū)。在接收到主機的發(fā)送請求后,發(fā)送程序啟動發(fā)送命令。信息從CAN控制器發(fā)送到總線是由CAN控制器自動完成的。信息從CAN總線到CAN控制器的接收緩沖區(qū)也是由CAN控制器自動完成的。接收程序只需從接收緩沖區(qū)讀取信息,并將其存儲在數據存儲區(qū)。


          上一頁 1 2 3 下一頁

          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();