From bc5fe30270d450ae6e22f69b2fd6b7ff252e8bb1 Mon Sep 17 00:00:00 2001 From: Thomas Gubler Date: Wed, 31 Dec 2014 09:14:59 +0100 Subject: [PATCH] make mixer to radps scaling a param and raise default --- src/platforms/ros/nodes/mc_mixer/mc_mixer.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/platforms/ros/nodes/mc_mixer/mc_mixer.cpp b/src/platforms/ros/nodes/mc_mixer/mc_mixer.cpp index 69d69dcf81..61ee13ecde 100644 --- a/src/platforms/ros/nodes/mc_mixer/mc_mixer.cpp +++ b/src/platforms/ros/nodes/mc_mixer/mc_mixer.cpp @@ -74,7 +74,6 @@ private: }outputs; void mix(); - }; const MultirotorMixer::Rotor _config_x[] = { @@ -88,11 +87,15 @@ const MultirotorMixer::Rotor _config_x[] = { }; MultirotorMixer::MultirotorMixer(): + _n(), _rotor_count(4), _rotors(_config_index) { _sub = _n.subscribe("actuator_controls_0", 1000, &MultirotorMixer::actuatorControlsCallback,this); _pub = _n.advertise("/mixed_motor_commands",10); + if (!_n.hasParam("motor_scaling_radps")) { + _n.setParam("motor_scaling_radps", 2000.0); + } } void MultirotorMixer::mix() { @@ -168,8 +171,10 @@ void MultirotorMixer::mix() { // publish message mav_msgs::MotorSpeed rotor_vel_msg; + double scaling; + _n.getParamCached("motor_scaling_radps", scaling); for (int i = 0; i < _rotor_count; i++) { - rotor_vel_msg.motor_speed.push_back(outputs.control[i] * 1000); + rotor_vel_msg.motor_speed.push_back(outputs.control[i] * scaling); } _pub.publish(rotor_vel_msg); }