Shutdown Controller สำหรับ Raspberry Pi ในรถยนต์


14

จากคำถามก่อนหน้านี้ฉันพยายามสร้างตัวควบคุมการปิดสำหรับ Raspberry Pi ของฉัน Raspberry Pi ต้องใช้พลังงานจากแบตเตอรี่ แต่ควรปิดเครื่องหลังจาก Pi ตรวจพบว่ามีการปิดสวิตช์กุญแจ

Pi จะใช้ฟีด 3.3V จากสาย ACC (ฉันมีส่วนประกอบอื่น ๆ ที่จะใช้ 5V จากสาย ACC ผ่าน 7805 ดังนั้นฉันจะลงไปที่ 3.3V โดยใช้ตัวแบ่งแรงดันไฟฟ้าเว้นแต่ว่าใครมีคำแนะนำที่ดีกว่า - จะต้องขับรถ uPD6708 ซึ่งใช้ 5V CMOS I / O ดังนั้นจะต้องลดระดับจาก 5V เป็น 3.3V อีก 2 บรรทัด)

ซอฟต์แวร์ที่ทำงานใน RPi จะตั้งค่าหนึ่งในพิน GPIO สูงซึ่งสันนิษฐานว่าเมื่อ RPi ปิดตัวลงพิน GPIO จะลดลงทั้งหมด ดังนั้น Q1 ควรเปิดรีเลย์โดยให้ RPI เปิดเครื่องตราบใดที่สวิตช์กุญแจติดอยู่หรือ GPIO สูง

ฉันมีชุดฟิวส์ 3 ชุดที่มีฝา 1000uF และหม้อแปลง / ตัวเหนี่ยวนำบางชนิดดังนั้นฉันอาจใช้หนึ่งชุดกับแบตเตอรี่ 12V และอุปกรณ์เสริม 12V แต่ละเส้น

ตัวควบคุมการปิดระบบนี้อ้างว่าจะดึงได้เพียง 50uA ในโหมดแสตนด์บาย - ถ้าฉันใช้เกต CMOS 4071 หรือเกทที่จะเป็นการเริ่มต้น แต่จากสิ่งที่ฉันได้อ่านคุณจะต้องใช้กระแสไฟเพิ่มเติมจากเกต OR เพื่อทำให้ทรานซิสเตอร์อิ่มตัว - ถูกต้อง?

จำไว้ว่าฉันจำเป็นต้องเลื่อนระดับ 5 บรรทัดจาก 3.3V เป็น 5V และ 2 จาก 5V เป็น 3.3V นอกเหนือจากข้อกำหนดของวงจรย่อยนี้ทุกคนสามารถแนะนำส่วนประกอบ / ทางเลือกสำหรับ OR1, Q1, RLY1 และ / หรือ การดัดแปลงใด ๆ

แผนผัง

จำลองวงจรนี้ - แผนผังที่สร้างโดยใช้CircuitLab

นี่คือความพยายามของฉันที่จะทำตามคำแนะนำของ @Connor Wolf

  • ต้องเลือก R1 และ C3 เพื่อให้ RPi ปิดเครื่องอย่างถูกต้อง
  • ฉันได้เพิ่ม C1 เพราะฉันคิดว่าจะใช้เวลาสักครู่ก่อนที่สวิตช์รีเลย์จะปิดหลังจากการจุดระเบิดถูกปิด - ฉันไม่รู้เลยว่ามันนานแค่ไหน แต่ฉันคิดว่า RPi จะวาดประมาณ 700mA จาก ตัวเก็บประจุนอกเหนือจาก 555 และรีเลย์

แผนผัง

จำลองวงจรนี้

@Nick แนะนำว่ามันอาจจะง่ายกว่า - แบบนี้บางที? ฉันพยายามที่จะถอดไดโอดออกเพื่อที่ฉันจะได้ใช้แหล่งจ่ายไฟ USB 12V-5V 1A แบบ off-the-shelf (หรือเป็นคู่) แผ่นข้อมูล 555 บอกว่ามันออก 3.3V (100mA แหล่งสูงสุด? หน้านี้บอก 200mA) RPi จะอ่านค่าสาย ACC ที่ 3.3V เพื่อพิจารณาว่าจะปิดเมื่อใด

แผนผัง

จำลองวงจรนี้


