* 本地: ws://10.56.42.176:7074/ws
* 打包后: ws://127.0.0.1:7074/ws
data:为返回的数据信息,无实际交互需求时,前端可忽略
{
"code": 0,
"msg": "开始识别接口:COM8",
"status": 1,
"data": {
"_type": "show_info",
"plugins_mode": "auto_select_com",
"data": {
"text": "开始识别接口:COM8"
}
},
"msg_type": "mcu"
}
data:可以忽略为null
{"data":null,"type":"connect_mcu"}
以下操作前必须保证设备已连接!!!
目前连接设备后,后端会自动进行设备初始化操作,如无特殊需求可忽略
初始化mcu设备
type 固定为 init_mcu
data:可以忽略为null
{"data":null,"type":"init_mcu"}
(该命令用于单独自定义配置中某一项的单独调整测试,不进行任何存储操作)
value为设备得控制值,参考上述的最大最小值进行处理
{
"data": {
"device_name": "camera_high_motor",
"value": 200
},
"type": "control_mcu"
}
data中的 goods_art_no参数释义:
商品货号,必须存在且为字符串形式传递
{
"data": {
"action": "执行左脚程序",
"goods_art_no": "1234556"
},
"type": "run_mcu"
}
msg 消息提示
{
"msg":"MCU 命令已发送完成",
"data": {
"image_counts": 4,
"goods_art_no": "1234556",
"action_names": [
"俯视",
"侧视",
"后跟",
"鞋底",
"内里"
],
"current_time": "年月日时分秒"
},
"msg_type":"image_process"
}
msg_type:
data参数释义:
msg 消息提示
{
"code": 0,
"msg": "拍鞋底 执行完成~",
"status": 2,
"data": null,
"msg_type":"photo_take"
}
{
"code": 1,
"msg": "拍鞋底 执行失败~",
"status": 2,
"data": null,
"msg_type":"photo_take"
}
{
"code": 1,
"msg": "执行左脚程序 执行成功~",
"status": 2,
"data": null,
"msg_type":"photo_take_finish"
}
python
{
"code": 0,
"msg": "准备执行[左脚程序]",
"status": 2,
"data": {
"data": {
"action": "执行左脚程序",
"goods_art_no": "货号信息",
},
"type": "run_mcu",
},
"msg_type": "blue_tooth_scan"
}
### 接收遥控器点击拍照事件处理
遥控器得拍照命令需要由后端转发到前端,再由前端将消息转发给后端对应得拍照命令
当蓝牙遥控器点击拍照后,后端消息响应如下:
data中参数释义:
msg_type:当该字段为handler_take_picture时,前端可直接解析得到data数据包,将数据直接发送给socket服务端即可【执行单任务】
{
"code": 0,
"msg": "处理单拍消息",
"status": -1,
"data": {
"type": "handler_take_picture",
"data": null
},
"msg_type": "handler_take_picture"
}
注:在多次按下拍照按钮时,前端需要在命令发送给后端时且拍照未完成之前处理拦截操作,否则会出现拍照任务在不断执行
单拍任务命令
发送-消息示例
{
"type": "handler_take_picture",
"data": null
}
注意:当前响应可能会出现失败得情况,如:用户清空了所有货号数据;用户未打开拍照软件等其他错误消息响应;前端需要判断code是否为0;去释放拦截
msg_type:当该字段为photo_take时,代表照片已拍摄完成 type:当该字段为run_mcu_single时,代表独立执行MCU设备 以下操作需要连接设备且初始化
type:当该字段为get_deviation时,代表获取调平设备信息 以下操作需要连接设备且初始化
type: 当该字段为move_deviation时,代表移动调平设备偏移 当该字段为move_deviation时,代表响应调平设备移动 以下操作需要连接设备且初始化
当该字段为get_mcu_other_info时,代表获取MCU其他设置信息 type: 当该字段为get_other_mcu_info,代表成功获取MCU其他设置信息
以下数据包作为写入设备时对应得字段名称
以下操作需要连接设备且初始化
当该字段为set_mcu_other_info时,代表设置MCU其他设置信息 type: 当该字段为get_other_mcu_info,代表成功获取MCU其他设置信息
以下数据包作为写入设备时对应得字段名称
以下操作需要连接设备且初始化
当该字段为send_command时,代表设置通过命令行发送指令 type: 当该字段为send_command,代表成功获取到指令回复
以下数据包作为写入设备时对应得字段名称
以下操作需要连接设备且初始化
data: type: 当该字段为re_take_picture时,代表进行重拍操作
注:后续得拍照动作参考消息回复为的type均为:re_take_picture,照片拍摄完成的消息依旧为photo_take
以下操作需要连接设备且初始化
当该字段为stop_action时,代表停止拍摄 当通过物理遥控器按键停止拍摄时,会收到以下消息,前端需要把上方的【停止拍摄】消息转发给后端即可
{
"code": 0,
"msg": "执行左脚程序 执行完成~",
"status": 2,
"data": {"goods_art_no": "执行货号"},
"msg_type": "photo_take"
}
修改配置-独立操作MCU
请求示例
{
"data": {
"camera_height": 300,
"after_delay": 1,
"camera_angle": 20,
"led_switch": true,
"number_focus": 1,
"id": 0,
"take_picture": false,
"mode_type": "执行左脚程序",
"turntable_position": 200,
"action_name": "侧视图",
"turntable_angle": 300,
"shoe_upturn": false,
"action_index": 1,
"pre_delay": 1
},
"type": "run_mcu_single"
}
响应示例
当 msg_type 为run_mcu_single时,代表独立执行MCU设备完成,前端将此命令作为完成依据
{
"code": 0,
"msg": "执行完成",
"status": 2,
"data": null,
"msg_type": "run_mcu_single_finish"
}
设备调平-获取
请求示例
{
"data": {
},
"type": "get_deviation"
}
响应示例
python
{
"code": 0,
"msg": "接收偏移量信息",
"status": 2,
"data": {
"camera_high_motor_deviation": 10,
"camera_steering_deviation": 0.0,
"turntable_steering_deviation": 0.0,
"overturn_steering_middle": 109.0,
"overturn_steering_high": 150.0,
"overturn_steering_up_speed": 2,
"overturn_steering_down_speed": 4,
"turntable_front_end_deviation":300
},
"msg_type": "get_deviation_data"
}
设备调平-设置
请求示例
{
"data": {
"value": 10,
"action_name":"相机电机",
"type":"move"
},
"type": "set_deviation"
}
响应示例
成功状态
{
"code": 0,
"msg": "相机电机 设置成功",
"status": 2,
"data": {},
"msg_type": "set_deviation"
}
失败状态
{
"code": 1,
"msg": "设置参数有误,请检查",
"status": 0,
"data": {},
"msg_type": "set_deviation"
}
获取MCU其他设置信息
请求示例
{
"data":null,
"type": "get_mcu_other_info"
}
响应示例
成功状态
{
"code": 0,
"msg": "获取mcu其他配置信息",
"status": 2,
"data": {
"is_auto_send_base_info": 0,
"is_move_retry": 0,
"is_data_response": 0,
"low_speed": 300,
"is_test": 0,
"to_init_mode": 1,
"turntable_move_to_init_mode": 0,
"led_count": 20,
"turntable_steering_angle_ratio": 356,
"is_manual_check": 1,
"camera_steering_angle_ratio": 50174,
"is_auto_motor_to_disable": 1,
"diff_dir": 0,
"is_auto_send_pos_info": 0,
"is_dog": 0,
"has_been_set_motor_config": 1
},
"msg_type": "get_other_mcu_info"
}
设置MCU其他设置信息
请求示例
{
"data":{
"is_auto_send_base_info": 0,
"is_move_retry": 0,
"is_data_response": 0,
"low_speed": 300,
"is_test": 0,
"to_init_mode": 1,
"turntable_move_to_init_mode": 0,
"led_count": 20,
"turntable_steering_angle_ratio": 356,
"is_manual_check": 1,
"camera_steering_angle_ratio": 50174,
"is_auto_motor_to_disable": 1,
"diff_dir": 0,
"is_auto_send_pos_info": 0,
"is_dog": 0,
"has_been_set_motor_config": 1
},
"type": "set_mcu_other_info"
}
响应示例
成功状态
{
"code": 0,
"msg": "设置mcu其他配置信息成功",
"status": 2,
"data": null,
"msg_type": "set_mcu_other_info"
}
通过命令行发送设备指令
请求示例
{
"data": {
"command": "0x01 0x42 0x6C 0x6b"
},
"type": "send_command"
}
响应示例
发送后指令转换
{
"code": 0,
"msg": "命令发送完成",
"status": 2,
"data": {
"command": "0x01 0x42 0x6C 0x6B",
"type": "input"
},
"msg_type": "send_command"
}
接收到指令回复
{
"code": 0,
"msg": "命令发送完成",
"status": 2,
"data": {
"command": "0xa8 0x12 0x4 0x14 0x14 0x24 0x24 0x4 0x4 0x15 0x14 0x14 0x64 0x4 0xc5 0x4 0xb6 0x84 0x1b 0x42 0x0 0x7 0x0 0x1 0x0 0x1 0x0 0x8 0x4 0x4c 0x4 0xb0 0x0 0x3 0x6b",
"type": "output"
},
"msg_type": "send_command"
}
执行重拍操作
请求示例
{
"data":{"record_id":1},
"type": "re_take_picture"
}
停止拍摄
请求示例
{
"data":null,
"type": "stop_action"
}
{
"code": 0,
"msg": "停止执行组合动作",
"status": -1,
"data": {
"type": "stop_action",
"data": null
},
"msg_type": "stop_action"
}
未完待续.....