点击↑↑技成培训 ,关注并置顶即可长期免费订阅
19万+工控人关注的微信平台:技术分享、学习交流、工控视频
熟悉西门子的人都知道,西门子PLC支持的语言很多,除了最基本的LAD、FBD、STL之外,还有很多在国内不是很常见的语言,其中包括GRAPH、SCL、CFC、SFC等等。
这些语言虽然不是很常见,但对于一些特定的场合却可以起到很重要的作用。
今天我们就来说说GRAPH。
![bffd281da615152b2920b09f9dec757a.png](https://i-blog.csdnimg.cn/blog_migrate/9e4f356a8f7180a4c4ceaa5638a90be7.jpeg)
西门子系列PLC包括300、400、1500系列(除S7-1200外)均支持GRAPH指令,而S7-200系列虽然没有GRAPH语言,但是却拥有GRAPH的缩减版,那就是步进命令,有过实际编程经验的朋友都知道,在一些特定的场合需要使用循环反复的步进指令,这个指令可以自己编写,也可以直接使用PLC内部的步进指令。
只是GRAPH语言比步进语言强大得多了,所以西门子自300PLC开始,专门做了一个插件(升级包),该插件的授权需要在STEP7软件的基础上额外购买。
博途软件因为系统软件的高度集成化,所以GRAPH也集成在了博途软件里,所以安装过博途软件的朋友可以直接在博途里使用该语言编写300/400/1500系列PLC的程序,下面用一个简单的例子来说明GRAPH指令的应用。
假设,我们需要做一个顺序控制的程序,程序分为4步,每步对应不同的生产工艺即不同的输出,每步以不同的脉冲命令作为使能条件。
步骤如下:
1)、
电脑需要安装带仿真的博途软件
2)、
打开软件,建立新项目
3)、
添加一个新设备,这里选择cpu317-2dp,保存项目
4)、
回到程序编辑区,点开“程序块” 双击创建一个FB,选择GRAPH语言,依次编写程序,
图示:
5)、
在程序里输入指令如图;
![8c3761c43cbf2e098c6335cef1f34dae.png](https://i-blog.csdnimg.cn/blog_migrate/8247f241ee1ec28874d1ea2f5ea81a3c.jpeg)
第一步,输出命令置位Q0.0
第二步,执行条件为I0.2,输出命令为置位Q0.1
第三步,执行条件为I0.3,输出命令为复位Q0.0和Q0.1
第四步,执行条件为I0.4,输出命令为结束该程序块
6)、
编写完程序后,回到OB1中调用FB1,系统会要求生成一个背景数据块,我采用默认数据块DB1,调用完程序后,我们填写FB1管角,仅需要填写第一个和第二个;第一个是中止功能块FB1命令,第二个是执行FB1功能块,也就是程序里第一步的执行条件。
7)、
编译,如果没有问题就可以打开仿真,并下载到PLC里
8)、
将PLC打到RUN模式,然后将测试的输入输出加到仿真里。
9)、
然后测试,先后将I0.1,I0.2,I0.3,I0.4激活,可以看到输出也发生了变化。
![20405747e87da4aca2060f5fc09e7dd6.png](https://i-blog.csdnimg.cn/blog_migrate/d1505ab61e58577e32c209402b6715ac.jpeg)
其实GRAPH里面除了文中所述的步进指令外,还有其他的功能,其功能完全可以实现各种复杂的功能。
来源:网络,版权归原作者,侵删
分享好文,就点在看~
点↓阅读原文免费学电工、PLC等电气知识