《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于CAN總線的溫室測控系統的研究與設計
基于CAN總線的溫室測控系統的研究與設計
Icbuy
Icbuy
摘要:   CAN(Controller Area Network)總線又稱為控制局域網,是一種多主方式串行通信協議,能有效地支持具有很高安全等級的分布實時控制。由于CAN總線具有造價低、通信速度快、可靠性高、實時性強等突出優點,在汽車行業、機械工業、家用電器及傳感器等領域應用廣泛。
Abstract:
Key words :
 

  CAN(Controller Area Network)總線又稱為控制局域網,是一種多主方式串行通信協議,能有效地支持具有很高安全等級的分布實時控制。由于CAN總線具有造價低、通信速度快、可靠性高、實時性強等突出優點,在汽車行業、機械工業、家用電器及傳感器等領域應用廣泛。

  溫室控制技術是農業現代化的重要內容,在目前的溫室系統中主要是靠RS-485總線來組成控制網絡,將采集到的數據和信息傳送到主控機中。其通信速率、節點連接數目都受到一定的限制。

  本文提出了以CAN總線構成現場控制網絡。CAN總線的通信速率最高可達1 Mbps/40 m,掛接的設備可達110個。另外信號的傳輸采用短幀結構,這樣傳輸時間短,受干擾的概率低。并且一旦網絡中某個節點故障時,該節點具有自動關閉輸出功能,以主動切斷該節點與總線的聯系,使網絡上其他節點及通信不受影響,具有較強的抗干擾能力,降低了惡劣環境對于溫室系統的影響,提高了系統的實時性、可靠性和擴充性。

  1 系統總體設計

  溫室測控系統采用分布式多主方式進行通信。系統主要由主控上位機、CAN總線和多個智能測控模塊組成(注意:各個智能測控模塊之間存在強烈的相互關系)。通過對溫室內外,特別是溫室內部各種影響作物生長的要素用相應智能傳感器進行測量,然后通過CAN總線傳送給主控上位機,上位機進行數據打印、分析和處理、參數設置并且控制有關設備等工作,從而實現對溫室要素的調控,保證了作物生長所需的環境。系統上任何節點均可在任意時刻主動向其他節點發出信息,支持點對點、一點對多點和全局廣播方式接受和發送數據。圖1是溫室測控系統總體設計圖。

b.JPG

  2 硬件平臺設計

  溫室測控系統的硬件平臺主要由多個CAN智能節點構成,如圖2所示。本系統節點采用總線型拓撲結構,兩芯電纜(CANH和CANL)雙絞線連接。主要由微控制器MC68S08QG8,CAN通信控制器MCP2515和CAN收發器TJA1050組成。本文中微控制器MC68S08QQ8與控制器MCP2515是通過SPI口連接,測控節點通過微控制器MC68S08QG8的IIC口來連接的。智能節點的個數是由溫室內外所測控的環境要素來決定的,但是任意智能節點均可以像以太網節點那樣直接掛接在CAN總線網絡上,即在不犧牲可靠性的前提下進一步擴展現場測控節點的數量。

c.JPG

  2.1 芯片介紹

  選擇一款合適的MCU是系統穩定的重要保障。綜合功耗、性能和價格等各種因素的考慮,本系統采用Freescale公司的MC68S08QG8(以下簡稱為QG8)作為系統控制信號采集的芯片。MC68S08QG8單片機采用高性能、低功耗HCS08飛思卡爾8位微控制器為內核,是一款集成度高、結構緊湊、功能豐富、適用于各種場合的低價位單片機。MC68S08QG8除了提供Freescale豐富的外圍接口與HCS08內核卓越性能的多功能組合外,還包括更長的電池壽命(即使工作電壓低至1.8 V,也能發揮最大效能)、業界領先的Flash技術、3個通信接口(SCI、SPI和IIC)以及創新的開發支持等其他系列單片機不可比擬的優勢。

  智能節點中CAN控制器完成了CAN協議中數據鏈路層和物理層的所有功能,保證通信質量。本系統選用了一種獨立的CAN協議控制器——Microchip公司的MCP2515。MCP2515完全支持CAN V2.0B技術規范,MCP2515還包含3個發送緩沖器和2個接受緩沖器,減少了單片機的管理負擔。與傳統上使用的CAN控制器SJA1000相比較,它與MCU的連接是通過行業標準串行外設接口(SPI)來實現的,這樣可以減少芯片使用的引腳,簡化CAN總線的電路的連接,提高了系統穩定性。

  CAN總線收發器提供CAN控制器與物理總線之間的接口,是影響CAN總線網絡安全性、可靠性和電磁兼容性的主要因素。本系統采用Phlips公司的TJA1050作為總線收發器。TJA1050有兩種工作模式:高速和待機,其中待機模式可以防止由于CAN控制器失控而造成的網絡阻塞。并且在TJA1050中還設計了一個超時定時器,用以對TXD的低電壓(此時CAN總線上為顯性位)進行監視。該功能可以避免由于系統硬件或者軟件故障而造成TXD端長時問為低電位時總線上所有其他節點也將無法通信的情況出現。這也是FJA1050與82C250相比較之后最大的改進地方。

  2.2 智能節點硬件電路

  智能節點最小系統硬件電路如圖3所示,主要的連接有以下3個方面:

