直播课堂
HOME
直播课堂
正文内容
plc宏程序编程 关于西门子12001500PLC的一些编程技巧
发布时间 : 2025-02-23
作者 : 小编
访问数量 : 23
扫码分享至微信

关于西门子12001500PLC的一些编程技巧

下面是XXX工程师的感受分享,可以作为参考!

1、 指令分为单扫描周期指令和多扫描周期指令。对于多扫描周期指令,如果EN或者REQ只使能一个扫描周期,该指令不能成功执行;例如大多数的通信指令;

2、 FB块的输入输出形参存储于背景数据块中,在调用该FB时实参可选;而FC块的输入输出是临时内存,必须指定实参才能运行;

3、 FB块的输入输出虽不是静态变量,但亦有保持功能,具体视程序而定;

4、 注意变量被多次赋值时的先后顺序!因为变量的值总会被最后执行动作更新,前面的值将被覆盖;例如下图:

程序初衷为当接受响应完成时ERR置位,或响应超时ERR置位。上述程序是可以完成正常功能的;但若二者互换,如下图:

接收超时时,ERR不会置位,因为rev_done为0,ERR被复位!

5、 STEP 7中的梯形图操作数、能流的监控特征色(蓝绿)、以及监控表中的布尔变量的刷新频率有限,可能不能反映真实的实时运行状况,可借助一个累加器来监视程序的运行状态;例如下图:

6、 单个扫描周期中,一个布尔变量的上升/下降沿只能读取一次;因为读取一次之后,其Pre变量已被立即刷新,后续的读取不能成功读到该变量的状态变化;

7、 数组访问越界将导致CPU错误,ERR灯闪烁;

8、 单扫描周期指令的循环操作是在单扫描周期完成的;

9、 多使用宏定义,可使程序易读、方便修改;

10、 关于能流:(1)能流流经某个具备EN和ENO的指令,并不一定代表该指令功能执行完成,只代表该扫描周期扫描完成;(2)算数运算、bool变量操作等单扫描周期指令的ENO输出代表该指令执行完成。

11、 FB/FC的EN端将为能流提供扫描通道,EN端断路,能流无扫描通路,内部变量将不再刷新,即该函数不再执行;当FB/FC的EN端总是使能,Enable输入断开,块内部仍有能流通路,相应变量会被扫描以致刷新;请注意二者区别;例见下图:

前者FB12内部的变量总会被扫描,而后者在M3.0或DB_Valve.done为1时,内部变量不会被扫描;相应的,前者done变量将被下一扫描周期置0,而后者done置1后将因能流不通不能扫描而自行保持;

转发是最大的鼓励!谢谢您的支持!

小贴士

PLC专属资料: 含有从入门到高级所有PLC学习资料(三菱/西门子/欧姆龙) ,电气经典18本大全书,历年电气考试真题、电气必备实训仿真软件、电气自动化行业各类型技术手册!

免责声明:本文转自网络,版权归原作者所有,如涉及作品版权问题,请及时与我们联系删除,谢谢!

如何获取更多 电气热门资料?

操作指引如下!

威纶通软件功能22 一篇文章让你学会简单的威纶通宏指令操作

前言

宏指令的作用

宏指令提供了应用程序之外所需的附加功能。在HMI人机界面运行时,宏指令可以自动的执行这些命令。它可以担负执行譬如数据运算,传送等

宏指令脚本语言

是威纶通自己的语言,类似于C语言

如何实现一个简单的宏指令?

第一步:确定变量类型

第二步:编写脚本语句

第三步:宏指令触发条件

举例:触摸屏上连接了PLC A和PLC B,想将PLC A的某个位信号传送给PLC B的某个位地址?我们详细来阐述

步骤一 确定变量类型

常见的变量类型有:

bool 布尔型 对应位

short 整数型 对应单字

int 整数型 对应双字

float 浮点型 对应小数

此案例中,传送位信号,选定变量类型bool

步骤二 编写脚本语句

此案例中,想将PLC A的某个位信号传送给PLC B的某个位地址,先使用Getdata函数获取PLC A的位信号,再使用Setdata函数传送给PLC B的某个位地址,编写脚本如下:

这里推荐不是很熟悉脚本格式的朋友,使用编辑界面左下角的"函数"选项

