如何在PLC程序中判断SIEMENS数控机床执行过断电重启或NCK_RESET
1、需求
有时候需要在PLC中获取一个标记位,用于判断机床上电运行的时间以及时刻点。然后利用这个标记位触发读取数控机床启动的时间点以及运行的累计时间。
2、方法
西门子840Dsl/840D/810D都是集成S7-300系列PLC,在S7-300系列PLC运行机制中,每当PLC执行启动的时候会运行一个暖启动组织块OB100,该启动块中有20byte的启动信息,其中包含了PLC-CPU的启动类型(OB100_STRTUP),机床断电重启或NCK Reset属于自动暖启动,只需要把这个信息读出来就可以作为机床启动的标记位信息。
3、实施
可以在PLC程序项目的OB100中编写程序如下:
读取OB100中启动信息的TEMP变量与自动暖启动的数值进行比较,条件成立,则把标记位置位为1状态。其中启动类型变量OB100_STRTUP的值代表含义如下:
B#16#81: 手动暖重启,NCU模式开关4,从位置2->0;
B#16#82: 自动暖重启,NCU断电重启、NCK Reset。
读取到标志位信号为“1”之后可以通过SFC1读取PLC的时钟,也可以通过主控系统读取标记位上升沿信号在总控PLC中的时刻点。
机床上电运行的累计时间,可以在PLC中编程序存储在PLC数据块变量中,也可以在总控PLC总计时累加。后续的程序处理,在本文中不加以详细描述。
赞 (0)