Mục lục:

Nút tắt nguồn cho Raspberry Pi: 3 bước
Nút tắt nguồn cho Raspberry Pi: 3 bước

Video: Nút tắt nguồn cho Raspberry Pi: 3 bước

Video: Nút tắt nguồn cho Raspberry Pi: 3 bước
Video: Cách cài hệ điều hành cho Raspberry Pi vô cùng dễ! 2024, Tháng mười một
Anonim
Nút tắt nguồn cho Raspberry Pi
Nút tắt nguồn cho Raspberry Pi

Raspberry Pi là một nền tảng máy tính rất hữu ích cho phép tạo ra nhiều ứng dụng dự án IoT / rô bốt / nhà thông minh /… khác nhau. Tuy nhiên, một thứ mà nó không có, so với một máy tính bình thường, là nút tắt nguồn tắt máy. Vậy làm thế nào chúng ta có thể tự tạo ra một cái? Được rồi, chúng ta cùng làm nhé!

Đối với hướng dẫn này, bạn sẽ cần những thứ sau:

  • 1 Raspberry Pi đã được định cấu hình và sẵn sàng sử dụng
  • 1 breadboard hoặc thứ gì đó sẽ cho phép bạn tạo mạch điện tử
  • 1 nút nhấn
  • 2 dây nhảy

Nếu bạn chưa bao giờ sử dụng Raspberry Pi, bạn có thể xem hướng dẫn của tôi về cách và những việc cần làm để định cấu hình nó:

www.instructables.com/How-to-Setup-a-Raspberry-Pi-and-Start-Using-It/

Bước 1: Mạch điện tử

Mạch điện tử
Mạch điện tử
Mạch điện tử
Mạch điện tử
Mạch điện tử
Mạch điện tử

Không có gì cao siêu phức tạp ở đây, đó là một mạch khá đơn giản. 2 hình trên là giải thích cấu tạo mạch. Bạn có thể sử dụng bất kỳ chân GPIO nào bạn muốn cho đầu vào nút, bạn chỉ cần đảm bảo cập nhật mã để phản ánh điều đó.

Hãy giải thích nhanh cách thức hoạt động của điều này:

  • dây RED đang sử dụng 3,3V đến một đầu của nút nhấn.
  • cáp BLACK đang kết nối đầu kia của nút nhấn với GPIO Pi sẽ được sử dụng làm đầu vào.
  • theo mặc định, nút đang mở, vì vậy không có điện áp đi qua nó. Vì vậy, cáp ĐEN ở 0V khi nút không được nhấn. Điều này có nghĩa là trạng thái logic của đầu vào Pi GPIO là 0.
  • khi nút sẽ được nhấn, điện áp sẽ đi qua nó và cáp ĐEN sẽ được liên kết với 3.3V. Raspberry Pi sau đó sẽ thấy điện áp 3,3V ở đầu vào của nó, tương ứng với trạng thái logic là 1.

Bước 2: Mã Python

Mã Python
Mã Python

Bây giờ mạch đã sẵn sàng để sử dụng, chúng ta cần viết mã sẽ chạy nó và tôi đang sử dụng Python trong môi trường PyCharm ở đây. Tôi đã định cấu hình nút để tắt nguồn Raspberry Pi chỉ khi nó được nhấn hơn 3 giây do đó. Lý do tại sao tôi làm như vậy là rất dễ bị vô tình nhấn và bạn không muốn vô tình tắt Pi của mình.

Màn hình in ở trên là từ môi trường PyCharm của tôi và mã như sau (với sự khác biệt nhỏ trên dòng 26 được liên kết với một dự án khác nhưng không bắt buộc ở đây):

