郝 倩,張亞楠
(河南工業(yè)職業(yè)技術(shù)學(xué)院,河南 南陽(yáng) 473000)
目前,我國(guó)農(nóng)業(yè)機(jī)械化率明顯落后于歐美等發(fā)達(dá)國(guó)家,且我國(guó)農(nóng)機(jī)行業(yè)大多數(shù)中高端產(chǎn)品仍以進(jìn)口為主。未來(lái),隨著農(nóng)墾改革的持續(xù)推進(jìn),促使農(nóng)地集約化管理,大型農(nóng)機(jī)的需求將不斷增加。此外,我國(guó)聯(lián)合收割機(jī)在向大型、高效、多功能與智能控制發(fā)展過(guò)程中,存在喂入量提升、多種作物適應(yīng)性、作業(yè)質(zhì)量自動(dòng)調(diào)控及智能測(cè)產(chǎn)等智能化技術(shù)缺失,制約了我國(guó)農(nóng)機(jī)化綜合生產(chǎn)水平進(jìn)一步提高。為此,以解決聯(lián)合收割機(jī)智能測(cè)產(chǎn)為出發(fā)點(diǎn),設(shè)計(jì)了一套基于Linux和Exynos4412的聯(lián)合收割機(jī)測(cè)產(chǎn)系統(tǒng)。
收割機(jī)測(cè)產(chǎn)手段采用的流量傳感器主要有沖量、容積及光電式3種。其中,以沖量式結(jié)構(gòu)最為簡(jiǎn)單、成本最為低廉,因此本文采用該方法。沖量式流量傳感器結(jié)構(gòu)示意如圖1所示。
該傳感器由懸梁、外殼和沖量板三部分構(gòu)成,在實(shí)際應(yīng)用中被安裝在收割機(jī)的儲(chǔ)藏倉(cāng)上方。作物經(jīng)過(guò)脫粒、谷穗分離后被拋出沖擊到流量傳感器的沖量板上,沖量板帶動(dòng)懸梁發(fā)生形變,引起懸梁內(nèi)部電阻變化,從而輸出與沖擊作物重量相對(duì)應(yīng)的電壓u。其原理如下:
由沖量守恒定理得
F(t)Δt=Δm(t)Δv
(1)
(2)
其中,F(xiàn)(t)為作物的對(duì)沖量板的沖擊力;Δt為作物對(duì)沖量板的作用時(shí)間;Δm(t)為t時(shí)刻作用時(shí)間段的作物質(zhì)量之和;q(t)為t時(shí)刻作物對(duì)沖量板的沖量之和。
對(duì)于沖量式流量測(cè)重傳感器,假設(shè)聯(lián)合收割機(jī)運(yùn)行速度恒定,則單位時(shí)間內(nèi)作物質(zhì)量與流量傳感器沖量的計(jì)算公式為
mi=kui
(3)
其中,k為沖量系數(shù);ui為流量傳感器瞬時(shí)電壓。
圖1 沖量式流量傳感器結(jié)構(gòu)示意圖
聯(lián)合收割機(jī)在正常作業(yè)過(guò)程中,作物從收割臺(tái)進(jìn)入,由輸送裝置喂入至脫粒裝置處,經(jīng)過(guò)脫粒、谷穗分離后集中到儲(chǔ)藏倉(cāng),然后由傳送帶將糧食送到運(yùn)輸車上。其中,作物產(chǎn)量由測(cè)產(chǎn)系統(tǒng)通過(guò)收獲的作物質(zhì)量、面積、谷物含水率計(jì)算得到。在計(jì)算過(guò)程中,由于收割機(jī)每一單位時(shí)間的數(shù)據(jù)不連續(xù)且變化較大,因此每隔單位周期T進(jìn)行1次數(shù)據(jù)采集。第i塊單位區(qū)域作物單產(chǎn)量為
(4)
其中,fi為第i塊單位區(qū)域作物單產(chǎn)量(kg/hm2);mi為第i塊區(qū)域作物總產(chǎn)量(kg);vi為該區(qū)域收割機(jī)的運(yùn)行速度(m/s);wi為收割機(jī)的割窗寬度(m)。
由于在作物收割時(shí)水分占據(jù)質(zhì)量比較大,因此在測(cè)產(chǎn)過(guò)程中需要去除作物的含水量,以合格作物含水率進(jìn)行計(jì)算。另外,對(duì)作物的收獲損失也要進(jìn)行考慮,則第i塊區(qū)域作物單產(chǎn)量(無(wú)含水量)為
(5)
其中,fid為第i塊單位區(qū)域作物的干重單產(chǎn)量;hα為收割時(shí)作物的含水量;hγ為收割時(shí)作物的含水量;η為作物收獲損失率。
在聯(lián)合收割機(jī)測(cè)產(chǎn)作業(yè)過(guò)程中,各單位產(chǎn)量可以存在差異,因此計(jì)算某一區(qū)域產(chǎn)量時(shí)結(jié)合多個(gè)單位區(qū)域數(shù)據(jù)會(huì)得到較為準(zhǔn)確的結(jié)果。假設(shè)第k個(gè)區(qū)域內(nèi)有n個(gè)單位區(qū)域采樣點(diǎn),結(jié)合式(3)和式(5)可得該區(qū)域的干重單產(chǎn)量fk為
(6)
聯(lián)合收割機(jī)測(cè)產(chǎn)系統(tǒng)是結(jié)合傳感器和微處理器技術(shù)優(yōu)勢(shì)的一種智能型測(cè)量系統(tǒng),包括Exynos4412、SD存儲(chǔ)卡,以及沖量式流量、含水率、地速、割臺(tái)高度等傳感器,其組成框架如圖2所示。
圖2 聯(lián)合收割機(jī)測(cè)產(chǎn)系統(tǒng)組成框架圖
當(dāng)聯(lián)合收割機(jī)測(cè)產(chǎn)系統(tǒng)工作時(shí),傳感器組會(huì)測(cè)出單位時(shí)間T的谷物流量、作物含水率、收割機(jī)前行速度及割臺(tái)高度等,同時(shí)將速度經(jīng)過(guò)處理后發(fā)送給微處理器進(jìn)行單位面積的干重產(chǎn)量計(jì)算,最后將產(chǎn)量實(shí)時(shí)顯示在顯示終端上和存儲(chǔ)至SD卡。
1)Exynos4412嵌入式硬件平臺(tái)的搭建。Exynos4412嵌入式平臺(tái)的搭建主要包括CPU的選型、Linux操作系統(tǒng)的確定,以及SDRAM(512MB)、NandFlash(1G)、NorFlash(16MB)、網(wǎng)口(10M)、串口、SD卡和嵌入式外圍設(shè)備的參數(shù)選定。該平臺(tái)由Exynos4412、顯示屏、數(shù)據(jù)存儲(chǔ)、通信和電機(jī)啟動(dòng)驅(qū)動(dòng)模塊組成。Exynos4412嵌入式平臺(tái)框架如圖3所示。
圖3 Exynos4412嵌入式平臺(tái)框架圖
由圖3可知:該平臺(tái)主要包括三大模塊:①CPU及SDRAM、NAND Flash存儲(chǔ)模塊;②電源、時(shí)鐘和復(fù)位電路;③顯示屏和電機(jī)驅(qū)動(dòng)模塊。
2)測(cè)產(chǎn)系統(tǒng)流量傳感器電路設(shè)計(jì)。測(cè)產(chǎn)系統(tǒng)流量傳感器電路是整個(gè)系統(tǒng)最為核心的部分,作物收割質(zhì)量由數(shù)據(jù)采集電路將質(zhì)量信號(hào)轉(zhuǎn)化為電壓信號(hào),這部分由沖量式流量傳感器實(shí)現(xiàn)。沖量式流量傳感器產(chǎn)生的電壓比較微弱(mV級(jí)別),因此通常需要運(yùn)放電路放大處理后再接至Exynos4412的GPIO管腳。測(cè)產(chǎn)系統(tǒng)流量傳感器電路設(shè)計(jì)如圖4所示。
圖4 測(cè)產(chǎn)系統(tǒng)流量傳感器電路圖
測(cè)產(chǎn)系統(tǒng)采用BLR高精度橋式?jīng)_壓式電路采集作物沖擊沖量板的質(zhì)量,該橋式電路精度高、穩(wěn)定性好。該模塊供電電壓為+12V,輸出的電壓信號(hào)在mV級(jí)別。一般來(lái)說(shuō),mV級(jí)別的信號(hào)放大需要極低的失調(diào)電壓,因此采用ADI公司生產(chǎn)的運(yùn)算放大器AD8554。該運(yùn)放失調(diào)電壓典型值為1uV,用于mV信號(hào)放大非常合適。
在收割機(jī)作業(yè)過(guò)程中,可能會(huì)因?yàn)榈匦魏褪崭顧C(jī)自身的振動(dòng)而使傳感器采集信號(hào)受到噪聲的影響。沖量產(chǎn)生的電壓信號(hào)相對(duì)于噪聲是一種低頻信號(hào),在沖量信號(hào)經(jīng)過(guò)AD8554運(yùn)放放大處理后可以接一個(gè)低通濾波器對(duì)噪聲進(jìn)行去噪處理。本文采用一個(gè)OP07的低通濾波器對(duì)噪聲信號(hào)進(jìn)行處理。
1)Exynos4412嵌入式軟件平臺(tái)的移植。Exynos4412軟件平臺(tái)的移植是通過(guò)交叉開(kāi)發(fā)工具在宿主機(jī)上,向硬件平臺(tái)移植Linux系統(tǒng)。Exynos4412軟件平臺(tái)的移植流程如圖5所示。
圖5 Exynos4412軟件平臺(tái)的移植流程
Step1:創(chuàng)建交叉開(kāi)發(fā)環(huán)境。該部分主要是在宿主機(jī)上,搭建編輯器、交叉編譯器、交叉鏈接器及交叉調(diào)試器等工具鏈。
Step2:移植Bootloader。盡管各種Bootloader之間細(xì)節(jié)差異較大,但具體流程卻大相徑庭,主要包括BL1和BL2兩部分。BL1采用匯編語(yǔ)言編寫,首先是進(jìn)行基本的硬件初始化,加載BL2到RAM,并跳轉(zhuǎn)到BL2處開(kāi)始執(zhí)行BL2的代碼;BL2采用C語(yǔ)言編寫,首先是對(duì)時(shí)鐘信號(hào)、串口的初始化,然后對(duì)系統(tǒng)內(nèi)存映射進(jìn)行檢測(cè),接著加載內(nèi)核鏡像和fs根文件系統(tǒng),最后設(shè)置Linux的啟動(dòng)參數(shù)。
Step3:移植Linux內(nèi)核。Linux內(nèi)核代碼分為Stage1和Stage2兩個(gè)階段。Stage1階段主要是檢查L(zhǎng)inux內(nèi)核是否支持該CPU和開(kāi)發(fā)板;Stage2階段則是進(jìn)行MMU初始化,清除bss段,設(shè)置SP堆棧,初始化系統(tǒng)各個(gè)軟件子系統(tǒng),掛載fs根文件系統(tǒng),并運(yùn)行init進(jìn)程。
Step4:制作根文件Ramdisk.img。本文采用Busybox-1.22.1工具制作根文件系統(tǒng),主要包括Busybox源碼的編譯、配置、安裝、庫(kù)的添加、inittab文件的添加、fstab文件的添加及rcS文件的創(chuàng)建等。
Step5:驅(qū)動(dòng)程序的移植。主要是對(duì)電機(jī)驅(qū)動(dòng)、網(wǎng)卡驅(qū)動(dòng)、USB及UART串口驅(qū)動(dòng)進(jìn)行移植。
Step6:開(kāi)發(fā)應(yīng)用程序。編寫聯(lián)合收割機(jī)測(cè)產(chǎn)子系統(tǒng)程序等。
2)測(cè)產(chǎn)系統(tǒng)主程序設(shè)計(jì)。聯(lián)合收割機(jī)測(cè)產(chǎn)系統(tǒng)軟件包括主程序、測(cè)產(chǎn)子系統(tǒng)、數(shù)據(jù)采集與傳輸、顯示、終端、串口通訊及初始化模塊等。測(cè)產(chǎn)系統(tǒng)主程序框圖如圖6所示。
圖6 測(cè)產(chǎn)系統(tǒng)主程序流程圖
主程序核心代碼如下所示:
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();// 相關(guān)硬件初始化
LPC_IOCON->PIO0_1 &= ~0x07;
LPC_IOCON->PIO0_1 |= 0x01;/* CLK OUT */
SysTick_Config(48000);
SPI_IOConfig(0);//SPI0 initialization(LED屏相關(guān)配置)
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();
}
應(yīng)用本文設(shè)計(jì)的聯(lián)合收割機(jī)測(cè)產(chǎn)系統(tǒng),于水稻收獲時(shí)節(jié)在某水稻種植示范區(qū)進(jìn)行了水稻收割測(cè)產(chǎn)試驗(yàn),以驗(yàn)證系統(tǒng)測(cè)產(chǎn)準(zhǔn)確性和穩(wěn)定性。試驗(yàn)條件如表1所示。為了提高試驗(yàn)的可靠性和準(zhǔn)確性,本文一共進(jìn)行了8次測(cè)試,測(cè)試結(jié)果如表2所示。
表1 試驗(yàn)條件
表2 測(cè)試結(jié)果
由表2可以看出:聯(lián)合收割機(jī)測(cè)產(chǎn)系統(tǒng)相對(duì)誤差在8%內(nèi),準(zhǔn)確率較高,能夠達(dá)到設(shè)計(jì)要求。
針對(duì)現(xiàn)代農(nóng)業(yè)智能測(cè)產(chǎn)技術(shù)的發(fā)展需求,以作物測(cè)產(chǎn)系統(tǒng)為研究對(duì)象,設(shè)計(jì)了基于Linux和Exynos4412的聯(lián)合收割機(jī)測(cè)產(chǎn)系統(tǒng)。該系統(tǒng)硬件由Exynos4412處理器結(jié)合沖量式流量傳感器、流量傳感器電路設(shè)計(jì)和顯示界面組成;軟件以C語(yǔ)言編寫開(kāi)發(fā),包括linux底層系統(tǒng)的移植、系統(tǒng)主程序及測(cè)產(chǎn)子系統(tǒng)等。試驗(yàn)結(jié)果表明:聯(lián)合收割機(jī)測(cè)產(chǎn)系統(tǒng)相對(duì)誤差在8個(gè)百分點(diǎn)以內(nèi),準(zhǔn)確率較高,能夠達(dá)到設(shè)計(jì)要求。