Bàn phím đợi python

Raspberry Pi là một trong những bo mạch điện toán vật lý hàng đầu trên thị trường. Từ những người có sở thích xây dựng các dự án DIY cho đến những sinh viên lần đầu tiên học lập trình, mọi người sử dụng Raspberry Pi hàng ngày để tương tác với thế giới xung quanh họ. Python được tích hợp sẵn trên Raspberry Pi, vì vậy bạn có thể sử dụng các kỹ năng của mình và bắt đầu xây dựng các dự án Raspberry Pi của riêng mình ngay hôm nay

Trong hướng dẫn này, bạn sẽ học cách

  • Thiết lập Raspberry Pi mới
  • Chạy Python trên Raspberry Pi bằng trình chỉnh sửa Mu hoặc từ xa qua SSH
  • Đọc đầu vào từ các cảm biến vật lý được kết nối với Raspberry Pi
  • Gửi đầu ra cho các thành phần bên ngoài bằng Python
  • Tạo các dự án độc đáo với Python trên Raspberry Pi

Bắt đầu nào

Tải xuống miễn phí. Nhận một chương mẫu từ Thủ thuật Python. Cuốn sách chỉ cho bạn các phương pháp hay nhất về Python với các ví dụ đơn giản mà bạn có thể áp dụng ngay lập tức để viết mã Pythonic + đẹp hơn

Làm quen với Raspberry Pi

Raspberry Pi là một máy tính bảng đơn được phát triển bởi Raspberry Pi Foundation, một tổ chức từ thiện có trụ sở tại Vương quốc Anh. Ban đầu được thiết kế để cung cấp cho những người trẻ tuổi một tùy chọn điện toán hợp lý để học cách lập trình, nó đã phát triển một lượng lớn người theo dõi trong cộng đồng nhà sản xuất và DIY nhờ kích thước nhỏ gọn, môi trường Linux hoàn chỉnh và các chân cắm đầu vào-đầu ra đa năng (GPIO)

Với tất cả các tính năng và khả năng được tích hợp trong bo mạch nhỏ này, không thiếu các dự án và trường hợp sử dụng cho Raspberry Pi

Một số dự án ví dụ bao gồm những điều sau đây

  • Robot xếp hàng
  • Trạm thời tiết tại nhà
  • máy chơi game cổ điển
  • Camera phát hiện đối tượng thời gian thực
  • máy chủ Minecraft
  • Hộp nhạc điều khiển bằng nút bấm
  • Trung tâm Truyền thông
  • Thí nghiệm từ xa trên Trạm vũ trụ quốc tế

Nếu bạn có thể nghĩ ra một dự án sẽ được hưởng lợi từ việc gắn một máy tính cỡ thẻ tín dụng vào đó, thì có lẽ ai đó đã sử dụng Raspberry Pi để thực hiện dự án đó. Raspberry Pi là một cách tuyệt vời để biến các ý tưởng dự án Python của bạn thành hiện thực

Loại bỏ các quảng cáo

Tổng quan về bảng Raspberry Pi

Raspberry Pi có nhiều yếu tố hình thức cho các trường hợp sử dụng khác nhau. In this tutorial, you’ll be looking at the most recent version, the Raspberry Pi 4

Below is the board layout of the Raspberry Pi 4. While this layout is slightly different from previous models of the Raspberry Pi, most of the connections are the same. The setup described in the next section should be the same for both a Raspberry Pi 3 and a Raspberry Pi 4

Bàn phím đợi python

The Raspberry Pi 4 board contains the following components

  • General-purpose input–output pins. These pins are used to connect the Raspberry Pi to electronic components

  • Ethernet port. This port connects the Raspberry Pi to a wired network. The Raspberry Pi also has Wi-Fi and Bluetooth built in for wireless connections

  • Two USB 3. 0 and two USB 2. 0 ports. These USB ports are used to connect peripherals like a keyboard or mouse. The two black ports are USB 2. 0 and the two blue ports are USB 3. 0

  • AV jack. This AV jack allows you to connect speakers or headphones to the Raspberry Pi

  • Camera Module port. This port is used to connect the official Raspberry Pi Camera Module, which enables the Raspberry Pi to capture images

  • HDMI ports. These HDMI ports connect the Raspberry Pi to external monitors. The Raspberry Pi 4 features two micro HDMI ports, allowing it to drive two separate monitors at the same time

  • USB power port. This USB port powers the Raspberry Pi. The Raspberry Pi 4 has a USB Type-C port, while older versions of the Pi have a micro-USB port

  • External display port. This port is used to connect the official seven-inch Raspberry Pi touch display for touch-based input on the Raspberry Pi

  • microSD card slot (underside of the board). This card slot is for the microSD card that contains the Raspberry Pi operating system and files

A little later in this tutorial, you’ll use the components above to set up your Raspberry Pi

Raspberry Pi vs Arduino

People often wonder what the difference is between a Raspberry Pi and an Arduino. Arduino là một thiết bị khác được sử dụng rộng rãi trong điện toán vật lý. While there is some overlap in the capabilities of the Arduino and the Raspberry Pi, there are some distinct differences

provides a hardware and software interface for programming microcontrollers. A microcontroller is an integrated circuit that allows you to read input from and send output to electronic components. Arduino boards generally have limited memory, so they’re often used to repeatedly run a single program that interacts with electronics

The Raspberry Pi is a general-purpose, Linux-based computer. It has a full operating system with a GUI interface that is capable of running many different programs at the same time

The Raspberry Pi comes with a variety of software preinstalled, including a web browser, an office suite, a terminal, and even Minecraft. The Raspberry Pi also has built-in Wi-Fi and Bluetooth to connect to the Internet and external peripherals

For running Python, the Raspberry Pi is often the better choice, as you get a full-fledged Python installation out of the box without any configuration

Setting Up the Raspberry Pi

Unlike the Arduino, which requires only a USB cable and a computer to set up, the Raspberry Pi has more hardware requirements to get up and running. After the initial setup, though, some of these peripherals will no longer be required

Required Hardware

The following hardware is required for the initial setup of your Raspberry Pi. If you end up connecting to your Raspberry Pi over SSH, which you’ll look at , then some of the hardware below will not be needed after the initial setup

Monitor

Bạn sẽ cần một màn hình trong quá trình thiết lập và cấu hình ban đầu của hệ điều hành. If you’ll be using SSH to connect to your Raspberry Pi, then you won’t need the monitor after setup. Make sure your monitor has an HDMI input

microSD Card

Raspberry Pi sử dụng thẻ nhớ microSD để lưu trữ hệ điều hành và tệp. Nếu bạn mua bộ Raspberry Pi, thì nó sẽ chứa thẻ nhớ microSD được định dạng sẵn để bạn sử dụng. Nếu bạn mua thẻ nhớ microSD riêng, thì bạn sẽ cần. Tìm thẻ nhớ microSD có dung lượng tối thiểu 16GB

Bàn phím và chuột

Cần có bàn phím và chuột USB trong quá trình thiết lập ban đầu của Raspberry Pi. Sau khi thiết lập hoàn tất, bạn có thể chuyển sang sử dụng các phiên bản Bluetooth của các thiết bị ngoại vi này nếu muốn. Ở phần sau của hướng dẫn này, bạn sẽ thấy cách kết nối với Raspberry Pi qua SSH. Nếu bạn chọn kết nối theo cách này, thì không cần bàn phím và chuột vật lý sau khi thiết lập ban đầu

Cáp HDMI

Bạn sẽ cần cáp HDMI để kết nối Raspberry Pi với màn hình. Các mẫu Raspberry Pi khác nhau có các yêu cầu về cáp HDMI khác nhau

Raspberry Pi 4Raspberry Pi 3/2/1Raspberry Pi Zeromicro HDMIHDMImini HDMImicro HDMI to HDMIHDMI to HDMImini HDMI to HDMI

Tùy thuộc vào kiểu máy của bạn, bạn có thể cần mua cáp HDMI hoặc bộ chuyển đổi đặc biệt

Nguồn cấp

Raspberry Pi sử dụng kết nối USB để cấp nguồn cho bo mạch. Một lần nữa, các mẫu Raspberry Pi khác nhau có các yêu cầu về nguồn và kết nối USB khác nhau

