国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

智能溫室控制系統(tǒng)數(shù)據(jù)庫的建立與研究

2024-05-18 11:44:24楊光馬巍陳立蘭范志華牛云鵬楊碩苗錢義
農(nóng)業(yè)與技術(shù) 2024年9期
關(guān)鍵詞:數(shù)據(jù)源溫室數(shù)據(jù)庫

楊光馬巍陳立蘭范志華牛云鵬楊碩苗錢義

(1.吉林省農(nóng)業(yè)機械研究院,吉林 長春 130022;2.吉林省天安消防安全檢測有限公司,吉林 長春 130000;3.吉林工商學(xué)院,吉林 長春 130000)

引言

我國作為一個農(nóng)業(yè)生產(chǎn)力雄厚的國家,正處于數(shù)字化農(nóng)經(jīng)快速發(fā)展階段。通過采用傳感技術(shù)、無線網(wǎng)絡(luò)、云數(shù)據(jù)存儲、物聯(lián)網(wǎng)和人工智能等先進技術(shù)手段收集和分析數(shù)據(jù),能夠?qū)ΨN植領(lǐng)域包括糧食作物與經(jīng)濟作物在內(nèi)的生長狀態(tài)進行詳盡的跟蹤和搜集信息。監(jiān)測生物和環(huán)境數(shù)據(jù)后以此作為參考,為農(nóng)業(yè)生產(chǎn)的各個階段提供科學(xué)的建議和指導(dǎo)。數(shù)據(jù)管理與分析在當(dāng)前農(nóng)業(yè)經(jīng)濟體系下異常關(guān)鍵,以提供堅實的信息支持。我國已經(jīng)啟動了相關(guān)戰(zhàn)略和計劃,旨在2023年進一步推動并加速實現(xiàn)農(nóng)業(yè)產(chǎn)業(yè)的數(shù)字化改造。依照《面向2035年的農(nóng)業(yè)智能化發(fā)展戰(zhàn)略研究》的指引,我國將持續(xù)增強農(nóng)業(yè)智能技術(shù)的研究及其實踐應(yīng)用力度,以期于2035年前基本達成農(nóng)業(yè)全鏈條的數(shù)字化轉(zhuǎn)型,并為構(gòu)建智能化農(nóng)業(yè)體系奠定堅實的技術(shù)基礎(chǔ)。

中國農(nóng)業(yè)數(shù)字化的軟件及數(shù)據(jù)支撐結(jié)構(gòu)主要有感知與執(zhí)行層面以及運算層面,通過數(shù)據(jù)采集、軟件分析、數(shù)據(jù)儲存和處理等工具,形成數(shù)據(jù)平臺服務(wù),對自然環(huán)境、要素投入、市場流通等信息進行智能化的處理、分析以及應(yīng)用。農(nóng)業(yè)數(shù)據(jù)服務(wù)平臺通過給商家提供解決方案,通過構(gòu)建農(nóng)業(yè)用戶的種植數(shù)據(jù),讓商家為農(nóng)戶提供有針對性的科學(xué)種植方案和技術(shù)。在數(shù)據(jù)平臺服務(wù)方面,目前我國已經(jīng)形成多個規(guī)?;臑檗r(nóng)業(yè)種植提供服務(wù)的配套技術(shù)和產(chǎn)品。形成了多家數(shù)字服務(wù)平臺,但各大平臺的運營成本比較高,數(shù)據(jù)雖然是共享,但由于農(nóng)業(yè)經(jīng)濟受不同地域的環(huán)境影響很大,很多種植數(shù)據(jù)并沒有針對性。本項目介紹了一種中小規(guī)模的溫室聯(lián)動大棚數(shù)據(jù)庫的建立,通過在種植基地建立自己的數(shù)據(jù)庫,實現(xiàn)了為本地種植企業(yè)獨立建立數(shù)據(jù)庫,通過數(shù)據(jù)內(nèi)容及數(shù)據(jù)分析提供方案,同時也為企業(yè)的發(fā)展自身獨特農(nóng)業(yè)經(jīng)濟提供了可能性。

