西门子PLC模块6ES7223-1BF22-0XA8
![](http://img2.11467.com/2023/03-08/1148624259.jpg)
西门子PLC模块6ES7223-1BF22-0XA8
如果属于RAM区,那么是否可把V区的数据拷贝到EEPROM中?
答:西门子S7-200plc系统中用到了三种存储器件:
RAM: 易失性的存储器,失去电源供应后,其中保存的数据会丢失。S7-200 CPU中的RAM由超级电容+外插电池卡提供电源缓冲。RAM保存V、M、T(定时器)、C(计数器)等各数据区的内容,在CPU失电后的表现由用户在系统块“数据保持”页中设置
EEPROM:非易失的电可擦除存储器,保存数据不需要供电,并且可以改写其内容。上述RAM数据区中有的部分与EEPROM中的区域一一对应。用户程序也**保存在程序EEPROM区中
外插存储卡:非易失的存储器。用来保存用户程序、数据记录(归档)、配方数据,以及一些其他文件等
RAM区的数据保持靠“内置超级电容+外插电池卡”的机制。
在CPU内部靠一个超级电容,在掉电后为RAM存储器提供电源缓冲,保存时间可达几天之久,具体时间见表1、表2。CPU上电时,超级电容就可以充电。要获得规格表中的数据保持时间,电容必须连续充电24小时。
S7-200还可选用外插电池卡(需单独定货),在超级电容耗尽后为RAM数据区提供电源缓冲。在连续无供电时,它可使用200天(即保持数据达200天)。CPU在不断电的情况下专用电池卡能够使用10年。电池卡是不可充电的。
CPU内置的EEPROM存储器用于**保存数据,包括与RAM数据区一一对应的全部的V存储区、部分M存储区(MB0 - MB13)、定时器(TONR)。
例如V存储区的VW100(RAM)在EEPROM中有其独占的对应地址,数据在从EERPOM中写到V存储区中时,其目标地址就是VW100。
数据可以用如下方式写入EEPROM数据区:
在编程软件Micro/WIN的Data Block(数据块)中定义V数据区存储单元的初始值,下载数据块时,这些数值也被写入到相应的EEPROM单元中。
用特殊存储器SMB31、SMW32,用编程方法将V存储区的数据写入EEPROM
在System Block(系统块)中设置数据保持功能,可将MB0 - MB13的内容在CPU断电时自动写入到EEPROM中**值编码器的信号输出
**值编码器信号输出有并行输出、串行输出、总线型输出、变送一体型输出。
1. 并行输出:
**值编码器输出的是多位数码(格雷码或纯二进制码),并行输出就是在接口上有多点高低电平输出,以代表数码的1或0,对于位数不高的**编码器,一般就直接以此形式输出数码,可直接进入plc或上位机的I/O接口,输出即时,连接简单。但是并行输出有如下问题:
1、必须是格雷码,因为如是纯二进制码,在数据刷新时可能有多位变化,读数会在短时间里造成错码。
2、所有接口必须确保连接好,因为如有个别连接不良点,该点电位始终是0,造成错码而无法判断。
3、传输距离不能远,一般在一两米,对于复杂环境,**有隔离。
4、对于位数较多,要许多芯电缆,并要确保连接优良,由此带来工程难度,同样,对于编码器,要同时有许多节点输出,增加编码器的故障损坏率。
2. 串行SSI输出:
串行输出就是通过约定,在时间上有先后的数据输出,这种约定称为通讯规约,其连接的物理形式有RS232、RS422(TTL)、RS485等。
由于**值编码器好的厂家都是在德国,所以串行输出大部分是与德国的西门子配套的,如SSI同步串行输出。
SSI接口(RS422模式),以两根数据线、两根时钟线连接,由接收设备向编码器发出中断的时钟脉冲,**的位置值由编码器与时钟脉冲同步输出至接收设备。由接收设备发出时钟信号触发,编码器从高位(MSB)开始输出与时钟信号同步的串行信号.
串行输出连接线少,传输距离远,对于编码器的保护和可靠性就大大提高了。
一般高位数的**编码器都是用串行输出的。
3. 现场总线型输出
现场总线型编码器是多个编码器各以一对信号线连接在一起,通过设定地址, 用通讯方式传输信号,信号的接收设备只需一个接口,就可以读多个编码器信号。总线型编码器信号遵循RS485的物理格式,其信号的编排方式称为通讯规约,目前全世界有多个通讯规约,各有优点,还未统一,编码器常用的通讯规约有如下几种:
PROFIBUS-DP; CAN; DeviceNet; Interbus等
总线型编码器可以节省连接线缆、接收设备接口,传输距离远,在多个编码器集中控制的情况下还可以大大节省成本。
4.变送一体型输出
连接**编码器的电气二次设备:
连接**值编码器的设备可以是可编程控制器PLC、上位机,也可以是专用显示信号转换仪表,由仪表再输出信号给PLC或上位机。
1.直接进入PLC或上位机:
编码器如果是并行输出的,可以直接连接PLC或上位机的输入输出接点I/O,其信号数学格式应该是格雷码。编码器有多少位就要占用PLC的多少位接点,如果是24伏推挽式输出,高电平有效为1,低电平为0;如果是集电极开路NPN输出,则连接的接点也必须是NPN型的,其低电平有效,低电平为1。
2.编码器如果是串行输出的,由于通讯协议的限制,后接电气设备必须有对应的接口。
例如SSI串行,可连接西门子的S7-300系列的PLC,有SM338等专用模块,或S7-400的FM451等模块,对于其他品牌的PLC,往往没有专用模块或有模块也很贵。
3.编码器如是总线型输出,接受设备需配专用的总线模块,例如PROFIBUS-DP。
但是,如选择总线型输出编码器,在编码器与接收设备PLC中间,就无法加入其他显示仪表,如需现场显示,就要从PLC 再转出信号给与信号匹配的显示仪
已调试成功,希望能对有类似情况的朋友有帮助。 毕竟WINCC我很少用它,但它确实很强大^_^,也许是我不熟的原因,觉得它通信慢。问下大家,读单字,双字大概算下来有合计800个16位字的通讯,MPI方式.下午顺便发了个测试代码给同事,同事说WINCC一次大概只能读100多个字,也就是200多个字节,再多了就失败,而且每次耗时大概1~2秒.那800个字不得调8次?感觉这样不行。我用的GetTagRaw函数.但是我记得如果采用PRODAVE方式,一次就可以读回来了,耗时感觉不到1秒,正考虑是不是把S7300/200 PLC通讯全移到OCX处理算了,不知有没这个必要。 |
- 西门子PLC模块6ES7222-1HD22-0XA0 2024-05-08
- 西门子PLC模块6ES7222-1BD22-0XA0 2024-05-08
- 西门子PLC模块6ES7222-1HF22-0XA8 2024-05-08
- 西门子PLC模块6ES7222-1EF22-0XA0 2024-05-08
- 西门子PLC模块6ES7222-1BF22-0XA8 2024-05-08
- 西门子PLC模块6ES7221-1EF22-0XA0 2024-05-08
- 西门子PLC模块6ES7221-1BF22-0XA8 2024-05-08
- 西门子PLC模块6ES7221-1BH22-0XA8 2024-05-08
- 西门子模块6GK7243-1GX00-0XE0 2024-05-08
- 西门子模块6GK7243-1EX01-0XE0 2024-05-08
- 西门子模块6ES7241-1AA22-0XA0 2024-05-08
- 西门子模块6ES7253-1AA22-0XA0 2024-05-08
- 西门子模块6ES7277-0AA22-0XA0 2024-05-08
- 西门子模块6ES7235-0KD22-0XA8 2024-05-08
- 西门子模块6ES7232-0HD22-0XA0 2024-05-08