S

Elektronika i programowanie. Damian Kaniecki

Konwerter can-usb

Panel przedni konwertera

Konwerter CAN-USB powstał jako odpowiedź na kosztowne konwertery stosowane przeze mnie w celu diagnozowania pojazdów samochodowych wyposażonych w instalację z magistralą CAN.

Dzięki zastosowaniu popularnej przejściówki wyposażonej w układ FT232 zyskałem możliwość wykorzystania wirtualnego portu COM poprzez port USB.

Uprościło to pisanie aplikacji w Delphi na komputery PC poprzez wyeliminowanie potrzeby używania zewnętrznej biblioteki DLL.

 

Schemat

Układem głównym urządzenia jest AVR ATmega8 w obudowie przewlekanej. Do komunikacji mikrokontroler-PC wykorzystałem gotową przejściówkę z układem FT232.

Po stronie magistrali CAN zastosowałem komunikujący się z ATmegą po SPI kontroler MCP2515, oraz interfejs MCP2551. Zastosowałem złącze DB-9, pinowo "kompatybilne" z używanym wcześniej konwerterem. Urządzenie wyposażyłem także w diody LED sygnalizujące podłączenie zasilania oraz transmisję magistrali CAN. Konwerter posiada także dwa przełączniki w celu dołączenia rezystora 120R pomiędzy przewodami CAN H i CAN L, oraz umożliwiającego zmianę ustawień parametrów transmisji CAN.

Schemat urządzenia

Projekt płytki PCB

Wytrawiona płytka PCB

PCB przygotowana do montażu

Budowa

Program mikrokontrolera napisany został w języku C przy pomocy środowiska Eclipse. Konwerter współpracuje ze wszystkimi napisanymi przeze mnie aplikacjami na PC, które umożliwiają diagnostykę oraz konfigurację podzespołów samochodowych, głównie marki Renault.

Konwerter można zaprogramować według potrzeb użytkownika. Umożliwia odbiór ramek CAN z 11-sto bitowym identyfikatorem 2.0A oraz 29-cio bitowym identyfikatorem 2.0B. Programowo można zmienić prędkość transmisji, a także zastosować filtr umożliwiający selektywny odbiór wybranych ramek. A wszystko w cenie 10-cio krotnie niższej :)

PCB strona elementów

Dopasowanie do obudowy

Strona podłączenia CAN

Front konwertera CAN-USB