1 功能

數(shù)據(jù)庫是某組數(shù)據(jù)的集合,數(shù)據(jù)庫中有表,表由列組成。數(shù)據(jù)庫有動態(tài)數(shù)據(jù)庫和靜態(tài)數(shù)據(jù)庫,本文中的測控參數(shù)會變化,所以需要建立動態(tài)數(shù)據(jù)庫。

1.1 數(shù)據(jù)庫設(shè)置參數(shù)的存儲

根據(jù)聯(lián)動溫室大棚種植種類和數(shù)量,對溫室大棚的控制參數(shù)進行存儲與設(shè)定,包括溫室中作物種植種類,溫室溫濕度、光照參數(shù)、土壤溫濕度等的控制范圍,是否需要人工單獨控制還是采用智能控制,攝像頭的IP地址、數(shù)據(jù)采集時間間隔等信息。以上信息需要人工進行輸入后并存儲到數(shù)據(jù)庫中保存。

1.2 數(shù)據(jù)庫變量的更新

溫室大棚內(nèi)有許多控制元素,這些控制單元包括灌溉水泵、各個地塊的灌溉閥門、濕簾水泵、遮光簾的電機正反轉(zhuǎn)控制、保溫被蓋或不蓋的控制、補光系統(tǒng)的控制,由于以上設(shè)備均有自己的工作狀態(tài),在數(shù)據(jù)庫的運行中需要進行實時記錄和更改,同時要能記錄到最后一次動作的狀態(tài),這樣才能為下一次系統(tǒng)動作提供有效的執(zhí)行信息。這就要求數(shù)據(jù)庫必須有以上各個執(zhí)行機構(gòu)的動態(tài)變量。

1.3 數(shù)據(jù)庫測量數(shù)據(jù)的存儲

實現(xiàn)對溫室環(huán)境條件的記錄和存儲,參數(shù)包括:空氣溫濕度、光照、二氧化碳、大氣壓力、不同地塊的土壤溫濕度、室外的溫濕度、室外的方向和風(fēng)速。

1.4 數(shù)據(jù)庫測量數(shù)據(jù)的查詢

用戶可以通過輸入固定時間來查詢不同地塊作物的生長數(shù)據(jù),包括1.3中涉及到的測量數(shù)據(jù),監(jiān)測、分析各區(qū)域的環(huán)境數(shù)據(jù)。

2 數(shù)據(jù)庫的安裝

在筆記本、臺式機或者工控機中都可以安裝數(shù)據(jù)庫,其本質(zhì)是將測量控制系統(tǒng)工作的電腦作為服務(wù)器使用。

2.1 安裝MySQL

MySQL是一個應(yīng)用比較廣泛的小型關(guān)系數(shù)據(jù)庫管理系統(tǒng)[2],其規(guī)模比較小,功能不復(fù)雜,速度快、成本低,但是已經(jīng)能夠滿足多數(shù)用戶的需求,其可以在Windows平臺下進行安裝包的安裝,運行安裝目錄下的MySQL,如E:數(shù)據(jù)庫MySQL驅(qū)動MySQL-版本號。安裝10個左右程序,都要100%安裝,如遇到最后2個安裝到30%不動的情況,即為安裝失敗,需要卸載所有MySQL開頭的文件,重新安裝,安裝時提示設(shè)定賬戶和密碼。安裝結(jié)束,檢查電腦管理界面下的“服務(wù)”選項,若發(fā)現(xiàn)MySQL57服務(wù)已激活便無需擔(dān)心;若服務(wù)尚未運行,需打開“運行”窗口,敲入“cmd”以調(diào)出命令提示界面,輸入“net start mysql”即可啟動服務(wù)。注意,如果在安裝過程中對數(shù)據(jù)庫的名稱進行了修改,那么啟動服務(wù)的命令中的“mysql”應(yīng)替換為相應(yīng)的數(shù)據(jù)庫新名稱。

