แรงดันไฟฟ้าของโมดูลควบคุมและแรงดันไฟฟ้าของแบตเตอรี่เหมือนกันหรือไม่


8

แรงดันไฟฟ้าของโมดูลควบคุม (จาก OBD Mode 01 PID 42) และแรงดันไฟฟ้าของแบตเตอรี่เท่ากันหรือไม่ ถ้าไม่ความสัมพันธ์ระหว่างพวกเขาคืออะไร? ทำไมค่าสูงสุดของแรงดันไฟฟ้าของโมดูลควบคุม (จาก OBD Mode 01 PID 42) เป็น 65.535 V เมื่อแรงดันแบตเตอรี่สูงสุดที่ 14 โวลต์ในรถยนต์


เพื่อความกระจ่าง: คุณได้รับการอ่าน 65.535V จริง ๆหรือแค่สงสัยว่าทำไมการอ่านที่เป็นไปได้สูงสุดคือตัวเลขนั้น
user253751

1
หากเป็นค่าสูงสุด 99.999 การให้เหตุผลจะค่อนข้างชัดเจน (5 หลักด้วยจุดทศนิยมหลังจากวินาทีที่สอง) 65535 อยู่ในเลขฐานสองสิ่งที่ 99999 เป็นทศนิยม
253751

คำตอบ:


9

ดูเหมือนว่าปัญหาจะเกิดขึ้นกับสัญญาณที่เข้ามา

หากยานพาหนะของคุณติดตั้งตัวเก็บประจุแบบฟลักซ์ 65 V ในแบตเตอรี่จะน้อยเกินไป แม้แต่รถบรรทุกหนักก็ไม่สามารถใช้แรงดันไฟฟ้านั้นเพื่อความรู้ของฉัน

65535 เป็นจำนวนเต็ม 16 บิตสูงสุดที่ไม่ได้ลงนาม

ดูหน้า wiki OBD-IIดูเหมือนว่าสูตรที่ใช้โดย OBD-II PID ตาม SAE J1979 คือ:

( A * 256 + B ) / 1000

โดยที่ A คือสองไบต์แรก B คือสองไบต์ถัดไป ถ้า A และ B ทั้ง 255 (เช่น 11111111 ในรูปของไบนารี่) คุณจะได้แรงดันไฟฟ้าสูงสุดที่เป็นไปได้คือ 65.535 V


หากผลลัพธ์นี้มาจากเครื่องจำลองฉันจะติดโทษที่นั่น หากนี่เป็นสัญญาณที่มาจากยานพาหนะจริงฉันจะตรวจสอบ ECU สั้น ๆ (ไม่แน่ใจ) ตรวจสอบให้แน่ใจว่าคุณกำลังสำรวจที่อยู่ที่ถูกต้องเพื่อแยกแยะว่าเป็นไปได้สำหรับแรงดันไฟฟ้าผิดปกติ

แรงดันไฟฟ้าของโมดูลควบคุมคือแรงดันไฟฟ้าที่จ่ายให้แก่ ECU มันไม่ได้เป็นแรงดันไฟฟ้าของแบตเตอรี่ แต่มักจะปิดพอเมื่อรถวิ่ง


1
ไม่เหมือนซอฟต์แวร์ยานยนต์เป็นสิ่งที่ดีที่จะเริ่มต้นด้วย นี่คือการตอบสนองที่ยอดเยี่ยมโดยวิธีการ :)
แข่งไข้

6

ฉันคิดว่าสิ่งที่คุณเห็นเป็นเพียงสิ่งประดิษฐ์ของวิธีการทำงานของคอมพิวเตอร์ จำนวนที่คุณให้คือ 65535 โดยใส่ทศนิยมลงไป นั่นคือหมายเลขพิเศษสำหรับคอมพิวเตอร์ - เป็นค่าที่ใหญ่ที่สุดที่สามารถเก็บไว้ในจำนวนเต็ม 16 บิต (2 ไบต์) นั่นคือค่าที่มากที่สุดที่สามารถคืนได้สำหรับการวัดนั้นโดยเฉพาะเนื่องจากตัวแปรคอมพิวเตอร์ที่พวกเขาตัดสินใจใช้ มันคือความคิดของการเขียนโปรแกรม - พวกเขาไม่คาดหวังให้วัด 65 โวลต์ หากนี่เป็นค่าที่อาจเป็นบวกหรือลบคุณอาจเห็นค่าสูงสุด 32,767

