电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 梯形图实例 >> 正文

西门子PLC:200smart(13-16章)_200smart 子程序

作者:佚名    文章来源:本站原创    点击数:    更新时间:2024/9/10

西门子PLC:200smart


第十三章

项目 Value Value
主程序 MAIN 一个项目只能有一个,循环扫描
子程序 SBR_0 项目中最多有128个,只有在调用时 才执行(子程序可以嵌套其他子程序,最多八层)
中断程序 INT_0 中断程序也可以像子程序一样写程序,最多128个,不会被调用,只能被中断事件触发

子程序的优点:
①优化主程序(方便调试);
②缩短PLC的扫描周期;
③可以项目移植,多次调用;

子程序 是否带参 是否有条件调用
子程序分类 不带参子程序 有条件调用
子程序分类 带参子程序 无条件调用

 

:手自动转换,手动自动转换开关I0.7;(0手动,1自动
手动模式:按I0.0电动;
自动模式:按I0.0自锁,按I0.1停止;
主程序:
 
手动子程序:
 
自动子程序:
 

总结:
调用条件断开时,且没有扫描到最新的状态,子程序中的QMTC都会保持调用条件消失之前的状态(若想停下来,要在子程序中使用下降沿复位)
 

2、带参子程序

有管脚或引脚的子程序

创建带参子程序的步骤:

  • 创建子程序;
  • 创建变量表(子程序中);
  • 写子程序;
  • 主程序调用子程序;

局部变量子程序的专属变量

  • 全局变量VBVWVD等,不能重复地址;
  • 局部变量:子程序专用,每个子程序有56个字节(表示为LBLWLD等)

例:创建子程序
创建一个求长方体体积的子程序

①创建子程序;
②创建子程序的变量表:
 

  • 变量表位于视图——组件——变量表
  • 变量表中的变量类型
    • IN输入
    • OUT输出
    • IN_OUT中间变量(若将底面积设置成中间变量,在子程序和主程序的引脚都能看得到)
    • TEMP临时变量(若将底面积设置成临时变量,在主程序中使用时,管脚处就看不到底面积了)
  • 可以有多个输出,如质量、体积等;
  • 要想在子程序中使用到底面积,又不想在主程序中出现,可以将底面积的变量类型设置成临时变量TEMP

③写子程序
 

写完子程序后,可以在:项目——指令——调用子程序例程中找到并使用

④主程序调用子程序
 

3、将子程序设置成库文件

①将子程序设置成库文件,有助于以后的程序中可以使用,也可以发送给别人使用具体步骤如下:

项目——指令——库(右键)——创建库(可以给子程序设置一个合适的名称)——下一页——添加、下一页——(不设置密码)下一页——(设置子程序版本号)下一页——创建

②创建完成后,库文件对应的磁盘中就多了一个子程序,如何找到这个刚刚保存的库文件呢?

  • 项目——指令——库(右键)——打开库文件
  • 然后就能跳转到对应的路径,要是删除掉这里的库文件,那么对应的库指令就消失了,不能做到其他程序也是用(广而用之)

③如何使用创建的库指令:

项目——指令——库中就能找到
 

使用后项目——程序块,双击就能看到库文件对应的子程序了

例:不带参子程序:往返运动,可手动,可自动

具体要求:在手动模式下,可以右行,可以左行。
在自动模式下,按下启动,开始右行,碰到右限位,自动左行,碰到左限位,又开始右行,如此循环。
手自动转换使用的是Q0.7
 

主程序
 
手动子程序
 
自动子程序
 

Tags:子程序,200Smart,西门子PLC  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
推荐文章
最新推荐
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询