Dưới đây là các yêu cầu về kết nối và nguồn điện cho các kiểu máy khác nhau

Raspberry Pi 4Raspberry Pi 3/2/1/ZeroUSB-CMicro-USBÍt nhất 3. 0 ampsÍt nhất 2. 5 ampe

Để tránh nhầm lẫn khi chọn nguồn điện, bạn nên sử dụng nguồn điện chính thức cho Raspberry Pi 4 hoặc kiểu máy khác

Loại bỏ các quảng cáo

Phần cứng tùy chọn

Bạn có thể sử dụng toàn bộ phạm vi phần cứng bổ sung với Raspberry Pi để mở rộng khả năng của nó. Các mục phần cứng được liệt kê bên dưới không bắt buộc phải sử dụng Raspberry Pi của bạn nhưng sẽ hữu ích nếu bạn có sẵn

Trường hợp

Thật tuyệt khi có một chiếc vỏ cho Raspberry Pi của bạn để giữ cho các thành phần của nó không bị hư hỏng trong quá trình sử dụng bình thường. Khi chọn vỏ, hãy đảm bảo rằng bạn mua đúng loại cho mẫu Raspberry Pi của mình

Diễn giả

Nếu bạn muốn phát nhạc hoặc âm thanh từ Raspberry Pi, thì bạn sẽ cần có loa. These can be any standard speakers that have a 3. 5 mm jack. You can connect the speakers to the Raspberry Pi using the on the side of the board

Heat Sinks (Recommended)

The Raspberry Pi can do a lot of computing for a little board. This is one of the reasons it’s so awesome. But this does mean that it can get a little hot sometimes. It’s recommended that you purchase a set of heatsinks to prevent the Raspberry Pi from throttling the CPU when it gets too hot

Software

The operating system for the Raspberry Pi is stored on a microSD card. If your card did not come from an official Raspberry Pi kit, then you’ll need to install the operating system on it

There are multiple ways to set up the operating system on your Raspberry Pi. You can find out more about the different installation options on the Raspberry Pi website

In this section, you’ll look at two ways to install Raspbian, the officially supported Raspberry Pi operating system, which is based on Debian Linux

Option 1. Raspberry Pi Imager (Recommended)

Nền tảng Raspberry Pi khuyên bạn nên sử dụng Raspberry Pi Imager để thiết lập ban đầu cho thẻ SD của bạn. You can download the imager from the Raspberry Pi Downloads page. Once on this page, download the appropriate version for your operating system

Bàn phím đợi python

After you’ve downloaded the Raspberry Pi Imager, start the application. You’ll see a screen that allows you to select the operating system that you want to install along with the SD card you would like to format

Bàn phím đợi python

You’ll be given two options when first loading the application. Choose OS and Choose SD Card. Select Choose OS first

Note. There’s a chance that Windows may prevent the Raspberry Pi Imager from starting because it’s an unrecognized application. If you receive a pop-up that says Windows protected your PC, then you can still run the application by clicking More info and selecting Run anyway

With the application running, click the Choose OS button and choose the first Raspbian option

Bàn phím đợi python

After selecting the Raspbian operating system, you need to select the SD card you’re going to use. Make sure your microSD card is inserted into your computer and click Choose SD Card, then select the SD card from the menu

Bàn phím đợi python

With the operating system and SD card selected, you can now click the Write button to begin formatting the SD card and installing the operating system onto the card. This process may take a few minutes to complete

Bàn phím đợi python

Once formatting and installation are complete, you should see a message that says the operating system has been written to the SD card

Bàn phím đợi python

You can eject the SD card from your computer. Raspbian is now installed on your SD card, and you’re ready to start connecting hardware to the Raspberry Pi

Option 2. Install Raspbian From NOOBS

If for some reason you can’t use the Raspberry Pi Imager, then you can download NOOBS (New Out Of the Box Software) and use it to install Raspbian on a microSD card. First, head to the NOOBS download page to download the latest version. Click Download ZIP underneath the first NOOBS option

Bàn phím đợi python

NOOBS will start downloading on your system

Note. Make sure to download NOOBS and not NOOBS Lite

Once the ZIP file has been downloaded, unzip the contents to a location on your computer. You’ll be copying these files onto the SD card shortly, but first you need to properly format the SD card

You’ll use the official SD Memory Card Formatter from the SD Association. Head to the SD Association website to download the formatter. Scroll to the bottom and download the SD formatter for either Windows or macOS

Bàn phím đợi python

Once the SD Memory Card Formatter is downloaded, you’re ready to format your SD card for use on the Raspberry Pi

Note. Linux users can use

$ ssh pi@[IP ADDRESS]
7 to partition and format a microSD card to the required FAT32 disk format

After downloading the SD formatter, open the application. To format the SD card, you’ll need to do the following

  1. Insert the SD card into your computer
  2. Select the SD card from the Select card dropdown menu
  3. Click the Quick format option under Formatting options
  4. Enter NOOBS into the Volume label text field

Once the above items are complete, click Format

Bàn phím đợi python

Before formatting the card, you’ll be asked to confirm the operation, as it will erase all data from the card. Click Continue to begin formatting the SD card. It may take a few minutes to finish formatting

Bàn phím đợi python

Once the formatting has completed, you’ll need to copy the NOOBS files that you unzipped earlier over to the SD card. Select all the files that you extracted earlier

Bàn phím đợi python

Drag them to the SD card

Bàn phím đợi python

Now that you’ve got NOOBS installed on your SD card, eject the card from your computer. You’re almost there. In the next section, you’ll do the final setup for your Raspberry Pi

Loại bỏ các quảng cáo

Final Setup

Now that you have the microSD card and required hardware ready, the final step is to connect everything together and configure the operating system. Let’s start off by connecting all the peripherals

  1. Insert the microSD card into the card slot on the bottom of the Raspberry Pi
  2. Connect the keyboard and mouse to any of the four USB ports
  3. Connect a display to one of the HDMI ports using an HDMI cable specific to your Raspberry Pi model
  4. Connect a power supply to the USB power port

With the peripherals connected, go ahead and power on your Raspberry Pi to configure the operating system. Nếu bạn đã cài đặt Raspbian với Raspberry Pi Imager, thì bạn không thể làm gì khác. You can skip down to the to complete the setup

Nếu bạn đã cài đặt NOOBS trên thẻ SD thì bạn sẽ cần hoàn thành một vài bước nữa để cài đặt Raspbian trên thẻ SD

  1. Đầu tiên, bật nguồn Raspberry Pi để tải giao diện NOOBS
  2. Sau đó, đánh dấu vào hộp kiểm bên cạnh tùy chọn Raspbian trong danh sách phần mềm cần cài đặt
  3. Cuối cùng, nhấn nút Install ở góc trên cùng bên trái giao diện để bắt đầu cài đặt Raspbian trên thẻ SD

Khi quá trình cài đặt hoàn tất, Raspberry Pi sẽ khởi động lại và bạn sẽ được khởi động vào Raspbian để hoàn tất trình hướng dẫn thiết lập

Trình hướng dẫn cài đặt

Trong lần khởi động đầu tiên, Raspbian cung cấp trình hướng dẫn thiết lập để giúp bạn định cấu hình mật khẩu, đặt ngôn ngữ, chọn mạng Wi-Fi và cập nhật hệ điều hành. Hãy tiếp tục và hoàn thành các bước này theo hướng dẫn

Khi bạn đã hoàn thành các bước, hãy khởi động lại hệ điều hành và bạn sẽ sẵn sàng bắt đầu lập trình Python trên Raspberry Pi

Chạy Python trên Raspberry Pi

Một trong những điều tuyệt vời nhất khi làm việc với Python trên Raspberry Pi là Python là công dân hạng nhất trên nền tảng này. Raspberry Pi Foundation đã chọn Python làm ngôn ngữ chính vì sức mạnh, tính linh hoạt và dễ sử dụng của nó. Python được cài đặt sẵn trên Raspbian, vì vậy bạn sẽ sẵn sàng bắt đầu ngay từ đầu

Bạn có nhiều tùy chọn khác nhau để viết Python trên Raspberry Pi. Trong hướng dẫn này, bạn sẽ xem xét hai lựa chọn phổ biến

  • Sử dụng trình chỉnh sửa Mu
  • Chỉnh sửa từ xa qua SSH

