CAN-Display

Aus Prius Wiki

Wechseln zu: Navigation, Suche

Eine kleine Bastelei die aus recht wenig Hardware aber dafür sehr viel Software besteht:


Inhaltsverzeichnis

[Bearbeiten] Idee

Ein kleines unabhängiges Gerät mit eigenem gut sichtbaren Grafikdisplay, das "mal eben" angeschlossen werden kann aber die Möglichkeit bietet, jede gewünschte Funktion selbst realisieren zu können.

[Bearbeiten] Ausführung

Als Diagnosegerät ist der Einbau in ein gut in der Hand liegendes Gehäuse sinnvoll (links - nur sollte der Bohrer nicht weglaufen.....) Die Leiterplatte belegt dabei weniger als die Hälfte des Gehäuses. Die Hardware ist identisch zu Grafische Anzeige CAN.

Zur Montage am Armaturenbrett ist ein Instrumentengehäuse geeigneter (rechts).


CAN-Display in Gehäuse CAN-Display-Instrument.JPG



HW2.0 fertiggestellt:

  • kompakte Leiterplatte 100 x 80mm (doppelseitig, SMD)
  • Stromversorgung für Controller und OLED
  • CAN-Interface (High-Speed) integriert
  • OLED steckbar - aktuell monochromes Grafikdisplay
  • Echtzeituhr (RTC) integriert (Uhrzeit und Datum)
  • Temperatursensor integriert
  • TWI-Erweiterungsschnittstelle
  • RS232-Schnittstelle
  • Videoumschalter integriert
  • Anschlüsse: CAN+Stromversorgung, MFD, Konverter, RS232, TWI, Analog


SW2.0 fertiggestellt:

  • Komplette CAN-Kommunikation incl. Auswertung der ID
  • Setup für CAN-Baudrate (auch für andere Fahrzeuge)
  • Setup der auszuwertenden ID
  • OLED-Ansteuerung - Grafik ähnlich der auf MFD
  • viele neue Anzeigen z.B.: HV-Spannung und SOC


Merkmale der CAN-Display-Variante (autark):

  • Nur OBD2-Anschluss benötigt
  • Bedienung über 10 Tasten
  • automatische Umschaltung der Anzeigen (abschaltbar)
  • kompakter Bauform
  • Stromaufnahme mit OLED-Anzeige 50mA

[Bearbeiten] Erster Prototyp


[Bearbeiten] Erstes Ergebnis

Diese ursprünglich als autarker "CAN-Monitor" konzipierte Platine zur Anzeige und Auswertung von "11-Bit-Standard-Frames" ("Extended Frames" werden zur Zeit noch nicht unterstützt) hat folgende Merkmale:

  • Vier Akzeptanzfilter
  • Gleichzeitige Anzeige von 7 ID
  • Anzeige der relevanten SJA100 Register
  • angezeigte ID konfigurierbar (eeprom)
  • konfigurierbar auf "Listen-Only"
  • I2C-Anschluss (Host, RTC, Temperatursensor)
  • RS232-Anschluss (TTL, mit MAX232 auch Norm)
  • acht Analogeingänge (z. Zt. novh nicht frei)


[Bearbeiten] Anzeige

