1 引言
現(xiàn)場總線技術是當今自動化領域發(fā)展的熱點,德國bosch公司的can是為解決汽車內(nèi)部的復雜硬信號接線提出的,,而其應用范圍正逐漸向過程控制,、機器人、數(shù)控機床,、醫(yī)療器械及傳感器等領域發(fā)展,。can總線以其獨特的設計、低成本,、高可靠性,、實時性,、抗干擾能力強等特點得到了廣泛的應用。本文選用can總線設計了分布式熱電阻智能節(jié)點,,利用can總線連接各個網(wǎng)絡節(jié)點,,可以直接與主控卡或上位機通信,組建成工業(yè)網(wǎng)絡分布式測控系統(tǒng),。
2 熱電阻智能節(jié)點硬件設計
2.1智能節(jié)點整體結(jié)構(gòu)
本熱電阻智能節(jié)點設有4路輸入通道,,支持3線制方式,支持熱電阻類型有cu50,、cu100和pt100,,采用freescale mc9s12d64單片機作為微控制器,其內(nèi)部有一個can通信模塊(mscan),,符合can2.0a/b標準,,所以不需要擴展can通訊控制器。can接口收發(fā)器采用pca82c250作為can通信模塊和物理傳輸線路之間的接口,。節(jié)點通過24位a/d轉(zhuǎn)換器ads1216對組態(tài)通道進行采樣,,由于熱電阻的阻值與溫度成正比關系,需將已知電流流過該電阻以得到與溫度成正比的輸出電壓,。本文使用ads1216的兩個8位電流輸出idac1和idac2作為恒流源,,通過模擬開關max355選通相應的組態(tài)通道,然后ads1216對得到的電壓信號進行采樣并輸出至微控制器,,經(jīng)校正后進行標度變換轉(zhuǎn)化成相應的電阻值,,查熱電阻分度表即可得到所測溫度。本節(jié)點也可通過rs485接口并嚴格按照modbus協(xié)議進行通信,,rs-485收發(fā)器采用sn65lbc184,。
本熱電阻智能節(jié)點硬件結(jié)構(gòu)框圖如圖1所示。
圖1 熱電阻智能節(jié)點硬件結(jié)構(gòu)框圖
2.2信號輸入端電路與采樣電路
信號輸入端電路與采樣電路原理圖如圖2和圖3所示,。
圖2 熱電阻信號輸入端電路
圖3 a/樣電路
max355差動4通道模擬開關接4路熱電阻信號轉(zhuǎn)換電路,,圖中只畫出第一路轉(zhuǎn)換電路,接線方式為三線制,,使能端en接高電平,,使max355一直有效。a0,、a1引腳接至mc9s12d64單片機的pp0和pp1端,用于選通某一路熱電阻信號進行轉(zhuǎn)換與測量,。當max355選通某一通道后,,該通道將與公共端接通,假設選通通道1,,200ua恒定電流由no1a和no1b輸出流經(jīng)熱電阻產(chǎn)生毫伏級電壓信號,,此信號在vin1和vin2處被ads1216采樣,。
ads1216組成4路全差分通道。單片機通過porta與ads1216通信,,用于控制ads1216選通某一路模擬量輸入通道并進行采樣,,每一個控制信號均通過光耦合器和兩個施密特觸發(fā)器進行數(shù)字隔離,這樣做可有效抑制各種噪聲干擾,,提高傳輸通道上的信噪比,。ads1216采樣每一路通道之前均進行偏置與增益自校準。當/drdy變?yōu)榈碗娖?,標志著?shù)據(jù)寄存器中數(shù)據(jù)已準備好,,單片機便從24位數(shù)據(jù)輸出寄存器(dor)讀取轉(zhuǎn)換結(jié)果。
2.3 can和rs-485通信電路
can和rs-485通信電路原理圖如圖4所示,。
mc9s12d64單片機的can輸入與輸出引腳(rxcan0和txcan0)分別接至收發(fā)器pca82c250的txd和rxd引腳,。pt2用來控制數(shù)據(jù)接收與發(fā)送,當pt2為低電平時,,接收數(shù)據(jù),;當pt2為高電平時,發(fā)送數(shù)據(jù),。輸入rs通過一電阻接地,,使pca82c250工作在斜率控制模式下。sn65lbc184為具有瞬變電壓抑制的rs485差分收發(fā)器,,因此本智能節(jié)點可以接入采用canbus或rs485的測控系統(tǒng),,并方便的與各種組態(tài)軟件進行通信。
圖4 can和rs-485通信電路
3 熱電阻智能節(jié)點軟件設計
3.1概述
單片機程序用mc9s12匯編語言編寫,。在主程序首先完成各寄存器和存儲單元的初始化,,再通過調(diào)用讀取地址子程序,得到i/o板卡的地址和can通信波特率,,再完成mscan模塊和ads1216初始化,。隨后調(diào)用e2prom中組態(tài)信息,對每一路組態(tài)通道進行信號轉(zhuǎn)換,,數(shù)字濾波及溫度查表計算等,,其主程序流程圖如圖5所示。
圖5 熱電阻智能節(jié)點主程序流程圖
由于現(xiàn)場的各種干擾很容易使信號失真,,從而使a/d轉(zhuǎn)換結(jié)果產(chǎn)生比較大的誤差,。因此在對信號進行有效的硬件濾波后還需進行軟件濾波,本節(jié)點采用了數(shù)字中值濾波,、算術平均,、加權(quán)濾波等方式。
3.2 節(jié)點與上位機的can通信
智能節(jié)點與主控卡或上位機的通信主要基于can通信協(xié)議來完成,,它的優(yōu)點是能夠?qū)崟r處理數(shù)據(jù),、在惡劣環(huán)境下正常工作,、成本低且擁有比較高的帶寬。由于上位機內(nèi)部無can網(wǎng)絡適配器,,因此需外接rs-232/can轉(zhuǎn)接卡,,實現(xiàn)上位機與智能節(jié)點的通信。通過節(jié)點上的跳線設置節(jié)點地址,,當上位機發(fā)出命令時,,節(jié)點進入can接收中斷,對數(shù)據(jù)解包放入接收緩沖區(qū)并調(diào)用數(shù)據(jù)處理函數(shù),。當上位機發(fā)出組態(tài)命令時,,單片機會將收到的組態(tài)通道信息和信號類型寫入e2prom保存,并回送一幀數(shù)據(jù)通知上位機組態(tài)信息已成功接收,。當接收到上傳rtd值命令時,,單片機會將內(nèi)存中的4路rtd溫度值以多幀形式發(fā)送給上位機。
3.3 rtd阻值變換算法
軟件設計中關鍵算法在于rtd電壓阻值的轉(zhuǎn)化,,刻度點間的線性化及標度變換,。以pt100熱電阻的溫度刻度表為例,
pt100tab:fcb 04h,00h,07h,39h,08h,0e8h,0ah,94h,0ch,3ch,
fcb 0dh,0e1h, 0fh,83h,11h,23h,12h,0c0h,14h,5bh,
fcb 15h,0f3h,17h,89h,19h,1eh,1ah,0b1h,1ch,41h,
……
fcb 91h,84h,92h,0afh,93h,0d8h,95h,01h,96h,28h,
fcb 97h,4eh,98h,72h,9ah,0cah
分度表由-210℃開始每間隔10℃作為一個刻度點,,每一個刻度點的電阻值擴大100倍后轉(zhuǎn)換為十六進制數(shù)即構(gòu)成上表,。考慮到表格的一致性,,cu100和cu50熱電阻的分度表也從-210℃開始計算,。
當?shù)玫叫U蟮腶d轉(zhuǎn)換數(shù)值后,需要將采樣到的電壓信號轉(zhuǎn)換為電阻值以便于查表,。阻值計算公式如下:
r即為實際熱電阻阻值,,在這里將其擴大100倍以便于查表。
3.4 分段線性化查表
得到的對應阻值后,,則從第0個刻度點開始比較,,如果該采樣值大于第0個刻度點,則再與下一個刻度點比較,,同時記錄小于該采樣值的刻度點的個數(shù)n,,如果采樣值小于某一溫度刻度點,則溫度位于該刻度點b與前一個刻度點a之間,,溫度線性化在a,、b兩刻度點之間進行,線性化得到的溫度加上a點對應的溫度(n×10)即為采樣溫度,。
以pt100熱電阻為例,,某一通道得到校正后的采樣值為$9343,則前8個刻度點均小于$9343,,第9個刻度點值大于$9343,,記錄小于該采樣值的刻度點的個數(shù)n=101,此時a點(第101個刻度點$92af)對應溫度為10×101=1010℃,,b點(第9個刻度點$93d8)溫度為1020℃,,線性化在a、b兩點間進行,,具體公式為:
[($934-$92af)/($93d8-$92af)]×10=5℃
所以$9343對應的溫度為:
a點(第101個刻度點)對應溫度1010℃+線性化溫度5℃-210℃=805℃
其中,,各表均以-210℃作為起始,故計算溫度時應減去210℃,。
4 結(jié)束語
本智能測控節(jié)點主要完成對現(xiàn)場熱電阻信號進行采集和處理,。在實驗室條件下,利用電阻計代替現(xiàn)場的熱電阻信號,,經(jīng)過反復測試,,溫度測量值均正確,并且誤差在±1%以內(nèi),。另外在監(jiān)控程序的控制下,,節(jié)點能夠有效配合上位機完成系統(tǒng)的組態(tài)、信號校正和上傳等功能,,具有可靠,、實時、靈活等特點,。
作者簡介
閆志紅(1986-)女 在讀碩士,,現(xiàn)就讀于山東大學控制科學與工程學院,研究方向為自動化裝置的集成化與智能化,。
參考文獻
[1]李正軍.計算機測控系統(tǒng)設計與應用[m].北京:機械工業(yè)出版社,,2004.
[2]李正軍.現(xiàn)場總線及其應用技術[m].北京:機械工業(yè)出版社,2005.
[3]孫同景.freescale十六位單片機原理及嵌入式開發(fā)技術[m].北京:機械工業(yè)出版社,,2008.
[4]邵貝貝著.單片機嵌入式應用的在線開發(fā)方法[m].北京:清華大學出版社,,2004.