Robot Control Library#
Robot Control Library#
- page index
This package contains the C library and example/testing programs for the Robot Control project. This project began as a hardware interface for the Robotics Cape and later the BeagleBone Blue and was originally called Robotics_Cape_Installer. It grew to include an extensive math library for discrete time feedback control, as well as a plethora of POSIX-compliant functions for timing, multithreading, program flow, and lots more. Everything is aimed at developing robotics software on embedded computers.
This package ships with official BeagleBone images and is focused on, but not excludive to, the BeagleBoard platform. The library and example programs are primarily written in C, however there also exists the RCPY python interface to this package available at mcdeoliveira/rcpy.
The master branch is always the most current but not necessarily stable. See releases page for older stable versions or install from BeagleBoard.org repositories.
To get started, visit the user manual
Page Hierarchy#
Class Hierarchy#
-
- Struct rc_bmp_data_t
- Struct rc_filter_t
- Struct rc_kalman_t
- Struct rc_matrix_t
- Struct rc_mpu_config_t
- Struct rc_mpu_data_t
- Struct rc_ringbuf_t
- Struct rc_vector_t
- Enum rc_bmp_filter_t
- Enum rc_bmp_oversample_t
- Enum rc_button_state_t
- Enum rc_governor_t
- Enum rc_led_t
- Enum rc_mav_connection_state_t
- Enum rc_model_category_t
- Enum rc_model_t
- Enum rc_mpu_accel_dlpf_t
- Enum rc_mpu_accel_fsr_t
- Enum rc_mpu_gyro_dlpf_t
- Enum rc_mpu_gyro_fsr_t
- Enum rc_mpu_orientation_t
- Enum rc_pinmux_mode_t
- Enum rc_state_t
File Hierarchy#
-
- Directory docs
- Directory src
- File background_services.dox
- File flashing.dox
- File installation.dox
- File mainpage.dox
- File manual.dox
- File modules.dox
- File networking_usb.dox
- File networking_wifi.dox
- File project_template.dox
- File runonboot.dox
- File version.dox
- Directory src
- Directory library
- Directory include
- Directory rc
- Directory math
- File algebra.h
- File filter.h
- File kalman.h
- File matrix.h
- File other.h
- File polynomial.h
- File quaternion.h
- File ring_buffer.h
- File vector.h
- File adc.h
- File bmp.h
- File button.h
- File cpu.h
- File deprecated.h
- File dsm.h
- File encoder.h
- File encoder_eqep.h
- File encoder_pru.h
- File gpio.h
- File i2c.h
- File led.h
- File math.h
- File mavlink_udp.h
- File mavlink_udp_helpers.h
- File model.h
- File motor.h
- File mpu.h
- File pinmux.h
- File pru.h
- File pthread.h
- File pwm.h
- File servo.h
- File spi.h
- File start_stop.h
- File time.h
- File uart.h
- File version.h
- Directory math
- File rc_usefulincludes.h
- File robotcontrol.h
- File roboticscape.h
- Directory rc
- Directory include
- Directory docs
Full API#
Classes and Structs#
- Struct rc_filter_t
- Struct Documentation
rc_filter_t
rc_filter_t::order
rc_filter_t::dt
rc_filter_t::gain
rc_filter_t::num
rc_filter_t::den
rc_filter_t::sat_en
rc_filter_t::sat_min
rc_filter_t::sat_max
rc_filter_t::sat_flag
rc_filter_t::ss_en
rc_filter_t::ss_steps
rc_filter_t::in_buf
rc_filter_t::out_buf
rc_filter_t::newest_input
rc_filter_t::newest_output
rc_filter_t::step
rc_filter_t::initialized
- Struct Documentation
- Struct rc_mpu_config_t
- Struct Documentation
rc_mpu_config_t
rc_mpu_config_t::gpio_interrupt_pin_chip
rc_mpu_config_t::gpio_interrupt_pin
rc_mpu_config_t::i2c_bus
rc_mpu_config_t::i2c_addr
rc_mpu_config_t::show_warnings
rc_mpu_config_t::accel_fsr
rc_mpu_config_t::gyro_fsr
rc_mpu_config_t::accel_dlpf
rc_mpu_config_t::gyro_dlpf
rc_mpu_config_t::enable_magnetometer
rc_mpu_config_t::dmp_sample_rate
rc_mpu_config_t::dmp_fetch_accel_gyro
rc_mpu_config_t::dmp_auto_calibrate_gyro
rc_mpu_config_t::orient
rc_mpu_config_t::compass_time_constant
rc_mpu_config_t::dmp_interrupt_sched_policy
rc_mpu_config_t::dmp_interrupt_priority
rc_mpu_config_t::read_mag_after_callback
rc_mpu_config_t::mag_sample_rate_div
rc_mpu_config_t::tap_threshold
- Struct Documentation
- Struct rc_mpu_data_t
- Struct Documentation
rc_mpu_data_t
rc_mpu_data_t::accel
rc_mpu_data_t::gyro
rc_mpu_data_t::mag
rc_mpu_data_t::temp
rc_mpu_data_t::raw_gyro
rc_mpu_data_t::raw_accel
rc_mpu_data_t::accel_to_ms2
rc_mpu_data_t::gyro_to_degs
rc_mpu_data_t::dmp_quat
rc_mpu_data_t::dmp_TaitBryan
rc_mpu_data_t::tap_detected
rc_mpu_data_t::last_tap_direction
rc_mpu_data_t::last_tap_count
rc_mpu_data_t::fused_quat
rc_mpu_data_t::fused_TaitBryan
rc_mpu_data_t::compass_heading
rc_mpu_data_t::compass_heading_raw
- Struct Documentation
Enums#
- Enum rc_model_t
- Enum Documentation
rc_model_t
rc_model_t::MODEL_UNKNOWN
rc_model_t::MODEL_BB_BLACK
rc_model_t::MODEL_BB_BLACK_RC
rc_model_t::MODEL_BB_BLACK_W
rc_model_t::MODEL_BB_BLACK_W_RC
rc_model_t::MODEL_BB_GREEN
rc_model_t::MODEL_BB_GREEN_W
rc_model_t::MODEL_BB_BLUE
rc_model_t::MODEL_BB_POCKET
rc_model_t::MODEL_RPI_B
rc_model_t::MODEL_RPI_B_PLUS
rc_model_t::MODEL_RPI2_B
rc_model_t::MODEL_RPI3_B
rc_model_t::MODEL_RPI3_B_PLUS
rc_model_t::MODEL_RPI0
rc_model_t::MODEL_RPI0_W
rc_model_t::MODEL_RPI_CM
rc_model_t::MODEL_RPI_CM3
rc_model_t::MODEL_PC
- Enum Documentation
- Enum rc_mpu_orientation_t
- Enum Documentation
rc_mpu_orientation_t
rc_mpu_orientation_t::ORIENTATION_Z_UP
rc_mpu_orientation_t::ORIENTATION_Z_DOWN
rc_mpu_orientation_t::ORIENTATION_X_UP
rc_mpu_orientation_t::ORIENTATION_X_DOWN
rc_mpu_orientation_t::ORIENTATION_Y_UP
rc_mpu_orientation_t::ORIENTATION_Y_DOWN
rc_mpu_orientation_t::ORIENTATION_X_FORWARD
rc_mpu_orientation_t::ORIENTATION_X_BACK
- Enum Documentation