22 Modul Pembelajaran Berurutan
Lakukan setiap modul secara berurutan agar sistem dapat bekerja dengan kemampuan terbaiknya. Setiap modul adalah bekal untuk memahami modul berikutnya.
Mengubah Raspberry Pi dari kondisi kosong (belum bisa digunakan) menjadi sebuah komputer mini yang berfungsi penuh, dengan sistem operasi yang sudah terpasang dan siap dipakai.
Proses ini seperti merakit sebuah komputer baru dari komponen, lalu memasang sistem operasinya (misalnya Windows) untuk pertama kali. Tindakan ini memberikan 'otak' komputer (Raspberry Pi) perintah dasar untuk hidup dan berfungsi.
Raspberry Pi OS memberikan kecocokan dan
dukungan terbaik.
hostname), mengaktifkan SSH untuk
akses jarak jauh, dan memasukkan detail WiFi sebelum
pemasangan, perangkat akan otomatis siap dipakai saat
pertama kali dinyalakan.
Sistem berhasil menyala hingga menampilkan tampilan desktop. Koneksi ke jaringan WiFi terjadi secara otomatis. Tidak ada permintaan pengaturan tambahan yang muncul saat pertama kali menyala.
Menguasai penggunaan perintah dasar pada aplikasi Terminal (aplikasi untuk mengetik perintah) untuk berinteraksi dengan sistem operasi secara tepat dan cepat tanpa menggunakan mouse.
Jika desktop bergambar adalah komunikasi dengan komputer melalui gambar dan klik, maka interaksi berbasis teks adalah komunikasi via bahasa ketik yang dimengerti oleh manusia dan sistem komputer. Metode ini lebih cepat dan lebih kuat untuk tugas-tugas pengaturan sistem.
pwd
Fungsi: Perintah ini (Print Working Directory) adalah cara
bertanya pada sistem, "Di folder mana saya aktif saat
ini?"
ls -la
Fungsi: Perintah ini meminta daftar lengkap semua item
(file dan folder) di lokasi saat ini, termasuk detail
seperti izin akses dan file yang tersembunyi.
mkdir nama_proyek
Fungsi: Perintah ini (Make Directory) memberi perintah
untuk 'membuat sebuah folder baru' dengan nama yang
ditentukan.
cd nama_proyek
Fungsi: Perintah ini (Change Directory) memberi perintah
untuk 'pindah lokasi aktif' ke dalam folder yang baru saja
dibuat.
nano catatan.txt
Fungsi: Perintah ini membuka nano, sebuah
aplikasi edit teks sederhana. Ini memungkinkan pembuatan
atau perubahan file teks langsung dari Terminal. Simpan dan
keluar dengan mengikuti petunjuk keyboard di bagian bawah
layar.
Folder dan file berhasil dibuat melalui Terminal. Keberadaannya
dapat diperiksa menggunakan perintah ls, dan isinya
dapat dilihat dengan perintah cat catatan.txt.
Memahami perbedaan penting antara pengguna biasa dan superuser
(pengguna dengan hak akses tertinggi, disebut
root). Mengatur izin akses file untuk menjaga
keamanan sistem.
Bayangkan sistem file adalah sebuah gedung apartemen. Pengguna
biasa memiliki kunci untuk unit apartemennya sendiri. Superuser
(saat menggunakan sudo) memiliki kunci master yang
bisa membuka semua pintu, termasuk ruang mesin dan panel
listrik. Izin akses adalah aturan tentang kunci mana yang bisa
membuka pintu mana.
/etc. Sistem akan menolak dengan pesan
"Permission Denied". Ini adalah mekanisme pertahanan diri
sistem untuk mencegah kerusakan file pengaturan
penting.
sudo
Fungsi: Ulangi perintah yang sama, tetapi awali dengan
sudo (Super User Do). Perintah ini secara
efektif 'meminjam' kunci master untuk satu tugas spesifik
setelah identitas diverifikasi melalui kata sandi.
ls -l
Fungsi: Perintah ini menampilkan detail file, termasuk
kolom izin seperti -rwxr--r--. Ini adalah kode
keamanan: r (baca), w (tulis),
x (jalankan) untuk tiga kategori: pemilik,
grup, dan lainnya.
chmod
Fungsi: Perintah chmod (Change Mode) adalah
alat untuk mengubah kode keamanan tersebut. Izin dapat
ditambah atau dikurangi untuk pengguna yang berbeda,
misalnya membuat sebuah skrip bisa dijalankan atau membuat
file menjadi hanya-bisa-dibaca.
Menerima pesan galat "Permission Denied" saat mencoba operasi
terlarang. Berhasil melakukan perintah yang sama dengan
sudo. Berhasil mengubah izin akses file dan
memeriksa perubahannya melalui ls -l.
Mengganti alamat IP yang bisa berubah dengan alamat IP yang tetap. Ini sangat penting untuk perangkat yang perlu selalu ditemukan di alamat jaringan yang sama.
Alamat IP yang bisa berubah adalah seperti menyewa PO Box yang nomornya berubah setiap hari. Alamat IP yang tetap adalah seperti memiliki alamat rumah permanen. Untuk layanan yang perlu selalu ditemukan (seperti kamera keamanan), alamat permanen adalah sebuah keharusan.
raspi-config untuk Nama
Perangkat
Fungsi: Jalankan sudo raspi-config. Mengubah
nama perangkat (hostname) memberikan nama yang mudah diingat
di jaringan, misalnya pi-kamera, alih-alih nama
bawaan yang rumit.
/etc/dhcpcd.conf menggunakan
sudo nano. File ini mengontrol bagaimana
perangkat meminta alamat IP. Dengan mengeditnya, permintaan
otomatis akan diganti dengan pengaturan manual.
static ip_address)
dan alamat router (static routers). Ini secara
jelas memberitahu sistem untuk tidak lagi meminta alamat,
melainkan memakai yang ini.
sudo reboot. Proses mulai
ulang diperlukan agar perubahan pengaturan jaringan yang
mendasar ini dapat dibaca dan diterapkan oleh sistem.
Setelah mulai ulang, perintah hostname -I akan
menampilkan alamat IP tetap yang baru. Perangkat dapat di-ping
dari komputer lain di jaringan yang sama menggunakan alamat IP
tersebut.
Mengaktifkan metode akses jarak jauh untuk memungkinkan pengoperasian tanpa monitor, keyboard, dan mouse (dikenal sebagai operasi "headless").
SSH adalah seperti melakukan panggilan telepon (hanya suara/teks) ke Raspberry Pi untuk memberinya perintah. VNC adalah seperti melakukan panggilan video di mana layar Raspberry Pi ditampilkan dan dapat dikontrol dari jarak jauh.
raspi-config
Fungsi: Aplikasi sudo raspi-config adalah
panel kontrol pusat untuk mengaktifkan atau menonaktifkan
fitur-fitur inti pada Raspberry Pi.
Berhasil masuk dan menjalankan perintah di Raspberry Pi melalui koneksi SSH. Berhasil melihat dan mengontrol seluruh tampilan desktop Raspberry Pi dari komputer lain melalui VNC Viewer.
Modul 05 (Akses Jarak Jauh) harus telah diselesaikan. Layanan SSH harus aktif di Raspberry Pi dan alamat IP-nya diketahui.
Membangun jalur transfer file yang aman dan mudah digunakan antara komputer Windows dan Raspberry Pi menggunakan aplikasi WinSCP.
WinSCP adalah seperti File Explorer dengan dua jendela berdampingan: satu menunjukkan file di komputer lokal, yang lain menunjukkan file di Raspberry Pi. Ini memungkinkan pemindahan file dengan cara seret-dan-lepas (drag-and-drop) yang familiar.
WinSCP. Aplikasi ini
adalah penghubung bergambar untuk transfer file aman
(SCP/SFTP) yang memanfaatkan koneksi SSH.
SCP.
File yang diseret dari satu panel muncul di panel lainnya. File tersebut dapat diakses dan dibuka di perangkat tujuan, menandakan transfer data berhasil dan tanpa kerusakan.
Menguasai aturan dasar penulisan kode menggunakan bahasa Python. Ini adalah bekal untuk memberi perintah, mengatur logika, dan berinteraksi dengan komponen elektronik.
Belajar Python seperti belajar "tata bahasa" untuk berbicara dengan komputer. `Wadah data` (variabel) adalah kata benda, fungsi adalah kata kerja, dan struktur `if/else` adalah cara membuat kalimat sebab-akibat.
print() untuk menampilkan isi wadah
tersebut.
if-elif-else)
Fungsi: Struktur ini memungkinkan kode untuk menjalankan
bagian yang berbeda berdasarkan kondisi yang terpenuhi,
memberinya kemampuan untuk "membuat keputusan".
for dan
while)
Fungsi: Perulangan mengotomatisasi tugas yang berulang.
Loop for ideal untuk mengerjakan sesuatu pada
setiap item dalam sebuah daftar. Loop
while terus berjalan selama suatu kondisi
benar.
Kode Python berjalan tanpa menampilkan pesan galat. Hasil yang muncul di jendela "Shell" Thonny sesuai dengan logika yang telah ditulis.
Pemahaman dasar Python (Modul 07) diperlukan.
Memberi perintah dari kode Python untuk mengontrol komponen elektronik dari luar melalui pin GPIO (pin serbaguna), sehingga menghasilkan efek fisik yang terlihat.
Pin GPIO adalah seperti serangkaian sakelar lampu digital yang dapat dinyalakan atau dimatikan oleh kode. Menghubungkan LED adalah seperti memasang bola lampu ke salah satu sakelar tersebut.
PROSEDUR KESELAMATAN: Selalu matikan dan cabut kabel daya Raspberry Pi sebelum menyambungkan atau melepaskan komponen.
gpiozero
Kumpulan kode bernama gpiozero sudah terpasang
di Raspberry Pi OS. Kode ini menyediakan cara yang lebih
mudah untuk berinteraksi dengan pin GPIO, menyederhanakan
detail teknis menjadi perintah yang mudah dipahami (misal,
led.on()).
while True) yang
secara berurutan menyalakan LED, memberi jeda
(sleep), mematikan LED, dan memberi jeda lagi.
Ini menciptakan efek berkedip yang terus-menerus.
Lampu LED fisik pada breadboard berkedip secara teratur sesuai dengan jeda waktu yang diatur dalam kode, menunjukkan kontrol output digital berhasil.
Membaca data dari dunia nyata menggunakan dua jenis sensor umum: sensor digital (yang memberikan data langsung) dan sensor analog (yang memerlukan komponen penerjemah).
Sensor adalah 'indra' bagi Raspberry Pi. Sensor digital seperti termometer digital yang langsung menampilkan angka. Sensor analog seperti termometer raksa yang menunjukkan level, di mana diperlukan 'penerjemah' (ADC) untuk mengubah level tersebut menjadi angka yang dimengerti Pi.
gpiozero yang sudah ada.
Buat sebuah penampung data untuk sensor jarak yang terhubung
ke pin Trig=23 dan Echo=24. Di dalam perulangan, cetak nilai
jarak.distance.
sudo raspi-config dan aktifkan 'I2C
Interface' di menu "Interface Options". Ini adalah jalur
yang digunakan ADS1115 untuk berbicara dengan Pi.
pip install adafruit-circuitpython-ads1x15 di
Terminal. Ini akan memasang kode yang memudahkan pembacaan
data dari ADS1115.
Kode berhasil menampilkan nilai jarak dalam sentimeter dari HC-SR04 dan suhu dalam derajat Celsius dari LM35. Nilai-nilai ini berubah secara logis ketika kondisi fisik di sekitar sensor diubah.
Menampilkan data sensor yang dibaca secara terus-menerus di Terminal (aplikasi untuk mengetik perintah) dengan format yang jelas untuk keperluan pemantauan dan pemeriksaan.
Ini seperti membuat 'monitor detak jantung' sederhana untuk proyek. Alih-alih grafik yang rumit, data ditampilkan sebagai baris teks yang diperbarui secara berkala, memberikan gambaran langsung tentang 'kesehatan' atau status sistem.
while True dalam kode
Python untuk memastikan proses pembacaan dan pencetakan data
berjalan secara terus-menerus.
print() dengan
f-string (misal, f"Suhu: {suhu:.1f} C") untuk
membuat hasil yang terformat rapi. Ini menyisipkan nilai ke
dalam teks dan memungkinkan pembulatan desimal.
sleep)
Fungsi: Gunakan time.sleep() di akhir setiap
putaran. Ini memberikan jeda agar Terminal tidak dibanjiri
data terlalu cepat dan untuk mengurangi beban kerja
prosesor.
Terminal menampilkan baris data baru secara teratur sesuai jeda waktu. Data yang ditampilkan merespons perubahan kondisi sensor secara langsung.
Memahami dan mengaktifkan aturan komunikasi perangkat keras (disebut protokol) I2C dan UART. Ini adalah "bahasa" yang digunakan Raspberry Pi untuk berbicara dengan modul-modul canggih dan perangkat lain.
Bayangkan GPIO biasa adalah sakelar on/off. Protokol seperti I2C dan UART adalah seperti jalur telepon. Mereka memungkinkan percakapan yang lebih kompleks antara Pi dan perangkat lain, bukan hanya sinyal on/off.
raspi-config
Gunakan sudo raspi-config untuk mengakses
panel kontrol sistem.
pyserial di KEDUA Pi
Jalankan perintah pip install pyserial di
Terminal pada kedua Raspberry Pi. Kode bantu ini diperlukan
agar Python bisa menggunakan jalur komunikasi serial.
/dev/serial0. Di dalam perulangan tak terbatas,
gunakan perintah serial.write() untuk mengirim
pesan teks. Pesan harus diubah menjadi format bytes terlebih
dahulu (misal:
'Halo dari Pi 1\n'.encode('utf-8')). Beri jeda
singkat di setiap akhir perulangan.
/dev/serial0. Di dalam perulangan, periksa jika
ada data yang masuk. Jika ada, baca data tersebut dengan
serial.readline(), ubah kembali ke format teks
yang bisa dibaca (dengan .decode('utf-8')),
lalu cetak ke layar.
Setelah kedua kode dijalankan, teks 'Halo dari Pi 1' yang dikirim dari Pi Pengirim akan muncul berulang kali di layar Terminal Pi Penerima.
Modul 11 (Komunikasi Perangkat Keras) harus diselesaikan dan jalur komunikasi I2C sudah diaktifkan.
Membaca data secara spesifik dari sensor yang menggunakan aturan komunikasi I2C (contoh: sensor cahaya BH1750). Metode ini hemat pin karena hanya memerlukan dua pin GPIO (SDA dan SCL).
I2C bekerja seperti sistem alamat di sebuah jalan. Raspberry Pi adalah tukang pos, dan setiap sensor adalah rumah dengan nomor unik (alamat). Pi dapat mengirim permintaan ke alamat spesifik (misal, sensor BH1750) dan menerima data kembali darinya.
i2cdetect -y 1 di
Terminal. Kehadiran alamat sensor (biasanya
0x23) di hasil perintah memastikan koneksi
fisik yang benar.
pip install adafruit-circuitpython-bh1750.
adafruit_bh1750 dan board). Buat
koneksi ke jalur I2C, lalu buat penampung data untuk sensor.
Di dalam perulangan, gunakan perintah seperti
sensor.lux untuk mendapatkan nilai intensitas
cahaya.
Kode berhasil menampilkan nilai intensitas cahaya dalam Lux dan nilai tersebut berubah secara responsif terhadap perubahan kondisi lingkungan (misal, saat senter diarahkan ke sensor atau saat sensor ditutup dengan tangan).
Mengirim data dari sensor yang terhubung ke Raspberry Pi ke sebuah tampilan visual di ponsel menggunakan layanan online bernama Blynk, sehingga data dapat dipantau secara langsung dari mana saja.
Bayangkan Raspberry Pi adalah reporter di lapangan yang mengumpulkan data. Blynk adalah studio berita di ponsel. Sebuah Kunci Akses Rahasia (Authentication Token) adalah 'kartu pers' reporter agar ia bisa mengirim laporannya ke studio, dan Komponen Tampilan adalah 'layar TV' di studio untuk menampilkan laporan tersebut.
pip install blynklib. Perintah ini akan
memasang kumpulan kode Python untuk Blynk, yang menangani
semua logika koneksi ke layanan Blynk.
blynk.virtual_write() untuk mengirim data ke
Virtual Pin yang sesuai.
Komponen Tampilan di panel kontrol aplikasi Blynk pada ponsel menampilkan dan memperbarui nilai data sensor secara langsung sesuai dengan data yang dikirim oleh Raspberry Pi.
Memahami cara kerja metode komunikasi MQTT, sebuah standar industri untuk Internet of Things (IoT) yang sangat ringan dan hemat sumber daya.
MQTT bekerja seperti sistem papan pengumuman. Pengirim Pesan menempelkan pesan di papan dengan kategori tertentu (Topic). Penerima Pesan hanya melihat pesan dari kategori yang mereka minati. Sebuah Pusat Pesan adalah pengelola papan pengumuman tersebut.
rumah/kamar/suhu) yang berfungsi sebagai alamat
atau kategori data. Ini memungkinkan penyaringan
pesan.
Mampu menjelaskan peran setiap komponen dan alur data dalam skenario komunikasi MQTT. Memahami keuntungannya: pengirim dan penerima tidak perlu saling mengetahui keberadaan satu sama lain.
Memasang dan menjalankan sebuah Pusat Pesan MQTT di Raspberry Pi itu sendiri, menciptakan jaringan IoT lokal yang tidak bergantung pada internet.
Ini seperti membangun 'kantor pos' lokal di dalam gedung sendiri. Semua surat (data) antar ruangan (perangkat) diurus secara internal tanpa harus keluar ke sistem pos publik (internet).
sudo apt install mosquitto mosquitto-clients.
Perintah ini memasang perangkat lunak Pusat Pesan (bernama
Mosquitto) dan alat bantu berbasis teks untuk
pengujian.
sudo systemctl status mosquitto untuk
memastikan pusat pesan berjalan secara otomatis di latar
belakang.
mosquitto_sub -t "test/topic". Terminal ini
sekarang akan mendengarkan pesan apa pun di topik
"test/topic".
mosquitto_pub -t "test/topic" -m "Halo Dunia".
Perintah ini mengirimkan pesan ke topik yang sama.
Teks "Halo Dunia" yang dikirim dari Terminal kedua langsung muncul di Terminal pertama, menandakan pusat pesan berhasil meneruskan pesan.
Mengatur kode Python agar bisa mengirim dan menerima data MQTT secara otomatis.
Ini adalah cara mengajari sepotong kode untuk 'menulis surat' (mengirim data) dan 'membaca kotak surat' (menerima data) secara otomatis, tanpa perlu campur tangan manual melalui Terminal.
pip install paho-mqtt.
Kumpulan kode ini menyediakan fungsi-fungsi Python untuk
berkomunikasi dengan pusat pesan MQTT.
client.publish() di dalam
sebuah perulangan untuk mengirim data.
on_message. Fungsi ini akan dijalankan secara
otomatis setiap kali pesan baru diterima.
client.loop_forever() untuk memulai proses
mendengarkan pesan tanpa henti.
Data yang dikirim oleh kode pengirim muncul di konsol dari kode penerima yang sedang berjalan secara langsung.
Memasang dan mengamankan sebuah sistem penyimpanan data (bernama MariaDB) untuk menyimpan data sensor jangka panjang secara rapi.
Ini seperti membangun sebuah 'lemari arsip' digital yang sangat rapi. Sistem penyimpanan adalah lemarinya, tabel adalah laci-lacinya, dan kolom adalah label di setiap laci untuk menyimpan data historis dengan baik.
sudo apt install mariadb-server untuk memasang
perangkat lunak penyimpanan data.
sudo mysql_secure_installation. Skrip ini akan
memandu proses penting seperti mengatur kata sandi utama dan
menghapus pengaturan bawaan yang tidak aman.
sudo mysql. Gunakan perintah SQL
CREATE DATABASE untuk membuat wadah penyimpanan
baru, lalu CREATE TABLE untuk menentukan
struktur kolom penyimpan data.
Berhasil masuk ke sistem penyimpanan data. Perintah
SHOW TABLES; menampilkan tabel yang baru saja
dibuat dengan struktur kolom yang benar.
Modul 16 (Kode MQTT) dan 17 (Penyimpanan Data) harus diselesaikan.
Menyimpan data sensor yang diterima oleh kode Python secara permanen ke dalam tabel di sistem penyimpanan data MariaDB.
Ini seperti menyewa seorang 'juru tulis' (konektor) yang bisa berbicara bahasa Python dan bahasa sistem penyimpanan data. Kode Python memberikan data kepada juru tulis, dan ia menuliskannya dengan rapi di lemari arsip.
pip install mysql-connector-python. Kode bantu
ini berfungsi sebagai "penerjemah" antara Python dan sistem
penyimpanan data MariaDB/MySQL.
INSERT
Fungsi: Setiap kali data baru diterima, buat perintah SQL
INSERT dalam bentuk
rangkaian teks. Gunakan
cursor.execute() untuk mengirim perintah ini ke
sistem penyimpanan.
commit()
Fungsi: Panggil connection.commit(). Perintah
ini menyimpan semua perubahan yang telah dijalankan secara
permanen.
Setelah kode berjalan, perintah
SELECT * FROM nama_tabel; di dalam sistem
penyimpanan data akan menampilkan baris-baris data sensor yang
dikirim oleh kode Python.
Merancang dan menerapkan sebuah susunan jaringan di mana beberapa Raspberry Pi sensor melaporkan data ke satu Raspberry Pi pusat.
Ini seperti membangun sebuah jaringan reporter. Setiap reporter (Raspberry Pi Sensor) mengirimkan laporannya ke satu kantor berita pusat (Raspberry Pi Pusat), yang kemudian mengumpulkan dan memproses semua informasi.
localhost, melainkan alamat IP tetap dari
Perangkat Pusat.
Catatan di pusat pesan atau kode penerima pada Perangkat Pusat menunjukkan pesan masuk dari beberapa alamat IP Raspberry Pi Node yang berbeda, membuktikan komunikasi antar perangkat berhasil.
Menerapkan praktik keamanan dasar untuk melindungi perangkat IoT dari akses tidak sah dan ancaman umum, memperkuat pertahanan sistem.
Ini seperti mengamankan sebuah rumah. Mengubah kata sandi adalah mengganti kunci pintu. Mengaktifkan dinding api digital adalah menutup semua jendela kecuali beberapa yang penting. Mengamankan SSH dan MQTT adalah memasang kunci tambahan pada pintu-pintu tersebut.
passwd untuk mengubah kata
sandi pengguna. Ini adalah langkah pertahanan pertama dan
paling penting.
ufw)
Fungsi: Pasang ufw. Gunakan
sudo ufw allow hanya untuk
pintu data bernomor yang benar-benar
dibutuhkan (misal, 22 untuk SSH, 1883 untuk MQTT). Kemudian
aktifkan dengan sudo ufw enable.
/etc/ssh/sshd_config. Ubah
PermitRootLogin menjadi no untuk
mencegah login jarak jauh menggunakan akun dengan kekuatan
tertinggi.
Upaya masuk sebagai root melalui SSH ditolak. Kode
pengirim MQTT tidak dapat terhubung ke pusat pesan tanpa
memberikan nama pengguna dan kata sandi yang valid.
Pemahaman dasar Python (Modul 07) dan cara kerja MQTT (Modul 14 & 16) diperlukan.
Membangun sebuah aplikasi web di belakang layar menggunakan kumpulan alat bantu Python Flask, yang berfungsi sebagai jembatan antara data IoT dan tampilan web.
Flask adalah 'mesin' di belakang panggung sebuah situs web. MQTT adalah pemasok data mentah. Kode yang ditulis akan membuat mesin Flask mengambil data dari MQTT dan menampilkannya di 'jendela' (browser) untuk dilihat penonton.
pip install Flask untuk
memasang kumpulan alat bantu web yang ringan ini.
threading untuk menjalankan
kode penerima MQTT dalam sebuah proses terpisah. Ini penting
agar kode penerima (yang berjalan terus-menerus) tidak
menghentikan layanan web.
@app.route('/') untuk
menentukan apa yang terjadi ketika seseorang mengakses
alamat utama layanan web. Fungsi di bawahnya harus membaca
nilai dari wadah data dan menampilkannya.
Mengakses alamat http://localhost:5000 di browser
Raspberry Pi akan menampilkan data sensor terbaru. Halaman akan
diperbarui dengan data baru setiap kali di-refresh.
Modul 21 (Menghubungkan dengan Web) harus diselesaikan. Raspberry Pi harus memiliki alamat IP tetap (Modul 04).
Menyajikan sebuah tampilan visual web yang datanya bisa berubah-ubah di Raspberry Pi, membuatnya dapat diakses dari perangkat apa pun di jaringan lokal yang sama.
Ini seperti mengubah restoran dari 'hanya melayani diri sendiri'
(localhost) menjadi 'terbuka untuk umum' di lingkungan sekitar
(jaringan lokal). Pengaturan host='0.0.0.0' adalah
seperti memasang tanda "Buka" di pintu depan.
render_template
Fungsi: Ubah perintah di alamat web Flask untuk menggunakan
render_template('index.html', ...). Ini
memberitahu Flask untuk mengambil file HTML, menyisipkan
data ke dalamnya, dan mengirimkan hasilnya ke browser.
app.run()), tambahkan opsi tambahan
host='0.0.0.0'. Pengaturan ini memberitahu
layanan web untuk 'mendengarkan' koneksi dari semua alamat
IP di jaringan, bukan hanya dari dirinya sendiri.
http://<ALAMAT_IP_RASPBERRY_PI>:5000.
Halaman web berhasil dimuat di browser perangkat lain di jaringan. Halaman tersebut menampilkan data sensor paling baru sesuai dengan format yang ditentukan dalam file HTML.
Proses untuk 22 modul telah selesai. Pengetahuan dasar dan lanjutan untuk mengoperasikan Raspberry Pi dan sistem IoT telah berhasil dibangun. Lanjutkan eksplorasi mandiri.