《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 一种基于单片机的智能气动泵控制系统
一种基于单片机的智能气动泵控制系统
摘要: 以C8051F020单片机为核心的智能气动泵控制系统,能很好地解决在火炮身管气动擦拭过程中遇到的气体计量问题,因为C8051F020单片机在模拟信号的采集和模数、数模转换及模拟信号的输出等功能方面作出了许多的完善,非常适合于军工业控制系统的自动化和智能化发展。
Abstract:
Key words :

  引言

  以C8051F020单片机为核心的智能气动泵控制系统,能很好地解决在火炮身管气动擦拭过程中遇到的气体计量问题,因为C8051F020单片机在模拟信号的采集和模数、数模转换及模拟信号的输出等功能方面作出了许多的完善,非常适合于军工业控制系统的自动化和智能化发展。

  1 C8051F020单片机功能简介

  C8051F020器件是完全集成的混合信号系统级MCU芯片,具有64个数字I/O引脚。其主要特性:1)高速、流水线结构的8051兼容的CIP-51内核(可达25MIPS);2)全速、非侵入式的在系统调试接口(片内);3)真正12位、100ks/s的8通道ADC,带PGA和模拟多路开关;4)真正8位500ks/s的ADC,带PGA和8通道模拟多路开关;5)两个12位DAC,具有可编程数据更新方式;6)64KB可在系统编程的FLASH存储器;7)4352(4096+256)B的片内RAM;8)可寻址64KB地址空间的外部数据存储器接口;9)硬件实现的SPI、SMBus/I2C和两个UART串行接口;10)5个通用的16位定时器;11)具有5个捕捉/比较模块的可编程计数器/定时器阵列;12)片内看门狗定时器、VDD监视器和温度传感器。

  具有片内VDD监视器、看门狗定时器和时钟振荡器的C8051F020是真正能独立工作的片上系统。所有模拟和数字外设均可由用户固件使能/禁止和配置。FLASH存储器还具有在系统重新编程能力,可用于非易失性数据存储,并允许现场更新8051固件。片内JTAG调试电路允许使用安装在最终应用系统上的产品MCU进行非侵入式(不占用片内资源)、全速、在系统调试。在使用JTAG调试时,所有的模拟和数字外设都可全功能运行。每个MCU都可在工业温度范围(-45~+85℃)内用2.7~3.6V的电压工作。端口I/O、/RST和JTAG引脚都容许5V的输入信号电压。

  2 系统工作原理及结构设计

  气动泵控制系统要实现对气体流量进行有效控制,包括采集气体流量信息和实时控制气体流量。控制系统是以单片机为核心的监测与调控,可以独立地完成气体流量信息的采集、处理和显示,还可通过标准的RS-485接口与上位机实现通信。系统原理结构框图如图1所示,它是一个小型的分布式数据采集与控制系统,主要由微控制器、气体流量传感器及其补偿电桥、键盘和液晶显示模块、动作执行机构和上位机组成。


图1 系统工作原理图

  系统选用C8051F020作为系统的微控制器。它的主要作用是:1)通过设置其内部的差分电路对气体流量进行采样;2)根据给定的两个流量限值(上限和下限)进行判断,给出动作执行机构相应指令;3)将处理后的采样流量通过I/O口输送给液晶显示器,同时经485总线输送给上位机。

  上位机将接收到的采样气体流量、两个流量限值实时显示,实现对流量的实时监测。系统还允许从上位机修改流量上下限值。

  键盘和液晶显示模块主要完成的功能为:通过键盘可以修改两个流量限值;液晶显示器将采样流量、上下限流量显示,显示气体流量调节过程。

  采用气体流量传感器测得的流量模拟信号,经平衡电桥对其进行线性补偿,再经多路开关分时送入A/D转换器变成数字量传给C8051F020单片机。

  执行机构主要通过接受单片机发出的命令,对系统的负载提供信号,控制调节阀开启的大小,使实际流量逐渐接近,到达到给定流量,完成自动调节过程。例如,当采样流量比上限值低时,输出一个信号给执行机构1;当高于上限值时,输出一个控制信号给执行机构2。

  3 系统的硬件设计

  系统的硬件设计采用模块式结构,结构紧凑,有利于调试和维护。系统硬件电路设计包括四大部分:单片机核心控制模块、气体流量检测模块、液晶显示模块、控制执行模块和通信模块。

  3.1 单片机核心控制模块

  单片机核心控制模块的设计主要包括C8051F020单片机的最小系统、键盘及液晶显示电路的设计。其中,AIN0.0和AIN0.1作为气体流量采样的输入端;P0.0和P0.1为通信提供输入/输出信号;P1口作为键盘引出端;P6口和P5口的部分引脚作为液晶的数据口和控制口;P2.4和P2.5分别作为可执行机构1和2的控制信号输出端。CGM12864B点阵液晶显示屏是由2片带控制器的列驱动电路KS0108和1片行驱动电路KS0107组成主要的硬件电路。显示方面由1片128×64像素的液晶片组成。KS0108将显示区分为左右半屏,整个屏从上到下64行分为8页,每页8行。其液晶显示电路如图2所示。