Hãy bắt đầu bằng cách xem cách sử dụng trình soạn thảo Mu để viết Python trên Raspberry Pi

Sử dụng Trình chỉnh sửa Mu

Hệ điều hành Raspbian đi kèm với một số IDE Python được cài đặt sẵn mà bạn có thể sử dụng để viết chương trình của mình. Một trong những IDE này là Mu. Nó có thể được tìm thấy trong menu chính

Biểu tượng Raspberry Pi → Lập trình → Mu

Khi bạn mở Mu lần đầu tiên, bạn sẽ được cung cấp tùy chọn để chọn chế độ Python cho trình chỉnh sửa. Đối với mã trong hướng dẫn này, bạn có thể chọn Python 3

Bàn phím đợi python

Có khả năng Mu không được cài đặt sẵn trên phiên bản Raspbian của bạn. Nếu Mu chưa được cài đặt, thì bạn luôn có thể cài đặt nó bằng cách đi tới vị trí tệp sau

Biểu tượng Raspberry Pi → Tùy chọn → Phần mềm được đề xuất

Thao tác này sẽ mở ra một hộp thoại chứa phần mềm được đề xuất cho Raspberry Pi của bạn. Chọn hộp bên cạnh Mu và nhấp vào OK để cài đặt nó

Bàn phím đợi python

Mặc dù Mu cung cấp một trình chỉnh sửa tuyệt vời để bắt đầu với Python trên Raspberry Pi, nhưng bạn có thể muốn một thứ gì đó mạnh mẽ hơn. Trong phần tiếp theo, bạn sẽ kết nối với Raspberry Pi của mình qua SSH

Loại bỏ các quảng cáo

Chỉnh sửa từ xa qua SSH

Thường thì bạn sẽ không muốn dành thời gian kết nối màn hình, bàn phím và chuột để viết Python trên Raspberry Pi. May mắn thay, Raspbian cho phép bạn kết nối với Raspberry Pi từ xa qua. Trong phần này, bạn sẽ tìm hiểu cách bật và sử dụng SSH để lập trình Python trên Raspberry Pi

Kích hoạt SSH

Trước khi có thể kết nối với Raspberry Pi qua SSH, bạn cần bật quyền truy cập SSH bên trong khu vực Tùy chọn Raspberry Pi. Kích hoạt SSH bằng cách đi tới đường dẫn tệp sau

Biểu tượng Raspberry Pi → Tùy chọn → Cấu hình Raspberry Pi

Khi cấu hình xuất hiện, hãy chọn tab Giao diện rồi bật tùy chọn SSH

Bàn phím đợi python

Bạn đã kích hoạt SSH trên Raspberry Pi. Bây giờ bạn cần lấy địa chỉ IP cho Raspberry Pi để có thể kết nối với nó từ một máy tính khác

Xác định địa chỉ IP Raspberry Pi

Để truy cập Raspberry Pi từ xa, bạn cần xác định địa chỉ IP của Raspberry Pi trên mạng cục bộ của mình. Để xác định địa chỉ IP, bạn cần truy cập vào ứng dụng Terminal. Bạn có thể truy cập Terminal tại đây

Biểu tượng Raspberry Pi → Phụ kiện → Thiết bị đầu cuối

Khi Terminal được mở, hãy nhập thông tin sau vào dấu nhắc lệnh

pi@raspberrypi:~ $ hostname -I

Điều này sẽ hiển thị địa chỉ IP hiện tại cho Raspberry Pi của bạn. Với địa chỉ IP này, giờ đây bạn có thể kết nối với Raspberry Pi của mình từ xa

Kết nối với Raspberry Pi

Sử dụng địa chỉ IP cho Raspberry Pi, giờ đây bạn có thể SSH vào nó từ một máy tính khác

$ ssh pi@[IP ADDRESS]

Bạn sẽ được nhắc nhập mật khẩu bạn đã tạo khi chạy trong quá trình cài đặt Raspbian. Nếu bạn không đặt mật khẩu thì mật khẩu mặc định là

$ ssh pi@[IP ADDRESS]
8. Nhập mật khẩu và sau khi kết nối, bạn sẽ thấy dấu nhắc lệnh Raspberry Pi

pi@raspberrypi:~ $

Bây giờ bạn đã biết cách kết nối, bạn đã sẵn sàng bắt đầu lập trình Python trên Raspberry Pi. Bạn có thể bắt đầu ngay bằng Python REPL

pi@raspberrypi:~ $ python3

Nhập một số Python để chạy nó trên Raspberry Pi

>>>

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!

Tuyệt vời, bạn đang chạy Python trên Raspberry Pi

Loại bỏ các quảng cáo

Tạo một thư mục $ ssh pi@[IP ADDRESS] 9

Trước khi bạn bắt đầu xây dựng các dự án bằng Python trên Raspberry Pi, bạn nên thiết lập một thư mục dành riêng cho mã của mình. Raspberry Pi có một hệ thống tệp đầy đủ với nhiều thư mục khác nhau. Có một vị trí dành riêng cho mã Python của bạn sẽ giúp giữ mọi thứ ngăn nắp và dễ tìm

Hãy tạo một thư mục có tên là

$ ssh pi@[IP ADDRESS]
9 nơi bạn có thể lưu trữ mã Python cho các dự án của mình

Sử dụng Mu

Nếu bạn dự định sử dụng Mu để hoàn thành các dự án trong hướng dẫn này, thì bạn có thể sử dụng nó ngay bây giờ để tạo thư mục

$ ssh pi@[IP ADDRESS]
9. Để tạo thư mục này, bạn sẽ muốn làm như sau

  1. Mở Mu bằng cách đi tới Biểu tượng Raspberry Pi → Lập trình → Mu
  2. Nhấp vào Mới trong thanh menu để tạo một tệp trống
  3. Nhấp vào Lưu trong thanh menu
  4. Điều hướng đến thư mục
    pi@raspberry:~ $
    
    2 trong danh sách thư mục thả xuống
  5. Nhấp vào biểu tượng Tạo thư mục mới ở góc trên cùng bên phải
  6. Đặt tên cho thư mục mới này là
    $ ssh pi@[IP ADDRESS]
    
    9 và nhấn Enter .
  7. Nhấp vào Hủy để đóng

Bạn đã tạo một thư mục dành riêng cho mã Python của mình. Đi xuống phần tiếp theo để tìm hiểu về Python

Qua SSH

Nếu bạn muốn sử dụng SSH để truy cập Raspberry Pi của mình, thì bạn sẽ sử dụng dòng lệnh để tạo thư mục

$ ssh pi@[IP ADDRESS]
9

Ghi chú. Vì bạn sẽ truy cập dòng lệnh Raspberry Pi, nên bạn sẽ cần sử dụng trình soạn thảo văn bản dòng lệnh để chỉnh sửa các tệp dự án của mình

Cả

pi@raspberry:~ $
5 và
pi@raspberry:~ $
6 đều được cài đặt sẵn trên Raspbian và có thể được sử dụng để chỉnh sửa tệp dự án. Bạn cũng có thể sử dụng Mã VS để chỉnh sửa tệp từ xa trên Raspberry Pi, nhưng cần phải thiết lập một số

Hãy tạo thư mục

$ ssh pi@[IP ADDRESS]
9. Nếu bạn hiện chưa đăng nhập vào Raspberry Pi, thì hãy sử dụng địa chỉ IP của Raspberry Pi để SSH vào nó từ máy tính của bạn

$ ssh pi@[IP ADDRESS]

Sau khi đăng nhập, bạn sẽ thấy dấu nhắc lệnh Raspberry Pi

pi@raspberry:~ $

Theo mặc định, khi bạn SSH vào Raspberry Pi, bạn sẽ bắt đầu trong thư mục

pi@raspberry:~ $
2. Xác nhận điều này ngay bây giờ bằng cách chạy
pi@raspberry:~ $
9

pi@raspberry:~ $ pwd
/home/pi

Nếu vì lý do nào đó bạn không có trong thư mục

pi@raspberry:~ $
2, thì hãy chuyển sang thư mục đó bằng cách sử dụng
pi@raspberry:~ $ pwd
/home/pi
1

pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi

Bây giờ trong thư mục

pi@raspberry:~ $
2, hãy tạo một thư mục
$ ssh pi@[IP ADDRESS]
9 mới

pi@raspberry:~ $ mkdir python-projects

Với thư mục

$ ssh pi@[IP ADDRESS]
9 được tạo, hãy sử dụng
pi@raspberry:~ $ pwd
/home/pi
5 để vào thư mục

$ ssh pi@[IP ADDRESS]
0

Tuyệt vời. Bạn đã sẵn sàng bắt đầu mã hóa các mạch đầu tiên của mình bằng Python trên Raspberry Pi

Loại bỏ các quảng cáo

Tương tác với các thành phần vật lý

Trong phần này, bạn sẽ học cách tương tác với các thành phần vật lý khác nhau bằng Python trên Raspberry Pi

Bạn sẽ sử dụng thư viện gpiozero được cài đặt sẵn trên Raspbian. Nó cung cấp giao diện dễ sử dụng để tương tác với nhiều thiết bị GPIO được kết nối với Raspberry Pi

Linh kiện điện tử

Trước khi lập trình trên Raspberry Pi, bạn sẽ cần một vài linh kiện điện tử để xây dựng các dự án trong các phần sắp tới. Bạn sẽ có thể tìm thấy từng mặt hàng bên dưới trên Amazon hoặc tại cửa hàng điện tử địa phương của bạn

bánh mì

Breadboard là một công cụ thiết yếu khi xây dựng mạch. Nó cho phép bạn nhanh chóng tạo nguyên mẫu cho mạch của mình mà không cần phải hàn các thành phần lại với nhau

Breadboards theo một bố cục chung. Ở bên phải và bên trái, hai đường ray chạy theo chiều dài của breadboard. Mỗi lỗ trên những đường ray được kết nối. Nói chung, chúng được chỉ định dương (điện áp hoặc VCC) và âm (mặt đất hoặc GND)

Trên hầu hết các breadboard, đường ray tích cực được đánh dấu bằng một dấu hiệu tích cực (

pi@raspberry:~ $ pwd
/home/pi
6) và sẽ có một đường màu đỏ chạy bên cạnh nó. Đường ray âm được đánh dấu bằng dấu âm (
pi@raspberry:~ $ pwd
/home/pi
7) và có một vạch màu xanh lam chạy bên cạnh

Ở bên trong bảng, các thanh ray thành phần chạy vuông góc với các thanh ray dương và âm ở các mặt của breadboard. Mỗi đường ray này có các lỗ để đặt các bộ phận

Tất cả các lỗ trên một thanh ray được kết nối. Ở giữa là rãnh ngăn cách 2 bên breadboard. Đường ray ở phía đối diện của máng xối không được kết nối

Điều này được minh họa trong sơ đồ sau

Bàn phím đợi python

Trong sơ đồ trên, ba màu được sử dụng để đánh dấu các loại đường ray breadboard khác nhau

  • Màu đỏ. đường sắt tích cực
  • Đen. đường ray âm
  • Màu xanh da trời. đường ray thành phần

Ở phần sau của hướng dẫn này, bạn sẽ sử dụng các đường ray khác nhau này để xây dựng các mạch đầy đủ kết nối với Raspberry Pi

dây nhảy

Dây nhảy cho phép bạn tạo nguyên mẫu các kết nối của mạch mà không cần phải hàn các đường dẫn giữa các chân GPIO và các thành phần. Chúng có ba loại khác nhau

  1. Nam thành nam
  2. nữ thành nam
  3. nữ thành nữ

Sẽ rất tốt nếu bạn có ít nhất 10 đến 20 loại mỗi loại khi bạn đang xây dựng các dự án Raspberry Pi của mình bằng Python

Các thành phần khác

Cùng với breadboard và dây nhảy, các dự án trong hướng dẫn này sẽ sử dụng các thành phần sau

  • Điốt phát sáng (đèn LED)
  • nút xúc giác
  • điện trở 330Ω
  • Còi áp điện đang hoạt động
  • Cảm biến chuyển động hồng ngoại thụ động

Với các thành phần cần thiết trong tay, hãy xem cách bạn có thể kết nối chúng với Raspberry Pi bằng các chân GPIO

Loại bỏ các quảng cáo

Chân GPIO

Raspberry Pi có bốn mươi chân GPIO dọc theo cạnh trên của bo mạch. Bạn có thể sử dụng các chân GPIO này để kết nối Raspberry Pi với các thành phần bên ngoài

Bố cục ghim bên dưới hiển thị các loại ghim khác nhau và vị trí của chúng. Bố cục này dựa trên chế độ xem từ trên cao của các chân với các cổng USB của Raspberry Pi hướng về phía bạn

Bàn phím đợi python

Raspberry Pi có năm loại chân khác nhau

  1. GPIO. Đây là những chân có mục đích chung có thể được sử dụng cho đầu vào hoặc đầu ra
  2. 3V3. Các chân này cung cấp 3. Nguồn điện 3 V cho linh kiện. 3. 3 V cũng là điện áp bên trong mà tất cả các chân GPIO cung cấp
  3. 5V. Các chân này cung cấp nguồn điện 5 V, giống như đầu vào nguồn USB cấp nguồn cho Raspberry Pi. Một số thành phần, chẳng hạn như cảm biến chuyển động hồng ngoại thụ động, yêu cầu 5 V
  4. GND. Các chân này cung cấp kết nối đất cho các mạch
  5. ADV. Các chốt chuyên dụng này là các chốt nâng cao và không được đề cập trong hướng dẫn này

Trong phần tiếp theo, bạn sẽ sử dụng các loại ghim khác nhau này để thiết lập thành phần đầu tiên của mình, nút xúc giác

Nút xúc giác

Đối với mạch đầu tiên của bạn, bạn sẽ kết nối một nút xúc giác với Raspberry Pi. Nút xúc giác là một công tắc điện tử, khi được nhấn sẽ đóng mạch. Khi đóng mạch, Raspberry Pi sẽ đăng ký tín hiệu BẬT. Bạn có thể sử dụng tín hiệu BẬT này để kích hoạt các hành động khác nhau

Trong dự án này, bạn sẽ sử dụng nút xúc giác để chạy các hàm Python khác nhau dựa trên trạng thái của nút. Hãy bắt đầu bằng cách nối nút với Raspberry Pi

  1. Kết nối dây nhảy từ nữ sang nam từ chân GND của Raspberry Pi với đường ray âm của bảng mạch
  2. Đặt một nút xúc giác trên máng xối ở giữa breadboard
  3. Kết nối dây nhảy đực-đực từ đường ray âm của bảng mạch khung với hàng nơi đặt chân dưới bên trái của nút
  4. Kết nối dây nhảy từ nữ sang nam từ chân GPIO4 của Raspberry Pi với hàng bảng mạch nơi đặt chân dưới bên phải của nút

Bạn có thể xác nhận hệ thống dây điện của mình với sơ đồ bên dưới

Bàn phím đợi python

Bây giờ bạn đã kết nối mạch của mình, hãy viết mã Python để đọc đầu vào từ nút

Ghi chú. Nếu bạn gặp khó khăn khi tìm một mã pin cụ thể, thì hãy đảm bảo tham khảo tài liệu khi xây dựng mạch của bạn. Bạn cũng có thể mua một bảng đột phá để dễ dàng tạo breadboarding

Bên trong thư mục

$ ssh pi@[IP ADDRESS]
9 mà bạn đã tạo trước đó, hãy lưu một tệp mới có tên là
pi@raspberry:~ $ pwd
/home/pi
9. Nếu bạn đang sử dụng SSH để truy cập Raspberry Pi của mình, thì hãy tạo tệp như thế này

$ ssh pi@[IP ADDRESS]
1

Nếu bạn đang sử dụng Mu thì hãy tạo tệp theo các bước sau

  1. Nhấp vào mục menu Mới
  2. Nhấp vào để lưu
  3. Điều hướng đến thư mục
    pi@raspberry:~/Desktop $ cd /home/pi
    pi@raspberry:~ $ pwd
    /home/pi
    
    0
  4. Lưu tệp với tên
    pi@raspberry:~ $ pwd
    /home/pi
    
    9

