步进阀门闭环扼制摹拟剖析

来源:网络  作者:网络转载   2019-10-09 阅读:462

  1系统设计。

  1.1系统工作原理。

  主要由键盘,LCD显示,AT89C52单片机,L297,光电耦合,L298驱动芯片,步进电机,光电编码器电路构成。

  系统工作原理:单片机通过按钮设定脉冲值,光电编码器测得步进电机的实际位置,通过编码器接口电路反馈到单片机。单片机通过比较设定值与实际反馈值(脉冲个数)得到差值,经过PID控制算法得出控制量。单片机根据控制量,改变脉冲输出个数,通过L297脉冲分配器,光电耦合,经L298驱动芯片进行功率放大输出,控制步进电机。为得到反馈脉冲波形,将反馈信号连接到L297和L298驱动芯片之间,软件加入随机数干扰,使设定值与P0.1输出值不一致,模拟外界对步进电机的扰动,通过PID控制算法,用LCD显示设定脉冲值,实际位置值与反馈脉冲值,反馈实际位置值,从而达到了仿真效果。

  1.2驱动电路。

  控制脉冲信号的脉冲分配可以用软件实现,其缺点加重微处理机和程序设计的负担。采用集成芯片L287,L298分配脉冲,驱动步进电机。L297是步进电机控制集成芯片(包括环形分配器),脉冲分配器内部是可逆计数器,加上一些组合逻辑,产生每周8步的时序信号应用于微处理机控制两相双极性和四相单极性步进电机,同时设于晶片内的PWM斩波线路容许以开关形式控制线路的电流,方向控制(CW/CCW)与P0.0连接,时钟(CLOCK)与P0.1口连接,CONTROL为高电平时对A,B,C,D有控制作用。通过光耦连接L298.L298是内含双H桥高电压大电流驱动器,接受标准TTL逻辑电平信号,可驱动电压46V,每相位2.5A以下的步进电机。

  1.3光电编码器电路设计仿真。

  光电编码器输出A,B两个互差90°的方波信号,当光电编码器顺时针旋转时,A超前B90°,反之B超前A90°。光电编码电路设计时,步进电机位置反馈的脉冲信号直接连接到D触发器和与门电路,D触发器作为方向判断器,门电路和可逆计数器完成计数功能。A相信号在相位上超前B相信号,经D触发器后Q为低电平,C2输出为高电平,A,B经与门C1输出一个脉冲,计数器累计加1,反馈为步进电机顺时针旋转一周。B相信号在相位上超前A相信号,经D触发器后Q为高电平,C2输出为低电平,A,B经与门C1输出一个脉冲,计数器累计减1,反馈为步进电机逆时针旋转一周。软件部分用KEILC51μVision3编译程序,生成。HEX文件,在proteus中双击AT89C52,在ProgramFile中载入。

  HEX文件,点击运行,P0.1输出脉冲,反馈信号A,B脉冲和C1输出脉冲及光电编码器仿真图。

  1.4步进电机闭环控制设计仿真。

  硬件设计:加入5个按钮,分别控制步进电机开/关和4个不同位置量(不同脉冲个数),仿真步进电机控制的阀门开度等问题,并在LCD上显示各个参数,为减小干扰,在脉冲分配器与驱动器之间加入光电耦合器。

  软件设计:AT89C52内含2个外中断口,3个16位可编程定时计数器。用片内单片机定时器中断方式产生周期性脉冲(高优先级),来控制步进电机转动步数,用另一个定时器计反馈脉冲数。软件总体包括3部分:主循环程序,中断服务子程序以及其他相应服务子程序(包括键盘,LCD显示,延时,PID控制,驱动子程序);系统采用C语言模块化结构,用KEILC51μVision3编译程序,点击闪存?配置闪存工具?输出,生成。HEX文件,在proteus中载入。HEX文件。

  由于单片机P0.1输出8个脉冲信号经L297脉冲分配器A,B,C,D输出,产生步进电机一个旋转周期信号,所以反馈信号就产生一个脉冲信号,当设定脉冲值为8的整数倍时,光电编码电路的反馈信号为完整周期脉冲,能准确反馈步进电机旋转周期位置,当设定脉冲值不为8的整数倍时,步进电机接近稳定时,反馈脉冲信号与设定脉冲值经PID运算产生周期信号,C2输出脉冲,反馈A,B脉冲,C1输出脉冲。

  为提高反馈电路脉冲度,又真实模拟外界对步进电机的扰动,硬件上反馈电路输入端直接连接在A2,C2端口,U5:A的6端口为方向反馈,接单片机P2.3端口,将反馈计数脉冲P3.4直接连接到P0.1;软件上加入随机数种子进行干扰,使设定值与反馈值(输出值)不一致,从而改变脉冲输出值;单片机比较设定值与反馈值(脉冲个数),得到差值,经PID算法多次运算达到稳定输出,并在LCD上显示设定值,反馈值,PID算法运行次数和后一次脉冲校正值。用KEILC51μVision3编译程序,生成。

  HEX文件,在proteus中载入。HEX文件,点击运行。

  2PID算法软件设计。

  在连续控制过程中,PID控制算法结构简单,参数易于调整,采用增量式数字PID程序对脉冲输出进行控制。

  增量式数字PID的数学表达式可写为:△u(k)=A1e(k)-A2e(k-1)+A3e(k-2)(1)

  式中A1=KP<1+T/TI+TD/T>;A2=KP<1+2T/TI+TD/T>;A3= KPKD/T;KP为比例系数;T为采样周期;TD为微分周期;TI为积分周期;KI为积分系数,KI=KPT/TI;KD为微分系数,KD=TD/T.软件实现PID算法流程。

  3结语。

  提出了一种利用proteus对步进电机位置控制仿真,从而控制阀门的方法。构建的仿真系统能很好实现步进电机的位置设定,位置反馈,状态显示的闭环控制过程。通过PID算法程序设计与proteus硬件仿真实现了所期望的控制过程,对自动控制系统的实际设计有很大辅助作用。

标签: 步进
打赏

免责声明:
本站部份内容系网友自发上传与转载,不代表本网赞同其观点;
如涉及内容、版权等问题,请在30日内联系,我们将在第一时间删除内容!

购物指南

支付方式

商家合作

关于我们

微信扫一扫

(c)2008-2018 DESTOON B2B SYSTEM All Rights Reserved
免责声明:以上信息由相关企业或个人自行免费发布,其真实性、准确性及合法性未证实。请谨慎采用,风险自负。本网对此不承担任何法律责任。

在线咨询

在线咨询:

QQ交流群

微信公众号