Welcome to blmc_drivers’s documentation!

Brushless Motor Control Real-Time CAN API

This package provides a real-time API for communication with the motor control board and the OptoForce sensor via CAN.

A description of the CAN protocol that is implemented by this library can be found in the documentation of the mw_dual_motor_torque_ctrl firmware.

This package contains a executable blmc_can_demo, that shows how to use the library.

Dependencies and other Requirements

  • Supports Ubuntu patched with PREEMPT_RT patched kernel (see documentation on how to install the PREEMPT_RT kernel).

  • Experimental support for Mac OS and Ubuntu patched with Xenomai

See also the real_time_tools package.

A real-time CAN driver has to be loaded and the interface to be set up. This can be done with the script start_rtcan that is included in the xenomai-core repository. With PREEMPT_RT we also made good experience using the default driver, though.

Note that the board has to run a program that implements the same CAN protocol. At the time of writing this README, this is only the case for mw_dual_motor_torque_ctrl.

Build Instructions

Please see the build instructions in the documentation.

Authors

  • Felix Widmaier

  • Manuel Wuethrich

  • Maximilien Naveau

  • Steve Heim

  • Diego Agudelo

  • Julian Viereck

License

BSD 3-Clause License

Copyright(c) 2018 Max Planck Gesellschaft, New York University

Indices and Tables

License and Copyrights

BSD 3-Clause License

Copyright (c) 2019, New York University and Max Planck Gesellschaft. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

  3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.