图说S730017 高级编程UDT一、案例说明1、控制对象4个控制方式相同的电机。2、单个电机控制要求(1)按下启动按钮-电机启动,并开始计时-到达设定时间后发出电机维护 提示(2)按下停止按钮-电机停止,并停止计时,但并不将时间清零。(3)电机运行时间小于设定值,时间不能复位,电机运行时间达到或。 超过设定值后按下复位按钮时间置0,电机维护提示消失。(4)当电机发生故障时,电机停止运行,并发出报警,故障处理完毕后 必须手动确认复位报警信号才能再次启动电机。 (5)任何时间电机停止,计时停止,电机运行,继续计时,时间只能有 复位按钮可以清零。3、要求将四个电机的所有参数放在1个DB块中,方便管理和做上位接口 二、案例分析根据控制要求得出单个电机所需I/O输入:启动、停止、故障复位、计时复位、电机维护周期、电机故障报警输出:运行、故障报警、已运行时间、电机维护提示 根据案例说明3中的要求我们需要自定义结构UDT和DB块的配合使用三、编程1、首先建立UDT结构如下图所示2、建立存放参数的DB块,并建立以上图为结构的四个电机的数据3、建立FB1块进行编程,首先建立接口如下图所示程序如下4、为四个电机分别建立FB1程序的背景DB块,从DB2到DB5如下所示5、OB1中编写程序如下图所示四、仿真监控,变量表监控DB块监控