Dasbor rekayasa terbalik Nissan Murano Z50

Kami memiliki Nissan Murano 2005. Amerika. Baik bluetooth maupun, terlebih lagi, dasbor digital, tetapi saya menginginkannya. Jika masalah dengan bluetooth diselesaikan dengan mengacaukan perangkat seperti ini :



... maka akan lebih sulit untuk mendigitalkan dashboard. Namun, mata takut, tetapi tangan melakukannya.



Untuk eksperimen, saya membeli yang rapi dari orang Eropa, tetapi pada dasarnya tidak berbeda dari orang Amerika dalam hal apa pun, kecuali untuk lokasi tombol odometer dan lampu rem, dan pengaturan jarum speedometer saat ini (dan juga tidak begitu gemuk dan tidak berusaha mencari minyak dari saya). Faktanya adalah bahwa orang Eropa dan orang Amerika memiliki kecepatan maksimum yang berbeda pada speedometer, masing-masing, pada 240 km / jam pada orang Amerika, orang Eropa akan menunjukkan sekitar 210. Dengan demikian, hamparan grafik tidak dapat dipertukarkan:





Selanjutnya, menurut dokumentasi untuk dasbor (file Pidorka.pdf, saya akan meninggalkan semua arsip di akhir), sambungkan daya ke rapi. Kontak 22, 23, 24 adalah kabel hitam, dalam diagram ditandai dengan huruf "B" kami menghubungkan ke minus (satu atau semua bersama-sama tidak masalah), dan kontak 21 "Y / R" berwarna kuning dengan merah stripe dan 20 "O" berwarna oranye (keduanya sekaligus) hingga + 12 volt. Kontak 15 "R / W" merah dengan garis putih adalah pencahayaan yang rapi, sama 12 volt, tetapi tidak perlu terhubung. Catatan penting: nomor kontak yang sebenarnya mungkin berbeda dari yang ditunjukkan pada diagram, karena insinyur Nisan adalah orang Jepang di seluruh kepala mereka dan memanggil nomor kontak dalam bahasa Jepang! Artinya, ada tiga colokan di papan - satu utama untuk menghubungkan ke gerobak dan dua untuk menghubungkan lampu rem dan tombol reset odometer. Jadi, alih-alih menunjuk kontak di setiap colokan dari 1 hingga maksimum,mereka menggabungkan nomor ketiga colokan menjadi satu grup, jadi kontak pertama dengan nomor ada di colokan pertama, dan yang terakhir di colokan ketiga. Singkatnya, dipandu oleh warna dan gambar saya. Ini foto bagian belakangnya:





Berikut adalah diagram dari file Pidorka.pdf (halaman 10) dengan nomor kontak dan kemana perginya:





Dan sekarang saya akan menjelaskan cara kerja panel menurut dokumentasi Pribka.pdf.



  • Jalur lampu sabuk pengaman 3
  • Lampu mesin cuci - pin 6
  • Pin lampu baterai 4
  • Pin lampu alarm 5
  • Pengoperasian speedometer:


Kontak 14 "V/W" Ungu bergaris putih. Dasbor mengeluarkan +5 volt ke sana. Sinyal dari sensor kecepatan menutup kontak ke ground, membentuk unit logis di atasnya. Ada 8 pulsa ke tanah per putaran roda.



Dan di sini yang paling enak dimulai. Semua data lain yang ditampilkan dasbor datang melalui bus UART, yaitu: tachometer, level bahan bakar, suhu cairan pendingin, kesalahan mesin, CVT, ABS, tekanan ban rendah, AWD, AWD Lock, lampu sein, balok tinggi, VDC OFF, SLIP, indikator cruise control - CRUISE dan SET, CVT, indikator pintu terbuka, level oli, dimensi, sinyal pager dan mode gearbox (P, D, R, S dan seterusnya termasuk mode manual dan nomor gigi). Jarak tempuh odometer dihitung berdasarkan pembacaan sinyal speedometer dan ditulis ke memori dasbor (termasuk). Ketika saya menghubungkan rapi orang lain ke mobil saya, pembacaan odometer dari rapi non-asli tidak diatur ulang. 



Selanjutnya saya akan memberikan pembacaan yang rapi saat listrik tersambung, tetapi tidak ada sinyal kontrol (menurut file Tidy.pdf halaman 32). UART tidak terhubung dan garis pin 3, 4, 5 dan 6 tergantung di udara:



