İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Bu belge, arabanın OBD akışını hacklemenin basit ve uygun maliyetli yolunu sunar. Bu konuda OBD bilgilerini almanın genel yolunu göstermeye çalışıyorum.
Burada OBD portuna bağlanmak ve Arduino IDE'yi programlamak için Arduino UNO, CAN-Bus shield(1.2), DB9 kablosu kullanıyorum(kodu uno'ya kolaylıkla yakmaya yardımcı olur).
Bu projeye araç 20 km hızla giderken otomatik kapı kilidi ve araç dışarıdan kilitlendiğinde tüm camların otomatik olarak açılması için başladım.
OBD portundan üretilen verileri bulmak için bu projeye başlamadan önce verileri analiz etmek ve anlamak gerekir.(Daha fazla sabır ve süreklilik gerekir).
İşte hikaye başlıyor.(Hyundai Grand i10, Magna, 2019 - Make in India üzerinde çalışıyorum, Veriler üreticilere / varyantlara vb. göre değişecektir).
Adım 1: Donanım Satın Alma Bağlantıları
- CAN-bus arduino kalkanı - CAN-bus kalkanı
- Arduino UNO - Arduino UNO
- OBD Bağlantı Noktası - DB9 Kablosu - DB9 Kablosu
Adım 2: Donanım, IDE ve Diğer Gerekli Şeyleri Organize Edin
Projeye başlamadan önce, bu proje için kullanılan tüm donanımların kontrol edilmesini ve beklendiği gibi çalışmasını sağlamalıyız. Bu yüzden donanımı OBD portuna bağlamalıyız ve donanımdan duman veya gereksiz ısı üretilmediğinden emin olmalıyız, ardından donanımın OBD'den veri akışını okuyabildiğinden emin olmak için örnek kod yazmalıyız.
İlk adım burada başlıyor, Arduino IDE'yi makineye kurun ve gerekli kitaplıkların kurulu olduğundan emin olun. Arduino uno'yu bilgisayara bağladıktan sonra Arduino IDE'de bağlı seri portu ve kart tipini seçtik.
Örnek kod git deposundan indirilmeli ve kodu Arduino Uno'ya yazmalıdır, ardından kalkanı OBD bağlantı noktasına bağladık ve veri akışı okumasını başlattık.
Git Deposu -
github.com/JijovarghesePunalur/CarHacks.git
Can-bus veri akışını bağlamak ve çıkarmak için Örnek kod ve kitaplık alabilirsiniz. Projeyi klonladıktan sonra arduino dosya klasörü içindeki kütüphane dosyalarını kopyalayabilir ve arduino IDE'de derleme ve yakma işlemini gerçekleştirebilirsiniz.
Kodu Arduino Uno'ya yazmadan önce, arduino'yu bilgisayara bağlamanız ve ardından Arduino IDE'de Seri Port ve kart tipini seçmeniz gerekir.
Örnek klasörde Okuma işlemi, yazma işlemi ve Seri-Mesaj dosyalarını, temel olarak ortak kütüphane dosyaları kullanılarak yapılan içerikleri görebilirsiniz. Seri-Mesaj, çıktı formatı bazında Read programından farklıdır, yani bu projede tekrar eden mesajları sıralamak için linux'ta can-utils kullanmaya çalıştım.
can-utils'in kullanımı ve yürütülmesi, CarHaks'ın Readme.md dosyasında bulabilirsiniz.
3. Adım: Video Bağlantısı
Bu video size CAN-bus veri akışı (OBD portu) hakkında kesin fikir verecektir. Basit olabilir çünkü sadece temel bilgileri ekledim.
Adım 4: Kendiniz Yapın ve Sürpriz Yapın
Seri Mesaj kullanarak çıkarılan verileri kullanarak CAN-bus'a geri yazın, bu sizi gerçekten şaşırtacak. (Yazma programını depoda bulabilirsiniz, şimdi deneyin).
ECU / BCM ile bağlantılı her şeyi kontrol edebilirsiniz, sadece verileri analiz etmeniz ve ardından geri yazmanız yeterlidir.
Bir sonraki proje bu çalışmayı temel alacaktır - Akıllı Telefon Kullanarak Arabayı Kontrol Etmek.