8. API说明

8.1. act 指令

以下所有act指令使用POST,URL为/action/act。

8.1.1. 保存示教点

指令名称:save_point。

指令参数:

1/**
2* @param  string name记录的示教点名称
3* @param  string speed 速度
4* @param  string elbow_speed 肘速度
5* @param  string acc加速度
6* @param  string elbow_acc 肘加速度
7* @param  string toolnum 工具号
8* @param  string workpiecenum 工件号
9*/

指令案例:

 1{
 2    cmd: "save_point",
 3    data:{
 4        name: "point1",
 5        speed: "100",
 6        elbow_speed: "100",
 7        acc: "100",
 8        elbow_acc: "100",
 9        toolnum: "1",
10        workpiecenum: "1"
11    }
12}

指令反馈:

1/**
2* @return status:200 "success"
3* @return status:404 "fail"
4*/

8.2. sta 指令

以下所有sta指令使用POST,URL为/action/sta。

8.2.1. 获取机器人状态数据

指令名称:basic。

指令参数:无。

指令案例:

1{
2    cmd: "basic",
3}

指令反馈:

 1/**
 2* @return status:200
 3* @param  object joints 关节位置
 4* @param  object tcp 笛卡尔位姿
 5* @param  array exAxisPos 外部轴位置
 6* @return status:404 "fail"
 7*/
 8{
 9    joints: {
10        j1: "90",
11        j2: "90",
12        j3: "90",
13        j4: "90",
14        j5: "90",
15        j6: "90",
16    },
17    tcp: {
18        x: "100",
19        x: "100",
20        z: "100",
21        rx: "90",
22        ry: "90",
23        rz: "90",
24    },
25    exAxisPos: [0,0,0,0]
26}

8.3. get 指令

以下所有get指令使用POST,URL为/action/get。

8.3.1. 获取示教点

指令名称:get_points()。

指令参数:无。

指令案例:

1{
2    cmd: "get_points"
3}

指令反馈:

1/**
2* @return status:200 "success"
3* @param  ${point_name}: object 示教点相关信息
4* @return status:404 "fail"
5*/

指令反馈案例:

 1{
 2    "localpoint1": {
 3        "name":"localpoint1",
 4        "elbow_speed":"1",
 5        "elbow_acc":"1",
 6        "x": "1",
 7        "y": "1",
 8        "z": "1",
 9        "rx": "1",
10        "ry": "1",
11        "rz": "1",
12        "j1": "1",
13        "j2": "1",
14        "j3": "1",
15        "j4": "1",
16        "j5": "1",
17        "j6": "1",
18        "toolnum": "1",
19        "workpiecenum": "1",
20        "speed": "1",
21        "acc": "1",
22        "E1": "1",
23        "E2: "1",
24        "E3": "1",
25        "E4": "1"
26    }
27}

8.3.2. 获取系统配置

指令名称:get_syscfg()。

指令参数:无。

指令案例:

1{
2    cmd: "get_syscfg"
3}

指令反馈:

1/**
2* @return status:200 "success"
3* @param  string log_count 记录最大日志天数
4* @param  string language 当前使用语言包
5* @param  string lifespan 超时时间
6* * @return status:404 "fail"
7*/

指令反馈案例:

1{
2    log_count:"10",
3    language:"zh",
4    lifespan:"1800"
5}

8.4. set 指令

以下所有set指令使用POST,URL为/action/set。

8.4.1. 下发系统变量指令

指令名称:511。

指令参数:

1/**
2* @param int index系统变量序号:1-20
3* @param int value系统变量值
4*/

指令案例:

1{
2    cmd: 511,
3    data:{
4        content:"SetSysVarValue(2,1)"
5    }
6}

指令反馈:

1/**
2* @return status:200 1:代表成功,0:代表失败
3* @return status:404 "fail"
4*/

指令反馈案例:

11

8.4.2. 获取系统变量指令

指令名称:512。

指令参数:

1/**
2* @param int index系统变量序号:1-20
3* /

指令案例:

1{
2    cmd: 512,
3    data:{
4        content:"GetSysVarValue(2)"
5    }
6}

指令反馈:

1/**
2* @return status:200
3* @param int value系统变量值
4* @return status:404 "fail"
5* /

指令反馈案例:

11

8.5. better-sqlite3指令

8.5.1. 查询数据库中第一行记录

指令参数:

1/**
2* @param string db_name 数据库名称(包含绝对路径)
3* @param string sql sql语句
4* @return string result 查询到的第一行记录
5*/

指令内容:

1queryget(string db_name, string sql);

8.5.2. 查询数据库中所有记录

指令参数:

1/**
2* @param string db_name 数据库名称(包含绝对路径)
3* @param string sql sql语句
4* @return string result 查询到的所有记录
5*/

指令内容:

1queryall(string db_name, string sql);

8.5.3. 执行数据库语句

1/**
2* @param string db_name 数据库名称(包含绝对路径)
3* @param string sql sql语句
4* @param object obj sql 语句执行所需的参数
5* @return \
6*/

指令参数:

1exec(string db_name, string sql, object obj);

指令内容:

8.6. socket指令

8.6.1. socket send

指令参数:

1/**
2* @param string send_content socket 通信指令发送内容
3* @return \
4*/

指令内容:

1socket_cmd.send(string send_content);//8065
2socket_file.send(string send_content);//8067

8.6.2. socket recv

指令参数:

1/**
2* @return string recv_content socket 通信指令回复内容
3*/

指令内容:

1socket_cmd.recv();//8065
2socket_file.recv();//8067