Projektbeschreibung:
Meine 2. Variante eines CAN-Bus Analyzer ist als universelles CAN-Bus Interface ausgeführt. Das für verschiedenen Anwendungen verwendet werden kann. Im Gegensatz zum 1. Projekt (CAN-Bus-Analyzer I) kommt hier der MCP2515 als CAN-Bus Kontroller zum Einsatz, wodurch sich die Anzahl der benötigten I/O Pins vom Mikrokontroller stark reduziert und somit die weitere I/O-Pins für weitere Aufgaben zur Verfügung stehen. Von der Schaltung habe ich ein Layout entworfen, welches bis auf ein paar Schönheitsfehler direkt verwendet werden kann.

Funktionsbeschreibung:

  • Der CAN-Bus-Analyzer erkennt automatisch das Format des CAN-Bus Protokolls ( 11-Bit Identifier oder 29-Bit Identifier und die aktuelle Baudrate) und protokolliert die CAN-Messages via RS232-Schnittstelle an den PC. Ebenso wird immer die letzte Empfangene CAN-Message auf dem optionalen LCD anzgezeigt (empfohlen wird ein 2x24 Zeichen Textdisplay HD44780 kompatibel). Ebenso ist die Hardware in der Lage, CAN-Bus Messages selbst zu versenden (dies sollte man aber aus Sicherheitsgründen beim Motor-CAN nicht machen).
  • Relaisausgang für das Zündungssignal (Kl.15) maximal mit 2 A belastbar.
  • 3 Schaltausgänge (High-Side) mit Iout <= 100 mA belastbar und einem internen Pulldown-Widerstand von 1 kohm. Diese Ausgänge werden für folgende Signale :
    - Licht
    - Geschwindigkeitssignal
    - Rückwärtsgang (muss mit Jumper J1 ausgewählt werden)
  • 1 Analoger Ausgang 0-5V (muss mit Jumper J1 ausgewählt werden. Dieser Ausgang dient dazu um Nachrüstgeräte wie fernzubedienen. Die Schaltung ist nur für Radios mit Widerstandskodierung (Spannungspegel) geeignet.
  • 2 Analoge Eingänge die Widerstandswerte (Spannungen) von den original Lenkradtasten einzulesen.
  • RS232-Schnittstelle (19200 8N1) zur Protokolilierung der CAN-Messages am PC, bzw. zum Senden von Steuerkommandos an den CAN-Analyzer
  • LCD-Schnittstelle für die LCD-Ausgabe der CAN-Messages (s. Projekt LCD-Modul).
  • I²-C Schnittstelle mit einer RJ-45-Buchse (8V-Buspegel) zum Ansteueren externer I²C-Schnittstellen (z.B. Displays, Freisprecheinrichtungen usw.)
  • CAN-Bus Schnittstelle (Kontroller: MCP 2515 und Bustreiber: ATA 6660) mit automatischer Baudratenerkennung von 16, 33, 50, 83.3, 95 , 100, 125, 166, 250, 250 und 500 kbit.
  • ISP-Schnittstelle zum Programmieren des Prozessors

Kenndaten der Hardware:

  • ATmega 168 und 20 MHz Quarz
  • CAN-Schnittstelle: MCP 2515 und ATA 6660 + CAN-Bus Terminierung auf der Leiterplatte (optional)
  • RS 232: MAX 232 , Baudrate: 19200,8,N,1
  • LCD-Port Wannenbuchse 10 polig für obiges LCD-Modul
  • I²C-Schnittstelle (RJ45 Buchse) mit Levelshifter auf 8 V Buspegel
  • 1 Relaisschaltausgang 2 A
  • 2 analoge Eingänge 0-5V mit interne 1kohm Pullup an +5V
  • 1 analoger Schaltausgang 0-5V Aufllösung 50mV
  • Ruhestromaufnahme <= 2,5 mA (ohne LCD-Display)
  • ISP-Programmierschnittstelle

Schaltplan:

Schaltplan vom CAN-Bus Analyzer


Photo von der aufgebauten Leiterplatte: (leicht eingestaubt :-) )
Photo vom CAN-Bus Analyzer



Unterlagen im PDF-Format:
-Bestückungsplan
- Top-Layer
- Botom-Layer (Ansicht von der Leiterbahnseite)




Stückliste:

EAGLE Version 4.16r2 Copyright (c) 1988-2006 CadSoft

Part Value Device Package Sheet

 

