Apakah Voltase Modul Kontrol (dari Mode OBD 01 PID 42) dan tegangan baterai sama? Jika tidak, apa hubungan keduanya? Mengapa nilai maksimum Tegangan Modul Kontrol (dari Mode OBD 01 PID 42) adalah 65,535 V, ketika tegangan baterai dapat mencapai 14 V di dalam mobil?
8
Jawaban:
Sepertinya masalahnya adalah dengan sinyal yang masuk.
Kecuali jika kendaraan Anda dilengkapi dengan kapasitor fluks , baterai sepanjang 65 V agak terlalu banyak. Bahkan truk-truk besar tidak menjalankan tegangan setahu saya.
65535 adalah integer 16-bit maks unsigned.
Melihat halaman wiki OBD-II sepertinya rumus yang digunakan oleh OBD-II PID sesuai SAE J1979 adalah:
Di mana A adalah dua byte pertama, B adalah dua byte berikutnya. Jika A dan B keduanya 255 (jadi 11111111 dalam biner), Anda akan mendapatkan voltase maksimum yang mungkin, 65.535 V
Jika hasil ini dari simulator, saya akan menyalahkannya. Jika ini adalah sinyal yang berasal dari kendaraan sungguhan, saya akan mengecek ECU pendek (meskipun tidak yakin). Pastikan Anda memilih alamat yang benar untuk mengesampingkannya sebagai kemungkinan untuk tegangan yang tidak biasa.
Tegangan modul kontrol adalah tegangan yang dipasok ke ECU. Ini bukan tegangan baterai tetapi biasanya cukup dekat ketika kendaraan berjalan.
sumber
Saya pikir apa yang Anda lihat hanyalah artefak dari cara komputer bekerja. Angka yang Anda berikan hanya 65535 dengan desimal yang dimasukkan ke dalamnya. Itu adalah nomor khusus untuk komputer - ini adalah nilai terbesar yang dapat disimpan dalam bilangan bulat 16-bit (2 byte). Jadi, sederhananya, itu adalah nilai terbesar yang dapat dikembalikan untuk pengukuran tertentu karena variabel komputer yang mereka putuskan untuk digunakan. Ini isapan jempol dari pemrograman - mereka tidak berharap untuk pernah mengukur 65 volt. Jika ini adalah nilai yang bisa positif atau negatif, Anda mungkin melihat nilai maksimum 32.767.
Nomor lain yang mungkin Anda lihat banyak adalah 255. Ini adalah nilai maksimum dari nomor yang tidak ditandatangani 8-bit (byte tunggal). Jika nilainya bisa positif atau negatif, nilai maksimalnya adalah 127.
sumber
Ketika mesin menyala, tegangan harus melacak keluaran alternator / regulator tegangan (yang juga merupakan tegangan pengisian baterai). Ketika mesin tidak bekerja, itu akan melacak tegangan baterai.
Saya hanya bisa berspekulasi tentang alasan kisaran tegangan lebar. Output alternator yang tidak diregulasi dapat melebihi 48V, sehingga ini bisa menjadi datum diagnostik yang berguna. Atau, itu mungkin hanya artefak dari pengkodean digital, bahwa rentang nilai melebihi apa yang diperlukan.
sumber
Modul Kontrol Tegangan adalah tegangan baterai, minus setiap volt yang jatuh pada kabel antara baterai dan ECU. 65535 adalah register 16 bit penuh. ECU mungkin akan bekerja dengan angka integer (menghitung lebih cepat) tetapi mengkonversi hasil akhir dari perhitungannya untuk OBD menjadi bentuk 'titik mengambang' atau 'nyata' (angka yang dapat menggunakan titik desimal).
Alasan maksimum tidak 65535, 6553,5 atau 655,35 adalah bahwa dengan titik desimal yang ditempatkan dua dari kiri itu memungkinkan akurasi terbesar dalam tahap perhitungan bilangan bulat sambil memberikan tempat yang cukup di sebelah kiri desimal untuk menampilkan semua nilai yang mungkin. Ini pada dasarnya memungkinkan ECU untuk bekerja ke 3 tempat desimal dalam bilangan bulat. Mungkin tidak terlalu penting untuk tegangan baterai tetapi saya menganggap itu prinsipnya.
Mungkin tidak ada fasilitas untuk secara artifisial menerapkan nilai maksimum kurang dari 65535 tetapi bahkan jika ada saya melihat tidak ada keuntungan melakukannya.
sumber