3)进行PID运算,按照运算结果,驱动步进电机以调节温度;
4)每隔半小时,由定时器产生中断申请,在中断服务程序中启动打印机,打印记录温度值及检测时;
5)若发现温度超限时,发出报警信号。
2.2温度检测与控制主程序
主程序功能:完成系统初始化操作;判断温度是否超限,如果超限则转报警处理,如果未超限则读入K1、K2、K3、K4状态,并根据其输入状态,散转执行相应的功能子程序。主程序流程图如图6所示。
图6 主程序流程图
2.3主要的子程序流程图
1)PID运算子程序:取出温度给定值与测量值,计算出偏差信号e(k),将e(k)与设定的死区值比较,如果P(足)未超出死区范围,则本次输出调节量为0,返回检测程序;如果e(k)超出死区范围,则计算出p(k)=Pp(k)+P1(k)+Pn(k)的调节输出值。
2)步进电机驱动程序:本系统选用三相步进电机,采用三相六拍工作方式,各绕组供电的步进信号由8155的A口控制,其转动方向及通电顺序字见表1。
表1 步进电机转动方向及通电顺序字
根据步进电机的转向与工作时绕组通电顺序变化规律,可以在8155的RAM中设置步进电机的控制字表,如表1所示,表头地址为TABO,表尾地址为TAB7。显然,驱动信号从TAB0开始控制通电顺序,电机为正转;若从TAB7开始控制通电顺序,则电机为反转。
步进电机的转速由脉冲信号的周期T决定。脉冲信号的周期由CPU通过延时程序或定时器/计数器的定时时间来确定。系统中的三相绕组由8155的A口控制是,程序中的延时时间为10电机的转速为:n=60/(N×T)转/分式中N一
来源;21ic
关于控制,MCU就介绍完了,您有什么想法可以联系小编。