Với tệp được tạo, bạn đã sẵn sàng để bắt đầu mã hóa. Bắt đầu bằng cách nhập lớp

pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
2 từ mô-đun
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
3. Bạn cũng sẽ cần nhập
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
4 từ mô-đun
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
5. Bạn sẽ xem tại sao bạn cần
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
4 sau

$ ssh pi@[IP ADDRESS]
2

Tạo một thể hiện của lớp

pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
2 và chuyển số pin làm tham số. Trong trường hợp này, bạn đang sử dụng chân GPIO4, vì vậy bạn sẽ chuyển vào ______23_______8 làm tham số

$ ssh pi@[IP ADDRESS]
3

Tiếp theo, xác định các chức năng sẽ được gọi cho các sự kiện nút khác nhau có sẵn trên phiên bản

pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
2

$ ssh pi@[IP ADDRESS]
4

Lớp

pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
2 có ba thuộc tính sự kiện.
pi@raspberry:~ $ mkdir python-projects
1,
pi@raspberry:~ $ mkdir python-projects
2 và
pi@raspberry:~ $ mkdir python-projects
3. Các thuộc tính này có thể được sử dụng để kết nối các chức năng sự kiện khác nhau

Mặc dù thuộc tính

pi@raspberry:~ $ mkdir python-projects
1 và
pi@raspberry:~ $ mkdir python-projects
3 có thể tự giải thích, nhưng
pi@raspberry:~ $ mkdir python-projects
2 yêu cầu giải thích ngắn gọn. Nếu một chức năng được đặt thành thuộc tính
pi@raspberry:~ $ mkdir python-projects
2, thì nó sẽ chỉ được gọi nếu nút được nhấn và giữ trong một khoảng thời gian nhất định

Thời gian giữ cho

pi@raspberry:~ $ mkdir python-projects
2 được xác định bởi thuộc tính
pi@raspberry:~ $ mkdir python-projects
9 trên phiên bản
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
2. Giá trị mặc định cho
pi@raspberry:~ $ mkdir python-projects
9 là một giây. Bạn có thể ghi đè giá trị này bằng cách chuyển giá trị
$ ssh pi@[IP ADDRESS]
02 khi tạo phiên bản
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
2

$ ssh pi@[IP ADDRESS]
5

Thao tác này sẽ tạo một thể hiện

pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
2 sẽ đợi hai giây rưỡi sau khi nhấn và giữ nút trước khi gọi hàm
$ ssh pi@[IP ADDRESS]
05

Bây giờ bạn đã biết về các thuộc tính sự kiện khác nhau trên

pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
2, hãy đặt từng thuộc tính này thành các chức năng tương ứng mà bạn đã xác định trước đó

$ ssh pi@[IP ADDRESS]
6

Tuyệt vời. Bạn đã thiết lập các sự kiện nút của mình. Điều cuối cùng bạn cần làm là gọi số

$ ssh pi@[IP ADDRESS]
07 ở cuối tệp. Gọi
$ ssh pi@[IP ADDRESS]
07 là bắt buộc để giữ cho chương trình lắng nghe các sự kiện khác nhau. Nếu điều này không xuất hiện, thì chương trình sẽ chạy một lần và thoát

Chương trình cuối cùng của bạn sẽ trông như thế này

$ ssh pi@[IP ADDRESS]
7

Khi đã hoàn tất việc đi dây và thiết lập mã, bạn đã sẵn sàng để thử mạch đầu tiên của mình. Bên trong thư mục

$ ssh pi@[IP ADDRESS]
9, chạy chương trình

$ ssh pi@[IP ADDRESS]
8

Nếu bạn đang sử dụng My, trước tiên hãy đảm bảo rằng tệp đã được lưu, sau đó nhấp vào Chạy để bắt đầu chương trình

Chương trình hiện đang chạy và lắng nghe các sự kiện. Nhấn nút và bạn sẽ thấy thông tin sau trong bảng điều khiển

$ ssh pi@[IP ADDRESS]
9

Nhấn và giữ nút trong ít nhất một giây và bạn sẽ thấy đầu ra sau

pi@raspberrypi:~ $
0

Cuối cùng, khi bạn nhả nút, bạn sẽ thấy như sau

pi@raspberrypi:~ $
1

Đáng kinh ngạc. Bạn vừa kết nối và mã hóa mạch đầu tiên của mình bằng Python trên Raspberry Pi

Vì bạn đã sử dụng

$ ssh pi@[IP ADDRESS]
07 trong mã của mình nên bạn cần dừng chương trình theo cách thủ công. Nếu đang chạy chương trình trong Mu thì bạn có thể bấm Stop để thoát chương trình. Nếu bạn đang chạy chương trình này từ dòng lệnh thì bạn có thể dừng chương trình bằng Ctrl + C.

Với mạch đầu tiên này, bạn đã sẵn sàng bắt đầu điều khiển một số thành phần khác

Loại bỏ các quảng cáo

DẪN ĐẾN

Đối với mạch tiếp theo, bạn sẽ sử dụng Python để bật và tắt đèn LED nhấp nháy mỗi giây. LED là viết tắt của đi-ốt phát quang và các thành phần này tạo ra ánh sáng khi có dòng điện chạy qua. Bạn sẽ thấy rằng chúng được sử dụng ở mọi nơi trong ngành điện tử

Mỗi đèn LED có hai chân. Chân dài hơn là chân dương hoặc cực dương. Dòng điện đi vào LED thông qua chân này. Chân ngắn hơn là chân âm hoặc cực âm. Dòng ra khỏi LED qua chân này

Dòng điện chỉ có thể chạy theo một hướng qua đèn LED, vì vậy hãy đảm bảo rằng bạn đang kết nối dây nhảy với chân thích hợp của đèn LED

Dưới đây là các bước bạn cần thực hiện để nối dây mạch này

  1. Kết nối dây nhảy từ nữ sang nam từ chân GND của Raspberry Pi với đường ray âm của bảng mạch

  2. Đặt một đèn LED vào hai lỗ trên breadboard cạnh nhau nhưng không cùng hàng

  3. Đặt chân dương, dài hơn của đèn LED vào lỗ ở bên phải

  4. Đặt chân âm, ngắn hơn của đèn LED vào lỗ ở bên trái

  5. Đặt một đầu của điện trở 330 Ω vào một lỗ trên cùng một hàng của breadboard với chân âm của đèn LED

  6. Đặt đầu kia của điện trở vào đường ray âm của breadboard

  7. Kết nối dây nhảy từ nữ sang nam từ chân GPIO4 của Raspberry Pi với một lỗ trên cùng hàng bảng mạch với chân dương của đèn LED

Bạn có thể xác nhận hệ thống dây điện của mình với sơ đồ bên dưới

Bàn phím đợi python

Nếu hệ thống dây điện có vẻ tốt, thì bạn đã sẵn sàng để viết một số Python để đèn LED nhấp nháy. Bắt đầu bằng cách tạo một tệp cho mạch này bên trong thư mục

$ ssh pi@[IP ADDRESS]
9. Gọi tệp này là
$ ssh pi@[IP ADDRESS]
12

pi@raspberrypi:~ $
2

Trong mã này, bạn sẽ tạo một thể hiện của lớp

$ ssh pi@[IP ADDRESS]
13 và gọi phương thức
$ ssh pi@[IP ADDRESS]
14 của nó để bật và tắt đèn LED. Phương thức
$ ssh pi@[IP ADDRESS]
14 có thời gian chờ mặc định là một giây. Đèn LED sẽ tiếp tục nhấp nháy bật và tắt mỗi giây cho đến khi thoát khỏi chương trình

Bắt đầu bằng cách nhập

$ ssh pi@[IP ADDRESS]
13 từ mô-đun
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
3 và
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
4 từ mô-đun
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
5

pi@raspberrypi:~ $
3

Tiếp theo, tạo một thể hiện của

$ ssh pi@[IP ADDRESS]
13 được gọi là
$ ssh pi@[IP ADDRESS]
21. Đặt chân GPIO thành
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
8

pi@raspberrypi:~ $
4

Gọi phương thức

$ ssh pi@[IP ADDRESS]
14 trên
$ ssh pi@[IP ADDRESS]
21

pi@raspberrypi:~ $
5

Cuối cùng, thêm lệnh gọi tới

$ ssh pi@[IP ADDRESS]
07 để đảm bảo chương trình không thoát

pi@raspberrypi:~ $
6

Chương trình hoàn chỉnh của bạn sẽ trông như thế này

pi@raspberrypi:~ $
7

Lưu tệp và chạy nó để xem đèn LED nhấp nháy và tắt

pi@raspberrypi:~ $
8

Đèn LED hiện sẽ nhấp nháy và tắt mỗi giây. Khi bạn đã hoàn tất việc chiêm ngưỡng mã Python của mình đang hoạt động, hãy dừng chương trình bằng Ctrl + C or Stop in Mu.

Bây giờ bạn đã biết cách điều khiển đèn LED bằng Python trên Raspberry Pi. Đối với mạch tiếp theo, bạn sẽ sử dụng Python để tạo âm thanh từ Raspberry Pi

Loại bỏ các quảng cáo

còi

Trong mạch này, bạn sẽ nối một bộ rung áp điện đang hoạt động với Raspberry Pi. Bộ rung áp điện phát ra âm báo khi có dòng điện chạy qua. Sử dụng thành phần này, Raspberry Pi của bạn sẽ có thể tạo ra âm thanh

Giống như đèn LED, còi có chân dương và chân âm. Chân dương của còi sẽ dài hơn chân âm hoặc sẽ có dấu dương (

pi@raspberry:~ $ pwd
/home/pi
6) trên đầu còi cho biết chân nào là chân dương

Hãy tiếp tục và nối dây cho còi

  1. Đặt bộ rung trên breadboard, lưu ý vị trí của chân dương của bộ rung

  2. Kết nối dây nhảy từ nữ sang nam từ chân GND của Raspberry Pi với một lỗ trên cùng hàng bảng mạch với chân âm của bộ rung

  3. Kết nối dây nhảy từ nữ sang nam từ chân GPIO4 của Raspberry Pi với một lỗ trên cùng hàng bảng mạch với chân dương của bộ rung

Xác nhận hệ thống dây điện của bạn dựa trên sơ đồ bên dưới

Bàn phím đợi python

Với hệ thống dây điện được thiết lập, hãy chuyển sang mã. Tạo một tệp cho mạch này bên trong thư mục

$ ssh pi@[IP ADDRESS]
9. Gọi tệp này là
$ ssh pi@[IP ADDRESS]
28

pi@raspberrypi:~ $
9

Trong mã này, bạn sẽ tạo một thể hiện của lớp

$ ssh pi@[IP ADDRESS]
29 và gọi nó là phương thức
$ ssh pi@[IP ADDRESS]
30 để bật và tắt tiếng bíp. Hai tham số đầu tiên của phương thức
$ ssh pi@[IP ADDRESS]
30 là
$ ssh pi@[IP ADDRESS]
32 và
$ ssh pi@[IP ADDRESS]
33. Các tham số này lấy giá trị
$ ssh pi@[IP ADDRESS]
02 để đặt khoảng thời gian bật và tắt tiếng bíp. Giá trị mặc định cho cả hai là một giây

Bắt đầu bằng cách nhập

$ ssh pi@[IP ADDRESS]
29 từ mô-đun
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
3 và
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
4 từ mô-đun
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
5

pi@raspberrypi:~ $ python3
0

Tiếp theo, tạo một thể hiện của

$ ssh pi@[IP ADDRESS]
29 được gọi là
$ ssh pi@[IP ADDRESS]
40. Đặt chân GPIO thành
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
8

pi@raspberrypi:~ $ python3
1

Gọi phương thức

$ ssh pi@[IP ADDRESS]
30 trên
$ ssh pi@[IP ADDRESS]
40. Đặt tham số
$ ssh pi@[IP ADDRESS]
32 và
$ ssh pi@[IP ADDRESS]
33 thành
$ ssh pi@[IP ADDRESS]
46. Điều này sẽ làm cho còi kêu bíp nửa giây một lần

pi@raspberrypi:~ $ python3
2

Cuối cùng, thêm lệnh gọi tới

$ ssh pi@[IP ADDRESS]
07 để đảm bảo chương trình không thoát

pi@raspberrypi:~ $
6

Chương trình hoàn chỉnh của bạn sẽ trông như thế này

pi@raspberrypi:~ $ python3
4

Lưu tệp và chạy tệp để nghe tiếng bíp bật và tắt sau mỗi nửa giây

pi@raspberrypi:~ $ python3
5

Bạn sẽ nghe thấy âm thanh còi bật và tắt cho đến khi dừng chương trình bằng Ctrl + C . or Stop in Mu.

Ghi chú. Nếu bạn đang sử dụng Mu, thì có khả năng khi bạn dừng chương trình, âm báo sẽ tiếp tục. Để ngăn âm thanh, hãy tháo dây GND để ngắt mạch

Bạn cũng có thể phải khởi động lại Mu nếu âm thanh vẫn tiếp tục khi bạn kết nối lại dây GND

Tuyệt vời. Cho đến nay, bạn đã học cách điều khiển ba loại linh kiện điện tử khác nhau bằng Python trên Raspberry Pi. Đối với mạch tiếp theo, chúng ta hãy xem xét một thành phần phức tạp hơn một chút

Loại bỏ các quảng cáo

cảm biến chuyển động

Trong mạch này, bạn sẽ kết nối cảm biến chuyển động hồng ngoại thụ động (PIR) với Raspberry Pi. Cảm biến chuyển động hồng ngoại thụ động phát hiện bất kỳ chuyển động nào trong tầm nhìn của nó và gửi tín hiệu trở lại Raspberry Pi

Điều chỉnh cảm biến

Khi sử dụng cảm biến chuyển động, bạn có thể cần điều chỉnh độ nhạy của cảm biến với chuyển động và khoảng thời gian cảm biến sẽ gửi tín hiệu sau khi phát hiện chuyển động

Bạn có thể thực hiện điều chỉnh bằng cách sử dụng hai nút xoay ở bên cạnh cảm biến. Bạn sẽ biết chúng là mặt số nào vì chúng sẽ có một vết lõm hình chữ thập ở giữa, có thể điều chỉnh vết lõm này bằng tuốc nơ vít đầu Phillips

Hình ảnh bên dưới hiển thị các mặt số này ở mặt bên của cảm biến chuyển động

Bàn phím đợi python

Như hình ảnh hiển thị, nút xoay bên trái đặt thời gian chờ tín hiệu và nút xoay bên phải đặt độ nhạy của cảm biến. Bạn có thể xoay các mặt số này theo chiều kim đồng hồ hoặc ngược chiều kim đồng hồ để điều chỉnh chúng

  • Theo chiều kim đồng hồ tăng thời gian chờ và độ nhạy
  • Ngược chiều kim đồng hồ giảm thời gian chờ và độ nhạy

Bạn có thể điều chỉnh những thứ này dựa trên nhu cầu dự án của mình, nhưng đối với hướng dẫn này, hãy xoay cả hai mặt số ngược chiều kim đồng hồ. Điều này sẽ đặt chúng thành giá trị thấp nhất của chúng

Ghi chú. Đôi khi, cảm biến chuyển động và Raspberry Pi 3 sẽ không hoạt động chính xác cùng nhau. Điều này dẫn đến thỉnh thoảng dương tính giả từ cảm biến

Nếu bạn đang sử dụng Raspberry Pi 3, hãy đảm bảo di chuyển cảm biến càng xa Raspberry Pi càng tốt

Khi bạn đã điều chỉnh cảm biến chuyển động, bạn đã sẵn sàng thiết lập hệ thống dây điện. Thiết kế của cảm biến chuyển động không cho phép nó dễ dàng kết nối với breadboard. Bạn sẽ cần kết nối trực tiếp các chân GPIO của Raspberry Pi với các chân trên cảm biến chuyển động bằng dây nhảy

Hình ảnh bên dưới cho thấy vị trí của các chốt ở mặt dưới của cảm biến chuyển động

Bàn phím đợi python

Bạn có thể thấy có ba chân

  1. VCC cho điện áp
  2. OUT để giao tiếp với Raspberry Pi
  3. GND cho mặt đất

