Hardware and basic SW release

A project log for EverywhereElectric

Motor control/monitor system for a fully featured EV (bike, board, etc), >1KW 3phase motor control, Android control interface and hardware.

jarrodJarrod 12/03/2015 at 07:042 Comments

It's been a long time between posts, I've just moved to the USA, started a new job. But I have been able to start working on this motor control again. Purchased some new batteries (8x 15Ah LiFePo headway cells with a BMS!!) and am starting to work through getting my bike up and running.

If anyone has been following and wants to try building a motor control, now might be the time to take the dive because...

I'm releasing hardware V5.0 incorporating:

- A (working + tested) over current protection implemented in hardware.
- All logic on the power board now uses the same 3.3V rail, simplifying the power supplies.
- 5V buck exclusively for phone charging and other external circuitry.
- Capability to mount a daughter board directly to the power module for bluetooth support etc.

All in all, while I'm yet to drive serious power through it, I feel this hardware is quite stable.

Files created in Altium Designer btw. I'm looking into converting it over to CircuitMaker.

And I'm also releasing some software to make it run. it's still pretty fundamental, I've zipped up a cut down version of Motorware 12 (which is a few versions behind the current 15, but I haven't had time to update my code base, I've modified a bunch of files to get my hardware and the serial port working) So all that's required to compile, debug and run is TI's IDE, Code Composer Studio (I'm running V6, the latest). Create a new workspace and import the projects from "solutions\instaspin_foc\boards\boostxldrv8301_revB\f28x\f2802xF\projects\ccs5"

The software I'm running on my bike is a modified "lab 5a" It drives the motor with constant current based on throttle position, regenerative braking is supported via a second potentiometer. Some basic runtime data is periodically transmitted over 9800baud serial.

Lab 2b is also included for measuring motor parameters, after the software has finished analysing the motor, lab2b has a constant speed mode for testing the motor control and measured parameters, which should then be copied into a new motor profile in 'user.h' before using lab 5.

See TI's instaspin website for the lab user guide which contains all the info you will need to get started.

And please post any comments. Files are in dropbox links on the left.


Jason wrote 04/06/2017 at 13:23 point

Did you ever make any more progress with this controller?  Does it work in FOC mode?  I'm looking for a 48v 1kw controller that run's TI's instaspin so I can experiment with field weakening/overmodulation on my ebike.

  Are you sure? yes | no

Jarrod wrote 05/09/2017 at 07:31 point

Yes, the motor controller is working quite well. I've got a couple of these boards running now, one on my ebike and another about to go into my electric car to run the power steering pump.

The 'head unit' part was never finished, I just use an arduino with an LCD to monitor it via a stream of UART data. Control remains via analog inputs of the Piccolo uC.

I'm about to set up all the design files on github, including a port of the software to the latest motorware version. Probably in the next month, are you thinking about doing a build?

  Are you sure? yes | no