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

?

母豬飼喂控制系統(tǒng)的研究

2018-07-10 09:25:54程怡安王忠慶程怡垣趙祺婷
電腦與電信 2018年4期
關(guān)鍵詞:機(jī)系統(tǒng)流程圖上位

程怡安 王忠慶 程怡垣 沈 喆 趙祺婷

(1.中北大學(xué)信息商務(wù)學(xué)院,山西 晉中 030600;2.中北大學(xué)計(jì)算機(jī)與控制工程學(xué)院,山西 太原 030051)

1 引言

中國(guó)是14億人口的大國(guó),隨著人們生活水平的不斷提高,人們對(duì)美食的追求也越來(lái)越高,作為美食中不可或缺的豬肉也越來(lái)越受人們的喜愛(ài);作為世界人口大國(guó),我國(guó)也是世界上最大的豬肉生產(chǎn)和消費(fèi)大國(guó)?,F(xiàn)在隨著中國(guó)產(chǎn)業(yè)化的不斷集中,大量的人才與資金投入到規(guī)?;B(yǎng)豬業(yè)的發(fā)展計(jì)劃中,中國(guó)養(yǎng)豬業(yè)的整體技術(shù)水平在不斷提高,養(yǎng)豬業(yè)的生產(chǎn)力也得到很大的發(fā)展。

由于規(guī)?;B(yǎng)豬所消耗的資源比較大,而母豬智能化控制系統(tǒng)從自動(dòng)上料到自動(dòng)飼喂,以及到母豬數(shù)據(jù)的采集與統(tǒng)計(jì),都是由計(jì)算機(jī)來(lái)處理,相比之前的人力勞動(dòng),不僅減少了統(tǒng)計(jì)數(shù)據(jù)的誤差,而且還節(jié)省了大量的人力物力,同時(shí)也節(jié)約了大量的環(huán)境資源,大大減少了環(huán)境的負(fù)擔(dān)[1]。

綜上所述,母豬飼喂控制系統(tǒng)的應(yīng)用必然會(huì)促進(jìn)中國(guó)養(yǎng)豬業(yè)生產(chǎn)力的飛速發(fā)展,進(jìn)而給中國(guó)養(yǎng)豬農(nóng)戶(hù)帶來(lái)巨大的經(jīng)濟(jì)效益。

2 系統(tǒng)的總體設(shè)計(jì)

母豬飼喂控制系統(tǒng)主要由上位機(jī)系統(tǒng)與下位機(jī)系統(tǒng)組成。上位機(jī)系統(tǒng)是由應(yīng)用程序與數(shù)據(jù)庫(kù)組成。應(yīng)用程序用于實(shí)現(xiàn)人機(jī)對(duì)話(huà)、自動(dòng)飼喂、數(shù)據(jù)存儲(chǔ)以及處理、母豬異常報(bào)警等功能;數(shù)據(jù)庫(kù)是用來(lái)存儲(chǔ)數(shù)據(jù),方便管理人員對(duì)數(shù)據(jù)進(jìn)行查詢(xún)與備份。下位機(jī)系統(tǒng)由RFID模塊、ZigBee無(wú)線通信模塊、控制模塊等組成,實(shí)現(xiàn)母豬耳標(biāo)的自動(dòng)識(shí)別、門(mén)控開(kāi)關(guān)的控制、自動(dòng)下料的控制等[2]。

圖1 系統(tǒng)模塊的功能圖

3 系統(tǒng)的硬件設(shè)計(jì)

圖2為硬件系統(tǒng)的功能框圖。

圖2 硬件系統(tǒng)的功能框圖

4 系統(tǒng)下位機(jī)的設(shè)計(jì)與實(shí)現(xiàn)

4.1 門(mén)控開(kāi)關(guān)的設(shè)計(jì)

當(dāng)母豬經(jīng)過(guò)門(mén)口時(shí)經(jīng)常會(huì)發(fā)生拱門(mén)事件,系統(tǒng)根據(jù)讀取到的母豬信息來(lái)判斷該豬是否應(yīng)該進(jìn)食。如果應(yīng)該進(jìn)食,ARM9控制直流電機(jī)正轉(zhuǎn),打開(kāi)門(mén)鎖,母豬進(jìn)入飼喂區(qū)域,當(dāng)門(mén)達(dá)到開(kāi)門(mén)限位后,自動(dòng)關(guān)門(mén),達(dá)到關(guān)門(mén)限位后,電機(jī)反轉(zhuǎn)鎖門(mén);如果母豬不應(yīng)該進(jìn)食,則不做任何動(dòng)作,直到下一次讀取母豬信息開(kāi)始[3]。

