糧庫(kù)全數(shù)字溫濕度監(jiān)控系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)_第1頁(yè)
糧庫(kù)全數(shù)字溫濕度監(jiān)控系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)_第2頁(yè)
糧庫(kù)全數(shù)字溫濕度監(jiān)控系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)_第3頁(yè)
糧庫(kù)全數(shù)字溫濕度監(jiān)控系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)_第4頁(yè)
糧庫(kù)全數(shù)字溫濕度監(jiān)控系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、糧庫(kù)全數(shù)字溫濕度監(jiān)控系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)The Development and Design of Full Digital Temperature and Hum idity Control of Grain Depot趙文敏 章亞康 陳良光 (杭州商學(xué)院計(jì)算機(jī)與信息工程系 , 杭州310035糧食倉(cāng)儲(chǔ)過(guò)程中 , 溫濕度的監(jiān)測(cè)與控制是確保糧 食品質(zhì)的主要措施。目前我國(guó)許多糧食倉(cāng)儲(chǔ)單位仍采 用測(cè)溫儀器與人工抄錄、 管理相結(jié)合的傳統(tǒng)方法 , 這不 僅效率低 , 而且往往由于判斷失誤和管理不力造成局 部或大范圍糧食霉變的現(xiàn)象時(shí)有發(fā)生。我們?yōu)楹贾莩菛|糧庫(kù)開(kāi)發(fā)的糧庫(kù)全數(shù)字溫濕度監(jiān) 控系統(tǒng) , 徹底擺脫了傳

2、統(tǒng)的人工抄錄方法 , 能實(shí)時(shí)檢測(cè) 糧倉(cāng)中的溫濕度 , 并根據(jù)所測(cè)的數(shù)據(jù)控制空調(diào)器、 除濕 機(jī)等外部設(shè)備的運(yùn)行 , 確保糧倉(cāng)內(nèi)合適的溫濕度環(huán)境。1 硬件結(jié)構(gòu)該系統(tǒng)由 1臺(tái) Pentium 微機(jī)作上位機(jī) , 采用主從方 式管理 7個(gè)中繼器和 91個(gè)下位機(jī) , 其具體結(jié)構(gòu)如圖 1 所示。圖 1 硬件結(jié)構(gòu)圖圖 1中 RS-232/422信號(hào)轉(zhuǎn)換器接在 PC 的 C OM 2口 , 主要完成微機(jī)與單片機(jī)之間數(shù)字信號(hào)的電平轉(zhuǎn)換 工作 , 以增強(qiáng)微機(jī)串行口的帶載能力。中斷器為每棟 倉(cāng)庫(kù)各設(shè)一個(gè) , 由電平轉(zhuǎn)換電路和單片機(jī)電路兩部分 組成 , 并且每個(gè)中斷器都設(shè)有一個(gè)不同的地址碼。中 斷器的主要作用 , 一是

3、對(duì)信號(hào)進(jìn)行整型、 驅(qū)動(dòng) , 保證信 號(hào)傳輸?shù)恼_ 性 ; 二是 作為其下設(shè)的 13個(gè)下位機(jī)與 PC 通信線路上的控制節(jié)點(diǎn) , 只有當(dāng) PC 與某個(gè)中繼器 通信正常后 , 該中繼器下的下位機(jī)才能與 PC 上位機(jī) 通信 , 否則此路不通 , 以避免通信線路上因各下位機(jī)響 應(yīng)信號(hào)發(fā)生競(jìng)爭(zhēng)而導(dǎo)致通信失敗。每個(gè)中斷器下設(shè) 13個(gè)也是由單片機(jī)組成的下位 機(jī) , 其中 13#下位機(jī)用于采集實(shí)時(shí)濕度數(shù)據(jù)及控制空 調(diào)器、 除濕機(jī)等外部設(shè)備 :1#至 12#下位機(jī)用于采集實(shí) 時(shí)溫度數(shù)據(jù) , 根據(jù)倉(cāng)庫(kù)中各貨位 (袋裝糧堆放成的一個(gè) 立方體稱為一個(gè)貨位 , 即糧垛 的不同大小 , 每個(gè)貨位 分別設(shè) 1至 2個(gè)下位機(jī)。

