登录
首页 PLC论坛 三菱Mitsubishi
回帖 发帖
正文

主题:三菱FB中调用TON指令编译报错,怎么解决

点击:6515 回复:14

楼主
三菱建立FB调用TON指令报错是怎么回事,不用FB使用TON指令编译可以通过
附件 2222.jpg
最后修改:2019/4/19 14:38:24
19-04-19 14:37
上传你编译出错的程序。
Good Luck~
19-04-19 15:51
附件:
[本地下载]
测试附件
19-04-19 16:13
1、我修改了你的定时器数据类型从TON_E到TON_HIGH_E,它通过了编译。
附件 workpicture1.jpg
2、我在GX Works2中重新建立一个新项目,然后将你的功能块代码复制粘贴到新项目中:
附件 workpicture2.jpg
它竟然没有任何问题!
我的GX Works2软件版本为:
附件 workpicture3.jpg
它工作在Win10下。
Good Luck~
19-04-19 22:32
嗯嗯!该一下数据类型就可以编译通过了,这二个有啥区别呢
19-04-20 08:36

引用 PYM6116 在 2019/4/20 8:36:15 发言【内容省略】

TON_E调用低速定时器,TON_HIGH_E调用高速定时器,由于FB调用需要返回主程序的特性,一般不在FB中使用定时器。
Good Luck~
19-04-20 09:20
FB里面用这种定时器肯定会报警的,三菱的话要用_E结尾的,因为_E结尾的本身就是FB。而原来那个是要系统中断的。
19-04-20 22:12

引用 MIC小赖 在 2019/4/20 22:12:37 发言【内容省略】

您没有看清问题的本质。
这个问题在于楼主的程序中使用TON_E会报警而换成TON_HIGH_E就好了,引发的新疑问是高版本软件中同样的代码并不需要改动也正常,并不涉及FB中能否使用定时器的问题,况且带E和不带E的FB之间的区别仅仅是EN,ENO的区别,其他没有区别。
19-04-21 05:52
其实我的意思是FB里最好用IEC定时器,或者直接自己获取系统脉冲来写时基计数器。
19-04-21 11:49

引用 MIC小赖 在 2019/4/21 11:49:28 发言【内容省略】

TON_E就是IEC定时器啊,其他定时器TIMER_FB_M了表情
19-04-21 14:28

上一页下一页

工控新闻

更多新闻资讯