2.2 安裝MySQL數(shù)據(jù)庫的ODBC驅(qū)動程序(ODBC數(shù)據(jù)源的建立)

應(yīng)以管理員身份安裝運行,如,The myodbc-installer executable is located within the bin directory at the following path:E:MySQLdriveMySQL-connector-odbc-win32MySQL-connector-odbc-noinstall-5.3.7-win32.exe。這里需要注意安裝驅(qū)動程序的位數(shù)應(yīng)該與Windows系統(tǒng)位數(shù)一致。

實現(xiàn)數(shù)據(jù)庫連接需先設(shè)定DSN(DataSource Name數(shù)據(jù)源名稱),操作流程:打開“開始”菜單,選擇“設(shè)置”,進入“控制面板”,尋找“數(shù)據(jù)源”項。處于Windows系統(tǒng)的控制面板中,可找到ODBC數(shù)據(jù)源管理器,點擊進入“ODBC數(shù)據(jù)源”,這里展示了3類DSN:用戶DSN、系統(tǒng)DSN、文件DSN。本項目使用的是基于MySQL搭建的數(shù)據(jù)庫,因此在“用戶DSN”頁面中點擊“添加”按鈕,會跳出一個“創(chuàng)建數(shù)據(jù)源”的窗口。在此步驟中,要選取已部署的MySQL ODBC 5.3 ANSI驅(qū)動。選擇“MySQL ODBC 5.3.7 驅(qū)動程序”,在新彈出的界面中,請于登錄分頁鍵入數(shù)據(jù)源詳情;在數(shù)據(jù)源名稱一項中錄入“Data Source Name”;若需要,可在說明欄位填寫DiscrIPtion;數(shù)據(jù)源所在服務(wù)器的IP地址應(yīng)記錄在指定位置;而數(shù)據(jù)庫登錄用戶名需填寫在用戶名一欄;相應(yīng)用戶的登錄密碼則輸入密碼字段;而數(shù)據(jù)庫類型欄目則要明確選擇要連接的數(shù)據(jù)庫系統(tǒng)。設(shè)定完畢后,點擊“測試”以驗配置無誤,如測試通過顯示配置成功,點擊“確定”按鈕即可返回至用戶DSN管理界面,如圖1所示。

圖1 數(shù)據(jù)庫安裝測試成功

2.3 安裝Navicat for MySQL

Navicat是一款流行的多功能數(shù)據(jù)庫管理工具軟件。其支持多種數(shù)據(jù)庫,包括MySQL、Oracle、PostgreSQL和SQLite等。Navicat可以執(zhí)行許多不同的操作,如執(zhí)行查詢語句、設(shè)計和管理數(shù)據(jù)庫表、導(dǎo)入和導(dǎo)出數(shù)據(jù)、執(zhí)行備份和恢復(fù)等任務(wù)。該軟件可以幫助用戶更輕松地管理各種數(shù)據(jù)庫。

安裝后的設(shè)置,安裝完成后點擊“連接”,選擇數(shù)據(jù)庫的名字和IP地址、端口、用戶名。輸入初始密碼,因為本項目需要本機作服務(wù)器,所以本機IP為localhost,如果想用外網(wǎng)IP,則可以輸入公網(wǎng)IP,點擊“連接測試”,查看是否成功。

在連接中新建數(shù)據(jù)庫命名為jlau,在jlau上點擊右鍵,字符集選utf8—UTF-8 Unicode,排序規(guī)則選utf8z-genersl-ci。在jlau表里點右鍵“運行SQL文件”,把之前建立好的數(shù)據(jù)庫jlau.sql轉(zhuǎn)儲并導(dǎo)入進來。導(dǎo)入成功后的信息界面如圖2所示。

圖2 變量參數(shù)表

