สารบัญ:

โมดูลควบคุมสวิตช์ Raspberry Pi ATX PSU: 3 ขั้นตอน
โมดูลควบคุมสวิตช์ Raspberry Pi ATX PSU: 3 ขั้นตอน

วีดีโอ: โมดูลควบคุมสวิตช์ Raspberry Pi ATX PSU: 3 ขั้นตอน

วีดีโอ: โมดูลควบคุมสวิตช์ Raspberry Pi ATX PSU: 3 ขั้นตอน
วีดีโอ: How To Control A Solenoid With A Raspberry Pi Using a Relay 2024, ธันวาคม
Anonim
โมดูลควบคุมสวิตช์ Raspberry Pi ATX PSU
โมดูลควบคุมสวิตช์ Raspberry Pi ATX PSU

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

บทช่วยสอนนี้ได้รับการพัฒนาโดย sitelec.org

ขั้นตอนที่ 1: การนำเสนอตามหน้าที่

การนำเสนอผลงาน
การนำเสนอผลงาน

ด้านล่างนี้เป็นรายละเอียดขั้นตอนการทำงานของวงจร

โปรดดูแผนผังและแผนภาพจำลองที่แนบมา:

X: 2s / div, Y: 0.5v / divATX_PS-ON (สีเหลือง) (วัด)PWR_SW (reg) (การจำลอง)RPI_GPIO (สีน้ำเงิน) (วัด) RPI_UART0-TXD (สีเขียว) (การจำลอง)

เปิดเครื่อง

วงจรนี้ทำงานบนพิน ATX_PS-ON ATX PSU เพื่อเปิดหรือปิดเครื่อง โดยค่าเริ่มต้น พินนี้ถูกตั้งค่าเป็น 5V ซึ่งหมายความว่า PSU หยุดทำงาน ในการเปิด PSU วงจรต้องตั้ง ATX_PS-ON ไว้ที่พื้น เมื่อกดปุ่ม ทรานซิสเตอร์ Q2 จะตั้งค่า ATX_PS-ON ไปที่พื้น ซึ่งจะกระตุ้นการเปิด PSU และการเริ่มต้น RaspberryPi

ระบบกำลังทำงาน

เมื่อเริ่มต้น RaspberryPi ตั้งค่าพิน RPI_UART0-TXD เป็น 3.3V โดยทำงานบนทรานซิสเตอร์ Q1 ซึ่งทำให้ PSU ทำงานโดยทำให้ ATX_PS-ON อยู่กับพื้น อย่างไรก็ตาม อาจใช้เวลาสักครู่ก่อนที่ RPI_UART0-TXD จะเปลี่ยนเป็น 3.3V (2.6 วินาทีใน RaspberryPi 3) วงจรย่อย RC บนฐาน Q2 ได้รับการออกแบบมาเพื่อรักษาความอิ่มตัวของทรานซิสเตอร์ให้มีเวลาเพียงพอ ตัวเก็บประจุ C1 ดูดซับความผันแปรของแรงดันไฟฟ้าบนพิน RPI_UART0-TXD ซึ่งมีประโยชน์หากใช้ RaspberryPi UART เนื่องจากช่วยให้ระบบทำงานต่อไป

การปิดระบบ

ซอฟต์แวร์บน RaspberryPi ตรวจพบการกดบนปุ่มกดใหม่โดยการอ่านพิน GPIO อินพุต จากนั้นจึงปิดระบบได้ เมื่อ RaspberryPi หยุดทำงาน PCB ของมันจะยังคงได้รับพลังงาน แต่พิน RPI_UART0-TXD จะลงไปที่พื้น จากนั้น Q1 จะถูกตัดออกและ PSU จะหยุดทำงาน

ขั้นตอนที่ 2: การตั้งค่า RaspberryPi

ตั้งค่าพิน RPI_UART0-TXD เป็น 3.3V ขณะทำงาน

ผ่านไคลเอนต์ SSH เข้าสู่ระบบบน RaspberryPi ของคุณ

ขั้นแรก กำหนดค่า RaspberryPi ให้ตั้งค่า RPI_UART0-TXD เป็น 3.3V ขณะทำงาน เพื่อให้ PSU ทำงานต่อไป ในการดำเนินการนี้ ให้แก้ไข /boot/config.txt และเพิ่มในตอนท้าย:

enable_uart=1

RaspberryPi หยุดทำงานโดย GPIO

เพื่อให้กดปุ่มเพื่อเรียกการปิด RaspberryPi วงจรจะต้องเชื่อมต่อกับ GPIO

ดาวน์โหลดสคริปต์ rpi_shutdown.py ที่แนบมา

คุณสามารถแก้ไขเพื่อเปลี่ยนค่าต่อไปนี้:

  • HOLD_TIME: เวลาที่กดปุ่มค้างไว้เพื่อทริกเกอร์การปิด (ค่านี้บิดเบี้ยวโดย C2 ซึ่งรักษาระดับไว้ครู่หนึ่งหลังจากปล่อยปุ่ม)
  • PIN_NB: หมายเลข GPIO ที่จะใช้

คัดลอกสคริปต์ไปที่ /usr/local/bin และทำให้สามารถเรียกใช้งานได้:

sudo chmod +x /usr/local/bin/rpi_shutdown.py

ติดตั้งการพึ่งพาเช่น gpiozero:

sudo apt-get -y ติดตั้ง python3-gpiozero python3-pkg-resources

เปิดใช้งานเมื่อเริ่มต้นระบบ:

sudo crontab -e

เพิ่มสิ่งต่อไปนี้ในไฟล์เปิด:

@reboot /usr/local/bin/rpi_shutdown.py &

สคริปต์นี้เขียนขึ้นตามเอกสารต่อไปนี้:

รีบูต RaspberryPi ของคุณอย่างถูกต้อง:

sudo รีบูต

ตอนนี้คุณสามารถเชื่อมต่อวงจรกับ RaspberryPi และ PSU และทดสอบสิ่งต่อไปนี้:

  • PSU ยังคงทำงานตามที่คาดไว้โดย RPI_UART0-TXD RaspberryPi pin
  • การกดปุ่มจะเป็นการทริกเกอร์การปิดระบบ RaspberryPi ซึ่งจะหยุด PSU

ขั้นตอนที่ 3: แหล่งข้อมูลเพิ่มเติม

แหล่งข้อมูลที่เกี่ยวข้องสามารถพบได้จาก sitelec.org:

  • กวดวิชาภาษาอังกฤษรวมถึงโครงการ FreeCad ที่ทันสมัยและสภาพแวดล้อมการจำลอง
  • กวดวิชาภาษาฝรั่งเศสรวมถึงโครงการ FreeCad ที่ทันสมัยและสภาพแวดล้อมการจำลอง
  • กวดวิชาการเริ่มต้นการจำลองภาษาฝรั่งเศส FreeCad ตามวิธีการแยกแผ่นการจำลอง

แนะนำ: