Spisu treści:
- Krok 1: Wybór narzędzia i oprogramowania magistrali CAN/USB
- Krok 2: Zarejestruj się i zaloguj do serwisu Can2sky.com
- Krok 3: Załaduj dziennik magistrali CAN
- Krok 4: Wizualizacja danych magistrali CAN
- Krok 5: Edytor parsera
- Krok 6: Ulepsz swój prywatny parser
- Krok 7: Upublicznij swój dziennik
- Krok 8: Zapisz wyniki w pliku PDF
Wideo: Jak zdekodować dane magistrali CAN pojazdu: 8 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:28
W tej instrukcji zarejestrujemy dane magistrali CAN samochodu lub ciężarówki i przekonwertujemy zarejestrowane dane dziennika magistrali CAN na czytelne wartości. Do dekodowania użyjemy usługi w chmurze can2sky.com, która jest bezpłatna. Log możemy nagrywać za pomocą przejściówek CAN-USB, ale należy zwrócić uwagę na format logu - powinien być zgodny z usługą dekodera.
Krok 1: Wybór narzędzia i oprogramowania magistrali CAN/USB
Dekoder can2sky.com obsługuje kilka typów logów magistrali can:
1. CAN-hacker w formacie trc-pliku
Łącze adaptera USB
Przykład dziennika magistrali CAN (29bit) (ciężarówka, autobusy, ciągniki, inne maszyny komercyjne). Plik powinien mieć rozszerzenie *.trc. Time ID DLC Data Komentarz
40, 425 18FFB5F2 8 3A 82 FF 5C C6 80 11 05
40, 431 18F005F6 8 FF FF FF FB FF FF 20 50
40, 431 14FFB4F6 8 00 FF 16 F0 FF FF FF FF
40, 433 18FFB6F2 8 00 00 00 00 F1 12 FF FF
Pobierz przykład
Przykład logu magistrali CAN (11bit) (samochody). Plik powinien mieć rozszerzenie *.trc.
Przykład formatu
36, 492 1 0004 40A 8 C0 00 38 8F 94 DA 07 3A 00000000
36, 592 1 0004 40A 8 C0 01 00 00 9F AF 00 35 00000000
36, 692 1 0004 40A 8 BF 00 3D 04 02 37 A7 00 00000000
36, 792 1 0004 40A 8 BF 02 22 00 00 00 02 2B 00000000
36, 892 1 0004 40A 8 BF 03 30 00 02 00 00 00 00000000
36, 992 1 0004 40A 8 BF 04 31 80 00 24 00 06 00000000
Pobierz przykład
2. Format wyjściowy narzędzia candump systemu Linux
Plik ten powinien mieć rozszerzenie *.log. Możesz użyć Raspberry Pi, Orange Pi lub dowolnego innego komputera z systemem Linux z zainstalowanym interfejsem can i oprogramowaniem can-utils. Jak skonfigurować Pi do pracy z magistralą CAN można tam przeczytać. Przykład formatu 11-bitowego:
(1579876676.199507) slcan0 2DE#00000000000000050
(1579876676.199539) slcan0 358#000A800000000000
(1579876676.199547) slcan0 1CA#0000000005005055
(1579876676.199553) slcan0 1CB#00000000000185
Pobierz przykład
3. Prosty format csv
Ten plik powinien mieć rozszerzenie *.csv
Pierwszy ciąg - nagłówek z nazwami wierszy. Wiersz SA jest konieczny, ale można go wypełnić cyfrą „1”. czas;PGN;SA;b0;b1;b2;b3;b4;b5;b6;b7;;
0, 01;41;1;7A;3;0;0;0;0;0;0;;
0, 02;50;1;0;20;90;B0;FF;FF;FF;FF;;
0, 03;0D0;1;B5;20;0;8;0D;90;FF;FF;;
0, 04;1A0;1;0;40;0;0;FE;FE;0;0E;;
0, 05;280;1;1;22;CC;0C;22;0;17;19;;
0, 06;288;1;8A;7B;10;0;0;53;93;0F;;
Pobierz przykład Pobierz przykład
Dla 29-bitowej magistrali CAN wystarczy użyć 2 bajtów PGN w kolumnie PGN (na przykład - FEF2, FECA itp.).
Krok 2: Zarejestruj się i zaloguj do serwisu Can2sky.com
Po zapisaniu dziennika magistrali CAN możesz przesłać go do serwisu can2sky.com, aby go zdekodować.
Aby skorzystać z usługi, musisz się zarejestrować. E-mail wymaga potwierdzenia, które zostanie wysłane przez serwis.
Po zalogowaniu możesz wczytać swój pierwszy log CAN. Kliknij przycisk Prześlij plik TRC.
Krok 3: Załaduj dziennik magistrali CAN
Wybierz opcję Nowy samochód i wypełnij informacje o pojeździe (wszystkie pola są wymagane).
Przeciągnij i upuść plik dziennika magistrali CAN.
Następnie możemy wybrać parser (plik DBC) do dekodowania dziennika. Serwis sprawdzi wszystkie możliwe parsery i pokaże szereg pasujących parametrów z parsera i logu. Wybierz najbardziej odpowiedni parser, aby zdekodować swój dziennik. Weź pod uwagę, że parser tego samego producenta zapewni ci lepsze wyniki.
W przypadku 29-bitowej magistrali CAN ciężarówek, autobusów i innych pojazdów użytkowych użyjemy jednego z parserów J1939 ze względu na ten standard branżowy. W przypadku samochodów nie ma norm, więc każdy pojazd różni się pod względem identyfikatorów magistrali CAN. Oznacza to, że wprawdzie możemy użyć parsera Forda do dekodowania danych Mercedesa - ale otrzymamy bezużyteczne wyniki nawet przy dużej liczbie pasujących identyfikatorów. Ponieważ różni dostawcy samochodów mogą używać tych samych identyfikatorów dla różnych parametrów.
W naszym przykładzie dla logu BMW X6 użyjemy parsera BMW X1, ze względu na tego samego producenta i największą liczbę pasujących identyfikatorów.
Kliknij Wyślij.
Krok 4: Wizualizacja danych magistrali CAN
Pojawi się okno głównego pulpitu nawigacyjnego, w którym możesz zobaczyć wszystkie swoje logi i parsery (zarówno domyślne, jak i prywatne parsery). Po pewnym czasie status twojego dziennika zmieni się z "postęp" na "zakończony"
Kliknij Widok, aby zobaczyć wizualizację.
Lewa część ekranu – lista aktywnych identyfikatorów CAN w tym logu. Niektóre z nich są rozpoznawane przez DBC-parser, inne nie (oznaczone czerwonym tłem).
Kolumna Wartość pokazuje minimalną i maksymalną wartość parametru podczas rejestracji. Okres analizy można zmienić za pomocą ustawień zakresu filtra czasu. Jeśli klikniesz na parametr na liście parametrów – zmieni kolor na zielony. Pojawi się tabela wartości i wykres parametrów.
Możesz powiększyć wykres lewym przyciskiem myszy i zaznaczając fragment wykresu. Możesz zbudować kilka działek na raz, a także możesz łączyć działki z różnych plików dziennika. Aby wybrać inne źródło parametrów możesz kliknąć na listę załadowanych logów.
Sekcja filtrów pozwala odfiltrować parametry magistrali CAN, które nas nie interesują. Na liście pojawią się parametry zaznaczone na zielono. Inwersja odwróci wybór.
Krok 5: Edytor parsera
Zasady dekodowania komunikatów magistrali CAN są opisane w plikach DBC. Każdy parametr (SPN) ma własną regułę dekodowania, którą możesz edytować, klonować lub usuwać w edytorze SPN
Okno edytora SPN zawiera wszystkie informacje związane z dekodowaniem tego parametru magistrali CAN.
Bit start – pozycja początkowa parametru w komunikacie magistrali CAN (w bitach, ponieważ jest wiele parametrów zakodowanych bitowo). Każdy bajt=8 bitów (fyi). Bit length – długość parametru CAN w bitach.
Little endian lub Big endian - wyliczanie kolejności bajtów. Usługa obsługuje zarówno format Intel (Little endian), jak i Motorola Lsb (Big endian).
Skala – skala przeliczania wartości na rzeczywisty parametr.
Offset – offset wartości rzeczywistej, czyli dane rzeczywiste przeliczone jako parametr CAN * skala + offset.
Min i Max – minimalna i maksymalna wartość (opcjonalnie).
Możesz zobaczyć również wynik swojej operacji dekodowania w formacie DEC, HEX i binarnym. Po modyfikacji SPN zostaniesz poproszony o zapisanie parsera DBC pod nową nazwą (nie możesz modyfikować domyślnego pliku DBC), możesz tylko utworzyć nowa wersja tego. Tworzenie nowego parsera DBC może zająć dużo czasu (kilka minut, proszę o cierpliwość).
Krok 6: Ulepsz swój prywatny parser
W edytorze SPN możesz dodać reguły dekodowania dla nierozpoznanych wiadomości.
Kliknij +SPN, aby to zrobić. Ponownie nie możesz utworzyć nowej reguły SPN w domyślnym DBC, więc zostaniesz poproszony o utworzenie nowej.
Po zapisaniu jako nowy DBC otwórz swój log przez nowy parser.
Teraz możesz dodać nowe definicje SPN. Pojawi się edytor SPN, w którym możesz umieścić nazwę SPN i ustawić znaczące bity i skalę.
Od czasu utworzenia nowego SPN możesz wykorzystać jego wynik do tworzenia wykresów i analizować wraz z innymi parametrami. Bajty aktywne (zmieniające się) w okresie analizy zostaną pokolorowane.
Krok 7: Upublicznij swój dziennik
Domyślnie każdy dziennik jest prywatny i może być przeglądany tylko przez jego właściciela. Ale możesz wyłączyć ten przełącznik i ustawić dziennik jako „Publiczny”.
Po zalogowaniu się pod nową nazwą użytkownika zobaczymy ten log w sekcji publicznej, dostępnej dla każdego użytkownika platformy. Każdy może go przeglądać i budować działki, zamieszczać polecenia pod dziennikiem.
Krok 8: Zapisz wyniki w pliku PDF
Możesz wygenerować raport ze wszystkimi rozpoznanymi i nierozpoznanymi parametrami danych magistrali CAN. Kliknij Eksportuj do PDF.
Zalecana:
Obrotomierz/wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN: 8 kroków
Obrotomierz / wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN: Każdy właściciel Toyoty Prius (lub innego pojazdu hybrydowego/specjalnego) będzie wiedział, że na jego deskach rozdzielczych może brakować kilku tarcz! Mój Prius nie ma wskaźnika obrotów silnika ani wskaźnika temperatury. Jeśli jesteś facetem od występów, możesz chcieć wiedzieć takie rzeczy, jak wyprzedzenie czasu i
Zhakuj swój samochód za pomocą terminala Wio i magistrali CAN: 7 kroków
Zhakuj swój samochód za pomocą terminala Wio i magistrali CAN: Jeśli masz pewną wiedzę na temat programowania magistrali CAN i Arduino i chcesz zhakować swój samochód, te instrukcje mogą dostarczyć ci rozwiązania. Jeśli chodzi o to, dlaczego chcesz zhakować swój samochód, ja nie wiem, ale to rzeczywiście ciekawa rzecz.Ten pr
Wyświetlacz harmonogramu magistrali LCD: 7 kroków
Wyświetlacz rozkładów jazdy autobusów LCD: Standardowe 18 Uczniowie zrozumieją i będą w stanie wybrać i wykorzystać technologie transportowe.Benchmark 18-J Transport odgrywa istotną rolę w działaniu innych technologii, takich jak produkcja, budownictwo, komunikacja
Płytka eksploratora magistrali piratów 3EEPROM: 5 kroków
Bus Pirate 3EEPROM Explorer Board: Jeśli masz jednego z autobusowych piratów hakerskich, co z nim zrobisz? Dowiedz się więcej o EEPROM-ach 1-wire, I2C i SPI z płytą eksploratora 3EEPROM (nazywamy ją THR-EE-PROM). EEPROM to rodzaj układu pamięci, który przechowuje dane bez ciągłego zasilania
HD44780 Płytka adaptera LCD do I2C dla pirata magistrali: 9 kroków
HD44780 Płytka adaptera LCD do I2C dla magistrali piratów: Tanie wyświetlacze LCD ze znakami oparte na chipsecie HD44780 są dostępne w różnych rozmiarach: 2x16, 4x20, itd. Wyświetlacze te mają dwa standardowe tryby interfejsu, równoległy 4bit i 8bit. 8bit wymaga łącznie 11 linii danych, 4bit wymaga 7 (6 tylko do zapisu). Trochę