直播课堂
HOME
直播课堂
正文内容
傻瓜plc编程 如何使用三菱ST语言编写一个完整的项目程序,照着写就能成功
发布时间 : 2024-10-09
作者 : 小编
访问数量 : 23
扫码分享至微信

如何使用三菱ST语言编写一个完整的项目程序,照着写就能成功

哈喽,大家上午好呀!

今天给大家带来如何使用三菱ST语言编写一个完整的项目程序

本文作者:陆冯

【本文如有不足之处,请各位高手指点】

众所周知,目前类似于C语言的ST结构化文本语言,已经成为了目前工控行业PLC编程的主流发展趋势。目前,三菱、西门子、施耐德等各大PLC厂商的编程软件,包括国产PLC所采用的CODESYS软件,这些编程开发平台均支持ST结构化文本语言。例如:西门子的SCL、三菱的ST等等。

当然,各家之间只是叫法不一样,但是本质上都是一样的。各家PLC厂商的ST结构化文本语言和C语言非常类似,并且符合IEC-61131-3国际电工委员会规定的标准,像定时器、计数器这些软元件,都有标准的数据结构和形式。因此,ST结构化文本语言,有着“支持跨平台移植”的独特能力,在它的面前,所有的PLC众生平等,不再有品牌之分,只要写一遍程序,就可以同时下载进入不同厂商生产的PLC,实现同样的功能;另外,ST结构化文本语言,也有着在“复杂数据运算处理”方面的天然优势。

那么,【西门子的SCL语言】或者【三菱的ST语言】好学吗?难吗?好用吗?为了回答这些问题,我特意今天给大家写出这样一篇文章,以FX3U小型PLC控制分拣设备为例,详细阐述三菱ST语言的在项目中的使用方法,并对程序进行详细的解析。

(设备总体视图)

正文开始:

内容目录

一、程序架构

二、详细程序解释

(注意:本文中全部程序是面向智控教育新北校区的物料分拣设备所编写的,不适用于世界上任何其他设备)

首先我们明确一点,我们要做的,是让这个设备安全、正确、高效 地运作起来。这是我们的唯一目的!那么为了这个目的去进行PLC编程调试。一个好的电气工程师编写出来的程序,应当具有:安全性、正确性、高效性、移植性和扩展性。PLC程序其实就是人的意志的延伸,你的思维和意识基本决定了这台设备是个傻瓜,还是聪慧过人,当然,这个世界上不可能有完美的程序.......

一、程序架构

为了我们的设备能够正常运行,我们将程序分为以下几个部分:

IO映射程序:

负责PLC输入输出虚拟地址与实际地址的映射。这样的做法,可有效降低PLC某个触点在损坏后,现场维修人员的工作量;并且,我们在本文第二章中,将详细讲解如何借助IO映射实现暂停和设备定时停机功能。

手动程序:

负责在设备进入手动状态后,对各个执行机构的手动操纵。

自动程序部分又分为6个小部分:

1.复位程序:

负责执行设备的复位,并对设备复位完成情况进行判断。

2.急停程序:

负责执行设备的紧急停止,该程序在被调用后,设备将无条件立即停止运行,所有机构停止运动,并保持当前位置不动,等待用户确认后,按下“复位按钮”进行设备复位。

3.暂停程序:

负责设备的暂时停止,该程序在被调用后,设备将无条件立即停止运行,所有机构停止运动,并保持当前位置不动,等待用户按下“启动按钮”进行重新启动,设备将继续去执行没有完成的任务,接着暂停前的流程继续正常运行。

4.预停程序:

负责执行设备的预先停止,该程序在被调用后,设备将在搬运完一个工件,也就是完成一个周期的顺序动作后立即停止运行,所有机构停止运动,并保持当前位置不动,等待用户确认后,按下“复位按钮”进行设备复位。

5.统计程序:

负责设备的完成工件数量的计数,并将数据存储到对应的数据寄存器中;同时为我们这套系统的1分钟工件完成趋势曲线提供参照数据。

6.顺控程序:

作为承载和配合以上4个子功能程序的主体,它负责对设备各个状态下的机构控制,但是也是最好写、行数最多的程序。

二.详细程序解释

1.实际输入信号X的全局标签建立

在全局标签中,建立类别为“全局标签-变量”,并设置对应的“标签名”,数据类型选择为“Bit”(位数据类型),并指定输入软元件X的编号,GXworks2软件会自动调出对应的X输入软元件地址。

2.实际输出信号Y的全局标签建立

