运行程序 ============================ 通讯说明 +++++++++++++++++++++++++ 工控机和 iNexBot 控制器的通讯方式为 socket:工控机作为 socket server(服务端),机械臂作为 socket client(客户端)。 机械臂主控,使用的是工艺号1; 工控机主控,使用的是工艺号2以及lua 程序。 启动程序 +++++++++++++++++++++++++ 1. 机械臂主控运行 - 在示教模式下,注意需要 ``设置`` -> ``后台任务`` -> ``全局后台`` xyzStatus 任务停止。 - 按照模板,编写好机械臂主控程序后,选择工程中的 Axyz* 程序,打开,切换运行模式,上电运行。 2. 工控机主控运行 - 在示教模式下,注意每次工控机主控运行前,都要将 ``设置`` -> ``后台任务`` -> ``全局后台`` xyzStatus 任务 **停止**,然后 **启动** - 此时,在 MAX 中连接机械臂,然后切换为运行模式,运行工控机主控 AxyzMotion 程序。 3. 注意!后台任务是全局任务的情况下,不设为开机自启,无法启动。 后台有可能无法停止,需要重启控制器。 寄存器说明 ++++++++++++++++++++++ 1. 机械臂主控寄存器说明 socket 接收到的数据,是 GD499 开始,GD499 为接收校验位,GD500 为错误代码。 传给工控机的全局字符串: - GS002: task_codename 任务名称 - GS004: strat_name 策略名称 - GS005: vision_codename 视觉命令名称 - GS006: item_codename 工件代号 传给工控机的全局整数: - GI001: vision_id 视觉ID - GI002: req_cap_img_token 请求拍照token - GI004: pose_type 姿态类型 - GI005: tool_id 工具ID 从工控机接收的全局点位: - GP0001: grasp_pose 抓取位姿 - GP0002: obj_pose 工件位姿 - GP0003: tote_pose 工件在手上的二次定位位姿 传给工控机的自定义指令变量: - GS301~GS305 发给工控机的字符串 - GI306~GI315 发给工控机的整数 - GD316~GD325 发给工控机的浮点数 - GP0326 发给工控机的位姿,使用前需要把全局 GP0326 改为直角类型 - GP0327 发给工控机的关节角度,使用前需要把全局 GP0327 改为关节类型 从工控机接收的自定义指令变量: - GS501~GS505 接收工控机的字符串 - GI506~GI515 接收工控机的整数 - GD516~GD525 接收工控机的浮点数 - GP0526 接收工控机的位姿,使用前需要把全局 GP0526 改为直角类型 - GP0527 接收工控机的关节角度,使用前需要把全局 GP0527 改为关节类型 接收轨迹时: - GD501:pipeline_num pipeline文件number - GD502:register_num 用到的注册文件的注册number - GD503:way_point_num 轨迹点数 **注意需要提前把全局 GP0001, GP0002, GP0003 改为直角类型** 2. 工控机主控寄存器说明 工控机主控 socket 接收数据,是 GD500 开始。 - GB999 允许后台连接的标志位,1为允许,0为不允许 - GB998 后台 status socket 连接成功的标志位 - GI001 线速度 - GI002 角速度 - GI003 加速度 - GI004 减速度 - GS001 VERSION 版本 id - GI005 圆滑等级 zone