加入收藏 在线留言 联系我们
关注微信
手机扫一扫 立刻联系商家
全国服务热线15915421161

SIEMENS西门子吉林省白城市(授权)伺服电机一级代理商——西门子东北总代理

更新时间
2024-11-26 07:00:00
价格
请来电询价
西门子总代理
PLC
西门子一级代
驱动
西门子代理商
伺服电机
联系电话
15903418770
联系手机
15915421161
联系人
张经理
立即询价

详细介绍
一、前言

本文将会讲解高度抽象的设计模式,设计模式与案例无关,并不以案例讲题。反正学校按这种方式教了那么久也没人听得懂。我将主要以理论为主,避免与具体案例绑定,以防止读者先入为主,以为某一设计模式只能适用于某案例,或某一设计模式只能单独使用,不能结合其它设计模式,又或者某一案例只适合某一设计模式。

快捷键:

  • Shift + Alt + F4  转换和编译所有程序
  • Alt + O + W  PLC写入
  • 简单程序

    Y0 := TRUE;
    K1Y1 := HF;//指从Y1开始的4个连续端口设置为二进制1111,也就是四路导通。

    为什么要用K开头呢?K在PLC符号中代表后面的文本将作为十进制数字使用,然而数字不能用于标识符的第一个字母,这是所有编程语言的通例。K1是指4个连续端口。为什么是4个?1位16进制数代表4个端口。这个K1是指“1位16进制数”的意思,也就是4个开关量。如果改为K2,就是“2位16进制数”,代表8个开关量。Y1表示从Y1端口开始计数,实际上就是C语言里的起始指针,数组指针之类的含义。

    三菱ST编程相对西门子更简单,因为它可以直接使用X、Y、M、D这几个系统标识,而西门子变量和端口全部都要声明,然后定义到指定地址才能使用。

    二、结构化文本入门

    PLC的经典用法就是串并联逻辑电路,ST语言的串联用AND操作符,并联用OR操作符,动断触点(常闭)用NOT操作符,此外还支持奇校验XOR操作符。

    2.1 单按钮M1 := X0 AND NOT M0;(* 上升沿检测,如果X0是通,M0是断,则M1是通 *)
    Y0 := Y0 XOR M1;(* 上升沿的时候转换状态,如果Y0和M1中通的个数为单数,则Y0为通,否则为断 *)
    M0 := X0;(* 记忆X0的上一个状态 *)

    2.2 起保停

    X0为通时Y0设置为通,X1为通时Y0设置为断,自锁电路。

    Y0 := NOT X1 AND (X0 OR Y0);

    在梯形图中,有一种专业的自锁电路的替代方法,就是SET和RST指令。它们在ST中被封装成系统宏函数。

    SET(X0, Y0);(* 按下X0时,Y0置位 *)
    RST(X1, Y0);(* 按下X1时,Y0复位 *)

    这是推荐使用的方法,简单易懂。ST宏函数和系统功能块非常多,我们能够记住一些指令就很不容易了,何况它们还有不同的参数。GX Work2提供了一个快捷键,Ctrl + F1,把插入点定位在写好的函数名上,按Ctrl + F1,IDE会自动插入参数提示。如果连函数名也不记得了,可以在右边的窗口双击插入函数名或功能块名。西门子Portal则是从左边的自定义程序和右边的系统程序中拖拽到工作区。系统函数的第一个形参都是使能标志,相当于每一个系统函数内置了一个条件表达式,只有当第一个形参传入TRUE(通)的时候,才执行指令的功能。

    2.3 XOR高电平奇校验Y0 := X0 XOR X1 XOR X2;//做一个三联开关,X0,X1,X2的状态变化都会引起Y0翻转。

    这个程序在X0,X1,X2之中任意一个改变状态时,都会使Y0状态变化,也就是任意一个开关都可以自由地操作灯的亮灭。这个表达式如果要用标准的串并联梯形图来做,会非常麻烦。

  • 连续XOR表达式也叫“高电平奇校验”就是输入点中TRUE的个数为单数的时候,结果为TRUE,双数的时候结果为FALSE。
  • 连续WOR表达式(低电平奇校验)的效果是输入点中的FALSE个数为单数时,结果为FALSE,双数的时候结果为TRUE。

  • 我们做逻辑运算多用的是高电平奇校验公式,很少用到低电平奇校验公式。当奇校验公式中有奇数个常量目标电平时,根据奇校验的算法,可以证明它等价于偶校验,其实也等于在中间的某个位置加入一个NOT运算符或对Zui终结果取反。

    了解了奇校验的特点后,我们也可以用一个计数器来代替奇校验公式。

    2.4 上升沿和下降沿

    ST中的上升沿检测使用LDP,下降沿使用LDF。升级版的单按钮控制:

    Y0 := Y0 XOR LDP(TRUE, X0);

    LDP的第一个形参还是使能的意思,几乎所有的指令都有很大概率在第一个形参写TRUE,因为三菱PLC所有的指令都需要使能,而多数情况下,这些指令是需要yongjiu使能的。LDP的第二个形参是上升沿检测的变量,这里检测的是X0的上升沿。实际上对应单片机内部电路,X0的引脚可能是收到了下降沿,这个LDP是指的从断到通的状态,与单片机电平方向无关。当收到上升沿的时候,LDP返回一个扫描周期的TRUE,TRUE与XOR组合,就等价于一个NOT,就将Y0翻转了,而LDP只返回一个扫描周期的TRUE,所以也只有这一个扫描周期的XOR等价于NOT,其余扫描周期则为XOR FALSE,也就是不起作用。这样就实现了X0在从断到通时Y0会发生状态翻转,也就是记忆按钮的效果。

    2.5 定时器和计数器

    定时器

    输出自变量,ENO:执行结果:位。定时器触点:TS普通,STS累计。定时器线圈:TC普通,STC累计。定时器当前值:TN普通,STN累计。

    计数器

    输出自变量,ENO:执行结果:位。计数器触点:CS。计数器线圈:CC。计数器当前值:CN

    扩展AB相编码器的ST写法

    扩展阅读https://blog.csdn.net/rediculous/article/details/102656817注意:ST语言不能直接写C251

  • C和T元件的线圈加第二个字符C,如CC0, TC1等,C就是Coin线圈。
  • 触点加S,如C0的触点就是CS0,S就是Switch开关的意思。
  • 数值加N,如C0的数值就是CN0,N是Number数字的意思。
  • ST编写AB相编码器

    OUT_C_32(TRUE,CC251,0);

    第一个参数是使能C251,当它为TRUE时,X0和X1被指定用于C251,这是PLC内部系统的设计,无法更改。第二个参数如果是CC251,表示使用C251,如果是CC252就使用C252。

    C252比C251多使用一个X2作为复位。C254比C252多一个X6做外部使能。C253和C252功能一样,但绑定的是X3,X4,X5。C255和C254功能一样,但绑定的是X3,X4,X5,X7。

    第三个参数是CS251的阀值。即CS251 := CN251 >= [第三个参数]。与普通计数器不同,第三个参数不会限制计数器的增长。如果不需要使用CS251,则第三个参数可以随便写。计数器复位当然,C251也可以使用RST(X2, CN251);来复位,C252也可以用OUT_C_32(X6, CC252, 0);RST(X2, CN252);达到与C254一样的效果。但指令表的响应时间为0.3ms,比直接使用内置的功能慢。

    梯形图剩下的功能就只有定时器和计数器了。下面演示一下定时器和计数器的用法。这个程序功能为按下X0两次后,Y0输出1秒的通,然后变回断。


    相关产品

    联系方式

    • 电  话:15903418770
    • 联系人:张经理
    • 手  机:15915421161
    • 微  信:15915421161