图2 液晶显示电路图
 

  3.2 气体流量检测模块

  该模块主要由气体流量传感器、整形放大电路、多路开关和A/D转换器转换电路等组成。主要完成将传感器检测到的与气体流量相对应的模拟量作整形放大,变成C8051F020单片机能接收的数字量。

  被测气体在规定的流量、压力范围内通过流量计时,其瞬时容积流量Qi为

  Qi=N/ξi                               (1)

  式中,N为1s内输出的脉冲数;ξi为流量计系数。

  检测气体流量时,CPU内部定时器/计数器CTC1不断采样流量计输出的脉冲数,并通过硬件中断每秒对测得的流量运算一次,求得被测气体的瞬时容积流量Qi和累计容积流量Qv。

  3.3 控制执行模块

  控制执行模块主要作用是对外部辅助设备进行控制,如空气压缩机。本系统的外部电路接口,通过一个三极管电路,可以方便的与外部电路连接,单片机控制外部继电器电路图如图3所示。

图3 继电器电路图

  3.4 通信模块

  为实现单片机与上位机之间长距离有效数据通信,通信模块采用MAX485芯片,利用RS485标准设计,配置P0口的P0.0和P0.1为TX0和RX0引脚,与MAX485的RO和DI相连,由于微机串口利用RS232标准,单片机串口输出为TTL标准,必须实现标准信号间的转换。电路设计如图4所示。

图4 RS485通信电路图

  4 气体流量控制

  在气体流量测量的基础上,给定值和实际测得的瞬时流量进行比较后算出偏差,然后对气体流量进行调节。由于气体流量系统的精确数学模型很难获得,而模糊控制算法具有人的智能思维、适应性好、鲁棒性强等特点,正适用于这类系统。因此,采用模糊控制算法对气体流量进行自动控制,可取得良好的控制特性,其模糊控制器框图如图5所示。

图5 糊控制器框图

  模糊控制器采用双输入、单输出的二维结构。输入变量为瞬时流量偏差e和偏差变化c,输出变量为控制量u。其模糊子集分别为

  E={NL, NM, NS, NO, PO, PS, PM, PL}

  C={NL, NM, NS, O, PS, PM, PL}

  U={NL, NM, NS, O, PS, PM, PL}

  它们的论域分别为

  E={-6,-5,-4,-3,-2,-1,-0, +0, 1, 2, 3, 4, 5, 6}

  C={-6,-5,-4,-3,-2,-1, 0, 1, 2, 3, 4, 5, 6}

  U={-7,-6,-5,-4,-3,-2,-1, 0, 1, 2, 3, 4, 5, 6, 7}

  当瞬时流量变化时,通过驱动调节阀,控制其开启的大小及变化规律,使偏差趋近于零。根据气体流量的参数特点和现场实际操作经验及专家的知识理论,总结出模糊控制规则表,如表1所示。

  选择模糊控制规则是模糊控制器的关键问题。为了更好地提高控制精度,本系统采用带有4个调整因子的控制规则:

  其中,0<α1<α2<α3<α4<1,本系统选择:α1=0.26,α2=0.58,α3=0.76,α4=0.86。代入上式运算后经反复修改和实际调试,得到了实用的模糊控制查询表,如表2所示。


 

  5 系统的软件设计及抗干扰措施

  软件的设计包括系统下位机和上位机的设计。

  5.1 下位机程序设计

  下位机程序主要进行C8051F020单片机系统的初始化、端口配置、A/D初始化、液晶以及键盘扫描初始化。为防止误动作,无意中改变系统的有关参数,造成人为计量误差,系统可设置“密码”,保证测量的可靠性和准确性,具体流程如图6所示。

图6 流程图

  模糊控制中的控制算法由程序实现。包括两部分,一是离线计算模糊控制查询表,二是在实时控制过程中在线输入变量,并将它们作模糊量化处理,然后查找模糊控制查询表后进行输出,去控制调节阀的开启角度,来实现对气体流量的控制。

  5.2 上位机部分

  上位机程序采用Lab Windows/CVI设计,主要实现对采样气体流量、两个流量限值的接收和显示,还可对流量限值进行修改和发送给下位机。

  5.3 抗干扰措施

  为提高控制系统的稳定性,加强抗干扰能力,可采用隔离电源变压器,信号通道采用光电隔离和滤波技术;可使用Watchdog技术和软件陷阱防止程序跑飞,实现任务的恢复;采取电源抗干扰措施。

此内容为AET网站原创,未经授权禁止转载。