在全局标签中,建立类别为“全局标签-变量”,并设置对应的“标签名”,数据类型选择为“Bit”(位数据类型),并指定输入软元件Y的编号,GXworks2软件会自动调出对应的Y输出软元件地址。

3.IO映射数据的全局标签建立

在全局标签中,建立类别为“全局标签-变量”,并设置对应的“标签名”,数据类型选择为“Bit”(位数据类型),并指定输入软元件M的编号,GXworks2软件会自动调出对应的M辅助继电器的软元件地址。

注意:在ST语言的全局标签建立过程中,可以不指定绝对地址,但是我们为了方便上位机HMI从PLC中读取各个信号的数据,要进行绝对地址指定,否则程序就会多出一个子程序部分,用这个子程序把数据传到绝对地址中,用来对监控信号的抓取操作,这样就不可取了,还不如直接在这里指定。

4.开关量数据(0/1标志位)的全局标签建立

在全局标签中,建立类别为“全局标签-变量”,并设置对应的“标签名”,数据类型选择为“Bit”(位数据类型),并指定输入软元件M的编号,GXworks2软件会自动调出对应的M辅助继电器的软元件地址。

注意:这些“0/1标志位”的建立,是为了ST语言程序在设备动作中,存储设备的动作完成信号、物料判别信号、系统中断信号、下一步动作许可信号等程序数据。

5.数字量数据(“字”数据类型状态存储器)的全局标签建立

在全局标签中,建立类别为“全局标签-变量”,并设置对应的“标签名”,数据类型选择为“Word”(“字”数据类型),并指定输入软元件D的编号,GXworks2软件会自动调出对应的D数据寄存器的软元件地址。

注意:这些“字”数据类型状态存储器的建立,是为了ST语言程序在设备动作中,存储设备的状态信号、完成个数、周期数量统计等程序数据。

6.HMI交互数据的全局标签建立

在全局标签中,建立类别为“全局标签-变量”,并设置对应的“标签名”,数据类型选择为“Bit”(位数据类型),并指定输入软元件M的编号,GXworks2软件会自动调出对应的M辅助继电器的软元件地址。

注意:这些“HMI交互数据”的建立,是为了PLC与上位机HMI之间的信号交互,主要是操作按钮,也是这台设备实现“人机交互”的关键一步。

7.IO映射、设备暂停程序的编写

将实际输入X软元件的状态,通过赋值语句传递到PLC内部我们建立的“I映射数据”;将PLC内部的“O映射数据”通过赋值语句传递到实际输出Y软元件。

注意:我们在“输出映射”程序段中,IF语句的执行条件被设为“暂停标志”的不得电状态,如果我们将“暂停标志”设置为1,设备将不再进行输出信号的数据更新,PLC所有实际输出软元件Y,将保持“暂停标志”为1前的状态,保持当前位置不动,从而实现设备暂停的功能。

PS:当然我们可以使用“级联方式”对时间继电器编程,自由设置一段时间,当时间到了之后,将“暂停标志”设置为1,设备将不再进行输出信号的数据更新,从而实现“设备的定时停机”。当然,这只是IO映射程序的一种特殊用法,希望能帮助到大家。

8.初始化程序的编写

当设备上电时,所有输出全部复位,为设备运行做好准备。

9.手动程序的编写

当设备处于手动状态时,上位机HMI交互数据(也就是触摸屏上的按钮),将分别控制每个执行机构动作,实现对设备的手动操纵。

10.复位程序的编写

当设备处于自动状态,并按下复位按钮时,系统状态将置为2,系统执行复位,在满足所有复位条件(所有机构的复位信号传感器得电)的情况下,将证明系统复位已经完成,系统状态将变为3,设备进入等待启动状态。

11.顺控程序的编写

主要是,一步一步走下去,正确地操作状态的转移和标志位的更新,就可以完成任务了。我们的顺序控制程序,主要分为3个部分,每个部分之间,依靠标志位进行信息的交换,这些交换的数据内容有很多,比如:设备的动作完成信号、物料判别信号、系统中断信号、下一步动作许可信号等。

顺序控制程序,需要把“0/1标志位”和“字”数据类型状态存储器的配合使用,烂熟于心,因为顺控程序承载的是整个程序的主体,其他所有的功能都是在这个主体上建立的,这个程序要是写不好,基本什么都没戏了。

12.急停、预停程序的编写

当接收到“急停”或者“预先停止”信号时,系统将判断在何时,将顺序控制程序的“字”数据类型状态存储器置为“1”,让设备进入停止状态,设备将从顺序控制的自动运行状态中跳出,不再继续向下执行,PLC所有输出软元件保持当前状态不动作,0依旧为0、1依旧为1,所有机构不会再动,由此可以实现设备的安全停止,防止对人员的二次伤害。

