基于CPLD的料位检测系统的设计
2020-06-04黄齐超王景存朱思彪
黄齐超,王景存,朱思彪
(武汉科技大学 信息科学与工程学院,武汉430081)
目前,我国农业发展存在着劳动生产率低、生产成本高、土地产出率低、资源利用率低和国际竞争力不强等问题,而农业机械化水平不高是导致问题产生的根本原因之一,依靠信息技术提高农业机械化水平是解决这些问题的重要途径[1]。
施肥作业是农业生产过程中一个重要的环节。当肥料箱出现肥料排空时,会发生漏施现象,容易造成农作物减产,引起农业生产损失[2]。因人工检测法存在检测不及时等诸多弊端,所以设计肥料箱料位电子测量装置是非常必要的。目前国内有对料位检测传感器的研究,但系统的肥料箱料位检测方案尚不完善。基于此,设计了料位检测系统,并采用复杂可编程逻辑器件CPLD 作为主控芯片。CPLD 的引入,避免了用单片机易受干扰等情况的发生,提高了系统的可靠性。这一方案对提高农机信息化和精准化具有重要意义。
1 肥料箱料位检测系统介绍
在肥料箱料位检测系统工作过程中,电容式传感器将肥料箱料位高低变化转换为电容值的变化,再经电容电压转换电路转换成电压值,经双带通滤波电路和A/D 转换电路后由CPLD 获取料位数字信号,CPLD 处理后将信号输送给电流输出、显示及报警灯模块。系统框图如图1所示。
图1 系统框图Fig.1 System block diagram
料位检测系统以CPLD 为控制系统,与系统其它部分进行实时通信,完成参数控制、信号处理、输出控制等功能。CPLD 获取AD 值后,通过逻辑将其转换为对应料位值并送往电流及显示模块,将对应料位值在电流表和显示屏上显示出来,并在料位(即剩余量百分比)低于5%时控制报警灯闪烁。系统选用AD7710 作为A/D 转换模块的芯片。该芯片精度高,具有系统校准、自校准等多种校准模式,且允许用户读写校准、控制寄存器,这使得系统对A/D转换模块具有更强的控制能力,保证了A/D 转换的精度。
2 电容传感器检测原理
利用空气与颗粒化肥的介电常数不同,可设计出电容式料位传感器。平行极板电容传感器的一个极板安装在在肥料箱一侧内壁上,另一极板安装在对面一侧内壁。当料位变化时,空气与颗粒化肥的混合比例发生变化,导致电容率改变,从而引起电容传感器输出电容值变化[3]。
平行板电容C 为
式中:ε0为真空介电常数;εr为相对介电常数;S 为两平行板间相对覆盖面积;d 为两平行板间距离。
当料位下降时,传感器的介电常数ε 为
式中:ε1,ε2分别为颗粒化肥和空气的相对介电常数;V1,V2分别为颗粒化肥和空气所占的体积;V 为电容传感器两极板间的总体积;h1,h2分别为肥料箱中肥料和空气的高度;h 为肥料箱装料部分的总高度。
当肥料箱中充满颗粒化肥时的电容C0为
当料位下降Δh 时,电容变化量ΔC 为
由以上公式可知,电容传感器输出电容值与料位高度成线性关系。通过实时获取传感器的输出电容信号,可以实现肥料箱料位的在线检测。
3 硬件设计
3.1 CAV444 电容电压转换电路
对于电容传感器输出电容的测量,采用恒流源对电容器充电的方式,存在电荷泄露的问题,杂散电容对其影响较大,无法保证测量精度。CAV444线性电容电压转换芯片是一种高性能的电容电压转换集成芯片,使用简单,测量范围大(最大可达2200 pF)。设计CAV444 电容电压转换电路可实现传感器输出电容的高精度测量,其转换电路如图2所示。
图2 电容电压转换电路Fig.2 Capacitor-voltage conversion circuit
CAV444 用恒定的电流对Cm进行周期性地充放电,产生一个振幅为常数的三角波。这个三角波的频率,也就是测量振荡器的频率fm。fm是与被测电 容Cm相 关的[4]。
借助于f/V 频率电压转换电路和低通滤波器将三角波转换成直流电压信号,该信号通过输出级的阻抗转换和放大成为电压输出信号。传递函数为
其中
式中:Cm,max为设定测量电容范围的最大值;R2,R4,R5为固定电阻;R1为满度调准电阻;R3为零点调准电阻。由式可知,输出的差分电压信号与测量电容Cm成线性关系。
3.2 滤波及A/D 转换电路
在肥料箱料位检测过程中,无论在转换前、转换时还是转换完成进入探测系统后,都会有噪声存在。料位检测过程中的噪声来源主要包括传感器本身的噪声、测量时待测信号本身不稳定,或是由于周围环境的影响造成的信号扰动,以及测量电路内部引入的电路噪声。为了在提取料位信号的过程中尽量减少干扰信号和噪声,在此将基于MAX261 的低通滤波加入电路中,滤波及A/D 转换电路如图3所示。
图3 滤波及A/D 转换电路Fig.3 Filter and A/D conversion circuit
MAX261 为CMOS 双二阶通用开关电容有源滤波器,可以采用微处理器控制其精确滤波函数,无需外围元件即可构成多种带通、低通、高通、带阻全通滤波器,其内部含有2 个二阶滤波单元,每个单元中心频率、Q 值和滤波器工作模式均可由CPLD 控制。
3.3 控制电路
CPLD 选用Altera 公司的MAX7000 系列的EPM7128STC100-6。EPM7128S 有2500 个可用门、128 个宏单元、8 个逻辑阵列模块,80 个用户I/O 引脚,引脚间逻辑延迟为5 ns,并可通过JTAG 接口实现在线编程。
图中,在每个WR 的低电平MAX261 接收数据;A0—A3 为地址位;D0—D1 为数据位。整个通信过程MAX261 接收了16 次有效数据。
图4 MAX261 时序图Fig.4 MAX261 sequence diagram
CPLD 通过与AD7710 通信,获取料位的AD 采样值后,将AD 采样值转换成与实际料位相对应的电流值数字信号。此外,CPLD 还可将数据写入AD7710 的控制寄存器,启动AD7710 的自校准和系统校准; 通过读写校准寄存器来监控和校正AD7710 的校准系数。CPLD 与AD7710 的通信逻辑图如图5所示。
图5 AD7710 时序图Fig.5 AD7710 sequence diagram
图中,SCLK 和SDATA 为时钟信号线和数据线;A0 为数据寄存器、校准寄存器和控制寄存器的控制线;TFS 为帧同步传输端;RFS 为帧同步接收端;DRDY 为逻辑输出端。
CPLD 通过SPI 接口控制AD420 实现电流输出。CPLD 与AD420 的通信逻辑图如图6所示。图中,CLK 和DATA 为时钟线和数据线;LOAD 为选择线。
图6 输出电流时序图Fig.6 Output current sequence diagram
3.4 电流输出电路
CPLD 将软件部分计算出的电流数字信号输出给AD420。AD420 是一款高精度、低功耗全数字电流环输出转换器,它将输入的电流值数字信号转换为电流输出。该芯片具有灵活的串行数字接口(最大速率可达3.3 Mb/s),抑制干扰能力强。
AD420 的输出可以是电流信号0~20 mA,4~20 mA 或0~24 mA,也可以是电压信号,可通过配置引脚Range Select1 和Range Select2 的高低电平来设置其输出类型。料位检测系统在肥料箱快排空时,需要由直观的电流值反映出来,故可选择0~20 mA的输出,则Range Select1 电平为低,Range Select2电平为高。其电流输出电路如图7所示。
图7 电流输出电路Fig.7 Current output circuit
4 试验结果与分析
对肥料箱进行排空试验,获取料位的AD 采样值。其中,料位用剩余量百分比表示,AD7710 设置为双极性输入模式,16 位数字输出。试验数据见表1,料位与AD 采样值的关系曲线如图8所示。
表1 料位与AD 采样值的关系Tab.1 Material level and AD sampling value
图8 料位值与AD 采样值关系Fig.8 Material level and AD sampling value
由图可见,料位电容传感器存在一定的非线性误差。故软件部分将AD7710 值转换为实际料位值时,需要进行线性化处理;将测量料位值转化为输出电流值。
线性化后,测得试验数据和误差见表2。由表可知,线性化后的误差小于2.5%,该系统有较高的检测精度。
表2 实测料位与误差Tab.2 Measured material level and error
5 结语
基于电容传感器设计了一款用于检测肥料箱料位的高精度检测系统,该检测系统可以将料位值实时的显示在驾驶室的液晶显示屏上,并在料位值低于5%时使报警灯闪烁,该系统可以实现肥料箱料位的在线检测及预警。系统采用高精度可编程A/D 转换芯片,对校准过程有较强的控制能力;CPLD 控制滤波芯片参数,使系统对不同的使用环境有更强的适应能力。