郝 倩,張亞楠
(河南工業職業技術學院,河南 南陽 473000)
目前,我國農業機械化率明顯落后于歐美等發達國家,且我國農機行業大多數中高端產品仍以進口為主。未來,隨著農墾改革的持續推進,促使農地集約化管理,大型農機的需求將不斷增加。此外,我國聯合收割機在向大型、高效、多功能與智能控制發展過程中,存在喂入量提升、多種作物適應性、作業質量自動調控及智能測產等智能化技術缺失,制約了我國農機化綜合生產水平進一步提高。為此,以解決聯合收割機智能測產為出發點,設計了一套基于Linux和Exynos4412的聯合收割機測產系統。
收割機測產手段采用的流量傳感器主要有沖量、容積及光電式3種。其中,以沖量式結構最為簡單、成本最為低廉,因此本文采用該方法。沖量式流量傳感器結構示意如圖1所示。
該傳感器由懸梁、外殼和沖量板三部分構成,在實際應用中被安裝在收割機的儲藏倉上方。作物經過脫粒、谷穗分離后被拋出沖擊到流量傳感器的沖量板上,沖量板帶動懸梁發生形變,引起懸梁內部電阻變化,從而輸出與沖擊作物重量相對應的電壓u。其原理如下:
由沖量守恒定理得
F(t)Δt=Δm(t)Δv
(1)
(2)
其中,F(t)為作物的對沖量板的沖擊力;Δt為作物對沖量板的作用時間;Δm(t)為t時刻作用時間段的作物質量之和;q(t)為t時刻作物對沖量板的沖量之和。
對于沖量式流量測重傳感器,假設聯合收割機運行速度恒定,則單位時間內作物質量與流量傳感器沖量的計算公式為
mi=kui
(3)
其中,k為沖量系數;ui為流量傳感器瞬時電壓。

圖1 沖量式流量傳感器結構示意圖
聯合收割機在正常作業過程中,作物從收割臺進入,由輸送裝置喂入至脫粒裝置處,經過脫粒、谷穗分離后集中到儲藏倉,然后由傳送帶將糧食送到運輸車上。其中,作物產量由測產系統通過收獲的作物質量、面積、谷物含水率計算得到。在計算過程中,由于收割機每一單位時間的數據不連續且變化較大,因此每隔單位周期T進行1次數據采集。第i塊單位區域作物單產量為
(4)
其中,fi為第i塊單位區域作物單產量(kg/hm2);mi為第i塊區域作物總產量(kg);vi為該區域收割機的運行速度(m/s);wi為收割機的割窗寬度(m)。
由于在作物收割時水分占據質量比較大,因此在測產過程中需要去除作物的含水量,以合格作物含水率進行計算。另外,對作物的收獲損失也要進行考慮,則第i塊區域作物單產量(無含水量)為
(5)
其中,fid為第i塊單位區域作物的干重單產量;hα為收割時作物的含水量;hγ為收割時作物的含水量;η為作物收獲損失率。
在聯合收割機測產作業過程中,各單位產量可以存在差異,因此計算某一區域產量時結合多個單位區域數據會得到較為準確的結果。假設第k個區域內有n個單位區域采樣點,結合式(3)和式(5)可得該區域的干重單產量fk為
(6)
聯合收割機測產系統是結合傳感器和微處理器技術優勢的一種智能型測量系統,包括Exynos4412、SD存儲卡,以及沖量式流量、含水率、地速、割臺高度等傳感器,其組成框架如圖2所示。

圖2 聯合收割機測產系統組成框架圖
當聯合收割機測產系統工作時,傳感器組會測出單位時間T的谷物流量、作物含水率、收割機前行速度及割臺高度等,同時將速度經過處理后發送給微處理器進行單位面積的干重產量計算,最后將產量實時顯示在顯示終端上和存儲至SD卡。
1)Exynos4412嵌入式硬件平臺的搭建。Exynos4412嵌入式平臺的搭建主要包括CPU的選型、Linux操作系統的確定,以及SDRAM(512MB)、NandFlash(1G)、NorFlash(16MB)、網口(10M)、串口、SD卡和嵌入式外圍設備的參數選定。該平臺由Exynos4412、顯示屏、數據存儲、通信和電機啟動驅動模塊組成。Exynos4412嵌入式平臺框架如圖3所示。

圖3 Exynos4412嵌入式平臺框架圖
由圖3可知:該平臺主要包括三大模塊:①CPU及SDRAM、NAND Flash存儲模塊;②電源、時鐘和復位電路;③顯示屏和電機驅動模塊。
2)測產系統流量傳感器電路設計。測產系統流量傳感器電路是整個系統最為核心的部分,作物收割質量由數據采集電路將質量信號轉化為電壓信號,這部分由沖量式流量傳感器實現。沖量式流量傳感器產生的電壓比較微弱(mV級別),因此通常需要運放電路放大處理后再接至Exynos4412的GPIO管腳。測產系統流量傳感器電路設計如圖4所示。

