【专家大讲堂】20211123 S7-200 SMART编程探秘之子程序和中断-直播答疑
直播时间:2021年11月23日 19:30-20:30
主讲专家 : 屈扬
课程主要内容如下:
1. PLC 程序执行逻辑和相关影响
2. 子程序调用对于整个程序的影响
3. 中断执行过程中的奇怪现象
4. 回顾和总结
课程回看链接:
https://www.ad.siemens.com.cn/1847/Video/VideoPlay?courseId=3501
直播答疑精选:
1. 系统块设置了通信背景时间,这与扫描周期有什么关系?
A:系统块的通信背景时间是5%-50%,是可选的,它的含义是,通信执行的时间占扫描周期的百分比。如果要增大背景时间,扫描周期就会增加,从而就减缓了控制过程的运行速度。在通信量较小的情况下,不太建议去修改,反之是可行的。
2. Modbus从站是中断写的吗?
A:是的。Modbus从站和主站都是使用自由口通信模式实现的,都用的是接收完成中断和发送完成中断实现的。如果可以调用的话,可以调用Modbus的库指令,调用完成后打开程序块,里面有个库,有子程序和中断程序,但是无法查看程序代码。
3. 子程序能否传入定时器变量?
A:子程序多次调用不能使用定时器,单次调用没有使用限制。
4. S7-200 SMART 都是异步指令吗?
A:不是,一般通信是异步指令,但是加法指令、运算指令、比较指令都不是异步指令。
5. 如何找到峰值或者峰峰值?
A:可以使用指针进行多次比较的方式判断。
6. 同步指令可以被中断吗?
A:指令会被中断是因为程序在执行过程中,数据有两个地方会被赋值,但是不知道数据的更改的具体位置,因此和同步、异步无关。如果此时在中间触发中断的话,会出现一致性问题,我们应该避免出现一致性问题的现象。
7. S7-200 SMART 走PN通讯,可以驱动几根轴?
A:V2.4版本以上的最多可支持8根轴。
8. 定时中断的优先级可以提高吗?
A:不可以,关于中断的优先级是固定的,无法进行提高。
9. 中断什么时候执行?是周期的吗?
A:中断根据功能分为,定时中断、输入中断、接收完成中断等。定时中断有100毫秒,那么100毫秒就会触发一次;输入边沿中断就是通过外部输入触发的;自由口的接收完成中断,当你接收到了就会触发中断。
10. 中断里面可以调用FOR指令吗?
A:FOR指令是进行多次扫描,在中段里面调用FOR指令,中断执行时间会加长,但不会影响结果。
11. 两个100毫秒的中断程序如何排列先后顺序?
A:中断的触发是根据优先级,同时触发是根据优先级,如果有先后顺序,那么谁先触发谁就先中断。
12. PID应用,降低设定值,此时实际值比设定值高,但是输出还是会增大是什么原因?
A:说明PID的参数设置存在问题,该现象一般是比例过小导致可以适当增大比例参数值
或者比例参数为负也会导致该现象的出现?
13. S7-200 SMART的通讯支持以太网TCPIP协议或者其他协议,和第三方组态软件例如VB读写数据吗?
A:S7-200 SMART支持开放式以太网协议,MODBUS TCP协议,PROFINET协议,如果第三方支持相同的协议就可以正常通信。
14. 子程序可嵌套8级,L临时变量地址区域实际大小为64B*8级=512B,在同一级的子程序共用同一级的64B,这种说对吗?
A:正确 子程序的多次调用不会增加局部变量地址的使用。
15. 子程序中OUT变量的线圈输出和置位输出是不是一样的效果?
A:线圈和置位的输出效果不一样。置位和复位需要配合使用。
欢迎大家继续盖楼讨论,或关注官方微信公众号-西门子工业1847俱乐部,了解更多相关信息。