n
一. Simotion D存储器基本概念
1.1 Simotion D存储器结构
Simotion D的存储器分为四个部分,如图1所示,分别是RAM Disk,RAM, Retentive memory以及Persistent Memory。其中RAM Disk, RAM合称为DRAM,DRAM的数据掉电即丢失,为易失性存储器。与DRAM对应的是SRAM,即Retentive memory,也称为NVRAM,为非易失性存储器,可掉电保持。Persistent Memory就是CF卡,它相当于EEPROM,内存数据可以永久保存。n
图1 Simotion D存储器结构n
1.2 各存储器的数据内容和作用
RAM Disk:
RAM Disk 就是装载存储器,Simotion D下载的数据首先存于该区域,包括组态,工艺包TP、用户程序等。执行Copy RAM to ROM时也是将其数据拷贝到CF卡中。执行上载操作时,程序也是经RAM Disk上载至PC。需要注意的是,RAM DISK中的内容在执行Copy RAM to ROM或在上电完成后,会自行释放内部数据,因而在线诊断时常看到其内容很少。n
RAM:
包括User RAM和System RAM。 User RAM中保存工艺包TP和用户程序。User RAM内含TO Current data memory和TO Next memory。TO Current data memory中存的是TO当前运行的数据,TO Next memory中保存的数据为在线修改且需要TO重启后才生效的组态数据。
System RAM中保存的数据包括SIMOTION内核(Firmware)和内核数据,如诊断信息,通讯参数等。n
Retentive Memory(SRAM/NVRAM):
Retentive memory用于保存掉电保持的数据。掉电时,保持性数据由RAM拷贝到该区域进行保存。Retentive memory中保存的数据如表1所示:n
表1 Retentive memory数据内容n
数据类型 | 内容 |
Kernel Data | • IP 参数 (IP 地址, 子网掩码, 路由器地址) |
• DP 参数 (PROFIBUS DP 地址,波特率) | |
• 诊断缓冲区信息 | |
保持性变量 | • 程序单元变量(interface 或 implementation)中定义为VAR_GLOBAL_RETAIN 的变量 |
• 全局变量(Global device variables) 中设置为 "RETAIN" 的变量 | |
TO保持性数据 | • 绝对值编码器数据 |
Retentive memory中的数据在掉电后,对于D4x5由超级电容或者电池来保持。其中通过超级电容可保持5天,而电池一般可至少保持3年以上。D4x5的电池安装在风扇/电池模块中,对于D445为标配,对于D425/D435为选件。而D410则不需要风扇/电池模块,D410的SRAM掉电后内存的数据可永久保存。n
Persistent Memory(CF卡)
CF卡中内存数据可以永久保存。在CF卡中保存的内容包括:
• SIMOTION Kernel (D4x5 firmware)
• 工艺包
• 用户数据(组态数据,程序,参数设置,Task配置等)
• SINMAICS驱动参数
• 通讯数据,包括IP参数(IP地址, 子网掩码, 路由器地址等)和DP参数(DP地址, 波特率等)
• 通过系统函数备份到CF卡中的内容,如使用_savePersistentMemoryData时在CF中产生的备份文件。
• 授权n
1.3 下载过程中的数据传递
执行下载操作时,先下载以下内容到RAM disk中:
• 用户数据
• 工艺包
• 通讯数据,包括IP参数和DP参数
其中硬件组态、保持性变量、通讯数据等内容会同时保存到SRAM中。
再将RAM disk中的相应数据拷贝到DRAM中。其中工艺包TP,以及用户程序等拷贝到User RAM中,再从User RAM拷贝工艺包TP,TOs到TO Current Data Memory中。n
注:在Options > Settings > Download 中可以选择下载时的默认选项,包括是否同时下载驱动参数、硬件组态以及是否在下载后进行Copy RAM to ROM操作、是否初始化保持性和非保持性变量等。在Options > Settings > CPU Download可设置是否允许在运行中下载,以及下载后是否在运行中执行Copy RAM to ROM,以及执行Copy RAM to ROM前是否先执行Copy Current Data to RAM等。
在工具栏中也分别列有下载全部程序的命令和驱动/SIMOTION分开下载的命令。n
1.4 掉电后存在的数据
掉电后SIMOTION D只有两个地方的数据仍然存在:CF卡和SRAM。数据内容参考上文。n
1.5 上电过程数据传递
在上电后,首先会从CF卡中拷贝数据:
• 将工艺包TP和用户数据(如果CF卡中有备份程序)拷贝到RAM Disk中
• 将IP参数和DP参数等通讯参数拷贝到SRAM中(如SRAM中的数据丢失或无效时)
从SRAM中拷贝以下数据到DRAM中的System RAM中:
• IP参数和DP参数等通讯数据
• 诊断信息
从RAM DISK中拷贝工艺包以及用户程序到User RAM中,再从User RAM拷贝工艺包,工艺对象到TO Current Data Memory中。
然后释放掉RAM DISK中的内容。
上电后,SRAM中的保持性数据如果仍有效,则使用本身的数据。如果因为掉电时间太久丢失了,那么就从CF卡中拷贝。可能会拷贝通过_savePersistentMemoryData备份的PMEMORY.XML或者PMEMORY.BAK中的数据,这可通过诊断信息、系统变量或者PeriperalFaultTask来判断从哪里拷贝的保持性数据。n
1.6 在线查看各存储器数据
各存储器当前的数据量可以在线连接后通过指令Simotion D >target device > device diagnostics进行在线查看,如图2:n
图2 在线查看各存储器的数据量n
由于RAM DISK中内容在执行Copy RAM to ROM操作或者在上电完成后会自行释放,而在下载程序时,也只下载与当前程序不同的内容,因而在线诊断时常看到其内容基本为空。n
二. 数据删除
可以通过以下四种方法进行数据删除
1) 复位按钮(Reset button)
2) Overall Reset
3) 删除CF卡中的用户数据(Delete User Data from Card)
4) SIMOTION D恢复工厂设置(Reset SIMOTION to default settings)
注:上述所有数据删除操作不会删除CF卡上授权。
各种方法对应的各存储器中数据删除情况如表2所示:n
表2 数据删除一览表n
操作 | DRAM中的数据 | SRAM中的数据 | CF卡中数据 |
Reset button | 删除 | 保留 | 保留 |
Overall Reset | 删除 | 除IP,DP参数, | 保留 |
诊断信息外都删除 | |||
Delete User Data from Card | 删除 | 删除 | 除IP,DP参数外的数据都删除 |
Reset SIMOTION to default settings | 删除 | 删除 | 删除,IP,DP参数恢复出厂值 |
注:如果CF卡中保存有备份数据,Reset button和Overall Reset操作后从CF卡中重新拷贝相应数据到各个存储器。n
2.1 复位按钮
Simotion D有一个复位按钮(Reset Button),如图3所示,其作用相当于掉电重启,只是不需要将24V电源去掉。因此和掉电过程一样,所有DRAM的数据都会被清除,SRAM的内容都将被保持,然后再执行Simotion D上电重启一样的数据传递过程,参考上文。n
图3 Simotion D 复位按钮n
2.2 Overall reset
通过模式选择开关或Simotion D操作面板中的MRES按键可以进行Overall reset操作,Overall reset操作将删除以下数据:
• DRAM中的所有数据,复位后从CF卡重新拷贝
• SRAM中保持性变量,TO保持性数据,复位后从CF卡重新拷贝
SRAM中的以下数据将被保持
• IP参数 和 DP参数等通讯参数
• 系统诊断信息
• 通过指令RAM to ROM ,_savePersistentMemoryData, _saveUnitDataSet,
_exportUnitDataSet 保存的数据将从CF卡中拷回到SRAM中。
在以下情况下需要使用Overall reset功能进行复位
• 需要恢复用户程序到"Copy RAM to ROM"之前的数据。
• RUN/STOP 灯慢闪时,表示系统需要进行重启
• SRAM中的内容和CF卡中内容产生冲突时n
具体操作:
1) 使用SIMOTION SCOUT在线操作
I. 在线连接SIMOTION D,并选择Simotion D >target device > Operating mode调出CPU的操作面板
II. 选择Stop模式,停下CPU
III. 再选择MRES模式进行复位操作.
2) 离线使用模式选择开关进行操作
I. 模式选择开关设置到MRES位置,此时stop慢闪
II. 模式选择开关设置到stop位置,并在三秒内再次设置到MRES位置,此时开始复位
III. 等待直到stop停止闪烁,复位完成,将模式选择开关设置到其它需要的模式。
D410和D4x5的模式选择开关(Mode selector)的外形和使用方法不同,如图4:n
图4 Simotion D 模式选择开关n
模式开关的位置对应运行状态如表3所示n
表 3 Simotion D模式选择开关与运行状态对应关系n
D410 | D4x5 | ||||
运行状态 | S1 | S2 | S3 | 运行状态 | 选择开关位置 |
RUN | ON | ON | ON | RUN | 0 |
STOPU | OFF | ON | ON | STOPU | 1 |
ON | OFF | ON | STOP | 2 | |
ON | ON | OFF | MRES | 3 | |
STOP | ON | OFF | OFF | 无效 | 其它位置 |
OFF | ON | OFF | |||
OFF | OFF | ON | |||
MRES | OFF | OFF | OFF |
2.3 删除CF卡中的用户数据
在线后使用Delete user data on card命令可以删除的具体内容如下:
• DRAM中的所有数据
• SRAM中除IP和DP参数外的其它数据
• CF卡中用户数据,包括SINAMICS驱动的数据
具体操作:
1) 在Scout中在线连接 SIMOTION D
2) 选中SIMOTION D4x5并在菜单"Target System"下选择"Delete user data on card"
3) 在弹出的信息中点击"OK"确认删除 .
4) 用户数据被删除,同时SINAMICS转入离线状态.n
2.4 恢复SIMOTION工厂设置
需要将SIMOTION D中的数据彻底删除时可采用恢复工厂设置操作,该操作将删除以下数据:
• 除CF卡外的各存储器(DRAM和SRAM)中的所有数据
• 用系统函数在CF卡中备份的保持性数据
• CF卡中的用户程序
• 通讯参数(复位为工厂设定值)
其中DP参数恢复为两个通迅口均为DP口,参数如下:DP地址2,通讯速率1.5 Mbit/s
IP参数复位后如图5所示:n
图5 恢复工厂设置后的IP参数n
其中IP地址为0.0.0.0的设置为CBE30(如果有的话),其它两个分别为X120和X130的参数
该操作相当于将用户涉及的除了授权和Kernel数据所有数据都删除。
具体操作:
1) 掉电
2) 将模式选择开关切至MRES位置
3) 上电,此时开始工厂复位。
4) 直到STOP灯常亮,CPU保持在停止状态后复位完成
5) 将模式选择开关设置到其它需要的位置n
三. 数据保存
3.1 Copy RAM to ROM
Copy RAM to ROM将RAM中以下内容拷贝到CF卡中
• 从RAM disk中拷贝工艺包和其它用户数据
• 从SRAM中IP参数和DP参数以及保持性变量数据
该命令不保存保持性变量的当前值,而只是保存初始值,其当前值需要使用系统函数"_savePersistentMemoryData" 进行保存。
另外,对于集成的SINAMICS的驱动数据,必须单独做Copy RAM to ROM操作才能保存其参数到CF卡中。n
3.2 Copy Current Data to RAM
该指令可以将在线修改的TO组态数据从Current data memory保存到RAM disk,然后通过Copy RAM to ROM命令保存到CF卡,因而在线修改的TO组态数据需要两个命令同时使用才能保存到CF卡中。或者可以执行该命令后从RAM disk上载组态数据到PC中。Copy Current data memory指令不拷贝TO的系统变量。n
3.3 通过系统函数进行备份
通过系统函数”_savePersistentMemoryData”, “_saveUnitDataSet”,” _exportUnitDataSet”可以进行数据保存。
“_savePersistentMemoryData”:
‘‘_savePersistentMemoryData’‘ 用于将SRAM中的数据保存到CF卡中以永久保存数据。
执行该函数后将在CF卡的"USER/SIMOTION"目录下产生名为"PMEMORY.XML"的文件。在上电后,在以下几种情况下,该文件中的数据将会拷回SRAM中:
• SRAM 中数据由于掉电时间太久或由于电池供电不足丢失。
• 执行了Overall reset复位操作。
如果在执行该函数时,"PMEMORY.XML"文件已经存在,那么会将该文件重命名为"PMEMORY.BAK",然后再产生一个"PMEMORY.XML"文件保存当前备份内容。如因某些原因导致当前的备份没有成功(如CF卡容量不足),那么下次需要恢复SRAM数据时会使用"PMEMORY.BAK"中的数据,如果当前备份成功,那么将删除"PMEMORY.BAK"文件。在恢复SRAM数据后,可以通过系统变量"persistentDataPowerMonitoring.persistentDataState"来查看是从哪个文件恢复的SRAM数据。
注:旧版本(Version 3.1及之前) SIMOTION D在调用’‘savePersistentMemoryData’‘时,产生名为’‘PMEMORY.DAT’‘的文件。
“_saveUnitDataSet”:
“_saveUnitDataSet” 函数可以将以下变量的数据保存到CF卡或者RAM disk 中:n
• 在程序单元的interface或者implementation(ST Souce file 或MCC Unit中)中定义的变量,保持或非保持(Version 3.2之前只能保存interface中的保持性变量)
• global device variables,保持或非保持的变量
“_saveUnitDataSet “函数的一些重要参数如下:
id: Data set的编号
storageType :需要在哪里保存变量
TEMPORARY_STORAGE:RAM disk
PERMANENT_STORAGE:CF卡
Overwrite:是否覆盖已存在的Data set,True为覆盖
unitName :需要保存的Unit的名称
dataScope :保存Unit中哪部分的变量
_INTERFACE // Interface中定义的变量
_IMPLEMENTATION // Implementation 中定义的变量
_INTERFACE_AND_IMPLEMENTATION // interface 和 Implementation中
//定义的变量
KindOfData :需要保存的变量的类型
NO_RETAIN_GLOBAL // 非保持性的变量
_RETAIN // 保持性的变量
ALL_GLOBAL ) //保持性和非保持性的变量
Return value:是否保存成功等详细信息可从返回值中判断
_saveUnitDataSet函数保存的数据需要通过’‘_loadUnitDataSet’‘函数进行读取。该函数也是通过相关的参数,如Data set的id以及访问的存储器类型,数据的类型等等确认需要恢复的变量。
“_exportUnitDataSet” 函数
“_exportUnitDataSet” 函数的作用类似于”_saveUnitDataSet”,但只有存程序单元 (ST 源文件或 MCC unit)的interface中的保持或非保持性变量可以使用该函数进行保存。只有Version V3.2 或更新版本的SIMOTION D可以使用该函数。
“_exportUnitDataSet”数据保存的格式为XML ,并压缩为ZIP文件。
“_exportUnitDataSet” 函数的参数类似于”_saveUnitDataSet” 函数,在此不再赘述。
“_exportUnitDataSet”保存的数据需要使用函数”_importUnitDataSet”来进行恢复。n
其它相关的系统函数:
• “_deleteUnitDataSet”: 用于删除单个通过系统函数”_exportUnitDataSet”以及”_saveUnitDataSet” 保存的变量数据文件
• “_checkExistingUnitDataSet”: 用于检查是否存在相应的数据备份文件
• “_deleteAllUnitDataSets”: 删除所有保存的变量数据备份文件n
四. 其它相关信息
各型号Simotion D的存储器大小如下:n
表 4 Simotion D存储器容量n
存储器 | D410 | D425 | D435 | D445 |
RAM (Random Access Memory) | 25 MB | 25 MB | 25 MB | 50 MB |
RAM disk (load memory) | 17 MB | 17 MB | 17 MB | 23 MB |
Retentive memory | 7 KB | 320 KB | 320 KB | 320 KB |
Persistent memory (CF Card) | 300 MB | 300 MB | 300 MB | 300 MB |
风扇/电池模块
对于Simotion D4x5,风扇/电池模块可用于数据保持。对于D425/D435,该模块为选件,对于D445则是标配元件,D445没有该模块无法运行(没有风扇的原因)。D410不需要该模块。
风扇/电池模块的订货号: 6FC5348-0AA01-0AA0
电池作为备件可单独订货:6FC5247-0AA18-0AA0
关于Simotion C 和Simotion P的存储器
Simotion C的存储器结构基本和Simotion D类似,主要区别为Persistent memory为MMC卡而不是CF卡,其它的结构基本相同。具体请参考相应手册。
Simotion P是基于PC的结构设计的,因而其存储器直接使用PC的硬盘和内存,因而结构有较大区别。具体请参考相应手册。
关于时钟
Simotiond D4x5中内含硬件时钟。时钟的保持和SRAM一样,需要超级电容和电池维持,保持时间也和SRAM相同。在保持期间,时钟会一直计时,掉电后也会继续。时间的设置可使用Simotion D >target device > Set time of day调出设置面板进行设置。
图6 时钟设置
参考文献:
手册 “SIMOTION SCOUT Basic functions”, 下载地址:27002431
手册 “SIMOTION D4x5 Commissioning and Hardware Installation Manual”, 下载地址:27032459
手册 “SIMOTION D410 Commissioning and Hardware Installation Manual”, 下载地址:27032437
关键词
Simotion D;存储器;数据删除;数据保存
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc326800.html