24 #include <icl_comm/ByteOrderConversion.h> 25 #include <boost/test/unit_test.hpp> 37 using icl_comm::ArrayBuilder;
40 BOOST_AUTO_TEST_SUITE(ts_SVHDriver)
46 std::cout <<
"Conversion test of Position Settings ....";
56 payload << test_pos_settings_in;
57 payload >> test_pos_settings_out;
59 BOOST_CHECK_EQUAL(test_pos_settings_in,test_pos_settings_out);
61 std::cout <<
"Done" << std::endl;
66 std::cout <<
"Conversion test of Current Settings ....";
76 payload << test_cur_settings_in;
77 payload >> test_cur_settings_out;
79 BOOST_CHECK_EQUAL(test_cur_settings_in,test_cur_settings_out);
81 std::cout <<
"Done" << std::endl;
86 std::cout <<
"Conversion test of Controll Command ....";
96 payload << test_control_command_in;
97 payload >> test_control_command_out;
99 BOOST_CHECK_EQUAL(test_control_command_in,test_control_command_out);
101 std::cout <<
"Done" << std::endl;
107 std::cout <<
"Conversion test of ControllerFeedback ....";
117 payload << test_controller_feedback_in;
118 payload >> test_controller_feedback_out;
120 BOOST_CHECK_EQUAL(test_controller_feedback_in,test_controller_feedback_out);
122 std::cout <<
"Done" << std::endl;
127 std::cout <<
"Converstion test of ControllerState ....";
133 SVHControllerState test_controller_state_in(0x001F,0x001F,0x0200,0x02000,0x0001,0x0001);
137 payload << test_controller_state_in;
138 payload >> test_controller_state_out;
142 BOOST_CHECK_EQUAL(test_controller_state_in,test_controller_state_out);
144 std::cout <<
"Done" << std::endl;
149 std::cout <<
"Converstion test of EncoderSettings ....";
159 payload << test_encoder_settings_in;
160 payload >> test_encoder_settings_out;
162 BOOST_CHECK_EQUAL(test_encoder_settings_in,test_encoder_settings_out);
164 std::cout <<
"Done" << std::endl;
169 std::cout <<
"Converstion test of ControlCommandAllChannels ....";
179 payload << test_control_command_in;
180 payload >> test_control_command_out;
182 BOOST_CHECK_EQUAL(test_control_command_in,test_control_command_out);
184 std::cout <<
"Done" << std::endl;
189 std::cout <<
"Converstion test of ControllerFeedbackAllChannels ....";
209 payload << test_controller_feedback_all_channels_in;
210 payload >> test_controller_feedback_all_channels_out;
212 BOOST_CHECK_EQUAL(test_controller_feedback_all_channels_in,test_controller_feedback_all_channels_out);
214 std::cout <<
"Done" << std::endl;
221 std::cout <<
"Converstion test of Serial Packet ....";
234 payload << test_pos_settings_in;
238 packet << test_serial_packet_in;
242 packet >> test_serial_packet_out;
244 payload.appendWithoutConversion(test_serial_packet_out.data);
245 payload >> test_pos_settings_out;
247 BOOST_CHECK_EQUAL(test_serial_packet_in,test_serial_packet_out);
248 BOOST_CHECK_EQUAL(test_pos_settings_in,test_pos_settings_out);
251 std::cout <<
"Done" << std::endl;
257 std::cout <<
"Controller receiving feedback Packet ....";
273 payload << test_controller_feedback;
286 BOOST_CHECK_EQUAL(test_controller_feedback,feedback_out);
288 std::cout <<
"Done" << std::endl;
293 BOOST_AUTO_TEST_SUITE_END()
Structure for transmitting all controllcommands at once.
bool initialize(int &argc, char *argv[], bool remove_read_arguments)
void receivedPacketCallback(const SVHSerialPacket &packet, unsigned int packet_count)
callback function for interpretation of packages
The SVHCurrentSettings save the current controller paramters for a single motor.
const uint8_t SVH_SET_CONTROL_COMMAND
Sets the target position of a channel.
bool getControllerFeedback(const SVHChannel &channel, SVHControllerFeedback &controller_feedback)
request the latest stored controllerfeedback (current, position) from the controller.
std::vector< uint8_t > data
Payload of the package.
The SVHControllerFeedback saves the feedback of a single motor.
ControlCommands are given as a single target position for the position controller (given in ticks) ...
This class controls the the SCHUNK five finger hand.
The SVHPositionSettings save the position controller paramters for a single motor.
The SVHControllerState indicates the current state of the MeCoVis controller IC which is used in the ...
The SVHControllerFeedbackAllChannes saves the feedback of a all motors.
The SVHEncoderSettings hold the settings for the encoder scaling of each channel. ...
SVHChannel
Channel indicates which motor to use in command calls. WARNING: DO NOT CHANGE THE ORDER OF THESE as i...
BOOST_AUTO_TEST_CASE(ConvertPosSettings)
The SerialPacket holds the (non generated) header and data of one message to the SVH-Hardware.