Skip to content

Commit d5d8415

Browse files
committed
Reuse vesc_msgs package instead of creating a new one
1 parent b129e11 commit d5d8415

9 files changed

Lines changed: 47 additions & 134 deletions

File tree

vesc_hardware/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ find_package(pluginlib REQUIRED)
1313
find_package(rclcpp_lifecycle REQUIRED)
1414
find_package(realtime_tools REQUIRED)
1515
find_package(vesc_driver REQUIRED)
16-
find_package(vesc_hardware_msgs REQUIRED)
16+
find_package(vesc_msgs REQUIRED)
1717

1818
## COMPILE
1919
add_library(
@@ -32,7 +32,7 @@ target_link_libraries(vesc_hardware PUBLIC
3232
rclcpp_lifecycle::rclcpp_lifecycle
3333
realtime_tools::realtime_tools
3434
vesc_driver::vesc_driver
35-
${vesc_hardware_msgs_TARGETS}
35+
${vesc_msgs_TARGETS}
3636
)
3737

3838
# Export hardware plugins
@@ -59,7 +59,7 @@ ament_export_dependencies(
5959
rclcpp_lifecycle
6060
realtime_tools
6161
vesc_driver
62-
vesc_hardware_msgs
62+
vesc_msgs
6363
)
6464

6565
if(BUILD_TESTING)

vesc_hardware/include/vesc_hardware/vesc_hardware.hpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
#include "rclcpp_lifecycle/state.hpp"
4545
#include "realtime_tools/realtime_publisher.hpp"
4646
#include "vesc_driver/vesc_interface.hpp"
47-
#include "vesc_hardware_msgs/msg/vesc_hardware_values.hpp"
47+
#include "vesc_msgs/msg/vesc_state.hpp"
4848

4949
namespace vesc_hardware
5050
{
@@ -196,9 +196,9 @@ class VescHardware : public hardware_interface::SystemInterface {
196196
std::unique_ptr<vesc_driver::VescInterface> vesc_interface_;
197197

198198
// Publisher for hardware values
199-
std::shared_ptr<rclcpp::Publisher<vesc_hardware_msgs::msg::VescHardwareValues>>
199+
std::shared_ptr<rclcpp::Publisher<vesc_msgs::msg::VescState>>
200200
hardware_values_publisher_;
201-
std::shared_ptr<realtime_tools::RealtimePublisher<vesc_hardware_msgs::msg::VescHardwareValues>>
201+
std::shared_ptr<realtime_tools::RealtimePublisher<vesc_msgs::msg::VescState>>
202202
realtime_hardware_values_publisher_;
203203
};
204204

vesc_hardware/package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<depend>rclcpp_lifecycle</depend>
1717
<depend>realtime_tools</depend>
1818
<depend>vesc_driver</depend>
19-
<depend>vesc_hardware_msgs</depend>
19+
<depend>vesc_msgs</depend>
2020

2121
<test_depend>ament_lint_auto</test_depend>
2222
<test_depend>ament_lint_common</test_depend>

vesc_hardware/src/vesc_hardware.cpp

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -188,13 +188,13 @@ hardware_interface::CallbackReturn VescHardware::on_init(
188188
// Create publisher for hardware values (only if enabled)
189189
if (publish_raw_state_) {
190190
hardware_values_publisher_ =
191-
get_node()->create_publisher<vesc_hardware_msgs::msg::VescHardwareValues>(
191+
get_node()->create_publisher<vesc_msgs::msg::VescState>(
192192
"~/hardware_values", 10);
193193

194194
// Create realtime publisher wrapper
195195
realtime_hardware_values_publisher_ =
196196
std::make_shared<realtime_tools::RealtimePublisher<
197-
vesc_hardware_msgs::msg::VescHardwareValues>>(
197+
vesc_msgs::msg::VescState>>(
198198
hardware_values_publisher_);
199199
}
200200

@@ -431,34 +431,34 @@ void VescHardware::publishVescState(
431431
// Temperature measurements
432432
msg.temp_fet = values_packet.temp_fet();
433433
msg.temp_motor = values_packet.temp_motor();
434-
msg.temp_mos1 = values_packet.temp_mos1();
435-
msg.temp_mos2 = values_packet.temp_mos2();
436-
msg.temp_mos3 = values_packet.temp_mos3();
434+
msg.ntc_temp_mos1 = values_packet.temp_mos1();
435+
msg.ntc_temp_mos2 = values_packet.temp_mos2();
436+
msg.ntc_temp_mos3 = values_packet.temp_mos3();
437437

438438
// Current measurements
439-
msg.avg_motor_current = values_packet.avg_motor_current();
440-
msg.avg_input_current = values_packet.avg_input_current();
439+
msg.current_motor = values_packet.avg_motor_current();
440+
msg.current_input = values_packet.avg_input_current();
441441
msg.avg_id = values_packet.avg_id();
442442
msg.avg_iq = values_packet.avg_iq();
443443

444444
// Voltage measurements
445-
msg.v_in = values_packet.v_in();
445+
msg.voltage_input = values_packet.v_in();
446446
msg.avg_vd = values_packet.avg_vd();
447447
msg.avg_vq = values_packet.avg_vq();
448448

449449
// Duty cycle and speed
450-
msg.duty_cycle_now = values_packet.duty_cycle_now();
451-
msg.rpm = values_packet.rpm();
450+
msg.duty_cycle = values_packet.duty_cycle_now();
451+
msg.speed = values_packet.rpm();
452452

453453
// Energy and charge tracking
454-
msg.amp_hours = values_packet.amp_hours();
455-
msg.amp_hours_charged = values_packet.amp_hours_charged();
456-
msg.watt_hours = values_packet.watt_hours();
457-
msg.watt_hours_charged = values_packet.watt_hours_charged();
454+
msg.charge_drawn = values_packet.amp_hours();
455+
msg.charge_regen = values_packet.amp_hours_charged();
456+
msg.energy_drawn = values_packet.watt_hours();
457+
msg.energy_regen = values_packet.watt_hours_charged();
458458

459459
// Position and distance tracking
460-
msg.tachometer = values_packet.tachometer();
461-
msg.tachometer_abs = values_packet.tachometer_abs();
460+
msg.displacement = values_packet.tachometer();
461+
msg.distance_traveled = values_packet.tachometer_abs();
462462
msg.pid_pos_now = values_packet.pid_pos_now();
463463

464464
// Status

vesc_hardware_msgs/CMakeLists.txt

Lines changed: 0 additions & 20 deletions
This file was deleted.

vesc_hardware_msgs/msg/VescHardwareValues.msg

Lines changed: 0 additions & 39 deletions
This file was deleted.

vesc_hardware_msgs/msg/VescHardwareValuesStamped.msg

Lines changed: 0 additions & 4 deletions
This file was deleted.

vesc_hardware_msgs/package.xml

Lines changed: 0 additions & 30 deletions
This file was deleted.

vesc_msgs/msg/VescState.msg

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Vedder VESC open source motor controller state (telemetry)
22

3-
# fault codes
3+
# Fault code constants
44
int32 FAULT_CODE_NONE=0
55
int32 FAULT_CODE_OVER_VOLTAGE=1
66
int32 FAULT_CODE_UNDER_VOLTAGE=2
@@ -9,33 +9,39 @@ int32 FAULT_CODE_ABS_OVER_CURRENT=4
99
int32 FAULT_CODE_OVER_TEMP_FET=5
1010
int32 FAULT_CODE_OVER_TEMP_MOTOR=6
1111

12-
# follow the bledc firwmare: commands.c
13-
float64 temp_fet # fet temperature
12+
# Status
13+
int32 fault_code # Fault code (0 = no fault, see constants above)
14+
int32 controller_id # VESC controller ID
15+
16+
# Temperature measurements (degrees Celsius)
17+
float64 temp_fet # fet temperature
1418
float64 temp_motor # motor temperature
19+
float64 ntc_temp_mos1
20+
float64 ntc_temp_mos2
21+
float64 ntc_temp_mos3
22+
23+
# Current measurements (amperes)
1524
float64 current_motor # motor current (ampere) avg_motor_current
16-
float64 current_input # input current (ampere) avg_input_current
25+
float64 current_input # input current (ampere) avg_input_current
1726
float64 avg_id
1827
float64 avg_iq
28+
29+
# Voltage measurements (volts)
30+
float64 voltage_input # input voltage (volt)
31+
float64 avg_vd
32+
float64 avg_vq
33+
34+
# Duty cycle and speed
1935
float64 duty_cycle # duty cycle (0 to 1) duty_cycle_now
2036
float64 speed # motor electrical speed (revolutions per minute) rpm
2137

22-
float64 voltage_input # input voltage (volt)
38+
# Energy and charge tracking
2339
float64 charge_drawn # electric charge drawn from input (ampere-hours)
24-
float64 charge_regen # electric charge regenerated to input (ampere-hour) amp_hours_charged
40+
float64 charge_regen # electric charge regenerated to input (ampere-hour) amp_hours_charged
2541
float64 energy_drawn # energy drawn from input (watt-hour)
2642
float64 energy_regen # energy regenerated to input (watt_hours_charged)
43+
44+
# Position and distance tracking
2745
int32 displacement # net tachometer (counts) tachometer
2846
int32 distance_traveled # total tachnometer (counts) tachometer_abs
29-
int32 fault_code
30-
3147
float64 pid_pos_now
32-
int32 controller_id
33-
34-
35-
float64 ntc_temp_mos1
36-
float64 ntc_temp_mos2
37-
float64 ntc_temp_mos3
38-
float64 avg_vd
39-
float64 avg_vq
40-
41-
#float64 temperature_pcb # temperature of printed circuit board (degrees Celsius)

0 commit comments

Comments
 (0)