线下实训
HOME
线下实训
正文内容
smart plc 编程手册 「零基础入门PLC」S7-200 SMART 编程技巧及实例分享
发布时间 : 2024-10-05
作者 : 小编
访问数量 : 23
扫码分享至微信

「零基础入门PLC」S7-200 SMART 编程技巧及实例分享

S7-200 SMART在编程中常见问题解析

工欲善其事必先利其器,在日常的程序编辑和调试过程中,可能会遇到各种各样的问题,比如编辑好的逻辑程序执行结果不正确,编译正常的程序下载到不同的CPU中,有些可以下载,而有些提示非致命错误等等,此时如何快速的排查和分析错误发生原因就非常重要,而排查和分析的前提就需要对S7-200 SMART从软件和硬件上有更加深入的了解,下面我们就通过几个典型的案例来进行问题的分析。

案例 1

首先看图1这段程序,编译无任何问题,如果下载到不同类型的CPU中,表现就会不同,我们可以尝试下载到ST60和CR60两种类型的CPU中。

图1 主程序

下载到ST60中,程序运行正常,如果下载到CR60中,程序运行就会报非致命错误:操作数非法(错误码:0090),图2为具体的非致命错误信息:

图2 PLC信息

根据程序分析错误出现的原因和中断有关,可以查询S7-200 SMART系统手册中断章节可以找到对应答案,如表1所示,24号中断事件CR60不支持,所以在运行时会报错非致命错误。

表1

综上,当需要程序在多个不同类型CPU之间下载或者移植时,就需要提前了解各个CPU的程序容量大小、支持的数据区的大小,断电保持区域大小,是否使用到了CPU不支持的功能或者CPU固件版本是否支持等因素,只有了解了这些,才能做到有的放矢。

案例 2

在日常编程过程中,我们可能需要各种标准库,有时需要子程序和中断程序有多重调用关系,例如下面这个案例,程序想使用格雷码转换库在定时中断中每隔100ms进行一次数据的格雷码转换,请看图3:

图3 主程序

图4 子程序

程序的调用关系为:中断子程序INT0调用子程序SBR1,SBR1中调用子程序SBR2,SBR2中的程序如图4所示,下载到CPU中,通过状态图表监视程序状态,发现没有结果输出,如图5所示:

图5 状态图标监控无输出

进一步监控PLC信息,可以看到图6的非致命错误报警:超出最大用户子例程嵌套级别(错误码:0008)

图6 PLC信息

S7-200 SMART手册中规定:从主程序调用子例程的嵌套深度是 8 级,从中断例程调用嵌套深度是 4 级。

现在来看上述程序的调用关系:

INT0→SBR1→SBR2→GRAY_BIN_DW,表面上也仅仅嵌套了3级,满足中断嵌套深度要求,但是仔细查看GRAY_BIN_DW功能库可以发现,该库也嵌套了几层,嵌套关系如下:

GRAY_BIN_DW→GRAY_BIN→XOR,这样下来,嵌套关系就变成如下:

INT0→SBR1→SBR2→GRAY_BIN_DW

→GRAY_BIN→XOR,总共5层嵌套关系,超过了CPU支持的最大嵌套深度,导致CPU 无法运行,知道了原因,我们可以减少调用嵌套为4层以内,则程序就可以正常执行了。

通过以上描述就可以明白,有些看似不可理解的问题其实有其发生的原因,只有深入了解对应产品的技术细节,才能抽茧剥丝,找到问题的根源所在。

S7-200 SMART如何快速提高编程效率

在日常的编程过程中,我们可能需要不少的逻辑运算和算术运算,如果这种运算很多,有可能会导致程序量很大,CPU的扫描周期加长,在这种情况下,找到其中的规律,可以大大简化程序。

假设一个场景,现场有16台设备,需要控制16台泵的启停,IO地址如下表所示:

表2

一般的编程思路是单独写出每个泵的启动停止控制逻辑,如图7所示,需要编写16组控制逻辑:

图7 单个泵的启停控制

其实针对这种编程,我们可以变换一种思路,将上面的梯形图变换成图8所示的逻辑,也可以完成对应的控制功能:

图8 字逻辑运算

这样变换完成后,编程就显得特别简洁,因此编程思路很重要。