die Anzeige erfolgt über ein gelbes 128 x 64 OLED-Grafik-Display (Display: 57,0x29,5 mm aussen: 75 x 52,7 mm :

  • hervorragender Kontrast
  • Helligkeit einstellbar (Parameter)
  • Anzeige verschiedener Schriftgrössen
  • geringer Stromverbrauch


[Bearbeiten] Anschluss

für den Anschluss wird nur ein OBD2-Stecker benötigt:

  • Stromversorgung
  • CAN-Anbindung


[Bearbeiten] weitere Einsatzmöglichkeiten

und kann zu einem vollständigen CAN-Display erweitert werden - folgende Anzeigen sind möglich (zur Zeit sind einige der Anzeigen noch Dummys!):

  • Alle Informationen, die auf dem CAN anliegen z. B.:
  • Batteriespannung, Batterietemperatur, SOC
  • EM-Strom, maximaler Lade- und Entladestrom
  • Verbrauch, Tankinhalt
  • Kühlmitteltemperatur
  • Zustand der Türen
  • Lenkwinkel


[Bearbeiten] Funktionsweise

Die anzuzeigenden Informationen werden aus den Daten der CAN-Nachrichten herausgefiltert, bearbeitet und in sinnvolle Anzeigedaten gewandelt.

  • Die angezeigten Nutzdaten sind konfigurierbar (eeprom)
  • Die Umwandlung der Daten in Nutzdaten
  • Normierung und Anzeige der Nutzdaten
  • Grafische Anzeige der Nutzdaten über Balkengrafik


[Bearbeiten] Hardware

Die Hardware besteht im wesentlichen aus den folgenden Komponenten:

  • Zur Steuerung wird ein ATMEGA16-Controller eingesetzt, der mit 5V betrieben wird
  • Zur Anzeige wird ein OLED-Display verwendet, das mit 3,3V für die Logik und 12V für die LED arbeitet
  • Für die CAN-Kommunikation ist ein SJA1000 CAN-Controller, der mit 5V arbeitet, angeschlossen
  • Als physikalisches CAN-Interface ist ein PCA82C250 mit Betriebsspannung 5V vorhanden
  • Die Anpassung der 5V-Signale auf die 3,3V-Signale erfolgt über Widerstandsnetzwerke
  • Das verwendete OLED-Display ist intern fest auf "8080-Interface" eingestellt


[Bearbeiten] Ausführung

Die aktuelle HW2.0 besteht aus einer professionell gefertigten doppelseitigem Leiterplatte mit Lötstopplack und ist bis auf Steckverbinder und Relais komplett mit SMD - Bauteilen bestückt. Für einen Geübten ist der Aufbau kein grosses Problem.


Der erste Prototyp wurde auf einer Lochrasterplatine aufgebaut:

  • Lochrasterplatine
  • Frei verdrahtet (ca. 200 Verbindungen)
  • Mischbestückung THT/SMD

[Bearbeiten] Bedienung

Zur Bedienung werden zu Zeit acht Platinentaster verwendet, die als "Softkeys" angeordnet sind. Die jeweilige Funktion der Taste bzw. das zu erreichende Menü oder Bild wird auf dem Display angezeigt.


       Esc         +      Eingabe   
        o          o         o
      +------------------------+
      |                        |
      |                        |
      |                        |
      |                        |
      |                        |
      |                        |
      | T     A    V    Q    U |
      +------------------------+ 
        o     o    o    o    o        
        1     2    3    4    5 


CAN DISPLAY TASTER.JPG



[Bearbeiten] Stromversorgung

Die Stromversorgung erfolgt über den OBD2-Stecker und ist zur Zeit noch über einen Standard-Spannungsregler realisiert.


[Bearbeiten] Bauteil-Liste Prototyp

 1 Lochrasterplatine 100x160 RM2,54
 1 40-polige IC-Präzisionsfassung
 1 40-polige IC-Fassung (standard)
 1 28-polige IC-Fassung 
 1 Widerstand  120 Okm
14 Widerstände  1  k
 1 Widerstand  33  k
 2 Widerstandsnetzwerke SIL 8 x 1k
10 Kondensatoren 100nF 50V
 2 Kondensatoren  22pF 50V
 1 Elko 470µF 35V
 4 Elko 4,7µF 25V
 1 Quarz 16 MHz
 4 Dioden 1N4007
10 Dioden 1N4148
 1 Spannungsregler 7805
 1 ATMEGA16 DIL
 1 SJA1000  DIL
 1 PCA82C250 SMD
 1 OLED-Display
 1 Gehäuse
 1 Filterscheibe
10 Taster f.Leiterplatte   
 1 OBD2-Stecker
 1 Mantelleitung 4-pol
   Fädeldraht

[Bearbeiten] Bezugsquelle

Bei Interesse eine PN an KSB www.priusfreunde.de


WIRD FORTGESETZT

--ksb 23:57, 19. Mai 2008 (CEST)