View a markdown version of this page

Hubungkan Raspberry Pi atau perangkat lain - AWS IoT Core

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Hubungkan Raspberry Pi atau perangkat lain

Di bagian ini, kita akan mengkonfigurasi Raspberry Pi untuk digunakan dengan AWS IoT. Jika Anda memiliki perangkat lain yang ingin Anda sambungkan, petunjuk untuk Raspberry Pi menyertakan referensi yang dapat membantu Anda menyesuaikan instruksi ini ke perangkat Anda.

Ini biasanya memakan waktu sekitar 20 menit, tetapi bisa memakan waktu lebih lama jika Anda memiliki banyak peningkatan perangkat lunak sistem untuk diinstal.

penting

Mengadaptasi instruksi ini ke perangkat dan sistem operasi lain bisa menjadi tantangan. Anda harus memahami perangkat Anda dengan cukup baik untuk dapat menafsirkan instruksi ini dan menerapkannya ke perangkat Anda.

Jika Anda mengalami kesulitan saat mengonfigurasi perangkat AWS IoT, Anda dapat mencoba salah satu opsi perangkat lain sebagai alternatif, seperti Buat perangkat virtual dengan Amazon EC2 atauGunakan PC atau Mac Windows atau Linux Anda sebagai AWS IoT pesawat.

Menyiapkan perangkat Anda

Tujuan dari langkah ini adalah untuk mengumpulkan apa yang Anda perlukan untuk mengkonfigurasi perangkat Anda sehingga dapat memulai sistem operasi (OS), terhubung ke internet, dan memungkinkan Anda untuk berinteraksi dengannya di antarmuka baris perintah.

Untuk menyelesaikan tutorial ini, Anda memerlukan hal berikut:

  • Sebuah Akun AWS. Jika Anda tidak memilikinya, selesaikan langkah-langkah yang dijelaskan Penyiapan Akun AWS sebelum Anda melanjutkan.

  • Raspberry Pi 3 Model B atau model yang lebih baru. Ini mungkin bekerja pada versi sebelumnya dari Raspberry Pi, tetapi mereka belum diuji.

  • Raspberry Pi OS (32-bit) atau yang lebih baru. Sebaiknya gunakan versi terbaru dari Raspberry Pi OS. Versi OS sebelumnya mungkin berfungsi, tetapi mereka belum diuji.

    Untuk menjalankan contoh ini, Anda tidak perlu menginstal desktop dengan antarmuka pengguna grafis (GUI); Namun, jika Anda baru mengenal Raspberry Pi dan perangkat keras Raspberry Pi Anda mendukungnya, menggunakan desktop dengan GUI mungkin lebih mudah.

  • Ethernet atau WiFi koneksi.

  • Keyboard, mouse, monitor, kabel, catu daya, dan perangkat keras lain yang diperlukan oleh perangkat Anda.

penting

Sebelum Anda melanjutkan ke langkah berikutnya, perangkat Anda harus menginstal, dikonfigurasi, dan menjalankan sistem operasinya. Perangkat harus terhubung ke internet dan Anda harus dapat mengakses perangkat dengan menggunakan antarmuka baris perintahnya. Akses baris perintah dapat melalui keyboard, mouse, dan monitor yang terhubung langsung, atau dengan menggunakan antarmuka jarak jauh terminal SSH.

Jika Anda menjalankan sistem operasi pada Raspberry Pi Anda yang memiliki antarmuka pengguna grafis (GUI), buka jendela terminal pada perangkat dan lakukan instruksi berikut di jendela itu. Jika tidak, jika Anda menghubungkan ke perangkat Anda dengan menggunakan terminal jarak jauh, seperti PuTTY, buka terminal jarak jauh ke perangkat Anda dan gunakan itu.

Instal alat dan perpustakaan yang diperlukan untuk AWS IoT SDK Perangkat

Sebelum Anda menginstal AWS IoT Device SDK dan kode sampel, pastikan sistem Anda mutakhir dan memiliki alat dan pustaka yang diperlukan untuk menginstal SDK.

  1. Perbarui sistem operasi dan instal pustaka yang diperlukan

    Sebelum Anda menginstal AWS IoT Device SDK, jalankan perintah ini di jendela terminal pada perangkat Anda untuk memperbarui sistem operasi dan menginstal pustaka yang diperlukan.

    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get install cmake
    sudo apt-get install libssl-dev
  2. Instal Git

    Jika sistem operasi perangkat Anda tidak dilengkapi dengan Git terinstal, Anda harus menginstalnya untuk menginstal AWS IoT Device SDK untuk JavaScript.

    1. Uji untuk melihat apakah Git sudah diinstal dengan menjalankan perintah ini.

      git --version
    2. Jika perintah sebelumnya mengembalikan versi Git, Git sudah diinstal dan Anda dapat melompat ke Langkah 3.

    3. Jika kesalahan ditampilkan saat Anda menjalankan git perintah, instal Git dengan menjalankan perintah ini.

      sudo apt-get install git
    4. Uji lagi untuk melihat apakah Git diinstal dengan menjalankan perintah ini.

      git --version
    5. Jika Git diinstal, lanjutkan ke bagian berikutnya. Jika tidak, pecahkan masalah dan perbaiki kesalahan sebelum melanjutkan. Anda memerlukan Git untuk menginstal AWS IoT Device SDK untuk JavaScript.

Menginstal AWS IoT SDK Perangkat

Instal AWS IoT Device SDK.

Python

Di bagian ini, Anda akan menginstal Python, alat pengembangannya, dan AWS IoT Device SDK untuk Python di perangkat Anda. Instruksi ini adalah untuk Raspberry Pi yang menjalankan Raspberry Pi OS terbaru. Jika Anda memiliki perangkat lain atau menggunakan sistem operasi lain, Anda mungkin perlu menyesuaikan instruksi ini untuk perangkat Anda.

  1. Instal Python dan alat pengembangannya

    AWS IoT Perangkat SDK untuk Python memerlukan Python v3.5 atau yang lebih baru untuk diinstal pada Raspberry Pi Anda.

    Di jendela terminal ke perangkat Anda, jalankan perintah ini.

    1. Jalankan perintah ini untuk menentukan versi Python yang diinstal pada perangkat Anda.

      python3 --version

      Jika Python diinstal, itu akan menampilkan versinya.

    2. Jika versi yang ditampilkan Python 3.5 atau lebih besar, Anda dapat melompat ke Langkah 2.

    3. Jika versi yang ditampilkan kurang dariPython 3.5, Anda dapat menginstal versi yang benar dengan menjalankan perintah ini.

      sudo apt install python3
    4. Jalankan perintah ini untuk mengonfirmasi bahwa versi Python yang benar sekarang diinstal.

      python3 --version
  2. Uji untuk pip3

    Di jendela terminal ke perangkat Anda, jalankan perintah ini.

    1. Jalankan perintah ini untuk melihat apakah pip3 sudah diinstal.

      pip3 --version
    2. Jika perintah mengembalikan nomor versi, pip3 diinstal dan Anda dapat melompat ke Langkah 3.

    3. Jika perintah sebelumnya mengembalikan kesalahan, jalankan perintah ini untuk menginstalpip3.

      sudo apt install python3-pip
    4. Jalankan perintah ini untuk melihat apakah pip3 sudah diinstal.

      pip3 --version
  3. Instal arus AWS IoT SDK Perangkat untuk Python

    Instal AWS IoT Device SDK untuk Python dan unduh aplikasi contoh ke perangkat Anda.

    Di perangkat Anda, jalankan perintah ini.

    cd ~ python3 -m pip install awsiotsdk
    git clone https://github.com/aws/aws-iot-device-sdk-python-v2.git
JavaScript

Di bagian ini, Anda akan menginstal Node.js, manajer paket npm, dan Device AWS IoT SDK untuk JavaScript di perangkat Anda. Instruksi ini adalah untuk Raspberry Pi yang menjalankan Raspberry Pi OS. Jika Anda memiliki perangkat lain atau menggunakan sistem operasi lain, Anda mungkin perlu menyesuaikan instruksi ini untuk perangkat Anda.

  1. Instal versi terbaru dari Node.js

    Dev AWS IoT ice SDK untuk JavaScript kebutuhan Node.js dan manajer paket npm yang akan diinstal pada Raspberry Pi Anda.

    1. Unduh versi terbaru dari repositori Node dengan memasukkan perintah ini.

      cd ~ curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
    2. Instal Node dan npm.

      sudo apt-get install -y nodejs
    3. Verifikasi instalasi Node.

      node -v

      Konfirmasikan bahwa perintah menampilkan versi Node. Tutorial ini membutuhkan Node v10.0 atau yang lebih baru. Jika versi Node tidak ditampilkan, coba unduh repositori Node lagi.

    4. Verifikasi instalasi npm.

      npm -v

      Konfirmasikan bahwa perintah menampilkan versi npm. Jika versi npm tidak ditampilkan, coba instal Node dan npm lagi.

    5. Nyalakan ulang perangkat.

      sudo shutdown -r 0

      Lanjutkan setelah perangkat restart.

  2. Instal AWS IoT SDK Perangkat untuk JavaScript

    Instal AWS IoT Device SDK untuk JavaScript Raspberry Pi Anda.

    1. Klon AWS IoT ing Device SDK untuk JavaScript repositori ke aws-iot-device-sdk-js-v2 direktori home direktori Anda. Pada Raspberry Pi, home direktori adalah~/, yang digunakan sebagai home direktori dalam perintah berikut. Jika perangkat Anda menggunakan jalur yang berbeda untuk home direktori, Anda harus mengganti ~/ dengan jalur yang benar untuk perangkat Anda dalam perintah berikut.

      Perintah ini membuat ~/aws-iot-device-sdk-js-v2 direktori dan menyalin kode SDK ke dalamnya.

      cd ~ git clone https://github.com/aws/aws-iot-device-sdk-js-v2.git
    2. Ubah ke aws-iot-device-sdk-js-v2 direktori yang Anda buat pada langkah sebelumnya dan jalankan npm install untuk menginstal SDK. Perintah npm install akan memanggil build per aws-crt pustakaan yang dapat memakan waktu beberapa menit untuk menyelesaikannya.

      cd ~/aws-iot-device-sdk-js-v2 npm install

