一、扩展寄存器[R]
对于复杂系统工艺控制要求,其编程可能需要更多的用户寄存器作为中间单元或缓存区使用。除了传统的数据寄存器D以外,提供扩展寄存器R软元件供用户使用,使之能更加方便的构建梯形图程序。
扩展寄存器的使用方法与数据寄存器基本一样,可进行数值数据的读入、写出的数据寄存器。被当作为32位寄存器使用时,也将连续占用两个相邻地址的R寄存器序号。
1、扩展寄存器的编号
● 扩展寄存器R编号为:R0~R99。
2、扩展寄存器的构造
扩展寄存器时存储数值数据的软元件,其种类如下所示。这些寄存器都是16位(最高位为正负符号),将两个数据寄存器组合,可存储32位(最高位为正负符号)的数值数据。
● 处理数值的范围(10进制)
16位:-32768~32767
32位:-2147483648~2147483647
以两个相邻扩展寄存器表现32位的数据。对于将R0作为32位寄存器的结构如下(占用R1寄存器):
• 扩展寄存器R在指定32位时,指定低位侧(例如: R0)后高位侧会被紧接(例如: R1)的号码自动占用。
低位侧既可指定奇数,也可指定偶数的软元件编号,但是考虑到人机界面、显示模块、编程工具的监控
3、功能和动作说明
● R寄存器无固定初始值,在分配和使用之前应做好其数值的初始化,以免错误的初值导致梯形图工作异常。
● R寄存器为特有扩展寄存器,在与第三方设备进行连接时(如HMI),不能使用编程口协议进行连接,但可以使用MODBUS协议进行R寄存器的通信。
扩展寄存器R可以处理各种数值数据,通过利用它进行各种运算和控制,功能和动作参见寄存器[D]。
1. 基本指令中的扩展寄存器
• 指定为定时器和计数器的设定值。
计数器和定时器将被指定的扩展寄存器的内容作为各自的设定值而动作。
2. 应用指令中的扩展寄存器
MOV指令的动作实例
• 更改计数器的当前值。
计数器(C2)的当前值更改为R5的内容。
• 将计数器的当前值读入扩展寄存器中。
计数器(C10)的当前值传送给R4。
• 将数值保存到扩展寄存器中。
200(10进制数)传送到R10。
80,000(10进制数)传送到R10(R11)。由于数据超出32,767,所以使用32位双重D指令(32位运算)。指定了扩展寄存器的低位侧 (R10)后,高位侧 (R11)会被自动占用。
• 将数据寄存器的内容传送至扩展寄存器中。
D10的内容传送给R20。
4、程序应用
楼主最近还看过