在 PLC 的梯形逻辑中将整数 (DS) 重置为 0 (Koyo's Click PLC)

Resetting integer (DS) to 0 in Ladder Logic for PLC (Koyo's Click PLC)

我不确定这是否是梯形逻辑编程问题的好网站,但我会试一试。

我正在使用 Koyo 的 Click PLC C0-01 DR-D(描述页面:http://www.automationdirect.com/adc/Overview/Catalog/Software_Products/Programmable_Controller_Software/CLICK_PLC_Programming_Software)及其免费软件。我正在尝试在梯形逻辑中编写一个程序来通过 PLC 执行多个操作。为了跟踪当前操作,我使用一个递增的整数值作为当前操作 ID。但是,我无法将此值重置为 0。

首先我尝试使用 COPY,但有一个单选按钮可以忽略零。此单选按钮已选中并禁用(无法更改)。 。该软件的文档说 "Option: This Option is available when the Source is a Data Memory Register Address and the Destination is a TXT Address." 但由于我只想要一个 ID,并且我需要将此 ID 与程序中各处的 = 进行比较并递增它,因此我不想放置字符串。

然后,我可以使用数学将公式分配给变量。我试着把零和它的一半时间工作。请注意,"One shot" 复选框未被选中,即使它可能表现得如此。

关于这个选项,文档说 "One Shot: Select One Shot to solve the formula only once after each OFF-to-ON transition of the enabling rung." 但是,为了能够再次将值设置为 0,我需要重新启动 PLC。当我第一次执行程序时,一切都很好,因为该值已经是 0。当我重新启动它时,该值没有重置,所以它仍然是 7,它跳过了我所有的操作。然后它重置为 0(它在最后这样做)并且当我重新启动 PLC 时,我能够 运行 它正常一次。 这里是当前通过但未设置值的示例:

是PLC的错误吗?有解决方法吗?

简而言之,我正在寻找一种将值设置为 0 的可靠方法。

提前感谢您的回答。对不起,如果我违反了 40 条规则,我是新人,很高兴加入这个社区。

虽然我解决了我的问题,但我只是进一步推动了它。感谢 Garry Shortt youtube channel 致力于 PLC 编程,帮助我解决了我的问题。

他对问题的解释是“将数学更改为复制命令并将其放入您之前拥有它的主程序中。该程序似乎运行良好。 我唯一能想到的是当你使用子程序时,它们没有被扫描。例程中的项目是相同的,除非您在程序的另一部分更改了它们。"

希望有一天它会对某人有所帮助。