2.2 红外液位检测电路设计
为了自动检测单位体积的检测液的流动速度,在玻璃容器的输入、输出口分别安装了红外检测系统。这里设计的红外光源驱动电路如图3所示。其中+12 V电压通过两个100 kΩ电阻加在放大器的两端形成同相比例,放大电路放大倍数为Vi0=(1+Rf/R1)V来驱动三极管的导通与截止,驱动发光二极管。
3 系统软件设计
3.1 控制算法的设计
为了实现陶瓷检测设备高精度、反应速度快、宽测量范围的性能指标要求。设计的陶瓷检测控制软件采用PID控制算法和模糊神经网络控制的隶属度函数相结合的方法,来完成对各个模块的控制。实现参数标定、设置、透气度测量、恒压信号(PWM信号)输出等功能。软件完成初始化设置后,进行压力信号的数据采集与处理、恒压控制输出等。根据实际工况,压力信号变化范围太大时,系统将处于等待状态,直到压力被调节到9 500~10 050 Pa的范围要求。同时,当误差范围比较大时会根据模糊神经网络算法来粗调PWM信号,当距10 000 Pa范围较小时再采用PID精确调节,保证输出的PWM信号在设计范围内。
普通的PID控制是反馈控制系统中取偏差的比例、积分、微分的组合控制。固定参数PID控制属于线性控制。而液位上升的过程具有非线性、时变性及不确定性等特点,对于这类系统采用固定参数PID控制很难实现理想的控制效果,因此采用了变参数控制的方法。
这里将模糊控制知识表达容易的特点和神经网络自学习能力强的优势相结合,取长补短,以提高整个系统的学习能力和表达能力,实现电机的在线智能调速。通过该智能控制系统,将模糊控制规律和隶属函数隐含地分布在整个网络中,用神经网络实现模糊推理,用神经网络的在线自学习能力来调整隶属函数和改变模糊控制规律,使控制系统工作状态可根据设定速度和环境状态变化而自动调整,实现速度的智能控制。
实验结果表明,该算法可以有效控制PWM输出的稳定性,近而可以很好的稳定压力,保证其在设计值范围内,并且进一步提高了系统检测精度。
3.2 数据通信设计
本系统的通信主要采用了信号采集调理模块来完成数据采集。该模块是以ATmega128单片机为核心的陶瓷检测智能控制仪重要组成部分。ATmega128片内含128 KB ISP的可反复擦写10 000次的FLASH只读程序存储器。对压力传感器的数据进行监测和设定并记录到数据库。主控界面中的参数是通过数据采集现场总线RS 485传输过来的智能仪表的参数。
由于组态王和单片机进行通信的数据格式是ASCII码,所以提前定义控制系统和上位机间的通信协议,其中如波特率、数据位、停止位和奇偶检验等必须在协议中进行定义。首先要在组态王中把地址分配给要通信的数据变量,按照设计要求把数据类型分为字节和无符号整型两类,分别占1 B和2 B的空间。因此分配时不能有重叠现象,为提高通信速度这里使用连续的数据区。