Instal dan jalankan aplikasi sampel

Di bagian ini, Anda akan menginstal dan menjalankan aplikasi pubsub sampel yang ditemukan di AWS IoT Device SDK. Aplikasi ini menunjukkan bagaimana perangkat Anda menggunakan pustaka MQTT untuk menerbitkan dan berlangganan pesan MQTT. Aplikasi contoh berlangganan topiktopic_1, menerbitkan 10 pesan ke topik tersebut, dan menampilkan pesan yang diterima dari broker pesan.

Instal file sertifikat

Aplikasi sampel memerlukan file sertifikat yang mengotentikasi perangkat untuk diinstal pada perangkat.

Untuk menginstal file sertifikat perangkat untuk aplikasi sampel
  1. Buat certs subdirektori di home direktori Anda dengan menjalankan perintah ini.

    cd ~ mkdir certs
  2. Ke ~/certs direktori, salin kunci pribadi, sertifikat perangkat, dan sertifikat CA root yang Anda buat sebelumnyaBuat AWS IoT sumber daya.

    Cara menyalin file sertifikat ke perangkat tergantung pada perangkat dan sistem operasi dan tidak dijelaskan di sini. Namun, jika perangkat Anda mendukung antarmuka pengguna grafis (GUI) dan memiliki browser web, Anda dapat melakukan prosedur yang dijelaskan dalam Buat AWS IoT sumber daya dari browser web perangkat Anda untuk mengunduh file yang dihasilkan langsung ke perangkat Anda.

    Perintah di bagian selanjutnya mengasumsikan bahwa file kunci dan sertifikat Anda disimpan di perangkat seperti yang ditunjukkan dalam tabel ini.

    Nama berkas sertifikat

    File

    Jalur file

    Sertifikat CA root

    ~/certs/Amazon-root-CA-1.pem

    Sertifikat perangkat

    ~/certs/device.pem.crt

    Kunci privat

    ~/certs/private.pem.key

Untuk menjalankan aplikasi sampel, Anda memerlukan informasi berikut:

Nilai parameter aplikasi

Parameter

Di mana menemukan nilainya

your-iot-endpoint

Di AWS IoT konsol, pilih Semua perangkat, lalu pilih Th ings.

Pada halaman Pengaturan di AWS IoT menu. Titik akhir Anda ditampilkan di bagian Titik akhir data perangkat.

your-iot-endpointNilai memiliki format:endpoint_id-ats.iot.region.amazonaws.com, misalnya,a3qj468EXAMPLE-ats.iot.us-west-2.amazonaws.com.