1
7805 ของคุณกำลังจะร้อนแรงจริงๆเมื่อคุณวาดวงจร ด้วย 700 mA ของราสเบอร์รี่ pi, ที่ vDrop ของคุณของ 7V (12v-5v), คุณกำลังจะกระจาย4.9 วัตต์ (7V * 0.7A) ในเร็กกูเลเตอร์ คุณจริงๆต้องดูเป็น DC-DC สำหรับว่า
Connor Wolf

1
นอกจากนี้ "ชุดฟิวส์" ของคุณถูกวาดอย่างไม่ถูกต้อง ตอนนี้ไดโอดย่ออินพุต 12V และตัวนำกระแสไฟฟ้าไม่ได้ทำอะไรเลย ฉันเดาว่าตัวเหนี่ยวนำอยู่ในอนุกรมกับสายไฟและไดโอดเป็นวิธีอื่น ๆ (ซึ่งจะช่วยป้องกันการป้อนกลับแบบไบอัส)
Connor Wolf

2
ตัวแบ่งแรงดันไม่ได้เป็นวิธีที่ดีในการเปิดปิดสิ่งใด ๆ เพียงแค่ใช้ตัวควบคุมบางอย่างพวกมันถูกและอุดมสมบูรณ์พอ
John U

@ConnorWolf ฉันมี 7805CT ซึ่งได้รับการจัดอันดับที่ 1A ... มันใช้ได้เฉพาะถ้าคุณลงจาก 6V ถึง 5V หรือไม่ เมื่อฉัน Google สำหรับตัวแปลง DC-DC ผลการค้นหาจำนวนมากพูดถึง 7805 เว้นแต่ว่าตัวแปลง DC-DC จะส่งออก 5.7VI คิดว่าฉันต้องสลับ D2 และ D3 สำหรับไดโอด schottky ด้วยแรงดันไฟฟ้าที่น้อยกว่า 0.25V
Nicholas Albion

@NicholasAlbion - ฉันไม่ได้บอกว่ามันใช้งานไม่ได้แค่ว่าคุณจะต้องใช้ฮีทซิงค์ขนาดใหญ่มากหรือพัดลม / ฮีทซิงค์ขนาดเล็กลงเพื่อให้มันเย็นอย่างเหมาะสม
Connor Wolf

คำตอบ:


8

ในขณะที่ใช้วงจรจับเวลาแบบ one-shot จะทำงานได้ฉันคิดว่าสามารถใช้วิธีแก้ปัญหาได้ง่ายขึ้น ลองดูวงจรนี้

ป้อนคำอธิบายรูปภาพที่นี่

สำหรับการชี้แจง "VBAT" เป็นแหล่งจ่ายไฟ 12V ที่เปิดอยู่ตลอดเวลาตราบเท่าที่แบตเตอรี่เชื่อมต่ออยู่ อย่างไรก็ตาม "ACC" เป็นแหล่งจ่ายไฟ 12V ที่เปิดเฉพาะเมื่อสวิตช์กุญแจติดอยู่หรือตั้งค่าคีย์เป็น "อุปกรณ์เสริม" แทนที่จะใช้รีเลย์ 5V เพียงเพื่อควบคุมพลังงานไปยัง RPi ทำไมไม่ใช้รีเลย์อัตโนมัติ 12V มาตรฐานดังที่แสดง วิธีนี้จะไม่มีการสูญเสียพลังงาน (ยกเว้นกระแสคอยล์ขณะเปิดเครื่อง) เพราะทุกอย่างจะถูกตัดการเชื่อมต่อจากแบตเตอรี่

ขดลวดด้านหนึ่งเชื่อมต่อกับ 12V เสมอ ฝั่งตรงข้ามเชื่อมต่อกับกราวด์ (แชสซี) ผ่าน N-Channel FET (Q1) ในขณะที่ใช้ MOSFET ในแผนภาพ FET ใด ๆ ที่มีความสามารถในการจมกระแสคอยล์สามารถใช้งานได้ เมื่อเปิด "ACC" ไว้ Q1 จะเปิดการเชื่อมต่อคอยล์เข้ากับกราวด์และกระตุ้นสวิตช์ สิ่งนี้จะเป็นการเพิ่มพลังงานให้กับวงจรควบคุม 5V ที่คุณวางแผนจะใช้ (ตัวควบคุม 7805 แบบง่าย ๆ กับฮีทซิงค์, ตัวแปลง DC-DC, อุปกรณ์ USB ที่กล่าวถึง ฯลฯ )

