Dienstag, 22. November 2011

Arduino: Bauteile zusammen

Es ist heute wieder ein Paket aus Fernost angekommen. Dieses Mal waren zwei Widerstände im Umschlag.
Der eine ist ein 0,1Ω Ohm 100W und der zweite ein 0,25Ω Ohm 100W.
Beide haben eine glatte flache Unterseite, damit ich sie auf einen Kühlkörper montieren kann, denn zumindest der 0,1Ω wird ziemlich was leisten müssen.
Mit meinem Labornetzteil und Multimeter habe ich bei kleiner Spannung (0,5V) den Strom gemessen, um zu sehen, ob die Widerstände in der Toleranz liegen. Alles OK, 0,1029Ω und 0,2516Ω inklusive der Messgerätetoleranzen.

Somit sollte die Hardware vorhanden sein, um unsere ersten Versuche durchzuführen.
Ein Arduino Duemilanove:

Ein LCD Display mit 24 Zeichen und 2 Zeilen:

Ein zweites LCD-Shield habe ich wegen der einfacheren Nutzung dazu genommen. Es hat bereits 6 Taster integriert. Zudem muss nicht gelötet werden, sonder aufstecken und losprogrammierren. Der Nachteil ist nur der, wenn man sich an den Platz des 24x2 gewöhnt hat, möchte man nicht mehr auf so einem "kleinen" 16x2 Display arbeiten :)
Zum Test habe ich unterschiedliche Stromsensoren besorgt. Unterschiedlich im Messbereich (+/-5A, 0-20A, 0-30A) und dem Anschluß (Schreubklemme, Kabelschuh):

Zudem ist ein alter Bekannter dabei: Der LEM HASS 50-S, der in der 200-S Version bereits in der Franz-Box zum Einsatz kommt:

Zur speicherung der Daten ist eine SD-Karte vorgesehen, wie auch in Christians 4D-Box. Diese im Bild ist erstmal in Benutzung, allerdings werde ich mir wohl ein Shild besorgen, was eine Echtzeituhr integriert hat. So kann ich die Daten mit dem jeweiligen Datum speichern:

Und zum Schluß noch ein Relais, was das Hauptrelais schaltet, denn das wird mit 12V schalten und die ~40A Last tragen:

Jetzt heißt es, an die Software setzen und los geht es :)

