Browse Source

Update uavcan app for generated actuator_outputs topic

sbg
Lorenz Meier 10 years ago
parent
commit
b980e34c3c
  1. 6
      src/modules/uavcan/uavcan_main.cpp

6
src/modules/uavcan/uavcan_main.cpp

@ -398,8 +398,8 @@ int UavcanNode::run()
(_poll_fds[_actuator_direct_poll_fd_num].revents & POLLIN) && (_poll_fds[_actuator_direct_poll_fd_num].revents & POLLIN) &&
orb_copy(ORB_ID(actuator_direct), _actuator_direct_sub, &_actuator_direct) == OK && orb_copy(ORB_ID(actuator_direct), _actuator_direct_sub, &_actuator_direct) == OK &&
!_test_in_progress) { !_test_in_progress) {
if (_actuator_direct.nvalues > NUM_ACTUATOR_OUTPUTS) { if (_actuator_direct.nvalues > actuator_outputs_s::NUM_ACTUATOR_OUTPUTS) {
_actuator_direct.nvalues = NUM_ACTUATOR_OUTPUTS; _actuator_direct.nvalues = actuator_outputs_s::NUM_ACTUATOR_OUTPUTS;
} }
memcpy(&_outputs.output[0], &_actuator_direct.values[0], memcpy(&_outputs.output[0], &_actuator_direct.values[0],
_actuator_direct.nvalues*sizeof(float)); _actuator_direct.nvalues*sizeof(float));
@ -410,7 +410,7 @@ int UavcanNode::run()
// can we mix? // can we mix?
if (_test_in_progress) { if (_test_in_progress) {
memset(&_outputs, 0, sizeof(_outputs)); memset(&_outputs, 0, sizeof(_outputs));
if (_test_motor.motor_number < NUM_ACTUATOR_OUTPUTS) { if (_test_motor.motor_number < actuator_outputs_s::NUM_ACTUATOR_OUTPUTS) {
_outputs.output[_test_motor.motor_number] = _test_motor.value*2.0f-1.0f; _outputs.output[_test_motor.motor_number] = _test_motor.value*2.0f-1.0f;
_outputs.noutputs = _test_motor.motor_number+1; _outputs.noutputs = _test_motor.motor_number+1;
} }

Loading…
Cancel
Save