圖3 數(shù)據(jù)庫的調(diào)取程序

圖4 數(shù)據(jù)庫訪問程序

圖5 數(shù)據(jù)查詢結(jié)果

表格globalpara是全局變量,該表格中保存了以下信息。設(shè)置參數(shù)信息:室溫上下限、采集數(shù)據(jù)間隔、攝像頭IP、數(shù)據(jù)采集卡的串口號、每個地塊的作物名稱。溫室執(zhí)行機構(gòu)開關(guān)量工作狀態(tài)信息:噴灌泵、滴灌泵、濕簾泵、風(fēng)機、小遮陽1、小遮陽2、保溫被。實時測量值:室外風(fēng)速、室外風(fēng)向、室內(nèi)溫度、室外溫度、室內(nèi)濕度、室外濕度、室內(nèi)光照、室外光照、室內(nèi)空氣濕度、室外空氣濕度、二氧化碳、大氣壓力。表格globarecord按照設(shè)定好的數(shù)據(jù)采集間隔定期保存了采集溫室中實時測量值的保存數(shù)據(jù)。表格land和para中有代碼和名字的對應(yīng)關(guān)系,表格landpara中記錄各個地塊的實際設(shè)定值,表格landrecord記錄各個地塊的環(huán)境測量值。

3 用LabVIEW軟件開發(fā)數(shù)據(jù)庫

通過MySQL建立一個本機作為服務(wù)器的鏈接。實現(xiàn)以下功能:參數(shù)設(shè)置,根據(jù)溫室大棚中種植作物的環(huán)境要求設(shè)置各項測量控制環(huán)境指標(biāo)要求及參數(shù);數(shù)據(jù)采集,可以實時采集數(shù)據(jù)信息;數(shù)據(jù)庫建立;數(shù)據(jù)存儲與分析,可以將數(shù)據(jù)進行存儲,并進行調(diào)用;控制方式,計算機自動控制與人工控制2種方式自由選擇。

3.1 功能介紹

多數(shù)先進的編程語言都支持執(zhí)行數(shù)據(jù)庫操作,并提供必要的輔助功能。這一能力主要源自操作系統(tǒng)中的數(shù)據(jù)庫驅(qū)動程序,其克服了與數(shù)據(jù)庫底層通信的復(fù)雜性。無論哪種高級編程語言,其實質(zhì)是利用ODBC、DAO或ADO等技術(shù),通過API接口來進行數(shù)據(jù)庫操作的。以LabVIEW編程平臺為例,其通過采用ADO技術(shù)并對其接口封裝,以簡化了數(shù)據(jù)庫的訪問過程。

ActiveX數(shù)據(jù)對象(ADO)是微軟基于OLE DB技術(shù)打造的一套高級數(shù)據(jù)訪問應(yīng)用程序接口(API),旨在確保數(shù)據(jù)訪問層能夠兼顧伸展性。ADO作為一套程序編制架構(gòu),其內(nèi)包涉及了多個構(gòu)件,包含連接(Connection)、命令(Command)、參數(shù)(Parameter)、字段(Field)、記錄集(Recordset)、異常(Error)、屬性(Property)、活動(Event)以及集合(Collection)等。在眾多構(gòu)件中,以連接(Connection)、命令(Command)、記錄集(Recordset)為3大主要組成部分,參數(shù)(Parameters)、字段(Fields)、異常(Errors)、屬性(Properties)組建了4個主要的對象集。ADO的操作過程主要涉及建立數(shù)據(jù)源鏈接、設(shè)定訪問模式、下達命令、結(jié)果保存到內(nèi)存緩存及更新數(shù)據(jù)庫資料多個環(huán)節(jié)。ADO的使用特點在于其簡易性、高效率以及對內(nèi)存和硬盤資源占用較少等利益。