圖4 測產系統流量傳感器電路圖
測產系統采用BLR高精度橋式沖壓式電路采集作物沖擊沖量板的質量,該橋式電路精度高、穩定性好。該模塊供電電壓為+12V,輸出的電壓信號在mV級別。一般來說,mV級別的信號放大需要極低的失調電壓,因此采用ADI公司生產的運算放大器AD8554。該運放失調電壓典型值為1uV,用于mV信號放大非常合適。
在收割機作業過程中,可能會因為地形和收割機自身的振動而使傳感器采集信號受到噪聲的影響。沖量產生的電壓信號相對于噪聲是一種低頻信號,在沖量信號經過AD8554運放放大處理后可以接一個低通濾波器對噪聲進行去噪處理。本文采用一個OP07的低通濾波器對噪聲信號進行處理。
1)Exynos4412嵌入式軟件平臺的移植。Exynos4412軟件平臺的移植是通過交叉開發工具在宿主機上,向硬件平臺移植Linux系統。Exynos4412軟件平臺的移植流程如圖5所示。

圖5 Exynos4412軟件平臺的移植流程
Step1:創建交叉開發環境。該部分主要是在宿主機上,搭建編輯器、交叉編譯器、交叉鏈接器及交叉調試器等工具鏈。
Step2:移植Bootloader。盡管各種Bootloader之間細節差異較大,但具體流程卻大相徑庭,主要包括BL1和BL2兩部分。BL1采用匯編語言編寫,首先是進行基本的硬件初始化,加載BL2到RAM,并跳轉到BL2處開始執行BL2的代碼;BL2采用C語言編寫,首先是對時鐘信號、串口的初始化,然后對系統內存映射進行檢測,接著加載內核鏡像和fs根文件系統,最后設置Linux的啟動參數。
Step3:移植Linux內核。Linux內核代碼分為Stage1和Stage2兩個階段。Stage1階段主要是檢查Linux內核是否支持該CPU和開發板;Stage2階段則是進行MMU初始化,清除bss段,設置SP堆棧,初始化系統各個軟件子系統,掛載fs根文件系統,并運行init進程。
Step4:制作根文件Ramdisk.img。本文采用Busybox-1.22.1工具制作根文件系統,主要包括Busybox源碼的編譯、配置、安裝、庫的添加、inittab文件的添加、fstab文件的添加及rcS文件的創建等。
Step5:驅動程序的移植。主要是對電機驅動、網卡驅動、USB及UART串口驅動進行移植。
Step6:開發應用程序。編寫聯合收割機測產子系統程序等。
2)測產系統主程序設計。聯合收割機測產系統軟件包括主程序、測產子系統、數據采集與傳輸、顯示、終端、串口通訊及初始化模塊等。測產系統主程序框圖如圖6所示。

圖6 測產系統主程序流程圖
主程序核心代碼如下所示:
int main(void)
{
uint8_t ret = 0;//判斷硬件控制是否成功,1為成功
int8_t send_pack_count = 0;
uint8_t send_pack_buf[8] = {0};
SystemInit();
GPIOInit();
// Enables clock for GPIO
HardwareInit();// 相關硬件初始化
LPC_IOCON->PIO0_1 &= ~0x07;
LPC_IOCON->PIO0_1 |= 0x01;/* CLK OUT */
SysTick_Config(48000);
SPI_IOConfig(0);//SPI0 initialization(LED屏相關配置)
SPI_Init(0, 8, 2);
OLED_Init_I();
//Led屏初始化
UARTInit(115200);
NVIC_SetPriority(UART_IRQn, 2);
SPI_IOConfig(1);//SPI1 initialization
SPI_Init(1, 8, 2);
SPI752_Init(1, 115200);//Set SPI752_Init
WDTInit();/* 看門狗初始化 */
delay_ms(200);
weight _signal();
}
應用本文設計的聯合收割機測產系統,于水稻收獲時節在某水稻種植示范區進行了水稻收割測產試驗,以驗證系統測產準確性和穩定性。試驗條件如表1所示。為了提高試驗的可靠性和準確性,本文一共進行了8次測試,測試結果如表2所示。

表1 試驗條件

表2 測試結果
由表2可以看出:聯合收割機測產系統相對誤差在8%內,準確率較高,能夠達到設計要求。
針對現代農業智能測產技術的發展需求,以作物測產系統為研究對象,設計了基于Linux和Exynos4412的聯合收割機測產系統。該系統硬件由Exynos4412處理器結合沖量式流量傳感器、流量傳感器電路設計和顯示界面組成;軟件以C語言編寫開發,包括linux底層系統的移植、系統主程序及測產子系統等。試驗結果表明:聯合收割機測產系統相對誤差在8個百分點以內,準確率較高,能夠達到設計要求。