d.JPG

  1)QG8的SPI接口使用4條信號線:主機輸出低有效片選信號線g.jpg、主機輸出線SPSCK、主機輸出/從機輸入數據線MOSI以及主機輸入/從機輸出數據線MISO,分別于MCP2515的h.jpg、SCK、SI、SO引腳連接。QG8的i.jpg與MCP2515的中斷引腳j.jpg相連,可以通過中斷來提高系統實時性。

  2)MCP2515的3個發送緩沖器TXBn請求發送引腳(4、5、6引腳)接到+5 V終端,兩個接收緩沖器RXBn中斷引腳(10、11引腳)空置。由于該測控系統對于環境的要求比較高,MCP2515的TxCAN和RxCAN并不是直接與SJA1050的TXD和RXD相連,而是通過6N137(高速光耦)后于SJA1050相連,這樣很好地實現了總線上各CAN節點的電氣隔離,進一步提高了該系統的抗干擾能力。不過需要特別注意的是,光耦部分電路的兩個VCC、VDD必須完全隔離,否則采用光耦也就失去了意義。電源的完全隔離可采用小功率電掾隔離模塊或帶多5 V隔離輸出地開關電源模塊實現。雖然這部分增加了接口電路的復雜性,但是卻提高了節點的穩定性和安全性,從而也提高了測控系統的性能。

  3)TJA1050的第8個引腳VREF是參考電壓,輸出可以空置。第5個引腳決定芯片的工作模式(高速和待機兩種模式),圖中和地之間接47 kΩ的電阻進入高速模式(也是正常工作時的模式)。本系統在CANH和CANL總線輸入端與地之間分別接了一個SA28A(瞬態抑制二極管),當兩輸入端與地之間出現瞬變干擾時,通過SA28A的放電可起到一定的保護作用。在CANH和CANL之間還接了一個120 Ω的終端電阻,可以在阻抗不連續時消除通信線路中產生的信號發射。

  3 軟件設計

  本系統的軟件程序設計是在Freescale公司的集成開發環境——Freescale Codewarrior 5.1下完成的。該系統的軟件由CAN控制器軟件和應用層通信協議構成。

  3.1 CAN總線驅動層軟件實現

  CAN控制器軟件主要包括器件初始化、數據發送和接收。初始化工作主要是對QG8微處理器、SPI接口和MCP2515CAN控制器的初始化。其中微處理器初始化主要包括定時器、變量和外部中斷的初始化。需要特別注意的是飛思卡爾單片機的定時器與其他單片機(如51系列單片機)不太一樣,QG8微處理器的定時器是不能預置某個數值的,而且是只讀的,因此必須要有輔助寄存器才能實現該定時器的功能,本文采用的是QG8微處理器的16位的定時器模塊TPM:SPI接口的初始化主要包括對控制寄存器SPIC1和SPIC2、波特率寄存器SPIBR、狀態寄存器SPIS、數據寄存器SPID的設置。MCP2515的初始化為復位MCP2515、寄存器配置。只有對MCP2515初始化后,進入了配置模式才能對相關的寄存器進行初始化,初始化工作完成后進入工作模式,進行報文發送。為了能使節點穩定的通信,CAN總線上所有的節點都必須有相同的波特率。對于振蕩器時鐘頻率不同的器件,可以通過對波特率預分頻比和每一個時間段中時間份額數量的設置來調整比特率。

  QG8是通過使用標準SPI讀/寫命令對寄存器進行讀/寫操作。外部數據和命令式通過SI引腳在SCK時鐘信號上升沿傳送到器件中。MCP25 15在SCK下降沿通過SO引腳發送數據。本文采用狀態查詢方式發送報文。首先應該禁止CAN發送中斷產生,以保證報文發送不被中斷。為了啟動報文發送,必須將相應緩沖器的TxBnCTRL TxREQ位置1,文中是通過調用RTS2515()請求發送來實現的。緩沖器中TxBnCTRL TxP<1:0>優先級最高的報文在總線空閑時首先被發送。如果發送成功將產生中斷來通知接收,否則TxBnC TRL TxRR和CANINIF.MERRF將被置位,產生發送錯誤狀態,同時INT引腳置位,產生中斷請求。具體報文發送流程如圖4所示。

