Functions | |
void | create3_audio_append (const Create3AudioNote *const notes, const unsigned count) |
void | create3_audio_play (const Create3AudioNote *const notes, const unsigned count, const int overwrite) |
void | create3_audio_overwrite (const Create3AudioNote *const notes, const unsigned count) |
int | create3_connect () |
int | create3_connect_manual (const char *const host, const unsigned short port) |
void | create3_dock () |
void | create3_drive_arc_degrees (const float radius, const float angle, const float max_linear_speed) |
void | create3_drive_arc_radians (const float radius, const float angle, const float max_linear_speed) |
void | create3_drive_straight (const float distance, const float max_linear_speed) |
void | create3_execute_next_command_immediately () |
void | create3_execute_next_command_post_haste () |
void | create3_follow_wall (const Create3Follow follow, const float max_seconds) |
int | create3_is_connected () |
void | create3_led_animation (const Create3LedAnimationType animation_type, const Create3Lightring lightring, const double max_runtime) |
Create3LedColor | create3_led_color (const int r, const int g, const int b) |
Create3Lightring | create3_lightring (const Create3LedColor led0, const Create3LedColor led1, const Create3LedColor led2, const Create3LedColor led3, const Create3LedColor led4, const Create3LedColor led5) |
void | create3_lightring_set (const Create3Lightring lightring) |
void | create3_navigate_to_pose (const Create3Pose pose, const float max_linear_speed, const float max_angular_speed, const int achieve_goal_heading) |
void | create3_navigate_to_position (const double x, const double y, const float max_linear_speed, const float max_angular_speed) |
void | create3_navigate_to_position_with_heading (const double x, const double y, const double theta, const float max_linear_speed, const float max_angular_speed) |
Create3Odometry | create3_odometry_get () |
Create3Euler | create3_orientation_get_euler () |
double | create3_orientation_get_euler_x () |
double | create3_orientation_get_euler_y () |
double | create3_orientation_get_euler_z () |
Create3Quaternion | create3_orientation_get_quaternion () |
double | create3_orientation_get_quaternion_x () |
double | create3_orientation_get_quaternion_y () |
double | create3_orientation_get_quaternion_z () |
double | create3_orientation_get_quaternion_w () |
Create3Pose | create3_pose_get () |
void | create3_rotate_degrees (const float angle, const float max_angular_speed) |
void | create3_rotate_radians (const float angle, const float max_angular_speed) |
int | create3_sensor_bump (int sensor_id) |
int | create3_sensor_cliff (int sensor_id) |
int | create3_sensor_ir (int sensor_id) |
void | create3_undock () |
Create3Twist | create3_velocity_get () |
double | create3_velocity_get_angular_z () |
double | create3_velocity_get_linear_x () |
void | create3_velocity_set (const Create3Twist twist) |
void | create3_velocity_set_components (const double linear_x, const double angular_z) |
void | create3_wait () |
void create3_audio_append | ( | Create3AudioNote * | notes, |
unsigned | count | ||
) |
Append the given audio to the current audio queue.
[in] | notes | The notes to play. |
[in] | count | The number of notes to play. |
void create3_audio_play | ( | Create3AudioNote * | notes, |
unsigned | count, | ||
int | overwrite | ||
) |
Play audio on the iRobot Create 3.
[in] | notes | The notes to play. |
[in] | count | The number of notes to play. |
[in] | overwrite | 1 to overwrite the current audio queue, 0 to append instead. |
void create3_audio_overwrite | ( | Create3AudioNote * | notes, |
unsigned | count | ||
) |
Overwrite the current audio queue with the given audio.
[in] | notes | The notes to play. |
[in] | count | The number of notes to play. |
[in] | overwrite | 1 to overwrite the current audio queue, 0 to append instead. |
int create3_connect | ( | ) |
Connect to the iRobot Create3.
int create3_connect_manual | ( | char * | host, |
short | port | ||
) |
Connects to the iRobot Create 3.
[in] | host | The host to connect to. |
[in] | port | The port to connect to. |
void create3_dock | ( | ) |
Dock the iRobot Create 3 on the closest Home Base.
void create3_drive_arc_degrees | ( | float | radius, |
float | angle, | ||
float | max_linear_speed | ||
) |
Drive the iRobot Create 3 in an arc.
[in] | radius | The radius of the arc in meters. |
[in] | angle | The angle of the arc in degrees. |
[in] | max_linear_speed | The maximum linear speed in meters per second. Max with no safety overrides is 0.306 m/s. |
void create3_drive_arc_radians | ( | float | radius, |
float | angle, | ||
float | max_linear_speed | ||
) |
Drive the iRobot Create 3 in an arc.
[in] | radius | The radius of the arc in meters. |
[in] | angle | The angle of the arc in radius. |
[in] | max_linear_speed | The maximum linear speed in meters per second. Max with no safety overrides is 0.306 m/s. |
void create3_drive_straight | ( | float | distance, |
float | max_linear_speed, | ||
) |
Drive the iRobot Create 3 in a straight line.
[in] | distance | The distance to drive in meters. |
[in] | max_linear_speed | The maximum linear speed in meters per second. Max with no safety overrides is 0.306 m/s. |
void create3_execute_next_command_immediately | ( | ) |
Execute the next command immediately.
void create3_execute_next_command_post_haste | ( | ) |
An alias for `create3_execute_next_command_immediately()`.
void create3_follow_wall | ( | Create3Follow | follow, |
float | max_seconds | ||
) |
Follow the given wall for the given amount of time.
[in] | follow | The wall to follow. Either `Create3FollowLeft` or `Create3FollowRight`. |
[in] | max_seconds | The maximum amount of time to follow the wall in seconds. |
int create3_is_connected | ( | ) |
Check if the iRobot Create 3 is connected.
void create3_led_animation | ( | Create3LedAnimationType | animation_type |
Create3Lightring | lightring | ||
double | max_runtime | ||
) |
Run the given LED animation on the iRobot Create 3.
[in] | animation_type | The LED animation to run. |
[in] | light_ring | The light ring to use for the LED animation. |
[in] | max_runtime | The maximum amount of time to run the LED animation in seconds. |
Create3LedColor create3_led_color | ( | int | r |
int | g | ||
int | b | ||
) |
Create an LED color from the given RGB values.
[in] | r | The red value. |
[in] | g | The green value. |
[in] | b | The blue value. |
Create3Lightring create3_lightring | ( | Create3LedColor | led0 |
Create3LedColor | led1 | ||
Create3LedColor | led2 | ||
Create3LedColor | led3 | ||
Create3LedColor | led4 | ||
Create3LedColor | led5 | ||
) |
Create a light ring from the given LED colors.
[in] | led0 | The LED color for LED 0. |
[in] | led1 | The LED color for LED 1. |
[in] | led2 | The LED color for LED 2. |
[in] | led3 | The LED color for LED 3. |
[in] | led4 | The LED color for LED 4. |
[in] | led5 | The LED color for LED 5. |
void create3_lightring_set | ( | Create3Lightring | lightring | ) |
Set the light ring of the iRobot Create 3.
[in] | lightring | The light ring colors to set. |
void create3_navigate_to_pose | ( | Create3Pose | pose |
float | max_linear_speed | ||
float | max_angular_speed | ||
int | achieve_goal_heading | ||
) |
Navigate the iRobot Create 3 to the given pose.
[in] | pose | The pose to navigate to. This contains a Vector3 for position and a Quaternion for orientation. |
[in] | max_linear_speed | The maximum linear speed in meters per second. Max with no safety overrides is 0.306 m/s. Used to get to the vector position. |
[in] | max_angular_speed | The maximum angular speed in radians per second. Max with no safety overrides is 2.64 rad/s. Used to get to the quaternion orientation. |
[in] | achieve_goal_heading | 1 to rotate in place to achieve the goal heading, 0 otherwise. |
void create3_navigate_to_position | ( | double | x |
double | y | ||
float | max_linear_speed | ||
float | max_angular_speed | ||
) |
Navigate the iRobot Create 3 to the given position.
[in] | x | The X component of the position to navigate to in meters. |
[in] | y | The Y component of the position to navigate to in meters. |
[in] | max_linear_speed | The maximum linear speed in meters per second. Max with no safety overrides is 0.306 m/s. |
[in] | max_angular_speed | The maximum angular speed in radians per second. Max with no safety overrides is 2.64 rad/s. |
void create3_navigate_to_position_with_heading | ( | double | x, |
double | y, | ||
double | theta, | ||
float | max_linear_speed, | ||
float | max_angular_speed | ||
) |
Navigate the iRobot Create 3 to the given position with the given heading.
[in] | x | The X component of the position to navigate to in meters. |
[in] | y | The Y component of the position to navigate to in meters. |
[in] | theta | The heading to achieve in radians. |
[in] | max_linear_speed | The maximum linear speed in meters per second. Max with no safety overrides is 0.306 m/s. |
[in] | max_angular_speed | The maximum angular speed in radians per second. Max with no safety overrides is 2.64 rad/s. |
Create3Odometry create3_odometry_get | ( | ) |
Get the odometry of the iRobot Create 3.
Create3Euler create3_orientation_get_euler | ( | ) |
Get the orientation (as Euler angles) of the iRobot Create 3.
double create3_orientation_get_euler_x | ( | ) |
Get the X component of the orientation (as Euler angles) of the iRobot Create 3.
double create3_orientation_get_euler_y | ( | ) |
Get the Y component of the orientation (as Euler angles) of the iRobot Create 3.
double create3_orientation_get_euler_z | ( | ) |
Get the Z component of the orientation (as Euler angles) of the iRobot Create 3.
Create3Quaternion create3_orientation_get_quaternion | ( | ) |
Get the orientation (as a quaternion) of the iRobot Create 3.
double create3_orientation_get_quaternion_x | ( | ) |
Get the X component of the orientation (as a quaternion) of the iRobot Create 3.
double create3_orientation_get_quaternion_y | ( | ) |
Get the Y component of the orientation (as a quaternion) of the iRobot Create 3.
double create3_orientation_get_quaternion_z | ( | ) |
Get the Z component of the orientation (as a quaternion) of the iRobot Create 3.
double create3_orientation_get_quaternion_w | ( | ) |
Get the W component of the orientation (as a quaternion) of the iRobot Create 3.
Create3Pose create3_pose_get | ( | ) |
Get the pose of the iRobot Create 3.
void create3_rotate_degrees | ( | float | angle, |
float | max_angular_speed | ||
) |
Rotate the iRobot Create 3 in place.
[in] | angle | The angle to rotate in degrees. |
[in] | max_angular_speed | The maximum angular speed in degrees per second. Max with no safety overrides is 151 deg/s. |
void create3_rotate_radians | ( | float | angle, |
float | max_angular_speed | ||
) |
Rotate the iRobot Create 3 in place.
[in] | angle | The angle to rotate in radians. |
[in] | max_angular_speed | The maximum angular speed in radians per second. Max with no safety overrides is 2.64 rad/s. |
int create3_sensor_bump | ( | int | sensor_id | ) |
Get the bump sensor value for given port.
[in] | sensor_id | The port of the bump sensor |
int create3_sensor_cliff | ( | int | sensor_id | ) |
Get the cliff sensor value for given port.
[in] | sensor_id | The port of the cliff sensor |
int create3_sensor_ir | ( | int | sensor_id | ) |
Get the IR sensor value for given port.
[in] | sensor_id | The port of the IR sensor |
void create3_undock | ( | ) |
Undock the iRobot Create 3 from the Home Base.
Create3Twist create3_velocity_get | ( | ) |
Get the velocity of the iRobot Create 3.
double create3_velocity_get_angular_z | ( | ) |
Get the angular Z velocity of the iRobot Create 3.
double create3_velocity_get_linear_x | ( | ) |
Get the linear X velocity of the iRobot Create 3.
void create3_velocity_set | ( | Create3Twist | twist | ) |
Set the velocity of the iRobot Create 3.
[in] | twist | The twist to set. |
void create3_velocity_set_components | ( | double | linear_x, |
double | angular_z | ||
) |
Set the velocity of the iRobot Create 3.
[in] | linear_x | The linear velocity in meters per second. |
[in] | angular_z | The angular velocity in radians per second. |
void create3_wait | ( | ) |
Wait for the last command to finish executing.