登录
首页 PLC论坛 欧姆龙OMRON
回帖 发帖
正文

主题:omron plc 程序 简化

点击:2544 回复:16

用纸画出来,再拍照发上来,看文字还不明白,看似不行。
17-09-09 23:37
参考下面有的话,转帖
索引寄存器就是指针的意思。
比如:MOVE #20 IR0
MOVE #20  0030
MOVE #100  0030IR0
那么最后的结果就是#100被传送到(0030+IR0)联合指定的地址(#20 + #20 = #40)也就是0040当中。(很久没用OMRON的指令,可能指令写法有点问题,但意思是一样的) 并且你还可以再指令后加上+1指令  如INC   IR0 那么,指令执行完一次后,传送地址自动+1,下一次就传送到0041当中。 这样的指令结构经常用在过程控制当中,用来求平均值等
17-09-10 09:22
参考转帖
欧姆龙plc关于输出连续的dm区中的值
现在有一个问题就是,我在连续的dm区中输入了两百个数据,目的是程序运行的时候,我能够按顺序连续的输出到模拟量端口,举个例子:
假如dm0--dm200我已经输入了数据
程序运行的时候我需要过50ms先输出dm1中的值到模拟量输出口,然后再过50ms输出dm2中的值到模拟量输出口
有没有什么简单的方法,不用写那么多程序?多谢!
问题补充:另外欧姆龙有指针这个说法吗?
happybankym
满意回答
可通过间接寻址来完成,具体做法如下:
LD 25315(首次脉冲)
MOV #0 DM201
LD 执行条件
@MOV @DM201 输出通道
@INC DM201
意思是,PLC初始化时将数值0赋予DM201。然后当执行条件成立时,会把DM201中所指的地址值放入输出通道。因为初始时将0赋予了DM201,所以就会把DM0中的值放入输出通道。然后再将DM201的值加1。那么下次再执行的时候就会将DM1中的值放入输出通道,以此类推
欧姆龙的PLC中有指针这个说法,所谓的指针其实就是间接寻址的意思
最后修改:2017/9/10 9:52:58
17-09-10 09:31
还差一个当DM201等于200后,DM201重新置0的指令
17-09-10 09:55
索引寄存器也好,间接寻址也罢,如何合达到楼主的要求
附件 untitled1.jpg
17-09-10 11:43

引用 知道一点 在 2017/9/9 23:33:39 发言【内容省略】

cj1同样支持“地址增量复制”
附件 untitled1.jpg
17-09-10 13:09
调用功能块100次,程序还是写了100次。无异于脱了裤子打屁,不可行。
6楼的思路不错,但程序不完备,把一个周期的程序弄到100个周期来执行了,而且只执行一次就over。
我来当一回大神说说吧。
附件 未命名.jpg
系统时钟不能用在循环里,否则循环内数据不可控制,所以加了w0.01软节点,模拟测试,可行。
18-02-05 10:32

上一页 上一页

工控新闻

更多新闻资讯