一、前言
隨著農(nóng)業(yè)現(xiàn)代化進(jìn)程的加速,溫棚種植已成為提高農(nóng)作物產(chǎn)量和品質(zhì)的重要手段之一。作為調(diào)節(jié)溫室環(huán)境的核心設(shè)備,卷簾電機(jī)的性能直接影響溫室內(nèi)的光照和溫度等關(guān)鍵參數(shù)。然而,傳統(tǒng)的卷簾電機(jī)控制方法存在諸多缺陷,如定位精度低、難以實(shí)現(xiàn)多個(gè)設(shè)備的同步控制以及缺乏智能管理功能。這些問(wèn)題在一定程度上限制了溫室種植效率的進(jìn)一步提高?;趩纹瑱C(jī)的控制系統(tǒng)由于成本低、靈活性高和可擴(kuò)展性強(qiáng),已成為解決這些問(wèn)題的理想方案。本文結(jié)合單片機(jī)技術(shù)、傳感器技術(shù)和無(wú)線通信技術(shù),開(kāi)發(fā)了一套全面的溫室智能控制系統(tǒng)。該系統(tǒng)不僅滿(mǎn)足了溫室卷簾電機(jī)的各種控制需求,還顯著提高了溫室管理的準(zhǔn)確性和效率,為作物生長(zhǎng)創(chuàng)造了更適宜的環(huán)境條件[。
二、系統(tǒng)總體方案設(shè)計(jì)
(一)系統(tǒng)功能需求分析
基于溫室種植的實(shí)際需求,該系統(tǒng)需要實(shí)現(xiàn)以下主要功能:
1.實(shí)時(shí)監(jiān)測(cè)功能
該系統(tǒng)應(yīng)能夠?qū)崟r(shí)、準(zhǔn)確地收集卷簾機(jī)的運(yùn)行姿態(tài)和位置信息,以及溫室內(nèi)的溫度和濕度數(shù)據(jù)。通過(guò)對(duì)這些關(guān)鍵參數(shù)的持續(xù)監(jiān)測(cè),可以為后續(xù)的控制決策提供可靠依據(jù)
2.自動(dòng)控制功能
基于收集到的溫室內(nèi)的溫度和濕度數(shù)據(jù)以及卷簾機(jī)的傾斜和位置信息,該系統(tǒng)能夠自動(dòng)分析,并根據(jù)預(yù)設(shè)規(guī)則和參數(shù)閾值,實(shí)現(xiàn)對(duì)卷簾機(jī)升降動(dòng)作的自動(dòng)控制。例如,當(dāng)溫室內(nèi)的溫度過(guò)高時(shí),系統(tǒng)可以自動(dòng)控制卷簾機(jī)上升,以增加遮陽(yáng)面積并降低溫室內(nèi)的溫度;當(dāng)溫度過(guò)低時(shí),系統(tǒng)會(huì)控制卷簾機(jī)下降,以減少熱量散發(fā),從而維持適宜的溫室環(huán)境,促進(jìn)作物的健康生長(zhǎng)。
3.遠(yuǎn)程控制功能
為了提高溫室管理的便利性和靈活性,該系統(tǒng)支持多種遠(yuǎn)程控制方式。用戶(hù)可以通過(guò)遙控器(一對(duì)多模式)移動(dòng)應(yīng)用程序或上位計(jì)算機(jī)設(shè)備在不同場(chǎng)景下遠(yuǎn)程操作卷簾機(jī)。例如,即使用戶(hù)身處溫室之外,他們也可以使用移動(dòng)應(yīng)用程序?qū)崟r(shí)查看溫室內(nèi)的環(huán)境信息,并遠(yuǎn)程調(diào)整卷簾機(jī)的運(yùn)行狀態(tài),從而實(shí)現(xiàn)智能化管理。
4.保護(hù)功能
考慮到溫室內(nèi)的卷簾機(jī)在實(shí)際運(yùn)行過(guò)程中可能會(huì)遇到各種故障風(fēng)險(xiǎn),系統(tǒng)必須配備完備的保護(hù)機(jī)制(如相序保護(hù)相位缺失保護(hù)、電壓檢測(cè)以及過(guò)載保護(hù)等功能)。相序保護(hù)能夠防止因電源相序錯(cuò)誤而導(dǎo)致的電機(jī)反轉(zhuǎn)或損壞。相位缺失保護(hù)能夠在缺少相位的電源情況下及時(shí)切斷電路,避免因缺相導(dǎo)致電機(jī)燒毀。電壓檢測(cè)功能能夠?qū)崟r(shí)監(jiān)測(cè)電源電壓,并在電壓異常(過(guò)高或過(guò)低)時(shí)采取相應(yīng)的保護(hù)措施。過(guò)載保護(hù)能夠在電機(jī)負(fù)載過(guò)大時(shí)自動(dòng)切斷電源,確保電機(jī)及系統(tǒng)的安全運(yùn)行。
5.數(shù)據(jù)存儲(chǔ)與查詢(xún)功能
該系統(tǒng)應(yīng)具備數(shù)據(jù)存儲(chǔ)能力,能夠記錄收集到的關(guān)鍵信息。同時(shí),系統(tǒng)還應(yīng)提供便捷的數(shù)據(jù)查詢(xún)功能,使用戶(hù)能夠隨時(shí)訪問(wèn)歷史數(shù)據(jù),分析溫室環(huán)境變化的趨勢(shì)以及卷簾機(jī)的運(yùn)行規(guī)律,并為科學(xué)管理和決策提供有力支持。
(二)系統(tǒng)架構(gòu)設(shè)計(jì)
該系統(tǒng)的原理結(jié)構(gòu)框圖如圖1所示。傳感器部分用于獲取卷簾機(jī)的姿態(tài)和位置信息,以及收集溫室內(nèi)部的溫度和濕度數(shù)據(jù)??刂撇糠忠詥纹瑱C(jī)(MCU)為核心組件,接收來(lái)自傳感器的數(shù)據(jù)并進(jìn)行處理,然后執(zhí)行相應(yīng)的控制指令。此外,該部分還負(fù)責(zé)與外部設(shè)備(如一對(duì)多遠(yuǎn)程控制器、移動(dòng)客戶(hù)端和計(jì)算機(jī)上位機(jī))進(jìn)行通信。電源模塊為整個(gè)系統(tǒng)提供穩(wěn)定可靠的電力支持,而卷簾機(jī)的控制模塊通過(guò)固態(tài)繼電器實(shí)現(xiàn)對(duì)電機(jī)的控制,并具有多種保護(hù)功能[2]。
圖1原理框圖
三、系統(tǒng)硬件設(shè)計(jì)
(一)主控制芯片選擇
對(duì)于本設(shè)計(jì),選用STM32微控制器作為核心控制器。該芯片最高頻率可達(dá)72MHz,能夠滿(mǎn)足系統(tǒng)對(duì)數(shù)據(jù)處理速度和實(shí)時(shí)性能的要求。該芯片還配備了各種外圍接口,包括通用定時(shí)器、模擬數(shù)字轉(zhuǎn)換器(ADC)、串行外設(shè)接口(SPI)PC總線和USART接口,便于連接各種傳感器和通信模塊。
(二)傳感器模塊設(shè)計(jì)
1.陀螺儀模塊
使用的是MPU6050陀螺儀傳感器。該設(shè)備集成了三軸陀螺儀和三軸加速度計(jì),能夠精確測(cè)量卷簾機(jī)的角速度和加速度,從而計(jì)算出設(shè)備的姿態(tài)和位置信息3。MPU6050通過(guò)PC接口與微控制器進(jìn)行通信,并實(shí)時(shí)將采集的數(shù)據(jù)傳輸給主控制單元。為了確保測(cè)量精度,硬件設(shè)計(jì)中對(duì)傳感器電源進(jìn)行了濾波處理,有效地減少了電源噪聲干擾。同時(shí),在安裝時(shí),要確保傳感器和卷簾機(jī)處于固定且準(zhǔn)確的相對(duì)位置。
2.溫度和濕度傳感器模塊
MAX485溫濕度傳感器用于監(jiān)測(cè)溫室內(nèi)的環(huán)境溫度和濕度。該傳感器具有高測(cè)量精度和良好的穩(wěn)定性,并能通過(guò)MAX485總線與微控制器進(jìn)行通信,支持長(zhǎng)距離、抗干擾的數(shù)據(jù)傳輸。在實(shí)際應(yīng)用中,根據(jù)溫室的面積和結(jié)構(gòu)合理布置多個(gè)溫度和濕度傳感器,以獲得更準(zhǔn)確的平均值。此外,為了提高通信可靠性,在MAX485總線上設(shè)置了終端匹配電阻。
(三)無(wú)線通信模塊設(shè)計(jì)
選擇433M調(diào)頻無(wú)線通信模塊來(lái)實(shí)現(xiàn)一對(duì)多的遠(yuǎn)程控制功能。該模塊工作在433MHz頻段,具有傳輸距離長(zhǎng)和抗干擾能力強(qiáng)的優(yōu)點(diǎn)。該模塊采用FSK(頻移鍵控)調(diào)制,顯著降低了信號(hào)傳輸中的錯(cuò)誤率。在硬件連接方面,該模塊通過(guò)SPI接口與微控制器進(jìn)行數(shù)據(jù)交換,支持微控制器發(fā)送控制指令以及接收來(lái)自遠(yuǎn)程控制器、移動(dòng)應(yīng)用程序或計(jì)算機(jī)上位機(jī)的命令信息。
(四)電機(jī)控制與保護(hù)電路設(shè)計(jì)
1.固態(tài)繼電器驅(qū)動(dòng)電路
使用固態(tài)繼電器控制卷簾機(jī)電機(jī)的啟動(dòng)、停止及轉(zhuǎn)向操作。單片機(jī)通過(guò)控制固態(tài)繼電器的輸入端實(shí)現(xiàn)對(duì)電機(jī)的精準(zhǔn)控制。在驅(qū)動(dòng)電路設(shè)計(jì)中引人光耦隔離技術(shù),將單片機(jī)控制電路與電機(jī)強(qiáng)電電路分離,從而提升系統(tǒng)的抗干擾性能和安全性。
2.保護(hù)電路設(shè)計(jì)
(1)相序保護(hù)
通過(guò)相序檢測(cè)電路實(shí)時(shí)監(jiān)控電機(jī)輸入電源的相序狀態(tài)。一旦檢測(cè)到相序錯(cuò)誤,檢測(cè)電路會(huì)向單片機(jī)發(fā)送信號(hào),由單片機(jī)控制固態(tài)繼電器切斷電機(jī)電源,防止因電機(jī)反轉(zhuǎn)導(dǎo)致設(shè)備損壞。
(2)缺相保護(hù)
采用電流互感器對(duì)電機(jī)三相電流進(jìn)行實(shí)時(shí)監(jiān)測(cè)。當(dāng)某一相電流為零時(shí),判斷為缺相故障,單片機(jī)隨即控制固態(tài)繼電器切斷電源。電流互感器將檢測(cè)到的電流信號(hào)轉(zhuǎn)換為電壓信號(hào),經(jīng)過(guò)放大和濾波處理后輸人至單片機(jī)的ADC引腳進(jìn)行進(jìn)一步分析。
(3)電壓檢測(cè)
借助電壓互感器監(jiān)測(cè)電機(jī)輸入電壓。電壓互感器將高壓信號(hào)轉(zhuǎn)換為適合單片機(jī)ADC測(cè)量的低壓信號(hào),單片機(jī)實(shí)時(shí)采集電壓數(shù)據(jù)。若電壓超出設(shè)定范圍,系統(tǒng)將采取相應(yīng)措施(如報(bào)警或切斷電源)
(4)過(guò)載保護(hù)
通過(guò)在電機(jī)主回路中串聯(lián)熱繼電器實(shí)現(xiàn)過(guò)載保護(hù)功能當(dāng)電機(jī)電流超過(guò)額定值并持續(xù)一定時(shí)間后,熱繼電器動(dòng)作,其常閉觸點(diǎn)斷開(kāi),觸發(fā)信號(hào)傳遞給單片機(jī)。
(五)系統(tǒng)供電電路設(shè)計(jì)
系統(tǒng)供電部分通過(guò)一個(gè)120V/450V至12V的變壓器將交流輸入電壓降至12V后經(jīng)整流橋轉(zhuǎn)換為脈動(dòng)直流電,然后通過(guò)大容量濾波電容去除脈動(dòng)直流電中的紋波和噪聲,生成較為平滑的直流電。最后,利用DC/DC轉(zhuǎn)換模塊將濾波后的直流電轉(zhuǎn)換為系統(tǒng)各部分所需的穩(wěn)定電壓。例如,3.3V用于單片機(jī)和傳感器供電,5V用于通信模塊供電。具體電源電路如圖2所示。
四、系統(tǒng)軟件設(shè)計(jì)
(一)軟件總體架構(gòu)設(shè)計(jì)
軟件系統(tǒng)遵循模塊化設(shè)計(jì)理念,主要由以下幾個(gè)核心模塊構(gòu)成:主程序模塊、傳感器數(shù)據(jù)采集模塊、無(wú)線通信模塊、電機(jī)控制模塊以及保護(hù)功能模塊等。主程序模塊負(fù)責(zé)各功能模塊的初始化及任務(wù)調(diào)度。傳感器數(shù)據(jù)采集模塊定時(shí)獲取陀螺儀和溫濕度傳感器的數(shù)據(jù)。無(wú)線通信模塊用于處理與外部控制設(shè)備之間的信息交互。電機(jī)控制模塊依據(jù)接收到的指令和傳感器反饋數(shù)據(jù)對(duì)卷簾機(jī)電機(jī)進(jìn)行精確控制。保護(hù)功能模塊則實(shí)時(shí)監(jiān)控電機(jī)運(yùn)行狀態(tài),在檢測(cè)到異常情況時(shí)采取相應(yīng)的保護(hù)措施以確保系統(tǒng)安全穩(wěn)定運(yùn)行。
本系統(tǒng)的軟件開(kāi)發(fā)基于KeilMDK集成開(kāi)發(fā)環(huán)境,采用C語(yǔ)言進(jìn)行編程實(shí)現(xiàn)。
(二)主要傳感器數(shù)據(jù)采集程序設(shè)計(jì)
1.陀螺儀數(shù)據(jù)采集
圖2電源電路
首先對(duì)MPU6050的PC接口進(jìn)行初始化操作,設(shè)定傳感器的工作模式和采樣頻率。通過(guò)PC通信協(xié)議讀取陀螺儀的原始數(shù)據(jù)(包括角速度和加速度信息)。隨后對(duì)采集的數(shù)據(jù)進(jìn)行濾波處理,運(yùn)用互補(bǔ)濾波算法融合陀螺儀與加速度計(jì)的數(shù)據(jù),消除噪聲干擾和漂移現(xiàn)象,最終獲得準(zhǔn)確的卷市機(jī)安芯與位直信息,即分性廳如下:
/初始化MPU6050void MPU6050_Init(void){I2C_InitO;//初始化PC 接口MPU6050_Write_Reg(MPU6050_PWR_MGMT_1,0x00); //
喚醒芯片設(shè)置采樣頻率等參數(shù)MPU6050_Write_Reg(MPU6050_SMPLRT_DIV,0x07);讀取陀螺儀原始數(shù)據(jù)void MPU6050_Read_Gyro(int16_t *gyro_x,int16_t *groy
int16_t *gyo_z){uint8_tdata[6];MPU6050_Read_Buffer(MPU6050_GYRO_XOUT_H,
data,6;*gyr_x=(int16_t)(datalt;lt;8data);*gyro_y=(int16_)(data2]lt;lt;8ldata); (2丨\"互補(bǔ)濾波算法實(shí)現(xiàn)void Complementary_Filter(float gyrodatal],floataccel_datal,loat
*angle){static float prev_angle =0 5float dt =0.01;1/ 采樣時(shí)間間隔float gyro_angle gyro_datal2| * dt +prev_angle;//根據(jù)陀螺儀
數(shù)據(jù)計(jì)算角度 (2號(hào)
根據(jù)加速度計(jì)數(shù)據(jù)計(jì)算角度*angle= 0.98 * gyro_angle +0.02 *accel_angle;//融合角度prev_angle σ=σ *angle;}2.溫濕度數(shù)據(jù)采集初始化MAX485總線并配置相關(guān)通信參數(shù)。按照MAX485
溫濕度變送器的通信協(xié)議向傳感器發(fā)送讀取命令,接收并解析返回的溫濕度數(shù)據(jù)。同時(shí)對(duì)采集到的數(shù)據(jù)進(jìn)行簡(jiǎn)單的濾波處理,剔除異常值,確保測(cè)量結(jié)果的準(zhǔn)確性,部分程序如下:
初始化MAX485總線void MAX485_Init(void)IUSART_InitO;初始化USART接口用于MAX485通信設(shè)置通信參數(shù)(如波特率、數(shù)據(jù)位等)USART_Set_Params(960O,8,USART_PARITY_NONE,1);1讀取溫濕度數(shù)據(jù)void MAX485_Read_Temp_Humid(float *temp,float *humid){${ \mathrm { u i n t 8 \_ t s e n d \_ b u f ^ { \mathrm { ( 4 ) } } } } = \{ 0 \mathrm { x 0 1 , 0 x 0 3 , 0 x 0 0 , 0 x 0 2 } \} ; / \$ 讀取溫濕度
指令uint8_trecv_buf7};MAX485_Send_Receive(send_buf,4,recv_buf,7); //發(fā)送指
令并接收數(shù)據(jù) !
(三)軟件調(diào)試與優(yōu)化
在軟件調(diào)試階段,通過(guò)使用J-Link模擬器對(duì)程序進(jìn)行在線調(diào)試。通過(guò)設(shè)置斷點(diǎn)并逐步執(zhí)行程序,檢查了程序中的邏輯錯(cuò)誤以及變量值的正確性。同時(shí),還使用了串口調(diào)試助手來(lái)實(shí)時(shí)查看傳感器收集的數(shù)據(jù)以及系統(tǒng)運(yùn)行狀態(tài)信息,有助于快速定位問(wèn)題。對(duì)于在調(diào)試過(guò)程中發(fā)現(xiàn)的問(wèn)題,進(jìn)行了以下優(yōu)化。第一,調(diào)整傳感器數(shù)據(jù)采集頻率??紤]到實(shí)際需求和系統(tǒng)資源狀況,合理設(shè)置了傳感器數(shù)據(jù)采集頻率,在確保數(shù)據(jù)準(zhǔn)確性的同時(shí)減少系統(tǒng)資源占用。例如,陀螺儀的數(shù)據(jù)采集頻率設(shè)為100赫茲,溫度和濕度的數(shù)據(jù)采集頻率設(shè)為10赫茲。第二,提高無(wú)線通信的穩(wěn)定性。引人了一種數(shù)據(jù)重傳機(jī)制,當(dāng)無(wú)線通信模塊未能接收到數(shù)據(jù)時(shí),它會(huì)自動(dòng)重新發(fā)送數(shù)據(jù),從而提高了通信成功率。此外,通信協(xié)議也得到了優(yōu)化,以減少數(shù)據(jù)傳輸量,進(jìn)一步提高了通信效率。第三,優(yōu)化電機(jī)控制邏輯。在電機(jī)啟動(dòng)和停正過(guò)程中,采用了軟啟動(dòng)和軟停止策略,以避免對(duì)電機(jī)造成電流沖擊并延長(zhǎng)其使用壽命。例如,在啟動(dòng)電機(jī)時(shí),逐漸增加脈寬調(diào)制(PWM)占空比以實(shí)現(xiàn)緩慢加速;在停止電機(jī)時(shí),逐漸降低PWM占空比以實(shí)現(xiàn)緩慢減速。
五、系統(tǒng)模擬測(cè)試與結(jié)果分析
構(gòu)建了一個(gè)模擬溫室環(huán)境,并安裝了多組卷簾門(mén)以及陀螺儀、溫度和濕度傳感器等配套設(shè)備。通過(guò)一對(duì)一遠(yuǎn)程控制器、移動(dòng)應(yīng)用程序和計(jì)算機(jī)主機(jī)對(duì)系統(tǒng)進(jìn)行了全面測(cè)試。從測(cè)試結(jié)果來(lái)看,該系統(tǒng)在傳感器測(cè)量精度、無(wú)線通信穩(wěn)定性和電機(jī)控制與保護(hù)功能方面表現(xiàn)良好。陀螺儀和溫度濕度傳感器能夠準(zhǔn)確測(cè)量卷簾門(mén)的姿態(tài)和位置以及溫室環(huán)境的參數(shù),為系統(tǒng)的精確控制提供了可靠的數(shù)據(jù)支持。無(wú)線通信模塊在各種環(huán)境中都能保持穩(wěn)定的通信性能,滿(mǎn)足了對(duì)多組卷簾門(mén)進(jìn)行遠(yuǎn)程控制的要求。電機(jī)控制和保護(hù)功能有效地確保了卷簾電機(jī)的安全穩(wěn)定運(yùn)行,并且各種保護(hù)功能反應(yīng)迅速,能夠及時(shí)避免電機(jī)故障的發(fā)生。然而,在復(fù)雜環(huán)境中,該系統(tǒng)的無(wú)線通信距離和信號(hào)強(qiáng)度仍有待改進(jìn)。未來(lái)可以通過(guò)優(yōu)化天線設(shè)計(jì)或添加信號(hào)中繼設(shè)備來(lái)進(jìn)一步提升通信性能。此外,在智能控制方面,可以進(jìn)一步優(yōu)化控制策略,結(jié)合更多的環(huán)境參數(shù)和作物生長(zhǎng)需求,以實(shí)現(xiàn)更精確的自動(dòng)化控制。
六、結(jié)語(yǔ)
本文成功設(shè)計(jì)并開(kāi)發(fā)了一套基于單片機(jī)的溫控溫室控制系統(tǒng)。通過(guò)合理的硬件電路設(shè)計(jì)和軟件程序編寫(xiě),該系統(tǒng)實(shí)現(xiàn)了對(duì)卷簾機(jī)姿態(tài)和位置的監(jiān)測(cè)、溫度和濕度的監(jiān)測(cè)、多組卷簾機(jī)的同步控制以及各種保護(hù)功能。系統(tǒng)測(cè)試結(jié)果表明,該系統(tǒng)運(yùn)行穩(wěn)定,控制精度高,能夠顯著提高溫室管理的智能化水平。該系統(tǒng)的成功開(kāi)發(fā)為溫室種植提供了高效可靠的卷簾機(jī)控制解決方案,有助于改善作物生長(zhǎng)環(huán)境的質(zhì)量,并推動(dòng)農(nóng)業(yè)生產(chǎn)的現(xiàn)代化。
參考文獻(xiàn)
[1]李明,張偉.基于物聯(lián)網(wǎng)的智能溫室控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J]農(nóng)業(yè)工程學(xué)報(bào),2023.39(11):165-172.
[2]劉芳,孫曉東.基于單片機(jī)的農(nóng)業(yè)溫室環(huán)境監(jiān)測(cè)與控制系統(tǒng)的改進(jìn)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2022,48(10):135-139
[3]張航,李明.MEMS陀螺儀在農(nóng)業(yè)機(jī)械姿態(tài)監(jiān)測(cè)中的應(yīng)用[J].農(nóng)業(yè)工程學(xué)報(bào),2022,38(12):45-52
[4]周新城,吳自然,吳桂初.基于1D-CNN的串聯(lián)故障電弧檢測(cè)[J].消防科學(xué)與技術(shù),2020.39(02):278-281.
[5]蔡俊玲,李生太,張愛(ài)華,等.制種玉米生產(chǎn)中生物降解地膜應(yīng)用現(xiàn)狀與發(fā)展趨勢(shì)[C]//中國(guó)智慧工程研究會(huì).2024社會(huì)發(fā)展與科技創(chuàng)新交流會(huì)論文集,2024:625-626.
基金項(xiàng)目:2025年甘肅省教育科技創(chuàng)新基金項(xiàng)目“基于單片機(jī)的智能溫棚控器的研究與開(kāi)發(fā)”(項(xiàng)目編號(hào):2025A-398)
作者單位:甘肅機(jī)電職業(yè)技術(shù)學(xué)院
■責(zé)任編輯:張津平 尚丹