4、由于使用了數(shù)字式智能溫度傳感器 , 利用單片機(jī) 的一位 I/O 線 , 經(jīng)射極跟隨器電流放大后 , 就能實(shí)現(xiàn)下 位機(jī)與 15個(gè)溫度傳感器之間的主號(hào)線連接 , 并且直接 將被測(cè)溫度值轉(zhuǎn)換成數(shù)字信號(hào)輸 出 , 參數(shù)一 致性好。 此外 , 每個(gè)數(shù)字式智能溫度傳感器在出廠時(shí)都固化有 一個(gè)不同的 60位序列號(hào) , 下位機(jī)通過(guò)搜索其序列號(hào)就 能自動(dòng)識(shí)別每個(gè)溫度傳感器 , 確保每個(gè)檢測(cè)點(diǎn)與溫度 數(shù)據(jù)的一一對(duì)應(yīng)關(guān)系。每個(gè)貨位中的溫度傳感器分三個(gè)層次安置 , 根據(jù) 貨位的大小 , 有每層 4點(diǎn)、 5點(diǎn)、 8點(diǎn)三種情況。2 上位機(jī)監(jiān)控軟件設(shè)計(jì)2. 1 功能設(shè)計(jì)本系統(tǒng)的上位機(jī)監(jiān)控軟件用 Visual Basic 6

5、. 0開(kāi)發(fā) 完成 , 主要實(shí)現(xiàn)以下功能 :界面設(shè)計(jì) :在啟動(dòng)程序運(yùn)行時(shí) , 采用 Flash 動(dòng)態(tài)畫(huà)面 , 并配以聲響效果。串行通信 :完成上位機(jī)的通信配置 , 實(shí)現(xiàn)上位 機(jī)與中繼器、 下位機(jī)之間通信幀的傳送。! 數(shù)據(jù)計(jì)算 :將從下位機(jī)接收到的數(shù)據(jù)轉(zhuǎn)換為濕 度值和帶正負(fù)符號(hào)的溫度值 , 并完成每個(gè)貨位、 糧倉(cāng)的 平均溫濕度數(shù)據(jù)的計(jì)算。 數(shù)據(jù)顯示 :提供三維立體圖、 曲線走勢(shì)圖和表 格三種方式顯示。#數(shù)據(jù)存儲(chǔ) :對(duì)實(shí)時(shí)數(shù)據(jù) (包括最大值、 最小值、 平均值 按用戶要求存儲(chǔ)到數(shù)據(jù)庫(kù)的一張歷史數(shù)據(jù)表 中 ; 也可導(dǎo)出數(shù)據(jù)到文件 , 以文本方式保存到一個(gè)文本 自動(dòng)化儀表 %第 22卷第 6期 2001

6、年 6月文件中。&數(shù)據(jù)查詢 :允許用戶根據(jù)糧倉(cāng)號(hào)、 貨位號(hào)或狀 態(tài)情況對(duì)實(shí)時(shí)數(shù)據(jù)、 歷史數(shù)據(jù)進(jìn)行查詢或進(jìn)行走勢(shì)曲 線分析。 數(shù)據(jù)打印 :根據(jù)用戶要求 , 以表格方式打印實(shí) 時(shí)數(shù)據(jù)和歷史數(shù)據(jù) , 亦可打印走勢(shì)曲線圖。(異常報(bào)警 :當(dāng)實(shí)時(shí)溫濕度數(shù)據(jù)超越設(shè)定的上下 限溫濕度數(shù)值時(shí) , 報(bào)警鈴響。系統(tǒng)設(shè)置 :為保證用戶在任何情況下 , 都能良 好地運(yùn)行 , 允許用戶對(duì) 系統(tǒng)的測(cè)量時(shí)間間隔、 溫濕度 上下限、 存盤(pán)時(shí)間間隔、 登錄用戶名、 口令以及糧倉(cāng)堆 放模板 (即將糧倉(cāng)中每種可能堆放的方式作為一種模 板設(shè)置 , 這樣當(dāng)糧倉(cāng)中 貨位的堆放方式改變時(shí) , 用戶 可以根據(jù)新的堆放方式選擇合適的模板 等參數(shù)

7、進(jìn)行 設(shè)置。2. 2 關(guān)鍵技術(shù)2. 2. 1 串行通信Visual Basic 6. 0中 MSCOMM32通信控件 , 提供了 標(biāo)準(zhǔn)的事件處理函數(shù)和過(guò)程 , 并通過(guò)屬性的方法 , 設(shè)置 串行通信口參數(shù)。有關(guān)這方面的內(nèi)容在文獻(xiàn) 3中已 有詳細(xì)的論述 , 這里僅提供本系統(tǒng)根據(jù)通信協(xié)議所采 用的算法 :For z=To 71 , 中斷器地址為 41H 至 47H發(fā)送一個(gè)中繼器地址延時(shí) ; 接收反饋地址 ; 比較發(fā)送與接收地址 , 并處理For i=1T013, 下拉機(jī)地址為 01H 至 0DH發(fā)送一個(gè)下位機(jī)地址延時(shí) ; 接收反饋地址 ; 比較發(fā)送與接收地址 , 并處理發(fā)送上傳數(shù)據(jù)的命令接收溫濕度數(shù)

8、據(jù)If i=13Then將接收到的濕度數(shù)據(jù)存入一維數(shù)組Goto nett lEnd IfFor j=1To 15, 下位機(jī)采集溫度數(shù)據(jù)的探頭數(shù)為 15個(gè) 將接收到的數(shù)據(jù)轉(zhuǎn)換為溫度值 , 并進(jìn)行有關(guān)計(jì)算暫時(shí)存入數(shù)組、 數(shù)據(jù)庫(kù)Next jnteel:Next iNext z2. 2. 2 數(shù)據(jù)庫(kù)管理數(shù)據(jù)庫(kù)管理是整個(gè)軟件設(shè)計(jì)中的重要一環(huán) , 由于 本系統(tǒng)測(cè)溫點(diǎn)數(shù)較多 , 測(cè)量時(shí)間間隔較短 , 所以 存儲(chǔ) 量非常大。本系統(tǒng)采用 Access 數(shù)據(jù)庫(kù) , 微機(jī)將各下位 機(jī)上傳的溫濕度數(shù)據(jù)經(jīng)過(guò)符號(hào)處理、 轉(zhuǎn)換及計(jì)算后 , 先 放入 Access 數(shù)據(jù)庫(kù)的一張表中暫存 , 數(shù)據(jù)庫(kù)則以共享 的方式為所有對(duì)象共

9、用 , 可進(jìn)行各項(xiàng)實(shí)時(shí)數(shù)據(jù)和歷史 數(shù)據(jù)的管理 (見(jiàn)圖 2 。通過(guò) SQL 語(yǔ)言與 Visual Basic 語(yǔ)言結(jié)合編程 , 實(shí)現(xiàn) 對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的計(jì)算、 存儲(chǔ)、 刪除等功能 , 以下為其圖 2 數(shù)據(jù)管理功能模塊 典型語(yǔ)句 :Set dbsl=OpenDatabase( e:chen db data. mdb + , 定義數(shù)據(jù)庫(kù)變量 dbslSet rstl=dbsl. OpenRecordset( SELECT *FROM my tmp; + , 定義記錄集變量 rstldbsl. Execute DELE TE *FROM my table; +, 刪除 my table 表中的所有記錄(

10、下轉(zhuǎn)第 51頁(yè) 糧庫(kù)全數(shù)字溫濕度監(jiān)控系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì) 趙文敏 , 等 圖 3 主板軟件流程圖3. 2 面板 C PU 的軟件流程 面板 CPU 的流程如圖 4所示。3. 3 顯示方式的改變當(dāng)顯示數(shù)據(jù)的方式需要改變時(shí) , 主板上的程序不 變 , 而只需改變面板上 CP U 的程序即 可 , 這樣可靈活 地適合于各種應(yīng)用場(chǎng)合。圖 4 面板 CPU 軟件流程圖4 結(jié)論綜上所述 , 可以比較簡(jiǎn)單的硬件電路、 較少的連線和獨(dú)立的程序?qū)崿F(xiàn)雙 C PU 系統(tǒng) , 達(dá) 到所需要的要求 , 提高了系統(tǒng)的可靠性及工作效率。參考文獻(xiàn)1 曹巧緩 . 單片機(jī)原理及應(yīng)用 . 第 1版 . 北京 :電子工業(yè)出版社 , 19

11、97 收稿日期 :2000-08-30。作者楊麗君 , 女 , 1962年生 , 1984年畢業(yè)于錦州工學(xué)院 , 講師 。(上接 第 41頁(yè) d bsl. Execute INSERT INTO my toptmp values(5, SE +, . . + , 在 my toptmp 表中插入一記錄 d bsl. Close, 關(guān)閉數(shù)據(jù)庫(kù)此外 , 在查詢、 顯示功能的實(shí)現(xiàn)過(guò)程中 , 使用 VB6. 0中的新一代數(shù)據(jù)庫(kù)引擎 , , , ADO 及其對(duì)應(yīng)的數(shù)據(jù)綁定控件 Datagrid 非常方便。尤其是 ADO 的過(guò)濾器 (filter 技術(shù) , 得到了充分體現(xiàn)。例如查詢功能中的核心代碼 :nt

12、j= ( +c10+c11+ +t1+ + +c16+( +c12+c13+ +2+ + +Adodcl. Recordset. Filter=ntj , ntj 為字符串變量這是雙重組合查詢的代碼 , 其中 c10、 c12為用戶 在 ComboBox 控件中選擇的要查找的對(duì)象 , c11、 c13為 比較運(yùn)算符 (、 、 =、 = ; t1、 t2為輸入的數(shù) 據(jù) ; c16為邏輯運(yùn)算符 (and 、 or 。 Adodcl 為 ADO 控件。 2. 2. 3 系統(tǒng)設(shè)置在程序?qū)崿F(xiàn)過(guò)程中 , 通過(guò)全局變量的形式將設(shè)置 參數(shù)傳遞給系統(tǒng) , 再結(jié)合實(shí)時(shí)刷新和函數(shù)調(diào)用使新的 系統(tǒng)設(shè)置立即有效 , 并在系統(tǒng)結(jié)束運(yùn)行時(shí) , 調(diào)用函數(shù) cl file( 將系統(tǒng)設(shè) 置的參數(shù) 保存到系 統(tǒng)設(shè)置文 件 sys tem. zxm 中 , 而系統(tǒng)啟動(dòng)運(yùn)行時(shí) , 通過(guò)調(diào)用函數(shù) op file ( 讀取系統(tǒng)設(shè)置文件 system. zxm 中參數(shù)作為初始化數(shù) 據(jù) , 以保持系統(tǒng)設(shè)置的延續(xù)性。以下為 op file( 的部分代碼 :Open system. zxm +For Rand om As#1 , 打開(kāi)隨機(jī)文件 , 1#Get#1, 1, Msystem, 讀取隨機(jī)文件的數(shù)據(jù) 記錄至內(nèi)存 My Savetime=MSystem. Msa

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論