公司新闻News
公司新闻
位置位置: 首页 >公司新闻 >公司新闻 >

電動閥門性能檢測係統的實時通訊設計與實現

作者:AM8亚美来源:[AM8亚美公司]访问:005时间:2019-12-06

摘要 :給出了基於485 總線, 由控製中間PC 機和多個單片機控製係統構成的電動裝配性能檢測係統中的實時通訊係統, 重點先容了利用VB 實現PC 機與多個單片機控製係統實時通訊程序設計方法, 實現了PC 機對多個長途單元的實時控製與治理。關鍵詞:Visual Basic 串行通訊 電動裝配性能檢測係統 長途控製 1 引言

在很多實時監測係統中, 經常需要接收間隔較遠的測控點數據, 如何快速可靠的實現數據的長途傳輸是這些監測係統必須解決的題目。在監測現場, 為了降低係統的本錢, 往往采用單片機係統作為數據采集和記錄單元 。在中心控製中間, 經常利用PC 機來完成人機會話及與監測現場的通訊。

本文先容一套用於電動裝配出廠性能檢測係統的實用的主從式(Master/ Slave) 長途實時通訊係統。檢測係統的下位機是以32 位的ARM 單片機(L PC2214) 為CPU , 兩片CPLD ( XC95108) 擴展I/ O 口對外圍器件如加載電機、卸載電機、光電編碼器和AD 轉換器進行控製的單片機係統, 並有鍵盤進行數據輸進和液晶屏顯示各功能接口, 和打印機打印測試合格產品的性能參數記錄。上位機的治理平台則基於Visual Basic 610 。此係統通過對產品的性能參數進行檢測, 嚴格避免分歧格產品出廠, 進步產品質量, 加強了產品的市場競爭力。

通訊係統以生產現場的雙絞線為通訊媒介, 上位機利用VB 610 的通訊控件MSComm 實現了與下位機的長途實時通訊, 下位機利用於生產車間現場, 取得了滿足效果。

2 係統的結構構成及工作道理

2.1 結構構成

網絡係統由控製中間和多個長途單元RTU(Remote Terminal Unite) 構成(圖1) 。控製中間由上位機和RS232/ 485 轉換器構成, 各長途單元是以ARM單片機為核心的電動裝配性能檢測係統(圖2) 。

2.2 工作道理

控製中間作為係統的數據終端設備DTE (Da2ta Terminal Equipment) , 負責實現對長途電動裝配性能檢測係統的檢測數據進行判別、存儲等。PC機通過485 通訊電纜與長途電動裝配性能檢測係統相連, 其傳輸速率為9 600 bps , 端口數據傳輸速率可根據係統需要設為1 200 bps~19 200 bps〔1〕。

各長途電動裝配性能檢測係統通過光電編碼器和AD 轉換器對現場設備的性能參數進行數據采集, 采用MAX1480 芯片與PC 機進行數據傳輸,並通過2 片CPLD 實現數據輸進和輸出開關量, 從而實現對現場設備的控製和參數丈量。電動裝配性能檢測係統還有複位、故障報警及芯片正常工作檢測等係統。<BR>&nbsp;&nbsp;&nbsp;&nbsp; 通訊係統以控製中間PC 機和長途單片機控製係統通過485 通訊電纜以同頻異步半雙工方式進行數據信息傳輸, PC 機通過串口發送令牌到長途單元, 長途單元收到本身的令牌後發送數據到PC機, PC 機收到數據後回送精確信息。從而實現控製中間對長途設備的控製和數據采集。

3 實時串行通訊程序設計

3.1 通訊協議

(1) 一楨數據由1 位起始位, 8 位數據位、1位校驗位、1 位停止位共11 位構成。

(2) 波特率為9 600 bps。電動裝配測試係統的單片機的串口選用UART0 進行數據的發送和接收, 為了得到精確的波特率, ARM 單片機采用振蕩頻率為111059 2 MHz 的晶振。PC 機串口波特率通過VB 通訊控件MSComm 的Setting 屬性設置, 為保證數據傳輸的精確性, 兩者的波特率必須一致。

(3) 係統采用異步通訊方式, 上位機通過令牌傳遞總線(token - passing bus) 方式與長途單元進行通訊〔2〕。PC 機發送的信息為固定4 個字節。第1 個字節和第2 個字節分別為起始標誌符和長途單元的具體地址號, 第3 個字節表示發送的是令牌還是命令, 第4 個字節為結束標誌符。

(4) 長途單元接收到令牌後, 對照令牌的地址號與本單元地址進行判定, 得知令牌是本單元的, 此時總線處於接收數據狀況 。此單元開始發送信息, 發送的信息共158 個字節。第1 個字節和第2 個字節分別表示起始標誌符和命令符, 第3 個字節表示數據個數, 第4 個到第157 個字節表示采集的測試數據, 第158 個字節表示結束標誌符。假如地址不符, 則將令牌轉發到下一單元〔3〕。其通訊方式如圖3 所示。

3.2 長途單片機控製係統的串行通訊程序設計

長途ARM 單片機采用中斷方式進行數據接收, 基於軟件ADS112 編程與上位機進行通訊, 上位機通訊子程序流程圖和下位機中斷子程序流程圖分別如圖4 和圖5 所示。

控製中間上位PC 機始終在循環發送令牌, 當長途單元接收到與本機地址相同的令牌時, 置接受數據標誌, 接收到本身的令牌後, 長途單元開始上傳數據到上位PC 機, 與此同時PC 機停止發送令牌並處於接收數據狀況, 等到接收數據完畢並檢驗數據合格後發送確認命令到此長途單元, 假如沒收到數據或數據分歧格發送錯誤標誌到此長途單元。假如收到的令牌與本機地址不同時, 程序返回中斷進口處, 繼續履行其它操縱。如許可保證長途單元把數據精確地發送到上位機PC 機。

3.3 上位PC 機串行通訊程序設計方法

上位機利用VB 610 進行編程, 用VB 610 開發串行通訊程序普遍采用兩種方法: 一種是利用Windows 的API 函數; 另一種是采用VB 的通訊控件MSComm。利用API 函數編寫串行通訊程序較為複雜, 需要調用很多繁瑣的API 函數, 而VB610 的MSComm 通訊控件提供了標準的事件處理函數、事件和方法, 用戶不必了解通訊過程中的底層操縱和API 函數〔4〕, 從而比較輕易、高效的實現了串口通訊。

控件提供了兩種功能完善的串口數據接收和發送功能: 一種是查詢法, 通過Com2mEvent 的值來輪詢(polling) 事件和通訊狀況,可以使用定時器和DO .Loop 程序來實現; 另一種是事件驅動法( Event - driven) , 利用MSComm 控件OnComm 事件來捕捉串口通訊錯誤或事件, 並在OnComm 事件中編寫程序進行相應的處理〔5〕。本軟件係統采用了定時器來發送令牌和接收長途單片機的回執信息, 使PC 機作出更快的反應。

軟件采用定時器Timer1 控件來實現令牌的循環發送。其中設置定時器響應一次的時間為10ms( Timer11Internal = 10) 。

3.4 下位機ARM2210 係列單片機串行通訊程序設計方法

下位機利用軟件ADS112 進行編程, 此軟件是專為ARM 單片機開發的一種軟件, 其說話類似於C 說話, 有很好的利用性。

4 結語

該係統利用在對長途設備的在線監測, 其通訊網絡部分運行平穩, 數據傳輸誤碼率低, 傳輸速度符合要求, 效率高, 操縱簡單, 組網方便, 滿足生產現場的數據檢測和控製要求。該係統可廣泛利用於高精度的產業測控和數據采集等領域中。

1頁

Copyright @ 2018-2020 河北AM8亚美钢管制造有限公司 版权所有冀 ICP备08107959号

 
QQ在线咨询
客服热线
098-44730623