基于Freescale Kinetis的農(nóng)田灌溉控制板卡的設(shè)計(jì)
摘要:文章設(shè)計(jì)了一種以Freescale Kinetis K60為核心的農(nóng)田灌溉控制控制卡,該卡可以通過(guò)上位機(jī)或者手持編程器編寫(xiě)灌溉程序,并可脫機(jī)運(yùn)行。系統(tǒng)實(shí)現(xiàn)土壤溫濕度檢測(cè)功能,能夠很好的滿(mǎn)足綠色農(nóng)業(yè)生產(chǎn)要求。
關(guān)鍵詞:控制板卡;灌溉;Kinetis K60
0 引言
目前,我國(guó)水資源問(wèn)題日益突顯,水資源的匱乏和分布不合理是其客觀(guān)原因,要從根本上緩解這一問(wèn)題,必須從節(jié)約用水、提高水資源利用率方面來(lái)著手。我國(guó)農(nóng)業(yè)用水量約占總用水量的80%左右,由于農(nóng)業(yè)灌溉用水的利用率普遍低下,就全國(guó)范圍而言,水的利用率僅為45%,而水資源利用率高的國(guó)家己達(dá)70~80%,因而,解決農(nóng)業(yè)灌溉用水的問(wèn)題,對(duì)于緩解水資源的緊缺是非常重要的。針對(duì)自動(dòng)灌溉的特點(diǎn),為了完成數(shù)字化控制,研制和開(kāi)發(fā)了基于Frecscale Kinetis的農(nóng)田灌溉控制卡。采用這樣的集成控制卡,簡(jiǎn)化整個(gè)控制系統(tǒng)的硬件電路結(jié)構(gòu),提高系統(tǒng)的可靠性和控制精度。
1 總體設(shè)計(jì)
根據(jù)需求,該灌溉控制卡需要滿(mǎn)足以下功能:
·控制進(jìn)電機(jī)或者伺服電機(jī),進(jìn)行水泵的精確控制,每周可以獨(dú)立控制,任意閥門(mén)開(kāi)度精確定位,脈沖輸出速度最大可以達(dá)到100K。
·軟件閥門(mén)開(kāi)度限位功能。
·可以多機(jī)互聯(lián),滿(mǎn)足農(nóng)田生產(chǎn)協(xié)同作業(yè)的要求。
·與PC機(jī)連接下載灌溉控制文件。
·使用SD卡升級(jí)系統(tǒng)和存儲(chǔ)灌溉文件。
·可以脫機(jī)獨(dú)立工作,并支持顯示啟動(dòng)、停止和故障狀態(tài)提示。
·最多可以控制4個(gè)土壤濕度傳感器,可與二氧化碳傳感器、照度傳感器連接。
針對(duì)以上需求,為了滿(mǎn)足性能要求,同時(shí)也滿(mǎn)足低價(jià)位需求,選用高性能低價(jià)位的Cortex-M4ARM的單芯片解決方案。ARM芯片選用MK60DN 512ZVLL10,該單片機(jī)屬于Freescale公司的Kinetis K60系列,ARM Cortex-M4處理器是由ARM專(zhuān)門(mén)開(kāi)發(fā)的最新嵌入式處理器,用以滿(mǎn)足需要有效且易于使用的控制和信號(hào)處理功能混合的數(shù)字信號(hào)控制市場(chǎng)。高效的信號(hào)處理功能與Cortex-M4處理器系列的低功耗、低成本和易于使用的優(yōu)點(diǎn)的組合,旨在滿(mǎn)足專(zhuān)門(mén)面向電動(dòng)機(jī)控制、汽車(chē)、電源管理、嵌入式音頻和工業(yè)自動(dòng)化市場(chǎng)的新興類(lèi)別的靈活解決方案。
本系統(tǒng)與PC機(jī)一起構(gòu)成的系統(tǒng)框圖如圖1所示。
灌溉自控系統(tǒng)主要由中心主控系統(tǒng)(主計(jì)算機(jī)、控制柜)、電磁閥、田間濕度傳感器(可測(cè)土壤濕度絕對(duì)值)、氣象觀(guān)測(cè)站(可測(cè)氣溫、風(fēng)向、風(fēng)速)、數(shù)據(jù)采集指令傳輸?shù)韧ㄓ嵲O(shè)備組成??勺诳刂剖艺?,對(duì)控制板卡傳上來(lái)的氣象資料、田間土壤濕度等數(shù)據(jù)進(jìn)行綜合分析,利用手動(dòng)或自動(dòng)方式,足不出戶(hù)地對(duì)整個(gè)被控小區(qū)進(jìn)行灌溉。同時(shí)還可以利用數(shù)據(jù)查詢(xún)系統(tǒng)和打印系統(tǒng),隨時(shí)記錄、查詢(xún)、打印整個(gè)灌溉小區(qū)的氣象資料、土壤濕度、灌溉設(shè)置、灌溉進(jìn)程、灌水歷史記錄等數(shù)據(jù)。
系統(tǒng)由多個(gè)控制單元組成,每個(gè)控制單元管理一片區(qū)域。利用物聯(lián)網(wǎng)、工業(yè)以太網(wǎng),由中央計(jì)算機(jī)統(tǒng)一管理。室外的空氣溫濕度傳感器把結(jié)果送入計(jì)算機(jī),在這里進(jìn)行灌溉參數(shù)設(shè)置,及對(duì)灌溉情況進(jìn)行統(tǒng)計(jì),并可通過(guò)專(zhuān)用軟件在計(jì)算機(jī)上存儲(chǔ)、顯示數(shù)據(jù)和圖表。同時(shí)可以人工進(jìn)行特殊操作。通過(guò)互聯(lián)網(wǎng)獲取天氣信息,有預(yù)見(jiàn)性地實(shí)施灌溉。
[!--empirenews.page--]
2 硬件設(shè)計(jì)
2.1 ARM處理器的特點(diǎn)及應(yīng)用
Freescal的MK60DN512ZVLL10屬于Kinetis K60系列。封裝為L(zhǎng)OFP144腳,該芯片具有以下特點(diǎn):
·ARM Cortex-M4內(nèi)核+DSP。512K flash、512K Flex Memmory、128K SRAM、16K cache、150MHz、單周期MAC、單指令多數(shù)據(jù)(SIMD)擴(kuò)展、可選的單精度浮點(diǎn)單元。
·多達(dá)四種可配置分辨率的高速16位ADC??刹捎脝温坊虿罘州敵瞿J礁纳圃肼曇种???删幊萄舆t塊觸發(fā)功能轉(zhuǎn)換時(shí)間可達(dá)500 ns。
·具有3個(gè)高速比較器,通過(guò)將PWM保持在安全狀態(tài),提供快速準(zhǔn)確的電機(jī)過(guò)電流保護(hù)。
·多達(dá)四個(gè)64倍可編程增益放大器用于小型振幅信號(hào)轉(zhuǎn)換。
·模擬基準(zhǔn)電壓為模擬塊、ADC和DAC提供精確的基準(zhǔn)值,可以替換外部基準(zhǔn)電壓,降低系統(tǒng)成本。
·具有32通道的DMA,適用于外圍設(shè)備和內(nèi)存,可降低CPU負(fù)載,實(shí)現(xiàn)更快的系統(tǒng)吞吐量。
·連接性和通信:UART支持ISO7816和IrDA,支持I2S、IC和SPI,具有2個(gè)CAN模塊,適用于工業(yè)網(wǎng)絡(luò)橋接。
·可靠性和安全性:硬件循環(huán)冗余校驗(yàn)引擎用于驗(yàn)證存儲(chǔ)器內(nèi)容、通信數(shù)據(jù)和增加的系統(tǒng)可靠性,獨(dú)立時(shí)鐘工作的COP用于防止代碼跑飛,外部看門(mén)狗監(jiān)控。
·定時(shí)和控制:強(qiáng)大的FlexTimers支持通用、PWM和電機(jī)控制功能。可編程中斷定時(shí)器用于RTOS任務(wù)調(diào)度或者為ADC轉(zhuǎn)換和可編程延遲模塊提供觸發(fā)源。
·外部接口:多功能外部總線(xiàn)接口提供和外部存儲(chǔ)器、門(mén)陣列邏輯或LCD的接口。
·系統(tǒng):5 V容限的GPIO帶引腳中斷功能。從1.71 V到3.6 V的寬操作電壓范圍,閃存編程電壓低至1.71 V,并且此時(shí)閃存和模擬外設(shè)所有功能正常。
·運(yùn)行溫度:-40℃到105℃。
2.2 JTAG調(diào)試接口
PC機(jī)使用JTAG接口下載程序并調(diào)試該灌溉控制卡,同時(shí)通過(guò)232串口下載灌溉控制指令。
2.3 組網(wǎng)和多機(jī)互連
485串口和CAN接口用于組網(wǎng)和多機(jī)互聯(lián),灌溉控制器組網(wǎng)功能可以滿(mǎn)足農(nóng)田生產(chǎn)的同步化要求。組網(wǎng)可根據(jù)需要選用CAN總線(xiàn)或者485總線(xiàn)。
2.4 SDHC接口
SDHC接口采用4位操作,用于連接SD卡,可以支持SDHC大容量SD卡,SD卡可以用于升級(jí)灌溉控制卡的應(yīng)用程序和更新控制指令。其接口電路如圖5所示。
[!--empirenews.page--]
2.5 flash存儲(chǔ)器
flash存儲(chǔ)器用于存儲(chǔ)多種灌溉控制方法,灌溉控制卡運(yùn)行時(shí)從中讀取制定的運(yùn)動(dòng)灌溉文件并執(zhí)行,flash存儲(chǔ)器采用SPI接口的MX25L16 05,容量為16MB,可以存儲(chǔ)大量的灌溉控制方案文件。圖6 MX25L1605接口電路圖。非門(mén)電路轉(zhuǎn)換如圖7。
2.6 PWM接口
PWM接口用于控制水泵電機(jī),進(jìn)行流量控制。單路PWM從MCU MK60DN512ZVLL10輸出后經(jīng)過(guò)非門(mén)電路轉(zhuǎn)換成。
2.7 外界信號(hào)的避免
在實(shí)際工作中,應(yīng)盡量避免外界信號(hào)的干擾,為達(dá)到這個(gè)目的,在系統(tǒng)中采用光電耦合器件,其輸入端配置發(fā)光器件,輸出端為受光器,開(kāi)關(guān)量輸入接入電路中,會(huì)被擋在光電耦合器以外,從而將干擾隔離。輸出接口如圖8所示。
[!--empirenews.page--]
3 軟件設(shè)計(jì)
3.1 軟件開(kāi)發(fā)環(huán)境
ARM軟件開(kāi)發(fā)環(huán)境選用IAR for ARM 6.2。
3.2 軟件功能概述
系統(tǒng)與PC機(jī)連接,可以進(jìn)行控制參數(shù)文件的下載、讀取,也可以通過(guò)PC上的專(zhuān)用軟件,進(jìn)行現(xiàn)場(chǎng)參數(shù)的采集存檔。PC機(jī)可以進(jìn)行系統(tǒng)的前期的調(diào)試安裝測(cè)試,測(cè)試好后,可以進(jìn)行灌溉控制文件的編輯工作并下載到運(yùn)動(dòng)控制中執(zhí)行。同時(shí)為了方便灌溉控制文件的生成,在PC上設(shè)計(jì)了一套示教系統(tǒng),使用該示教系統(tǒng)可以配置優(yōu)化控制文件。
本系統(tǒng)采用一種基于PWM的方式來(lái)控制直流電機(jī),靈活可靠,精度也符合要求。灌溉控制文件采用G代碼存儲(chǔ)于flash存儲(chǔ)器,開(kāi)機(jī)后可以通過(guò)計(jì)算機(jī)設(shè)定的默認(rèn)灌溉控制文件序號(hào)從flash存儲(chǔ)器讀取出來(lái),然后逐條解析執(zhí)行。執(zhí)行時(shí)如果是灌溉指令,軟件脫機(jī)運(yùn)行框圖如圖9所示:
3.3 軟件關(guān)鍵算法
水泵控制算法:本文水泵轉(zhuǎn)速控制采用自適應(yīng)控制算法,自適應(yīng)控制是在系統(tǒng)運(yùn)行過(guò)程中不斷提取有關(guān)模型信息,該算法根據(jù)新的信息調(diào)整,它是克服參數(shù)變化影響的有力手段。自適應(yīng)控制系統(tǒng)可看成有兩個(gè)閉環(huán),一個(gè)是常規(guī)由控制器與被控對(duì)象組成的反饋環(huán);另一個(gè)是控制器的參數(shù)調(diào)節(jié)環(huán)。如圖10所示。
4 小結(jié)
隨著計(jì)算機(jī)技術(shù)和電子技術(shù)的發(fā)展,將大量使用自動(dòng)化設(shè)備代替人工操作,可以滿(mǎn)足復(fù)雜控制的灌溉控制卡在生態(tài)農(nóng)業(yè)中的應(yīng)用也會(huì)越來(lái)越廣泛。本文介紹的灌溉控制板卡經(jīng)測(cè)試和使用均能滿(mǎn)足要求,可以長(zhǎng)時(shí)間重復(fù)性工作,大大減少農(nóng)田勞動(dòng)力的使用,減輕工作強(qiáng)度,同時(shí)對(duì)提高生產(chǎn)效率和優(yōu)化作物生長(zhǎng)也有很大的效果。