摘要:本文介紹了基于RS-485現場總線設計的數據采集系統,以STC89C52RC單片機為核心芯片,將傳感器模塊采集的信號通過TTL轉RS485模塊把信號傳遞到RS485集線器中,再通過串口模塊把數據傳輸到上位機中去,能夠利用C#編寫的上位機系統對多處場地的溫濕度、可燃氣體等信號進行采集和顯示,從而達到對不同場地的環境監測。
關鍵詞:單片機 傳感器 數據采集
中圖分類號:TP274.2 文獻標識碼:A 文章編號:1007-9416(2016)10-0151-02
引言
隨著科技的快速發展,日常生活中的瓜果蔬菜種植基本上不受季節的影響,溫室大棚為人們的提供了各種便利。為了更好的觀測溫室大棚里的瓜果蔬菜的成長,可以利用信息技術手段實時監測溫室大棚的生產條件。在此基礎上,基于現場總線的溫室多點監測系統應運而生,本文主要介紹了基于STC89C52RC單片機對多點位置下的溫濕度和氣體數據的采集、傳輸的設計與實現,改設計實用性比較強,性價比高,能夠廣泛的被應用到日常生活中去。
1 系統總體設計
本系統可以對現場多點數據進行采集,采集到的數據通過485總線遠程傳輸到數據匯總控制板,再通過串口將數據傳輸到上位機。本系統主要由以下幾個部分組成:數據采集板、RS485集線器、主控電路板、上位機組成。數據采集板采用的是STC89C52RC單片機作為主控制芯片,該單片機是多點數據采集的核心部分,而且抗干擾能力強,采集數據以后通過TTL轉485功能模塊把數據傳輸到上層主控模塊中去;主控模塊的顯示屏上通過按鍵選擇顯示多個數據采集板傳送過來的數據,同時通過串口把數據信息傳送到上位機系統中去,上位機用于系統聯網,同時監測下位機各個數據點采集的數據,從而實現了遠程對多點實時數據采集和監測。
系統框圖如下圖1所示。
2 系統硬件電路設計
整個系統的核心電路就是數據采集電路和數據匯總電路,兩塊板子采用相同的硬件電路。
本設計采用了STC89C52RC單片機作為主控制芯片,氣體檢測模塊采用了DHT11溫濕度傳感器采集各個點的溫濕度數據信號;溫濕度檢測模塊采用了MQ-9氣體傳感器采集各個點的氣體數據信號;按鍵模塊采用了四個開關鍵控制,便于用戶手動控制模塊;液晶模塊采用了LCD1602液晶顯示模塊來顯示所采集的數據信號;報警電路采用了蜂鳴器當報警設備,當監測到的數據信號超過所設定的閾值后將進行報警;電源模塊為設備運行提供電源;串口模塊采用TTL轉RS485模塊進行數據轉換和向下一個模塊傳送數據。
而各個數據采集點之間用NLK-C2000485集線器進行數據的傳輸,從而在主板的液晶顯示器上顯示,同時利用ISP和上位機進行串口數據傳輸,從而在上位機上顯示各個點的數據,實現了多個監測點與上位機之間的遠距離通信功能。
框圖如圖2所示。
3 系統軟件設計
本設計主要是能夠實現多點的溫濕度和可燃氣體濃度的實時監測,圖3是各監測支點的設計流程,模塊通電以后,系統進行初始化后進行溫濕度和可燃氣體濃度檢測,如果所測數值超出預設的閾值后將進行報警提示,如果數據沒有超出閾值就被傳送到液晶顯示模塊進行數據顯示。
4 上位機設計
上位機的設計采用C#語言編寫,主要實現數據的識別與提取、以及顯示、報警這4個功能。上位機軟件從從串口緩存中讀取一個字節的數據并強制轉換成8位無符號數據,并且進行數據校驗,若數據正確則將接收到的數據存入二維數組的指定位置,在系統正常運行之后,采用定時清除二維數據的方法,清除掉線節點的數據緩存,避免了數據顯示錯誤。關鍵的串口數據接收代碼如下:
private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
byte data;
for (byte i = 0; i < 8; i++)
{
//
data = (byte)serialPort1.ReadByte();
rxtemp[i] = data;
}
UInt16 rx4 = rxtemp[4];
rx4 = (byte)~rx4;
UInt16 rx5 = rxtemp[5];
rx5 = (byte)~rx5;
UInt16 rx6 = rxtemp[6];
rx6 = (byte)~rx6;
if ( rxtemp[0] > 0 && rxtemp[0] < 5 && rxtemp[0] == rx4 &&
rxtemp[1] == rx5 && rxtemp[2] == rx6 && rxtemp[7] == 0xff)
{
for (byte i = 0; i < 8; i++)
{
rxdat[rxtemp[0] - 1, i] = rxtemp[i];
}
}
}
5 運行調試
系統硬件電路和軟件電路設計成功以后進行聯合調試,通過現場總線RS485總線能夠實現遠程多點數據檢測和傳輸,能夠滿足實時檢測不同位置的溫濕度和可燃氣體濃度。
上位機程序經調試無誤,運行結果如圖4所示。
6 結語
該系統設計成熟以后,能夠實時監測各個點的溫濕度、可燃氣濃度變化等情況,從而可以廣泛的應用于日常生活中,從而提供便利,解放勞動力。
收稿日期:2016-09-28
作者簡介:王樹梅(1981—),女,江蘇宿遷人,實驗師,碩士,研究方向:電子信息工程類。