line;color:#333333;background-color:#FFFFFF;">
1.MMC使用说明
MMC卡是西门子PLC的程序、数据的存储体,应用于S7-300,ET200CPU,FM352-5产品:
1. 在定购PLC时,PLC本身不带有MMC卡,所以为了正常使用PLC,必须根据工程项目实际需求定购一个大小适用的MMC卡,如果PLC上未插入MMC卡,是无法将STEP7中的程序和数据下载下去的,同时应当注意,不能带电插拔MMC卡,否则会丢失程序或损坏MMC卡。
2. 在Simatic manager中,选择一个程序块下载,则该块被下载到MMC卡中,如果在窗口左边的树型图中选中Block文件夹进行下载,则所有的块被下载到MMC卡上,MMC中原有的信息将被覆盖,向MMC卡读写数据或下载程序的次数不受限制。
3. 除过CPU中集成的SFB/SFCs块外,MMC当中其他的块可被在线删除。
4. MMC卡作为CPU的装载内存(Load Memory),在为CPU选型MMC的时候,建议所选的MMC卡一定要大于等于所选定的CPU工作内存的大小(work memory),好比工作内存大一些,但如果应用中,PLC工作时要使用大量的过程数据,历史数据,配方数据等或控制工艺中存在较多的用户程序块、STEP7中的应用功能块(如FB41、FB42等)时,建议选用2-8M的MMC卡。
5. MMC卡是装载内存,所以不能够在上位机中的组态软件中直接读取MMC卡上的数据值(DB块中的数据),组态画面读取的是PLC RAM内存中的数据。
6. 在西门子的PLC上必须使用西门子的MMC卡,如下表中所列出的,不能使用数码相机、移动或PDA等数码产品使用的通用型MMC卡。
Micro Memory Card / S7-300 | Order number |
64 Kbytes | 6ES7 953-8LF20-0AA0 |
128 Kbytes | 6ES7 953-8LG20-0AA0 |
512 Kbytes | 6ES7 953-8LJ30-0AA0 |
2 Mbytes | 6ES7 953-8LL20-0AA0 |
4 Mbytes | 6ES7 953-8LM20-0AA0 |
8 Mbytes | 6ES7 953-8LP20-0AA0 |
line;color:#333333;background-color:#FFFFFF;"> 表1: MMC 卡订货号
line;color:#333333;background-color:#FFFFFF;"> 2.MMC常见问题列表
line;color:#333333;background-color:#FFFFFF;">
2.1如何确定STEP7中的工程项目需要使用多大空间的MMC卡?
Answer :确定控制程序所需的MMC卡的大小,可以按以下步骤进行:
line;color:#333333;background-color:#FFFFFF;">1. 在STEP7 Manager中打开的Project;
2. 选中的程序块,点击鼠标右键(或快捷键Alt + Enter),打开程序块的属性页面:
line;color:#333333;background-color:#FFFFFF;">
图1 属性页面
line;color:#333333;background-color:#FFFFFF;">3. 选择弹出窗口中的Blocks页面:
从上图中可以看出的全部程序块在PLC中占用装载内存的字节数。4. 将项目中所有程序块(OB、FC、FB、DB)占用装载内存(Load Memory Requirement)和系统数据(Syestem data memory)占用的装载内存的数量加在一起:
得到的的字节数量在除以1024,就可以知道Project中的程序块需要多大的MMC卡空间。
5. 如果已经有Siemens的PLC和MMC,那么可以通过在线诊断,获取PLC工作内存和装载内存(MMC卡)的使用情况。
在STEP7 Manager界面中,选中CPU,用CP5611或PC-Adapter连接PLC的MPI通讯口,使用快捷键Ctrl + D,弹出PLC的诊断信息窗口:
当MMC卡未插入PLC中时:
line;color:#333333;background-color:#FFFFFF;">
图2 信息页面
line;color:#333333;background-color:#FFFFFF;"> 因为PLC中没有插入MMC卡,Load memory RAM + EPROM列为空,Work Memory列中显示当前PLC的工作内存为48K,EPROM是S7-400、旧款S7-300使用的装载内存卡;
line;color:#333333;background-color:#FFFFFF;">在PLC中插入MMC卡时,
使用快捷键Ctrl + D弹出PLC的内存使用情况:
line;color:#333333;background-color:#FFFFFF;">
图3 内存属性
line;color:#333333;background-color:#FFFFFF;">可以看出PLC的内存使用情况为0%,空余128K装载内存和48K工作内存;
将的程序下载到PLC当中:
line;color:#333333;background-color:#FFFFFF;">
图4 下载按钮
line;color:#333333;background-color:#FFFFFF;">使用Ctrl + D弹出PLC的内存使用情况:
line;color:#333333;background-color:#FFFFFF;">
图5 属性页面
line;color:#333333;background-color:#FFFFFF;"> 可以看出,的控制程序在PLC中对装载内存和工作内存的占用情况。
line;color:#333333;background-color:#FFFFFF;">
2.2 MMC卡上存储程序块或数据块的限制是什么?
ANSWER:
是的,下载到MMC卡的块数目见如下表格:
类型 | MLFB | 多的块数目 |
MMC 64KB | 6ES7953-8LF20-0AA0 | 768 |
MMC 128KB | 6ES7953-8LG20-0AA0 | 1024 |
MMC 512KB | 6ES7953-8LJ30-0AA0 | 2560 |
MMC 2MB | 6ES7953-8LL20-0AA0 | 6528 |
MMC 4MB | 6ES7953-8LM20-0AA0 | 12672 |
line;color:#333333;background-color:#FFFFFF;"> 表 2: 在MMC卡中的大块数
line;color:#333333;background-color:#FFFFFF;">
2.3 如何删除MMC卡上的数据或程序?
ANSWER:
可以使用如下方法删除MMC卡上的数据:
line;color:#333333;background-color:#FFFFFF;">1. 需要被删除的MMC卡插在PLC插槽内。
2. 在SIMATIC管理器界面(SIMATIC Manager),通过"View > Online"或者点击
3. 图标切换到在线模式。
4. 在在线模式下选择 。
5. 选择需要删除的块.
6. 点击键盘上的DEL删除按键(删除操作需要进行确认).
line;color:#333333;background-color:#FFFFFF;">
2.4 31X型PLC插入MMC卡后,STOP灯不停闪烁,怎么办? 或如何格式化MMC?
ANSWER:
在CPU中的MMC卡没有格式化或者存在CPU无法识别的信息(例如组态另外一种PLC或者与现有CPU不兼容的系统)时,CPU的停止灯会闪烁
注意:
当格式化MMC卡时,MMC卡内所有数据都会丢失。
格式化MMC的步骤:
line;color:#333333;background-color:#FFFFFF;">1. CPU 请求完全复位 (STOP灯慢闪).
2. CPU需要完全格式化(STOP灯慢闪)。
3. 把模式选择开关选择到MRES位置并保持九秒钟左右直到停止灯常亮。
4. 需要在3秒内放开选择开关然后把开关拨至MRES位置,在格式化过程中停止灯会闪烁。
line;color:#333333;background-color:#FFFFFF;">
如果按照如上操作不能格式化MMC卡,MMC卡有可能已经损坏。
注意:
如上方法仅仅适用于MMC卡内部存在的信息对于PLC无效的情况。
line;color:#333333;background-color:#FFFFFF;">
2.5 插入MMC卡的S7300 PLC不能正常调用SFC54程序块?
ANSWER:
在的S7-300 CPU中SFC 54 "RD_DPRARM "已经被SFC 102 "RD_DPARA".所代替。
SFC 102 "RD_DPARA", 对比于旧的 SFC 54 "RD_DPARM" 是一个异步执行的系统功能. 这意味着程序的执行中会有多次的sfc的调用.
包含 SFC 54 "RD_DPARM" 的程序无法下载到使用MMC卡的PLC中. 因此需要用 SFC 102 "RD_DPARA" 替代SFC 54 "RD_DPARM",并且针对异步执行调整程序的逻辑.
下表为两个功能块的对比:
SFC 54 "RD_DPARM" | SFC 102 "RD_DPARA" | 说明 |
Inputs | ||
--- | REQ | 当REQ=1时程序执行; SFC 102的新参数 |
IOID | --- | 该参数已在SFC 102中取消; 见LADDR |
LADDR | LADDR | SFC 54: 任何块地址, ((B#16#54=外设输入; B#16#55= 外设输出) SFC 102: 任何块地址; LADDR的高位(BIT 15) Bit15=0 ->外设输入Bit15=1 ->外设输出 |
RECNUM | RECNUM | 数据记录号 |
Output | ||
RET_VAL | RET_VAL | 如果在功能激活时出错, |
则返回值包含故障代码。SFC 102 包含更多的错误信息 | ||
--- | BUSY | BUSY=1; 任务尚未结束 |
RECORD | RECORD | 所获取数据记录的目标区域。只允许字节数据 |
类型。 |
line;color:#333333;background-color:#FFFFFF;"> 表 3: SFC 54 和 SFC 102的对比
line;color:#333333;background-color:#FFFFFF;">
2.6 采用MMC卡的S7300和C7613,635系列CPU是如何完成数据保持功能的?
ANSWER:
如下描述的数据保持功能对使用MMC卡的CPU有效,当PLC改变操作模式时数据块,定时器计数器和中间变量的数据保持属性。
line;color:#333333;background-color:#FFFFFF;"> 数据块:
line;color:#333333;background-color:#FFFFFF;">• CPU 停止/运行 或者 电源 关/开
1. 保留数据块中的内容在重启和电源开/关时始终保留。可以根据工作存储器允许的大限制将保持数据块上载到工作存储器。在 V2.0.12 和更高版本的 CPU 中,也支持非保持数据块。每当执行重新启动或切断电源然后再次打开时,都将使用非保持数据块的初始值从装载存储器中初始化非保持数据块。可以根据大工作存储器的限制来装载非保持数据块和代码块。
2. 设置非保持数据块操作为:
o 在数据块的属性中选择"Non-Retain"
o 通过 SFC 82 "CREA-DBL"生成的数据块. 在参数ATTRIB中BIT2 用来表明数据块的保持属性,1为不保持,0为保持.• 内存复位(MRES)
1. 在装载存储器的内容将会复位为初始值
2. 在装载存储器内的块不变,工作内存的数据复位为初始值.• CPU 断电 -> 插卡 -> 上电 -> 断电 -> 插卡 -> 上电
1. 数据恢复为装载存储器的数值. 数值为从编程器下载到CPU的数值,或者使用SFC84写入的数值。
2. 所有的块都保持不变。在工作内存的数值被初始化。Note:
如需要保持当前值, 可用SFC84保存数据在MMC卡内,注意MMC 卡只允许进行 100,000次写访问。
line;color:#333333;background-color:#FFFFFF;">
M区,计数器和定时器:
这些值可以在硬件组态内进行设定保持或者非保持: "Object properties CPU > remanence".
line;color:#333333;background-color:#FFFFFF;">• CPU STOP/RUN 或者 电源OFF/ON
如果设定为保持,数据将会保留,否则会被初始化为0.
• 内存复位(MRES)
这些变量将会清零,不论设定为保持还是非保持。
• CPU Power OFF -> Remove MMC -> Power ON -> Power OFF -> Insert MMC -> Power ON
如果设置为保持则保留否则被初始化为0。
line;color:#333333;background-color:#FFFFFF;">
2.7 在数据块的属性中非保持是什么作用?
ANSWER:
在数据块的属性中非保持是在"General - Part 2" 标签页。可以通过该选项进行保持或者非保持的设定。
line;color:#333333;background-color:#FFFFFF;">
图6 页面: 属性 – 数据块
line;color:#333333;background-color:#FFFFFF;"> 2.8 如何将一些系统文件或是项目相关的文件存储到MMC上?
line;color:#333333;background-color:#FFFFFF;">
ANSWER:
可以将任何与项目相关的文件存储到MMC卡内.
line;color:#333333;background-color:#FFFFFF;">步骤:
• 把MMC卡插入到PG中.
• 打开 SIMATIC-Manager.
• 选择菜单 "File > S7-Memory Card > Open".
• 选择菜单"PLC > Save to Memory Card ...".
line;color:#333333;background-color:#FFFFFF;">
图7 SIMATIC Manager - S7 memory card
line;color:#333333;background-color:#FFFFFF;">• 选择需要保存的文件并使用 "-->" 键进行保存.
line;color:#333333;background-color:#FFFFFF;">
图8 SIMATIC Manager - S7 memory card
line;color:#333333;background-color:#FFFFFF;">• 如果需要删除选择的文件,使用"<--" 键.
• 点击OK用来保存。
• 保存后的数据显示在"S7 Memory Card"窗口.
line;color:#333333;background-color:#FFFFFF;">
图9 存储卡菜单
line;color:#333333;background-color:#FFFFFF;">
Note:
功能仅限于S7-300 的MMC卡和S7-400的Flash 卡。
line;color:#333333;background-color:#FFFFFF;">
2.9 如果STEP7项目完整地保存在MMC卡上,该选择多大的MMC?
ANSWER:
为了选择恰当的MMC卡,需要了解整个项目的大小,可以通过如下方法:
首先对的STEP 7 项目归档,"File > Archive".然后查看归档后的文件属性(通过右键或者Alt+回车)
line;color:#333333;background-color:#FFFFFF;">
图10 文件属性
line;color:#333333;background-color:#FFFFFF;"> 选择"PLC > Module Information > Memory".可以看到已经使用的存储卡大小.
line;color:#333333;background-color:#FFFFFF;">
图11 装载内存
line;color:#333333;background-color:#FFFFFF;"> 需要把归档数据的大小和已经使用的进行相加,得到的结果做为选择保存整个项目所需要的MMC卡的尺寸.
line;color:#333333;background-color:#FFFFFF;">
2.9 插入MMC卡的S7300 PLC进行了加密,但忘记了密码,如何才能对MMC解密, 或删除MMC卡上的密码?
ANSWER:
如果忘记了在S7-300 CPU Protection属性中所设定的密码,那么只能够采用Siemens的编程器PG上的读卡槽或采用带USB接口的读卡器(USB prommer 6ES7792-0AA00-0XA0),选择SIMATIC Manager界面下的菜单 FileS7 Memory Carddelete 选项删除MMC卡上原有的内容,这样MMC就可以作为一个未加密的空卡使用了,但无法对MMC卡进行解密,读取MMC卡中的程序或数据