Smooth BLDC with a positional encoder, via a constant jerk model with input smoothing via a kalman filter, suitable for low to high (28k) rpm applications. Aspirationally suitable for driving a bespoke record deck AC motor.
- /control
- Physical model
- Motor control library (esc)
- PID library
- Inputs
- PS4
- /datasets
- scripts for downloading and processing datasets
- /data folder to contain datasets
- /calibration
- Tools for creating an angular zero-cross calibration map
- Tools for collecting angular zero-cross measurements
- /tracking
- Resources needed to create a kalman filter with a jerk model
- absolute-rotation-encoder-AS5147P driver
- /design
- mechanical
- details of motor mechanical design
- electrical
- details of esc circuit design
- mechanical
Note this repository is un-released, and is not tested. Code is released as is. You run the risk of damaging hardware and injuring yourself when proceeding with this code.
This is an experimental project. I have destroyed a great deal of hardware (motors, transistors, ICs) and almost caused a fire once. Please be careful when using this code. ABSOLUTELY NO WARRANTY. If you do not agree to this then please do not download this software as this would violate the license which this code was distributed with, see ./LICENSE for details.
- Mechanical CAD design and material science - Steve Kelsey
- EE design and software enginnering - Jonathan Kelsey
- Experimental assistant - Andres Soler
- Circuit reference