10 Kommentare:

  1. Hast Du schon eine gute Idee zum
    "galv.getrennten" Übertragen der Messwerte?
    bzw wie einfach oder schwer ist beim Arduino die Auswertung der seriellen Schnittstelle?
    Das ist halt in Bascom sehr simpel,
    aber dürfte hier auch kein Problem sein.
    Wenn wir uns auf die gleichen Start und Stopzeichen und Befehle einigen, dann kannst Du ja mal meine ATtiny24 Messwandler testen.
    (ich wollte die Byte 1-15 für Zeichen, Befehle und Meldungen reservieren, den Rest als
    Messwerte )
    Die Funktion hab ich im Blog beschrieben,
    wenns noch Fragen gibt, melde Dich.
    Die Franzbox wäre dann schnell mal angepasst,
    wobei ich da wohl noch einen Atmega als Puffer
    dazwischenhängen werde, um die Box zu
    entlasten bzw das BMS auch ohne Box betreiben zu können. mal schauen, wie die Rechenleistung reicht. Die Schaltung der Box ist übrigens fast identisch mit den Arduino Boards,
    bzw könnte man den programmierten Arduino
    Atmega328 auch direkt in der Box betreiben.
    Dort arbeitet der pinkompatible Atmega168.
    Zum Datenübertragen bieten sich die Adum an!
    Da die wirklich aktiv schalten sind sie
    störsicherer als Optokoppler und Pullup.
    Am oberen Ende meiner Wandlerkette braucht man eh eine Spannung für den letzten Ausgang
    (nicht unbedingt,aber so sind alle Module
    genau gleich auszuführen)

    AntwortenLöschen
  2. Hallo Franz,
    die Zelle wird direkt an den Arduino angeschlossen.
    A0 = Pluspol der Batterie, GND = Minuspol.
    Von 0 bis 5V ist das ja kein Problem. Ich erwarte nur Spannungen zwischen min.2,4V bis max.3,8V.

    Für den Rest schreibe ich Dir noch eine Mail.
    Gruß,
    Michael

    AntwortenLöschen
  3. ...Mein Problemchen ist, dass ich leider mit
    Arduino noch keine Erfahrung habe, aber
    das ist allgemeingültig:

    Mach Deine Messungen timergesteuert und per
    Timer-Interrupt ausgelöst in einem Unterprogramm, und erledige unkritische Dinge wie schreiben ins Display oder Auswerten des Grenzwertes im Hauptprogramm!
    Den 8 bit-Zähler kannst Du so hintrimmen,
    dass die Frequenz ein ganzzahliges
    Vielfaches einer Sekunde ist.
    (In der Franzbox messe ich 15x je Sekunde,
    das erscheint viel,aber langsamer geht gar nicht bei 4MHz Takt, da zähle ich von 3 bis 255 hoch bei Vorteiler 1024 soweit ich mich jetzt erinnere. Na ja, diese "Uhr" musst Du noch feintunen, aber das geht ganz gut, auch ohne
    Uhrenbaustein.)
    Messwerte aufaddieren und durch die Zahl der Messungen teilen sollte dann kein Problem mehr sein, und wähle Deine Variablen groß genug!
    versteht sich eh von selbst....

    AntwortenLöschen
  4. Guck mal in meinem Blog vorbei!
    Das mit den Messmodulen schaut sehr gut aus!
    Das erste versuchsmuster läuft an 3,6V

    AntwortenLöschen
  5. Mit dem Arduino hast Du mir eine völlig neue Möglichkeit für meine (hat bisher nix mit EV's zu tun) Schrittmotorsteuerung gezeigt. Das werden wieder viele Netz-Nachtschul-Sitzungen... Danke!)
    Wer sich da auskennt...Kleiner Crashkurs kann mir nicht schaden...

    AntwortenLöschen
  6. Tja, Arduino ist eine etwas andere Welt
    als Bascom, wobei ich letzteres als viel
    leichter erlernbar betrachte, aber so schwer
    ist Arduino auch nicht.....das ist sehr
    nahe mit C++ verwandt, geht also viel mehr in
    Richtung dessen wie "Profis" arbeiten.
    Aber für "mal eben schnell eine kleine
    Anwendung programmieren" ist Bascom eine
    sehr gute Wahl! wenns aber dann um wesentlich
    kompliziertere Sachen geht wie Grafiken
    und einbinden von Datenträgern etc. dann
    scheint mir Arduino die Nase vorn zu haben.
    Na ja, mal sehen, wo uns das noch hinführt....
    Da z.B. die Franzbox Platine mit dem
    Atmega 48 bis 328 kompatibel ist, könnte man die auch sicherlich per Arduino programmieren.
    ......ich mein ja nur.....da ist z.B.
    auch eine komplette H-Brücke für ganz
    andere Anwendungen drauf vorgesehen...

    AntwortenLöschen
  7. Für totale Anfänger, wie mich, habe ich einen schönen Link gefunden. Hier versteht man worum es überhabt geht und es werden keine Grundkenntnisse vorausgesetzt. http://www.youtube.com/user/MaxTechTV1

    AntwortenLöschen
  8. Ebenfalls zu empfehlen ist der Blog mit den Tutorials von Jeremy Blum:
    http://www.jeremyblum.com/category/arduino-tutorials/

    AntwortenLöschen
  9. Hallöchen,
    kannst du evtl. auch mal berichten wo du die Teile in Fernost beziehst? Denn ich suche auch immer mal eine günstige Quelle wie z.B. die Lastwiderstände oder wie auch im anderen Thread die UltraFire Batterien ;-)

    Mit sonnigen Grüßen
    Berny

    AntwortenLöschen
  10. Hallo Bernd,

    klar, kein Problem.
    Ich schreibe das bewusst nicht in den Blog, wenn ich noch nicht genau weiß, ob alles gut verlaufen ist, oder der Artikel OK ist.

    Die Widerstände habe ich bei Lewis Chan über ebay bestellt:
    http://stores.ebay.de/boutique-uno

    Die UltraFire sind von:
    http://stores.ebay.de/Demon99
    Dazu aber der Hinweis, dass ich die wirklich nur zum Testen nutzen würde.
    Für "ernsthafte" Anwendungen würde ich eher Panasonic oder ähnliche Zellen nehmen.

    Eine der sechs bestellten Zellen war defekt, eine ungewöhnlich tief in der Spannung, aber noch im grünen Bereich.
    Es gab eine Erstattung dafür.

    AntwortenLöschen

Vielen Dank.