ไดโอด D2 อยู่ที่นั่นเพื่อให้แน่ใจว่าตัวเก็บประจุสามารถปล่อยลงใน Q1 และสามารถปกติหรือ Shottky อาจใช้วิธีอื่นในการป้องกันแรงดันไฟเกินและกระแสไฟฟ้าจากแบตเตอรี่

แรงดันไฟฟ้า "ACC" สามารถใส่ผ่านตัวแบ่งแรงดันเพื่อสร้างสัญญาณ 3.3V สำหรับ RPi ระวังระดับแรงดันไฟฟ้านี้ด้วยการพิจารณาว่าแบตเตอรี่รถยนต์แบบ 12V สามารถมีขนาดได้มากกว่าเช่น 14V DC ตราบใดที่สัญญาณนี้เป็น HI, RPi จะรู้ว่ากำลังเปิดอยู่ เห็นได้ชัดว่าควรตั้งพิน GPIO นี้เป็นอินพุตเมื่อปิดการใช้งานพูลอัพ เมื่อปิด "ACC" RPi ควรเห็นสัญญาณ LO ที่ขาและเริ่มการปิดเครื่อง

เมื่อแรงดันไฟฟ้า "ACC" ถูกปิดตัวเก็บประจุ C1 จะเก็บประจุไว้เป็นเวลานานโดยปล่อยผ่านตัวต้านทาน R1 เมื่อแรงดันของตัวเก็บประจุลดลงต่ำกว่าเกณฑ์เกตของ Q1 มันจะปิดการตัดการเชื่อมต่อขดลวดรีเลย์ออกจากกราวด์และถอดพลังงานออกจากวงจรต่อพ่วง หากใช้ "ระดับตรรกะ MOSFET" สำหรับ Q1 มันจะยังคงเปิดอยู่จนกระทั่งแรงดัน C1 ค่อนข้างต่ำ ฉันทดสอบวงจรนี้โดยใช้ NTD4960 ( แผ่นข้อมูล ) และมันยังคงอยู่ประมาณ 15 วินาที - จนกระทั่ง C1 มีค่าประมาณ 2V เพื่อเพิ่มเวลาให้เพิ่มค่าความจุ


ฉันจะเลือก FET ที่เหมาะสมได้อย่างไร ฉันมีรีเลย์ 12V แล้ว - 621D012 (270ohm -> 44mA) แคตตาล็อก Jaycarออนไลน์แสดงรายการต่อไปนี้: 2N7000, PN100, VN10KM, IRF540N, IRF1405 และอื่น ๆ
Nicholas Albion

1
ฉันเชื่อว่า 2N7000 จะเป็นตัวเลือกที่ดี แต่นี่คือสิ่งที่คุณกำลังมองหา ... ประเภท: N Channel FET (ไม่ใช่ NPN BJT); ไปข้างหน้าปัจจุบัน (I_d): อย่างน้อย 100mA - (สองเท่าของ 44mA); แรงดันเกตเกต (V_gs หรือ V_gth): ไม่เกิน 3V; ความจุของ Gate: ไม่สำคัญหรอกเราใส่ภายนอกมากขึ้น! ความต้านทาน "ON" (R_ds): ต่ำดี แต่การกระจายพลังงานของคุณจะต่ำ กำลังงานสูญเสีย (P_d): 44mA ^ 2 * R_ds << อย่างน้อยสองเท่านี้
Kurt E. Clothier

สามารถซื้อเป็นร้านค้าได้หรือไม่? ฉันพยายามทำเช่นเดียวกันกับ OP แต่ฉันไม่ได้คิดว่าจะสร้างวงจรของตัวเองได้อย่างไร มีร้านค้าใดที่ซื้อโซลูชันนี้หรือไม่?
John Demetriou

2

สุจริตฉันคิดว่าคุณคิดมากเรื่องนี้มาก

โดยส่วนตัวแล้วฉันจะใช้การยิงครั้งเดียวด้วยระยะเวลาหนึ่งหรือสองนาทีซึ่งถูกกระตุ้นโดยรถที่ถูกปิด

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