Speedometer, tachometer, bahan bakar, suhu cairan pendingin - pembacaan nol. Panel itu sendiri akan berada dalam mode malam, yaitu, lampu instrumen menyala. Tampilan variator tidak menunjukkan apa-apa. Pengemudi itu diam. 



ABS, VDC OFF, SLIP, Brake Error - Semua indikator ini harus menyala saat daya tersambung dan tidak ada komunikasi. 



Balok tinggi, pintu tidak tertutup, tekanan ban rendah, CRUISE, SET, AWD, AWD LOCK, oli, lampu sein, engine error, CVT - lampu ini akan padam.



Sekarang kita perlu menghubungkan ke pin UART dan mengeluarkan data ke komputer menggunakan jembatan USB-UART. Saya menggunakan yang ini:





Anda dapat menggunakan jembatan USB ke UART lainnya seperti yang diminta. Yang dirajam bisa mendapatkan persen dari arduino UNO atau hubung singkat ke reset dan menggunakan UART bawaan. Singkatnya, TX perangkat (pin 18 "R / L" merah dengan garis biru) terhubung ke RX konverter UART kami dan kabel hitam mana pun (pin 22, 23, 24) ke pin GND UART . Selanjutnya, kami meluncurkan monitor port COM apa pun, pilih UART kami di daftar, sambungkan dan amati aliran kesadaran. Ini adalah versi singkatnya. Sekarang lebih detail. Kami mengunduh, misalnya, inidan colokkan UART ke USB. COM baru akan muncul di daftar COM Port dan sambungkan ke sana. Sekarang kami mengamati aliran kesadaran dari dasbor di jendela utama program. Jika kami tidak melihatnya, maka Anda melakukan segalanya dengan benar, karena Anda masih perlu memilih kecepatan penerimaan data - Baud Rate. Memilih mode yang berbeda, saya mengabaikan semua yang lebih tinggi dari 115200, karena dengan pengaturan seperti itu, terminal menghasilkan nol yang solid. Setidaknya beberapa struktur mulai muncul dalam pengaturan antara 9600 dan 19200. Tapi itu tidak menjadi lebih jelas. Dengan putus asa, saya menopang dagu saya dengan tangan dan, tiba-tiba, saya menemukan osiloskop di atas meja! Wah - saya pikir. - Saya memiliki hal seperti itu! Singkatnya, saya memutuskan untuk melihat apa yang akan ditampilkan mesin setan ini. Setelah entah bagaimana mengambil pengaturan, saya mengamati sesuatu yang tidak dapat dipahami yang dengannya, saya tidak tahu apa yang harus dilakukan dengan pikiran saya. Oke, mari kita lihat apa sebenarnya kepanjangan dari Baud Rate. Ya, wikipedia mengatakan itu adalah jumlah bit data per detik. Baiklah, saya pikir, izinkan saya melihat osiloskop untuk mengetahui panjang pulsa terpendek. Ternyata menjadi sekitar 70 nanodetik. Setelah menggaruk lobak saya, saya memutuskan untuk membagi kasing ini menjadi 1.000.000 nanodetik, dan mengapa tidak? Hasilnya ternyata mendekati 14400. Ada kecepatan seperti itu - saya pikir lagi, dan mengatur pengaturan berikut untuk berjaga-jaga: Baud Rate 14400, Bit data - 8, Paritas - ganjil, Stop bit - 1, Handshaking XON / XOFF. Dan sialnya tiba-tiba berhasil! Artinya, tidak ada yang berubah, jendela masih menampilkan set karakter aneh yang sama, tetapi chuyka memberi tahu saya bahwa saya bergerak ke arah yang benar. Singkatnya, saya menghapus hal berikut dari speedometer: 



Ini setelah decoding



A0 0F 00 0F 00 14 00 00 00 00 14 A1 0B 00 0B 00 6E 00 00 00 00 6E A2 0F 00 02 00 14 10 00 00 00 09 A3 07 00 00 00 6E 05 00 00 00 6C A4 0F 00 0C 40 34 3F 00 00 00 48 A5 02 00 0E 00 6E 01 08 00 00 6B A6 0C 00 01 00 14 1F 00 00 00 06 A7 00 00 0F 00 6E 00 00 00 00 61A8 00 00 00 00 14 00 00 00 00 14 A9 00 00 00 00 6E 00 00 00 00 6E 

      
      