在LabVIEW中操縱數(shù)據(jù)庫需遵循流程:建立數(shù)據(jù)庫聯(lián)接,該流程起始于利用ADO Connection Create.vi創(chuàng)建Connection對象,繼而透過ADO Connection Open.vi完成對數(shù)據(jù)庫的接入,ADO Connection Open.vi里的ConnectionString參數(shù)指明目標(biāo)數(shù)據(jù)庫,此參數(shù)依賴于用戶界面中文本框的輸入而定;撰寫及實施SQL查詢,這涉及到用戶界面的表格輸入字段指定相關(guān)表,同時在姓名和年齡的輸入框內(nèi)填寫相應(yīng)的列信息,在程序的結(jié)構(gòu)圖區(qū),利用Format Into String拼接SQL查詢指令,并通過連線投遞至ADO Connection Execute.vi執(zhí)行,用戶還能在界面的Command Text展示區(qū)查閱生成的查詢語句;終止與數(shù)據(jù)庫的連接,在這一階段,需使用ADO Connection Close.vi關(guān)掉Connection對象,然后通過ADO Connection Destroy.vi徹底刪除該對象。

3.2 實例講解

3.2.1 建立全局變量

需要建立全局變量,這些全局變量需要在整個程序中被調(diào)用并進行賦值,數(shù)據(jù)的存儲需要將全局變量組成1個新的數(shù)組,再將數(shù)組信息依次寫入數(shù)據(jù)庫。

3.2.2 數(shù)據(jù)的調(diào)取

程序每次啟動運行時需要將數(shù)據(jù)庫中設(shè)定好的參數(shù)調(diào)出并存入全局變量,這樣才能得到溫室大棚設(shè)備狀態(tài)的信息,由于數(shù)據(jù)庫中的信息是以字符串的形式體現(xiàn),需要對提取的信息進行計算,將某些帶有數(shù)字信息的字符串轉(zhuǎn)換成數(shù)值類型。

3.2.3 數(shù)據(jù)庫的訪問

設(shè)置服務(wù)器的驅(qū)動,服務(wù)器的IP,Driver=MySQL ODBC 5.3 ANSI Driver;server=222.168.61.190;需要訪問的表格名稱DATABASE=jlau;訪問的賬號UID=jlau7234;密碼PWD=qwer1234。具體操作內(nèi)容為“當(dāng)代碼penguanbeng”啟動時設(shè)置全局變量“globalpara”為“1”,(update globalpara set value=‘1’where code=‘penguanbeng’)這樣就可以更改全局變量的值。

數(shù)據(jù)查詢的前面板設(shè)計了輸入控件,包括起始時間和停止時間,查詢的地塊對象,可實現(xiàn)數(shù)據(jù)的查詢、保存和退出3個功能。查詢的數(shù)據(jù)會在屏幕窗口進行顯示,同時可以將查詢的數(shù)據(jù)進行保存。

數(shù)據(jù)查詢后臺程序被打包成查詢底層子VI。啟動服務(wù)端的執(zhí)行代碼示例:“連接器=MySQL ODBC 5.3 ANSI 驅(qū)動程序;服務(wù)器=當(dāng)前主機地址;數(shù)據(jù)庫名=jlau;用戶名=jlau7234;密碼=Aa!‘123123’”。執(zhí)行地塊選擇、參數(shù)和查詢時間命令如下:“select time from landrecord where landcode=‘land1’and paracode=‘dishi1’and time>=‘起始時間’and time<=‘停止時間’”。執(zhí)行地塊選擇和種植品種命令如下:“select value from landpara where paracode=‘pinzhong’and landcode=‘ land8’”。其他查詢的指令都是通過數(shù)據(jù)串命令的集合形成。上述命令使用了select語句,對數(shù)據(jù)進行了檢索,檢索需要提供檢索條件[3],從上述命令中可見相關(guān)條件的選擇。

查詢后數(shù)據(jù)形成1維數(shù)組,1維數(shù)組再組成2維數(shù)組顯示在程序前面板。

4 LabVIEW數(shù)據(jù)庫TDMS文件讀寫