圖3 門(mén)控開(kāi)關(guān)的控制流程圖

4.2 飼喂電機(jī)控制的設(shè)計(jì)

飼喂電機(jī)的控制是本系統(tǒng)中非常重要的一部分,直接關(guān)系到母豬的飼喂及營(yíng)養(yǎng)問(wèn)題。飼喂器中的存料是根據(jù)母豬的生理及營(yíng)養(yǎng)狀況,存有A料和B料兩種營(yíng)養(yǎng)飼料。當(dāng)閱讀器將讀取到母豬電子耳標(biāo)的電子編碼與服務(wù)器數(shù)據(jù)庫(kù)所存儲(chǔ)該母豬的生理指標(biāo)進(jìn)行比對(duì)提取,通過(guò)系統(tǒng)設(shè)定的公式計(jì)算出下料的多少、進(jìn)食的時(shí)間、A料還是B料等進(jìn)食的具體參數(shù)來(lái)做出判斷。然后通過(guò)ARM9主控板對(duì)飼喂器下料模塊中的步進(jìn)電機(jī)進(jìn)行控制。若下A料,則控制步進(jìn)電機(jī)A轉(zhuǎn)動(dòng),若為B料,則控制電機(jī)B轉(zhuǎn)動(dòng)[4]。下料的數(shù)量通過(guò)制定步進(jìn)電機(jī)的步距角和步數(shù)來(lái)精確控制,下料的時(shí)間則通過(guò)步進(jìn)電機(jī)的轉(zhuǎn)速來(lái)控制。在下料過(guò)程中,每15秒閱讀器就要讀取一次電子耳標(biāo),以檢測(cè)母豬是否仍在進(jìn)食,若檢測(cè)不到,則判定母豬已離開(kāi),飼喂器不再下料,電機(jī)停止轉(zhuǎn)動(dòng)。若母豬始終在進(jìn)食,則下料完畢后,電機(jī)停止轉(zhuǎn)動(dòng),進(jìn)入等待階段。飼喂器的母豬飼喂軟件控制流程圖4所示。

圖4 飼喂電機(jī)控制流程圖

4.3 分離電機(jī)控制的設(shè)計(jì)

母豬進(jìn)食完畢后進(jìn)入分離器通道,通道中同樣裝有閱讀器,上位機(jī)系統(tǒng)判斷該電子編碼對(duì)應(yīng)的母豬是否正常,若正常,則控制分離門(mén)電機(jī)正轉(zhuǎn),門(mén)向左開(kāi)通向大群;若不正常,則噴墨后,電機(jī)反轉(zhuǎn),門(mén)開(kāi)向隔離區(qū)[5]??刂屏鞒虉D如圖5所示。

圖5 分離門(mén)電機(jī)控制

4.4 ZigBee與ARM通信的軟件設(shè)計(jì)

在ARM9接收到監(jiān)控終端采集的數(shù)據(jù)后,ARM9在對(duì)數(shù)據(jù)處理后通過(guò)串口通信將數(shù)據(jù)發(fā)送到ZigBee無(wú)線模塊,由ZigBee無(wú)線網(wǎng)絡(luò)負(fù)責(zé)將數(shù)據(jù)發(fā)送給上位機(jī)系統(tǒng),進(jìn)行數(shù)據(jù)傳輸時(shí),優(yōu)先使用數(shù)據(jù)透明方式發(fā)送數(shù)據(jù)[6]。

程序的具體流程是:首先是初始化操作,初始化操作包括串口初始化、創(chuàng)建數(shù)據(jù)監(jiān)聽(tīng)線程、數(shù)據(jù)處理線程、收發(fā)數(shù)據(jù)的初始化和ZigBee數(shù)據(jù)透明傳輸初始化;然后程序循環(huán)往復(fù)監(jiān)測(cè)判斷有無(wú)接數(shù)據(jù)到達(dá),若有數(shù)據(jù)到達(dá),調(diào)用接收數(shù)據(jù)包的子函數(shù)接收數(shù)據(jù);若沒(méi)有數(shù)據(jù)到達(dá),就判斷當(dāng)前是否需要發(fā)送數(shù)據(jù),若需要發(fā)送數(shù)據(jù),則調(diào)用發(fā)送數(shù)據(jù)的子函數(shù)來(lái)進(jìn)行發(fā)送,不發(fā)送數(shù)據(jù)則進(jìn)入最初的監(jiān)聽(tīng)狀態(tài)。

