Skip to content

l-n-x/bldc-strip

 
 

Repository files navigation

bldc-strip

Firmware for OpenBLDC "Strip" (STM32F103).

Project description

Bldc-strip is an open-source project aiming to design an ESC (electronic speed controller) for brushless dc motors. The control software is concurrently developed with a motor controller hardware and simulation models which are used to investigate and test the control algorithms before/while they are implemented to the real controller software and hardware. It is designed to provide a better ESC for the control of small multi-rotor aircraft but should also fit other applications.

Features

  • Open-source control software for STM32F103 32bit microcontroller using ChibiOS.
  • Sensorless 6-step control method for brushless motors.
  • Open loop voltage control to provide (almost) linear "brushed-motor-like" characteristics which is often requested by control systems engineers.
  • High frequency PWM from 40 to 200 kHz enabling proper operation of some very small and fast motors.
  • Dedicated control methods for fast, slow and very slow to zero rotation speed.
  • Seamless 4-quadrant operation with regenerative braking.
  • Smooth change of rotation direction.
  • Closed loop sensorless position control (proof of concept)
  • Catch start of a rotation motor
  • Adequate protection functions:
    • limitation of motor current
    • limitation of input current
    • seperate limit for regenerative current
    • limitation of reference duty cycle command that would result in a current limitation
  • Software watchdog
  • Command/control interface via UART
  • Command/control interface via CAN-bus

Dependencies and references

Designed and tested with the OpenBLDC "Strip" V0.2 ESC.

Using ChibiOS Real-Time Operating System.

Multi-physics, open-source Modelica simulation models are designed to investigate appropriate motor control methods. In the future, they may be merged with this repository.

Demo video on YouTube and Vimeo.

Overview of sensorless 6-step control methods. Review: José Carlos Gamazo-Real, Ernesto Vázquez-Sánchez, Jaime Gómez-Gil, "Position and Speed Control of Brushless DC Motors Using Sensorless Techniques and Application Trends", Department of Signal Theory, Communications and Telematic Engineering, University of Valladolid, Sensors 2010, ISSN 1424-8220

Status and contribution

This is a part-time development project and is not dedicated for productive usage. Any contributions preferably Pull Requests are always welcome.

You may report any issues or share ideas by using the Issues button.

Additionally, there is a chat room on Gitter: Gitter

License

The project is released under the GNU GENERAL PUBLIC LICENSE - Version 3.

About

OpenBLDC Strip (STM32F103)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 75.8%
  • Objective-C 13.1%
  • C++ 5.4%
  • Makefile 3.6%
  • Python 1.4%
  • MATLAB 0.7%