郭華杰,吳才章
(河南工業大學 電氣工程學院,河南 鄭州 450001)
基于μC/OS-II的糧食水分在線檢測系統設計
郭華杰,吳才章
(河南工業大學 電氣工程學院,河南 鄭州450001)
針對當前糧食水分檢測精度低以及在線實時檢測困難的情況,使用經過實驗標定的MS-S-2001微波水分傳感器,采用將μC/OS-II嵌入式系統移植到STM32單片機的方法;利用μC/OS-II的郵箱通信機制實現對MS-S-2001的數據采集,由μC/OS-II的可搶占式原則進行系統多任務調度,結合STM32的FSMC總線,實現對人機界面的繪制、實時數據顯示及水分動態曲線繪制。經過小麥水分實驗的驗證研究表明,該檢測系統具有實時性好、穩定性強、可靠性高等優點,其水分測量誤差控制在 以內,完全能夠滿足在線水分檢測的要求。
水分檢測;μC/OS-II;STM32單片機;微波水分傳感器
糧食水分含量直接影響著糧食的工藝過程、儲藏過程和流通過程。在糧食進出倉、面粉加工等多數情況下,要求能夠即時動態的預報糧食水分或在線實時檢測糧食水分,即要求水分檢測在被測物的變化過程中在線式進行,這是許多傳統的水分測量方法如電阻法、電容法等難以達到的[1]。
針對當前糧食水分難以實時在線檢測[2],應用現代檢測技術,采用靈敏度高、速度快、對環境敏感度小[3-6]的微波檢測方法對糧食水分進行在線無損檢測。在此基礎上,結合嵌入式實時操作系統μC/OS-II技術,實現快速、實時在線糧食水分檢測,開發設計面向糧食收儲、加工等場合的糧食水分實時在線檢測系統。
上位機采用VB6.0和Access數據庫實現對數據的顯示、存儲等后續處理;當水分含量過低或過高時(由按鍵電路設置)驅動報警電路自動報警。系統總體結構圖如圖1所示。

圖1 系統總體結構圖Fig.1 Structure diagram of the system
該系統采用經過標定之后的高精度MS-S-2001微波水分傳感器完成對糧食水分的實時采集。微處理器將采集得到的糧食溫度、水分等信息通過TFT模塊進行實時顯示,同時動態繪制水分曲線;通過串口將采集到的數據送給上位機,
系統硬件電路設計包括:數據采集電路、人機接口電路、按鍵電路、報警電路、數據通信電路。該系統采用STM32單片機作為控制器。STM32單片機具有FSMC接口,靈活性高,降低了系統設計的復雜性,提高了運行系統的穩定性與可靠性[7]。
2.1微波水分傳感器
MS-S-2001微波水分傳感器是專門為測量工業生產中使用的固體物料的水分含量而設計,它可以分別通過模擬量(1-5 V)信號和數字量信號與PC或者遠程控制器進行連接和通信,實現對糧食水分等數據的實時在線采集。
2.1.1工作原理
多數微波水分傳感器檢測水分原理[1,3,8]是水對微波能量的吸收和反射等作用,導致微波信號的相位、幅值或頻率等參數變化的原理進行水分含量檢測的。而MS-S-2001微波水分傳感器工作原理是通過發射微波(1 GHZ),微波在被測物質的探頭上不斷的進行發射和被反射形成傳播回路,經由被測物質傳播計算出傳播時間來確定傳感器周圍被測物質的介電常數,然后通過被測物質介電常數與土壤含水率的經驗公式推算出物料的含水率。同時,通過內嵌的溫度傳感器信號進行溫度補償,可以獲得糧食水分含量與微波檢測信號接近理想的線性關系,進而提高水分的檢測精度。總之,MS-S-2001可以有效的克服物料和水分快速變化所引起的干擾,使測量結果穩定可靠,測量精度可高達0.1%。其水分檢測原理示意圖如圖2所示。

