Isi kandungan:
- Langkah 1: Perkakasan dan Protokol Diperlukan
- Langkah 2: Sambungkan Mikrofon dan Sensor PIR
- Langkah 3: Buat Alur Kerja di Zapier
- Langkah 4: Skrip Google
- Langkah 5: Sambungkan Aliran Dengan Kod Arduino
- Langkah 6: Tinjauan, Kesimpulan dan Penskalaan Masa Depan
Video: IDC2018IOT: Snitcher Bilik Mesyuarat: 6 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:11
MASALAH
Seperti yang kita ketahui, trend ruang kerja telah meningkat sejak beberapa tahun kebelakangan ini, bersama dengan teknologi canggih yang menentukan pilihan ruang kerja khusus yang sesuai dengan keperluan anda.
Salah satu ciri utama yang ditawarkan adalah bilik mesyuarat bersama yang ditawarkan kepada anggota ruang kerja bersama, yang dikendalikan oleh (biasanya) platform kalendar sederhana.
Masalah berulang apabila jadual orang cenderung dinamik.
Seseorang mungkin menempah bilik dengan berfikir bahawa dia mungkin memerlukannya dan tidak mahu melewatkan slot waktu.
Walaupun seseorang tidak akan menggunakan slot waktu itu akhirnya, dia tidak akan peduli untuk memberitahu dan membatalkannya demi orang lain, kerana sayangnya itu adalah sifat manusia.
BAGAIMANA KITA MENYELESAIKANNYA?
Menggunakan teknologi IoT - memeriksa suara dan pergerakan di ruang pertemuan yang ditentukan, kami memeriksa, setiap selang waktu tertentu, sama ada bilik ditempah dan benar-benar dihuni atau tidak:
1. Sekiranya ia tidak ditempah, jangan buat apa-apa.
2. Sekiranya ia dipesan, periksa sama ada terdapat pergerakan atau bunyi yang dikesan;
Sekiranya ada, jangan buat apa-apa.
Jika tidak ada yang terdeteksi, kirimkan pesan amaran (melalui e-mel) kepada pengguna yang menempah ruangan yang bertanya apakah ruangan itu masih digunakan. melainkan jika pengguna akan menyatakan dia masih menggunakan ruangan, status kamar akan diubah menjadi "Tersedia".
* Di sini, kami menggabungkan projek kami dengan Kalendar Google untuk menggeneralisasikannya sebanyak mungkin.
Langkah 1: Perkakasan dan Protokol Diperlukan
1. Kami menggunakan NOSEMCU supaya kami dapat mengemas kini sesuatu secara dinamik menggunakan sambungan WIFI.
2. Sensor mikrofon yang akan "membaca" bunyi di dalam bilik.
3. Sensor PIR yang akan memeriksa sama ada terdapat pergerakan.
Untuk penggunaan perisian dan pelayan, selain kod di Arduino, kami menggunakan Skrip Google dan Zapier untuk menyokong sistem kami dalam talian. Anda dapat melihat aliran dalam gambar yang ditambahkan (dan PDF).
Kami menggunakan Zapier untuk menghubungkan aplikasi dan mengautomasikan aliran kerja kami (seperti IFTTT) dan kami menggunakan Skrip Google untuk membantu kami berkomunikasi dengan Kalendar Google. Skrip yang kami tulis adalah menghasilkan e-mel pencipta acara sehingga kami dapat mengirimnya melemparkan Zapier dan memeriksa apakah pengguna meminta untuk menahan ruangan (dengan menyimpan beberapa maklumat di Google Spreadsheet) sebelum menghapus acara tersebut.
Langkah 2: Sambungkan Mikrofon dan Sensor PIR
Kami ingin memeriksa nilai rata-rata catatan mikrofon ke NODEMCU ketika orang bercakap (jelas, di setiap bilik mempunyai latar belakang yang berbeza). Kami melakukan beberapa ujian dan menyedari bahawa tahap kebisingan rata-rata adalah bilik tempat kami bekerja berada di atas 50.
Sensor PIR hanya memberikan nilai TINGGI atau RENDAH jadi kami hanya memeriksa tahap kepekaan yang paling tepat untuk ruangan yang kami periksa. Panduan ini cukup berguna.
Sambungan KAMI:
Mikrofon - seperti dalam gambar Sensor PIR: GND> GND, OUT> D7, VCC> VN (5V)
Langkah 3: Buat Alur Kerja di Zapier
Untuk mengetahui sama ada ruangan itu benar-benar kosong atau masih digunakan (dan pengguna berehat misalnya), kami ingin membuat aliran yang memastikannya, tepat setelah NodeMCU melepaskan Webhook ke Zapier yang memberitahu bahawa bilik kosong:
(1) TRIGGER - CATCH HOOKZapier menangkap Webhook (yang akan dihantar oleh NODEMCU)
(2) TINDAKAN - GETZapier mengirim Webhook lain untuk mendapatkan data acara;> Ia memanggil (menjalankan) GoogleScript - GetCurrentEmailEventID (penjelasan pada langkah berikut), untuk mendapatkan data peristiwa terkini - nama acara, ID peristiwa, email pengguna.
(3) PENAPIS - HANYA TERUS JIKA
Teruskan ke langkah seterusnya hanya jika ada acara (apa-apa peristiwa) yang sedang berlaku di kalendar (BILIK ADALAH BISY), jika tidak, berhenti kerana ruangan kosong.
(4) TINDAKAN - GMAILZapier mengirim e-mel, melalui Gmail, kepada pengguna yang menempah ruangan (dapatkan maklumat ini pada langkah 2)
(5) TINDAKAN - KELUARAN TIDAK Biarkan waktu pengguna untuk membalas e-mel.- Jika pengguna mengklik pautan: panggil (jalankan) GoogleScript - ApproveCurrentEvent (Oleh itu Ruangan itu dikeluarkan dari senarai 'Ruangan untuk dihapus', dan bilik masih ditandakan sebagai diduduki.)
(6) TINDAKAN - DAPATKAN Selepas 5 minit, Zapier memanggil (berjalan) GoogleScript - DeleteCurrentEvent- Sekiranya pengguna tidak mengklik pada pautan
Periksa sama ada ID ruangan ada dalam senarai 'Ruangan untuk dihapuskan'
ia hanya membuang acara.
Langkah 4: Skrip Google
Ketika kami mengintegrasikan keseluruhan sistem, GoogleScripts adalah pilihan IDE yang sepele, Oleh itu, kami menggunakan Perpustakaan Google yang relevan. Akan berubah mengikut Platform Pemesanan Bilik.
(1) GetCurrentEmailEventID
Dijalankan oleh panggilan Webhook.
Menggunakan ofset tertentu untuk menghilangkan kemungkinan pembatalan kehilangan, mendapatkan data peristiwa semasa.
(2) ApproveCurrentEvent
Dijalankan dengan klik pengguna.
Sekiranya terdapat persetujuan pengguna bahawa ruangan masih digunakan, hapus ID acara dari 'Ruangan untuk dihapus'. Kami menggunakan helaian Google, bentuk senarai lain mungkin relevan di sini.
(3) DeleteCurrentEvent
Dijalankan oleh panggilan Webhook.
Mencari ID peristiwa yang berkaitan dalam senarai (helaian Google) dan menghapus peristiwa itu dari kalendar.
Langkah 5: Sambungkan Aliran Dengan Kod Arduino
Kod yang dilampirkan menghubungkan ke sensor yang kami periksa beberapa langkah yang lalu ke sistem dalam talian (kalendar Google dalam kes kami). Ia memeriksa apakah ruangan sibuk dan kemudian jika tidak, ia mengirimkan permintaan HTTP (Webhook) yang memulakan permintaan acara penghapusan pada Zapier.
Langkah 6: Tinjauan, Kesimpulan dan Penskalaan Masa Depan
Cabaran utama yang harus kita hadapi adalah merangkumi semua kes penting ketika memutuskan untuk membebaskan bilik mesyuarat. Kami kemudian harus membuat mesin negara mempertimbangkan setiap kemungkinan kasus, sehingga kesalahan tidak akan terjadi dan ruangan akan ditetapkan hanya tersedia bila seharusnya.
Sebagai contoh, jika bilik ditempah untuk beberapa kumpulan yang pada masa ini tidak ada di sana (sebagai waktu rehat, misalnya), tetapi masih memerlukannya, NODEMCU akan mengesan bahawa bilik itu percuma> MASALAH.
Kemudian, penyelesaian kami adalah menghantar e-mel kepada pengguna yang menempah bilik (yang tidak mudah difahami) pesanan yang memberikan pilihan untuk terus memegang bilik.
Sekiranya pengguna tidak membalas dalam waktu tertentu (kami menetapkannya menjadi 5 minit, tetapi dapat diubah dengan mudah), kami menghapus acara dari kalendar (dan membebaskan ruangan).
Dengan cara itu, kita akhirnya berjaya menangani semua senario yang mungkin dan membuat sistem kerja.
BATASAN SISTEM KAMI:
1. Sensor yang digunakan mestilah sangat tepat & sensitif.
2. Ukuran bilik terhad pada radius / jarak sensor.
3. Kita harus bergantung pada respons pengguna.
4. Sistem kami dibina menggunakan beberapa platform (kalendar Google, Gmail, Zapier dll) dan perlu menggunakan perkhidmatan mereka untuk melakukan.
5. Menskalakan perkhidmatan ini untuk beberapa bilik (bukannya penduaan keseluruhan sistem) akan memerlukan pengendalian tambahan dengan ID bilik.
6. Sistem ini hanya automatik dan tidak ada pilihan manual untuk membatalkan tempahan bilik.
PERKEMBANGAN MASA DEPAN:
Kami pasti akan meningkatkan sistem dengan dua cara:
1. Keupayaan untuk bekerja dengan platform kalendar lain (jadi mana-mana syarikat ruang kerja boleh menggunakannya).
2. Keupayaan untuk mengendalikan beberapa bilik, lantai, dan laman web.
Kami percaya bahawa skala seperti ini akan mengambil masa 2-3 bulan untuk membuat generalisasi, menguji dan menambahkan ciri beberapa bilik (lantai dll).
Di samping itu, dengan menggunakan sejumlah wang dan sumber daya yang tidak terhad, kami akan menggunakan sensor yang lebih baik dengan jarak yang lebih besar, bersama-sama dengan menyesuaikannya ke ruang yang ditentukan - dengan mempertimbangkan jarak, radius, jumlah sensor dan lain-lain. Langkah yang menjadikan setiap sistem dipasang lebih lama, jelas.
Disyorkan:
Ketahui Semasa Seseorang Memasuki Bilik Menggunakan Sensor Radar Xyc-wb-dc: 7 Langkah
Ketahui Ketika Seseorang Memasuki Bilik Menggunakan Sensor Radar Xyc-wb-dc: Dalam tutorial ini kita akan belajar bagaimana Mengetahui bila seseorang memasuki bilik menggunakan modul RTC, sensor radar xyc-wb-dc, paparan OLED dan arduino. video demonstrasi
Kaunter dan Pengawal Penghunian Bilik MicroBit: 4 Langkah
Kaunter dan Pengawal Penghuni Bilik MicroBit: Semasa pandemi, salah satu cara untuk mengurangkan penularan virus adalah dengan memaksimumkan jarak fizikal antara orang. Di bilik atau kedai, adalah berguna untuk mengetahui berapa banyak orang yang berada di ruang tertutup pada waktu tertentu. Projek ini menggunakan sepasang
Zum Mesyuarat Butang Bisu Fizikal: 7 Langkah (dengan Gambar)
Butang Bisu Mesyuarat Zum Mesyuarat: Jika anda menggunakan perjumpaan zum untuk bekerja atau sekolah butang ini adalah untuk anda! Tekan butang untuk menukar bisu anda, atau tekan butang ke bawah untuk meninggalkan mesyuarat (atau akhiri jika anda adalah tuan rumah). perkara yang hebat ialah ia berfungsi walaupun Zoom anda
Peringatan Mesyuarat Kalendar Outlook Touchscreen Nextion: 6 Langkah
Peringatan Mesyuarat Kalendar Outlook Touchscreen Nextion: Sebab saya memulakan projek ini adalah kerana sering kali saya terlepas mesyuarat dan menganggap saya memerlukan sistem peringatan yang lebih baik. Walaupun kami menggunakan Kalendar Microsoft Outlook tetapi saya menghabiskan sebahagian besar masa saya di Linux / UNIX di komputer yang sama. Semasa bekerja dengan
Penjejak Bilik Rehat Bilik Darjah Makey Makey: 5 Langkah
Penjejak Bilik Tidur Makey Makey: Adakah anda pernah sibuk di kelas anda dan kehilangan pelajar yang mana (atau jika lebih dari satu) telah pergi ke tandas? Saya mengajar Sains Komputer Sekolah Menengah, dan mendapati bahawa pelajar sering cuba meninggalkan kelas untuk " menggunakan tandas "