جدول المحتويات:
- الخطوة 1: الأجهزة والبروتوكولات المطلوبة
- الخطوة 2: قم بتوصيل الميكروفون ومستشعر PIR
- الخطوة 3: قم بإنشاء سير العمل في Zapier
- الخطوة 4: Google Scripts
- الخطوة 5: قم بتوصيل التدفق بكود Arduino
- الخطوة السادسة: المراجعة والاستنتاجات والتوسع في المستقبل
فيديو: IDC2018IOT: غرفة الاجتماعات Snitcher: 6 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:40
المشكلة
كما نعلم ، تسارع اتجاه مساحات العمل المشترك خلال السنوات القليلة الماضية ، جنبًا إلى جنب مع أحدث التقنيات التي تحدد اختيار مساحة العمل المشتركة المحددة التي تناسب احتياجاتك.
تتمثل إحدى الميزات الرئيسية المقدمة في غرف الاجتماعات المشتركة المقدمة لأعضاء مساحة العمل المشتركة ، والتي تتم إدارتها بواسطة منصة تقويم بسيطة (عادةً).
تتكرر المشكلة لأن جدول الناس يميل إلى أن يكون ديناميكيًا.
قد يحجز المرء غرفة معتقدًا أنه قد يحتاج إليها ولن يرغب في تفويت الوقت.
حتى لو لم يستخدم أحد هذه الفترة الزمنية في النهاية ، فلن يكلف نفسه عناء إخطاره وإلغائه من أجل الآخرين ، للأسف ، هذه هي الطبيعة البشرية.
كيف نحلها؟
باستخدام تقنية إنترنت الأشياء - فحص الصوت والحركة في غرفة اجتماعات معينة ، نتحقق ، كل فترة زمنية معينة ، مما إذا كانت الغرفة محجوزة ومشغولة بالفعل أم لا:
1. إذا لم يتم حجزه ، فلا تفعل شيئًا.
2. إذا تم حجزه ، فتحقق مما إذا كان هناك أي حركة أو صوت تم اكتشافه ؛
إذا كان هناك شيء ، فلا تفعل شيئًا.
إذا لم يتم اكتشاف أي شيء ، أرسل رسالة تحذير (عبر البريد الإلكتروني) إلى المستخدم الذي حجز الغرفة تسأله عما إذا كانت الغرفة لا تزال قيد الاستخدام. ما لم يعلن المستخدم أنه لا يزال يستخدم الغرفة ، سيتم تغيير حالة الغرفة إلى "متاحة".
* هنا ، قمنا بدمج مشروعنا مع تقويم Google من أجل تعميمه قدر الإمكان.
الخطوة 1: الأجهزة والبروتوكولات المطلوبة
1. استخدمنا NOSEMCU حتى نتمكن من تحديث الأشياء ديناميكيًا باستخدام اتصال WIFI.
2. جهاز استشعار الميكروفون الذي "يقرأ" الضوضاء في الغرفة.
3. جهاز استشعار PIR الذي سيتحقق من وجود أي حركة.
لاستخدام البرامج والخادم ، إلى جانب الكود في Arduino ، استخدمنا Google Script و Zapier لدعم نظامنا عبر الإنترنت. يمكنك رؤية التدفق في الصورة المضافة (و PDF).
استخدمنا Zapier لربط التطبيقات وأتمتة سير العمل لدينا (مثل IFTTT) واستخدمنا Google Script لمساعدتنا على التواصل مع تقويم Google. يقوم البرنامج النصي الذي كتبناه بإنتاج البريد الإلكتروني لمنشئ الحدث حتى نتمكن من إرساله برمي Zapier والتحقق مما إذا كان المستخدم قد طلب الاحتفاظ بالغرفة (عن طريق حفظ بعض المعلومات في Google Sheets) قبل حذف الحدث.
الخطوة 2: قم بتوصيل الميكروفون ومستشعر PIR
أردنا التحقق من متوسط القيم التي ينشرها الميكروفون على NODEMCU عندما يتحدث الناس (من الواضح أن كل غرفة بها ضوضاء خلفية مختلفة). أجرينا بعض الاختبارات وأدركنا أن متوسط مستوى الضوضاء هو أن الغرفة التي عملنا فيها أعلى من 50.
يعطي مستشعر PIR قيمًا عالية أو منخفضة فقط ، لذلك قمنا فقط بفحص مستوى الحساسية الأكثر دقة للغرفة التي فحصناها. كان هذا الدليل مفيدًا جدًا.
اتصالاتنا:
ميكروفون - كما في الصورة مستشعر PIR: GND> GND ، OUT> D7 ، VCC> VN (5V)
الخطوة 3: قم بإنشاء سير العمل في Zapier
من أجل معرفة ما إذا كانت الغرفة فارغة بالفعل أو لا تزال قيد الاستخدام (والمستخدمون في فترة راحة على سبيل المثال) ، نود إنشاء تدفق يؤكد ذلك ، مباشرة بعد قيام NodeMCU بإطلاق Webhook إلى Zapier الذي يخطر أن الغرفة فارغة:
(1) TRIGGER - يمسك CATCH HOOKZapier بخطاف الويب (الذي سيتم إرساله بواسطة NODEMCU)
(2) الإجراء - يرسل GETZapier خطاف ويب آخر للحصول على بيانات الحدث ؛> يستدعي (يعمل) GoogleScript - GetCurrentEmailEventID (شرح في الخطوة التالية) ، للحصول على بيانات الحدث الحالي - اسم الحدث ومعرف الحدث والبريد الإلكتروني للمستخدم.
(3) مرشح - تابع فقط إذا
تابع إلى الخطوة التالية فقط إذا كان هناك حدث (أي حدث) يحدث حاليًا في التقويم (الغرفة مزدحمة) ، وإلا ، سيتوقف لأن الغرفة شاغرة.
(4) الإجراء - يرسل GMAILZapier بريدًا إلكترونيًا ، عبر Gmail ، إلى المستخدم الذي حجز الغرفة (حصل على هذه المعلومات في الخطوة 2)
(5) الإجراء - التأخير FOR السماح للمستخدم بالرد على البريد الإلكتروني. - إذا نقر المستخدم على الرابط: اتصل (تشغيل) GoogleScript - ApproveCurrentEvent (ومن ثم تتم إزالة الغرفة من قائمة "الغرف المطلوب حذفها" ، و الغرفة لا تزال مشغولة.)
(6) الإجراء - احصل بعد 5 دقائق ، يستدعي Zapier (يعمل) GoogleScript - DeleteCurrentEvent- إذا لم ينقر المستخدم على الرابط
للتحقق مما إذا كان معرف الغرفة موجودًا في قائمة "الغرف المطلوب حذفها"
إنه يزيل فقط الحدث.
الخطوة 4: Google Scripts
عندما قمنا بدمج النظام بأكمله ، كان GoogleScripts هو الخيار التافه لـ IDE ، وبالتالي ، استخدمنا مكتبات Google ذات الصلة. سوف تتغير وفقًا لمنصة حجز الغرف.
(1) GetCurrentEmailEventID
يتم تشغيله من خلال مكالمة Webhook.
استخدام إزاحة معينة للتخلص من الإلغاء المفقود المحتمل ، والحصول على بيانات الحدث الحالي.
(2) ApproveCurrentEvent
يعمل بنقرة المستخدم.
في حالة موافقة المستخدم على أن الغرفة لا تزال قيد الاستخدام ، يحذف معرف الحدث من "الغرف المطلوب حذفها". استخدمنا ورقة Google ، أي شكل آخر من أشكال القائمة يمكن أن يكون ذا صلة هنا.
(3) DeleteCurrentEvent
يتم تشغيله من خلال مكالمة Webhook.
يبحث عن معرف الحدث ذي الصلة في القائمة (ورقة Google) ويحذف هذا الحدث من التقويم.
الخطوة 5: قم بتوصيل التدفق بكود Arduino
يتصل الرمز المرفق بأجهزة الاستشعار التي فحصناها قبل بضع خطوات بالنظام عبر الإنترنت (تقويم Google في حالتنا). يتحقق مما إذا كانت الغرفة مشغولة ، وإذا لم تكن مشغولة ، فإنه يرسل طلب HTTP (خطاف ويب) يبدأ في حذف طلب الحدث على Zapier.
الخطوة السادسة: المراجعة والاستنتاجات والتوسع في المستقبل
التحدي الرئيسي الذي كان علينا التعامل معه هو تغطية جميع الحالات الطارئة عند اتخاذ قرار بتفريغ غرفة اجتماعات. كان علينا بعد ذلك إنشاء آلة حالة مع الأخذ في الاعتبار كل حالة ممكنة ، بحيث لا يحدث خطأ وسيتم تعيين الغرفة على أنها متاحة فقط عندما ينبغي.
على سبيل المثال ، إذا كانت الغرفة محجوزة لبعض المجموعات غير الموجودة حاليًا (تلك في فترة راحة ، على سبيل المثال) ، ولكنها لا تزال بحاجة إليها ، فسوف تكتشف NODEMCU أن الغرفة مجانية> مشكلة.
بعد ذلك ، كان الحل الذي قدمناه هو إرسال رسالة بريد إلكتروني إلى المستخدم الذي حجز الغرفة (وهو أمر لم يكن من السهل اكتشافه) ، والذي يوفر خيارًا للاستمرار في الاحتفاظ بالغرفة.
إذا لم يرد المستخدم في وقت معين (قمنا بتعيينه ليكون 5 دقائق ، ولكن يمكن تغييره بسهولة) ، نحذف الحدث من التقويم (ونوفر الغرفة).
بهذه الطريقة ، نجحنا في النهاية في التعامل مع جميع السيناريوهات الممكنة وإنشاء نظام عمل.
قيود نظامنا:
1. يجب أن تكون أجهزة الاستشعار المستخدمة دقيقة وحساسة للغاية.
2. يقتصر حجم الغرفة على نصف قطر / نطاق المستشعر.
3. سيتعين علينا الاعتماد على استجابة المستخدم.
4. تم إنشاء نظامنا باستخدام العديد من الأنظمة الأساسية (تقويم Google و Gmail و Zapier وما إلى ذلك) وسيتعين عليه استخدام خدماتهم لأداء المهام.
5. توسيع نطاق هذه الخدمة للغرف المتعددة (بدلاً من تكرار النظام بأكمله) سيتطلب معالجة إضافية بمعرف الغرفة.
6. النظام آلي فقط ولا يوجد خيار يدوي لإلغاء حجز غرفة.
التطورات المستقبلية:
سنعمل بالتأكيد على توسيع نطاق النظام بطريقتين:
1. القدرة على العمل مع أي منصات تقويم أخرى (بحيث يمكن لأي شركة مساحات عمل مشتركة استخدامها).
2. القدرة على التعامل مع غرف وأرضيات ومواقع متعددة.
نعتقد أن هذا النوع من المقياس سيستغرق 2-3 أشهر للتعميم والاختبار وإضافة ميزة غرف متعددة (طوابق وما إلى ذلك).
بالإضافة إلى ذلك ، باستخدام مبلغ غير محدود من المال والموارد ، سنستخدم مستشعرات أفضل بنطاق أكبر ، جنبًا إلى جنب مع تخصيصها للغرفة المخصصة - مع الأخذ في الاعتبار النطاق ، ونصف القطر ، وكمية المستشعرات وما إلى ذلك ، وهي خطوة من شأنها أن تجعل تثبيت كل نظام أطول ، بوضوح.
موصى به:
اكتشف متى دخل شخص ما إلى غرفة باستخدام مستشعر الرادار Xyc-wb-dc: 7 خطوات
اكتشف متى دخل شخص ما إلى غرفة باستخدام مستشعر الرادار Xyc-wb-dc: في هذا البرنامج التعليمي سوف نتعلم كيفية اكتشاف دخول شخص ما إلى غرفة باستخدام وحدة RTC ومستشعر الرادار xyc-wb-dc وشاشة OLED و arduino. فيديو توضيحي
عداد إشغال غرفة MicroBit ووحدة التحكم: 4 خطوات
عداد وشغل غرفة MicroBit: أثناء الجائحة ، تتمثل إحدى طرق تقليل انتقال الفيروس في زيادة التباعد الجسدي بين الناس. في الغرف أو المتاجر ، سيكون من المفيد معرفة عدد الأشخاص الموجودين في المساحة المغلقة في أي وقت. يستخدم هذا المشروع زوجًا من
غرفة الهروب من Arduino: 6 خطوات (بالصور)
Escape Room Arduino: يدور هذا المشروع حول إنشاء نموذج أولي لغرفة الهروب ، باستخدام مكونات إلكترونية اردوينو بور ، وهي قاعدة معرفة أساسية للترميز الخاص بها ، وستكون غرفة الهروب هذه من 5 مراحل لتغطيتها: (يمكن أن تكون مختلفة للجميع) مستشعر Preassure - LED بمجرد أن تبدأ
غرفة التحدث الحر: 8 خطوات
غرفة بدون استخدام اليدين: مرحبًا ، اسمي أفروه وأنا أدخل الصف السادس. لقد جعلت هذه التعليمات لتكون طريقة رائعة للدخول إلى الغرفة والخروج منها. ومع ذلك ، لم يكن لدي الموارد اللازمة للبرمجة ، وشعرت بما إذا كان هناك شخص ما سيأتي. لذلك جعلت الغرفة من البداية
مراقبة غرفة الاجتماعات باستخدام الفوتون الجزيئي: 8 خطوات (بالصور)
مراقبة غرفة الاجتماعات باستخدام الفوتون الجسيمي: مقدمة في هذا البرنامج التعليمي ، سنقوم بصنع شاشة غرفة اجتماعات باستخدام Particle Photon. في هذا الجسيم مدمج مع Slack باستخدام Webhooks للحصول على تحديثات في الوقت الفعلي عما إذا كانت الغرفة متاحة أم لا. تُستخدم مستشعرات PIR في