• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種智能云灌溉系統(tǒng)

      2017-03-21 01:17:36
      節(jié)水灌溉 2017年3期
      關(guān)鍵詞:灌溉系統(tǒng)土壤濕度直流電機(jī)

      何 江

      (蘭州理工大學(xué)機(jī)電工程學(xué)院,蘭州 730000)

      0 引 言

      最近幾年,隨著政府投入農(nóng)業(yè)的力度日益增大以及各個(gè)行業(yè)開始對(duì)農(nóng)業(yè)領(lǐng)域進(jìn)行投資,我國(guó)農(nóng)業(yè)現(xiàn)代化正在加速發(fā)展,許多新型農(nóng)業(yè)主體已經(jīng)成長(zhǎng)起來(lái),對(duì)于農(nóng)業(yè)科技的資金投入也已經(jīng)增加,為推廣智能化灌溉系統(tǒng)提供了有力保障。而隨著物聯(lián)網(wǎng)的發(fā)展,各種新技術(shù)廣泛應(yīng)用于智能灌溉,為智能灌溉技術(shù)的發(fā)展提供了技術(shù)上有力的保證。

      隨著電子科技的快速發(fā)展,芯片迭代速度大大增加,物聯(lián)網(wǎng)不僅在CPU、傳感器等硬件上得到了飛速的發(fā)展,軟件上也進(jìn)行了跨越式的發(fā)展。尤其是目前基于Android、iOS的APP編程,以及非常流行的B/S網(wǎng)絡(luò)結(jié)構(gòu),都讓物聯(lián)網(wǎng)的控制系統(tǒng)軟件相比于以往,不僅在功能上有了極大的提高,在用戶體驗(yàn)上也有了飛躍的進(jìn)步。然后目前的智能灌溉系統(tǒng)并沒有充分的利用硬件技術(shù)的極大提高,很多系統(tǒng)仍然采用C51之類的單片機(jī),性能低下不說(shuō),而且很多需要PC機(jī)作為上位機(jī);在用戶體驗(yàn)上,依然是傳統(tǒng)工業(yè)冷冰冰的設(shè)計(jì)方案,沒有利用目前互聯(lián)網(wǎng)一些流行的網(wǎng)絡(luò)技術(shù),讓用戶產(chǎn)生了距離感。

      因此,本文利用目前性能很高的Raspberry Pi II(樹莓派二代)作為控制核心硬件,以及先進(jìn)的Web技術(shù),并結(jié)合其他外圍器件,制作了一部可靠性高、穩(wěn)定性強(qiáng)、經(jīng)濟(jì)性好、用戶易接受度高的智能云灌溉系統(tǒng)。

      1 硬件設(shè)計(jì)

      1.1 硬件整體結(jié)構(gòu)

      本智能灌溉系統(tǒng)主要由Raspberry Pi II電路板、FC-28土壤濕度傳感器、DTH11溫濕度傳感器、AD8591數(shù)模轉(zhuǎn)換模塊及L298N直流電機(jī)驅(qū)動(dòng)模塊和蠕動(dòng)泵等硬件構(gòu)成。其中,Raspberry Pi II采用Broadcom BCM2836 900 MHz的四核SoC,1GB內(nèi)存, 不僅能跑全系列ARM GNU/Linux發(fā)行版,而且支持Snappy Ubuntu Core及Windows 10。

      整體結(jié)構(gòu)示意圖見圖1。

      圖1 整體結(jié)構(gòu)示意圖

      1.2 濕度傳感器的連接

      FC-28土壤濕度傳感器的AO口(模擬量口)與AD8591數(shù)模轉(zhuǎn)換模塊的輸入口連接,將模擬量轉(zhuǎn)換為數(shù)字量,然后AD8591將土壤濕度的數(shù)字量通過(guò)I2C總線傳輸?shù)絉aspberry Pi II里。其連線示意圖如圖2。

      圖2 濕度傳感器連接

      其中I2C(Inter-Integrated Circuit)總線是兩線式串行總線,一條是數(shù)據(jù)線SDA,一條是時(shí)鐘線SCL。特別需要注意的就是,Raspberry Pi II 的Ubuntu mate系統(tǒng)默認(rèn)是不開啟I2C功能的(其他系統(tǒng)),需要在Config文件中修改。另外如果系統(tǒng)接了多個(gè)AD8591模塊,需要修改其地址線。例如,A0、A1、A2如果都接地的話,地址即為Ox48,二進(jìn)制即為1 001 000,前4位不能修改,只能通過(guò)修改A0、A1、A2來(lái)修改地址,即最多同時(shí)只能并聯(lián)8個(gè)模塊進(jìn)行32路的數(shù)據(jù)采集(每個(gè)模塊有4路輸入)。

      1.3 直流電機(jī)泵組的連接

      本系統(tǒng)采用直流電機(jī)驅(qū)動(dòng)蠕動(dòng)泵,為了能夠調(diào)整灌溉水量,需要使用PWM脈沖寬度調(diào)制來(lái)解決直流電機(jī)調(diào)速的問(wèn)題。Raspberry Pi II的PWM硬件輸出口只有一路,當(dāng)然如果需要多路的PWM輸出口,可以用軟件的方法實(shí)現(xiàn),例如wiringPi就提供了用軟件多線程實(shí)現(xiàn)PWM的輸出方法,可以很方便的利用庫(kù)中的函數(shù)來(lái)任意配置GPIO口為PWM輸出。本系統(tǒng)的直流電機(jī)驅(qū)動(dòng)模塊為L(zhǎng)298N,連線圖如圖3。

      圖3 直流電機(jī)接線圖

      其中L298N是ST公司生產(chǎn)的一種驅(qū)動(dòng)能力強(qiáng)、發(fā)熱量低的直流電機(jī)驅(qū)動(dòng)芯片。使用L298N芯片驅(qū)動(dòng)電機(jī),既可以驅(qū)動(dòng)一臺(tái)兩相步進(jìn)電機(jī)或四相步進(jìn)電機(jī),也可以同時(shí)驅(qū)動(dòng)兩臺(tái)直流電機(jī)。本系統(tǒng)目前只接了一臺(tái)蠕動(dòng)泵(直流電機(jī)驅(qū)動(dòng)),因此OUT3、OUT4、IN3、IN4、ENB接口可以不用。這里也需要特別注意一點(diǎn),當(dāng)我們使用外部電源的時(shí)候,L298N的+5v接的不是Raspberry Pi II電路板的+5V,而是一個(gè)GPIO口,不然會(huì)引起電路的短路。

      整體硬件完成后,如圖4。

      圖4 實(shí)際完成圖

      2 控制軟件的設(shè)計(jì)

      2.1 軟件整體設(shè)計(jì)方案

      本系統(tǒng)前臺(tái)、后臺(tái)程序和控制程序均采用Python開發(fā),控制軟件使用了Python GPIO、BCM2835的庫(kù),這些集成庫(kù)提供了對(duì)樹莓派相關(guān)硬件資源的操作函數(shù),使用非常簡(jiǎn)潔方便。而傳統(tǒng)的linux驅(qū)動(dòng)設(shè)計(jì)的方法,為編寫驅(qū)動(dòng)程序?qū)PU的GPIO寄存器進(jìn)行操作,生成驅(qū)動(dòng)模塊后再加載,不僅復(fù)雜而且調(diào)試周期長(zhǎng)。軟件大概框架如圖5。

      圖5 軟件框架圖

      其主要流程為:傳感器讀取程序模塊首先按照預(yù)定的時(shí)間值讀取當(dāng)前的土壤濕度值,然后將數(shù)據(jù)寫入Mysql數(shù)據(jù)庫(kù),Web程序?qū)?shù)據(jù)(空氣溫濕度、土壤濕度等數(shù)據(jù))顯示出來(lái)(如圖7),同時(shí)控制程序模塊介入系統(tǒng)的流程,把從Mysql的數(shù)據(jù)傳入模糊算法控制器控制,后者將處理后的數(shù)據(jù)又傳給前者,控制程序模塊執(zhí)行一邊執(zhí)行相應(yīng)的操作,一邊又要將數(shù)據(jù)寫入Mysql數(shù)據(jù)庫(kù)。該程序還有手動(dòng)功能,能夠通過(guò)web界面直接操控系統(tǒng)。

      2.2 模糊控制算法的實(shí)現(xiàn)

      本系統(tǒng)采用帶修正因子的二維模糊控制器,輸入量分別為土壤濕度和土壤濕度的變化,輸出量為直流電流的PWM值。模糊集均為{NB,NBL,NM,NS,NO,PO,PS,PM,PBL,PB},論域均為{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}。精確量轉(zhuǎn)換為模糊量的公式為:

      Y=2n[x-(a+b)/2]/(b-a)

      (1)

      式中:a為精確量的上限值;b為精確量的下限值;x為所要轉(zhuǎn)換的精確量;Y為轉(zhuǎn)換的模糊量;n為模糊量的上限(或下限)值(需對(duì)稱)。

      模糊控制規(guī)則采用if … and … then 結(jié)構(gòu)。本系統(tǒng)的模糊控制表為在線自動(dòng)生成,能夠根據(jù)不同的修正因子自動(dòng)生成不同的控制表,其公式為:

      U=a*hum+(1-a)*dhum

      (2)

      式中:U為控制模糊量;a為修正因子;hum為土壤濕度值;dhum為土壤濕度值的變化值。

      本模糊控制器完全是用Python編寫的。Python是完全面向?qū)ο蟮恼Z(yǔ)言。函數(shù)、模塊、數(shù)字、字符串都是對(duì)象。并且完全支持繼承、重載、派生、多繼承,有益于增強(qiáng)源代碼的復(fù)用性。而且Python是一種跨平臺(tái)語(yǔ)言,在Windows、Linux、MacOS等均可以使用。下面是具體代碼的實(shí)現(xiàn):

      class Fuzzy_Control:

      def __init__(self, hum,dHum):

      self.hum = hum ##土壤濕度值

      self.dHum = dHum ##土壤濕度值的變化值(采用周期0.2s)

      ##模糊論域

      self.humDegree = [ -6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6 ]

      self.dHumErrDegree = [ -6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6]

      self.uDegree = [ -6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6 ]

      ##二維數(shù)組坐標(biāo)對(duì)應(yīng)

      def degerr(self,x,y):

      if x <= -6:

      return 0

      if x == -5:

      return 1

      …… …

      ##將基本論域轉(zhuǎn)成模糊論域

      def fuzzy_hum_Input(self,a,b):

      fuzzy_Hum = round((12*(self.hum-(a+b)/2))/(b-a))

      return self.degerr(fuzzy_Hum,self.humGOM)

      #return fuzzy_Hum

      def fuzzy_dhum_Input(self,a,b):

      fuzzy_dHum = round((12*(self.dHum-(a+b)/2))/(b-a))

      return self.degerr(fuzzy_dHum,self.dHumGOM)

      #return fuzzy_dHum

      ##利用修正因子求控制輸出表

      def output_Table(self):

      ##創(chuàng)建12×12二維矩陣

      u_table = [[0 for col in range(13)] for row in range(13)]

      a = 0.5 ##設(shè)定修正因子

      for i in range(13):

      for j in range(13):

      u_table[i][J]=-round(self.humDegree[i]*a+self.dHumErrDegree[J]*(1-a))

      return u_table

      ##根據(jù)控制輸出表來(lái)輸出模糊量

      def out_Put(self):

      s = self.output_Table()

      return s[self.fuzzy_hum_Input(66,100)][self.fuzzy_dhum_Input(-35,35)]

      2.3 Web程序設(shè)計(jì)

      Web頁(yè)面采用Html5、Css、JavaScript及jQuery編寫,Web后臺(tái)采用Flask,具體框架見圖6。

      圖6 Web程序框架圖

      Flask是Python Web框架的一種,其核心既簡(jiǎn)單而又可擴(kuò)展。其是用Python編寫的輕量級(jí) Web 應(yīng)用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎則使用 Jinja2 。程序運(yùn)行后的效果圖如圖7。

      圖7 程序運(yùn)行后的效果圖

      3 結(jié) 語(yǔ)

      目前本智能云灌溉系統(tǒng)已經(jīng)運(yùn)用于水果黃瓜的種植試驗(yàn),在單株黃瓜的種植試驗(yàn)當(dāng)中,系統(tǒng)運(yùn)行穩(wěn)定、可靠,達(dá)到了精確灌溉的目的,完全實(shí)現(xiàn)了自動(dòng)化的灌溉與施肥,而省了大量的人力勞動(dòng)。

      本智能云灌溉系統(tǒng)利用目前飛速發(fā)展的物聯(lián)網(wǎng)的一些硬件設(shè)備,使得以前類似于工控機(jī)形象的灌溉系統(tǒng)煥發(fā)出了新的生命力。利用Raspberry Pi II強(qiáng)大的計(jì)算能力,不僅將模糊運(yùn)算器放在上面運(yùn)行,還在其上建立一個(gè)web系統(tǒng),使得整個(gè)系統(tǒng)不僅運(yùn)行精確可靠,而且操作簡(jiǎn)單方面,接受性高。

      [1] Jonathan Brogdon. Control the limelight with a Raspberry Pi[J]. Linux Journal,2013.

      [2] Warren W. Gay. Experimenting with Raspberry Pi[M]. Apress, 2014.

      [3] 楊耿煌,付 春. 基于GSM短信平臺(tái)的灌溉自動(dòng)控制器的開發(fā)[C]∥2005年中國(guó)農(nóng)業(yè)工程學(xué)會(huì)學(xué)術(shù)年會(huì),2005.

      [4] 谷海穎,韓正之,唐厚君,等.一類參數(shù)自調(diào)整型智能模糊控制器的設(shè)計(jì)和實(shí)現(xiàn)[J]. 電氣自動(dòng)化,2001,(6).

      猜你喜歡
      灌溉系統(tǒng)土壤濕度直流電機(jī)
      基于模糊PID的無(wú)刷直流電機(jī)速度控制系統(tǒng)的設(shè)計(jì)與仿真
      土壤濕度傳感器在園林綠化灌溉上的應(yīng)用初探
      基于物聯(lián)網(wǎng)技術(shù)的農(nóng)業(yè)智能灌溉系統(tǒng)應(yīng)用
      基于51單片機(jī)控制花盆土壤濕度
      電子制作(2019年15期)2019-08-27 01:12:12
      仿生高效節(jié)水灌溉系統(tǒng)
      電子制作(2018年23期)2018-12-26 01:01:10
      基于單片機(jī)的小型自動(dòng)灌溉系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      基于FPGA的雙繞組無(wú)刷直流電機(jī)軟件設(shè)計(jì)
      電子制作(2017年1期)2017-05-17 03:54:12
      四川盆地土壤濕度時(shí)空分布及影響因子分析
      中國(guó)不同氣候區(qū)土壤濕度特征及其氣候響應(yīng)
      基于模糊神經(jīng)網(wǎng)絡(luò)PID的無(wú)刷直流電機(jī)控制系統(tǒng)研究
      磐安县| 宁陵县| 义乌市| 英德市| 金门县| 孙吴县| 长阳| 宁河县| 界首市| 清原| 远安县| 石屏县| 万源市| 阳原县| 江山市| 贵德县| 新民市| 九江县| 雷州市| 波密县| 宝山区| 渝中区| 吴堡县| 久治县| 新平| 恭城| 仲巴县| 当雄县| 阿拉尔市| 乌什县| 额敏县| 和政县| 临高县| 汝南县| 博兴县| 通许县| 闸北区| 樟树市| 文化| 同心县| 黄大仙区|