e.JPG

  為了提高系統的實時性,報文接收模塊采用中斷接受方式。該模塊包括主程序和接受中斷服務程序兩部分組成,主程序必須在中斷控制報文接受之前使能CAN的接受中斷和微控制器QG8的全局中斷。當報文發送完之后會產生一個中斷通知來接收報文。首先應該看一下中斷標志類型,如果是報文成功發送產生的中斷,將報文讀入濾波器中,否則產生報文出錯標志,CANINTF.MERRF位被置1.將接收到報文的標示符字段與濾波寄存器中的值進行比較,如果兩者匹配,將該報文載入相應的接受緩沖器,否則產生一個無效報文。如果緩沖器慢將會產生溢出錯誤,EFLG.RXOOVER位置1.報文接受成功且處理完畢后,MCU將清除中斷標志,返回主程序以接受下一條報文。具體的流程圖如圖5所示。另外整個報文接受過程都可以在接受中斷服務程序中完成,不需要與主程序發生交互作用。

f.JPG

  3.2 CAN總線應用層軟件實現

  目前國內還沒有CAN通訊的應用層協議標準,而國外現有流行的CANopen、DeviceNet和CANkingdom等應用層協議對于本系統的要求來說實現復雜會造成資源浪費。本文定義了一個簡單的通信協議來完成系統所需求的功能。

  該協議中采用29位(ID.28-ID.0)標識符的擴展幀格式,這些位的發送順序是從ID.28到ID.0,最高7位ID.28~ID.22不能全是隱性1。每一個標識符對應一條信息,只有與自己標識符相同的信息才被接收端接收。標識符ID號的大小還決定了發送的優先級和等待時間,標識符越小的報文幀優先被發送。本協議中ID號位28~24的五位表示信息采集節點,包括各種傳感器模塊,ID號為23~18的四位表示顯示節點,包括各種數據的顯示和報警節點。ID號為19~14的六位為執行控制節點,包括CO2發生器、循環風扇等控制設備節點。ID15~13為信息類別,包塊各種命令信息和狀態信息等信息節點。ID12~ID0為預留。

  4 系統測試

  為了測試本設計的性能,在實驗室里進行了CAN總線節點之間的溫度測試,如圖6所示。在18點和19點(橫坐標表示時間)之間進行了溫度的測試,在18點鐘到18點30分之間A和B節點一直顯示實驗室的室內溫度(15~17℃之間),過半個小時后將B節點放入22℃的溫水中,然后取出。從圖中可以看到紅色曲線(A節點溫度曲線)一直是恒溫狀態(15~17℃之間),而白色曲線(B節點溫度曲線)在18點30分鐘溫度升到22℃,隨著溫度傳感器被取出,溫度也在下降到15~17℃之間。

