PLC程序家族的故事 点击:241 | 回复:2



月子欧元

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:59帖 | 1452回
  • 年度积分:0
  • 历史总积分:2257
  • 注册:2012年3月02日
发表于:2012-05-30 20:25:22
楼主
  1.程序家族有哪些成员?
    PLC的控制程序一般由主程序、子程序和中断程序组成。西门子的S7-300/400将子程序分为功能(Function,或称为函数)和功能块(Function Block)。
    在每一个扫描循环周期,CPU都要调用一次主程序,用户程序必须有一个并且只能有一个主程序。小型控制系统可以只有主程序。
    中断程序用于快速响应中断事件。在中断事件发生时,CPU将停止执行当时正在处理的程序或任务,去执行用户编写的中断程序。执行完中断程序后,继续执行被暂停执行的程序或任务。
    2.哪些情况需要使用子程序?
    当系统规模很大、控制要求复杂时,如果将全部控制任务放在主程序中,主程序将会非常复杂,既难以调试,也难以阅读。使用子程序可以将程序分成容易管理的小块,使程序结构简单清晰,易于调试、查错和维护。
    子程序也可以用于需要多次反复执行相同任务的地方,只需要编写一次子程序,别的程序在需要的时候多次调用它,而无需重写该程序。
    3.怎样调用子程序? 



    主程序可以调用子程序,子程序也可以嵌套调用别的子程序。嵌套调用的层数是有限制的,例如S7-200的最大嵌套深度为8级。
    执行完子程序后,返回调用它的程序中的调用指令的下一条指令。
    4.每个扫描周期都会执行子程序吗?
    子程序的调用可以是有条件的,在被调用期间,每个扫描周期都要执行一次被调用的子程序。调用条件不满足时不会执行子程序中的指令,因此使用子程序可以减少扫描循环时间。
    5.停止调用子程序后,子程序中的线圈处于什么状态?
    停止调用子程序后,不再执行子程序中的指令。子程序中线圈对应的编程元件如果没有受到别的程序的控制,将保持子程序最后一次执行后的状态不变。即使控制这些线圈的触点的状态变化,该线圈对应的元件的状态也不会变化,因为这时根本就没有执行子程序中的指令。
    6.怎样实现子程序的无条件调用?
    有的PLC的子程序调用指令不能直接接到左侧的垂直“电源”线上,需要通过触点电路来控制是否调用子程序,即子程序的调用是有条件的。可以用一直为ON的特殊位元件(例如S7-200的SM0.0或FX系列的M8000)的常开触点来实现子程序的无条件调用。


楼主最近还看过



青岛黄工

  • [版主]
  • 精华:5帖
  • 求助:89帖
  • 帖子:171帖 | 4776回
  • 年度积分:0
  • 历史总积分:24301
  • 注册:2007年4月02日
发表于:2012-05-30 21:39:44
1楼
学习的路过,楼主能举例就更好啦,。。。。。。。。。。

z小屁孩y

  • 精华:0帖
  • 求助:0帖
  • 帖子:24帖 | 605回
  • 年度积分:0
  • 历史总积分:1064
  • 注册:2012年3月02日
发表于:2012-05-30 22:08:34
2楼
不错,学习了。。。。                        

热门招聘
相关主题

官方公众号

智造工程师