毛凌青 匡迎春 黃佳琪 鄧力元



摘要:隨著科學的發展與時代的進步,傳統的農業已經向著智能化、自動化、信息化的方向發展。本文主要說明設計制造一個基于STM32單片機的生豬生長參數自動檢測系統。TFT LCD觸摸液晶屏顯示與發出指令,射頻模塊識別每一頭生豬,HC-SR04超聲波測量生豬的高度,MLX90614紅外測溫模塊測量生豬的體溫,HX711重量傳感器測量體重并且STM32采集AD數據返回體重值。通過這一系列的模塊測量以及STM32對其數據采集,最后可完成這套自動檢測系統的設計,實現生豬檢測自動化、智能化。
關鍵詞:生豬;STM32單片機;HC-SR04超聲波;MLX90614紅外線;自動檢測
中圖分類號:S24? ? 文獻標識碼:A
文章編號:1009-3044(2020)02-0244-03
Abstract: With the development of science and the progress of the times, traditional agriculture has developed towards the direction of intelligence, automation and information. This paper mainly describes the design and manufacture of an automatic detection system for pig growth parameters Based on STM32 microcontroller. The TFT LCD touches the LCD screen to display and issue commands, the RF module identifies each pig, the HC-SR04 ultrasonic measures the height of the pig, the MLX90614 infrared temperature module measures the body temperature of the pig, the HX711 weight sensor measures the weight and the STM32 collects the AD data to return the weight. Through this series of module measurement and STM32 data acquisition, the design of this automatic detection system can be completed, and the pig detection is automated and intelligent.
Key words: Pig; STM32 single chip; HC-SR04 ultrasonic; MLX90614 infrared; automatic detection
1 概述
隨著現代科學技術的發展與進步,出現了越來越多的智能化設備,農業生產已經向著智能化、機械化、自動化的方向發展。但是目前生豬養殖還未向著智能化、自動化方向發展,傳統養殖的方式依舊占據的大多數。近年來隨著各種各樣的單片機被制作與研發,單片機已經應用于工業控制領域、農業領域等一系列領域。為了讓農場主了解生豬生長的狀況以及預防應對各種如傳染病一類的疾病,本文設計了一個基于STM32單片機的生豬生長參數自動檢測系統,能夠檢測每一頭生豬的身高、體重、體溫,可以通過STM32的TFTLCD液晶觸摸顯示屏顯示生豬的身高、體重、體溫,通過按鍵可以切換不同的生豬顯示信息,并且可以通過STM32單片機將數據傳送給PC主機。從而實現對生豬各種生長參數自動檢測以及監控預防生豬的一些疾病。本系統實用性好,發展前途較好,是一個優秀穩定的生豬生長參數自動檢測系統。
2 系統結構
本系統將STM32F103ZET6作為主要的控制芯片,整個設備主要由STM32F103ZET6單片機系統板、HC-SR04超聲波模塊、MLX90614紅外測溫模塊、HX711重量傳感器、RFID射頻識別模塊、TFT LCD觸摸液晶屏組成。利用射頻識別系統,在每只生豬的耳朵上設置一個電子耳標,從而可以識別出每頭生豬。在生豬進食的附近設置檢測站,當生豬進食的時候,超聲波可以檢測到生豬與天花板的距離,從而根據整個房間的高度算出生豬的身高,紅外測溫模塊不需要直接接觸生豬,可以間接測出生豬的體溫,在生豬進食的檢測站下放置HX711重量傳感器,可以測出生豬的體重參數。STM32單片機可以采集紅外測溫模塊和重量傳感器的AD數值,從而得到具體的體重體溫參數。最后通過WIFI通信模塊將數據傳送給PC主機。系統結構圖如圖1所示。
3 系統硬件設計
3.1 單片機選用
STM32F103系列屬于中低端的32位ARM微控制器。STM32F103系列最高工作頻率72MHZ,具有從256K至512K字節的閃存程序存儲器、高達64K字節的SRAM。該系列芯片性能強大,性能遠遠高于51單片機,而成本則低于STM32F4系列單片機,完全適用于本系統的設計。
3.2 射頻識別模塊
射頻識別技術(Radio Frequency Identification,簡稱RFID)是一種非接觸式的自動識別技術,它通過射頻信號可以自動識別目標對象,并且可以進行物品追蹤和快速的數據交換[1]。該模塊的目的是對于每一頭生豬進行識別,在生豬的耳朵上設置一個電子標簽,當生豬進入傳感器范圍內,電子標簽能夠發送每一頭生豬對應的編號以及其生理參數等信息給讀寫器,從而STM32單片機可以識別出每一頭生豬,同時也對該生豬的各項生理參數進行檢測并且將數據更新返回至電子標簽。養殖業主便能輕易地了解到每一頭生豬的生長狀況。
3.3 HC-SR04超聲波模塊
HC-SR04超聲波測距模塊是一種非接觸式的測距傳感器,可提供2cm-400cm的非接觸式距離感測,實測數據顯示,測量精度較高,性能穩定[2]。在本系統中該模塊的作用是測量生豬的垂直高度,HC-SR04精確度高,最小測量單位可以達到到1mm,生豬的垂直高度一般在50cm到90cm之間,所以HC-SR04完全可以精確測量生豬的垂直高度。
3.4 MLX90614模塊
MLX90614 是一款用于非接觸式溫度測量的紅外溫度計。MLX90614 集成有低噪聲放大器、17 位 ADC 和強大的 DSP 單元,因此溫度計兼具高精度和高分辨率。MLX90614可以在不接觸物體情況下,利用物體自身紅外輻射,直接測量溫度,實現非接觸實時采集顯示溫度數據[3]。MLX90614具有體積小、精度高、測溫范圍寬等優點,該傳感器具有結構簡單、性價比高、工藝性強,便于實現批量化生產等特點[4]。在本系統中該模塊用于測量生豬的體溫,MLX90614對物體溫度的測量范圍在-40至85°C,精度高達0.5°C,分辨率高達0.02°C,MLX90614完全可以精準測量生豬的體溫。
3.5 HX711模塊
HX711是一款專為高精度電子秤而設計的24位A/D轉換器芯片。用HX711設計的電子秤精度可達1g,測量的一致性好,測量誤差為+/-1g,且成本低、體積小等優點,可廣泛應用于小量程高精度電子稱重的場合[5]。本系統使用HX711模塊采集生豬體重信息,通過STM32單片機進行AD采樣,讀取HX711的24位AD值,從而得到生豬的體重參數。HX711精度高、測量范圍大,足夠生豬體重的測量。
本文設計了一個全橋電路,該全橋電路由四個壓力傳感器組成,每個傳感器最大負載值為50kg,所以總的最大負載為200kg。而成年生豬的體重在90kg到120kg之間,所以該全橋電路組成的重力傳感器完全能夠測量生豬體重。下圖2是全橋電路電路圖。R1、R2、R3、R4應變電阻相同,C接HX711的E+端口,A接HX711的E-端口,由HX711對全橋電路AC端提供電壓。B接HX711的A+端口,D接HX711的A-端口。由HX711采集BD端的電壓變化。傳感器無負載時,該傳感器上BD端的電壓U0為未放重物的初始電壓,可通過HX711采集未放重物時對應的AD初值。當有重物在傳感器上時,應變片電阻會發送變化,導致UBD會發送變化,因為所用四個應變片完全相同,所以△UBD≈E*dR/R。Ks為材料靈敏系數,應變為ε,電阻變化率為dR/R,有公式dR/R=Ks*ε。根據胡克定律,固體材料受力之后,材料中的應力 σ與ε成正比[6]。所以dR/R與應力σ成正比,即輸出電壓變化△UBD與傳感器所受應力成正比。測量傳感器負載時的AD值,再與傳感器無負載時的AD值比較,通過實際測量重量轉換公式即體重=(ADnow-ADinit)/7800,可算出物體的重量。
4 系統軟件設計
4.1 系統主程序
首先進行設備初始化,當生豬在進食站進食時,STM32單片機控制射頻讀寫器發送射頻信號給生豬上的射頻卡,當貼有電子標簽的生豬進入發射天線工作區域時,就能將存儲在電子標簽的數據發送出去,讀寫器便能讀取出電子標簽內的數據信息,從而達到識別的目的。之后進行生豬生長參數測量。將得到的數據進行存儲并且通過WiFi模塊傳送給PC主機。系統主流程圖如圖3所示。
4.2 射頻識別模塊程序
將射頻讀寫器進行初始化,通信過程就是射頻讀寫器與射頻卡之間進行通信,通信方式為半雙工通信,所以在通信之前要建立一定的通信協議。射頻讀寫器發出指令信號,如果射頻卡在射頻信號范圍內就會接收到信號,射頻卡接受信號后指令譯碼,處于被有限狀態的控制中,處理數據,并把處理后的結果返回。該模塊的工作流程圖如圖4所示。
4.3 信息采集模塊程
生豬識別之后,可通過STM32F103ZET6單片機采集生豬的垂直高度、體重、體溫等生理參數。將采集的數據保存并返回至生豬的電子耳標的射頻卡中,還可將生豬生理數據通過WiFi模塊傳至PC主機。該模塊的工作流程圖如圖5所示。
5 總結
本系統將STM32F103ZET6作為主控芯片,為每一頭生豬安裝電子耳標,通過射頻識別模塊識別每一頭生豬。利用STM32F103ZET6單片機測量與采集生豬的身高、體重、體溫等生長生理參數,并且將數據傳送至PC主機。實驗證明本系統成本低,性能好,可靠性較高,系統性能完善。通過本系統,用戶可以直觀地觀測到生豬生長的生理狀況,較大程度上可以滿足用戶需求,適用于用戶對生豬生長參數的自動檢測。
參考文獻:
[1] 鄧澤群.射頻識別RFID技術及其應用[J].中外企業家,2019(25):131.
[2] 蘇琳.基于HC-SR04的超聲波測距器的設計[J].科技信息,2012(09):125+124.
[3] 余國衛.基于單片機的非接觸式測溫系統[J].電腦知識與技術,2017,13(24):206-207.
[4] 徐留根. 基于MLX90614的數字式紅外溫度傳感器設計[A]. 航空工業測控技術發展中心、中國航空學會測試技術分會、狀態監測特種傳感技術航空科技重點實驗室.“測試性與智能測控技術”——2018年中國航空測控技術專刊[C].航空工業測控技術發展中心、中國航空學會測試技術分會、狀態監測特種傳感技術航空科技重點實驗室:中國航空學會,2018:3.
[5] 葛海江.基于HX711的高精度電子稱重研究[J].電子測試,2019(10):31-32.
[6] 段然,肖立峰.材料拉伸試驗中影響應變片測量精度的因素分析[J].機械設計,2013,30(12):76-80.
【通聯編輯:梁書】