[三菱] 一个可以在西门子和三菱PLC直接Ctrl+C/V的演示

[复制链接]
查看184 | 回复0 | 2024-10-13 13:05:13 | 显示全部楼层 |阅读模式
>

点击蓝字

关注不迷路

昨天我们分享了关于ST语言编程中位逻辑的运算,今天就以一个简单的电机正反转控制电路为例,来说明一下ST语言在西门子和三菱PLC中的编程与仿真。



控制要求:

要用到的控制按钮:正转、停止、反转;控制电机接触器的:正转和反转输出信号;

以上信号在PLC中变量表示方式:

动作顺序:

按“正转”-“电机正转”-“停止”-“电机停止”-“反转”-“电机反转”-“停止”-“电机停止”



当电机在正转中,按反转按钮无效;反之同样。

·先以西门子博图编程为例:

首先在使用变量前需要进行变量分配,如下图所示:

梯形图表达型式:



根据前篇文章分享的逻辑运算符使用规则,就可以将以上梯形图程序转换为SCL语句:

"Motro_M1" := ("FWD" OR "Motro_M1") AND NOT "STOP" AND NOT "Motro_M2";

"Motro_M2" := ("REV" OR "Motro_M2") AND NOT "STOP" AND NOT "Motro_M1";

在博图编程软件中显示,如下图所示:

下面启动仿真,离线模拟一下,看是否与我们梯形图编程时一样,满足控制需求:

离线模拟可正常运行,表明SCL语句书写无误。

PS:在西门子博图中,变量区分局部变量和全局变量,像上面例子中,我们用到的都是全局变量,在程序的显示格式只有一个双引号;

当使用局部变量时,显示格式会在变量前自动加“#”符号;如下图所示:

全局变量在全程序的任何地方都可以使用,会占用真实的I/O点位;

局部变量只在当前程序块中有效,所以也可以与全局变量名称重复,写的程序块采用OB1主程序调用的方式,一般都采用此用法。

·下面来看一下,在三菱PLC中ST语句编写和仿真:

前面的变量定义还是按上面的表格名称进行变量设定,如下图所示(使用GX Works3软件编程演示):

此处哦我们采用了局部变量,按前面分享的优缺点。

下面进行程序编写,还记得前面文章说的吗?ST语言可以在不同PLC品牌之间同样方式使用,所以此处我们可以从西门子博图中语句表达式复制张贴过来,如下图所示:

启动仿真,进行变更对应按钮的状态来控制电机的动作,如下图所示:

以上采用同一个案例进行西门子和三菱不同PLC品牌之间的ST语言编写和仿真,可以看到此编程方式的通用性更强,也很方便。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则