Saya mencari-cari dengan nol, tidak menemukan sesuatu yang menarik, tetapi, tiba-tiba lagi, saya menemukan bahwa byte dengan tanda "A ..." diulang setiap 10 kali. Saya mengarah ke struktur ini:



(Mengulangi bagian)



A0 0F 00 0F 00 14 00 00 00 00 14 

A1 0B 00 0B 00 6E 00 00 00 00 6E 

A2 0F 00 02 00 14 10 00 00 00 09 

A3 07 00 00 00 6E 05 00 00 00 6C 

A4 0F 00 0C 40 34 3F 00 00 00 48 

A5 02 00 0E 00 6E 01 08 00 00 6B 

A6 0C 00 01 00 14 1F 00 00 00 06 

A7 00 00 0F 00 6E 00 00 00 00 61

A8 00 00 00 00 14 00 00 00 00 14 

A9 00 00 00 00 6E 00 00 00 00 6E
      
      





Dua byte kedua dari belakang selalu nol pertama, jika Anda menerjemahkan HEX ke DECIMAL, mereka tumbuh dari 160 menjadi 169. HEX - kumpulan karakter yang disebutkan di atas tidak lebih dari angka desimal dalam format heksadesimal (saya hampir mematahkan jari saya saat menulis) . 



Itu menjadi panas. Biarkan saya berpikir saya akan memberi makan data yang sama ke rapi melalui Terminal. Saya mencolokkan konverter TX USB-UART ke RX perangkat, dan itu mulai berbunyi bip dengan semua warna pelangi. Di sini saya kira itu tidak begitu sederhana. Rupanya UART dari lapisan fisik agak berbeda dari yang digunakan pada arduin yang sama. Saya menghapus overlay dari yang rapi, menumpulkannya di papan, menggambar ulang sirkuit dan ya! Memang, ini adalah pasangan diferensial. Tanpa merinci, saya hanya akan mengatakan bahwa saya menyolder langsung ke bantalan yang langsung menuju pengontrol dan kemudian semuanya bekerja dengan baik. Berikut adalah foto tempat menyolder sesuatu:





Dan sekarang, yang paling enak. Kami membawa semua nanoteknologi ini ke dalam mobil, kami memotong rapi modifikasi kami, UART ke beech dan rapi. Dan sekarang kita potong outputnya bukan untuk dirapikan, melainkan ENTRANCE (Hubungi 19 "R/B" merah bergaris hitam) untuk menghapus data yang dikirimkan mobil ke dashboard. Kemudian kami menyalakan kunci kontak, meluncurkan Terminal di beech dan mulai merekam semua yang datang dengan rapi. Dan sekarang kami mulai menyodok semua tombol secara berurutan di mobil kami. Kami membuka dan menutup pintu, menyalakan wiper, menekan rem-gas-mundur-lihat siapa yang memiliki itu, lampu jauh, sinyal belok. Dianjurkan untuk mematikan motor dan variator sehingga kami dapat menghapus kode kesalahan motor dan variator. Apalagi motor harus dimatikan dalam versi dan pose yang berbeda, dan masing-masing sensor secara terpisah. Secara umum, saya mengambil data dari mobil, dan inilah yang terjadi:



(   A0  A9)

A0 40 00 00 78 3F 00 00 00 00 07 

A1 00 00 00 10 00 00 00 00 00 10 

A2 40 00 00 78 3F 00 00 00 00 07 

A3 00 00 00 10 00 00 00 00 00 10 

A4 40 00 00 78 3F 00 00 00 00 07 

A5 00 00 00 10 00 00 00 00 00 10 

A6 40 00 00 78 3F 00 00 00 00 07 

A7 00 00 00 10 00 00 00 00 00 10 

A8 40 00 00 78 3F 00 00 00 00 07 

A9 00 00 00 10 00 00 00 00 00 10 
      
      





Wah - saya pikir. - Ini hampir seperti speedometer! Biarkan saya, saya pikir, memberi makan merapikan log yang saya rekam dari mobil. makan. Si rapi mengulangi semua yang saya lakukan di dalam mobil dari mobil ke mobil. Eka saya pintar - saya tidak malu dengan diri saya sendiri! Saya memutuskan untuk mengubah beberapa tanda dan memasukkan file yang dimodifikasi ke rapi lagi. Tidak terjadi apa-apa. Hmm - saya pikir. Apa yang harus dilakukan? Dan dia tertekan, meletakkan dagunya di tangannya lagi.



.... Angka-angka aneh di akhir setiap bagian ...

