段瑞珍DUAN Rui-zhen;王仲文WANG Zhong-wen;韓碩HAN Shuo
(哈爾濱理工大學榮成學院,威海 264300)
(Harbin University of Science and Technology Rongcheng College,Weihai 264300,China)
大型自動化氣象站設備的價格普遍較高,不利于此類產(chǎn)品的普及和使用[1]。對于校園、船舶、機場等用戶,可以采用電子式氣象站來滿足獲取氣象數(shù)據(jù)的需求,同時也可有效地降低相關成本[2]。本文提出了一種基于STC89C52RC單片機的小型電子氣象站的設計方案,在滿足監(jiān)測要求的同時,并對數(shù)據(jù)進行顯示和記錄,以便相關人員查閱、參考和分析。
圖1 整體功能與設計示意圖
電子氣象站的整體功能與設計示意圖如圖1 所示。
電子氣象站的硬件部分主要在于設計以STC89C52RC單片機為中心的各個接口電路,包括單片機與溫濕度傳感器、風速傳感器、風向傳感功能模塊、通訊模塊等。軟件部分設計分為兩部分:下位機程序和上位機軟件。下位機程序要完成對各個傳感器或傳感功能模塊的查詢,將信息顯示在液晶屏上,并通過串口發(fā)送給上位機;上位機則要完成對數(shù)據(jù)的接收,在軟件界面內(nèi)顯示,同時完成數(shù)據(jù)的保存記錄以備查詢。
2.1 硬件的選型 單片機選擇STC89C52,采用Intel80C31 內(nèi)核,具有高性能、低功耗的特點[3]。在溫濕度傳感器方面,選用了集成化溫濕度傳感器SHT10,具有數(shù)字式輸出,免調(diào)試,免外圍電路,低功耗、高可靠性及全互換的特點。采用JL-FS2 三杯式風速傳感器用來測量當前環(huán)境中的風速。A/D 轉(zhuǎn)換功能模塊選擇了8 位CMOS 型逐次比較式A/D 轉(zhuǎn)換器ADC0804,具有三態(tài)鎖存輸出功能,可以在100~1460KHz 的頻率下進行工作。
2.2 下位機硬件設計 下位機的硬件設計以STC89C52RC 為中心,圍繞單片機搭建外圍電路。考慮到單片機的I/O 口數(shù)量有限,結合風速信號的特點,在8 路光電門和單片機之間增加了一個8 線-3 線編碼器74HC148 以達到節(jié)省單片機I/O 口的目的。
2.3 下位機與上位機間的通信 由于51 單片機串行口和PC 機USB 接口所使用的電平標準并不相同,故在單片機串行口和PC 機USB 接口之間使用了一個PL2303 芯片,以完成TTL 到USB 之間的轉(zhuǎn)換,使單片機和PC 機之間的串口通訊可以順利進行[4]。
單片機串口每次向上位機發(fā)送7 個字節(jié)的數(shù)據(jù),其報文格式為“終端號”“溫度值”“濕度值”“風速值”“風向”“#”。其中和“#”分別作為起止符,分別表示一次發(fā)送的開始和結束;“終端號”為本次發(fā)送數(shù)據(jù)的終端編號,是在向單片機中燒寫程序時固定的值,用于在同一區(qū)域內(nèi)多個終端節(jié)點組網(wǎng)檢測的情況下區(qū)別不同節(jié)點[5]。
3.1 下位機軟件設計 在接通設備電源后,單片機首先依次對各傳感器或功能模塊初始化,然后依次循環(huán)從各傳感器或功能模塊讀取數(shù)據(jù)。從I2C 總線獲取溫濕度傳感器數(shù)據(jù),進行數(shù)值轉(zhuǎn)換和非線性補償計算,之后再依次從ADC0804 所連接的端口和光電門連接的端口讀取風速、風向數(shù)據(jù),再執(zhí)行相應的計算或判斷。以上四種數(shù)據(jù),每計算或判斷出一個之后,除了保存到相應變量之外,還將數(shù)據(jù)刷新到LCD1602 液晶顯示屏上,之后再執(zhí)行讀取下一項數(shù)據(jù)的程序。
由于通常情況下,氣象信息不要求實時監(jiān)測,所以在程序設計上使用了單片機的內(nèi)部定時器。設置定時時間15 分鐘。當定時器計時達到15 分鐘后,主程序打開單片機串口,將最近一次獲取的各種數(shù)據(jù)發(fā)送到PC 機。
3.2 上位機軟件設計 上位機軟件的主要目的是為了能進行較遠距離的數(shù)據(jù)監(jiān)測查看,方便在無人值守情況下的數(shù)據(jù)記錄。其功能主要有以下幾點:①區(qū)分顯示從不同編號的終端發(fā)送來的數(shù)據(jù);②保存每次發(fā)送來的數(shù)據(jù);③查看歷史數(shù)據(jù)。軟件使用C#語言編寫,在人工設置好串口號后即可打開串口,軟件進入工作狀態(tài)。
針對市面上氣象站設備價格較高和用戶需求的矛盾,提出了一種小型電子氣象站的設計,實現(xiàn)了對溫度、濕度、風速、風向等幾項基本氣象數(shù)據(jù)的監(jiān)測,主要適用于機場、船舶、工礦、廠區(qū)、校園等小范圍地區(qū),允許分布在同一區(qū)域內(nèi)的多個終端節(jié)點可組成網(wǎng)絡,測得的數(shù)據(jù)對于安全生產(chǎn)、教育教學等具有一定的參考價值。
[1]譚鑒榮.智能地面氣象監(jiān)測儀的研究與實現(xiàn)[D].北京:北京郵電大學,2010.
[2]陳俊英.小型電子氣象站設計[J].自動化與儀器儀表,2012(3):26-27.
[3]張興輝,陳守滿.基于STC89C52RC 單片機的無線呼叫系統(tǒng)設計[J].現(xiàn)代電子技術,2011,34(13):186-188.
[4]文治洪,胡文東,李曉京,等.基于PL2303 的USB 接口設計[J].電子設計工程,2010(01):32-34.
[5]孫奇,施云波,修德斌等.基于無線傳感器網(wǎng)絡的氣象應急監(jiān)測系統(tǒng)研究[J].黑龍江大學自然科學學報,2013(1):125-128.