Solectria to DMOC Adapter


Original Prototype:

December 2012 - February 2013, Working on the Solectria to DMOC Adapter in my spare time...

My Dad picked up some Azure Dynamics (Solectria) DMOC 645 motor controllers and some Siemens 1PV5135 motors at the Azure Dynamics bankruptcy auction.

He wanted to replace the Solectria UMOC 445 controller (analog interface) with the newer Azure Dynamics DMOC 645 (Digital CAN interface) in his electric Mini Cooper conversion.

Over Christmas, a motor and controller got dropped off at my house.

Using my Microchip Explorer 16 board, (dsPIC33EP512MU814 microcontroller, and a CAN picTail board) and an interface adapter for my AMC control box, I wrote a bunch of code to convert the switches and analog signals into the proper CAN packets the DMOC 645 was expecting. 

  


On February 2nd, 2013. After working on it for a while, I finally got the motor to spin:

I don't talk during the videos so you have to follow along with the text:

Main switch on, Forward gear, Adjusting the throttle in torque mode: 

Overview of the system, 12V key switch on, Main switch on, Forward gear, Adjusting the throttle in torque mode, Regenerative braking on, Throttle going between accelerate and decelerate, Neutral gear, Reverse gear, More throttle going between accelerate and decelerate (in reverse), Regenerative braking off (coasting), Forward gear, Even more throttle, IGBT power stage disable,  IGBT power stage enabled, IGBT power stage disable again, Shifting from forward - neutral - reverse adjusting throttle (while coasting, since the power stage is disabled), IGBT power stage enabled, Throttle in reverse to slow the motor down, Neutral gear, IGBT power stage off, Main off: 

Main switch on, Forward gear (regenerative braking is on), Adjusting the throttle in torque mode, Pressing the middle button to enable speed control (cruise control, yellow LED turns on), Adjust throttle (this sets the max throttle the cruise control system can use), Pressing the right button to speed up the motor, Pressing the left button to slow down the motor, Presing the right button to speed up the motor, Pressing the left button to slow down the motor, Pressing the middle button to disable speed control, Throttle going between accelerate and decelerate: 


On February 10th, 2013. Me, My Dad and my Brother installed the DMOC 645 in the Mini Cooper.

Explorer 16 board, and DMOC 645 "temporarily" installed in the back of my Dad's Mini Cooper:

  

Installation of DMOC 645 in my Dad's Mini Cooper:

Ford Siemens motor in my Dad's Mini Cooper:

In car tire spin:

Mini Cooper drive by:

Rolling wheel spin:


Pre - Production Prototype:

February - July, 2013. I have been slowly working on a pre-production prototype schematic and layout. The Solectria to DMOC Adapter will have the following features:

Mounting:

Internal, can be mounted inside the DMOC 645.

External, in a standard 1U EuroCard enclosure.

 

Microcontroller:

dsPIC33EP512MU810

 

I/O:

16 optically isolated EMI, EMC, and ESD protected digital inputs (12V automotive range).

4 optically isolated EMI, EMC, and ESD protected digital outputs (12V automotive range).

4 optically isolated EMI, EMC, and ESD protected relay outputs (30V, 6 amps).

4 optically isolated EMI, EMC, and ESD protected analog inputs (0 - 5 volts).

4 optically isolated EMI, EMC, and ESD protected analog outputs (0 - 5 volts).

 

Interfaces:

1 galvanically isolated CAN bus.

1 non-isolated USB OTG.

1 802.11 b/g WI-FI module, with external antenna.

1 micro SD card.

21 unused microcontroller pins brought to pin headers, (can be used for UART, CAN, I2C, SPI, PWM, GPIO, etc...)

 

Power Supplies:

2 galvanically isolated unregulated 12 volt supplies (900mA each), one supply powers user interface I/O, the other supply powers DMOC I/O.

note: unregulated isolated supplies are generated from the vehicles 12V supply, thus if it is running at 13.8V then they will be ~13.8V, this is to keep the 12V I/O at the same voltage potential.

2 galvanically isolated regulated 5 volt supplies (500mA each), one supply powers user interface ADC/DAC, the other supply powers DMOC CAN bus.

1 non-isolated regulated 3.3 volt supply (3000mA), powers microcontroller, WI-FI module, SD card, .

1 non-isolated regulated 5 volt supply (500mA), powers USB (when in host mode).

 

Pre - Defined Interfaces:

Solectria AMC Interface:

Leaves the following uncommitted I/O: 

5 optically isolated EMI, EMC, and ESD protected digital inputs (12V automotive range).

1 optically isolated EMI, EMC, and ESD protected analog inputs (0 - 5 volts).

 

Solectria UMOC Interface:

Leaves the following uncommitted I/O:

9 optically isolated EMI, EMC, and ESD protected digital inputs (12V automotive range).

1 optically isolated EMI, EMC, and ESD protected digital outputs (12V automotive range).

1 optically isolated EMI, EMC, and ESD protected relay outputs (30V, 6 amps).

2 optically isolated EMI, EMC, and ESD protected analog inputs (0 - 5 volts).

3 optically isolated EMI, EMC, and ESD protected analog outputs (0 - 5 volts).

 

Note: Both pre-defined Solectria AMC, and UMOC interfaces include I/O to:

Switch 12V power on to the DMOC 645.

Switch and monitor a battery pack pre-charge contactor.

Switch and monitor a battery pack main power contactor.

 


August 1st, 2013. Schematic and layout complete, 5 PCBs have been ordered.

Altium Designer Renders:

Top:

Bottom:

Inside the box:


August 17th - 18th, 2013. First board built up.

 


August 24th - 28th, 2013. Power supplies tested. Explorer 16 code ported over. Analog and digital I/O tested.


September 1st, 2013. Wrote code for pre-charge and contactor control, built up all the cables, and got the motor spinning again.

Overview of the Pre-Production Solectria to DMOC Adapter:

Pre-Production Solectria to DMOC Adapter, spinning motor:

 


September 28th - October 2nd, 2013. I built up the other 4 boards, and tested the analog and digital I/O on them.

It took me about 5 hours per board to solder all the parts on.

 

 

 


October 5th, 2013. I built up the cables and installed serial number 0002 in the box. 

 

 


October 6th, 2013. Drove over to my dad's and installed the Solectria to DMOC adapter in his Mini Cooper. 

Solectria to DMOC Adapter installed:

First drive with the Solectria to DMOC Adapter:

Test driving the DMOC Adapter in the Mini Cooper:


Next, USB boot loader, SD card, and WiFi...

Then ftp server, web server,  and code for the digital dash board...