|
This project is related with the design of the software
for an embedded controller of an electromechanical device,
whose role is to quickly recharge gel batteries at high-current.
Here is a top view of the electrical part of the device which is to be controlled.
Most of the space is filled up by the transformers and the capacitors of the
rectifier. The small printed circuit board on the bottom left part of the image,
the one with a small black capacitor on it, is the PWM-driven generator for the
stator continuous current.
[Picture courtesy of Roberto Campari]
|
|
|
This picture portrays the mechanical coupling between the 380V AC - powered motor
and the 24 V AC generator. This is a prototype and it can generate up to a
60 A output current, the actual charger in its most powerful final version
could generate up to 300 A and more as an output current.
|
|
|
This picture portrays the printed circuit board hosting the microprocessor,
an Atmel AT90S4433.
The upper-left part of the PCB is the power supply, the CPU stands on the
lower-left corner. On the right half, from top to bottom you can see the
two relays used to turn on and off the 380V electrical motor, the MAX232
chip for the serial communication, the analog input conditioning circuits
and the connector for the dot matrix LCD panel.
|
|
|
The schematics of the printed circuit board.
The AT90S4433 microprocessor is an 8-bit RISC microcontrollorer with a 4K flash ROM,
running at a speed of 8 MHz. It's got 32 general purpose registers, a 128 byte RAM,
an internal 256 byte EEPROM plus some handy integrated devices such as a
16 bit prescaled timer/counter, a 6 channel 10-bit analog to digital converter,
a 10-bit PWM and the UART manager.
[Picture courtesy of Roberto Campari]
|
|
|
Here is the front cover of the box which contains all the electronics.
Four buttons and a 2-line, 16-column dot matrix LCD panel are enough to
allow a user-friendly dialog between the user and the device, in order
to cycle between monitoring pages and to set operating parameters.
The software implements a finite-state machine in accordance to the
specifications provided by the battery manufacturer. In each state
a discrete-time regulator is responsible of keeping the current or
voltage as close as possible to the desired value. A setup mode
allows to choose which are the desired values for the interesting
physical quantities.
|
|
|
In this picture the on-board controller is connected to a PC
via a serial cable. A simple communication protocol was implemented
that allows the exchange of status information from the controller
to the PC.
|
|
|
This is a screenshot of the program I developed for the PC in order to
monitor the time series of the current and voltage values.
The main window shows simultaneously the voltage and the current graph;
it is possible to zoom in and out and to scroll the graph along the time
axis. Another window replicates the LCD display of the real panel and
adds two virtual analog instruments.
|
|