ZigBee無(wú)線模塊的工作流程:首先進(jìn)入應(yīng)用層,在應(yīng)用層中UART串口與ZigBee無(wú)線收發(fā)接口都在等待有可能接收到的數(shù)據(jù),兩者都處于等待狀態(tài),如果等待超時(shí),UART串口與ZigBee無(wú)線收發(fā)接口二者均進(jìn)入睡眠模式,系統(tǒng)會(huì)通過(guò)休眠計(jì)時(shí)器喚醒和串口中斷喚醒兩種方式來(lái)喚醒ZigBee無(wú)線模塊和UART串口[7]。工作流程圖如圖6所示。

圖6 ZigBee串口通信流程圖

5 上位機(jī)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

5.1 軟件總體設(shè)計(jì)和分析

通過(guò)上位機(jī)中友好的人機(jī)見(jiàn)面來(lái)保存和處理養(yǎng)豬場(chǎng)所有母豬的信息,并且通過(guò)上位機(jī)可以直接控制下位機(jī)系統(tǒng)的工作,進(jìn)而達(dá)到飼喂的數(shù)字化與智能化,并根據(jù)母豬的身體情況及時(shí)作出科學(xué)的管理[8]。通過(guò)對(duì)養(yǎng)豬場(chǎng)的管理人員養(yǎng)殖經(jīng)驗(yàn)來(lái)分析,本系統(tǒng)上位機(jī)應(yīng)該具有以下主要功能:母豬數(shù)據(jù)信息的采集功能,數(shù)據(jù)信息的統(tǒng)計(jì)與分析功能,與下位機(jī)之間的通信等功能,并可根據(jù)母豬的具體情況適當(dāng)調(diào)整系統(tǒng)的部分參數(shù)。

5.2 系統(tǒng)功能模塊劃分

本系統(tǒng)軟件整體結(jié)構(gòu)按功能可劃分為六大模塊:飼喂管理模塊,發(fā)情檢測(cè)模塊,防疫與疾病治療模塊,數(shù)據(jù)初始化模塊,統(tǒng)計(jì)分析模塊,系統(tǒng)維護(hù)模塊。

5.3 開(kāi)發(fā)工具的選擇

Visual C++6.0是微軟公司推出的開(kāi)發(fā)Win32應(yīng)用程序的,面向?qū)ο蟮目梢暬晒ぞ?是一種基于Windows操作系統(tǒng)的可視化集成開(kāi)發(fā)環(huán)境。Visual C++6.0為Windows應(yīng)用程序的開(kāi)發(fā)提供了最方便的方法[9]。

5.4 Oracle數(shù)據(jù)庫(kù)的設(shè)計(jì)

Oracle是甲骨文公司研發(fā)的一款關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在如今的數(shù)據(jù)庫(kù)市場(chǎng)中占有舉足輕重的地位[10]。Oracle數(shù)據(jù)庫(kù)管理系統(tǒng)不僅有完備的關(guān)系產(chǎn)品,還具有完整的數(shù)據(jù)管理功能與數(shù)據(jù)的分布式處理功能。

以下兩種訪問(wèn)數(shù)據(jù)庫(kù)的方式:在DOS窗口中訪問(wèn)Oracle數(shù)據(jù)庫(kù)時(shí),首先要將Oracle數(shù)據(jù)庫(kù)的監(jiān)聽(tīng)進(jìn)程手動(dòng)啟動(dòng),如圖7所示,然后在DOS命令窗口中輸入sqlplus,接著輸入要訪問(wèn)的數(shù)據(jù)庫(kù)的用戶(hù)名與密碼,如圖8所示;在SQL Developer中訪問(wèn)數(shù)據(jù)庫(kù)時(shí),首先也要手動(dòng)啟動(dòng)數(shù)據(jù)庫(kù)的監(jiān)聽(tīng)進(jìn)程,然后點(diǎn)擊連接按鈕,在對(duì)話(huà)框中輸入要訪問(wèn)的數(shù)據(jù)庫(kù)的用戶(hù)名與密碼即可,如圖9所示。

圖7 數(shù)據(jù)庫(kù)監(jiān)聽(tīng)進(jìn)程的啟動(dòng)

