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

问题描述 投票:0回答:2

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

我正在使用 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。

首先我尝试使用“复制”,但有一个单选按钮可以忽略零。该单选按钮已选中并禁用(无法更改)。 。该软件的文档说“选项:当源是数据存储器寄存器地址并且目标是TXT地址时,此选项可用。”但由于我只想要一个 ID,并且需要在程序中的任何地方将此 ID 与 = 进行比较并递增它,所以我不想放置字符串。

然后,我可以使用数学将公式分配给变量。我尝试把零放在一半的时间里。请注意,即使它可能像这样,“一次射击”复选框也不会被选中。

关于此选项,文档称“One Shot:选择 One Shot 仅在启用梯级的每次从 OFF 到 ON 转换后求解一次公式。” 但是,为了能够再次将该值设置为 0,我需要重新启动 PLC。当我第一次执行程序时,一切都很好,因为该值已经是 0。当我重新启动它时,该值没有重置,所以它仍然是 7,并且它会跳过我的所有操作。然后它重置为0(最后会这样做),当我重新启动PLC时,我能够正常运行它一次。 这是当前通过但未设置值的示例:

是PLC的bug吗?有解决办法吗?

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

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

automation plc
2个回答
1
投票

虽然我解决了我的问题,但我只是把它推得更远。感谢 Garry Shortt 的 youtube 频道 致力于 PLC 编程帮助我解决了问题。

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

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


0
投票

非常感谢您提出问题并给出答案。 已经过去很多年了,这引导我回答我自己的问题。 我的问题与仅在一次扫描中调用子例程有关。 导致一大堆问题。

再次感谢您。

© www.soinside.com 2019 - 2024. All rights reserved.