สารบัญ:
- ขั้นตอนที่ 1: วงจรอิเล็กทรอนิกส์
- ขั้นตอนที่ 2: รหัสหลาม
- ขั้นตอนที่ 3: วิธีการเปิดสคริปต์โดยอัตโนมัติหลังจากขั้นตอนการบู๊ต
วีดีโอ: ปุ่มปิดเครื่องสำหรับ Raspberry Pi: 3 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:02
Raspberry Pi เป็นแพลตฟอร์มคอมพิวเตอร์ที่มีประโยชน์มาก ซึ่งช่วยให้สร้างแอปพลิเคชันโครงการ IoT/robots/smart-home/… สิ่งหนึ่งที่ไม่มีเมื่อเทียบกับคอมพิวเตอร์ทั่วไปคือปุ่มปิดเครื่อง แล้วเราจะสร้างมันขึ้นมาเองได้อย่างไร? เอาล่ะ มาลงมือทำกันเถอะ!
สำหรับบทช่วยสอนนี้ คุณจะต้องมีสิ่งต่อไปนี้:
- 1 Raspberry Pi กำหนดค่าแล้วและพร้อมใช้งาน
- 1 เขียงหั่นขนมหรือสิ่งที่จะช่วยให้คุณสร้างวงจรอิเล็กทรอนิกส์
- 1 ปุ่มกด
- สายจัมเปอร์ 2 เส้น
หากคุณไม่เคยใช้ Raspberry Pi มาก่อน คุณสามารถดูบทแนะนำเกี่ยวกับวิธีการกำหนดค่าและวิธีกำหนดค่าได้:
www.instructables.com/How-to-Setup-a-Raspberry-Pi-and-Start-Using-It/
ขั้นตอนที่ 1: วงจรอิเล็กทรอนิกส์
ไม่มีอะไรซับซ้อนมากที่นี่ มันเป็นวงจรที่ค่อนข้างตรงไปตรงมา รูปภาพ 2 รูปด้านบนกำลังอธิบายการสร้างวงจร คุณสามารถใช้พิน GPIO ใดก็ได้ที่คุณต้องการสำหรับอินพุตของปุ่ม คุณเพียงแค่ต้องแน่ใจว่าได้อัปเดตโค้ดเพื่อให้สอดคล้องกับสิ่งนั้น
มาอธิบายอย่างรวดเร็วว่ามันทำงานอย่างไร:
- สายสีแดงกำลังนำ 3.3V ไปที่ปลายด้านหนึ่งของปุ่มกด
- สาย BLACK กำลังเชื่อมต่อปลายอีกด้านของปุ่มกดเข้ากับ Pi GPIO ซึ่งจะใช้เป็นอินพุต
- โดยค่าเริ่มต้น ปุ่มจะเปิดอยู่ ดังนั้นจึงไม่มีแรงดันไฟผ่านเข้าไป ดังนั้นสาย BLACK จะอยู่ที่ 0V เมื่อไม่ได้กดปุ่ม ซึ่งหมายความว่าสถานะทางลอจิคัลของอินพุต Pi GPIO คือ 0
- เมื่อกดปุ่ม แรงดันจะผ่าน และสาย BLACK จะเชื่อมกับ 3.3V Raspberry Pi จะเห็นแรงดันไฟฟ้า 3.3V ที่อินพุต ซึ่งสอดคล้องกับสถานะตรรกะที่ 1
ขั้นตอนที่ 2: รหัสหลาม
ตอนนี้วงจรพร้อมใช้งานแล้ว เราต้องเขียนโค้ดที่จะเรียกใช้ และฉันกำลังใช้ Python ในสภาพแวดล้อม PyCharm ที่นี่ ฉันกำหนดค่าปุ่มให้ปิด Raspberry Pi เฉพาะเมื่อกดเกิน 3 วินาทีเท่านั้น เหตุผลที่ฉันทำเช่นนั้นก็คือการกดโดยไม่ได้ตั้งใจเป็นเรื่องง่ายมาก และคุณไม่ต้องการปิด Pi ของคุณโดยไม่ได้ตั้งใจ
หน้าจอพิมพ์ด้านบนมาจากสภาพแวดล้อม PyCharm ของฉัน และรหัสมีดังต่อไปนี้ (โดยมีความแตกต่างเล็กน้อยในบรรทัดที่ 26 ซึ่งเชื่อมโยงกับโครงการอื่น แต่ไม่จำเป็นที่นี่):
# นี่คือรหัส aa เพื่อปิด Raspberry Pi เมื่อกดปุ่มที่กำหนดค้างไว้# โมดูลภายนอก importsimport RPi. GPIO เป็น GPIOimport timeimport os# Raspberry Pi pin & ตัวแปร definitons &hold_time = 3 # ถือเวลาเป็นวินาทีเพื่อ poweroffbutton_poweroff = 1 # ปุ่มกด เพื่อปิด Raspberry PiGPIO.setwarnings(False)GPIO.setmode(GPIO. BCM) # Broadcom pin-numbering schemeGPIO.setup(button_poweroff, GPIO. IN, pull_up_down=GPIO. PUD_DOWN) # Button set as inputwhile True: GPIO.wait_for_edge(button_poweroff, GPIO. RISING) start = time.time() time.sleep(0.2) # สลับ debounce ในขณะที่ GPIO.input(button_poweroff) == 1: time.sleep(0.01) length = time.time() - start if length > hold_time: os.system("sudo poweroff")
อย่างแรก หากคุณเชื่อมต่อปุ่มกดกับ GPIO อื่น ให้อัปเดตบรรทัดที่ 11 บนหน้าจอการพิมพ์ด้านบนด้วยอินพุต GPIO ที่เกี่ยวข้อง:
button_poweroff = GPIO_X # อัปเดตด้วย GPIO ที่ถูกต้องที่ใช้ในวงจรของคุณ
นอกจากนี้ ตัวแปร hold_time ยังให้คุณปรับเปลี่ยนเวลารอที่กระตุ้นให้ Pi ปิดตัวลงได้
ขั้นตอนที่ 3: วิธีการเปิดสคริปต์โดยอัตโนมัติหลังจากขั้นตอนการบู๊ต
ตอนนี้เรามีโค้ดพร้อมแล้ว เราก็แค่ต้องรันมัน แต่จะสะดวกกว่าถ้าเราสามารถเรียกใช้สคริปต์นี้ทุกครั้งที่ Pi กำลังบูทโดยอัตโนมัติ ดังนั้นปุ่มจะทำงานโดยที่เราไม่ต้องเรียกใช้สคริปต์ในแต่ละครั้ง มีหลายวิธีที่จะทำเช่นนั้น ฉันได้เพิ่มที่นี่หนึ่งบรรทัดในไฟล์ rc.local ซึ่งอยู่ในโฟลเดอร์ / etc / ของ Pi ของคุณ มันถูกดำเนินการเป็นส่วนหนึ่งของลำดับการบู๊ต
คุณต้องเปิดบรรทัดคำสั่งและพิมพ์คำสั่งต่อไปนี้ (หน้าจอพิมพ์ที่ 1 ด้านบน):
ซีดี /
cd ฯลฯ sudo nano rc.local
คำสั่งแรกจะนำคุณจากไดเร็กทอรี /home/pi ไปยังรูทอันหนึ่ง ซึ่งก็คือ /.
คำสั่งที่สองจะนำคุณไปยังไดเร็กทอรี /etc/
สุดท้าย ไฟล์ที่สามจะเปิดไฟล์ rc.local เป็น superuser โดยมีสิทธิ์แก้ไขแบบเต็ม ซึ่งคุณต้องแก้ไขไฟล์
เมื่ออยู่ในไฟล์ คุณเพียงแค่เพิ่มบรรทัดต่อท้ายไฟล์ แต่ก่อนคำสั่ง exit 0 (หน้าจอพิมพ์ที่ 2 ด้านบน):
# เพิ่มบรรทัดนี้ในไฟล์ rc.local เพื่อเรียกใช้สคริปต์
sudo python /home/pi/Documents/shutdown_with_hold.py &
มีบางสิ่งที่คุณจะต้องใส่ใจที่นี่:
- ชื่อไฟล์ของคุณ: ในบรรทัดด้านบน ฉันคิดว่าไฟล์นั้นคือ shutdown_with_hold.py แต่มันอาจเป็นอะไรก็ได้ที่คุณต้องการ เพียงแค่อัปเดตชื่อด้วยชื่อของคุณ
- ตำแหน่งที่คุณบันทึกไฟล์ของคุณ: ในบรรทัดด้านบน ฉันคิดว่ามันถูกบันทึกไว้ในไดเร็กทอรี /home/pi/Documents ของคุณ แต่อีกครั้งมันสามารถได้ทุกที่ คุณเพียงแค่ต้องแน่ใจว่าได้ใส่เส้นทางที่แน่นอนไปยังไฟล์ของคุณที่นี่
- อักขระ "&" ต่อท้าย: นี่เป็นสิ่งสำคัญ และอนุญาตให้คำสั่งนี้ทำงานในพื้นหลัง
และนั่นแหล่ะ! ดังนั้นตอนนี้ สคริปต์จะทำงานทุกครั้งที่ Pi ของคุณเปิดอยู่ และคุณจะต้องกดปุ่มค้างไว้มากกว่า 3 วินาทีเพื่อปิดเครื่อง
แนะนำ:
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
LED กะพริบด้วย Raspberry Pi - วิธีใช้พิน GPIO บน Raspberry Pi: 4 ขั้นตอน
LED กะพริบด้วย Raspberry Pi | วิธีใช้ GPIO Pins บน Raspberry Pi: สวัสดีทุกคนในคำแนะนำนี้เราจะเรียนรู้วิธีใช้ GPIO ของ Raspberry pi หากคุณเคยใช้ Arduino คุณอาจรู้ว่าเราสามารถเชื่อมต่อสวิตช์ LED ฯลฯ เข้ากับหมุดของมันและทำให้มันทำงานได้ ทำให้ไฟ LED กะพริบหรือรับอินพุตจากสวิตช์ดังนั้น
อินเทอร์เฟซ ADXL335 Sensor บน Raspberry Pi 4B ใน 4 ขั้นตอน: 4 ขั้นตอน
อินเทอร์เฟซ ADXL335 Sensor บน Raspberry Pi 4B ใน 4 ขั้นตอน: ในคำแนะนำนี้ เราจะเชื่อมต่อเซ็นเซอร์ ADXL335 (accelerometer) บน Raspberry Pi 4 กับ Shunya O/S
การติดตั้ง Raspbian Buster บน Raspberry Pi 3 - เริ่มต้นใช้งาน Raspbian Buster ด้วย Raspberry Pi 3b / 3b+: 4 ขั้นตอน
การติดตั้ง Raspbian Buster บน Raspberry Pi 3 | เริ่มต้นใช้งาน Raspbian Buster ด้วย Raspberry Pi 3b / 3b+: สวัสดี องค์กร Raspberry pi ที่เพิ่งเปิดตัว Raspbian OS ใหม่ที่เรียกว่า Raspbian Buster เป็นเวอร์ชันใหม่ของ Raspbian สำหรับ Raspberry pi ดังนั้นวันนี้ในคำแนะนำนี้ เราจะได้เรียนรู้วิธีติดตั้ง Raspbian Buster OS บน Raspberry pi 3 ของคุณ
การติดตั้ง Raspbian ใน Raspberry Pi 3 B โดยไม่ต้องใช้ HDMI - เริ่มต้นใช้งาน Raspberry Pi 3B - การตั้งค่า Raspberry Pi ของคุณ 3: 6 ขั้นตอน
การติดตั้ง Raspbian ใน Raspberry Pi 3 B โดยไม่ต้องใช้ HDMI | เริ่มต้นใช้งาน Raspberry Pi 3B | การตั้งค่า Raspberry Pi ของคุณ 3: อย่างที่พวกคุณบางคนรู้ว่าคอมพิวเตอร์ Raspberry Pi นั้นยอดเยี่ยมมากและคุณสามารถรับคอมพิวเตอร์ทั้งหมดได้บนบอร์ดเล็ก ๆ ตัวเดียว Raspberry Pi 3 Model B มี ARM Cortex A53 แบบ 64 บิตแบบ quad-core โอเวอร์คล็อกที่ 1.2 GHz ทำให้ Pi 3 ประมาณ 50