C1 47uF 25V/105° ELKOC-2.5 C-2.5 1
C2 0,1 µF C_SMD_0805 C0805 1
C3 47 µF / 16V 105°C ELKOC-2.5 C-2.5 1
C4 100n C_SMD_0805 C0805 1
C5 100n C_SMD_0805 C0805 1
C6 100n C_SMD_0805 C0805 1
C7 100n C_SMD_0805 C0805 1
C8 10n C_SMD_0805 C0805 1
C9 10n C_SMD_0805 C0805 1
C10 10n C_SMD_0805 C0805 1
C11 15 pF C_SMD_0805 C0805 1
C12 15 pF C_SMD_0805 C0805 1
C13 100n C_SMD_0805 C0805 1
C14 100n C_SMD_0805 C0805 1
C15 100n C_SMD_0805 C0805 1
C16 100n C_SMD_0805 C0805 1
C17 * 100n * C_SMD_0805 C0805 1
C18 1uF ELKOC-2.5 C-2.5 1
C19 1uF ELKOC-2.5 C-2.5 1
C20 1uF ELKOC-2.5 C-2.5 1
C21 1uF ELKOC-2.5 C-2.5 1
D1 SM6T6T18 SM6T6T18 SOD15-R 1
D2 SM4007 SM4007 SM-DIODE(400X) 1
D3 BAV-103 BAV-103 MINIMELF 1
D4 *LL4148* LL4148 MINIMELF 1
D4* BAS70-04 BAS70-04 SOT23 1
D5 GSOT08C GSOT08C SOT23 1
D5* BAS70-04 BAS70-04 SOT23 1
D6 GSOT08C GSOT08C SOT23 1
D7* SM6T_6V8 SM6T SOD15-R 1
F1 CIS3 CIS3 F1206 1
IC1 LP2950CDT-5.0 LP2950CDT-5.0 DPACK 1
IC2 LT6003 LT6003 SOT23-5 1
IC3 ATMEGA168-20A ATMEGA168-20A TQFP32-08 1
IC4 ATA6660 ATA6660 SO8 1
IC5 MCP2515-E/SO MCP2515-E/SO SO18L 1
IC6 MAX232ECWE MAX232ECWE SO16L 1
J1 520250-3 520250-3 1
JP1 Rück_PWM_OUT PINHD-2X2 2X02 1
JP2 AVR-ISP-6 AVR-ISP-6 AVR-ISP-6 1
JP3 RS232 PINHD-2X2 2X02 1
JP4 LCD_Licht PINHD-1X2 1X02 1
K1 GV5-2 12V 351 351 1
LCD CON10 CON10 1
Q1 20 MHz CRYSTALHC49U-V HC49U-V 1
R1 100 R-R0805 R0805 1
R2 100 R-R0805 R0805 1
R3 1k R-R0805 R0805 1
R4 1k R-R0805 R0805 1
R5 1k (1%) R-R0805 R0805 1
R6 1k (1%) R-R0805 R0805 1
R7 100 R-R0805 R0805 1
R8 47k R-R0805 R0805 1
R9 47k R-R0805 R0805 1
R10 47k R-R0805 R0805 1
R11 100 R-R0805 R0805 1
R12 1k R-R0805 R0805 1
R13 10k* R-R0805 R0805 1
R14 10k R-R0805 R0805 1
R15 10k R-R0805 R0805 1
R16 *10K* R-R0805 R0805 1
R17 1k R-R0805 R0805 1
R18 1k R-R0805 R0805 1
R19 1k R-R0805 R0805 1
R20 *100* R-R0805 R0805 1
R21 10k R-R0805 R0805 1
R22 *10K* R-R0805 R0805 1
R23 100 R-R0805 R0805 1
R24 10k R-R0805 R0805 1
R25 4k75 R-R0805 R0805 1
R26 0 R-R0805 R0805 1
R27 4k75 R-R0805 R0805 1
R28 0 R-R0805 R0805 1
R29 n.b R-R0805 R0805 1
R30 n.b. R-R0805 R0805 1
T1 PDTA114E-T PDTA114E-T SOT416-R 1
T2 PDTA114E-T PDTA114E-T SOT416-R 1
T3 PDTC114E-T PDTC114E-T SOT416-R 1
T4 PDTC114E-T PDTC114E-T SOT416-R 1
T5 PDTC114E-T PDTC114E-T SOT416-R 1
T6 PDTA114E-T PDTA114E-T SOT416-R 1
T7 PDTC114E-T PDTC114E-T SOT416-R 1
T8 BC850 BC850 SOT23 1
T9 PMGD780SN PMGD780SN SOT363_PHILIPS 1
X1 MICRO-MATE-N-LOK-3_14POLIG MICRO_MATE-N-LOK3_14POLIG 1
X2 SUB-D9 male M09H M09H 1
X3 SUB-D9 female F09H F09H 1

 

Eagle3D:

Eagle3D - Leiterplatte


Software:


..... in kürze folgt hier mehr