SCL语言2—基础指令

2025-11-24 10:12:23      点击:

1.赋值运算符我们现在想要把数据5赋值给A这个变量,在其他语言里很容易达到,例如C语言"A=5;"就可以,那么在博图中我们怎么操作呢?我们先看梯形图语言是怎么实现的。


如图,我们只需要简单的利用Move指令将5传送给数据块中的A就可以实现赋值操作,那么在SCL中怎么实现呢?与其他语言中的赋值操作相同,在SCL中的赋值符号为 :=  它的作用就是将等于号右边的值赋给左边。如下图


这两个程序段实现的功能相同。下载到仿真我们看一下效果。如果编译有错误检查一下SCL语句末尾是否有;号。

发现A的值已经被赋值为5,同样的,我们也可以进行运算后赋值,如图:

也可以增加括号改变运算顺序,如图


下面我们来看一个点动案例,我们知道梯形图编程点动案例非常简单

用SCL转化的结果:

大家也可以发现一些规律,就是将原本的被控制量放在赋值运算的左边,将原本的控制量放在右边。

2.逻辑表达式

逻辑表达式用来表示逻辑上的'与'、'或'、'非'等关系。逻辑表达式是将操作数按位进行逻辑运算,其结果的数据类型取决于操作数的数据类型。例如Bool量的结果就是一个Bool量,逻辑表达式的运算符包括:AND(与)、OR(或)、NOT(非)、XOR(异或)。给大家看一段LAD程序


大家这个读起来应该不困难,那怎么转换成SCL大家可以自己试着想一想。

大家可以对比一下,肯定也难不倒屏幕前的各位。

3.关系表达式

< ,>,  = ,   >=,  <=, <>(不等于)这种关系表达式如果正确则值为1,如果错误则值为0


这个的意思就是当A大于B时小灯的值为1,就被点亮,反之不点亮。

然后给大家看一下西门子官方给的运算优先级,有细心的小伙伴也会发现,上面的关系表达式中是先计算了>这个判断逻辑进而进行赋值运算,所以运算的优先级也是我们要记住的一个点。

大家在写SCL的时候还是要注意运算的先后顺序,以免程序运行时出现错误。

下面我们来实现以下SCL的基础程序启保停


可以看出的是,在SCL的启动按钮与小灯常开触点的并联电路中,我们使用括号将运算优先顺序改变,从上表得知,AND的优先级高于OR,如果我们不加括号,则会导致运算顺序的改变,最终导致程序错误。

通过本章的学习,相信已经基本了解逻辑表达式、关系表达式、赋值表达式,并且掌握基础的LAD转变SCL的能力。下一章我们将学习SCL中的IF语法,使我们的SCL更上一层楼。

售前QQ客服1
点击这里
售前QQ客服2
点击这里
售前QQ客服3
点击这里
售后QQ客服
点击这里
手机网站二维码