全国热线电话:
18390808297
![]() |
|
湖南嘉普云自动化设备有限公司
问题1:S7-200 CPU内部存储区类型?
回答:S7-200 CPU内部存储区分为易失性的RAM存储区和保持的EEPROM两种,其中RAM包含CPU工作存储区和数据区域中的V数据存储区、M数据存储区、T(定时器)区和C(计数器)区,EEPROM包含程序存储区、V数据存储区的全部和M数据存储区的前14个字节。
也就是说V区和MB0-MB13这些区域都有对应的EEPROM保持区域。
EEPROM的写操作次数是有限制的(少10万次,典型值为100万次),所以请注意只在必要时才进行保存操作。否则,EEPROM可能会失效,从而引起CPU故障。
EEPROM的写入次数如果超过限制之后,该CPU即不能使用了,需要整体更换CPU,不能够只更换CPU内EEPROM,西门子不提供这项服务。
问题2:S7-200 CPU的存储卡的作用?
回答:S7-200还提供三种类型的存储卡用于存储程序,数据块,系统块,数据记录(归档)、配方数据,以及一些其他文件等,这些存储卡不能用于实时存储数据,只能通过PLC—存储卡编程的方法将程序块/数据块/系统块的初始设置存于存储卡内。
存储卡分为两种,根据大小共有三个型号。
32K存储卡:仅用于储存和传递程序、数据块和强制值。32K存储卡只可以用于向新版(23版)CPU传递程序,新版CPU不能向32K存储卡中写入任何数据。而且32K存储卡不支持存储程序以外的其他功能。订货号:6ES7 291-8GE20-0XA0。
64K/256K存储卡:可用于新版CPU(23版)保存程序、数据块和强制值、配方、数据记录和其他文件(如项目文件、图片等)。64K/256K新存储卡只能用于新版CPU(23版)。64K存储卡订货号: 6ES7 291-8GF23-0XA0;256K存储卡订货号:6ES7 291-8GH23-0XA0。
为了把存储卡中的程序送到CPU中,必须先插入存储卡,然后给CPU上电,程序和数据将自动复制到RAM及EEPROM中。
存储卡的使用完整限制条件,请参考《S7-200系统手册》附录A 技术规范—可选卡件一节。
S7-200的外部存储卡有哪些功能?
459464
问题3:S7-200 CPU内的程序是否具有掉电保持特性?
回答:S7-200 CPU内的程序块下载时,会同时下载到EEPROM中,也就是说程序下载后,将保持。同样,系统块和数据块下载时,也会同时下载到EEPROM中。
问题4:S7-200 CPU内部的数据的掉电保持特性?
回答:S7-200系统手册第四章——“PLC基本概念”一章中“理解S7--200如何保存和存储数据”一节详细介绍了S7-200 CPU内数据的掉电保持特性,建议用户仔细阅读。
S7-200 CPU内的数据分为RAM区和EEPROM区。
其中,RAM区数据需要CPU内置的超级电容或者外插电池卡才能实现掉电保持特性。
对于CPU221和CPU222的内置超级电容,能提供典型值约50小时的数据保持。
对于CPU224,CPU224XP,CPU224XPsi和CPU226的内置超级电容,能提供典型值约100小时的数据保持。
超级电容需要在CPU上电时充电。为达到上述指标的数据保持时间,需要连续充电至少24小时。
当该时间不够时,可以购买电池卡,以获得更长时间的数据保持时间。
EEPROM区能实现数据保持,不依靠超级电容或者电池就可以保持数据。
问题5:S7-200 CPU内部数据的工作顺序?
回答:S7-200 CPU一上电后,CPU先去检查RAM区域中的数据,如果在超级电容或者电池有电的情况下,数据并未丢失,则使用该RAM区的数据;如果超级电容或者电池没电了,导致数据丢失,则CPU去读EEPROM中相应的区域(包含数据块中的数据定义内容),如果在EEPROM中存有保持的数据,则CPU将EEPROM中的数据写回到RAM区中,再进行下面的工作。
如果EEPROM中也没有对应存储区的数据了,则该存储区的数据将变成0。
问题6:S7-200 CPU电池卡的使用注意事项?
回答:新版S7-200 CPU电池卡有两种型号。
对于CPU221和CPU222,由于其中没有实时时钟,则对应的为时钟电池卡,订货号为:6ES7297--1AA23--0XA0。
对于CPU224,CPU224XP,CPU224XPsi和CPU226,电池卡仅提供电池功能,订货号为:6ES7 291--8BA20--0XA0,该款电池卡型号又叫做BC293。
电池卡的寿命典型值约为200天,当插上电池卡后,如果CPU处于工作状态或者超级电容有电的情况下,并不消耗电池卡的电量。当电池卡的电量消耗完毕之后,该电池卡就报废了。
S7-200电池卡不能充电,使用完毕就不能再用了,只能购买新的电池卡了。
S7-200没有检测电池卡内剩余电量的状态位和这种功能。
新版S7-200 CPU电池卡不能用于老CPU,即订货号为6ES7xxx-xxx21-0XB0和6ES7xxx-xxx22-0XB0以及更老版本的CPU。
图1
以上为两种电池卡以及所在插槽位置。
电池卡的使用完整限制条件,请参考《S7-200系统手册》附录A 技术规范—可选卡件一节。
问题7:S7-200 CPU内EEPROM的使用方法?
回答:EEPROM的写入分为如下几种情况:
1、MB0—MB13的设置,只需要在系统块—断电数据保持中设置即可。
默认情况下,系统块设置如下图蓝框中所示,即MB14—MB31,这些区域没有对应的EEPROM区域,无须考虑EEPROM写入次数限制。
图2
MB0—MB13如果在系统块中设置成掉电保持区域,如图2红框中所示,并将系统块下载到CPU之后,则这14个字节的数据在掉电的瞬间会将数值写入EEPROM中,如果掉电时间超过超级电容和电池的保持时间之后,再上电时,CPU会将EEPROM中存储的数据数值写回到RAM中对应的存储区,实现保持数据的目的。
注意:实现该功能一定要将修改过的系统块下载到CPU中。
2、数据块中定义的数据,如图3所示,当下载数据块的时候,同时会将定义的数据下载到EEPROM中,这样,当掉电时间超过超级电容和电池的保持时间之后,再上电时,CPU会将EEPROM中存储的数据块中定义的数据数值写回到RAM中对应的存储区,实现保持数据的目的。也就是恢复成数据的初始设置值。
注意:实现该功能一定要将定义好数据的数据块下载到CPU中。
图3
3、使用SMB31和SMW32控制字来实现将V区的数据存到EEPROM中
特殊存储器字节31 (SMB31)命令S7-200将V存储区中的某个值复制到存储器的V存储区,置位SM31.7提供了初始化存储操作的命令。特殊存储器字32 (SMW32)中存储所要复制数据的地址。如图4为S7-200系统手册内关于SMB31和SMW32的使用说明。
图4
采用下列步骤来保存或者写入V存储区中的一个特定数值:
1. 将要保存的V存储器的地址装载到SMW32中。
2. 将数据长度装载入SM31.0和SM31.1。具体含义如图4所示。
3. 将SM31.7置为1。
图5
注意:如果在数据块中定义了某地址的数据,而又使用这种办法存储同样地址的数据,则当CPU内超级电容或电池没电时,CPU再上电时将采用SMB31和SMW32存储的数据。
问题8:EEPROM写入次数的统计?
回答:每次下载程序块/数据块/系统块或者执行一次SMB31.7置位的操作都算作对EEPROM的一次写操作,所以请注意在程序中一定不要每周期都调用SMB31/SMW32用于将数据写入EEPROM内,否则CPU将很快报废。
问题9:不使用数据块的方法,如何在程序中实现不止一个V区数据的存储?
回答:由于SMB31/SMW32一次多只能送入一个V区双字给EEPROM区域,因而当有超过一个双字的数据需要送入EEPROM中时,需要程序配合实现。具体操作方法可参照如下的例子,即使用SMB31/SMW32送完一个数据(字节/字/双字)之后,通过一个标志位(如M0.0)来触发下一个SMB31/SMW32操作,之后需要将上一个标志位清零,以用于下一次的存储数据的操作。
由于SM31.7在每次操作结束之后都自动复位,因而不能使用它作为第二次触发操作的条件。
以上程序仅供参考。
或者可以参考如下FAQ,多次调用指令库用以存储多个V区变量到EEPROM存储区中:
如何在 CPU 内部 EEPROM 存储空间中保存变量区域?
17471561
问题10:定时器和计数器以及MB14-MB31的掉电保持性能?
回答:计数器和TONR型的定时器(T0-T31,T64-T95)能够实现掉电保持。这些区域只能由超级电容和电池来进行数据的掉电保持,他们并没有对应的EEPROM保持存储区。当超过超级电容和电池供电的时间之后,这些计数器和TONR定时器的数据全部清零。
TON和TOF型的定时器(T32-T63,T96-T255)没有掉电保持数据的功能。请不要在系统块中设置这些区域为掉电保持,如图6所示为错误做法:
图6
按上述做法设置之后,下载系统块时会导致如下错误发生:
西门子6ES72882QR160AA0
图7
所以请不要将T32-T63,T96-T255的定时器设为掉电保持区域。
问题11:CPU内具备断电保持性的数据区为何会丢失?
以下情况会导致CPU内数据清零:
1. 没有插入电池卡的CPU断电时间过长,内部超级电容放电完毕,TONR区/C区/MB14-MB31区数据丢失,V区和MB0-MB13区的对应EEPROM内没有数据导致数据丢失,
2. 电池卡使用时间过长,使之没电了, TONR区/C区/MB14-MB31区数据丢失,V区和MB0-MB13区的对应EEPROM内没有数据导致数据丢失,
3. 插在CPU上的存储卡内程序/数据与CPU内部RAM中运行的程序/数据不符,一上电时会导致原有数据/程序的丢失。
4. CPU损坏。
图1 触摸屏通过PLC与V20变频器通讯
如果只需要对V2O变频器做简单的运行控制和变量监视,那么上述配置中PLC的作用仅为数据中转。这种情况下,触摸屏直接和V20变频器通讯,不仅能够实现监控功能,而且可以少用一个PLC,节省成本。采用西门子的SMART LINE系列触摸屏能够实现与V20变频器直接通讯的功能。通讯电缆连接如图2所示。SMART LINE触摸屏作为MODBUS主站,V20为从站。
图2 触摸屏直接与V20变频器通讯
2. 硬件设备及其安装
下面用一个实例来介绍Smart Line触摸屏与一台V20变频器通过MODBUS通讯的实现方法。该例子中用到的主要硬件设备如表1所示,触摸屏组态软件为WinCC Flexible 2008 SP4 China。
表1 示例主要硬件设备
名称 | 订货号 | 数量 | 说明 |
触摸屏 | 6AV6648-0BE11-3AX0 | 1 | Smart 1000 IE |
24V电源 | 6EP1332-1SH51 | 1 | DC24V/4A |
变频器 | 6SL3210-5BE17-5UV0 | 1 | V20 变频器 0.75kW |
电机 | 1LA9060-4KA10-Z | 1 | 1LA9 电机 0.12kW |
硬件安装步骤如下:
1)将变频器、电机、触摸屏固定在安装工位上。
2)连接变频器到电机的动力电缆和接地电缆。
3)连接供电电源到变频器的动力电缆和接地电缆。
4)连接变频器和触摸屏的RS485通讯电缆。触摸屏RS485的9针接口与 V20端子对应关系:3对应P+,8对应N-。
5)连接24V直流电源的交流进线电缆和到触摸屏的直流供电电缆。
3. V20变频器参数设置
V20变频器要采用MODBUS通讯,可以做如下设置:
1)变频器恢复出厂参数:
P0010=30
P0970=21
2)变频器快速调试,选择Cn011-MODBUS通讯连接宏:
a)设置电网频率和功率单位
b)输入电机铭牌参数
c)选择连接宏Cn011-MODBUS通讯
d)选择应用宏AP000
Cn011连接宏对应参数如表2所示。
表2 Cn011对应参数设置
参数 | 描述 | 工厂缺省值 | Cn011默认值 | 备注 |
P0700[0] | 选择命令源 | 1 | 5 | RS485为命令源 |
P1000[0] | 选择速度给定 | 1 | 5 | RS485为速度设定值 |
P2023[0] | RS485协议选择 | 1 | 2 | MODBUS RTU协议 |
P2010[0] | USS/MODBUS波特率 | 8 | 6 | 波特率为9600bps |
P2021[0] | MODBUS地址 | 1 | 1 | 变频器MODBUS地址为1 |
P2022[0] | MODBUS应答超时时间 | 1000 | 1000 | 向主站发回应答的大时间 |
P2014[0] | USS/MODBUS报文间断时间 | 2000 | 100 | 监控报文间断时间 |
3)修改MODBUS通讯参数,其它参数为Cn011连接宏默认参数:
P2014[0]=0 不监控报文间隔时间,否则可能会报F72故障
P2021[0]=3 MODBUS设备地址为3(与触摸屏组态软件中设置的从站地址*)
4. 触摸屏组态
在WinCC Flexible 2008 SP4 China软件中组态Smart 1000 IE触摸屏。详细步骤如下:
1)创建项目。
创建一个空项目,如图3所示。
图3 创建空项目
选择触摸屏设备为Smart 1000 IE,如图4所示。
图4 选择Smart 1000 IE触摸屏
2)设置连接。
在连接画面中新建一个连接,相关参数设置如下:
通讯驱动程序:Modicon MODBUS
类型:RS485
波特率:9600
奇偶校验:偶
数据位:8
停止位:1
组帧:RTU Standard
CPU类型:984
从站地址:3
连接设置如图5所示。
图5 连接设置
3)添加变量。
添加与变频器监控相关的10个变量,如表3所示。
表3 变量列表
变量名 | MODBUS寄存器地址 | 说明 |
CtrlWord1 | 40100 | 控制字1 |
SetPoint | 40101 | 速度设定值 |
StsWord1 | 40110 | 状态字1 |
Feedback | 40111 | 速度实际值 |
ActFreq | 40342 | 频率实际值 |
OutpVoltage | 40343 | 输出电压 |
DCVol | 40344 | 直流电压 |
OutpCurrent | 40345 | 输出电流 |
OutpTorque | 40346 | 输出转矩 |
OutpPower | 40347 | 输出功率 |
变量地址参照V20变频器操作手册,添加完成后的变量画面如图6所示。
图6 添加变量
速度设定值变量SetPoint是由-16384(-4000H)到+16384(+4000H)来表示-50Hz到+50Hz的转速,此处采用变量的线性转换属性,将-16384对应-1500,+16384对应+1500,如图7所示。再采用变量的限制值属性,将变量的输入值限制在-1600和+1600之间,如果超出该限制值的范围,则输入不起作用。如图8所示。
图7 速度设定值变量线性转换
图8 速度设定值变量限制值
速度反馈值变量Feedback也是由-16384(-4000H)到+16384(+4000H)来表示-50Hz到+50Hz的转速,此处也采用变量的线性转换属性,将-16384对应-1500,+16384对应+1500,如图9所示。注意,图9和图7所示的线性转换是*的。
图9 速度反馈值变量线性转换
4)添加画面。
项目生成时已经有一个模板和一个画面,此例仅用到一个画面。修改画面的名字为V20_Monitor,如图10所示。
图10 编辑之前的画面V20_Monitor
5)编辑模板。
模板中的对象在选择使用模板的画面中会显示出来,此处把西门子的LOGO和退出Runtime的按钮放置在模板中,如图11所示。
图11 编辑模板
然后在按钮的事件属性中添加函数。在按钮STOP RT事件属性的单击事件下添加StopRuntime函数,如图12所示。
图12 退出运行画面按钮事件设置
6)编辑画面。
在V20_Monitor画面中放置IO域、文本域、按钮、棒图、圆形等对象。在文本域中输入相应的文本,设置字号、颜色等,将相关对象分类排列整齐,完成后的V20_Monitor画面如图13所示。
图13编辑完成的画面V20_Monitor
西门子6ES72882QR160AA0