a.JPG

  5 結束語

  本文根據目前溫室系統存在的問題,提出了用CAN總線構成溫室測控系統傳輸網絡,并根據系統需要設計了簡單的應用層通信協議和進行了CAN節點之間溫度測試。測試結果表明:本設計傳輸網絡結構簡單、可靠性高。另外該測控模塊也可以運用在鍋爐控制、樓宇控制等各種工業現場測控系統中,實用性強、應用范圍廣。


 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品magnet| 亚洲精品日产精品乱码不卡| 欧美激情精品久久久久久蜜臀| 午夜在线一区二区| 亚洲欧美日韩一区在线| 中文日韩在线视频| av成人激情| 一区二区三区精品国产| 一区二区高清视频| 亚洲色无码播放| 亚洲一区二区在线看| 亚洲在线国产日韩欧美| 亚洲女人av| 香蕉成人啪国产精品视频综合网| 亚洲欧美电影院| 欧美一区二区三区在线看| 欧美在线亚洲综合一区| 久久久国产精品一区二区中文| 久久精品导航| 葵司免费一区二区三区四区五区| 麻豆精品一区二区av白丝在线| 蜜桃久久av一区| 欧美xxx成人| 欧美日本在线观看| 欧美视频在线观看 亚洲欧| 国产精品久久精品日日| 国产精品成人一区| 国产欧美不卡| 极品av少妇一区二区| 在线观看成人小视频| 91久久精品国产91性色| 日韩午夜中文字幕| 亚洲欧美日韩一区二区| 久久精品国产免费观看| 亚洲日本中文| 亚洲一区免费观看| 久久精品99国产精品| 美国成人直播| 欧美日韩亚洲一区二区| 国产精品有限公司| 激情五月综合色婷婷一区二区| 亚洲国产欧美在线人成| 中文久久精品| 久久精品国产999大香线蕉| 亚洲精选久久| 午夜欧美电影在线观看| 麻豆精品一区二区综合av| 欧美日韩视频在线| 国产日韩欧美在线| 91久久精品一区二区别| 国产精品99久久久久久宅男| 久久不射中文字幕| 亚洲狼人精品一区二区三区| 午夜亚洲视频| 欧美 日韩 国产精品免费观看| 国产精品白丝av嫩草影院| 国内精品99| 99视频精品全部免费在线| 久久成人人人人精品欧| 9人人澡人人爽人人精品| 羞羞色国产精品| 欧美国产欧美综合| 国产欧美亚洲一区| 亚洲毛片在线免费观看| 欧美一区2区视频在线观看| 999亚洲国产精| 欧美在线你懂的| 欧美日韩二区三区| 国产自产精品| 亚洲视频精品| 亚洲日韩欧美一区二区在线| 欧美一区在线视频| 欧美欧美天天天天操| 国产一区二区三区视频在线观看| 日韩亚洲精品视频| 亚洲国产美女| 欧美一区免费视频| 欧美日韩免费| 一区免费视频| 欧美一区2区视频在线观看 | 午夜精品在线| 欧美极品一区| 精品成人久久| 欧美一区二区在线看| 亚洲免费视频观看| 欧美日韩成人一区二区| 激情久久一区| 欧美亚洲免费| 亚洲欧美日本日韩| 欧美人与性动交α欧美精品济南到| 国产一区二区高清不卡| 亚洲制服av| 中文国产一区| 欧美极品影院| 亚洲大片一区二区三区| 亚洲电影免费观看高清完整版在线观看 | 亚洲精品美女| 久久在精品线影院精品国产| 国产精品亚洲精品| 亚洲一区二区三区四区五区黄| 99在线视频精品| 欧美激情一区二区三级高清视频| 狠狠网亚洲精品| 久久福利资源站| 久久精品国产v日韩v亚洲 | 亚洲欧美日韩天堂一区二区| 亚洲砖区区免费| 欧美日韩一视频区二区| 亚洲精品激情| 日韩一级成人av| 欧美激情1区2区3区| 亚洲二区视频| 日韩亚洲成人av在线| 欧美高清在线播放| 亚洲国产精品热久久| 亚洲人成人一区二区在线观看| 免费成人高清| 亚洲黄一区二区| 亚洲精选在线观看| 欧美喷潮久久久xxxxx| 亚洲日本在线观看| av成人手机在线| 欧美三级视频在线| 中文精品视频| 欧美一区二区三区喷汁尤物| 国产色产综合产在线视频| 欧美亚洲一区二区在线观看| 欧美亚洲一区二区在线| 国产乱码精品一区二区三区不卡 | 亚洲麻豆av| 欧美日韩喷水| 一区二区日韩精品| 先锋影音久久| 国产亚洲欧美日韩在线一区| 久久狠狠亚洲综合| 免费在线亚洲欧美| 亚洲精品在线观看免费| 亚洲一级特黄| 国产欧美不卡| 亚洲国产精品va在线看黑人动漫| 免费在线欧美视频| 99re国产精品| 欧美一区亚洲| 在线观看免费视频综合| 日韩亚洲欧美中文三级| 欧美午夜精品理论片a级大开眼界| 亚洲一区二区免费在线| 久久午夜视频| 亚洲精品美女免费| 午夜精品在线视频| 激情综合久久| 一区二区冒白浆视频| 国产精品腿扒开做爽爽爽挤奶网站| 午夜日本精品| 欧美不卡一区| 一区二区三区精品国产| 久久精品国产v日韩v亚洲| 在线观看视频欧美| 亚洲一品av免费观看| 国产一级久久| 99精品热视频| 国产日韩1区| 亚洲美女视频| 国产伦精品一区二区三区照片91| 亚洲成人在线视频网站| 欧美日韩日本国产亚洲在线| 亚洲欧美一区二区在线观看| 欧美成人一品| 亚洲女同性videos| 欧美国产激情二区三区| 亚洲伊人久久综合| 欧美成人精品1314www| 亚洲一区久久| 欧美韩国日本一区| 销魂美女一区二区三区视频在线| 欧美高清在线精品一区| 亚洲综合大片69999| 欧美国产精品中文字幕| 午夜精品久久久久影视| 欧美国产日韩一区二区在线观看| 亚洲影音一区| 欧美精品三级| 久久精品国产亚洲精品| 国产精品久久久久久久久久久久| 亚洲高清自拍| 国产精品视频| 日韩一区二区免费看| 国产原创一区二区| 亚洲一区中文字幕在线观看| 在线观看一区二区视频| 欧美专区在线| 一本色道久久加勒比88综合| 免费日韩成人| 欧美在线观看视频| 国产精品久久久对白| 日韩一级片网址| 在线播放亚洲| 久久精品国产久精国产爱| 亚洲最新中文字幕| 欧美激情综合|