关于运动控制器自带的“TABLE”说明 点击:540 | 回复:1



正运动技术

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:267帖 | 328回
  • 年度积分:50
  • 历史总积分:918
  • 注册:2020年9月10日
发表于:2021-10-22 09:12:58
楼主

TABLE是控制器自带的一个超大数组,数据类型为32位浮点型(4系列及以上为64位浮点数),掉电不保存。编写程序时,TABLE数组不需要再定义,可直接使用,索引下标从0开始。


ZBasic的某些指令可以直接读取TABLE内的值作为参数,比如CAMCAMBOXCONNFRAMECONNREFRAMEMOVE_TURNABSB_SPLINECANCRC16DTSMOOTHPITCHSETHW_PSWITCH等指令


示波器采样的参数也存储在TABLE里。因此在开发应用中要注意多个TABLE区域的分配与使用,不要与示波器采样的数据存储区域重合。


1TABLE指令读写数据。

TABLE(0) = 10            'TABLE(0)赋值10

TABLE(10,100,200,300)    '批量赋值,TABLE(10)赋值100TABLE(11)赋值200TABLE(12)赋值300

 

2TSIZE指令可读取TABLE空间大小,还可修改TABLE空间大小(不能超出TABLE最大空间)。

PRINT  TSIZE       '打印出控制器TABLE大小

TSIZE=10000        '设置TABLE的大小,不能超过控制器TABLE最大SIZE

 

3TABLESTRING指令按照字符串格式打印TABLE里的数据。

TABLE(100,68,58,92)

PRINT TABLESTRING(100,3)     '字符串格式打印数据,转换为ASCII

打印结果:D:\

 

TABLE作为参数传递时用法大致相同,以CAM凸轮指令为例:

CAM(start point, end point, table multiplier, distance)

start point:起始点TABLE编号,存储第一个点的位置

end point:结束点TABLE编号

table multiplier:位置乘以这个比例,一般设为脉冲当量值

distance:参考运动的距离


使用方法示例:

TABLE(10,0,80,75,40,50,20,50,0)  'TABLE10开始存数据,TABLE(10)赋值0TABLE(11)赋值80

CAM(10,17,100,500)            '运动轨迹为TABLE(10)TABLE(17)



查看TABLE内数据的方式有2种:


第一种:在在线命令行输入?*TABLE(10,8)查询TABLE(10)开始,依次8个数据。

image.png


第二种:在寄存器中查看DT(TABLE)数据,起始编号从10开始,个数8个。

image.png

 




楼主最近还看过



正运动技术

  • 精华:0帖
  • 求助:1帖
  • 帖子:267帖 | 328回
  • 年度积分:50
  • 历史总积分:918
  • 注册:2020年9月10日
发表于:2021-10-22 09:31:43
1楼

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


热门招聘
相关主题

官方公众号

智造工程师