ข้อได้เปรียบที่ยิ่งใหญ่ที่สุดของระบบเช่นนี้คือเมื่อซอฟต์แวร์ของคุณล่ม (เมื่อไม่ใช่ถ้า) มันจะยังคงปิดการทำงานต่อไปดังนั้นคุณจะไม่ปิดท้ายด้วยแบตเตอรี่ที่ไม่ทำงาน การยิงครั้งเดียวน่าจะง่ายมาก ๆ คุณสามารถใช้ 555 หรือไมโครโปรเซสเซอร์เล็กน้อย (เช่น Olin จะแนะนำ)
สิ่งที่ดีอีกอย่างก็คือถ้าคุณออกแบบอย่างเหมาะสมระบบสามารถตัดการเชื่อมต่อตัวเองออกจากแบตเตอรี่รถยนต์เพื่อให้แน่ใจว่าการจับกระแสไฟนิ่งเป็น 0 อย่างแน่นอน


ฟังดูดี - มันเป็นยังไงบ้าง?
นิโคลัสอัลเบียน

ฟังดูคล้ายกับวงจรที่ใช้เปิดไฟเมื่อเปิดประตูรถ จากหน่วยความจำตัวเก็บประจุจะถูกชาร์จเป็น 12V และเก็บบน FET หรือที่คล้ายกัน ถอดปลั๊กออกและปล่อยพลังงานออกอย่างช้าๆจนกว่าจะปิด FET
Alan Campbell

RPi วาด 5V ที่ประมาณ 700mA และฉันคิดว่าฉันต้องใช้เวลาประมาณ 10 วินาทีในการปิดเครื่อง การใช้ตัวเก็บประจุเป็นความคิดแรกของฉัน แต่ที่จะเกี่ยวข้องกับการประมาณ $ 100 มูลค่าของตัวเก็บประจุ
นิโคลัสอัลเบียน

@NicholasAlbion หมวกจะไม่ถูกใช้เพื่อให้พลังงานโดยตรงกับ Pi แต่เป็นแรงดันเกตไปที่ FET (ซึ่งจะควบคุมรีเลย์) ความต้านทานประตูของ FET นั้นสูงมากดังนั้นคุณไม่จำเป็นต้องมีฝาปิดขนาดใหญ่ในการใช้เวลา 10 วินาที
Pentium100

0

วิธีการหน่วงเวลาคงที่ใด ๆ ได้รับผลกระทบจากปัญหาการไม่ทราบว่า RPi ต้องใช้เวลานานเท่าใดในการปิดระบบ มันจะเป็นการดีกว่าถ้าคุณกดปุ่มที่ส่งสัญญาณ Pi เพื่อปิดเครื่องจากนั้นสามารถทำสิ่งที่จำเป็นสำหรับการปิดระบบอย่างเป็นระเบียบใช้เวลานานเท่าที่จำเป็นจากนั้นออกสัญญาณ GPIO กลับไปที่วงจรปุ่มกดที่ปิดการทำงาน อำนาจ นั่นทำให้ RPi มีเวลามากเท่าที่จำเป็นในการทำสิ่งต่าง ๆ เช่นปิดการ์ด SD อย่างปลอดภัย วงจรไม่จำเป็นต้องซับซ้อนเกินไป คุณสามารถดูวงจรง่ายๆได้ที่

http://www.mosaic-industries.com/embedded-systems/microcontroller-projects/raspberry-pi/on-off-power-controller

เว็บไซต์อธิบายการทำงานของวงจร


คุณให้คะแนนที่ดีแม้ว่าฉันจะไม่คิดว่ามีใครต้องการที่จะผ่านกระบวนการดังกล่าวทุกครั้งที่พวกเขาปิดรถ มันจะเหมาะสมกว่าสำหรับ RPi ที่จะรับรู้ถึงการปิดโดยการตรวจสอบแรงดันไฟฟ้าของสาย ACC (เฉพาะเมื่อเปิดรถ) จากนั้นฆ่าพลังของตัวเองจากสาย "เสมอ" บน 12V เมื่อพร้อมที่จะทำเช่นนั้น - ระบบอัตโนมัติ
Kurt E. Clothier

-2

ใช้แบตเตอรี่แบบชาร์จไฟขนาด AA 4 ก้อน ใช้พลังงาน Pi จากพวกเขาและให้พวกเขาชาร์จแบตเตอรี่รถยนต์

ใช้ 1 GPIO เพื่อบอก Pi ว่าสวิตช์เปิดหรือปิดอยู่

ปิดเครื่องเมื่อพร้อม


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