Python
Untuk menginstal dan menjalankan aplikasi sampel
  1. Arahkan ke direktori aplikasi sampel.

    cd ~/aws-iot-device-sdk-python-v2/samples
  2. Di jendela baris perintah, ganti your-iot-endpoint seperti yang ditunjukkan dan jalankan perintah ini.

    python3 pubsub.py --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
  3. Perhatikan bahwa contoh aplikasi:

    1. Terhubung ke AWS IoT layanan untuk akun Anda.

    2. Berlangganan topik pesan, topic_1, dan menampilkan pesan yang diterimanya pada topik tersebut.

    3. Menerbitkan 10 pesan ke topik, topic_1.

    4. Menampilkan output yang mirip dengan berikut ini:

    Connecting to a3qEXAMPLEffp-ats.iot.us-west-2.amazonaws.com with client ID 'test-0c8ae2ff-cc87-49d2-a82a-ae7ba1d0ca5a'... Connected! Subscribing to topic 'topic_1'... Subscribed with QoS.AT_LEAST_ONCE Sending 10 message(s) Publishing message to topic 'topic_1': Hello World! [1] Received message from topic 'topic_1': b'Hello World! [1]' Publishing message to topic 'topic_1': Hello World! [2] Received message from topic 'topic_1': b'Hello World! [2]' Publishing message to topic 'topic_1': Hello World! [3] Received message from topic 'topic_1': b'Hello World! [3]' Publishing message to topic 'topic_1': Hello World! [4] Received message from topic 'topic_1': b'Hello World! [4]' Publishing message to topic 'topic_1': Hello World! [5] Received message from topic 'topic_1': b'Hello World! [5]' Publishing message to topic 'topic_1': Hello World! [6] Received message from topic 'topic_1': b'Hello World! [6]' Publishing message to topic 'topic_1': Hello World! [7] Received message from topic 'topic_1': b'Hello World! [7]' Publishing message to topic 'topic_1': Hello World! [8] Received message from topic 'topic_1': b'Hello World! [8]' Publishing message to topic 'topic_1': Hello World! [9] Received message from topic 'topic_1': b'Hello World! [9]' Publishing message to topic 'topic_1': Hello World! [10] Received message from topic 'topic_1': b'Hello World! [10]' 10 message(s) received. Disconnecting... Disconnected!

    Jika Anda mengalami masalah dalam menjalankan aplikasi sampel, tinjauMemecahkan masalah dengan aplikasi sampel.

    Anda juga dapat menambahkan --verbosity Debug parameter ke baris perintah sehingga aplikasi sampel menampilkan pesan terperinci tentang apa yang dilakukannya. Informasi itu mungkin memberi Anda bantuan yang Anda butuhkan untuk memperbaiki masalah.

JavaScript
Untuk menginstal dan menjalankan aplikasi sampel
  1. Di jendela baris perintah Anda, navigasikan ke ~/aws-iot-device-sdk-js-v2/samples/node/pub_sub direktori yang dibuat SDK dan instal aplikasi sampel dengan menggunakan perintah ini. Perintah npm install akan memanggil build per aws-crt pustakaan yang dapat memakan waktu beberapa menit untuk menyelesaikannya.

    cd ~/aws-iot-device-sdk-js-v2/samples/node/pub_sub npm install
  2. Di jendela baris perintah, ganti your-iot-endpoint seperti yang ditunjukkan dan jalankan perintah ini.

    node dist/index.js --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
  3. Perhatikan bahwa contoh aplikasi:

    1. Terhubung ke AWS IoT layanan untuk akun Anda.

    2. Berlangganan topik pesan, topic_1, dan menampilkan pesan yang diterimanya pada topik tersebut.

    3. Menerbitkan 10 pesan ke topik, topic_1.

    4. Menampilkan output yang mirip dengan berikut ini:

    Publish received on topic topic_1 {"message":"Hello world!","sequence":1} Publish received on topic topic_1 {"message":"Hello world!","sequence":2} Publish received on topic topic_1 {"message":"Hello world!","sequence":3} Publish received on topic topic_1 {"message":"Hello world!","sequence":4} Publish received on topic topic_1 {"message":"Hello world!","sequence":5} Publish received on topic topic_1 {"message":"Hello world!","sequence":6} Publish received on topic topic_1 {"message":"Hello world!","sequence":7} Publish received on topic topic_1 {"message":"Hello world!","sequence":8} Publish received on topic topic_1 {"message":"Hello world!","sequence":9} Publish received on topic topic_1 {"message":"Hello world!","sequence":10}

    Jika Anda mengalami masalah dalam menjalankan aplikasi sampel, tinjauMemecahkan masalah dengan aplikasi sampel.

    Anda juga dapat menambahkan --verbosity Debug parameter ke baris perintah sehingga aplikasi sampel menampilkan pesan terperinci tentang apa yang dilakukannya. Informasi itu mungkin memberi Anda bantuan yang Anda butuhkan untuk memperbaiki masalah.

Melihat pesan dari aplikasi contoh di AWS IoT konsol

Anda dapat melihat pesan contoh aplikasi saat melewati broker pesan dengan menggunakan klien uji MQTT di AWS IoT konsol.

Untuk melihat pesan MQTT yang diterbitkan oleh aplikasi sampel
  1. TinjauanLihat pesan MQTT dengan AWS IoT Klien MQTT. Ini membantu Anda mempelajari cara menggunakan klien uji MQTT di AWS IoT konsol untuk melihat pesan MQTT saat melewati broker pesan.

  2. Buka klien uji MQTT di AWS IoT konsol.

  3. Berlangganan topik, topic_1.

  4. Di jendela baris perintah Anda, jalankan aplikasi sampel lagi dan tonton pesan di klien MQTT di AWS IoT konsol.

    Python
    cd ~/aws-iot-device-sdk-python-v2/samples python3 pubsub.py --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
    JavaScript
    cd ~/aws-iot-device-sdk-js-v2/samples/node/pub_sub node dist/index.js --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint