吴帅龙 孙培德
摘 要:工业生产中,经常需要测量类似单容水箱的液位高度。文中设计了一款简易液位测控系统。系统硬件设计包括单片机最小电路、数据采集模块、光耦隔离与驱动模块、按键与显示模块;软件设计包括按键扫描设计、PID控制设计和系统软件。测控系统价格低廉、容易操作,为液位测量控制系统的研究、设计提供了一定参考。
关键词:液位;测控系统;PID;硬件设计;软件设计;MSP430F5529
中图分类号:TP273文献标识码:A文章编号:2095-1302(2019)04-00-03
0 引 言
国民经济的发展离不开工业供水系统,我国的工业水箱和锅炉数量高达上百万台[1]。液位检测仪广泛用于石油、化工、工业生活用水等领域[2]。液位检测是过程控制领域的重要组成部分[3],液位控制是工业生产中不可或缺的一部分,对节约资源、安全生产等至关重要[4]。因此,需以液位为研究对象以及对液位进行实时准确的测量,以保障正常生产[5-6]。
1 系统设计
系统基于TI公司单片机MSP430F5529设计,包括传感器检测模块、传感器输出信号变换模块、时钟模块、显示模块、按键设置模块、直流水泵驱动模块、光耦隔离模块等。系统设计框图如图1所示。
系统在不同的测试环境下先进行参数调试,在误差允许范围内,调试完毕后,即可在特定环境下正常使用。
2 硬件设计
2.1 单片机最小系统电路
单片机主要采用TI公司设计生产的MSP430F5529单片机,该型号单片机时钟频率高、内存大,可满足系统采集模块对速率和缓冲的要求。单片机外围由时钟模块、复位模块、电源等构成。
2.2 数据采集模塊
数据采集选用电容传感器,将柔性PCB紧密贴在容器外侧。传感器较窄一端采用FPC接插件,可以直接连接在FDC2214传感器信号采集模块的输入接口端。传感器输出信号变换模块的核心芯片为FDC2214,其它电路器件均属芯片的外围电路,包括电感、晶振和电容等。关键器件参数:晶振为40 MHz,外接电感为18 μH,电容为33 pF。其中,最核心的数据变换模块电路原理如图2所示。FDC2214芯片的4个测量通道由待测电容、外接电感L和电容C,以及芯片内部的振荡电路、驱动电路组成,待测电容不同,则振荡频率不同,数据采集端子如图2中的P1所示。FDC2214每个通道在A/D转换后的数值量化结果存在对应通道的寄存器里。上位机数据处理中心MSP430F5529LP通过I2C与FDC2214通信,定时读取FDC2214寄存器数据,系统主要使用图2所示的SDA,SCL进行I2C通信。
2.3 光耦隔离与驱动模块
系统控制信号输出后,控制开关电路工作,开关电路进一步控制直流水泵的正常工作。为保障系统安全,考虑如下两种方案:
(1)采用半桥驱动芯片,如IR2104与NMOS管配合搭建半桥。
(2)采用光耦芯片,如6N137与N沟道MOS管配合驱动无刷电机。
综合考虑后,选择光耦芯片与NMOS配合的方案,原因在于光耦芯片6N137抗外界干扰能力强,且该水泵工作电压不高,工作电流小,功率小,因此采用功耗更低的180N10N芯片。光耦隔离模块如图3所示,驱动模块如图4所示。
2.4 按键与显示模块
按键模块采用典型的4×4矩阵阵列模式。显示模块考虑如下2种方式:
(1)LCD1602。1602液晶也被称为1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。其由若干个5×7或者5×11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间亦有间隔,起到了字符间距和行间距的作用,但不能很好地显示图形和汉字。
(2)LCD12864。带中文字库的128X64-0402B每屏可显示4行8列共32个16×16点阵的汉字,每个显示RAM可显示1个中文字符或2个16×8点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。带中文字库的128X64-0402B内部提供128×2 B的字符显示RAM缓冲区(DDRAM)。字符显示通过将字符显示编码写入该字符显示RAM实现。根据写入内容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM(ASCII码字库)及CGRAM(自定义字形)的内容。
考虑到显示效果和操作便捷性,系统选用LCD12864。屏幕功能的排版设定:第一行显示液位的测量高度;第二行显示当前所按下的数字按键;第三行显示液位的目标高度;第四行显示目前的运行状态。
3 软件设计
3.1 软件编译开发环境
CCS(Code Composer Studio,CCS)是美国德州仪器公司(Texas Instrument)出品的代码开发和调试套件。TI公司的产品线中有一大块业务是数字信号处理器(DSP)和微处理器(MCU),CCS便是供用户开发和调试DSP和MCU程序的集成开发软件。Code Composer Studio IDE提供强健、成熟的核心功能与简便易用的配置和图形可视化工具,使系统设计更便捷。
3.2 按键扫描程序设计
4×4键盘设计中1~9键用以调节目标水位,控制目标水位为按键数字值乘10 mm的水位,即按数字5,目标水位为50 mm。“A,B”键用来控制系统运行和待机,当按下A之后,屏幕显示当前水位与运行状态,按下B后,屏幕当前水位与运行状态关闭,同时水泵停止注水。“*,#”用以微调目标水位高度,按下“*”键后目标水位减1 mm,按下“#”键后目标水位加1 mm。“C,D”键用以调节水位计算误差。每次开启系统时,因为环境的改变,记录在单片机程序里的计算水位程序可能产生几毫米的误差,为了减少误差,加入了手动调节误差功能。按下“C”键计算水位加1 mm,按下“D”键计算水位减1 mm。0键则是用来维持当前水泵的抽水速度,液面稳定便于调节水位误差。
3.3 系统软件设计
在设计系统软件的控制程序时,考虑以下两种方案:
(1)采用PID控制算法来调节输出PWM波的占空比,进而控制抽水速度;
(2)采用PID控制算法分段调节输出PWM波的占空比,进而控制抽水速度。
经验证,采用第一种方案调节速度较慢,而且超调量大;采用第二种方案能够较快调节液面高度并最终使液面高度在期望值上下较小波动,且超调量小,故系统软件设计采用第二种方案。PID控制算法采用增量式PID控制,因为驱动对象是水泵的电机,而对于电机控制,执行机构需要控制量的增量,因此通过该增量来控制电机抽水的速度。位置式PID一般输出值能够直接控制对象,例如阀门等。初始阶段,采用基本PID进行调节,当被控液面接近目标值时,对积分系数进行大幅度削弱,再进行PID调节,不仅能减少因积分作用而引起的超调量过大影响,同时又能消除稳态误差。离散PID[7]:
4 结 语
在实际调试过程中,PID控制难以调试。理论上PID的Kp值越大,超调越大,静态误差减小;Ki值越大,超调越大,静态误差消除;Kd值越大,超调减小。系统硬件设计简单,软件容易操作和调试,系统价格低廉,为工业生产体系中的液位检测环节提供了简单易行的测控系统方案。
参 考 文 献
[1]王文琦.工业锅炉的检测与控制技术[M].成都:四川科学技术出版社,1996.
[2]张一民,韩玉杰,徐宇.一种新型液位检测系统的设计[J].林业机械与木工设备,2009,37(3):37-38.
[3]陈波,杨晶.一种单片机控制的液位检测模块的设计[J].成功(教育),2012(10):50.
[4]颜媚,马凤翔,李金虎,等.液位控制系统的设计与实現[J].现代电子技术,2012,35(21):139-142.
[5]张宗强.基于Java Applet的液位PID控制仿真[J].工业控制计算机,2011(9):28-30.
[6]聂朋,麻永林,邢淑清,等.基于LabVIEW的电磁波峰焊非接触液位测量系统[J].传感器与微系统,2016(8):108-110.
[7]陶东娅.基于NiosⅡ的直流电机PWM调速系统设计[D].杭州:浙江工业大学,2009.
[8]何玉发,李忠伟.储油罐液位测控系统设计[J].自动化仪表,2006,27(11):66-67.
[9]李春丽.非接触式外测液位计液氯储槽液位测量中的案例分析[J].物联网技术,2014,4(5):11-12.
[10]余明亮,彭菊红.PID控制参数对系统性能的影响研究[J].物联网技术,2018,8(4):95-98.