1)掌握数学运算指令的应用。
2)掌握数码管与PLC的连接方法。
3)掌握数码管的驱动方法。
使用S7-1200 PLC实现9s倒计时控制,要求按下起动按钮后,数码管上显示9,松开起动按钮后数码管上显示值每秒递减,减到0时停止。无论何时按下停止按钮,数码管显示0,再次按下开始按钮,数码管上的显示值依然从数字9开始递减。
1.I/O分配
根据PLC输入/输出点分配原则及本案例控制要求,可知本案例的输入点为起动和停止按钮,输出为1个数码管,在此使用七段共阴极数码管,因此可对本案例进行I/O地址分配,如表2-6所示。
表2-6 9s倒计时的PLC控制I/O分配表
(续)
2.I/O接线图
根据控制要求及表2-6的I/O分配表,9s倒计时PLC控制的I/O接线图如图2-24所示。
图2-24 9s倒计时PLC控制的I/O接线图
3.创建工程项目
双击桌面上的 图标,打开TIA博途编程软件,在Portal视图中选择“创建新项目”,输入项目名称“D_djs”,选择项目保存路径,然后单击“创建”按钮完成项目的创建,并进行项目的硬件组态。
4.编辑变量表
本案例变量表如图2-25所示。
5.编写程序
S7-1200 PLC中没有段译码指令,在数码显示时只能使用按字符驱动或按段驱动。本案例采用按字符驱动,所谓按字符驱动,即需要显示什么字符就输送相应的显示代码,如显示“2”,则驱动代码为2#01011011(共阴接法,对应段为1时亮),具体程序如图2-26所示。
图2-25 9s倒计时PLC控制的变量表
图2-26 9s倒计时的PLC控制程序
图2-26 9s倒计时的PLC控制程序(续)
6.调试程序
将调试好的用户程序及设备组态一起下载到CPU中,并连接好线路。按下起动按钮SB1不松开,观察此时Q0.0~Q0.6灯灭情况,显示的数字是否为9,松开起动按钮SB1后,数码管上显示的数字是否从9每隔1s依次递减,直到为0。按下停止按钮SB2后,再次起动9s倒计时,在倒计时过程中,按下停止按钮SB2后,是否显示数字0,若上述调试现象与控制要求一致,则说明本案例任务实现。
1)训练1:用按段驱动法(显示数字时需要哪段亮程序就输出相应的段)实现本案例控制要求。
2)训练2:用共阳极数码管实现本案例控制要求。
3)训练3:用按段驱动法实现15s倒计时的PLC控制。