恭喜,你发布的帖子
发布于 2017-10-03 21:10:12
8楼
DATA[1]:=%IW 256: P, 只能处理一个,如果我要处理多个模拟量,需要多个这样的语句,不能用在循环中了。
对,你这样用间接寻址,你可以用循环了,你代码少了?要是哪天模拟量通道坏了,做维护的人就不爽了,他可能找不到这个模拟量点在什么地方用了,他不知道怎么改程序了。除非你手把手教他DATA.CHANNEL 就是模拟量通道的地址,比如256,就代表,取IW256的值。
做程序编,要考虑后续厂家的维护,作为维护人员,我不想知道你的程序是怎么工作的,只要满足我的要求就行,我只在乎哪天模块坏了,我换个通道就行
(当然有的厂家是直接换模块,懒的改点,改程序)
就是有100个通道,需要100个Data[1]:=%IW 256;这样的语句又如何,人家至少知道IW256在什么地方用了,iw256的符号是什么?_?,你用间接寻址,人家知道这个通道在哪里用吗?坏了,怎么办 半夜打电话找你吗?外围IO,最好和处理程序分开,IO传递到数据快,IO坏了 换个就行,厂家做维护的人也不需要了解你的应用程序。I0.0坏了,本来这个点是传递到DB1.DBX0.0,现在 我加了模块,硬件接线改到I100.0,厂家维护人员 只要把I 100.0传递到DB 1.DBX0.0就行。
我见过,有的公司标准化高的,外围IO点,全部放进DB里,在应用程序内部没有用到任何IO点来进行连锁的,而且IO区到DB快 是一个一个传输的,也没有用寻址+循环的方式。
只是个人建议了,毕竟每个人编程时,有自己的思路
不过,必须为楼主的专研精神点赞!加油↖(^ω^)↗!用户用起来 简单的程序就是好程序。
请填写推广理由:
分享
只看
楼主