只需一步,快速开始
微信扫码登录
我本以为PLC是硬件逻辑编程,应该和普通硬件逻辑元件一样,比如触发器,只要输入信号满足要求,就自动触发,输出相应改变,不需要CPU监督执行。
但现在感觉不是那么回事了,好像PLC要像普通软件一样,在运行时要占用CPU?
比如一个10ms延时元件,如果它在运行时,是否CPU就不能做其它事情了?
哪位大虾能给我一个明确的答案,在此多谢了!
使用道具 举报
感谢二楼的回答!
但我还是有些不清楚,就是“一次扫描时间(one scan time)就是PLC执行以上所列的3个步骤所需的时间。”假设我程序中要执行一个延时100ms的元件,是否我的一次扫描时间就要大于等于100ms呢?即如果在这100ms期间发生事件输入变化,我们的PLC是监控不到的?
我的直觉是这样的,即PLC只是实现程序的输入输出,至于程序中执行的逻辑、延时,相当于实际电路中的电路元件,是不受PLC控制(不包括输入变化)的。即PLC不需要等100ms的时间,而是在这期间不停的扫描输入输出。扫描周期就是所有程序的输入输出端口扫描时间。
还希望大家不吝赐教!
因为运行方式很重要,如果是PLC解释运行,就要考虑程序运行时间对扫描时间的影响。如果是象实际电路一样,就要考虑存储单元不能公用,以免出现逻辑混乱。
还是有些不明白啊!
2楼的“步骤2-执行程序”,应该怎么理解?比如项目中有三个网络(p1、p2、p3),plc扫描输入后,三个网络是否就同时更新了输入,然后象硬件逻辑电路一样,自动根据输入变化而使输出变化,然后就是“步骤3”?
还是plc先执行p1,然后p2,然后p3。如果是这样先后执行,那么在执行p1(假设p1中有多个逻辑门串联)时,p1中的各个逻辑门执行需要多少个脉冲周期(根据逻辑门的多少和复杂程度变化?)。
因为在学习单片机的时候,记得每个指令有自己的执行时间,复杂指令占用时间要长。plc是否也是如此呢?每个逻辑门根据功能复杂程度,有长短时间的区分,还是象硬件逻辑的元件一样,只有响应时间的区别,而不是执行逻辑门耗用多少脉冲?
http://www.melectron.com/download/PLC%B5%C4%B9%A4%D7%F7%D4%AD%C0%ED.pdf
对这个问题感兴趣的可以看看上面这文章,但还有个问题就是输入输出扫描是不是我们编程控制?
如果不是,那么我们编程中用到的上升(下降)沿触发电路,对输入信号来说还有意义吗?
因为plc扫描到的是1或0,没有上升下降的区分,如果要区分就要加入对比逻辑了!
谢谢我有点明白了
顶
为懂
炽热
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
|小黑屋|手机版|Archiver|PLC技术网-PLC论坛 ( 粤ICP备17165530号 )|网站地图
GMT+8, 2024-5-12 15:08 , Processed in 0.065754 second(s), 25 queries .