The Scarpaz.
The Scarpaz Site
:: Your unreliable online reference documentation on the Scarpaz. ::
:: Via malfidinda reta dokumento de referenco pri la Skarpac. ::

The design of an embedded controller software for a power battery charger.

Note: what appears here is what I prepared as a project for the Industrial Computer Science course I took at Politecnico di Milano. I took care of all the software-design related stuff while Roberto Campari designed and realized all the hardware.
Project presentation (PDF format, Italian language)


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.

MajaMaja is powered by the Tcl Language. [jump to top of page]

The above document was last modified on 2004-04-16 09:27:04; page last updated on 2010-07-02 at 21:22:35.
Document size: 5523 bytes, plus related data up to 354 kbytes.


box.jpg File : box.jpg 18.6 kbytes 2001-08-21
coupling.jpg File : coupling.jpg 19.0 kbytes 2001-08-21
device_top.jpg File : device_top.jpg 28.2 kbytes 2001-08-21
icon.gif File : icon.gif 431 bytes 2001-08-20
pc.jpg File : pc.jpg 23.0 kbytes 2001-08-21
pcb.jpg File : pcb.jpg 26.1 kbytes 2001-08-21
report.pdf File : report.pdf 175 kbytes 2001-07-18
small_scheme.png File : small_scheme.png 18.7 kbytes 2001-08-21
snap.jpg File : snap.jpg 35.0 kbytes 2004-04-17
tab.gif File : tab.gif 41 bytes 2001-08-20

MajaMaja is powered by the Tcl Language. [jump to top of page]
This page was last updated on 2010-07-02 at 21:22:35.
This site was automagically generated by MajaMaja version 0.298, a simple and easy to use web content manager written in Tcl by scarpaz <>.