登录
首页 PLC论坛 信捷XINJE
回帖 发帖
正文

主题:分别接通m0-m10,能否把0-10的数据分别写入D0-D10

点击:2550 回复:19

这程序有问题啊
这是高位编码,只取最高位
14-12-29 10:48
不懂帮顶
14-12-29 11:02
12楼
该帖内容不符合相关规定!
14-12-29 15:40

引用 cvlsam 在 2014/12/27 8:44:16 发言【内容省略】

C大上诉程序智能实现高位编码,我进行了仿真如导通由M0、M1--M10导通能实现楼主原程序的要求,但先导通M10再降序导通M9--M0因为ENCO指令实行高位编码,M10以下的对应的数据将不被传送。例:先导通M10后D10的值将为10,再导通M9后D9的内容依旧为0,不会按照要求变为9。
最后修改:2014/12/30 8:32:41
14-12-30 08:32

引用 逆水行舟 在 2014/12/30 8:32:00 发言【内容省略】

这是他的风格,一般例程中都会留有Bug,这样就不是帮楼主做作业,而是提供思路了。表情
14-12-30 10:24
这本来就是只取一位,所以实现不了
14-12-30 12:51

引用 sxjice545 在 2014/12/30 12:51:29 发言【内容省略】

所谓的实现不了是因为你可能M0~M10同时按多位,那么只要确保每次按1位就可以了。
至于怎么确保每次按一位,CVLSAM留下来一个接口,就是SUM的结果保存在D100中,那么每次比较这个值,大于1就不理睬就可以了。
14-12-30 14:58

引用 fujifa 在 2014/12/30 14:58:38 发言【内容省略】

M0-M10是不是有同时置位的可能不得而知,关键是至少在这里,要求没有说明清楚,你得考虑的,对吧?
因为存放数值的寄存器不是同一个,所以不排除,甚至一直出现多位置位的情况。
14-12-31 08:16
18楼
该帖内容不符合相关规定!
14-12-31 09:20

引用 cvlsam 在 2014/12/27 8:44:16 发言【内容省略】

非常感谢,编码用得非常巧妙,,,同时也在此感谢大家的参与,日后如有需求,请发……281477110@qq.com
15-01-01 23:57

上一页 上一页

工控新闻

更多新闻资讯