在另外一些应用场景中,有时需要记录现场设备的运行时间,一般情况下我们可以使用定时器来实现计时的功能,但S7-200 SMART定时器有数量限制(最大256个),并且最大时基为100ms的定时器其所能达到的最大计时长度为3276.7S,若想实现小时或者天的计时就需要定时器加计数器来实现,而计数器也有数量限制(最大256个),当需要类似的功能很多时,计数器和定时器数量就不够用了,此时可以使用系统特殊存储器 SM0.4(周期为60S的时钟脉冲)和SM0.5(周期为1S的时钟脉冲)来实现计时功能。

如图9所示,其中值VD0的单位为秒,在实际应用中,可以对这个数值进行再次转换,得到分钟、小时或者天的时间值(本例中VD4的单位为小时),同时这些地址也可以按需设置在S7-200 SMART断电保持区域中,实现不同时间长度的定时以及断电保持功能,非常方便。

图9 使用SM0.5实现计时功能

实际编程时对于一些功能重复的地方,我们可以考虑做成子程序多次调用,一些需要重复计算的功能,可以使用FOR NEXT循环来完成,也可以考虑使用间接寻址的方式来提高程序的灵活性,而对一些流程方面的控制可以使用顺序控制继电器来完成,这样可以大大提高编程的效率。

西门子S7-200SMART介绍及PLC实例编程

西门子S7-200SMART介绍及实例编程

(何工_2018年9月5号)

概述:SIMATIC S7-200 SMART 是西门子公司经过大量市场调研,为中国客户量身定制的一款高性价比小型 PLC 产品。结合西门子 SINAMICS 驱动产品及 SIMATIC 人机界面产品,以 S7-200 SMART 为核心的小型自动化解决方案将为中国客户创造更多的价值西门子控制器家族产品

西门子S7-200SMART系统图

一.西门子S7-200 SMART型号与说明

西门子S7-200SMART订货号说明

西门子S7-200SMART完整订货号已经型号

二.西门子S7-200 SMART功能

S7-200 SMART分为2中,SR/ST常用型,,CR经济型。

1.SR/ST通用型:

西门子S7-200SMART通用型实物图

S7-200 SMART SR/ST CPU 模块本体集成 1 个以太网接口和 1 个 RS485 接口,通过扩展 CM01 信号板或者 EM DP01 模块,其通信端口数量最多可增至 4 个,可满足小型自动化设备与触摸屏、变频器及其它第三方设备进行通信的需求,全新的 S7-200 SMART CPU 模块,可全方位满足不同行业、不同客户、不同设备的各种需求。

SR/ST 标准型CPU 可扩展 6 个扩展模块和 1 个信号板,适用于 I/O 点数较多,逻辑控制较为复杂的应用。

• SR/ST CPU 模块具备 20I/O、30I/O、40I/O、 60I/O 四种配置

• 集成高速处理器芯片,位指令执行时间可达 0.15μs

• 通过信号板可扩展通信端口、模拟量通道、数字量通道和时钟保持功能

• SR/ST CPU 模块本体集成以太网接口和 RS485 串口,支持以太网接口下载程序

• 支持 Modbus RTU、USS、PROFIBUS-DP、自由口通信等

• 本体最多集成 3 路 100KHz 高速脉冲输出

• 支持通用 Micro SD 卡下载程序、更新 PLC 固件和恢复出厂设置

• 新版编程软件,融入多项人性化设计,项目开发更加高效

• PM207为整个系统提供高品质的直流供电

2. 经济型 S7-200 SMART Compact CPU:

西门子S7-200SMART经济款实物图

•经济型 CPU 模块具有 20 I/O,30 I/O,40 I/O,60 I/O 四种配置

•高速处理器芯片,位指令执行时间可达 0.15μs

•支持高速计数功能,可实现单相 4 路 100KHz 或 2 路 A/B 相

•50KHz 输入

•集成断电数据保持功能,无需专用电池,只需简单设置,轻松

•实现断电数据永久保持

•本体集成一个 RS485 通信接口,可连接触摸屏或变频器

•串口隔离,支持 Modbus-RTU、USS、自由口通信

•CPU 模块的输入输出端子可拆卸,支持导轨或螺钉安装

•220V AC 供电,继电器输出,支持 24V 源型或漏型输入