圖8 DOS窗口中連接數(shù)據(jù)庫(kù)

圖9 SQL Developer中連接數(shù)據(jù)庫(kù)

5.5 ADO訪問(wèn)數(shù)據(jù)庫(kù)的設(shè)計(jì)

Visual C++6.0提供了ADO、ODBC、DAO和RDO等多種豐富的數(shù)據(jù)庫(kù)訪問(wèn)技術(shù),由于ADO技術(shù)使用起來(lái)更加簡(jiǎn)單靈活,所以本系統(tǒng)使用ADO來(lái)訪問(wèn)數(shù)據(jù)庫(kù)。

5.6 串口通信控件的設(shè)計(jì)

在VC++開(kāi)發(fā)環(huán)境中利用MFC向?qū)?添加一個(gè)MSComm類(lèi)型的控件變量(m_contrComm),下面是串口參數(shù)設(shè)置的實(shí)現(xiàn):

Void SetComm()

{

m_contrComm.SetCommPort(nPort);

if(!m_contrComm.Getport()Pen());

m_contrComm.SetPort()Pen(TRUE);/*打開(kāi)串口*/

m_contrComm.SetInPutMode(1);/*設(shè)置從接收緩沖區(qū)讀取數(shù)據(jù)的格式*/

m_contrComm.SetinBufferSize(1024);/*設(shè)置接收緩沖區(qū)的大小*/

m_contrComm.SetoutBufferSize(512);/*設(shè)置發(fā)送緩沖區(qū)的大小*/

m_contrComm.Setsettings(strBaud+strCheckBit+strDataBit+strStopBit);

/*串口參數(shù)設(shè)置*/

m_contrComm.SetRThreshold(1);/*每接受一個(gè)字符則激發(fā)OnComm()事件*/

m_contrComm.SetInPutIn(0);/*從接收緩沖區(qū)讀取數(shù)據(jù)*/

}

其中,nPort,strBaud(波特率),strCheckBit(校驗(yàn)位),strDataBit(字節(jié)有效位數(shù)),strStopBit(停止位)是串口屬性組合框設(shè)置的值。

5.7 系統(tǒng)功能模塊界面設(shè)計(jì)

系統(tǒng)的界面能夠很友好地實(shí)現(xiàn)人機(jī)互話(huà),它主要負(fù)責(zé)母豬數(shù)據(jù)信息的顯示和存儲(chǔ)以及對(duì)母豬數(shù)據(jù)的處理等,下面具體介紹各個(gè)功能模塊:

在上位機(jī)系統(tǒng)中,操作人員通過(guò)瀏覽器訪問(wèn)母豬智能化控制系統(tǒng),首先需要經(jīng)過(guò)用戶(hù)身份信息認(rèn)證,在窗口中輸入自己的用戶(hù)名和密碼(由數(shù)據(jù)庫(kù)管理員分配),然后系統(tǒng)根據(jù)輸入的信息進(jìn)行驗(yàn)證,如果驗(yàn)證無(wú)誤,則該用戶(hù)成功登錄,從系統(tǒng)的數(shù)據(jù)庫(kù)中得到當(dāng)前用戶(hù)的角色信息和權(quán)限信息,并顯示該用戶(hù)登錄后所能使用的各項(xiàng)功能;若驗(yàn)證失敗,系統(tǒng)提示登錄失敗,繼續(xù)保持在登錄界面。

圖10 系統(tǒng)界面設(shè)計(jì)流程圖

圖11 系統(tǒng)登錄主界面

6 結(jié)論

本論文通過(guò)對(duì)國(guó)內(nèi)外養(yǎng)豬業(yè)的現(xiàn)狀分析,提出了我國(guó)在養(yǎng)豬業(yè)生產(chǎn)力上存在很大的不足,進(jìn)而說(shuō)明本論文設(shè)計(jì)的母豬智能化控制系統(tǒng)的必要性與重要性。

