17 KiB
Raspberry Pi
Raspberry Pi adalah komputer papan tunggal. Anda boleh menambah sensor dan aktuator menggunakan pelbagai jenis peranti dan ekosistem, dan untuk pelajaran ini, kita akan menggunakan ekosistem perkakasan yang dipanggil Grove. Anda akan menulis kod untuk Pi anda dan mengakses sensor Grove menggunakan Python.
Persediaan
Jika anda menggunakan Raspberry Pi sebagai perkakasan IoT anda, terdapat dua pilihan - anda boleh mengikuti semua pelajaran ini dan menulis kod secara langsung pada Pi, atau anda boleh menyambung secara jauh ke Pi 'headless' dan menulis kod dari komputer anda.
Sebelum memulakan, anda juga perlu menyambungkan Grove Base Hat ke Pi anda.
Tugasan - persediaan
Pasang Grove Base Hat pada Pi anda dan konfigurasikan Pi.
-
Sambungkan Grove Base Hat ke Pi anda. Soket pada hat ini sesuai dengan semua pin GPIO pada Pi, meluncur sepenuhnya ke bawah pin untuk duduk dengan kukuh pada dasar. Ia akan menutupi Pi.
-
Tentukan cara anda ingin memprogram Pi anda, dan pergi ke bahagian yang berkaitan di bawah:
Kerja secara langsung pada Pi anda
Jika anda ingin bekerja secara langsung pada Pi anda, anda boleh menggunakan versi desktop Raspberry Pi OS dan memasang semua alat yang diperlukan.
Tugasan - kerja secara langsung pada Pi anda
Sediakan Pi anda untuk pembangunan.
- Ikuti arahan dalam panduan persediaan Raspberry Pi untuk menyediakan Pi anda, menyambungkannya ke papan kekunci/tetikus/monitor, menyambungkannya ke rangkaian WiFi atau ethernet, dan mengemas kini perisian.
Untuk memprogram Pi menggunakan sensor dan aktuator Grove, anda perlu memasang editor untuk menulis kod peranti, serta pelbagai perpustakaan dan alat yang berinteraksi dengan perkakasan Grove.
-
Setelah Pi anda dihidupkan semula, lancarkan Terminal dengan mengklik ikon Terminal pada bar menu atas, atau pilih Menu -> Accessories -> Terminal
-
Jalankan arahan berikut untuk memastikan OS dan perisian yang dipasang adalah terkini:
sudo apt update && sudo apt full-upgrade --yes
-
Jalankan arahan berikut untuk memasang semua perpustakaan yang diperlukan untuk perkakasan Grove:
sudo apt install git python3-dev python3-pip --yes git clone https://github.com/Seeed-Studio/grove.py cd grove.py sudo pip3 install . sudo raspi-config nonint do_i2c 0
Ini bermula dengan memasang Git, bersama dengan Pip untuk memasang pakej Python.
Salah satu ciri hebat Python adalah keupayaan untuk memasang Pip packages - ini adalah pakej kod yang ditulis oleh orang lain dan diterbitkan di Internet. Anda boleh memasang pakej Pip ke komputer anda dengan satu arahan, kemudian menggunakan pakej tersebut dalam kod anda.
Pakej Python Grove dari Seeed perlu dipasang dari sumber. Arahan ini akan mengklon repo yang mengandungi kod sumber untuk pakej ini, kemudian memasangnya secara tempatan.
💁 Secara lalai, apabila anda memasang pakej, ia tersedia di mana-mana sahaja pada komputer anda, dan ini boleh menyebabkan masalah dengan versi pakej - seperti satu aplikasi bergantung pada satu versi pakej yang rosak apabila anda memasang versi baru untuk aplikasi lain. Untuk mengatasi masalah ini, anda boleh menggunakan Python virtual environment, iaitu salinan Python dalam folder khusus, dan apabila anda memasang pakej Pip, ia hanya dipasang ke folder tersebut. Anda tidak akan menggunakan virtual environment semasa menggunakan Pi anda. Skrip pemasangan Grove memasang pakej Python Grove secara global, jadi untuk menggunakan virtual environment, anda perlu menyediakan virtual environment kemudian memasang semula pakej Grove secara manual di dalam environment tersebut. Lebih mudah untuk hanya menggunakan pakej global, terutamanya kerana ramai pembangun Pi akan mem-flash kad SD baru untuk setiap projek.
Akhirnya, ini mengaktifkan antara muka I2C.
-
Hidupkan semula Pi sama ada menggunakan menu atau menjalankan arahan berikut dalam Terminal:
sudo reboot
-
Setelah Pi dihidupkan semula, lancarkan semula Terminal dan jalankan arahan berikut untuk memasang Visual Studio Code (VS Code) - ini adalah editor yang akan anda gunakan untuk menulis kod peranti anda dalam Python.
sudo apt install code
Setelah dipasang, VS Code akan tersedia dari menu atas.
💁 Anda bebas menggunakan mana-mana IDE atau editor Python untuk pelajaran ini jika anda mempunyai alat pilihan, tetapi pelajaran ini akan memberikan arahan berdasarkan penggunaan VS Code.
-
Pasang Pylance. Ini adalah sambungan untuk VS Code yang menyediakan sokongan bahasa Python. Rujuk dokumentasi sambungan Pylance untuk arahan memasang sambungan ini dalam VS Code.
Akses jauh untuk menulis kod pada Pi
Daripada menulis kod secara langsung pada Pi, ia boleh dijalankan dalam mod 'headless', iaitu tidak disambungkan ke papan kekunci/tetikus/monitor, dan anda boleh mengkonfigurasi serta menulis kod padanya dari komputer anda menggunakan Visual Studio Code.
Sediakan Pi OS
Untuk menulis kod secara jauh, Pi OS perlu dipasang pada kad SD.
Tugasan - sediakan Pi OS
Sediakan Pi OS dalam mod headless.
-
Muat turun Raspberry Pi Imager dari halaman perisian Raspberry Pi OS dan pasangkannya.
-
Masukkan kad SD ke komputer anda, menggunakan penyesuai jika perlu.
-
Lancarkan Raspberry Pi Imager.
-
Dari Raspberry Pi Imager, pilih butang CHOOSE OS, kemudian pilih Raspberry Pi OS (Other), diikuti oleh Raspberry Pi OS Lite (32-bit).
💁 Raspberry Pi OS Lite adalah versi Raspberry Pi OS yang tidak mempunyai UI desktop atau alat berasaskan UI. Ini tidak diperlukan untuk Pi dalam mod headless dan menjadikan pemasangan lebih kecil serta masa boot lebih cepat.
-
Pilih butang CHOOSE STORAGE, kemudian pilih kad SD anda.
-
Lancarkan Advanced Options dengan menekan
Ctrl+Shift+X
. Pilihan ini membolehkan beberapa pra-konfigurasi Raspberry Pi OS sebelum ia di-image ke kad SD.-
Tandakan kotak Enable SSH, dan tetapkan kata laluan untuk pengguna
pi
. Ini adalah kata laluan yang akan anda gunakan untuk log masuk ke Pi nanti. -
Jika anda merancang untuk menyambung ke Pi melalui WiFi, tandakan kotak Configure WiFi, dan masukkan SSID dan kata laluan WiFi anda, serta pilih negara WiFi anda. Anda tidak perlu melakukan ini jika anda akan menggunakan kabel ethernet. Pastikan rangkaian yang anda sambungkan adalah sama dengan rangkaian komputer anda.
-
Tandakan kotak Set locale settings, dan tetapkan negara serta zon waktu anda.
-
Pilih butang SAVE.
-
-
Pilih butang WRITE untuk menulis OS ke kad SD. Jika anda menggunakan macOS, anda akan diminta memasukkan kata laluan anda kerana alat asas yang menulis imej cakera memerlukan akses istimewa.
OS akan ditulis ke kad SD, dan setelah selesai, kad akan dikeluarkan oleh OS, dan anda akan diberitahu. Keluarkan kad SD dari komputer anda, masukkan ke dalam Pi, hidupkan Pi dan tunggu kira-kira 2 minit untuk ia boot sepenuhnya.
Sambung ke Pi
Langkah seterusnya adalah mengakses Pi secara jauh. Anda boleh melakukannya menggunakan ssh
, yang tersedia pada macOS, Linux dan versi Windows terkini.
Tugasan - sambung ke Pi
Akses Pi secara jauh.
-
Lancarkan Terminal atau Command Prompt, dan masukkan arahan berikut untuk menyambung ke Pi:
ssh pi@raspberrypi.local
Jika anda menggunakan Windows versi lama yang tidak mempunyai
ssh
dipasang, anda boleh menggunakan OpenSSH. Anda boleh mencari arahan pemasangan dalam dokumentasi pemasangan OpenSSH. -
Ini sepatutnya menyambung ke Pi anda dan meminta kata laluan.
Keupayaan untuk mencari komputer di rangkaian anda menggunakan
<hostname>.local
adalah tambahan yang agak baru untuk Linux dan Windows. Jika anda menggunakan Linux atau Windows dan mendapat sebarang ralat tentang Hostname tidak ditemui, anda perlu memasang perisian tambahan untuk membolehkan rangkaian ZeroConf (juga dirujuk oleh Apple sebagai Bonjour):-
Jika anda menggunakan Linux, pasang Avahi menggunakan arahan berikut:
sudo apt-get install avahi-daemon
-
Jika anda menggunakan Windows, cara paling mudah untuk membolehkan ZeroConf adalah dengan memasang Bonjour Print Services for Windows. Anda juga boleh memasang iTunes for Windows untuk mendapatkan versi utiliti yang lebih baru (yang tidak tersedia secara berasingan).
💁 Jika anda tidak dapat menyambung menggunakan
raspberrypi.local
, maka anda boleh menggunakan alamat IP Pi anda. Rujuk dokumentasi alamat IP Raspberry Pi untuk arahan tentang beberapa cara mendapatkan alamat IP. -
-
Masukkan kata laluan yang anda tetapkan dalam Advanced Options Raspberry Pi Imager.
Konfigurasi perisian pada Pi
Setelah anda disambungkan ke Pi, anda perlu memastikan OS adalah terkini, dan memasang pelbagai perpustakaan serta alat yang berinteraksi dengan perkakasan Grove.
Tugasan - konfigurasi perisian pada Pi
Konfigurasikan perisian Pi yang dipasang dan pasang perpustakaan Grove.
-
Dari sesi
ssh
anda, jalankan arahan berikut untuk mengemas kini kemudian reboot Pi:sudo apt update && sudo apt full-upgrade --yes && sudo reboot
Pi akan dikemas kini dan reboot. Sesi
ssh
akan berakhir apabila Pi reboot, jadi tunggu kira-kira 30 saat kemudian sambung semula. -
Dari sesi
ssh
yang disambung semula, jalankan arahan berikut untuk memasang semua perpustakaan yang diperlukan untuk perkakasan Grove:sudo apt install git python3-dev python3-pip --yes git clone https://github.com/Seeed-Studio/grove.py cd grove.py sudo pip3 install . sudo raspi-config nonint do_i2c 0
Ini bermula dengan memasang Git, bersama dengan Pip untuk memasang pakej Python.
Salah satu ciri hebat Python adalah keupayaan untuk memasang Pip packages - ini adalah pakej kod yang ditulis oleh orang lain dan diterbitkan di Internet. Anda boleh memasang pakej Pip ke komputer anda dengan satu arahan, kemudian menggunakan pakej tersebut dalam kod anda.
Pakej Python Grove dari Seeed perlu dipasang dari sumber. Arahan ini akan mengklon repo yang mengandungi kod sumber untuk pakej ini, kemudian memasangnya secara tempatan.
💁 Secara lalai, apabila anda memasang pakej, ia tersedia di mana-mana sahaja pada komputer anda, dan ini boleh menyebabkan masalah dengan versi pakej - seperti satu aplikasi bergantung pada satu versi pakej yang rosak apabila anda memasang versi baru untuk aplikasi lain. Untuk mengatasi masalah ini, anda boleh menggunakan Python virtual environment, iaitu salinan Python dalam folder khusus, dan apabila anda memasang pakej Pip, ia hanya dipasang ke folder tersebut. Anda tidak akan menggunakan virtual environment semasa menggunakan Pi anda. Skrip pemasangan Grove memasang pakej Python Grove secara global, jadi untuk menggunakan virtual environment, anda perlu menyediakan virtual environment kemudian memasang semula pakej Grove secara manual di dalam environment tersebut. Lebih mudah untuk hanya menggunakan pakej global, terutamanya kerana ramai pembangun Pi akan mem-flash kad SD baru untuk setiap projek.
Akhirnya, ini mengaktifkan antara muka I2C.
-
Reboot Pi dengan menjalankan arahan berikut:
sudo reboot
Sesi
ssh
akan berakhir apabila Pi reboot. Tidak perlu menyambung semula.
Konfigurasi VS Code untuk akses jauh
Setelah Pi dikonfigurasi, anda boleh menyambung kepadanya menggunakan Visual Studio Code (VS Code) dari komputer anda - ini adalah editor teks pembangun percuma yang akan anda gunakan untuk menulis kod peranti anda dalam Python.
Tugasan - konfigurasi VS Code untuk akses jauh
Pasang perisian yang diperlukan dan sambung secara jauh ke Pi anda.
-
Pasang VS Code pada komputer anda dengan mengikuti dokumentasi VS Code.
-
Ikuti arahan dalam dokumentasi Pembangunan Jauh VS Code menggunakan SSH untuk memasang komponen yang diperlukan.
-
Mengikuti arahan yang sama, sambungkan VS Code ke Pi.
-
Setelah disambungkan, ikuti arahan mengurus sambungan untuk memasang sambungan Pylance secara jauh ke Pi.
Hello world
Adalah tradisi apabila memulakan dengan bahasa pengaturcaraan atau teknologi baru untuk mencipta aplikasi 'Hello World' - aplikasi kecil yang memaparkan teks seperti "Hello World"
untuk menunjukkan bahawa semua alat telah dikonfigurasi dengan betul.
Aplikasi Hello World untuk Pi akan memastikan bahawa anda telah memasang Python dan Visual Studio Code dengan betul.
Aplikasi ini akan berada dalam folder bernama nightlight
, dan ia akan digunakan semula dengan kod yang berbeza dalam bahagian tugasan ini untuk membina aplikasi nightlight.
Tugasan - hello world
Cipta aplikasi Hello World.
-
Lancarkan VS Code, sama ada secara langsung pada Pi, atau pada komputer anda dan sambungkan ke Pi menggunakan sambungan Remote SSH.
-
Lancarkan Terminal VS Code dengan memilih Terminal -> New Terminal, atau menekan
CTRL+`
. Ia akan terbuka ke direktori home penggunapi
. -
Jalankan arahan berikut untuk mencipta direktori untuk kod anda, dan cipta fail Python bernama
app.py
di dalam direktori tersebut:mkdir nightlight cd nightlight touch app.py
-
Buka folder ini dalam VS Code dengan memilih File -> Open... dan memilih folder nightlight, kemudian pilih OK.
-
Buka fail
app.py
dari penjelajah VS Code dan tambahkan kod berikut:print('Hello World!')
Fungsi
print
akan mencetak apa sahaja yang dihantar kepadanya ke konsol. -
Dari Terminal VS Code, jalankan arahan berikut untuk menjalankan aplikasi Python anda:
python app.py
💁 Anda mungkin perlu secara eksplisit memanggil
python3
untuk menjalankan kod ini jika anda mempunyai Python 2 yang dipasang selain Python 3 (versi terkini). Jika anda mempunyai Python 2 yang dipasang, maka memanggilpython
akan menggunakan Python 2 dan bukannya Python 3. Secara lalai, versi Raspberry Pi OS terkini hanya mempunyai Python 3 yang dipasang.Output berikut akan muncul di terminal:
pi@raspberrypi:~/nightlight $ python3 app.py Hello World!
💁 Anda boleh menemui kod ini dalam folder code/pi.
😀 Program 'Hello World' anda berjaya!
Penafian:
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI Co-op Translator. Walaupun kami berusaha untuk memastikan ketepatan, sila ambil perhatian bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidaktepatan. Dokumen asal dalam bahasa asalnya harus dianggap sebagai sumber yang berwibawa. Untuk maklumat yang kritikal, terjemahan manusia profesional adalah disyorkan. Kami tidak bertanggungjawab atas sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.