•使用 STEP7 Micro/WIN SMART 编程软件,界面更友好,操作更简单,全面支持 Windows 10 操作系统

三. 西门子S7-200 SMART的应用

S7-200 SMART应用遍及各行各业,涵盖各种机器设备应用,无缝贴合机器设备制造商的各种需求 。

四. 西门子S7-200 SMART在STEP 7-Micro/WIN SMART编程软件中的电机正反转应用

1:主电路接线图与实物图

主电路接线图与实物图

2:西门子S7-200 SMART的PLC接线图

西门子S7-200 SMART的PLC接线图

3:STEP 7-Micro/WIN SMART编程软件的符号表

TEP 7-Micro/WIN SMART编程软件的符号表

4:如下图按下SB2的时候I0.0接通,Q0.0输出电机正转自锁,Q0.1电机反转形成了互锁,m0.0是自锁停止后5S才能启动。

电机正转编程梯形图

5:如下图按下SB3的时候I0.1接通,Q0.1输出电机正转自锁,Q0.0电机反转形成了互锁,m0.0是自锁停止后5S才能启动

电机反转编程梯形图

6:按下SB1按钮后,正反转会停止,停止过5S后,才能启动,防止电机正反转冲击。

启动延时5S图

五.总结

以上就是这个简单电机正反转实例的全部编程,以及西门子S7-200 SMART详细介绍与分析。正所谓万丈高楼平地起,将题意一点点拆分,一点点的把所需的功能写入。

感谢工控行业朋友的支持,麻烦各位点点关注与评论。下一篇将会跟大家分享一个无线远程配置。一个西门子S7-200smart与一个GRM531模块,通过无线轻松实现西门子S7-200的PLC与上位机组态软件通信。

力控上位机组态软件

相关问答

西门子S7-200SMART如何定义、编辑和选择符号?

你的问题,定义和编辑符号是PLC编程中都具备的功能;而这个选择符号,就可以理解为用符号地址来进行编程,符号是你自己定义的话,用符号编程在点数比较多的项目...来...

西门子plcs7-200smart如何用语句表编程?

用梯形图表进行编程。西门子PLCS7-200Smart的语句表编程可以使用梯形图编程语言。梯形图编程是很多PLC程序员和维护人员选用的方法;它是为新程序员设计的优...

如何学习S7-300的编程?

S7-300系列PLC是西门子公司的中型系统PLC,比S7-200系列要高出一个级别,编程方式也与200不同,指令也不同。那么若是新人想学习S7-300的编程要怎么下手呢?了解...

西门子S7-200smartPLC编程软件程序出现三个问号❔?

双击就可以写入地址号了双击就可以写入地址号了

怎样把西门子200SMART的PLC的程序上传到电脑上?

可以,使用网线就行。smart200有以太网口。当然电脑必须安装有smart200的编程软件才行。可以,使用网线就行。smart200有以太网口。当然电脑必须安装有smart200...

西门子plc的命令en怎么编写?

关于这个问题,"EN"是西门子PLC中的一个指令,它代表“使能”命令。它的编写方法如下:1.打开西门子PLC编程软件,创建一个新的程序。2.选择一个适合的块类型...

我在WIN7上安装的西门子SMARTPLC软件打不开,提示MWSMARTExe...

当SMART软件安装完毕后,打开软件会提醒MWsmartExecutable已停止工作,需关闭程序,解决方法:点开开始按钮,在“运行”中写入“gpedit.msc”,点确定键。弹出...

smart200不读模拟量?

西门子s7—200smartPLC不能够读取模拟量,首先要检查一下自己编写的程序地址对不对,一定要按模块的地址分配去编写地址,比如AE04模拟量模块的起始地址是AIW16,...

西门子200smart的cpu和编程软件怎么连接?

1,PLC与PC间连网线2,给plc上电3,打开step7-micro、winsmart4,双击屏区左区项目下CPU,选CPUSR40,出现系统块,IP192.168.2.1,子网俺码2...

西门子plc编程s7-200smart通信资源需要注意的问题是什么有人...

[回答]西门子plc编程smart以太网通信资源:CPU与STEP7-Micro/WINSMART软件之间的数据交换。CPU与HMI之间的数据交换。CPU与其它S7-200SMARTCPU之间的GET/PU....

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

QQ

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

热线

188-0000-0000
专属服务热线

微信

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