# Đây là mã aa để kích hoạt Raspberry Pi khi nhấn và giữ một nút đã xác định # Mô-đun bên ngoài importsimport RPi. GPIO as GPIOimport timeimport os # Raspberry Pi pin & các biến definitons & hold_time = 3 # Giữ thời gian trong giây để poweroffbutton_poweroff = 1 # Nút ấn để tắt Raspberry PiGPIO.setwarnings (Sai) GPIO.setmode (GPIO. BCM) # Sơ đồ đánh số pin BroadcomGPIO.setup (button_poweroff, GPIO. IN, pull_up_down = GPIO. PUD_DOWN) # Nút được đặt làm đầu vào Đúng: GPIO.wait_for_edge (button_poweroff, GPIO. RISING) start = time.time () time.sleep (0.2) # Chuyển gỡ lỗi trong khi GPIO.input (button_poweroff) == 1: time.sleep (0.01) length = time.time () - bắt đầu nếu độ dài > hold_time: os.system ("sudo poweroff")

Điều đầu tiên, nếu bạn đã kết nối nút nhấn với một GPIO khác, là cập nhật dòng 11 trên màn hình in ở trên với đầu vào GPIO có liên quan:

button_poweroff = GPIO_X # Cập nhật với GPIO chính xác được sử dụng trên mạch của bạn

Ngoài ra, biến hold_time cho phép bạn sửa đổi thời gian chờ kích hoạt Pi tắt.

Bước 3: Cách khởi chạy tập lệnh tự động sau thủ tục khởi động

Cách khởi chạy tập lệnh tự động sau quy trình khởi động
Cách khởi chạy tập lệnh tự động sau quy trình khởi động
Cách khởi chạy tập lệnh tự động sau quy trình khởi động
Cách khởi chạy tập lệnh tự động sau quy trình khởi động

Bây giờ chúng ta đã có mã sẵn sàng, chúng ta chỉ cần thực thi nó. Tuy nhiên, sẽ rất tiện lợi nếu chúng ta có thể thực thi tập lệnh này mỗi khi Pi khởi động, theo cách tự động, vì vậy nút sẽ hoạt động mà không cần chúng ta chạy tập lệnh mỗi lần. Có nhiều cách để làm như vậy. Tôi đã thêm vào đây một dòng vào tệp rc.local nằm trong thư mục / etc / của Pi của bạn. Nó được thực thi như một phần của trình tự khởi động.

Bạn cần mở một dòng lệnh và nhập các lệnh sau (màn hình in đầu tiên ở trên):

đĩa CD /

cd vv sudo nano rc.local

Lệnh đầu tiên sẽ đưa bạn từ thư mục / home / pi đến thư mục gốc, là /.

Sau đó, lệnh thứ hai sẽ đưa bạn đến thư mục / etc /.

Cuối cùng, cái thứ ba sẽ mở tệp rc.local dưới dạng siêu người dùng, có đầy đủ quyền chỉnh sửa mà bạn cần sửa đổi tệp.

Khi ở trong tệp, bạn chỉ cần thêm một dòng ở cuối tệp, nhưng trước câu lệnh exit 0 (màn hình in thứ 2 ở trên):

# Thêm dòng này vào tệp rc.local để khởi chạy tập lệnh

sudo python /home/pi/Documents/shutdown_with_hold.py &

Có một số điều bạn cần chú ý ở đây:

  1. tên tệp của bạn: trong dòng trên, tôi giả định rằng tệp đó là shutdown_with_hold.py. Nhưng nó có thể là bất cứ điều gì bạn muốn, chỉ cần cập nhật tên của bạn.
  2. nơi bạn đã lưu tệp của mình: trong dòng trên, tôi giả sử rằng nó được lưu trong thư mục / home / pi / Documents của bạn. Nhưng một lần nữa, nó có thể ở bất cứ đâu. Bạn chỉ cần đảm bảo đặt đường dẫn tuyệt đối đến tệp của mình ở đây.
  3. ký tự "&" ở cuối: điều này quan trọng và nó cho phép lệnh này chạy trong nền

Và đó là nó! Vì vậy, bây giờ, tập lệnh sẽ được thực thi mỗi khi Pi của bạn BẬT và bạn chỉ cần nhấn hơn 3 giây vào nút để tắt nguồn.

Đề xuất: