西门子PLC 的选择编程语言

编程技术 机器人技术
机器人及PCL自动化应用    2021-01-22    991

  选择编程语言:

  为编辑器设置编程语言

  当用户要生成某程序块或源文件时,应在对象的属性中设置用于生成该块或源文件的编程语言和编辑器类型。该输入确定当该程序块或源文件打开时,启动的是哪种编辑器。

  启动编辑器

  在SIMATIC 管理器中,用双击相应的对象(块、源文件,等),或选择菜单命令Edit > Open Object,或在工具条中选择相应的按钮,来启动相应的语言的编辑器。

  在表中列出的编程语言都可用于生成S7程序。在标准的STEP 7软件包中包括LAD 、FBD 、STL 。也可购买做为可选软件包的其它的编程语言。

  你可以选择一系列不同的编程方法(梯形逻辑、功能块图、语句表、高级语言、顺序控制或状态图形)。还可以选择是用文本方式编程,还是用图形方式编程。

  如果程序块中没有错误,可将其在梯形逻辑、功能块图和语句表之间进行切换。如果有部分程序不能切换,则用语句表显示。

  可用源文件的语句表生成各程序块,也可将各程序块反编译到源文件中。

  1.梯形逻辑编程语言(LAD)

  图形编程语言梯形逻辑是基于电路图表示法的基础之上,在程序段中将电路图中的元素如常开触点和常闭触点组合而成。一个逻辑块的程序部分由一段或多段程序组成。

  梯形逻辑程序段举例

图片.png

  梯形逻辑编程语言包含在STEP 7标准软件包中。梯形逻辑程序是用增量编辑器生成。

  2.功能块图编程语言(FBD )

  编程语言功能块图(FBD )使用类似于布尔代数的图形逻辑符号来表示控制逻辑。一些复杂功能诸如算术功能等,可直接用逻辑框表示。

  FBD 编程语言包含在STEP 7标准软件包中。

图片.png

  在FBD 方法中用增量编辑器生成程序

  3.语句表编程语言(STL )

  编程语言的另一种表示法是语句表,它类似于机器码的一种文本语言。每条语句对应CPU处理程序中的一步。多条语句可组成一程序段。

图片.png

  语句表编程语言类型包含在STEP 7标准软件包中。用这种语言,你可以用增量编辑器编辑S7块,在源代码编辑器中可以创建和编译STL 程序源文件,以生成程序块。

  4.S7 SCL 编程语言

  编程语言SCL (结构化控制语言)是一个可选软件包,它是按照国际电工技术委员会IEC1131-3 标准定义的高级的文本语言。它类似与PASCAL 类型语言,在编写诸如回路和条件分支时,用其高级语言指令要比STL 容易。因此,SCL 适合于公式计算,复杂的最优化算法或管理大量的数据。

  S7 SCL程序是在源代码编辑器中编写的。

图片.png

  FUNCTION_BLOCK FB20

  VAR_INPUT

  ENDVAL :    INT ;

  END_VAR

  VAR_IN_OUT

  IQ1 :     REAL;

  END_VAR

  VAR

  INDEX :    INT;

  END_VAR

  BEGIN

  CONTROL :=FALSE ;

  FOR INDEX:= 1 TO ENDVALUE DO

  IQ1 := IQ1 * 2;

  IF IQ1 >10000 THEN

  CONTROL = TRUE

  END_IF

  END_FOR;

  END_FUNCTION_BLOCK

  5.S7-GRAPH  编程语言(顺序控制)

  图形编程语言 S7-GRAPH属于可选软件包,适用于顺序控制的编程。它包括生成一系列顺序步,确定每一步的内容,以及步与步之间的转换条件。编写每一步的程序要用特殊的编程语言(类似于语句表),转换条件是在梯形逻辑编程器中输入(梯形逻辑语言的流线型版本)。S7-GRAPH 表达复杂的顺序控制非常清晰,用于编程及故障诊断更为有效。

图片.png

  程序块的生成

  用 S7-GRAPH  编辑器,将生成含有顺控器的功能块程序。相应的背景数据块中含有顺控器的数据,例如:FB的参数,顺序步和转换条件。用S7-GRAPH 编辑器能自动生成背景数据块。

  源文件

  通过S7-GRAPH 生成的功能块可以产生一个文本源文件(图形源文件),该源文件可由操作员面板(OP)或操作员接口文本显示(TD)编译显示成顺控器。

  S7 HiGraph 编程语言(状态图形)

  图形编程语言 S7 HiGraph 属于可选软件包,可以将程序中的各块做为状态图形编程。这种方法将你的项目分成不同的功能单元,每个单元有不同的状态。不同状态之间的切换要定义转换条件。用类似于语句表的放大型语言描述赋给状态的功能以及状态之间转换的条件。每个功能单元都用一个图形来描述该单元的特性。整个项目的各个图形组合起来为图形组。各功能单元的同步信息可在图形之间交换。

  各功能单元的状态条件的清晰表示,使得系统编程成为可能,故障诊断简单易行。与S7 Graph不同,在 S7 HiGraph 中任何时候只能一个状态(在S7 Graph中:“步”)是激活的。下列图形为功能单元的图形是怎样生成的(举例)。

图片.png

  图形组存在HiGraph源文件中 S7 program 之下的“Source”文件夹中。该源文件可编译成用户程序中的S7程序块。

  句法和形式参数在图形最后输入时检查(当工作窗口关闭时)。地址和符号在源文件编译时检查。

  6.S7 CFC  编程语言

  可选软件包CFC (Continuous Function Chart,连续功能图),是一种用图形的方法连接复杂功能的编程语言。

  编程语言S7 CFC用于连接已存在的各种功能。有许多标准功能不需要用户编程,而是可以使用含有标准块(例如:逻辑、算术、控制和数据处理等功能)的程序库。使用CFC 不需要用户掌握详细的编程知识以及有关可编程序控制方面的专门知识。只需要具有行业所必需的工艺技术方面的知识就可以。

  用户生成的程序块可按自己的意愿进行连接,连接的方法分不同的情况,如果用SIMATIC S7,可用S7编程语言中的任一种,如果是用于SIMATIC M7 则用C/C++ 编程语言。程序是按CFC 图表生成并存贮。这些程序存在S7 program下面的“Charts ”文件夹中。这些图表可编译成用户程序中的S7程序块。

本文为专栏作者授权科易网发表,版权归原作者所有。文章系作者个人观点,不代表科易网立场,转载请联系原作者。如有任何疑问,请联系ky@1633.com。
热门观点