Sử dụng các chân này, bạn cần thực hiện các bước sau

  1. Kết nối dây nhảy từ nữ sang nữ từ chân 5V của Raspberry Pi với chân VCC của cảm biến
  2. Kết nối dây nhảy từ nữ sang nữ từ chân GPIO4 của Raspberry Pi với chân OUT của cảm biến
  3. Kết nối dây nhảy từ nữ sang nữ từ chân GND của Raspberry Pi với chân GND của cảm biến

Bây giờ hãy xác nhận hệ thống dây điện với sơ đồ bên dưới

Bàn phím đợi python

Với cảm biến chuyển động được điều chỉnh và kết nối với Raspberry PI, chúng ta hãy xem mã Python để phát hiện chuyển động. Bắt đầu bằng cách tạo một tệp cho mạch này bên trong thư mục

$ ssh pi@[IP ADDRESS]
9. Gọi tệp này là
$ ssh pi@[IP ADDRESS]
49

pi@raspberrypi:~ $ python3
6

Mã cho mạch này sẽ giống với mã bạn đã tạo trước đó. Bạn sẽ tạo một thể hiện của lớp

$ ssh pi@[IP ADDRESS]
50 và chuyển vào số pin GPIO
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
8 làm tham số. Sau đó, bạn sẽ xác định hai hàm và đặt chúng thành các thuộc tính
$ ssh pi@[IP ADDRESS]
52 và
$ ssh pi@[IP ADDRESS]
53 trên thể hiện ________0____50

Hãy xem mã

pi@raspberrypi:~ $ python3
7

$ ssh pi@[IP ADDRESS]
55 được đặt thành thuộc tính
$ ssh pi@[IP ADDRESS]
52 và được gọi khi cảm biến phát hiện chuyển động.
$ ssh pi@[IP ADDRESS]
57 được đặt thành thuộc tính
$ ssh pi@[IP ADDRESS]
53 và được gọi khi chuyển động đã dừng trong một khoảng thời gian nhất định. Thời gian này được xác định bởi mặt bên của cảm biến

Bạn sẽ nhận thấy rằng trước khi các thuộc tính

$ ssh pi@[IP ADDRESS]
52 và
$ ssh pi@[IP ADDRESS]
53 được thiết lập, sẽ có lệnh gọi tới
$ ssh pi@[IP ADDRESS]
61 trong trường hợp ________0____50. Phương pháp này sẽ tạm dừng việc thực thi mã cho đến khi cảm biến chuyển động không còn phát hiện bất kỳ chuyển động nào nữa. Điều này là để cảm biến sẽ bỏ qua bất kỳ chuyển động ban đầu nào có thể xảy ra khi chương trình đang khởi động

Ghi chú. Cảm biến chuyển động đôi khi có thể quá nhạy hoặc không đủ nhạy. Nếu bạn thấy kết quả không nhất quán trong bảng điều khiển khi chạy mã ở trên, thì hãy đảm bảo kiểm tra xem mọi thứ có được nối dây chính xác không. Bạn cũng có thể cần điều chỉnh đĩa lệnh độ nhạy trên cảm biến của mình

Nếu kết quả của bạn bị chậm trong bảng điều khiển, thì hãy thử điều chỉnh thuộc tính

$ ssh pi@[IP ADDRESS]
63 trên phiên bản
$ ssh pi@[IP ADDRESS]
50. Giá trị mặc định là 0. 5

pi@raspberrypi:~ $ python3
8

Điều này sẽ làm giảm số lượng chuyển động cần thiết để làm cho cảm biến hoạt động. Để biết thêm thông tin về lớp

$ ssh pi@[IP ADDRESS]
50, xem

Lưu mã và chạy nó để thử mạch phát hiện chuyển động của bạn

pi@raspberrypi:~ $ python3
9

Vẫy tay trước cảm biến. Khi phát hiện chuyển động lần đầu tiên,

$ ssh pi@[IP ADDRESS]
55 được gọi và thông tin sau được hiển thị trong bảng điều khiển

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
0

Bây giờ hãy ngừng vẫy tay trước cảm biến. Sau một vài giây, thông tin sau sẽ được hiển thị

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
1

Tuyệt vời. Bây giờ bạn có thể phát hiện chuyển động với Raspberry Pi của mình. Khi bạn vẫy tay với Raspberry Pi xong, hãy tiếp tục và nhấn Ctrl + C in the command line or press Stop in Mu to terminate the program.

Với mạch cuối cùng này, bạn đã học cách sử dụng Python trên Raspberry Pi để điều khiển bốn thành phần khác nhau. Trong phần tiếp theo, bạn sẽ kết hợp tất cả những điều này lại với nhau trong một dự án đầy đủ

Xây dựng hệ thống báo động kích hoạt chuyển động

Bây giờ bạn đã có cơ hội kết nối Raspberry Pi với nhiều đầu vào và đầu ra khác nhau, bạn sẽ tạo một dự án sử dụng những gì bạn đã học được cho đến nay

Trong dự án này, bạn sẽ xây dựng một hệ thống báo động được kích hoạt bằng chuyển động sẽ nhấp nháy đèn LED và phát âm thanh báo động khi phát hiện chuyển động trong phòng. Trên hết, bạn sẽ sử dụng Python để lưu dấu thời gian vào tệp CSV nêu chi tiết mỗi lần chuyển động xảy ra

hệ thống dây điện

Dưới đây là các bước để hoàn thành hệ thống dây điện

  1. Kết nối dây nhảy nữ-nam từ các chân 5V và GND của Raspberry Pi với các đường ray dương và âm ở mặt bên của bảng mạch

  2. Đặt một đèn LED trên breadboard và kết nối chân GPIO14 của Raspberry Pi với đèn LED bằng dây nhảy từ nữ sang nam

  3. Nối chân âm của đèn LED với chân âm của breadboard thông qua điện trở 330 Ω

  4. Đặt một bộ rung trên breadboard và kết nối chân GPIO15 của Raspberry Pi với bộ rung bằng dây nhảy từ nữ sang nam

  5. Kết nối chân âm của còi với thanh âm của bảng mạch khung bằng dây nhảy đực-đực

  6. Kết nối dây nhảy từ đầu cái sang đầu đực từ đường ray dương của bảng mạch khung với chân VCC của cảm biến

  7. Kết nối dây nhảy từ nữ sang nữ từ chân GPIO4 của Raspberry Pi với chân OUT của cảm biến

  8. Kết nối dây nhảy từ đầu cái sang đầu đực từ đường ray âm của bảng mạch khung với chân GND của cảm biến

Xác nhận nối dây theo sơ đồ bên dưới

Bàn phím đợi python

Được rồi, bây giờ bạn đã kết nối mạch, hãy tìm hiểu mã Python để thiết lập hệ thống báo động kích hoạt chuyển động của bạn

Mã số

Như thường lệ, hãy bắt đầu bằng cách tạo một tệp cho dự án này bên trong thư mục

$ ssh pi@[IP ADDRESS]
9. Đối với dự án này, hãy gọi tệp này là
$ ssh pi@[IP ADDRESS]
68

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
2

Điều đầu tiên bạn muốn làm là nhập mô-đun

$ ssh pi@[IP ADDRESS]
69 để bạn có thể lưu dấu thời gian khi phát hiện chuyển động. Ngoài ra, hãy nhập
$ ssh pi@[IP ADDRESS]
70 từ mô-đun
$ ssh pi@[IP ADDRESS]
71 để bạn có thể tham khảo tệp CSV của mình

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
3

Tiếp theo, nhập

$ ssh pi@[IP ADDRESS]
72 từ mô-đun
$ ssh pi@[IP ADDRESS]
72 để bạn có thể tạo dấu thời gian của sự kiện chuyển động

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
4

Cuối cùng, nhập các lớp thành phần bắt buộc từ

pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
3 cũng như
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
4 từ mô-đun
pi@raspberry:~/Desktop $ cd /home/pi
pi@raspberry:~ $ pwd
/home/pi
5

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
5

Khi đã sẵn sàng nhập, bạn có thể thiết lập ba thành phần điện tử mà bạn sẽ sử dụng. Tạo các thể hiện của các lớp

