Hardwaredokumentation

Aus OpenchargeWiki

Wechseln zu: Navigation, Suche

Hardwarebeschreibung (upd. 22.10.06 Danke an Malte)

Grunsätzliches, was im Schaltplan nicht ersichtlich ist:

Die Tasten + und - wurden durch einen Drehimpulsgeber ( Prellfrei ) ersetzt. Eingang INT0 und INT1.

Die LCD Anzeige ist ein 2x24

Ein 40x40mm Lüfter sitz oben rechts im Gehäuse. Die Elkos bilden einen Kanal, so daß die Luft hierbei geführt an diesen vorbeistreicht. In dem Gehäuse ist ein Aluwinkel, etwa 60x35mm als Kühlkörper, Schenkel nach innen auf dem die MOSFET montiert sind. Hier streich die Luft des Lüfters in voller Länge rüber.


Bild:menustruktur.jpgSoftware Menuestruktur


Stromregelung und Stepupwandler


Die Stromregelung und der Einsatz des Stepupwandlers erfolgt aus Softwaresicht sehr einfach. Der PWM Ausgang ( 10Bit=10mA ) OC1A gibt den Strom vor, welcher durch die OpAmps und den PWM-Regler (Stepup) dann eingeregelt wird .

Der Shuntwiederstand beträgt 0,01 Ohm. Die Spannung wird über IC4b auf 2.5V bei 10A verstärkt.

Die beiden OpAmp Regeln über T7 -> T3 ( Längsfet) regeln den Strom automatisch, so daß am Ausgang vom OpAmp IC4b die gleiche Spannung wie am Ausgang OC1A zu messen ist ( Strommessung=AD1 des MAX110). Wird die Stromstärke ohne den Stepupwandler nicht erreicht, so steigt die Ausgangsspannung vom OP IC4a über 1,4Volt. Die Schwellspannung von D8 wird überwunden, so daß der Fehlverstärkeringang des PWM Reglers des TL494 eine Spannung ansteht und der Stepupregler in Betrieb genommen wird. Regelschleife über OpAmp ec....

Der OpAmp wird vom MAX232 mit einer negativen Versogungsspannung versorgt, um um die Nullage sauber zu funktionieren.


UPDATET 6.11.06 Stepdownwandler

Beim Software optimieren des StepDown Wandlers sind mir 2 Fet-Paare (T8+T9) den Wärmetod gestorben. Der Grund hierfür, ist leider ein Designfehler der Schaltung. Der PWM Augang OC1b kann im 10Bit FastPWM Modus nur mit 7,8KHz die Fet's ansteuern. Das ist zu wenig, bei der verwendeten Speicherspule. Aus diesem Grunde, muss der 8Bit Timer OC0 für den Stepdown verwendet werden. Dieser kann im Fast PWM Modus die Fet's mit 31KHz ansteuern. Leider ist am OC0 Ausgang der Taster für die OK Taste geplant gewesen. Aus diesem Grunde müssen fertige Platinen umgepatcht werden, so das die Pin's 4 und 18 ihre Beschaltung tauschen (Taster OK an 18 und PIN2 des ICL7667 an Pin 4 des Atmel). Ausserdem sollten die beiden Transistoren zur Wärmeableitung elektrisch isolierten Kontakt, zu dem darüber liegenden Kühlblech bekommen (Aluwinkel 60x25x12mm). Es hat sich gezeigt, das bei der Softwareregelung des Stepdown Wandlers es vorkommen kann, das zeitgleich der Stepupwandler aktiv wird. Da sich beide um die selbe Speichespule "streiten", ist dieses Verhalten sehr unproduktiv. Um eine klare Trennung zwischen StepUp und Stepdown Betreib zu erreichen, wurde der bsiher unbenutzte Pin A6 nun dafür verwendet, den StepUp Wandler im Stepdown Betrieb zu verriegeln. Das Verhalten des Pins A6 ist negiert:

PinA6 =1 => Stepup Wandler gesperrt

PinA6 =0 => Stepup Wandler aktiv


Dieser ist in Software realisiert worden. PWM Ausgang ist OC0. Der Ladestrom wird auch weiterhin über OpAmp und T3 ( Längsfet) geregelt, es geht also nur darum die Sourcespannung am T3 möglichst passend zu halten, um die Wärme zu minimieren. VSS (ADC4) sollte etwa Vakku(AD0 des MAX110) + 1,2V bis 2V Regelreserve für T3 betragen. Bild:bugfix.gif