หมายเลขอื่นที่คุณอาจเห็นมากคือ 255 นี่เป็นค่าสูงสุดของตัวเลขที่ไม่มีเครื่องหมาย 8 บิต (ไบต์เดียว) หากค่าสามารถเป็นบวกหรือลบได้ค่าสูงสุดคือ 127


ดูคำตอบของฉัน ฉันคิดว่าฉันเข้าสู่บางสิ่งบางอย่าง ...
Zaid

โดยปกติ 12 7จะเป็นค่าสูงสุดของจำนวนเต็ม 8 บิตที่ได้รับการเซ็นชื่อ
user253751

@ กลไกคุณได้รับฉัน - ฉันมี "เซ็น" ในหัวของฉันและคิด -128 ขอบคุณ
JPhi1618

1

เมื่อเครื่องยนต์ทำงานแรงดันไฟฟ้าควรติดตามเอาท์พุทเครื่องกำเนิดไฟฟ้ากระแสสลับ / แรงดันไฟฟ้า (ซึ่งเป็นแรงดันชาร์จแบตเตอรี่) เมื่อเครื่องยนต์ไม่ทำงานก็จะติดตามแรงดันแบตเตอรี่

ฉันสามารถเก็งกำไรเฉพาะเหตุผลสำหรับช่วงแรงดันไฟฟ้ากว้าง เอาต์พุตอัลเทอร์เนเตอร์ที่ไม่ได้ควบคุมสามารถเกิน 48V ได้ดังนั้นจึงอาจเป็นข้อมูลวินิจฉัยที่มีประโยชน์ หรืออาจเป็นเพียงสิ่งประดิษฐ์ของการเข้ารหัสดิจิทัลซึ่งช่วงค่าเกินกว่าที่จำเป็น


1
หาก CMV ถึง 65 + vdc การติดตามแรงดันไฟฟ้ากระแสสลับเป็นอย่างไร นั่นจะทำให้แบตเตอรี่หมดในเวลาไม่นาน ยานพาหนะที่ใช้งานส่วนใหญ่ควรอ่านที่เครื่องกำเนิดไฟฟ้ากระแสสลับคือ ~ 14vdc อะไรก็ตามที่ผ่านมามากเกินไปและมันคือลาก่อนแบตเตอรี่
Pᴀᴜʟsᴛᴇʀ2

@ Paulster2 ฉันได้อัปเดตคำตอบเพื่อตอบคำถามของคุณแล้ว
kmarsh

1

แรงดันไฟฟ้าของโมดูลควบคุมคือแรงดันแบตเตอรี่ลบโวลต์ใด ๆ ที่หล่นในการเดินสายระหว่างแบตเตอรี่และ ECU 65535 เป็นทะเบียน 16 บิตเต็ม ECU อาจทำงานกับตัวเลขจำนวนเต็ม (คำนวณเร็วกว่า) แต่แปลงผลลัพธ์สุดท้ายของการคำนวณสำหรับ OBD เป็น 'ทศนิยม' หรือฟอร์ม 'จริง' (ตัวเลขที่สามารถใช้จุดทศนิยม)

เหตุผลสูงสุดไม่ได้เป็น 65535, 6553.5 หรือ 655.35 นั่นคือด้วยจุดทศนิยมที่อยู่ทางซ้ายสองตำแหน่งจะให้ความแม่นยำสูงสุดในขั้นตอนการคำนวณจำนวนเต็มในขณะที่ให้ตำแหน่งที่อยู่ทางซ้ายของทศนิยมเพียงพอที่จะแสดงค่าที่เป็นไปได้ทั้งหมด มันช่วยให้ ECU ทำงานเป็นทศนิยม 3 ตำแหน่งในจำนวนเต็ม อาจไม่สำคัญสำหรับแรงดันแบตเตอรี่ แต่ฉันคิดว่านั่นเป็นหลักการ

อาจไม่เคยมีสิ่งอำนวยความสะดวกในการใช้ค่าสูงสุดเทียมน้อยกว่า 65535 แต่แม้ว่าฉันจะไม่เห็นประโยชน์ที่จะทำเช่นนั้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.