基于89C2051單片機的熱表通訊模塊的開發
1 引言
集中供熱方式的普及以及計量供熱的實施是建筑節能的有效手段,但需要通過供熱系統運行管理的自動化來實現。為了研究熱網的控制調節方法,建立了熱網模擬實驗平臺,并且配置了自動監測控制系統。在設備選型時,采用了丹麥Kamstrup 熱量表作為實驗管網中各主要管段輸送熱量及實驗系統熱量的測量采集裝置,但該熱表配備的數據通訊接口模塊只能通過專用外接插口與計算機或相應的數據終端進行一對一的RS - 232 串行通訊,難以滿足現場的通訊要求。
2 通訊模塊的核心器件
在系統中,單片機一般稱為下位機,通常用來完成數據的采集和上傳,由PC 機、網絡設備、數據庫服務器組成的后臺應用部分則統稱為上位機,對下位機的上傳數據進行分析并處理。系統充分發揮了單片機在實時數據采集和微機對圖形處理、顯示以及數據庫管理上的優勢,使得單片機的應用不局限于自動監測或控制,而形成了向以網絡為核心的分布式多點系統發展。在實驗臺監測控制系統中,選用單片機同工控機配合建立了如圖1 所示的通訊網絡,實現對熱表采集數據的讀取。
圖1 工控機、熱表通訊網絡
RS - 485 通訊標準針對RS - 232 存在的通訊距離近、抗干擾性能差等缺陷在提高傳輸速率和距離、抗干擾特性上都做了很大改進。所以考慮到通訊的可靠性,為工控機選配了RS - 485 的串口卡建立通訊。
單片機數字信號遵循CMOS 電平協議,傳輸距離短,達不到分布式控制系統傳輸距離的要求,需要電平轉換芯片構成接口電路與上位機連接。同時,單片機與熱表連接時也要通過相應的接口電路達到電平的匹配。
另外,單片機是工控機與熱表進行數據交換的通訊樞紐,擔負著同時與工控機和熱表進行串行通訊的責任,因此需要兩個串行通訊端口。有3 種方法供選擇:
- 采用多串口的單片機;
- 采用通用異步串口擴展芯片;
- 采用普通I/ O 端口模擬實現串行通信。
第3 種方法最簡單經濟,并且可以實現高速率通信。另外,考慮到對硬件資源的充分利用,選用ATMEL 公司生產的89C2051 單片機進行開發。
3 通信模塊的開發
3.1 硬件接口
理論上,利用軟件的方法可使普通I/ O 口擴展成的串行口與標準的串行口具有同樣的功能。但是,根據實際情況,單片機自帶的串行口容易通過專用的電平轉換芯片實現RS - 485 電平與上位機連接;熱表數據通訊接口對發送和接收數據有不同的波特率要求,在模擬串口的程序中只要作相應的延時處理,就能滿足。因此,用標準串口通過電平轉換連接上位機(見圖2) ,用普通I/ O 口模擬的串口經相應的接口電路與熱表相連(見圖3) 。
圖2 RS - 485 電平轉換
圖2 中單片機的標準串口通過75176 芯片轉換為RS - 485 電平,75176 為8 個管腳,DIP 封裝。RO 為數據接收端;RE 為數據接收允許端,低電平有效;DI 為數據發送端;DE 為數據發送允許端,高電平有效;DT+ 、DT - 腳為電流環回路端。圖2 中把RE、DE 腳連結在一起,當P3. 7 腳為高電平時,允許數據發送,當P3. 7 為低電平時,允許數據接收。R 為電路匹配電阻,可增強系統抗差模干擾的能力。
圖3 單片機與熱表接口電路
圖3 中虛線框內為熱表本身的數據通訊接口電路,熱表通過該接口連接專用的外接插頭可以同計算機或相應的數據終端進行RS - 232 通訊。利用示波器檢測熱表在與計算機一對一的通訊過程中收發端的電平信號特征,采用分立元器件搭建了接口電路,使之與單片機端口達到電平的匹配。在單片機同熱表的通訊過程中,為保證通訊的可靠且能保證單片機及時地接收熱表傳來的數據,采用中斷的接收方式,P3. 2 為中斷觸發端,所以選用該端口作為模擬串口的接收端,選用了P3. 4 作為模擬串口的發送端。
評論