登录
首页
PLC论坛
三菱Mitsubishi
回帖
发帖
正文
主题:子程序与扫描周期的关系
点击:2049 回复:8
楼主
编辑
引用
管理
492165156
提了一个子程序的问题以后把我自己绕晕了。
当时的问题就是子程序的触发信号是一个PLS信号,只存在一个扫描周期,如果子程序写长了就执行不了,改短了就可以成功。
虽然解决了但是我没明白。
PLC执行程序的时候,不是会把每一条指令都过一遍吗,扫描周期的定义不就是把所有指令扫描完的时间吗,为什么会出现扫描周期不够的问题呢?
19-03-12 16:51
1楼
编辑
引用
管理
zrx517697809
使用PLS触发子程序,子程序只会从上往下执行一遍,如果子程序内有延时、循环等就会有问题了
19-03-12 17:27
2楼
编辑
引用
管理
szhenlong
程序虽然是不停扫描,通讯指令是中断输出的。例如主机向下位机发送命令,下位机向主机回传数据,这个时间是不固定的,有时要远远大于PLC的扫描周期。
19-03-12 18:21
3楼
编辑
引用
管理
mjinbao
子程序不执行时,应当是不占用扫描周期时间。
19-03-12 19:32
4楼
编辑
引用
管理
492165156
我大概明白了,谢谢解答
19-03-12 20:06
5楼
编辑
引用
管理
sxjice545
扫描不到那一块啊。
条件不满足的段不会走到母线最右端,也就不会执行子程序跳转
19-03-13 07:27
6楼
编辑
引用
管理
492165156
你可能误会了我的问题
19-03-13 21:00
7楼
编辑
引用
管理
sxjice545
你是说没执行完对吗?
第一次还在执行,第二次压根就过不去,怎么执行?
19-03-14 08:41
8楼
编辑
引用
管理
szhenlong
问题的根本是弄清扫描与刷新输出。扫描与CPU的时钟有关,只要加电就不停地扫描;刷新输出与指令类型有关。I/O点这些数字量扫描一次刷新输出一次,定时器、通讯、计数器等需要内部中断,虽然也在扫描,条件不成立并不会输出,只有扫描到中断标志才会输出,当然在此期间需要一直维持这些指令的执行条件。
你的通讯指令只维持一个扫描周期,如果能在一个周期内完成,能收到完整数据,如果一个周期不能完成,而下一个周期又失去了维持通讯的条件,当然就不会得到什么信息了。
19-03-14 19:44
工控新闻
中控技术亮相"化工届奥林匹克",创始人褚健发表《人工智能发展加速流程工业智能化》演讲
霍尼韦尔发布智能船舶解决方案和《智造新引擎》白皮书
技术报告 | 劳易测安全激光扫描仪RSL 200
海外收入跨越式增长 中国工程机械从“走出去”到“走进去”
VisionChina2026(上海)机器视觉展焕新登场,报名抢占黄金展位!
皮尔磁:氢能安全——未来能源的关键命题
投资与技术双轮驱动 美团机器人生态版图初显
GTF 聚焦展直击:EVIDENT 工业内窥镜系列为燃气轮机安全护航
更多新闻资讯