数据类型和变量#
内置数据类型#
空类型
nil,表示没有任何有效值
算术类型
系统内置算数类型为双精度实浮点数(number)
字符串类型 string
例如 “siasun robot”
布尔类型boolean
例如 true、false
列表类型list
可容纳其他数据类型的表(数组结构)
例如{1,2,3,4,5}、{“a”,”b”,”c”}
注:为了方便以下函数说明,定义以下类型
joints
特指长度为6的描述关节相关数据(位置信息、速度信息等)的双精度实浮点数列表,单位rad,例如{1,2,3,4,5,6}
pose
特指长度为6的描述位姿数据的双精度实浮点数列表,单位m、rad,例如{1,2,3,4,5,6}
num_list
特指双精度实浮点数列表,例如{1.1,2.2,3,4}
pose_list
特指描述一组位姿数据的pose列表,例如{{1,2,3,4,5,6},{2,3,4,5,6,7}}
joints_list
特指描述一组关节相关数据的joints列表,例如{{1,2,3,4,5,6},{2,3,4,5,6,7}}
pose_speed
特指描述末端速度的双精度浮点数,单位mm/s、m/s,例如2.5
pose_acc
特指描述末端加速度的双精度浮点数,单位mm/s^2、m/s^2,例如2.5
joint_speed
特指描述关节速度的双精度浮点数,单位deg/s、deg/s,例如2.5
joint_acc
特指描述关节加速度的双精度浮点数,单位deg/s^2、deg/s^2,例如2.5
timer
特指描述时间间隔的双精度浮点数列表,单位s,例如1
系统常量#
一个形如42的值被称作字面值常量。每个字面值常量都对应一种数据类型,字面值常量的形式和值决定了它的数据类型和在脚本中的使用方式。系统支持的常量如下。
基本类型常量
算数类型常量、true、false。
算数类型常量通常指的双精度实浮点数常量,该类型常量可以参与关系运算、算数运算、逻辑运算,并可以为基本类型变量进行赋值和初始化,亦可作为函数的实参进行参数传递。
true在系统中代指真。
false在系统中代指假。
字符串常量
字符串常量是字符的集合,字符串常量可用于字符串变量的定义,函数参数传递。
变量#
变量在系统中通常用一个唯一的标识符来表示(id)。并且变量需要在定义之后才可以使用。
基本类型变量
a =1.23 --变量赋值 上面定义了a的类型为双精度实浮点数,初始化a的值为1.23
b = true -- b 布尔变量定义,初始化为 真
c = false --c 布尔变量定义,初始化为 假
字符串类型变量
s1=“siasun” --s1变量定义 字符串类型 初始化为“siasun”
s2=“SiasunCobot” --s2 变量定义 字符串类型 初始化为“SiasunCobot”
s2=s1 --s2 变量赋值,值修改为”siasun”
列表类型变量
a1={} --a1变量定义,空列表,长度为0
a2={1.1,2.2,3.3,4.4} --a2 变量定义,双精度实浮点数列表,长度为4
a3={“a”,”b”,”c”} --a3变量定义,字符串列表,长度为3
a4=a3 #a4 变量定义,a4和a3指向同一个列表,修改a4的值,a3同时被修改
可以通过索引操作具体的元素,索引下标从1开始,比如
a2[1]=12
a3[2]=”siasun”