The STM32MCU is the control board that the IGBT pack and car loom connect to. It contains all the circuitry required to interface to the onboard ARM Cortex-M3 microcontroller (STM32F103VBH6). See the SVN for the schematics (board dimensions are 178mm x 153mm). Currently at the first revision (v0.1), the design is 100% functional, with only a few resistor value changes required. These are available or can be built from the files in the Tumanako SVN
For the moment, the same device as the dev board will be used - a STM32F103VBH6. See the I/O schedule in open office format.
Semikron SKAi/SKiiP interface
The Semikron IGBT interface deals with 15V gate drive and error logic, and 15V analog signals.
- To boost the 3.3V gate logic to 15V three TC4427A dual gate driver chips are employed.
- The four error signals are open collector, low indicating no error. At present these are combined as a single error fault.
- The three current inputs (one of which will usually be not placed in the IGBT module) are scaled via a resistor network from +/-10V to 0-3.3V. A small capacitor may be placed to reduce noise and decrease impedance seen by the ADC. The value cannot be too great as this will add signal delay.
- The temperature and bus voltage inputs are scaled by resistor dividers from their 0-10V to 0-3.3V
- While the SKAi and SKiiP share essentially the same interface, the pin numbering is slightly different. Two headers are present to allow either device to be used with straight-through cabling.
Motor encoder and temperature interface
The built in motor sensors provide arguably the greatest risk of a fault from the chassis-grounded control electronics to the isolated DC bus. For this reason it would be greatly beneficial to have them completely isolated from the chassis.
- The motor encoder signals are the standard incremental (A,B,Z) signals and are open collector.
- The motor temperature sensor is a KTY84-130 PTC, whose resistance ranges from 360Ω at -40°C to 2600Ω at 300°C
The proposed circuit to the right may suit the task:
- The 555 timer circuit is a frequency generator, with f=1/(1.4 x R x C)
- Frequency will vary from 525Hz (-40°C) to 200Hz (300°C). Open circuit will stop the frequency generator. Over 700Hz indicates a short.
- The circuit should prove adaptable to other resistance based sensors.
- A 1kΩ resistor is put in series with the sensor, to reduce current drawn, and also to safely detect shorted/open faults.
- Hopefully this resistor will help damp down noise coupled in from the motor.
- Hopefully also the sensor is linear - that it behaves as a resistor in both the +ve and -ve cycles of the oscillator.
- The discharge output of the 555 is used to load the power supply by an extra 10mA at the output frequency, which triggers an output to the controller.
- The 555 chosen is a CMOS design, drawing 0.6mA. The oscillator draws 0.3-1mA depending on the temperature.
While a compact solution, the feedback via the power supply may need to be abandoned in favour of an optocoupler as the Encoder itself will need to be powered from this circuit, and has three digital signals of its own.
Contactor and precharge circuit
- The three contactors are each driven via mosfet and optocoupler. If either 12V or GND wires are cut to the contactor box all three contactors will loose power and will open.
- Each of the main contactors have auxiliary contact feedback. The precharge contactor circuit includes feedback to signal that it is safe to close the main contactor.
Vehicle 12V digital inputs
Which is better?IGN, where the input is just an R-C circuit, or START, where the input is coupled to the ground plane? Or would R-C-R be the best idea? Another possible circuit is a Resistor-Zener-Resistor.
Bluetooth Dashboard Connection
Its possible to connect the KiwiAC to an Android device running "Dashboard" software via a bluetooth comms module.
This is the bluetooth module in the picture: http://www.mdfly.com/index.php?main_page=product_info&cPath=8_47&products_id=769
Board changes for next run TODO
- Resistors on POT to be halved for Hall effect throttle (two variants of the board, or jumper to choose?)
- Resistors on digital ins to be added for noise tolerance
- Resistor change for contactor outputs
- Capacitor change on current feedback from powerstage
- Add power good reset chip to ensure correct start up at power on
- Double number of A/D in for pedal use (redundancy/error checking and compatibility)