运动控制器VR寄存器的妙用 点击:460 | 回复:2



正运动技术

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:130帖 | 129回
  • 年度积分:454
  • 历史总积分:506
  • 注册:2020年9月10日
发表于:2021-11-25 11:57:27
楼主

VR寄存器具有掉电存储功能,可无限次读写,但数据空间较小,一般只有1024或者更少,最新系列控制器的VR空间为8000用于保存需要不断修改的数据,例如轴参数、坐标等,数据类型为32位浮点型(4系列及以上为64位浮点数)。

可使用VR_INT强制保存为整型,VRSTRING强制保存为字符串。VRVR_INTVRSTRING共用一个空间,地址空间是重叠的,VRVR_INT读写方法相同,VRSTRING保存ASCII码,一个字符占用一个VR

VR的掉电保存原理是控制器内部有缺电存储器,但数据容量较小,所以数据量较大的需要长久保存的数据最好写到FLASH块或导出到U盘。

VR寄存器还可用于RTEX控制器传递读写数据,DRIVE_WRITE参数写入,DRIVE_READ参数读取,具体使用方法参见第十六章总线相关的RTEX总线指令。

使用CLEAR指令清除VR内的全部数据,CLEAR_BIT指令将VR某个位置0READ_BIT指令读取VR寄存器的某个位数据,SET_BIT指令将VR某个位置1


例一:VR使用方法

VR(0) = 10.58                 '赋值

aaa = VR(0)                   '读取

 

例二:VR寄存器数据相互转换

VR(100)=10.12

VR_INT(100)=VR(100)         '数据转换

?VR_INT(100)                '打印结果:10,浮点数转换成整数,丢失小数位

 

例三:VRSTRING存储字符串

VRSTRING(0,4) = "abc"         'VR(0)开始保存字符串

PRINT VRSTRING(0,4)         '打印结果:abc


image.png



例四:VR配合掉电中断

INT_ENABLE = 1

DPOS(0)=VR(0)              '上电读取保存的数值,恢复坐标

DPOS(1)=VR(1)

DPOS(2)=VR(2)

END                '主程序结束

 

GLOBAL SUB ONPOWEROFF ()   '掉电中断

     VR(0) = DPOS(0)       '保存坐标到VR

VR(1) = DPOS(1)

     VR(2) = DPOS(2)

END SUB



正运动技术

  • 精华:0帖
  • 求助:1帖
  • 帖子:131帖 | 129回
  • 年度积分:454
  • 历史总积分:506
  • 注册:2020年9月10日
发表于:2021-11-25 13:44:17
1楼

登陆正运动技术官网 www.zmotion.com.cn  或拨打  400-089-8936 获取更多学习资料

上签

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 253回
  • 年度积分:205
  • 历史总积分:205
  • 注册:2021年11月16日
发表于:2021-12-02 14:33:20
2楼

希望楼主以后多多分享


相关主题

官方公众号

智造工程师