西门子PLC的寄存器结构
西门子PLC的寄存器结构
一访问数据
CPU 将信息存储在不同存储单元,每个位置均具有唯一的地址。可以显式标识要访问的存储器地址。这样程序将直接访问该信息。要访问存储区中的位,必须指定地址,该地址包括存
储器标识符、字节地址和位号(也称为“字节.位”寻址)。
表格--存储区
M存储器最多32个(256个位、32个字节、16个字),从MB0~MB31,MW0~MW30,MD0~MD28。
plc的组成
V存储器最多可到几千~几万个。
M是位地址。比如M0.0,M0.1等。
MB0、MB1是字节地址,包括8个位地址,从M0.0~M0.7,从
M1.0~M1.7。
MW0是字地址,包括MB0和MB1,即从M0.0~M1.7共16个位
地址。常用于寄存16位数据。
MD0是双字地址,包括MW0和MW1,即从M0.0~M3.7共32
个位地址。常用于寄存32位数据。
在程序执行期间,使用过程映像寄存器比直接访问输入或输出点更有优势。使用映像寄存器共有三个原因:
●在扫描开始时对所有输入进行采样可在扫描周期的程序执行阶段同步和冻结输入值。程序执行完成后,使用映像寄存器中的值更新输出。这样会使系统更稳定。
●程序访问映像寄存器的速度比访问 I/O 点的速度快得多,从而可以更快地执行程序。
● I/O 点是位实体,必须以位或字节的形式访问,但可以采用位、字节、字或双字的形式访问映像寄存器。因此,映像寄存器更为灵活。
使用“字节地址”格式可按字节、字或双字访问多数存储区(V、I、 Q、 M、 S、 L 和 SM)中的数据。要按字节、字或双字访问存储器中的数据,必须采用类似于指定位地址的方法指定地址。这包括区域标识符、数据大小标识和字节、字或双字值的起始字节地
址,如下图所示。
二、基本数据类型
1、位(bit)
常称为BOOL(布尔型),只有两个值:0或1。如:I0.0,Q0.1,M0.0,V0.1等。
2、字节(Byte)
一个字节(Byte)等于8位(Bit),其中0位为最低位,7
位为最高位。如:IB0(包括I0.0~I0.7位),QB0(包括Q0.0~Q0.7位),MB0,VB0等。范围:00~FF(十进制的0~255)。
3、字(Word)
相邻的两字节(Byte)组成一个字(Word),来表示一个无符号数,因此,字为16位。如:IW0是由IB0和IB1组成的,其中I是区域标识符,W表示字,0是字的起始字节。需要注意的是,字的起始字节(如上例中的“0”)都必须是偶数。字的范围为十六进制的0000~FFFF(即十进制的0~65535)。在编程时要注意,如果已经用了IW0,如再用IB0或IB1要特别加以小心,不要出现交叉引用。
4、双字(Double Word)
相邻的两个字(Word)组成一个双字,来表示一个无符号数。因此,双字为32位。如:MD100是由MW100和MW102
组成的,其中M是区域标识符,D表示双字,100是双字的起始字节。需要注意的是,双字的起始字节(如上例中的“100”)和字一样,必须是偶数(4的倍数)。双字的范围为十六进制的00000000~FFFFFFFF(即十进制的0~4294967295)。在编程时要注意,如果已经用了MD100,如再用MW100或MW102要特别加以小心,不要出现交叉引用。
以上的字节、字和双字数据类型均为无符号数,即只有正数,没有负数。
三、地址分配:
在PLC中,同一个地址不可以同时用来存储不同的数据,这种情况会造成数据错乱,地址重叠。这种错误不能被PLC通过编译检查出来,需要编程员自己把控。
PLC中地址的分配方式举例如下:
VW10=VB10+VB11,VW11=VB11+VB12,VW12=VB12+VB13
VD10=VW10+VW12,VD11=VW11+VW13,VD12=VW12+VW14,VD13=VW13+VW15,VD14=VW14+VW16

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。