推荐理由:通过"函数"选项调用后,主要选择下图中圈示的几个地方,格式自动生成,利于编译通过。

步骤三 宏指令执行条件

方法1.编辑界面就有个周期执行选项

方法2.功能键触发宏指令 每单击这个功能键时,选择的宏指令就会被执行一次

方法3. 使用 [位状态设定] 元件或者 [位状态切换开关] 元件,当这个元件被执行时,选择的宏指令就会被执行一次。

方法4.开机的时候执行1次宏指令

方法5.PLC的某个位 实现触发宏指令

方法6.宏指令一直执行

方法7. 在 [窗口设定] 设定宏的执行时机

[开启窗口时执行]:当开启此窗口时即执行指定的宏指令一次。

[循环执行]:当开启此窗口时,即每0.5秒循环执行指定的宏指令。

[关闭窗口时执行]:当离开此窗口时即执行指定的宏指令一次。

说明:如果您的程序中此项灰阶,代表此型号不支持此功能。

总结:通过以上三步,就可以实现三菱PLC的M10的位状态可以传给欧姆龙PLC的D_bit,200。

常见问题释疑

①问:宏指令定义了short,运算后,数据异常?

答:宏指令中默认的是有符号的短整,所以上限是32767;那么,数据大于此值的话,变量需要定义unsigned short。

②问:宏指令编译通不过?

答:自己写的脚本,PLC名称和设备列表中不一致,参考本文推荐的"函数"选项 。

③问:Getdata,Setdata和GetdataEX,SetdataEX的区别?

答:前者需要等到下位机回复才会继续往下执行;后者不会 。

相关问答

什么是触摸屏与PLC通讯的宏指令编程?

触摸屏与PLC通讯的宏指令编程是一种编程方式,通过在PLC中编写一些宏指令,实现PLC与触摸屏之间的通讯。这样可以实现人机交互,控制工业自动化生产单元的运行和...

西门子840D系统,宏程序怎么用?

制CPU...840D是西门子公司20世纪90年代推出的高性能数控系统。它保持西门子前两代系统SINUMERIK?880和840C的三CPU结构:人机通信CPU(MMC-CPU)、数字控制CPU(N...

威纶通宏命令是什么语言?

威纶通宏命令是一种基于Windows操作系统的脚本语言,通常用于自动化控制和管理计算机系统。该语言可以通过编写脚本程序来实现批量处理、文件管理、网络通信等...

新代ez3t支持宏程序吗?

不支持宏程序。因为新代EZ3T是一款普通的烤箱控制器,按照其说明书上的介绍,没有提到可以支持宏程序。宏程序是一种较为高级的程序设置方式,需要相应的硬件和软...

三菱FB宏类型和子程序类型的区别?

三菱FB宏类型和子程序类型主要区别在于调用方式和使用范围。FB宏类型是功能块的宏定义,可以像一般指令一样在程序内直接调用,不需要在程序中单独写调用语句;而...

现代楼宇自控需要哪些编程?

每家的控制器都有自己的编程方法和编程软件,都是自己做的,并且,大部分都用宏将复杂的逻辑编成块,只要懂得楼宇自控原理,都可以很快上手,技术难度照PLC差远...

各位看官,请解答一下!!台达触摸屏宏指令?,有了解长沙台达...

[回答]选项-设置模块参数-控制命令,为“画面编号”分配控制区,如图所示然后通过宏向画面编号分配地址传送数据,这里可以使用按钮或者下拉列表(把按...

台达PLC方便指令MODRW指令对RTU485的位读写?

1、台达的PLC不支持位的读写2、不知道你的远程RTU能不能编程,台达MODBUS通讯的只能字操作,不能位操作,如果可以编程,转换一下就可以3、和第2个问题差不多,既...

维纶屏读取PLC局部变量方法?

用宏指令可以可读取。用宏指令可以可读取。

powermill命令是什么语言?

PowerMILL是英国DelcamPlc公司出品的数控加工编程软件系统,提供完善的加工策略,快速产生加工路径,并对数控加工进行完整的干涉检查。宏是PowerMILL软件的语...

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

QQ

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

热线

188-0000-0000
专属服务热线

微信

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