这版程序在原有的通用摆臂机器人的基础上,加入了有线功能
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

102 lines
4.1 KiB

syntax = "proto3";
// 引入外部参数定义文件(包含机器人作业参数结构体)
import "bsp_PV.proto";
option java_multiple_files = false;
option java_package = "com.example.rougheningapp.models";
// 抛丸机器人状态采集参数结构体(IV:Input/Status Value)
// 作用:用于机器人控制系统向APP/上位机上报实时状态、传感器数据、故障报警信息
message IV_struct_define
{
// 左侧补偿值(摆臂/位置角度补偿)
// 单位换算:发送值 ÷ 100 = 实际显示角度(°),例:发送100 → 显示1°,发送250 → 显示2.5°
int32 LeftCompensation = 1;
// 右侧补偿值(摆臂/位置角度补偿)
// 单位换算:发送值 ÷ 100 = 实际显示角度(°),例:发送100 → 显示1°,发送300 → 显示3°
int32 RightCompensation = 2;
// 机器人实际移动速度(派生采集值)
// 单位换算:发送值 ÷ 10 = 实际显示速度(m/min),例:发送100 → 显示10m/min,发送180 → 显示18m/min(最大速度)
// 作用:上报机器人当前行走速度,匹配协议书中0~18m/min的速度范围
int32 Robot_Move_Deri_Speed = 3;
// 机器人陀螺仪角度(姿态检测)
// 单位换算:发送值 ÷ 100 = 实际显示角度(°),例:发送100 → 显示1°,发送9000 → 显示90°
// 作用:上报机器人当前姿态角度(水平/竖直/倾斜),用于作业面姿态校准
int32 Robot_Gyro = 4;
// 距离传感器采集值(测距/避障)
// 单位换算:发送值 ÷ 10 = 实际显示距离(cm),例:发送100 → 显示10cm,发送500 → 显示50cm
// 作用:检测机器人与作业面/障碍物的距离,防止碰撞或吸附失效
int32 Distance_Sensor = 5;
// 系统级错误码
// 取值规则:0 = 无错误;非0 = 错误类型(需配套错误码表)
// 错误类型:包含硬件通讯故障、按键未初始化故障等核心系统异常
int32 SystemError = 6;
// 左轮电机报警状态
// 取值规则:0 = 正常(无报警);1 = 报警(过流/过载/堵转等)
// 作用:上报左轮驱动电机的故障状态,用于电机故障排查
int32 Left_Motor_Err = 7;
// 右轮电机报警状态
// 取值规则:0 = 正常(无报警);1 = 报警(过流/过载/堵转等)
// 作用:上报右轮驱动电机的故障状态,用于电机故障排查
int32 Right_Motor_Err = 8;
// 摆臂电机报警状态
// 取值规则:0 = 正常(无报警);1 = 报警(过流/过载/堵转等)
// 作用:上报抛丸/喷砂摆臂电机的故障状态,适配摆臂速度≥25°/S的作业要求
int32 Swing_Motor_Err = 9;
// 机器人在线状态
// 取值规则:0 = 离线(通讯中断);1 = 在线(通讯正常)
// 作用:APP/上位机判断机器人通讯状态,离线时触发声光报警
int32 Is_Online = 10;
// 备用数据1
// 用途:预留扩展字段,可用于后续新增传感器/状态采集(如吸附压力、吸尘装置状态等)
int32 Spara_Data_1 = 11;
// 备用数据2
// 用途:预留扩展字段,可用于后续新增传感器/状态采集(如作业面温度等)
int32 Spara_Data_2 = 12;
// 备用数据3
// 用途:预留扩展字段,可用于后续新增传感器/状态采集(如急停按钮状态、电池电量等)
int32 Spara_Data_3 = 13;
//焊缝数据
int32 Weld_data = 14;
//焊缝是否存在
int32 Weld_exist = 15;
//回转中心偏距
int32 Turn_difference = 16;
//当前压力
int32 Present_press = 17;
int32 left_angle = 18;
int32 right_angle = 19;
//检测机器人是否到达设定的启动时间
int32 robot_start = 20;
//机器人设定的速度(非实际速度)
int32 robot_set_speed=21;
//记录是否正在进行自动行进
int32 auto_mode_status=22;
//确诊机器人出错的原因
int32 reason_of_robot_error=23;
1 week ago
//获取有线连接还是无线连接
int32 wire_or_wireless=24;
};