圖2 MS-S-2001水分檢測示意圖Fig.2 MS-S-2001 moisture detection schematic diagram
2.1.2曲線標定
MS-S-2001傳感器具有物料標定功能,用戶可以根據工業現場的實際需求,對該傳感器進行物料水分的實驗值確定,然后將其標定入微波傳感器及進行水分曲線標定,使傳感器的微波原始值與真實的物料水分相對應,做出的曲線才既能夠用于測量物料水分,又能進一步提高水分檢測精度。
曲線標定實驗所需器材:小麥、烘箱(型號DHG-9037A)、電子稱(型號MELLTER TOLEDO MS-105)、水桶、量杯和攪拌設備。
實驗步驟如下:1)取一批小麥,經過篩分去除雜質;2)先取出一小部分樣品,用MS-S-2001先測量出微波水分反射值,再由《谷物及谷物制品水分含量測定》基本法(即烘箱法)進行小麥含水率的確定;3)將剩余的小麥分成若干等份,按照比例加水混合,制成不同水分含量的樣品,貼好標簽,攪拌均勻后放入密封盒內,放置24 h(注意該過程要保證水分沒有散失);4)將不同水分含量的樣品按照步驟2進行測定;5)根據標定的曲線測定實際樣品,記錄得到的水分,然后同烘箱法進行對比,通過多組對比來確定測量的準確性。
在實驗驗證時,可能會出現所得的水分過小或者放置在水桶不同位置時水分測量結果不同,這可能是由于MS-S-2001測得的是體積含水量,物料的緊實程度出現變化會影響測量結果隨之變化,這與微波測量方法容易受到物料的形狀、密度、厚度的影響[9]相一致;另一方面,同一批小麥顆粒之間及顆粒內部水分均勻度差異也會造成測量結果的不精確。因而試驗標定曲線時,需要注意以下幾點:1)加水后為了讓小麥盡可能多的吸收水分,在放置期間的固定時間間隔還需要不斷地翻動、傾倒;2)靜態測量時:小麥充分吸收水分后再進行測量,測量的環境、測量方式要與所做試驗的環境、步驟盡可能的保持一致;3)每次測量時最好反復的傾倒,保證微波傳感器測量面一致;4)翻動、傾倒小麥時,不能讓小麥過多的撒落在桶外;5)微波水分反射值的測量時間最好在5分鐘左右,然后取這期間的平均值與小麥實際含水率進行一一對應。
經實驗確定的11組數據如表1所示。

表1 實驗數據表Tab.1 Experimental data table
將以上試驗數據標定入微波水分傳感器,所標定的曲線如圖3所示。
2.2人機接口電路設計
系統的人機接口電路包括TFT顯示電路及上位機軟件。顯示電路采用的是2.4寸TFT液晶顯示模塊,顯示分辨率為320*240,;使用ILI9325芯片控制液晶屏,通過TSC2046芯片控制觸摸屏,可顯示中英文字符、彩色、數字、圖案等;具有并行接口分8位和16位。STM32的FSMC支持8/16/32位的數據寬度,由于在線水分檢測的快速、實時檢測需求,硬件設計使用接口為16位并口,通過FSMC模擬8080接口進行指令和數據的傳輸,硬件設計的FSMC_NE1作為8080_CS片選信號,軟件需要選取連接的外部存儲器為 NOR FLASH;FSMC_A16作為8080_D/CX數據/命令信號,軟件需要定義的RAM基地址為0X60020000。這里需要注意的是當FSMC使用不同的區作為片選信號時,需要選擇使用不同的外部存儲設備(NOR/PSRAM、NAND、PC卡設備);選擇不同的地址線時,RAM的基地址需要重新計算。

圖3 水分曲線標定圖Fig.3 Moisture curve calibration diagram
μC/OS-II是一個可移植、可固化的、可裁剪的、占先式的多任務實時內核,主要是面向中小型的嵌入式系統,具有執行效率高、占用空間小、實時性能優良和可擴展性等特點[10]。軟件設計主要包括μC/OS-II的移植,系統任務建立,STM32單片機與MS-S-2001的通訊和人機界面。
3.1μC/OS-II在STM32單片機上的移植
移植 μC/OS-II需要修改與處理器相關的 3個文件:OS_CPU.H (C語言頭文件)、OS_CPU_C.C(C語言源文件)、OS_CPU_ASM.ASM(匯編源程序文件)[10-11]。μC/OS-II中移植部分如表2所示。
3.2系統任務建立
在μC/OS-II實時操作系統中建立并行存在的 6個任務,按照優先級從高到低分別是系統主任務、串口發送任務、串口接收處理任務、LED閃爍任務、觸摸屏任務、用戶界面任務。

表2 μC/OS-II移植修改部分Tab.2 μC/OS-II transplant modified part
main()主函數流程圖如圖4所示。其主要功能是用來完成系統主任務的建立、實時操作系統的啟動。系統主任務優先級別最高,在μC/OS-II系統啟動后建立其余5個任務,并根據其各自的優先級進行任務調度、運行。其中硬件平臺初始化程序:包括系統時鐘初始化、串口中斷源配置、串口初始化及參數配置、TFT接口及FSMC初始化等。
3.3STM32單片機與MS-S-2001通信
根據MS-S-2001所特有的modubus協議設計數據發送和接收處理任務,這兩個任務函數的設計也是整個實時系統實現的關鍵。當成功接收到微波傳感器響應后,通過郵箱發送函數OSMboxPost()通知接收處理任務進行接收數據的處理,否則接收處理函數中的OSMboxPend()函數會一直等待串口接收成功的信號量;然后根據MS-S-2001所特有的CRC錯誤校驗,判斷數據接收是否正確,正確且水分值在合理范圍內則進行數據的處理、顯示,否則驅動報警電路報警,重新等待串口接收成功的信號量。接收處理任務流程圖如圖5所示。
3.4人機界面
人機界面包括兩個部分:靜態部分和動態部分。靜態部分用來顯示固定不變的橫縱坐標的刻度值及必要的中英文字符顯示;動態部分用來顯示運行時間 (0-200S),在達到200S后進行實時曲線部分的刷新;顯示采集的溫度、水分值等信息。動態曲線繪制的流程圖如圖6所示。
為了驗證系統的測量精度,在實驗室進行了在線水分檢測試驗,并與實際理論值(加水量(l)=(kg)進行比較。測量結果如表3所示。

圖4 系統流程圖Fig.4 System flow chart

圖5 接收處理任務流程圖Fig.5 Receive processing task flow chart

圖6 曲線繪制流程圖Fig.6 Curve drawing flow chart
由表3數據可知:由于實驗標定微波傳感器數據及μC/ OS-II的移植,使得實時在線水分檢測的誤差范圍在以內,解決了在線水分檢測的難點與提高檢測精度的問題。
系統采用高速單片機STM32作微處理器和移植μC/OS-II,大幅度提升設計系統的實時性;同時具有數據處理速度快、較高的穩定性和可靠性等優點,使得該系統完全能夠滿足在線實時檢測水分的場合。而且μC/OS-II作為源代碼公開的實時內核及系統可裁剪性、可擴展性的特征,極大的增加了設計系統的靈活性,使得系統更容易管理、維護和系統升級。

表3 水分檢測數據及誤差Tab.3 Data and error of the system
實驗和測試結果再次表明所設計的系統運行穩定可靠,具有良好的實時性;該檢測系統的設計解決了糧食水分在線檢測的難題,且檢測結果在誤差允許的范圍內滿足國際要求,完全能夠為糧食的收購、運輸和儲藏提供強有力的技術保障。參考文獻:
[1]杜先鋒,張勝全,張永林.基于微波的糧食水分檢測技術與系統[J].武漢工業學報,2004,23(2):32-34.
[2]曹云東,林國棟,張陽,等.糧食水分在線檢測控制系統[J].儀表技術與傳感器,2003(4):17-19.
[3]偉利國,張小超,胡小安,等.微波在線式糧食水分檢測系統[J].農機化研究,2009(6):145-147.
[4]劉文生,張永林,肖慧.小麥著水中微波水分測控系統設計研究[J].糧油加工與食品機械,2003(12):52-54.
[5]殷曉慧.采用微波測水與自適應控制的小麥著水系統[J].面粉通訊,2007(5):32-33.
[6]孫健,周展明,唐懷建.國內外糧食水分快速檢測方法的研究[J].糧食儲藏,2007(3):46-49.
[7]黃智偉,王兵,朱衛華.ARM微控制器應用設計與實踐[M].北京:北京航空航天大學出版社,2012.
[8]王永安,殷海雙,段志偉,等.基于單片機AT89C51的糧食水分檢測系統[J].化工自動化與儀表,2013,40(4):444-446,493.
[9]翟寶峰,郭宏林,許會.糧食水分檢測技術的綜合分析及發展狀況[J].武漢工業學院學報,2001,5(23):413-416.
[10]LABROSSE J Jean.嵌入式實時操作系統[M].2版.邵貝貝等譯,北京:北京航空航天大學出版社,2003.
[11]趙劉強,林永君,馬良玉,等.基于μC/OS-II嵌入式系統的數據采集系統[J].嵌入式系統應用,2010,26(2-2):62,65-66.
Design of grain moisture online detection based on μC/OS-II
GUO Hua-jie,WU Cai-zhang
(College of Electrical Engineering,Henan University of Technology,Zhengzhou 450001,China)
Using experimentally calibrated MS-S-2001 microwave moisture sensor,and the μC/OS-II embedded system transplanted to the STM32 microprocessor method to resolve the current low grain moisture detection precision as well as online real-time detection difficult circumstance;using μC/OS-II's mailbox communication mechanism to realize MS-S-2001 data acquisition;using the principle of μC/OS-II preemptive multi-task scheduling system,combined with the STM32 FSMC bus to achieve the user graphical interface drawing,real-time data display and dynamic curves draw.Proven wheat moisture experiments show that the detection system has the advantages of good real-time,high stability,high reliability,and its moisture measurement error control in less than,which can meet the requirements of the online moisture measurement.
moisture detection;μC/OS-II;STM32 microprocessor;microwave moisture sensor
TP609
A
1674-6236(2016)03-0061-04
2015-10-26稿件編號:201510189
2015年糧食公益性行業科研專項(201513003-3)
郭華杰(1991—),男,河南商丘人,碩士研究生。研究方向:檢測技術和智能儀表。