$ ssh pi@[IP ADDRESS]
13,
$ ssh pi@[IP ADDRESS]
29 và
$ ssh pi@[IP ADDRESS]
50. Đối với mỗi trong số này, hãy nhập số pin của chúng dưới dạng tham số

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
6

Tiếp theo, xác định vị trí của tệp CSV sẽ lưu trữ dấu thời gian mỗi khi phát hiện chuyển động. Bạn sẽ gọi nó là

$ ssh pi@[IP ADDRESS]
80. Tạo một từ điển để giữ các giá trị dấu thời gian sẽ được ghi vào CSV

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
7

Tạo phương thức lưu dữ liệu dấu thời gian vào tệp CSV. Khi tệp được tạo lần đầu tiên, một hàng tiêu đề sẽ được thêm vào

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
8

Định nghĩa một hàm

$ ssh pi@[IP ADDRESS]
81. Chức năng này sẽ có một số hành vi

  • Bắt đầu nháy và tắt
    $ ssh pi@[IP ADDRESS]
    
    21 cứ sau nửa giây
  • Tạo tiếng bíp
    $ ssh pi@[IP ADDRESS]
    
    40
  • Lưu dấu thời gian
    $ ssh pi@[IP ADDRESS]
    
    84 vào từ điển
    $ ssh pi@[IP ADDRESS]
    
    85

Thêm lệnh gọi tới

$ ssh pi@[IP ADDRESS]
86 để bạn có thể xem các sự kiện xảy ra trong khi chương trình đang chạy

>>> print("Hello from your Raspberry Pi!")
Hello from your Raspberry Pi!
9

Sau đó xác định hàm

$ ssh pi@[IP ADDRESS]
87 sẽ có các hành vi sau

  • Tắt
    $ ssh pi@[IP ADDRESS]
    
    21 và
    $ ssh pi@[IP ADDRESS]
    
    40
  • Lưu dấu thời gian
    $ ssh pi@[IP ADDRESS]
    
    90
  • Gọi
    $ ssh pi@[IP ADDRESS]
    
    91 để lưu dữ liệu chuyển động vào tệp CSV
  • Đặt lại từ điển
    $ ssh pi@[IP ADDRESS]
    
    85

Bạn cũng sẽ kiểm tra xem có tồn tại giá trị

$ ssh pi@[IP ADDRESS]
93 hay không trước khi chạy bất kỳ mã nào khác. Bạn chỉ muốn ghi vào CSV nếu dấu thời gian
$ ssh pi@[IP ADDRESS]
84 đã được ghi lại

$ ssh pi@[IP ADDRESS]
0

Thêm lệnh gọi tới

$ ssh pi@[IP ADDRESS]
61 để bỏ qua mọi chuyển động ban đầu

$ ssh pi@[IP ADDRESS]
1

Đặt thuộc tính

$ ssh pi@[IP ADDRESS]
52 và
$ ssh pi@[IP ADDRESS]
53 trên đối tượng
$ ssh pi@[IP ADDRESS]
50

$ ssh pi@[IP ADDRESS]
2

Cuối cùng, kết thúc đoạn mã bằng lệnh gọi tới

$ ssh pi@[IP ADDRESS]
07 để chương trình tiếp tục chạy. Mã Python đầy đủ sẽ trông như thế này

$ ssh pi@[IP ADDRESS]
3

Lưu tệp và chạy nó để kiểm tra cảnh báo phát hiện chuyển động mới của bạn

$ ssh pi@[IP ADDRESS]
4

Bây giờ nếu bạn vẫy tay trước bộ phát hiện chuyển động, thì tiếng còi sẽ bắt đầu phát ra tiếng bíp và đèn LED sẽ nhấp nháy. Nếu bạn dừng di chuyển trong vài giây, thì báo thức sẽ dừng. Trong bảng điều khiển, bạn sẽ thấy như sau

$ ssh pi@[IP ADDRESS]
5

Hãy tiếp tục và dừng chương trình bằng Stop in Mu hoặc Ctrl + C. Let’s check out the CSV file that was generated:

$ ssh pi@[IP ADDRESS]
6

Như bạn có thể thấy, dấu thời gian cho chuyển động của

$ ssh pi@[IP ADDRESS]
84 và
$ ssh pi@[IP ADDRESS]
90 đã được thêm vào tệp CSV

Xin chúc mừng. Bạn đã tạo một dự án điện tử không tầm thường với Python trên Raspberry Pi

Bước tiếp theo

Bạn không cần phải dừng lại ở đây. Có nhiều cách bạn có thể cải thiện dự án này bằng cách tận dụng khả năng của Python trên Raspberry Pi

Dưới đây là một số cách để tăng cấp dự án này

  • Kết nối Mô-đun máy ảnh Raspberry Pi và chụp ảnh bất cứ khi nào phát hiện chuyển động

  • Kết nối loa với Raspberry Pi và sử dụng để phát tệp âm thanh nhằm đe dọa kẻ xâm nhập

  • Thêm một nút vào mạch để cho phép người dùng bật hoặc tắt tính năng phát hiện chuyển động theo cách thủ công

Có nhiều cách để nâng cấp dự án này. Hãy cho chúng tôi biết những gì bạn nghĩ ra

Phần kết luận

Raspberry Pi là một thiết bị điện toán tuyệt vời ngày càng tốt hơn. Nó được tích hợp nhiều tính năng giúp nó trở thành thiết bị phù hợp cho điện toán vật lý

Trong hướng dẫn này, bạn đã học cách

  • Thiết lập Raspberry Pi và chạy mã Python trên đó
  • Đọc đầu vào từ các cảm biến
  • Gửi đầu ra đến các linh kiện điện tử
  • Xây dựng một dự án thú vị bằng Python trên Raspberry Pi

Python là sự bổ sung hoàn hảo cho Raspberry Pi và với những kỹ năng bạn đã học được, bạn đã sẵn sàng để giải quyết các dự án điện toán vật lý thú vị và sáng tạo. Chúng tôi nóng lòng muốn nghe những gì bạn xây dựng

Đánh dấu là đã hoàn thành

🐍 Thủ thuật Python 💌

Nhận một Thủ thuật Python ngắn và hấp dẫn được gửi đến hộp thư đến của bạn vài ngày một lần. Không có thư rác bao giờ. Hủy đăng ký bất cứ lúc nào. Được quản lý bởi nhóm Real Python

Bàn phím đợi python

Gửi cho tôi thủ thuật Python »

Giới thiệu về Jason Van Schooneveld

Bàn phím đợi python
Bàn phím đợi python

Jason là một nhà phát triển phần mềm có trụ sở tại Đài Bắc. Khi anh ấy không mày mò thiết bị điện tử hoặc xây dựng ứng dụng web Django, bạn có thể thấy anh ấy đi bộ đường dài trên những ngọn núi ở Đài Loan hoặc học tiếng Trung.

» Thông tin thêm về Jason


Mỗi hướng dẫn tại Real Python được tạo bởi một nhóm các nhà phát triển để nó đáp ứng các tiêu chuẩn chất lượng cao của chúng tôi. Các thành viên trong nhóm đã làm việc trong hướng dẫn này là

Bàn phím đợi python

Aldren

Bàn phím đợi python

David

Bàn phím đợi python

Geir Arne

Bàn phím đợi python

Joanna

Bàn phím đợi python

Gia-cốp

Bậc thầy Kỹ năng Python trong thế giới thực Với quyền truy cập không giới hạn vào Python thực

Tham gia với chúng tôi và có quyền truy cập vào hàng nghìn hướng dẫn, khóa học video thực hành và cộng đồng các Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Chuyên gia Kỹ năng Python trong thế giới thực
Với quyền truy cập không giới hạn vào Python thực

Tham gia với chúng tôi và có quyền truy cập vào hàng ngàn hướng dẫn, khóa học video thực hành và cộng đồng Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Bạn nghĩ sao?

Đánh giá bài viết này

Tweet Chia sẻ Chia sẻ Email

Bài học số 1 hoặc điều yêu thích mà bạn đã học được là gì?

Mẹo bình luận. Những nhận xét hữu ích nhất là những nhận xét được viết với mục đích học hỏi hoặc giúp đỡ các sinh viên khác. và nhận câu trả lời cho các câu hỏi phổ biến trong cổng thông tin hỗ trợ của chúng tôi