13.统计程序的编写

根据程序中抓取到的信号标志位,并配合“字”数据类型状态存储器,实现对物料分拣总数量的统计;通过定时器T20定时,每隔1分钟对“一分钟统计个数产能”清零,为上位机HMI的统计趋势曲线提供数据依据。

到这里,我们的“智控分拣设备ST语言程序”就全部解释完了。

如果大家对三菱ST语言感兴趣,可以来常州智控教育学习,这里有配套完整、功能先进的教学设备,有认真负责、一丝不苟的专业老师,能够帮助您在工控之路上,走得更快、更远!!!

中文编程简易PLC一体机的编程指令介绍

指令说明

通过控制器的按键编程

软件都是按 32 路输入,32 路输出设计的,不管实际产品是多少路,程序可设置范围都是 X00-X31,Y00-Y31。 为了提高多路同时控制效率,支持 Xxx-xx,Yxx-xx 这种指定端口范围的多路同时控制指令。

程序组分类

1.逻辑控制(第 Z17 组,160 行,可以满足大部分要求)

编程逻辑:

如果 xxx 条件满足,那么做 xxx 动作。 如果 xxx 条件:包括“如果”“与”“或”三条指令,可以实现单个或多个输入条件的逻辑运算组合。 做 xxx 动作:包括“输出”“计数”“延时”等指令,可以实现多种动作控制。

序号

指令

操作对象

操作参数

1

如果

端口:X00-X31

端口:Y00-Y31

闭合: 开关接通;

断开: 开关断开;

上跳:开关接通瞬间——上升沿;

下跳:开关断开瞬间——下降沿

计数器:C00-C99

>/</= 0000000-9999900 次

>/</= DC00-DC99,人机界面的计数

计时器:T00-T99

>/</= 00.00 秒-99:59 时

>/</= DT00-DT99,人机界面的延时

2

输出

端口:Y00-Y31

闭合: 开关接通,并自锁;

断开: 开关断开,并自锁;

点动:开关接通,不自锁;

翻转:开关接通/断开切换;

程序组:Z00-Z17

运行:从当前位置启动工作;

停止:停在程序的开始处;

暂停:停在当前位置;

重启:从头开始运行;

快进:当前延时归零;

运行/停止:两者切换;

暂停/运行:两者切换;

3

计数

计数器:C00-C99

空格:让 Cxx 计数 0000000-9999999 次,

=/+/- :给 Cxx 赋值 0000000-9999900 次

4

延时

计数器:T00-T99

空格:让 Txx 计时 00.00 秒-99:59 时

=/+/-:给 Txx 赋值 00.00 秒-99:59 时

: :让 Txx 计时 DTxx,人机界面的延时

2.延时控制/顺序流程控制—Z00-Z15 组,每组 160 步,可设置很多延时控制

编程逻辑:

通过“输出 xxx 动作,等 xxx 时间,再做 xxx 动作,再等 xxx 时间”,可以实现

任意开关顺序和时间间隔的延时控制;

通过“如果 xxx 条件成立,程序向下执行,否则等待”实现顺序流程控制; 通过“如果 xxx 条件成立,程序跳转到 xxx 步,否则向下”实现条件转移控制; 通过“循环 xxx 步 xxxxx 次”,实现有限次数的循环控制,循环嵌套控制。

上电选项:(其中“上电运行/上电继续” 是带掉电记忆的,只有 Z00-Z01 组有)

上电启动——通电自动从头运行, 上电停止——通电后等待按钮启动或日历定时启动, 上电运行——通电后从上次断电的位置开始运行, 上电继续——通电后继续断电前的状态,是运行就继续运行,是停止就停止。

序号

指令

操作对象

操作参数

1

输出

端口:Y00-Y31

闭合: 开关接通,并自锁;

断开: 开关断开,并自锁;

翻转:开关接通/断开切换;

程序组:Z00-Z17

运行:从当前位置启动工作;

停止:停在程序的开始处;

暂停:停在当前位置;

2

延时

立即数:

00.00 秒-99:59 时

立即数以 0.01 秒精度倒计时

定时器:T00-T59

空格:定时器 Txx 以 0.01 秒精度倒计时

=/+/-: 定时器Txx通过=/+/-方式赋值

::让 Txx 计时 DTxx,人机界面的延时

3

计数

计数器:C00-C99

空格:计数器 Cxx 以 1 次为单位计数;

=/+/-:计数器 Cxx=/+/-方式赋值

4

如果

端口:X00-X31

端口:Y00-Y31

闭合/断开-向下:如果条件成立,程序 向下,否则等待;

闭合/断开→xxx 步:如果条件成立,程 序转 xxx 步,否则向下执行;

5

循环

xxx 行 xxxxx 次

无条件跳转到 xxx 行 xxxxx 次

3.日历定时—Z16 组,160 行,可设置 100 多个时段

编程逻辑:

先校准系统时间,然后设置定时时段,当系统时间到了定时时段内,就会执行

定时后面的动作。

当只设置了定时,没有设置定日的话,定时指定的时段每天都有效,或在指定

的星期日几下都有效。

当只设置了定日,没有设置定时的话,定日指定的时段一天 24 小时都有效。 同时设置了定日和定时的话,则两组指定的时段都满足才有效。 日历定日和开关量输入输出做简单的与运算,可实现定时允许控制。

序号

指令

操作对象

操作参数

1

校时

20xx 年 xx 月 xx 日,xx

时 xx 分 xx 秒,

按北京时间校准,星期 x 会自动生成, 有纽扣电池供电保持。

2

定时

xx 时 xx 分 xx 秒- xx 时

xx 分 xx 秒

星期 0123456

指定一天内的时段,精确到秒,可选择

星期日一二三四五六哪一天有效。

3

定日

20xx-20xx 年 xx-xx 月

xx-xx 日

指定年/月/日的时段。

4

端口:X00-X31

端口:Y08-Y31

闭合: 开关接通;

断开: 开关断开;

5

输出

端口:Y00-Y31

闭合:时段内闭合,时段外不控制

程序组:Z00-Z17

运行:时段内运行,时段外不控制;

停止:时段内停止,时段外不控制;

通过云服务器或者内置网页编程-1

通过云服务器或者内置网页编程-2

相关问答

三菱sfc新手入门教程?

首先说一下sfc的结构,sfc程序由块组成的,分为梯形图块和sfc块,程序烧入PLC后执行,还是那句老话:从上至下,从左至右,循环扫描。1.梯形图块,就是一整个梯...多...

PLC里的PID是什么意思有什么作用?详细一点谢谢入门者

[最佳回答]在过程控制中,按偏差的比例(P)、积分(I)和微分(D)进行控制的PID控制器(亦称PID调节器)是应用最为广泛的一种自动控制器。比例调节作用:是按比例反...

变频器励磁故障如何处理?

一、首选检查一下电源开关通电方面是不是出现了问题,如果不确定可以进行一下专业的电源测试,如果是电源问题直接换一个电源开关接线即可!二、如果电源测试正...

数控榫槽机应该怎么选?

[回答]都集中在广东区域,广东交通比较发达,竞争优势强劲,由于经济比较靠前,所以相应的成本就比较高,在设备价格方面,南方设备成本普遍比北方设备...第三...

朋友有谁知道在线等!自主研发的水泵智能控制器多少钱一台,...

[回答]现有员工200余人,其中有中高级的研发及技术人员77人,公司以不断增长的实力成为有竞争力的高科技企业。立足于电机驱动产品研发,电机控制领域的方案...

ABB、发那科、库卡和安川这四大机器人厂家的机器人技术优势劣势状况如何?

因为之前关注过整个文章,这里觉得有人提问,就应当分享一下我看到的文章(文章转载自:韩峰涛作者如有需求请联系我删除)工业机器人四大家族你知道吗?abb...FANUC...

油压机和成型机都有哪结构款式和用途分类?-157****4158的...

油压机(液压机的一种)是一种通过专用液压油做为工作介质,通过液压泵作为动力源,靠泵的作用力使液压油通过液压管路进入油缸/活塞,然后油缸/活塞里有...

新型滚丝机有什么优点?

[回答]滚丝机的特点1.变频动力,主轴转速任意调节。2.PLC编程控制,人机界面操纵自如。3.功能齐全,自动,半自动,手动,切换自如。4.当不需要全自动生产时,可...

全自动滚丝机的突出优势有哪些?

[回答]动,操作自如,快慢速功能,稳定,效率高。4.结构紧凑,铸钢机身刚性强。5.构造简单,油箱内置,占用空间少,易保养维修。6.可加装自动送料装置,...4.结构...

龙骨成型机有哪些优势吗?

[回答]结构⑴、成型机电脑采用进口PLC的电脑主机芯片,匹配液晶显示屏,软件备用故障自我诊断系统及错误纠正功能,使操作更方便,其控制程序以傻瓜式设计,无...

 美凤有约  琉璃美人煞百度百科 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部