ros2_interfaces_rolling/turtlebot3_msgs/msg/
sensor_state.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct SensorState {
5 pub header: crate::std_msgs::msg::Header,
6 pub bumper: u8,
7 pub cliff: f32,
8 pub sonar: f32,
9 pub illumination: f32,
10 pub led: u8,
11 pub button: u8,
12 pub torque: bool,
13 pub left_encoder: i32,
14 pub right_encoder: i32,
15 pub battery: f32,
16}
17
18impl SensorState {
19 pub const BUMPER_FORWARD: u8 = 1;
20 pub const BUMPER_BACKWARD: u8 = 2;
21 pub const CLIFF: u8 = 1;
22 pub const SONAR: u8 = 1;
23 pub const ILLUMINATION: u8 = 1;
24 pub const BUTTON0: u8 = 1;
25 pub const BUTTON1: u8 = 2;
26 pub const ERROR_LEFT_MOTOR: u8 = 1;
27 pub const ERROR_RIGHT_MOTOR: u8 = 2;
28 pub const TORQUE_ON: u8 = 1;
29 pub const TORQUE_OFF: u8 = 2;
30}
31
32impl Default for SensorState {
33 fn default() -> Self {
34 SensorState {
35 header: crate::std_msgs::msg::Header::default(),
36 bumper: 0,
37 cliff: 0.0,
38 sonar: 0.0,
39 illumination: 0.0,
40 led: 0,
41 button: 0,
42 torque: false,
43 left_encoder: 0,
44 right_encoder: 0,
45 battery: 0.0,
46 }
47 }
48}
49
50impl ros2_client::Message for SensorState {}