数据类型和变量#

内置数据类型#

空类型

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”