















摘 要:根據我國大部分地區漁業水產養殖業發展需求,基于物聯網技術設計了一款水產養殖系統。本系統基于物聯網三層架構進行分層次設計,主要使用STM32單片機,通過溫度、濁度、水位傳感器實現全面感知,采用WiFi無線傳輸進行信息交互,并在云平臺進行實時監測和遠程操控。用戶根據養殖環境的差異對其水質、水溫、水位進行調控。依據養殖需求在云平臺操作界面調整指標從而實現自動換水、自動控溫、遠程投喂、遠程充氧、遠程開啟照明等功能。本設計能夠有效解決在養殖過程中出現的環境信息獲取不及時、操作不妥當而導致的魚類死亡等問題,該系統既能滿足規模化水產養殖的基本需求,又在傳統養殖的基礎上使養殖作業更加智能、便利。
關鍵詞:物聯網;水產養殖系統;STM32;OneNET云平臺;傳感器;遠程操控
中圖分類號:TP273 文獻標識碼:A 文章編號:2095-1302(2024)02-00-04
0 引 言
近年來,隨著物聯網、大數據、云計算等現代信息技術的迅速發展,為漁業信息化提供了新的發展動力。現代漁業是養殖技術、裝備技術和信息技術的有機結合,實現了傳統漁業與物聯網技術的深度融合,并在數據整合分析的基礎上進行科學決策,以實現精準化、自動化與智能化,有效提高了生產力和管理經營能力。
目前,我國漁業養殖機械化、信息化、智能化融合還不夠,絕大部分地區的水產養殖模式仍為人工模式,而多數養殖機械只是處于簡單替代人力階段,與魚類的行為學、其他養殖機械設備之間缺乏信息化、智能化融合交互[1]。大多數增氧機仍需人工開啟,水質監測傳感器功能較單一,以魚塘溫度和溶解氧監測為主,缺乏對監測指標進行有效的智能決策行為,且在PC端遠程控制方面的應用還不廣泛。所以水質監控系統需具備部署簡單、可無人操作、低功耗、維護少、遠距離傳輸等特點[2]。注重漁業養殖智能化發展,利用監測的有效歷史數據建立和優化漁業養殖,減少因水質、喂食等問題導致的大規模損失。
綜上,本文設計實現了基于物聯網技術的水產養殖系統。該系統利用嵌入式開發技術,不僅能夠實現對養殖環境中水溫和水位的監測,還能對水體渾濁度進行監測。針對水體中含氧量的監測數據變化做出智能決策,避免水體含氧量低導致魚類死亡。投食設備實現了遠程操控,更針對水體中的溫度、濁度調整增配了換水、加熱、照明等功能模塊。結合物聯網、自動水產等技術對漁業養殖過程進行科學管理,實現水產養殖模式實現自動化、智能化、精準化的目標[3]。因此,研究基于物聯網技術的水產養殖系統符合現代化水產養殖發展需求。
1 智慧漁業水產養殖系統的概述
本設計運用物聯網技術對水產生物生長環境進行監測和控制。環境感知層通過濁度傳感器、水位傳感器、溫度傳感器對水體渾濁度、水位、水溫進行監測[4];數據網絡層由WiFi無線傳輸模塊負責數據的收發;平臺層為OneNET云平臺;信息處理應用層則是根據監測的數據進行智能決策與控制[5]。通過水的溫度和濁度實現自動換水、自動控溫功能,利用遠程PC終端實現照明、投喂、充氧等操作。系統結構框架如圖1所示。
2 系統硬件設計
基于物聯網技術的智慧漁業水產養殖系統采用STM32F103C8T6單片機,該單片機在通信、控制等方面優于其他單片機。STM32F103C8T6是一款32位基于ARM核心的帶64 KB閃存的微控制器,引腳個數為48個,工作溫度為-40~85 ℃,電壓范圍為2.0~3.6 V,可以保證最大輸出電流為300 mA;支持ST-Link和JTAG調試下載,支持64 KB FLASH和SRAM存儲資源。STM32處理器具有睡眠模式、停機模式、待機模式三種低功耗模式,單片機在低功耗狀態下喚醒時間可以達到微秒級[6]。
本設計使用的傳感器、通信模塊、控制器、執行設備主要是:溫度傳感器(DS18B20)、濁度傳感器(TSW-30)、水位檢測模塊(Water Sensor)、WiFi模塊(ESP8266)、STM32F103C8T6微控制器、繼電器、舵機(SG90)、水泵、加熱棒、氧氣泵等。硬件電路結構如圖2所示。
2.1 水產養殖系統水環境監測
在水產生物養殖過程中,水是其生長最重要的影響因素,但是不同水生生物擁有其自身的特點,部分特殊品種的水產生物需要在特定的養殖環境下才能進行人工養殖。本系統選用水體溫度傳感器、濁度傳感器和水位傳感器用于對水產養殖環境進行實時信息獲取。
(1)水體溫度檢測模塊:傳感器型號為DS18B20,其在性能和單線接口方法等方面都較為突出。其只用一根引腳線就能實現與處理器的通信,突顯了連接的優勢。測溫范圍為-55~+125 ℃,測溫分辨率為0.5 ℃;工作電壓為3~
5 V DC直流供電,支持多點組網功能。DS18B20溫度傳感器使用杜邦線連接,共有3個引腳,分別是:GND、VCC、DIO。DS18B20溫度傳感器的GND、VCC和STM32的GND、VCC連接,DIO和STM32的PC15連接,如圖3所示。
(2)水體濁度檢測模塊:傳感器型號為TSW-30,其利用光學原理通過檢測水體中的懸浮量固體的總量變化,即水中懸浮的顆粒物和光的透射率與散射率檢測懸浮量[7]。濁度傳感器擁有3個引腳:GND、OUT、VCC;工作電壓為
5 V DC,電流為40 mA;工作溫度范圍為5~90 ℃,響應時間lt;500 ms。濁度傳感器TSW-30使用杜邦線連接,共有3個針腳,分別是:GND、OUT、VCC。其中,濁度傳感器TSW-30的OUT引腳和STM32的PA0引腳連接,GND、VCC和開發板對應的GND、VCC 3.3 V引腳連接。
(3)水位檢測模塊:采用Water Sensor水位傳感器完成水量模擬信號的轉換,再通過單片機讀取。水位傳感器共有3個引腳:GND、S、VCC;其具有低功耗、高靈敏度等特點。水位傳感器使用杜邦線連接,傳感器的GND、VCC和STM32對應的GND、VCC連接。
溫度、濁度、水位傳感器線路連接如圖3所示。
2.2 水產養殖系統無線通信模塊
本系統使用ESP8266無線網絡進行數據傳輸,其采用IEEE802.11無線通信標準,共有8個針腳分別是:VCC、RX、RST、IOC、EN、IO2、TX、GND。本設計主要使用VCC、RX、TX、GND。ESP8266 WiFi模塊采用串口與單片機通信,內置TCP/IP協議棧,通過WiFi與上位機通信[8]。利用ESP8266模塊對傳統串口設備進行簡單配置,即可將數據通過WiFi傳輸給上位機,實現物聯功能。ESP8266的GND、VCC和STM32對應的GND、VCC相連接。RX和STM32的PB10連接、TX和STM32的PB11連接,如圖4所示。
2.3 水產養殖系統智能決策與控制模塊
本系統根據水產養殖環境設計了自動換水、自動控溫、投喂、充氧以及照明功能,且在PC端就能實現遠程操控。一方面,養殖者能隨時隨地監測和控制養殖環境,另一方面使得水產養殖更加智能化、多樣化。
STM32開發板提供兩種供電方法,為開發板的電源引腳供電和通過USB口供電,本系統使用USB口供電。繼電器的5 V供電接單片機,電器負載單獨供電DC,使用DC電源線供電。系統智能控制模塊主要使用4個繼電器作為開關,分別控制氧氣泵、燈光、加熱棒、抽水管與進水管,如圖5所示。使用SG90型號舵機進行投喂器的控制,如圖6所示。
系統各層次配合工作,環境感知層的溫度、濁度、水位傳感器將采集的信息傳送到單片機。然后,利用數據網絡層的WiFi模塊向OneNET云平臺發送數據。之后將云平臺的控制指令傳送給單片機。再通過信息處理應用層對收到的數據進行相應控制,并將其傳輸給繼電器模塊,由繼電器模塊實現對各執行部件的控制,從而實現整個控制系統的功能。水產養殖系統總體流程如圖7所示。
3 系統軟件設計
3.1 模塊程序設計
對于該系統中軟件設計所選用的單片機型號為STM32C8T6。使用Keil5開發軟件作為下位機的開發環境。在使用單片機前,要初始化其各個引腳,為實現與云服務器平臺之間的無線網絡連接,需要初始化云平臺協議。無線網絡通信由WiFi模塊完成。初始化配置完成后,STM32開始運行主函數,將數據和事件的處理結果傳輸到云平臺。
(1)各傳感器模塊程序設計
溫度檢測程序流程如圖8所示,濁度檢測程序流程如
圖9所示,水位檢測程序流程如圖10所示。
(2)WiFi模塊程序設計
ESP8266通過串口通信,在系統通電后對指定連接到ESP8266的串口引腳功能進行初始化,再復位操作,并設置為STA模式。WiFi網絡連接成功后,可對指定的OneNET云平臺進行連接,接收和轉發數據,如圖11所示。
(3)繼電器模塊程序設計
通過控制繼電器實現終端打氧、照明、投食和換水等控制程序,繼電器模塊的程序流程如圖12所示。
(4)總系統設計流程
總系統設計流程如圖13所示。
3.2 OneNET云平臺
上位機軟件設計主要基于OneNET云平臺解決物聯網領域設備連接、協議適配、數據存儲、數據安全、大數據分析、事件觸發等共性問題[9]。OneNET云平臺能夠適用于不同的網絡環境,并且能和多種主流物聯網傳輸協議相適配。OneNET云平臺的網絡通信協議有兩種,分別是公共協議和私有協議,其中公共協議有MQTT、EDP、HTTP、LwM2M、MODBUS和TCP透明傳輸,但專用協議只有RTMP協議[10]。本設計采用MQTT協議,這是一種基于TCP/IP技術的實時通信協議,可以通過TCP/IP實現對負載信息的屏蔽,并且具有較低開銷,減少了網絡流量。
終端通信模組側要實現與OneNET云平臺的互通對接,需要在平臺側和模組側完成互通對接的配置,登錄OneNET云平臺網站進入控制臺界面后創建產品,配置設備的聯網方式與設備的接入協議,本設計使用MQTT協議。在創建好產品后,在產品概況里查看產品的ID和APIKey,為產品添加通信設備和設備鑒權信息等。
產品創建完成后進入應用管理創建可視化項目,完成上電檢查和網絡附著,再創建設備實體并完成資源訂閱,如利用MQTT協議將采集的數據建立對象資源數據模型,將養殖水環境中的溫度、濁度以及水位信息作為具體對象,添加到設備資源列表中。另外添加設備對象,控制照明、充氧以及喂食,在類對象添加3個實體,數據類型為Boolean型,資源代碼為可讀可寫類型。操作完畢后,將能夠在網頁中對養殖環境進行實時監測和控制操作。云平臺系統操作界面如
4 系統測試與運行
根據系統的整體設計,對系統各功能模塊進行測試,測試的主要內容包括:溫度檢測、濁度檢測、水位檢測、自動換水、自動加熱、控制打氧、控制照明、控制喂食等。
文中設計的水產養殖系統與最初的需求設計符合,未出現功能缺失的地方。溫度檢測、濁度檢測、水位檢測可以成功檢測相應的數值,但在上傳網頁端時受網絡傳輸速度的影響會產生一定時差,但時差過小可以忽略不計;自動換水功能正常,在濁度數值高于預設值時系統會自動打開換水水泵進行換水,在濁度低于預設值時自動關閉換水水泵停止換水;自動加熱功能正常,在溫度數值低于預設值時自動打開加熱棒加熱,在溫度高于預設值時自動關閉加熱棒停止加熱;控制打氧能夠在網頁端控制開關;控制照明可在網頁端控制開關;控制喂食可在網頁端控制開關。小程序顯示結果如圖15所示,數據采集設備如圖16所示。
5 結 語
本設計是基于物聯網技術的智慧漁業養殖系統,從硬件和軟件兩部分進行設計,實現了對漁業養殖過程中水環境參數(水溫、濁度、水位)的實時監測,根據動態數據信息分析后作出自動換水、自動控溫、遠程投喂、充氧、照明的智能決策控制,確保養殖環境的安全與穩定。系統實現了智能水產養殖的基本需求,但仍然有一些方面需要調整和完善。隨著我國漁業水產養殖的不斷發展,新興信息技術不斷普及,在一定程度上給水產養殖者提供了更多的信息來源,也為其在養殖過程中帶來了諸多便利。
參考文獻
[1]周小燕,倪琦,徐皓,等.2021年中國水產養殖全程機械化發展報告[J].中國農機化學報,2022,43(12):1-4.
[2]崔建軍.基于窄帶物聯網的漁業水質智能監控系統設計與實現[D].鎮江:江蘇大學,2020.
[3]陳思超.基于NB-loT的漁業水質監控系統設計與實現[D].南昌:東華理工大學,2022.
[4]田華.基于Arduino的簡易水情檢測系統設計與試驗[J].農業工程,2018,8(7):34-37.
[5]何劍朋,姚屏,白路,等.基于物聯網平臺的太陽能-氫能發電技術研究[J].自動化與信息工程,2021,42(4):50-53.
[6]王懷宇,趙建軍,李景麗,等.基于物聯網的溫室大棚遠程控制系統研究[J].農機化研究,2015,37(1):123-127.
[7]廖堅燦,潘長林,秦海軍,等.基于Arduino的多參數水質檢測儀
[J].廣西物理,2018,39(1):24-27.
[8]張琥石,林偉龍,鄧日練,等.基于ESP8266 WiFi模塊的物聯網數控直流電壓源的設計[J].現代電子技術,2019,42(20):33-36.
[9]房亞民.基于移動網絡智能燃氣控制系統的設計[J].電子世界,2019,41(2):208-209.
[10]陳思.基于OneNET的農業大棚物聯網環境監控系統的研究與實現[D].沈陽:遼寧大學,2019.