基于Freescale Kinetis的农田灌溉控制板卡的设计
扫描二维码
随时随地手机看文章
摘要:文章设计了一种以Freescale Kinetis K60为核心的农田灌溉控制控制卡,该卡可以通过上位机或者手持编程器编写灌溉程序,并可脱机运行。系统实现土壤温湿度检测功能,能够很好的满足绿色农业生产要求。
关键词:控制板卡;灌溉;Kinetis K60
0 引言
目前,我国水资源问题日益突显,水资源的匮乏和分布不合理是其客观原因,要从根本上缓解这一问题,必须从节约用水、提高水资源利用率方面来着手。我国农业用水量约占总用水量的80%左右,由于农业灌溉用水的利用率普遍低下,就全国范围而言,水的利用率仅为45%,而水资源利用率高的国家己达70~80%,因而,解决农业灌溉用水的问题,对于缓解水资源的紧缺是非常重要的。针对自动灌溉的特点,为了完成数字化控制,研制和开发了基于Frecscale Kinetis的农田灌溉控制卡。采用这样的集成控制卡,简化整个控制系统的硬件电路结构,提高系统的可靠性和控制精度。
1 总体设计
根据需求,该灌溉控制卡需要满足以下功能:
·控制进电机或者伺服电机,进行水泵的精确控制,每周可以独立控制,任意阀门开度精确定位,脉冲输出速度最大可以达到100K。
·软件阀门开度限位功能。
·可以多机互联,满足农田生产协同作业的要求。
·与PC机连接下载灌溉控制文件。
·使用SD卡升级系统和存储灌溉文件。
·可以脱机独立工作,并支持显示启动、停止和故障状态提示。
·最多可以控制4个土壤湿度传感器,可与二氧化碳传感器、照度传感器连接。
针对以上需求,为了满足性能要求,同时也满足低价位需求,选用高性能低价位的Cortex-M4ARM的单芯片解决方案。ARM芯片选用MK60DN 512ZVLL10,该单片机属于Freescale公司的Kinetis K60系列,ARM Cortex-M4处理器是由ARM专门开发的最新嵌入式处理器,用以满足需要有效且易于使用的控制和信号处理功能混合的数字信号控制市场。高效的信号处理功能与Cortex-M4处理器系列的低功耗、低成本和易于使用的优点的组合,旨在满足专门面向电动机控制、汽车、电源管理、嵌入式音频和工业自动化市场的新兴类别的灵活解决方案。
本系统与PC机一起构成的系统框图如图1所示。
灌溉自控系统主要由中心主控系统(主计算机、控制柜)、电磁阀、田间湿度传感器(可测土壤湿度绝对值)、气象观测站(可测气温、风向、风速)、数据采集指令传输等通讯设备组成。可坐在控制室罩,对控制板卡传上来的气象资料、田间土壤湿度等数据进行综合分析,利用手动或自动方式,足不出户地对整个被控小区进行灌溉。同时还可以利用数据查询系统和打印系统,随时记录、查询、打印整个灌溉小区的气象资料、土壤湿度、灌溉设置、灌溉进程、灌水历史记录等数据。
系统由多个控制单元组成,每个控制单元管理一片区域。利用物联网、工业以太网,由中央计算机统一管理。室外的空气温湿度传感器把结果送入计算机,在这里进行灌溉参数设置,及对灌溉情况进行统计,并可通过专用软件在计算机上存储、显示数据和图表。同时可以人工进行特殊操作。通过互联网获取天气信息,有预见性地实施灌溉。
2 硬件设计
2.1 ARM处理器的特点及应用
Freescal的MK60DN512ZVLL10属于Kinetis K60系列。封装为LOFP144脚,该芯片具有以下特点:
·ARM Cortex-M4内核+DSP。512K flash、512K Flex Memmory、128K SRAM、16K cache、150MHz、单周期MAC、单指令多数据(SIMD)扩展、可选的单精度浮点单元。
·多达四种可配置分辨率的高速16位ADC。可采用单路或差分输出模式改善噪声抑制。可编程延迟块触发功能转换时间可达500 ns。
·具有3个高速比较器,通过将PWM保持在安全状态,提供快速准确的电机过电流保护。
·多达四个64倍可编程增益放大器用于小型振幅信号转换。
·模拟基准电压为模拟块、ADC和DAC提供精确的基准值,可以替换外部基准电压,降低系统成本。
·具有32通道的DMA,适用于外围设备和内存,可降低CPU负载,实现更快的系统吞吐量。
·连接性和通信:UART支持ISO7816和IrDA,支持I2S、IC和SPI,具有2个CAN模块,适用于工业网络桥接。
·可靠性和安全性:硬件循环冗余校验引擎用于验证存储器内容、通信数据和增加的系统可靠性,独立时钟工作的COP用于防止代码跑飞,外部看门狗监控。
·定时和控制:强大的FlexTimers支持通用、PWM和电机控制功能。可编程中断定时器用于RTOS任务调度或者为ADC转换和可编程延迟模块提供触发源。
·外部接口:多功能外部总线接口提供和外部存储器、门阵列逻辑或LCD的接口。
·系统:5 V容限的GPIO带引脚中断功能。从1.71 V到3.6 V的宽操作电压范围,闪存编程电压低至1.71 V,并且此时闪存和模拟外设所有功能正常。
·运行温度:-40℃到105℃。
2.2 JTAG调试接口
PC机使用JTAG接口下载程序并调试该灌溉控制卡,同时通过232串口下载灌溉控制指令。
2.3 组网和多机互连
485串口和CAN接口用于组网和多机互联,灌溉控制器组网功能可以满足农田生产的同步化要求。组网可根据需要选用CAN总线或者485总线。
2.4 SDHC接口
SDHC接口采用4位操作,用于连接SD卡,可以支持SDHC大容量SD卡,SD卡可以用于升级灌溉控制卡的应用程序和更新控制指令。其接口电路如图5所示。
2.5 flash存储器
flash存储器用于存储多种灌溉控制方法,灌溉控制卡运行时从中读取制定的运动灌溉文件并执行,flash存储器采用SPI接口的MX25L16 05,容量为16MB,可以存储大量的灌溉控制方案文件。图6 MX25L1605接口电路图。非门电路转换如图7。
2.6 PWM接口
PWM接口用于控制水泵电机,进行流量控制。单路PWM从MCU MK60DN512ZVLL10输出后经过非门电路转换成。
2.7 外界信号的避免
在实际工作中,应尽量避免外界信号的干扰,为达到这个目的,在系统中采用光电耦合器件,其输入端配置发光器件,输出端为受光器,开关量输入接入电路中,会被挡在光电耦合器以外,从而将干扰隔离。输出接口如图8所示。
3 软件设计
3.1 软件开发环境
ARM软件开发环境选用IAR for ARM 6.2。
3.2 软件功能概述
系统与PC机连接,可以进行控制参数文件的下载、读取,也可以通过PC上的专用软件,进行现场参数的采集存档。PC机可以进行系统的前期的调试安装测试,测试好后,可以进行灌溉控制文件的编辑工作并下载到运动控制中执行。同时为了方便灌溉控制文件的生成,在PC上设计了一套示教系统,使用该示教系统可以配置优化控制文件。
本系统采用一种基于PWM的方式来控制直流电机,灵活可靠,精度也符合要求。灌溉控制文件采用G代码存储于flash存储器,开机后可以通过计算机设定的默认灌溉控制文件序号从flash存储器读取出来,然后逐条解析执行。执行时如果是灌溉指令,软件脱机运行框图如图9所示:
3.3 软件关键算法
水泵控制算法:本文水泵转速控制采用自适应控制算法,自适应控制是在系统运行过程中不断提取有关模型信息,该算法根据新的信息调整,它是克服参数变化影响的有力手段。自适应控制系统可看成有两个闭环,一个是常规由控制器与被控对象组成的反馈环;另一个是控制器的参数调节环。如图10所示。
4 小结
随着计算机技术和电子技术的发展,将大量使用自动化设备代替人工操作,可以满足复杂控制的灌溉控制卡在生态农业中的应用也会越来越广泛。本文介绍的灌溉控制板卡经测试和使用均能满足要求,可以长时间重复性工作,大大减少农田劳动力的使用,减轻工作强度,同时对提高生产效率和优化作物生长也有很大的效果。