熟悉西门子系统的人都了解,其PLC支持的编程语言多种多样。除了常见的LAD、FBD和STL外,还有许多在国内不常见的语言,如GRAPH、SCL、CFC和SFC等。这些语言在特定场合中具有重要作用。
我们来讨论一下GRAPH的应用。西门子系列PLC包括300、400、1500系列(除S7-1200外)都支持GRAPH指令,而S7-200系列虽然没有GRAPH语言,但却有其简化版本,即步进命令。有编程经验的人都知道,在某些特定场合需要使用循环的步进指令,可以自己编写或直接使用PLC内部的步进指令。
GRAPH语言相比步进命令要强大得多。因此,从300PLC开始,西门子专门为此开发了一个插件(升级包),需要在STEP7软件的基础上额外购买授权。
由于博途软件的高度集成化,GRAPH也集成在了博途软件中。因此,安装过博途软件的人可以直接在软件中编写300/400/1500系列PLC的程序。下面用一个简单的例子来说明GRAPH指令的应用:
假设我们需要制作一个顺序控制程序,包括4个步骤,每个步骤对应不同的生产工艺和输出,每个步骤都有不同的脉冲命令作为使能条件。
步骤如下:
电脑上需要安装带仿真功能的博途软件。
打开软件,创建新项目。
添加一个新设备,选择cpu317-2dp,保存项目。
在程序编辑区创建一个功能块(FB),选择GRAPH语言,编写程序如下:
步:输出命令置位Q0.0。
第二步:执行条件为I0.2,输出命令置位Q0.1。
第三步:执行条件为I0.3,输出命令复位Q0.0和Q0.1。
第四步:执行条件为I0.4,输出命令结束该程序块。
编写完程序后,在OB1中调用FB1,系统将要求生成一个背景数据块,采用默认数据块DB1,填写FB1管角,仅需填写个和第二个:个是中止功能块FB1命令,第二个是执行FB1功能块,即程序中的步执行条件。
编译程序,如果没有问题,可以打开仿真,并下载到PLC中。
将PLC切换到RUN模式,然后将测试的输入输出加入仿真中。
进行测试,依次激活I0.1、I0.2、I0.3、I0.4,观察输出变化。
除了文中提到的步进指令,GRAPH还具有其他功能,完全可以实现各种复杂的操作。作者曾见过德国工程师将GRAPH作为主体来编写程序,这些程序基本上没有多少人能够理解。
- 学PLC除了编程语言、接线控制,还有软件知识 2024-11-22
- 怎样理解西门子PLC置位和复位指令 2024-11-22
- 学西门子PLC的必备知识:如何用触摸屏来实现控制 2024-11-22
- 西门子PLC如何实现两灯交替闪烁的两种编程法 2024-11-22
- 一文帮你快速理解 PID 参数整定,初学者必入! 2024-11-22
- 学西门子PLC时,BCD码和十六进制要分清 2024-11-22
- 水塔水位的控制,分享一则西门子PLC应用实例 2024-11-22
- PLC大牛们,你真的懂OPC吗?西门子代理商 2024-11-22
- PLC串口通讯和通讯接口知识 2024-11-22
- PLC中开关量、模拟量、脉冲量的编程算法 2024-11-22