Patchung Platine: Kreis=Leiterbahn durchtrennen Orangene Linie=Litzenpatchung

Achtung bitte kontrolliert eure Platinen ob an dem umrandeten Punkt ein falsche Verbindung zwischen den Leiterbahnen besteht. Bei einigen der ausgelieferten Paltinen ist hier eine Berührung vorhanden.:


Bild:Fehler.gif

Diese Bohloch, welches zur Befestigung der LCD ANzeige vorhanden ist, wurde als Duko ausgeliefert. Am besten mit einem 2 mm Bohrer nochmals nachbohren, damit die untere Fläche nicht mit der oberen verbunden wird:

Bild:Fehle_bohrloch.gif


Laden entladen Umschaltung

Nix Spannung an T7, nix Ladestrom. Über D7, wird die Basis und der Eingang des Fehlverstärkers auf quasi 0 Volt gezogen, wenn der Eingang PB0 logisch 0 ist.

Das gleiche passiert mit den Gates von T6 und T5 beim entladen, nur über den Eingang PB1. PB0 und PB1 dürfen nie gleichzeitig logisch 1 sein!!!!! Das Idee ist zum größten Teil von der sehr guten Seite von Sprut übernommen worden.


AD Abfrage und Kalibrierung MAX110

Auf die interne Kalibrierfunktion des MAX110, wurde verzichtet. Nach jedem Kanalwechsle muss erneut (langwierig) kalibriert werden. Die Kalibrierergebnisse haben nach jeder erneuten Kalibrierung um 4-5 Bit gestreut. Der Rest ist in der Software ersichtlich.


Verpolungsschutz Akku

Wenn eine sinnvolle positive Spannung am AD0 des MAX110 erkannt wird, so ist PA2 auf 1 zu schalten. T10 schaltet dann durch...

D10 sichert den Entladezweig


Verpolungsschutz Autoakku

T2 (T99), wird nur bei richtig angelegter Spannung durchgesteuert.

Balancer Signalleitung (3,5mm Klinkenbuchse, Pin2 auf PB2)

Gnd an PB2 heisst Ladestrom reduzieren.Orbit Balancer kompatiebel...



Pinbelegung Atmega32

Das Datenblatt hierfür ist hier zu finden: Atmega32

LCD

liegen auf PC0 bis PC5

PC0 LCD En PC1 LCD RS PC2 LCD dB4 PC3 LCD dB5 PC4 LCD dB6 PC5 CD dB7


ISP und SPI für externen ADC

PB5 MOSI

PB6 MISO

PB7 SCK

reset (ist klar)

VCC +5V

GND GND


XTAL2 kein Quarz, intern 8MHz Takt.

XTAL1 kein Quarz, intern 8MHz Takt.

PD0 RXD TTL Uart

PD1 TXD TTL Uart

PD2 INT 0 Eingang für Drehimpulsgeber 1Bit

PD3 INT 1 Eingang für Drehimpulsgeber 2Bit

PD4 Taste auf Drehimplulsgeber ( OK )

PD5 Timer1 PWM Ausgang für Stromeinstellen 10A=10Bit = 10mA Auflösung +Kalibrierungsreserve

PD6 Piezobeep Ausgang

PD7 Ausgang Lüftersteuerung (timer2 = Sekundentick, daher kein Pwm direkt möglich. SoftwarePWM??)


PB0 Muss 0 wenn Entladung 1= Ladung

PB1 Muss 0 wenn Ladung 1= Entladung nie beide logisch 1, PB0 PB1 00 = beides aus

PB2 input Balancer 0= Ladestrom reduzieren

PB3 OC0 Stepdown PWM

PB4 Taste ESC


PC6 Uhrenquarz für Timer2

PC7 Uhrenquarz für Timer2


AVCC Spannungsversorgung für AD

GND GND für AD

AREF 2,5V externe Spannungsreferenz für AD's

PA7 A/D externer Thermosensor

PA6 Verriegelung Stepupwandler 0=StepUp aktiv , 1=Stepup nicht aktiv

PA5 A/D Autobatterie 30V

PA4 A/D Wandlerspannung=VSS für Regelung Softwarestepdown notwendig VSS=Uakku+0,5VUds von T3

PA3 Ausgang, Verpolung, schaltet T10 (TTL Mosfet) wenn Spannung an Akkuklemme IO

PA2 Output CS (Conversation Start ) für MAX110 A/D

PA1 Input MAX110 BUSY 1=Cohnverstion fertig 0= Converstion läuft ( loop until PA1=0 )

PA0 A/D interner Thermosensor Kühlblech