>
PLC的存储器可分为程序存储器和数据存储器,这是两个不同的概念。
PLC编程软件中有很多基本指令,通过基本指令编写程序,达到一定条件下需要的输出。编写好的程序就存储在程序存储器中,在程序循环运行的开始阶段,CPU首先将物理输入状态复制到映像输入存储区以供程序控制逻辑使用,程序执行过程会访问数据存储器中的内容作为条件判断来执行程序,到程序循环的末尾阶段,CPU会过程中产生并存储在输出映像存储器中的状态写入到物理输出中。
存储器的大小
程序存储器的大小
程序存储器的大小可以在PLC的选型手册中查到
程序存储器的大小汇总如下,汇辰20,30,40CPU为您提供越级的惊喜,如果您在增加程序后超过了程序存储器的大小限制,依旧可以从容下载运行。
型号
| SR/ST20
| SR/ST30
| SR/ST40
| SR/ST60
| 汇辰E7
| 18Kb
| 24Kb
| 30Kb
| 30Kb
| 西门子
| 12Kb
| 18Kb
| 24Kb
| 30Kb
| 如果我们编写的程序过于庞大,在编译程序的时候,编程软件的输出信息会提示程序对于当前CPU类型而言过大。
程序扩容太投入,增量程序编写完才发现程序存储器不够用了。如果做一些调整使程序小于18Kb,就可以忽略提示下载至汇辰的PLC中正常运行。
数据存储器的大小
按以下单位访问: | 存储器类型 | CPU CRx0s | CPU SR20 / ST 20 | CPU SR30 / ST 30 | CPU SR40 / ST40 | CPU SR60 / ST60 | 位(字节.位) | V | 0.0 - 8191.7 | 0.0 - 8191.7 | 0.0 - 12287.7 | 0.0 - 16383.7 | 0.0 - 20479.7 |
| I | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 |
| Q | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 |
| M | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 |
| SM | 0.0 - 2047.7 | 0.0 - 2047.7 | 0.0 - 2047.7 | 0.0 - 2047.7 | 0.0 - 2047.7 |
| S | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 | 0.0 - 31.7 |
| T | 0 - 255 | 0 - 255 | 0 - 255 | 0 - 255 | 0 - 255 |
| C | 0 - 255 | 0 - 255 | 0 - 255 | 0 - 255 | 0 - 255 |
| L | 0.0 - 63.7 | 0.0 - 63.7 | 0.0 - 63.7 | 0.0 - 63.7 | 0.0 - 63.7 | 字节 | VB | 0 - 8191 | 0 - 8191 | 0 - 12287 | 0 – 16383 | 0 – 20479 |
| IB | 0 - 31 | 0 - 31 | 0 - 31 | 0 - 31 | 0 - 31 |
| QB | 0 - 31 | 0 - 31 | 0 - 31 | 0 - 31 | 0 - 31 |
| MB | 0 - 31 | 0 - 31 | 0 - 31 | 0 - 31 | 0 - 31 |
| SMB | 0 - 2047 | 0 - 2047 | 0 - 2047 | 0 -2047 | 0 - 2047 |
| SB | 0 - 31 | 0 - 31 | 0 - 31 | 0- 31 | 0 - 31 |
| LB | 0 - 63 | 0 - 63 | 0 - 63 | 0 - 63 | 0 - 63 |
| AC | 0 - 3 | 0 - 3 | 0 - 3 | 0 - 3 | 0 - 3 | 字 | VW | 0 - 8190 | 0 - 8190 | 0 - 12286 | 0 – 16382 | 0 – 20478 |
| IW | 0 - 30 | 0 - 30 | 0 - 30 | 0 - 30 | 0 - 30 |
| QW | 0 - 30 | 0 - 30 | 0 - 30 | 0 - 30 | 0 - 30 |
| MW | 0 - 30 | 0 - 30 | 0 - 30 | 0 - 30 | 0 - 30 |
| SMW | 0 - 2046 | 0 - 2046 | 0 - 2046 | 0 - 2046 | 0 - 2046 |
| SW | 0 - 30 | 0 - 30 | 0 - 30 | 0 - 30 | 0 - 30 |
| T | 0 - 255 | 0 - 255 | 0 - 255 | 0 - 255 | 0 - 255 |
| C | 0 - 255 | 0 - 255 | 0 - 255 | 0 - 255 | 0 - 255 |
| LW | 0 - 62 | 0 - 62 | 0 - 62 | 0 - 62 | 0 - 62 |
| AC | 0 - 3 | 0 - 3 | 0 - 3 | 0 - 3 | 0 - 3 |
| AIW | 不适用 | 0 - 110 | 0 - 110 | 0 - 110 | 0 - 110 |
| AQW | 不适用 | 0 - 110 | 0 - 110 | 0 - 110 | 0 - 110 | 双字 | VD | 0 - 8188 | 0 - 8188 | 0 - 12284 | 0 – 16380 | 0 – 20476 |
| ID | 0 - 28 | 0 - 28 | 0 - 28 | 0 - 28 | 0 - 28 |
| QD | 0 - 28 | 0 - 28 | 0 - 28 | 0 - 28 | 0 - 28 |
| MD | 0 - 28 | 0 - 28 | 0 - 28 | 0 - 28 | 0 - 28 |
| SMD | 0 - 2044 | 0 - 2044 | 0 - 2044 | 0 - 2044 | 0 - 2044 |
| SD | 0 - 28 | 0 - 28 | 0 - 28 | 0 - 28 | 0 - 28 |
| LD | 0 - 60 | 0 - 60 | 0 - 60 | 0 - 60 | 0 - 60 |
| AC | 0 - 3 | 0 - 3 | 0 - 3 | 0 - 3 | 0 - 3 |
| HC | 0 - 3 | 0 - 3 | 0 - 3 | 0 - 3 | 0 - 3 |
通过观察上表可以发现,所有型号的CPU只有V存储器的大小有差别。并且有的存储器并不是能以任何单位来寻址访问的,关于存储器的访问我们在后面的文章再做详细的介绍。
上表中的差别对应的就是PLC选型手册技术参数中的数据存储器的大小
数据存储区差别汇总如下
型号
| SR/ST20
| SR/ST30
| SR/ST40
| SR/ST60
| 汇辰E7
| 8Kb
| 12Kb
| 16Kb
| 20Kb
| 西门子
| 8Kb
| 12Kb
| 16Kb
| 20Kb
| 数据存储器的种类
SMART PLC数据存储器的类型和属性如下:
其中I,Q,AI,AQ存储区是IO接口的映像存储区,我们在之前的文章中有过介绍,请参考PLC基础知识:PLC IO接口的详细介绍
M,V可以存储转换后的实际数据,参与输出控制的变量值(M,V),此外还可以存放定时器(T)计数器(C,HC)的值。此外还有累加器AC,局部变量存储器(L),特殊存储器(SM)等区域。
常用数据存储器的介绍
M标志存储器
虽然M存储器也支持按字节,字,双字寻址,但一个PLC只有32个字节(MB0-MB31)的M存储器可用,所以需要省着点用,而数字量标志是以位为单位的,32个字节共包含256个位,那么我们如果使用M存储器做数字量标志信号,一共可以使用256个,还是挺多的。
V变量存储器
用于中间变量的存储,所谓的中间变量可以被触摸屏读取和写入,可参与程序的控制。能存储各种各样的变量,例如整数,小数等,当然也可以按位来使用。
定时器C,计数器T
定时器C和计数器T存储器需要配合程序中的定时器和计数器指令来使用,用于存储记录定时器和计数器的实际值。
SM存储器
特殊存储器,就拿SMB0来说,我们为了规整程序而经常用到的SM0.0;用于初始化的SM0.1仅在首个扫描周期接通;SM0.5周期为1秒占空比50%的脉冲信号;SM0.4周期为60秒,占空比为50%的脉冲信号。
除了SMB0,还有很多特殊存储器用于读取硬件信息,故障诊断,通信控制等等。有些特殊寄存器并不是很常用,可能只会在某些特别的场景下会使用。以下列出了最全的SM存储器功能,当然有些版本和品牌的PLC不一定都支持以下功能。
- SMB0 系统状态位
- SMB1 指令执行状态位
- SMB2 自由端口接收字符
- SMB3 自由端口奇偶校验错误
- SMB4 中断队列溢出、运行时程序错误、中断已启用、自由端口发送器空闲和强制值
- SMB5 I/O 错误状态位
- SMB6-SMB7 CPU ID、错误状态和数字量 I/O 点
- SMB8-SMB19I/O 模块 ID 和错误
- SMW22-SMW26 扫描时间
- SMB28-SMB29 信号板 ID 和错误
- SMB480-SMB515数据日志状态(只读)
- SMB1000-SMB1049 CPU 硬件/固件 ID
- SMB1050-SMB1099 SB(信号板)硬件/固件 ID
- SMB1100-SMB1399 EM(扩展模块)硬件/固件 ID
- SMB1400-SMB1699 EM(扩展模块)模块特定的数据
- SMB1800-SMB1939:PROFINET 设备状态
- SMB1940-SMB1946:Web 服务器状态
- SMB30(端口 0)和 SMB130(端口 1)集成 RS485 端口(端口 0)和 CM01 信号板 (SB) RS232/RS485 端口(端口 1)的端口组态
- SMB34-SMB35 定时中断的时间间隔
- SMB36-45 (HSC0)、SMB46-55 (HSC1)、SMB56-65 (HSC2)、SMB136-145 (HSC3)、SMB146-SMB155 (HSC4)、SMB156-SMB165 (HSC5) 高速计数器组态和操作
- SMB66-SMB85 PLS0 和 PLS1 高速输出
- SMB86-SMB94 和 SMB186-SMB194 接收消息控制
- SMW98 I/O 扩展总线通信错误
- SMW100-SMW114 系统报警
- CM01 信号板 (SB) RS232/RS485 端口(端口 1)的 SMB130 端口组态(请参见 SMB30)
- SMB146-SMB155 (HSC4) 和 SMB156-SMB165 (HSC5) 高速计数器组态和操作(参见 SMB36)
- SMB166-SMB169 PTO0 包络定义表
- SMB176-SMB179 PTO1 包络定义表
- SMB186-SMB194 接收消息控制(请参见 SMB86-SMB94)
- SMB566-SMB575 PLS2 高速输出
- SMB576-SMB579 PTO2 包络定义表
- SMB600-SMB649 轴 0 开环运动控制
- SMB650-SMB699 轴 1 开环运动控制
- SMB700-SMB749 轴 2 开环运动控制
- SMB800-SMB848 轴组开环运动控制
其他存储器如AC,L,SCR可看个人编程习惯来使用。
总结
以上是关于PLC存储器的介绍,主要介绍了程序存储器和数据存储器的区别,以及不同型号数据存储器的大小和数据存储器的种类。关于PLC存储器的知识,你学会了吗?
如果你想对各种数据存储器有更深入的了解,可以参考STEP 7-Micro/WIN SMART的在线帮助,打开编程软件按F1即可查看,里面有你需要的信息。
西门子官方免费的选型手册,技术手册,编程软件,实例都可以在下面的文章中找到 西门子S7-200SMART编程软件下载
如果想看我的总结,敬请关注。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |