สารบัญ:
- ขั้นตอนที่ 1: เกี่ยวกับ CAN Bus (และข้อจำกัดความรับผิดชอบ)
- ขั้นตอนที่ 2: แผนภาพการเดินสายไฟ
- ขั้นตอนที่ 3: การเดินสายไฟ OBD Port ไปยัง CAN Board
- ขั้นตอนที่ 4: ฟิวส์ Tap และ DC to DC Converter
วีดีโอ: มาตรวัดรอบ/สแกนด้วย Arduino, OBD2 และ CAN Bus: 8 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:02
เจ้าของ Toyota Prius (หรือรถยนต์ไฮบริด/รุ่นพิเศษอื่นๆ) จะรู้ว่าแผงหน้าปัดของพวกเขาอาจหายไปสองสามหน้าปัด! prius ของฉันไม่มีรอบเครื่องยนต์หรือมาตรวัดอุณหภูมิ หากคุณเป็นคนที่ชอบแสดงความสามารถ คุณอาจต้องการทราบข้อมูลต่างๆ เช่น การกำหนดเวลาล่วงหน้าและข้อมูลเชื้อเพลิงแบบเรียลไทม์ หากคุณเป็นไฮเปอร์มิลเลอร์ คุณอาจต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับการประหยัดน้ำมันเชื้อเพลิงของคุณ
ค่าทั้งหมดเหล่านี้คำนวณโดยคอมพิวเตอร์เครื่องยนต์ของรถคุณ เพียงแค่ใช้เครื่องมือสแกนเพื่ออ่านข้อมูล เจ้าของรถที่อยากรู้อยากเห็นหลายคนหันไปใช้โซลูชันเชิงพาณิชย์ เช่น Scan Gauge พวกเขาอาจใช้ scantool ที่ใช้ ELM327 ผ่าน USB หรือ Bluetooth คู่แข่งที่ได้รับความนิยม ได้แก่ Carista, BlueDriver หรือเครื่องมือสแกนวินิจฉัย ol Innova/Bosch แบบธรรมดา
ฉันต้องการติดตั้งถาวรในรถของฉันด้วยฮาร์ดแวร์เฉพาะ ดังนั้นฉันจึงตัดสินใจเลือกเส้นทางของตัวเอง! ฉันตื่นเต้นที่จะแบ่งปันการออกแบบเครื่องมือสแกนแบบกำหนดเองของฉัน
เสบียง:
สำคัญ -
- บอร์ด Arduino (สามารถใช้ Nano, Teensy, Pro Micro, Uno….) [Amazon]
- Fuse tap+extra fuse (ต้องแน่ใจว่าคุณมีขนาดที่เหมาะสม) [ร้านอะไหล่รถยนต์]
- ตัวเชื่อมต่อ OBD II (ฉันกู้คืนจากเครื่องมือสแกนแบบเก่า) [Amazon]
- CAN บัส MCP2515 โมดูล [Amazon]
- จอแสดงผล OLED (หรือจอแสดงผลอื่นๆ ที่เลือกได้) [Amazon]
- บั๊กคอนเวอร์เตอร์ (หรือสวิตชิ่งอื่นๆ / ตัวควบคุมแรงดันไฟฟ้าเชิงเส้น) [Amazon]
- สายเคเบิลแบบ 4 ตัวนำสำหรับจอแสดงผลของคุณ (ใช้สาย USB แบบเก่า สายแพ ฯลฯ)
- สายจัมเปอร์สำหรับเชื่อมต่อทุกอย่าง
เครื่องมือ -
- โวลต์มิเตอร์
- อุปกรณ์บัดกรี
- เครื่องปอกสายไฟ
มีประโยชน์ -
-
เครื่องพิมพ์ 3 มิติ (หรือการเข้าถึงหนึ่งรายการ) เพื่อสร้างส่วนต่อไปนี้:
- สิ่งที่แนบมาสำหรับ arduino
- ที่ยึดขอบจอ/แผงหน้าปัด
- รัดสำหรับตู้
- กาว
ขั้นตอนที่ 1: เกี่ยวกับ CAN Bus (และข้อจำกัดความรับผิดชอบ)
คุณกำลังเปิดกระป๋องที่ร้ายแรงที่นี่…การยุ่งกับรถของคุณ/รถบัสกระป๋องอาจทำให้เกิดความเสียหายและ/หรือการทำงานโดยไม่ได้ตั้งใจของรถของคุณ! ฉันให้รหัสนี้และคำแนะนำแก่คุณโดยไม่มีการรับประกันหรือการรับประกัน คุณรับความเสี่ยงทั้งหมด ลองสิ่งนี้ในขณะที่รถจอดอยู่ก่อน! โครงการนี้ค่อนข้างปลอดภัยจริง ๆ หากคุณเพียงแค่ค้นคว้าเพียงเล็กน้อยเกี่ยวกับสิ่งที่คุณกำลังทำ หากคุณไม่รู้ว่าคำสั่งหรือรหัสส่วนใดหมายถึงอะไร อาจเป็นสัญญาณว่าคุณไม่ควรไปยุ่งกับระบบไฟฟ้าของรถคุณ! อย่าดำเนินโครงการนี้ ซื้อดองเกิลบลูทู ธ OBD ที่สร้างไว้ล่วงหน้าแล้วใช้สิ่งนั้นแทน ฉันขอให้คุณโชคดี.
ตอนนี้ข้อจำกัดความรับผิดชอบอยู่นอกทาง.. ฟังดูคุ้น ๆ ไหม? อาจคล้ายกับ LAN (Ethernet) หรือ WLAN (WiFi) ที่คุณอาจมีที่บ้าน…นั่นเป็นเพราะพวกเขาเป็นเครือข่ายทั้งหมด CAN ย่อมาจาก Controller Area Network เป็นแพลตฟอร์มการสื่อสารดิจิทัลที่รถของคุณใช้เพื่อพูดคุยกับตัวเอง แทนที่จะเดินสายไฟจากคอมพิวเตอร์เครื่องยนต์ไปยังเซ็นเซอร์ ไฟ และอุปกรณ์แต่ละตัวในรถของคุณ สายไฟทั้งหมดจะถูกควบคุมผ่านเครือข่ายแบบดิจิทัล
CAN บัสเป็นโปรโตคอลการสื่อสารที่แตกต่างกัน นั่นหมายความว่าต้องใช้เพียงสองสายเท่านั้น! ไม่มี Tx/Rx อย่างที่คุณอาจพบในการสื่อสารแบบซีเรียลแบบดั้งเดิม และไม่มีการส่งโดยตรงระหว่างอุปกรณ์สองเครื่อง โดยทั่วไปจะพบเป็นคู่บิดเกลียวในรถของคุณ คุณจะเข้าถึงมันผ่านพอร์ต OBD คุณไม่จำเป็นต้องเข้าใจว่าโปรโตคอลนี้ทำงานอย่างไรในระดับพื้นฐาน แต่คุณต้องเข้าใจมากพอจึงจะสามารถเขียนหรือแก้ไขโค้ด Arduino ได้
หากคุณต้องการติดตามโครงการนี้ ตรวจสอบให้แน่ใจว่ารถของคุณมี CAN bus! รถเกือบทุกคันบนท้องถนนในปัจจุบันมีพอร์ต OBD II ทั้งหมดมีขั้วต่อไฟฟ้าเหมือนกันใต้แผงหน้าปัด อย่างไรก็ตาม มีโปรโตคอลที่แตกต่างกันอย่างมากสำหรับการสื่อสารตามผู้ผลิตรถยนต์ของคุณ รถทุกคันที่ขายในสหรัฐอเมริกาหลังปี 2008 ใช้บัส ISO 15765 CAN นั่นคือสิ่งที่เราต้องการใช้สำหรับโครงการนี้ ตรวจสอบเพื่อให้แน่ใจว่ารถของคุณมี CAN บัส โปรดทราบว่ารถทุกคันมีเอกลักษณ์เฉพาะตัว คุณจะมีความเร็วบัส CAN เฉพาะ รหัส OBD บางอย่างที่คุณต้องร้องขอ และนิสัยใจคอเบ็ดเตล็ดที่คุณต้องบรรเทาระหว่างทาง
ขั้นตอนที่ 2: แผนภาพการเดินสายไฟ
ตอนนี้เป็นเวลาที่จะเริ่มวางแผนตู้และการติดตั้งของคุณ รถของฉันมีกล่องฟิวส์อยู่ที่ฝากระโปรงหน้า และอีกกล่องหนึ่งอยู่ใต้แผงหน้าปัด ของคุณอยู่ที่ไหน ถึงเวลาเริ่มคิด
ฉันใช้ฟิวส์ที่วงจรที่ปัดน้ำฝนเนื่องจาก Prius ของฉันมีหลายวงจรที่หลอมละลายอยู่ติดกับพอร์ต OBD คุณสามารถใช้ Vbatt บนพอร์ต OBD ได้ แต่ระวัง! ที่ติดอยู่กับแบตเตอรี่ ดังนั้นเครื่องจะไม่ปิด ความคิดที่ไม่ดี ขึ้นอยู่กับวาดปัจจุบันของ Arduino มันอาจฆ่าแบตเตอรี่ของคุณในเวลาไม่กี่วันหรือสัปดาห์ถ้าคุณปล่อยให้รถนั่ง! หากคุณกำลังใช้จอแสดงผล OLED คุณอาจประสบปัญหาการเบิร์นอินมากเกินไปหากอุปกรณ์ของคุณเปิดอยู่ตลอดเวลา การเปลี่ยนอุปกรณ์เป็นการจุดระเบิดเป็นสิ่งสำคัญมาก
คุณอาจมีทางออกที่ง่าย! คุณอาจมีรถยนต์ที่มีพินไฟ ACC/จุดระเบิดบนพอร์ต OBD หมุดจำนวนมากเป็นแบบเฉพาะของผู้ผลิต นั่นหมายความว่าพอร์ต OBD ของคุณอาจมีพินเพาเวอร์ที่เปลี่ยนเป็นสวิตช์กุญแจ อย่างไรก็ตาม อย่าเพิ่งลองใช้มัลติมิเตอร์และต่อ Arduino กับอะไรก็ได้ที่มีไฟ 12 โวลต์! รถของคุณอาจมี J1699 หรือบัสอนุกรมอื่นๆ ที่ใช้ระดับลอจิก 12v ใครจะรู้ว่างวดปัจจุบันจะทำอะไร! ตรวจสอบกับออสซิลลิสโคปเพื่อให้แน่ใจว่า "แหล่งจ่ายไฟ 12 โวลต์" ของคุณเป็นแหล่งจ่ายไฟ DC ที่เสถียร ไม่ใช่สัญญาณ ก่อนที่คุณจะต่อไฟ Arduino เข้ากับพินอื่นๆ นอกเหนือจากแบตต์บนพอร์ต OBD
ขั้นตอนที่ 3: การเดินสายไฟ OBD Port ไปยัง CAN Board
ดูที่พินสำหรับพอร์ต OBD ของคุณสำหรับ CAN Low และ CAN High เชื่อมต่อสายเหล่านั้นกับสูงและต่ำบนบอร์ดของคุณ
ตอนนี้ใช้กราวด์จากพอร์ต OBD ของคุณเป็นพื้นฐานสำหรับโครงการนี้! เชื่อมต่อสายกราวด์ทั้งหมดเข้าด้วยกัน และตรวจสอบให้แน่ใจว่าได้ต่อสายดินเข้ากับพอร์ต OBD นี้
เราจะมุ่งเน้นไปที่ส่วนต่อประสาน SPI ของบอร์ด CAN ที่เหลือในไม่กี่ขั้นตอน
ขั้นตอนที่ 4: ฟิวส์ Tap และ DC to DC Converter
อย่าข้ามตัวแปลง DC step-down! ฉันตั้งใจทำลายโครงการนี้ไปแล้วครั้งหนึ่งเพราะฉันตัดสินใจว่าจะเรียกใช้ Arduino จาก 12 โวลต์จากกล่องฟิวส์ ฉันคิดว่ามีไฟกระชากจากตัวเหนี่ยวนำที่ไหนสักแห่ง (Arduino ติดอยู่กับฟิวส์เดียวกันกับมอเตอร์ปัดน้ำฝนกระจกหน้ารถ) และมันทอดนาโนของฉัน
แนะนำ:
แฮ็กรถของคุณด้วย Wio Terminal และ CAN Bus: 7 ขั้นตอน
แฮ็กรถของคุณด้วย Wio Terminal และ CAN Bus: หากคุณมีความเข้าใจเกี่ยวกับการเขียนโปรแกรม CAN Bus และ Arduino และต้องการแฮ็กรถของคุณ คำแนะนำนี้สามารถให้วิธีแก้ปัญหาแก่คุณได้ สำหรับสาเหตุที่คุณต้องการแฮ็กรถของคุณ ฉัน ไม่รู้สิ แต่นี่เป็นสิ่งที่น่าสนใจจริงๆ โปรนี้
กุญแจพวงมาลัยไปยังอะแดปเตอร์สเตอริโอในรถยนต์ (CAN Bus -> Key1): 6 ขั้นตอน
กุญแจพวงมาลัยเป็นอะแดปเตอร์สเตอริโอในรถยนต์ (CAN Bus -> Key1): ไม่กี่วันหลังจากซื้อรถมือสอง ฉันพบว่าไม่สามารถเล่นเพลงจากโทรศัพท์ผ่านสเตอริโอในรถยนต์ได้ สิ่งที่น่าผิดหวังยิ่งกว่านั้นคือรถมีบลูทูธ แต่อนุญาตเฉพาะการโทรด้วยเสียง ไม่สามารถใช้เพลงได้ มีพอร์ต USB ของ Windows Phone ด้วย แต่ฉัน
วิธีถอดรหัสข้อมูล CAN Bus ของยานพาหนะ: 8 ขั้นตอน
วิธีถอดรหัสข้อมูลบัส CAN ของยานพาหนะ: ในคำแนะนำนี้ เราจะบันทึกข้อมูลบัส CAN ของรถยนต์หรือรถบรรทุกและแปลงข้อมูลบันทึกบัส CAN ที่บันทึกไว้เป็นค่าที่อ่านได้ สำหรับการถอดรหัส เราจะใช้บริการคลาวด์ can2sky.com ซึ่งฟรี เราสามารถบันทึกล็อกด้วยอแดปเตอร์ CAN-USB แต่จ่ายอาต
DragonBoard และ OBD2: 12 ขั้นตอน
DragonBoard และ OBD2: การอ่านข้อมูลที่ออกมาจากพอร์ต OBD2 ในรถของคุณ เป็นไปได้ที่จะรวบรวมข้อมูลที่น่าทึ่งจากมัน เราใช้ DragonBoard 410c ในโครงการนี้และให้รายละเอียดที่นี่เพื่อให้คุณทำเองได้ โครงการนี้เป็นไปได้เท่านั้น
Seeed Studio CAN-BUS V2.0 แฮ็ค - เริ่มต้นใช้งาน: 5 ขั้นตอน
Seeed Studio CAN-BUS V2.0 การแฮ็ก - เริ่มต้นใช้งาน: คำแนะนำนี้มีไว้สำหรับผู้เริ่มต้นที่รู้จัก Arduino แล้ว การเริ่มต้นรู้วิธีดำเนินการอยู่เสมอเป็นเรื่องที่เจ็บปวดและใช้เวลานานในทุกโครงการ แต่จนกว่าคุณจะรู้เส้นทางรอบตัวคุณ แทบอยากจะมีใครสักคนคอยปลอบ