سؤال

أحاول إعداد نظام لأتمتة مهام معينة في منزلي.

أفكر في حل حيث سيكون تطبيق جانبي الخادم قادرا على إرسال / تلقي الأوامر / البيانات إلى اردوينو (المرفقة اردوينو إيثرنت شيلد) عبر الويب.

هنا قد يتصرف Arduino كواجهة مستشعر لتطبيق الخادم أو واجهة Order Executor لتطبيق الخادم.

على سبيل المثال (قصة المستخدم):

  1. خزان المياه العلوية في منزلي لديه استشعار مستوى المياه المرفقة مع اردوينو (المرفقة مع درع اردوينو إيثرنت).

  2. يتم إرفاق اردوينو آخر (المرفقة مع Arduino Ethernet Shield) بترحيل / مزلاج. ثم يتم توصيل هذه الترحيل / مزلاج بمضخة مياه.

  3. الآن تطبيق جانب الخادم على الويب قادر على الحصول على / تلقي معلومات مستوى المياه من Arduino على خزان المياه.

  4. اعتمادا على معلومات مستوى المياه المستلمة، يجب أن يرسل تطبيق الويب إشارات / أوامر مناسبة إلى Arduino على مضخة المياه للتبديل "ON" أو تبديل "مضخة المياه".

الآن لهذا النظام للعمل عبر الويب، أفكر في استخدام أحد أنواع الحلول من أجل أولويتي:

  1. استخدام XMPP. للتواصل بين تطبيق الخادم واردوينو.

  2. باستخدام استطلاع HTTP.

  3. باستخدام HTTP شنقا الحصول على.

بالنسبة للمحلول رقم 1، أحتاج إلى تنفيذ عميل XMPP الذي سيقيم على اردوينو.

هل من الممكن كتابة عميل XMPP صغير بما يكفي للإقامة في اردوينو؟

إذا كانت الإجابة بنعم، فما هي الحد الأدنى من وظيفة عميل XMPP الممكنة التي أحتاج إلى الكتابة إليها ل Arduino، بحيث تكون قادرا على الاتصال بحلول XMPP Servers مثل gtalk., ، إلخ.؟

بالنسبة للمحلول رقم 2 و 3 أحتاج إلى إرشادات في التنفيذ.

أيضا أي حل سيكون فعالا من حيث التكلفة وقابل للتمديد بسهولة؟

هل كانت مفيدة؟

المحلول 8

بعد النظر إلى جميع الخيارات المتاحة لم أكن راضيا عن أي.

حاليا أنا أعمل على وضع حل خاص بي للمشكلة التي حددتها أعلاه.

الحل على سطور التعليق أجبته على "Dustin" أعلاه.

سوف تنشر عنوان URL للمشروع بمجرد الخروج من الإصدار الأول من الحل الخاص بي هنا.

نصائح أخرى

يمكنك إلقاء نظرة على MQTT، ويحتوي على مكتبة أردوو، وهو سمسار رسالة مشترك في الناشر البسيط.

لا أعتقد أنني سأبحث عن أي من هؤلاء ما تحاول القيام به.

فقط قم بإطعام بيانات المستشعر من اردوينو على فاصل زمني معين ويكون الجانب الآخر يفعل الذكاء.

أيضا، بالنسبة لهذه الأنواع من المشاريع، كنت أتطلع إلى تجنب دروع Ethernet واستخدامها أيضا XBEE. أو RFM12B.. وبعد من شأنها أن ترشدك في هذا الاتجاه، ولكن الأهم من ذلك، تجعل الأمر أسهل بكثير من الأجهزة التي تقوم بالكثير من أجهزة القياس عن بعد والتحكم فيها.

إذا كان هناك شيء مثل XMPP. وارتفع ذلك على اردوينو، سيكون من بروتوكول الوجود محرز حقا من خلال عملية من جانب الخادم أكثر ذكاء. وهذا هو، سيكون مبلغ مماثل من العمل. على الرغم من أنه قد يكون من الممكن، فإن XMPP في 1 كيلو بايت من ذاكرة الوصول العشوائي إلى جانب رمز التطبيق يبدو مؤلما حقا.

نحن نعمل على بنية تحتية تتابع مفتوح المصدر لجعل أردوينو (وأي جهاز آخر يدعم مآخذ TCP / IP) يمكن الوصول إليه عبر الويب. ثم يمكن للتطبيق بعد ذلك استدعاء Arduinos من خلال API بقية بسيط. يرى http://www.yaler.org/ لمزيد من المعلومات و DEMO Live.

التحيات، تامبرغ

يوجد مشروع في التنمية، لديه سياسات وقدرات مسجلات البيانات. (مجسات / any_data_source عبر XMPP)http://middlewaresensing.wordpress.com/

لماذا لا تستخدم RS485 القديم الجيد للوصول إلى مشغلات المستشعر؟ ما عليك سوى اختراع بعض البروتوكول البسيط (العنوان أو الأمر والبيانات). إذا كنت بحاجة إلى شيء أكثر تعقيدا، فاستخدم رجل آخر كجسر RS485 / Ethernet.

مشروع مفتوح المصدر

إدارة أجهزة الاستشعار والشبكات | تسجيل بيانات الاستشعار | الرسوم البيانية |. السياسات | التاريخ / التاريخ / قواعد الاستشعار | الرسائل القصيرة / البريد الإلكتروني / URL / Twitter / الإخطارات XMPP | تسجيل الأحداث | خرائط جوجل | وأكثر بكثير

التجريبي في http://dev.hci.uma.pt/sawa.

ويكي في dev.hci.uma.pt/mediawiki/index.php.

بلوق في middlewaresensing.wordpress.com

يمكنك استخدام إرسال البيانات إلى الخادم باستخدام مشاركة HTTP، ثم يتم نشر بيانات المستشعر عبر XMPP. وظيفة HTTP (للأجهزة المحدودة للمورد، مثل Arduino) و Sox_Tools عميل XMPP للنشر عبر XMPP على هذا النظام

هناك مكتبة جديدة لجعل طلبات HTTP تشبه الراحة واستقبال ردود JSON على Arduino (مع إيثرنت) تسمى RESTDUINO. يمكن أن تكون مفيدة واجهة HTTP مفيدة لمشروع اردوينو الخاص بك.

http://jasongullickson.possterous.com/restduino-arduino-hacking-for-the-rest-of-us.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top