4.1 相關(guān)概念

TDMS格式檔案:由NI企業(yè)開發(fā)的TDMS格式為一種數(shù)據(jù)管理檔案規(guī)范,該規(guī)范采用二進制形式記錄信息,因體積輕巧、處理速度迅捷而能有效應(yīng)對即時數(shù)據(jù)記錄的需求。

生成TDMS文件同時,也會產(chǎn)生與之相匹配的tdms_index文件,通過此索引文件能夠提高數(shù)據(jù)檢索速率。如需節(jié)省內(nèi)存空間,亦可選擇不利用tdms_index文件。

4.2 LabVIEW中的TDMS模塊

4.2.1 TDMS打開

打開用于讀寫操作的.tdms格式的文檔,子級虛擬儀器同樣適用于生成新檔案或更新舊檔案。使用TDMS關(guān)閉函數(shù)可關(guān)閉文件的引用。

4.2.2 TDMS載入

按照輸入接口所需的數(shù)據(jù)類型格式,載入特定的.tdms文件并返回其數(shù)據(jù)內(nèi)容。如數(shù)據(jù)包含縮放信息,VI可自動換算數(shù)據(jù)。匯總輸入與位移參數(shù)作用于提取特定的數(shù)據(jù)片段。

4.2.3 TDMS關(guān)閉

關(guān)閉用TDMS打開函數(shù)打開的.tdms文件。

5 結(jié)束語

現(xiàn)在已經(jīng)進入了AI的時代,而大數(shù)據(jù)已經(jīng)成為了各行各業(yè)數(shù)字化發(fā)展的基石,在農(nóng)業(yè)生產(chǎn)方面更是離不開數(shù)字化信息的支持,農(nóng)業(yè)生產(chǎn)需要科學(xué)化,農(nóng)業(yè)生產(chǎn)涉及到環(huán)境條件的限制,面臨的不確定因素比工業(yè)化更多,更難控制,再加上農(nóng)作物種植科學(xué)的要求,生物技術(shù)的要求,就更加復(fù)雜,種植數(shù)據(jù)的信息需要采集,統(tǒng)計才能被科學(xué)分析和利用。本項目僅在數(shù)據(jù)采集與存儲調(diào)用方面進行了粗淺的研究,目的在于提供一種精準(zhǔn)的可定制的數(shù)據(jù)采集系統(tǒng),涉及到小型數(shù)據(jù)庫服務(wù)器的設(shè)立及采集數(shù)據(jù)的存儲和調(diào)用,在數(shù)據(jù)共享的時代,數(shù)據(jù)需要積累和分析。本文以溫室種植為載體闡明了數(shù)據(jù)庫的建立與操作,該方案也可以用于畜牧業(yè)、林業(yè)等多個行業(yè)生產(chǎn)的數(shù)據(jù)庫建立。

猜你喜歡
數(shù)據(jù)源溫室數(shù)據(jù)庫
現(xiàn)代溫室羊肚菌栽培技術(shù)
蒼松溫室 蒼松灌溉
蒼松溫室 蒼松灌溉
可以避免一個溫室化的地球嗎?
英語文摘(2019年2期)2019-03-30 01:48:28
Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
基于不同網(wǎng)絡(luò)數(shù)據(jù)源的期刊評價研究
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
巢湖市| 张北县| 沭阳县| 东方市| 云阳县| 长宁区| 博罗县| 格尔木市| 邵东县| 平定县| 台前县| 竹北市| 张家川| 洮南市| 林口县| 虹口区| 故城县| 保亭| 西宁市| 拉孜县| 乐至县| 马关县| 新野县| 象山县| 张家港市| 浮山县| 达日县| 宝鸡市| 湘潭市| 塘沽区| 上杭县| 加查县| 海安县| 瑞丽市| 锡林浩特市| 太原市| 龙口市| 淅川县| 泗阳县| 逊克县| 清徐县|