Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
Dalam proyek sederhana ini kita akan menggunakan sensor gerak untuk mendeteksi jika suatu objek lewat di depan Raspberry Pi kita. Kemudian kita akan menghitung berapa kali itu terjadi, dan mengirimkan nilai ini ke Ubidots.
Penghitung orang biasanya merupakan perangkat mahal yang digunakan dalam industri ritel untuk memahami bagaimana perilaku pembeli. Berkat Raspberry Pi dan Ubidots, kami dapat membuat penghitung orang yang berfungsi dalam beberapa jam dan dengan beberapa dolar!
Setelah kami mengirim data penghitungan orang ke Ubidots, kami dapat membuat grafik yang bagus untuk analisis, serta peringatan SMS/Email.
Langkah 1: Mendapatkan Bahan yang Tepat
Untuk menyelesaikan proyek ini, Anda memerlukan:
- A Raspberry Pi Model B
- Sensor PIR oleh Parallax
- Dongle WiFi USB yang kompatibel dengan Raspberry Pi
- Paket baterai USB untuk memberi daya pada Raspberry Pi (ini opsional jika Anda ingin membiarkan Pi sepenuhnya nirkabel)
- Tiga kabel jumper wanita-wanita
- Akun Ubidots - atau - Lisensi STEM
Langkah 2: Menghubungkan Semuanya
Sensor gerak PIR cukup mudah digunakan karena hanya memiliki tiga pin:
- V+
- GND
- Pin sinyal yang mengeluarkan "1" saat ada gerakan dan "0" saat tidak ada.
Tidak perlu menyolder apa pun, atau menulis I2C kompleks atau fungsi serial untuk mendeteksi sinyal ini; cukup colokkan kabel langsung ke pin GPIO Raspberry Pi Anda dan itu akan berhasil!
Langkah 3: Casing
Karena sensor PIR sangat sensitif terhadap gerakan, saya menggunakan sakelar jumper di belakangnya untuk mengatur sensibilitas serendah mungkin. Juga, saya mengambil kasing lama dari kacamata hitam dan membuat lubang di dalamnya, lalu menempatkan RPi dan sensor PIR di dalamnya. Dengan cara ini, sensor gerak sangat terfokus pada satu titik, bukannya begitu omnidirectional.
Langkah 4: Mengkodekan RPi. Anda
Pada titik ini, kami akan menganggap Anda telah melakukan pengaturan dasar Raspberry Pi Anda dan Anda melihat baris perintah Linux-nya. Jika tidak, kami sarankan untuk membaca panduan ini terlebih dahulu. Anda juga dapat memeriksa posting ini tentang menggunakan Wicd untuk mengatur WiFi Raspberry Pi Anda.
Mari kita mulai dengan memastikan kita memiliki semua library yang diperlukan:
$ sudo apt-get update$ sudo apt-get upgrade $ sudo apt-get install python-setuptools $ sudo easy_install pip $ pip install ubidots
Buat file baru bernama "peoplecounter.py":
$ sudo nano peoplecounter.py
Dan tulis ke dalamnya kode di bawah ini. Pastikan untuk mengganti nilai kunci API dan ID variabel dengan yang ada di akun Ubidots pribadi Anda. (Catatan: kodenya tidak terlalu elegan, tapi hei saya bukan pengembang Python, hanya seorang pria perangkat keras:)
Script terdiri dari loop yang memeriksa status pin #7 (sensor gerak). Jika terbaca "1", artinya ada pergerakan, maka variabel "peoplecount" bertambah dan menunggu 1,5 detik agar sensor gerak kembali normal. Ini dilakukan 10 kali, memastikan setidaknya ada 1 detik di antara setiap siklus, kemudian mengirimkan jumlah total "gerakan" ke Ubidots. Jika Anda perlu mengkalibrasi Penghitung Orang, Anda harus bermain dengan garis "time.sleep" dengan nilai lain.
dari ubidots impor ApiClient
impor RPi. GPIO sebagai GPIO
waktu impor
GPIO.setmode(GPIO. BCM)
GPIO.setup(7, GPIO. IN)
mencoba:
api =ApiClient("a21ebaf64e14d195c0044fcc3b9f6dab9d653af3")
orang = api.get_variable("5238cec3f91b282c7357a140")
kecuali: print "Tidak dapat terhubung ke API, periksa koneksi Internet Anda"
penghitung = 0
orangv = 0
sementara (1):
kehadiran = GPIO.input(7)
jika (kehadiran):
jumlah orang += 1
kehadiran = 0
waktu.tidur(1.5)
waktu.tidur(1)
penghitung += 1
jika (penghitung == 10):
cetak jumlah orang
people.save_value({'value':peoplecount})
penghitung = 0
orangv = 0
Langkah 5: Tampilkan Data Anda
Terakhir, buka dasbor Ubidots Anda dan tambahkan widget jenis "Pernyataan". Ini akan menampilkan jumlah total orang yang terdeteksi dalam jangka waktu yang Anda tentukan
Langkah 6: Mengakhiri
Proyek ini memberikan petunjuk tentang jumlah orang yang melewati titik tertentu. Itu tidak memberikan jumlah pasti orang, mengingat keterbatasan sensor gerak, tetapi dalam beberapa aplikasi ini mungkin cukup.
Data yang dikumpulkan dapat dengan mudah dikirim ke Ubidots Cloud, di mana ia dapat ditafsirkan dengan membuat peringatan, dasbor langsung, atau bahkan membagikan data ini di media sosial, sebagai kode sematan, atau hanya di tautan publik. Anda juga dapat membaca data ini dari aplikasi lain menggunakan Ubidots API.