问题解答结构化常见案例语言SCL(指令数组变量语言周期)

有人提问SCL语言编程与西门子PLC的关系,我们都知道PLC调试设备,需要输入设备语言(让设备懂你想让它做啥),而SCL就是这样演变出的存在,下面我们就一起看看,在这过程中遇上的一些常见的疑问吧问:如果第二次按HomePB,i需要清零吗?答:不需要,FOR循环里面,i每次都会从0开始
问:复位的数组是定义了的吗?答:对,数组在静态变量里定义的
问:把99改成3会是什么结果?答:会复位数组的前四个,后面的不会复位
问:张老师,执行这个FOR指令需要9个PLC扫描周期还是1个?如果循环1000次,会PLC运行超时报警吗?答:FOR指令是1个扫描周期,PLC的处理速度是非常快的,1000次的循环时间还远不及超时报警
问:常闭触点怎么表达?答:常闭触点加NOT,表示取反
问:数组跟循环有什么关系?答:可以用循环处理数组里面的数据
问:for循环在一个扫描周期?答:对的,FOR循环是在一个扫描周期内
问:那个I是什么作用?答:i这里是用作FOR循环语句里面的变量,它是根据FOR指令的语法做变化的,当然你也可以使用其他变量,这里我们习惯用i
问:数组里面就一个数#i?怎么还叫组?答:数组是可以根据下标进行寻址的,这里的i是变化的
问:数组跟复位有什么关系?答:电磁阀这类布尔量可以组成一个数组,可以对布尔量进行复位当然也可以对数组进行复位问:下降沿的怎么标示?答:F_TRIG指令检测下降沿
问:每一次结束后对 i递增吗?答:FOR循环指令里面是这么执行的,增量可以通过BY指定
问:for循环周期是plc扫描周期?答:不是,PLC扫描周期包含FOR循环周期
问:定时器的数据在这SCL中是哪个?答:如果你指的是当前值,那么就存放在定时器输出ET里面
问:那in是不是也可以写在括号外?答:输入需要写在括号内
问:这个定时器的变量个数有限制?答:理论上是有限制,但一般情况下是用不完的,请放心使用
问:梯形图有en scl都写到in吗?答:SCL跟LAD不同,没有EN,你想要的EN逻辑可以通过加IF指令实现
问:R_TRIG_是上升沿?那下降沿?答:下降沿是F_TRIG指令
问:r_trig 在一个程序里面用建多个吗?答:可以多个
问:A AND NOT B B:=A 这能否代替 R_TRIG?答:你的程序可能没写全,是可以自己用逻辑做出来上升沿的
问:IF和CASE有先后顺序吗?答:没有,你哪个写在前面先执行哪个
问:老师,stl和scl有什么区别啊?答:STL是语句表,相差非常大
问:如果start与stop都为1怎么办?答:按逻辑执行最后面的语句
问:老师case能放到下面吗?答:可以放到下面的,程序逻辑不受影响
问:CASE是MOVE指令还是相当于一个变量存储区?答:CASE是SCL里面的专有指令,它起到一个枚举作用
问:老师,为什么在static那里建 变量?谢谢答:static里面是局部变量,当然你也可以用类似于M这样的全局变量
问:老师,工艺流程图中扫描完case1为啥直接扫描CASE4?答:那个工艺流程图我只是做一个示意,是切换并不是扫描,可以通过编程随意的切换到CASE里面的一个状态
问:同时接通为什么不是状态1?答:STOP的状态2在后面,执行后面的程序
问:老师,请问一下400的软件用scl语言与博图的scl有什么区别吗?答:语法上没有区别
问:DB 块里面变量为啥和临时变量一致了?答:那个是背景DB块,自动根据FB生成的
问:ALT指令是什么?答:ALT是三菱里面的交替指令
问:梯形图好不直接转scl?答:不能转
问:梯形图指令里的 “取反”指令怎么写 ALT指令?答:NOT表示取反
问:张老师是不是scl在条件里面双线圈是不是就不存在了?答:这个也要看逻辑,它也会从上而下执行
问:IF#A这个语句中,#A=1?答:对,如果A为逻辑1则执行后面的语句
问:#A,#B是什么意思?答:是布尔型的局部变量
问:老师问不懂西门子plc,学过C语言,这个可以学会吗?答:有PLC基础就可以学,你稍微了解下西门子编程基础就可以
问:SCL语言可以和梯形图在一个项目里能互用吗?答:可以的,可以穿插使用
问:这跟模块化编程有什么区别?答:结构化的主要思想是建立通用的模块,方便后期使用
问:SCL可以做成功能快 梯形图调用可以吗?答:可以的,可以混合使用
问:梯形图和scl语言可以互相转换吗?答:不能转换
问:ST语言一个IF语句大概占用几步?答:在SCL/ST语言里面我们一般用占用内存来衡量
问题解答结构化常见案例语言SCL(指令数组变量语言周期)
(图片来源网络,侵删)

联系我们

在线咨询:点击这里给我发消息