... Empat pasang nol dan kemudian beberapa angka ...

Saya membuka kalkulator Windows. Untuk beberapa alasan saya beralih ke mode HEX. Untuk beberapa alasan, saya memutuskan untuk mengambil semua angka dalam format HEX, tidak termasuk nomor bagian dan nomor terakhir, dan mengalikannya menggunakan metode XOR. Mendadak! Jumlah angka XOR sama dengan angka terakhir di bagian. Menarik - saya pikir. Rupanya, byte checksum terlintas di benak saya. Saya mengubah beberapa nomor, XOR bersama-sama, memasukkan jumlah di akhir bagian dan memasukkannya ke rapi. Rapi mengubah pembacaan tachometer. Semua jelas. Struktur menjadi jelas:



A0 40 00 00 78 3F 00 00 00 00 07 



Nomor bagian - A0



Data - 40 00 00 78 3F 00  Byte



akhir baris - 00 00 00 



Byte checksum - 07



Singkatnya, untuk menguraikan apa yang berubah menjadi @ ovnokodil, saya memiliki perangkat lunak ini:





Manajemen sangat primitif - klik "Pilih port". Kami menunggu ... Kami masih menunggu ... Kami menunggu lagi ... Bagaimanapun, begitu juga dengan saya. Sebuah jendela dengan daftar port akan keluar. Dengan mengklik nama port, itu terhubung ke port. L - Logika! Untuk memulai transfer, kami menyodok tombol "Mulai transfer". L - Logika! Sisi kiri berisi 10 bagian dari A0 hingga A9. Selama transmisi, bagian ini dimuat secara berurutan ke port yang dipilih. Pindahkan penunjuk tetikus ke sel mana pun dan putar roda. Nilai-nilai berubah dan pembacaan rapi berubah dengan cepat. Di sisi kanan, jawaban dari rapi seharusnya ditampilkan, tetapi saya @ encoder, semuanya bodoh bagi saya, karena sekarang hanya ada output yang diformat. Anda dapat menyimpan pengaturan HEX saat ini ke file dan kemudian memuatnya. Untuk melakukan ini, tekan tombol dengan nama yang sama. Perangkat lunak secara otomatis menghitung jumlah dan menghitung ulang byte kejujuran. Jadi kita tidak menyentuhnya,dan Anda tidak akan mendapatkan nifiga. Byte di kotak biru dapat diubah, tetapi kemungkinan besar ini adalah pemisah. Tampaknya tidak memengaruhi data dengan cara apa pun. Untuk pekerjaan yang berfungsi penuh, cukup memberi makan dua bagian pertama A0 dan A1. Bagian pertama berisi data tachometer dan lainnya, bagian kedua berisi semua bohlam error dan posisi pegangan transmisi otomatis. Singkatnya, Anda akan mengerti. Di tengah, titik-titik biru adalah bagian mengirim sakelar. Jika berwarna biru, maka bagian ini dikirim ke port COM. Saat startup, snap-in default terbuka, yang 100% berfungsi. Kurva Softina, terbang dengan keteraturan yang patut ditiru, dan tidak peduli. DIBagian pertama berisi data tachometer dan lainnya, bagian kedua berisi semua bohlam error dan posisi pegangan transmisi otomatis. Singkatnya, Anda akan mengerti. Di tengah, titik-titik biru adalah bagian mengirim sakelar. Jika berwarna biru, maka bagian ini dikirim ke port COM. Saat startup, snap-in default terbuka, yang 100% berfungsi. Kurva Softina, terbang dengan keteraturan yang patut ditiru, dan tidak peduli. DIBagian pertama berisi data tachometer dan lainnya, bagian kedua berisi semua bohlam error dan posisi pegangan transmisi otomatis. Singkatnya, Anda akan mengerti. Di tengah, titik-titik biru adalah bagian mengirim sakelar. Jika berwarna biru, maka bagian ini dikirim ke port COM. Saat startup, snap-in default terbuka, yang 100% berfungsi. Kurva Softina, terbang dengan keteraturan yang patut ditiru, dan tidak peduli. DI Arsiparis berisi semua yang Anda butuhkan untuk tarian independen dari rebana, termasuk manual untuk mobil, dan kurva perangkat lunak saya.






Server cloud dari Macleod cepat dan aman.



Daftar menggunakan tautan di atas atau dengan mengklik spanduk dan dapatkan diskon 10% untuk bulan pertama menyewa server dengan konfigurasi apa pun!






All Articles