本系統(tǒng)利用目前比較先進(jìn)的RFID技術(shù)和ZigBee無(wú)線通信技術(shù),并與核心控制板ARM9進(jìn)行互相通信,通過(guò)對(duì)ARM9的控制實(shí)現(xiàn)了硬件系統(tǒng)的設(shè)計(jì),其中包括直流電機(jī)對(duì)門(mén)控開(kāi)關(guān)的控制,以及步進(jìn)電機(jī)對(duì)自動(dòng)下料的控制,使用C#語(yǔ)言編寫(xiě)了系統(tǒng)的軟件程序,在軟件部分完成了上位機(jī)系統(tǒng)的開(kāi)發(fā),其中包括在VC++中編寫(xiě)了系統(tǒng)界面的程序設(shè)計(jì),并利用ADO訪問(wèn)上位機(jī)系統(tǒng)的數(shù)據(jù)庫(kù),最終完成了上位機(jī)與下位機(jī)總體設(shè)計(jì)的實(shí)現(xiàn),達(dá)到了豬規(guī)?;B(yǎng)殖健康精準(zhǔn)技術(shù)體系研究項(xiàng)目的要求。

[1]彭樹(shù)峰,王云新,葉富良,等.國(guó)內(nèi)外工廠化飼喂簡(jiǎn)述[J].2007(2):12-13.

[2]郭忠利.規(guī)模化養(yǎng)豬場(chǎng)群體母豬精細(xì)飼喂控制系統(tǒng)的研究與設(shè)計(jì)[D].哈爾濱:東北農(nóng)業(yè)大學(xué),2012.

[3]郭忠利,戚國(guó)強(qiáng),王立舒.種豬場(chǎng)群體母豬精細(xì)飼養(yǎng)管理系統(tǒng)的研究與應(yīng)用[J].農(nóng)機(jī)化研究,2013.

[4]周道雷,李陸欽.規(guī)?;B(yǎng)豬工程技術(shù)的發(fā)展現(xiàn)狀和趨勢(shì)[J].飼喂與飼料,2005(7):45-49.

[5]趙希彥.基于福利的新型多元化豬生產(chǎn)系統(tǒng)[J].中國(guó)畜牧獸醫(yī),2012,39(12):225-230.

[6]黃成亮.圖像式自動(dòng)機(jī)運(yùn)動(dòng)參數(shù)測(cè)試系統(tǒng)研究[D].太原:中北大學(xué),2011.

[7]黃朝斌.嵌入式Internet設(shè)備遠(yuǎn)程管理技術(shù)研究與應(yīng)用[D].沈陽(yáng):沈陽(yáng)工業(yè)大學(xué),2012.

[8]趙顯臣.RFID數(shù)據(jù)采集和處理系統(tǒng)中間件的研究與實(shí)現(xiàn)[D].包頭:內(nèi)蒙古科技大學(xué),2008.

[9]陳大偉.點(diǎn)式應(yīng)答設(shè)備在高速條件下的性能研究[D].北京:北京交通大學(xué),2011.

[10]朱文佳.射頻識(shí)別在上海郵政普郵總包分揀系統(tǒng)中的研究與應(yīng)用[D].上海:上海交通大學(xué),2008.

猜你喜歡
機(jī)系統(tǒng)流程圖上位
手持式觸摸測(cè)試機(jī)對(duì)閘機(jī)系統(tǒng)的維護(hù)研究
特斯拉 風(fēng)云之老阿姨上位
車(chē)迷(2018年12期)2018-07-26 00:42:22
“三扶”齊上位 決戰(zhàn)必打贏
基于ZigBee和VC上位機(jī)的教室智能監(jiān)測(cè)管理系統(tǒng)
專(zhuān)利申請(qǐng)審批流程圖
河南科技(2016年8期)2016-09-03 08:08:22
專(zhuān)利申請(qǐng)審批流程圖
河南科技(2016年6期)2016-08-13 08:18:29
經(jīng)濟(jì)、可靠的自動(dòng)開(kāi)關(guān)機(jī)系統(tǒng)
以新思路促推現(xiàn)代農(nóng)業(yè)上位
京石高速公路自助發(fā)卡機(jī)系統(tǒng)的設(shè)計(jì)與應(yīng)用
寧海縣村級(jí)權(quán)力清單36條
九龙县| 潜山县| 三门县| 革吉县| 平乐县| 鹤岗市| 志丹县| 福安市| 佳木斯市| 甘肃省| 东平县| 本溪| 墨脱县| 阿拉善右旗| 平昌县| 康马县| 陇川县| 桂阳县| 武宁县| 鄂州市| 信阳市| 牙克石市| 敖汉旗| 勐海县| 鹤壁市| 黑河市| 松潘县| 左云县| 新宁县| 苍南县| 黄龙县| 虹口区| 贵港市| 聂拉木县| 滦南县| 衡水市| 会同县| 麻城市| 伊川县| 莆田市| 漾濞|