جدول المحتويات:

Tweet-A-Temp: 8 خطوات
Tweet-A-Temp: 8 خطوات

فيديو: Tweet-A-Temp: 8 خطوات

فيديو: Tweet-A-Temp: 8 خطوات
فيديو: Taking a Great Impression the First Time | Temporary Crown from Start to Finish 2024, يوليو
Anonim

بواسطة Z0tZot's Homebrew تجارب متابعة المزيد من قبل المؤلف:

يموت ماجيك 8 بيرة 8 جوانب
يموت ماجيك 8 بيرة 8 جوانب
يموت ماجيك 8 بيرة 8 جوانب
يموت ماجيك 8 بيرة 8 جوانب

لقد بدأت أنا وابني الأكبر (المينيون رقم 1) في بناء Tweet-A-Watt وفشلت في اتباع التوجيهات بشكل صحيح ، أي أننا صنعنا كلا المستقبلين كجهاز استقبال قياسي بدلاً من جهاز استقبال واحد فقط ثم نصف جهاز استقبال XBee الثاني. كان لدينا خياران ، إما قطع الأجزاء الإضافية أو أي شيء آخر. نظرًا لأنني لم أجد Kill-A-Watt محليًا بعد ، وكان لدي مقياس حرارة خارجي / داخلي كنت أرغب في حوسبته لمدة 10 سنوات ، كنت أعرف ما يجب علي فعله: كان علي استخدام مقياس الحرارة لقياس درجة حرارة حوض الاستحمام الساخن الخاص بي ، ثم تغرد به! لقد أعطيت المينيون رقم 1 مؤخرًا مهمة لوصف جهاز التحكم في حوض الاستحمام الساخن بلا حدود. لقد ذكر ، حسنًا ، يمكننا جعله لاسلكيًا ، لكن لا ، هذا سخيف … أحب ذلك عندما تؤتي خطة مدتها 10 سنوات ثمارها. شاهدها على Twitter

الخطوة 1: بناء Xbee Recievers

بناء Xbee Recievers
بناء Xbee Recievers

بناء جهازي استقبال XBEE. لقد استخدمت أجهزة الاستقبال من Lady Ada ، سيفعل أي جهاز استقبال. ستحتاج إلى الوصول إلى XBee's VREF و AD0 pin. الحيلة إلى Tweet-A-Watt هي التكوين. في الواقع ، قمت بتعيين أحد الأجهزة لتكرار القيم من Kill-A-Watt مع: ATMY = 1 ، SM = 4 ، ST = 3 ، SP = C8 ، D4 = 2 ، D0 = 2 ، IT = 13 ، IR = 1 يعيّن هذا العنوان (1) ، ويضبط وضع السكون والمؤقت والفترة ، ثم يضبط الدبابيس 4 و 2 على وضع الإدخال التناظري (2) ، والذي سيرسل حزم 0x13 (19 عشريًا) ، 1 مللي ثانية بين العينات الحيلة هنا هي المدخلات التناظرية. يمكنك قراءة الفولتية الصغيرة (0-5 فولت) مباشرة بواسطة XBee. في Tweet-A-Watt ، ستقوم بتعيين الدبابيس 4 و 0 لإرسال الأمبيرات والفولتات المقاسة بواسطة Kill-A-Watt. في الواقع لا يرسل ذلك ، إنه يرسل الجهد الصغير المقاس بواسطة الرقائق الموجودة في Kill-A-Watt إلى جهاز الاستقبال XBee المتصل بجهاز كمبيوتر. يقرأ البرنامج الموجود على الكمبيوتر الحزم المتلقاة باستمرار ويعيد حساب الجهد والتيار الفعلي ، ثم يحسب القوة الكهربائية.

الخطوة الثانية: ميزان الحرارة

ميزان الحرارة
ميزان الحرارة
ميزان الحرارة
ميزان الحرارة
ميزان الحرارة
ميزان الحرارة

لقد اشتريت اثنين من موازين الحرارة الداخلية / الخارجية منذ حوالي 10 سنوات من مستودع المنزل. لطالما كنت مندهشًا من أن "مقياس الحرارة" الخارجي متصل بالوحدة الأساسية بما يشبه قابس صوت قياسي. لطالما تساءلت عما إذا كان بإمكاني قياس درجة الحرارة عن طريق توصيل هذا بمقبس ميكروفون في الكمبيوتر.

اتضح أنه يمكنني على الأرجح أن أجعلها تعمل ، لكنها ستكون صعبة. القابس في الواقع عبارة عن مقبس 3/32 بوصة ، بدلاً من مقبس صوت 1/8. هذا هو القابس القياسي للهواتف المحمولة للميكروفونات الخارجية. وهذا يمثل مشكلة حيث لم أتمكن من العثور على أي مقابس ميكروفون في أكوام القمامة الخاصة بي لم تكن مثبتة على السطح. اضطررت إلى شراء مجموعة من راديو شاك (2 دولار) ، مما أضاف تأخيرًا كبيرًا للمشروع (لم يكن الوصول إلى الكوخ سهلًا). فصلت وحدة واحدة قبل أن أدرك فجأة كيف يعمل الشيء ، كان مقسم جهد! كان واضحًا بمجرد أن فكرت فيه ، جعل الحياة سهلة للغاية.

الخطوة 3: ما هو مقسم الجهد؟

ما هو مقسم الجهد؟
ما هو مقسم الجهد؟

أحد أفضل الأماكن للتعرف على Electronic هو Wisconsin Online يتم شرح فواصل Wisconsin Online في تلك الصفحة (أسفل اليمين) ، أو يمكنك زيارة صفحة Voltage Wikipedia ، باختصار ، إذا كان لديك مقاومين في سلسلة ، فإن انخفاض الجهد عبر كل المقاوم هو بما يتناسب مع حجم المقاوم. إذا كان لديك Voltage V عبر دائرة R (1) + R (2) ، فإن V = V (1) + V (2). إذا كان V = 3V و V (2) = 2V ، فأنت تعلم أن V (1) = 1V الآن أساس قانون أوم هو أن التيار (I) هو V / R. في الدائرة المتسلسلة ، يكون التيار هو نفسه طوال الوقت ، وبالتالي فإن التيار المار خلال A و B هو نفسه بالنسبة للدائرة بأكملها. لذلك أنا = V1 / R1 = V2 / R2. نعرف V2 = V - V1 ، التوصيل ، نرى V1 / R1 = (V-V1) / R2. بالحل نحصل على R2 = R1 * (V-V1) / V1 لذا إذا علمنا ما إذا كنا نعرف V (1) و V و R (2) ، فيمكننا إيجاد R2 ، وإذا كان لدينا R2 ، فإننا نعرف قيمة الثرمستور!

الخطوة 4: ما هو الثرمستور؟

ما هو الثرمستور؟
ما هو الثرمستور؟

الثرمستور هو المقاوم الذي يغير المقاومة مع درجة الحرارة. باستخدام تقنيات مقسم الجهد لتحديد المقاومة ، يمكننا معرفة درجة الحرارة ، المشكلة هي أن لديّ بعض الثرمستور الرخيص في غلاف من منتج عمره 10 سنوات. كيف افترضت أن أقوم بإنشاء دالة للانتقال من مقاومة إلى درجة حرارة؟ حسنًا ، لدي مقياس حرارة يتم توصيله به! لذا قمت بقياس الكثير. قمت بنسخ درجة الحرارة لأسفل ثم قمت بقياس مقاومة الثرمستور. وضعته في الثلاجة ، ثم أضعه في ماء دافئ. لاحقًا ، كنت سأحصل على درجة حرارة الغرفة منذ أن كان لدي الوقت ، افترضت أنه كان بإمكاني قراءة لوحة ويكيبيديا يمكن أن أحاول تخمين العوامل a و b ، لكنني افترضت أنني كنت أستخدم مكونًا غير خطي ، فاشل محتمل لم يعد مطابقًا له في التصنيع تحديد. أوه ، أنا كسول. لذا قمت بإلقاء جميع القيم في Excel ، ثم قمت برسمها بيانيًا. كنت قلقًا في الأصل من أنه كان علي أن أتذكر الرياضيات المظلمة العميقة لشيء مثل "المربعات الصغرى" عندما اكتشفت أن برنامج "إكسيل" سيفعل ذلك من أجل من الواضح أنني أفتقد فجوات في الرسم البياني ، لكنني حصلت على الكثير من البيانات الجيدة حول درجات حرارة حوض الاستحمام الساخن (100-105 فهرنهايت). أثناء فحص درجات حرارة الغرفة ، لاحظت شيئًا ما يجعل عملي بلا قيمة تقريبًا. أبلغ مقياس الحرارة "Precise Temp" عن خطأ 3-7 درجات بين "داخلي" و "خارجي" عندما كان الثرمستور على بعد بوصات! الآن قد يكون هذا لأنني قمت بخلط الثرمستور ومطابقته بين الوحدات ، لكنني أراهن أن لديها المزيد نظرًا لجودة طفل عمره 10 سنوات ، عنصر 10 دولارات وبغض النظر عن "دقة" درجة الحرارة ، كنت بحاجة إلى دقة واختبارات متعددة لنفسه أظهر النطاق نتائج قريبة جدًا على مدار أيام. على المدى الطويل ، من المحتمل أن أعلق الثرمستور بأنبوب يؤدي إلى حوض الاستحمام الساخن ، لذلك سأحتاج إلى تعويض على أي حال. لذلك من خلال جعل Excel يعرض المعادلة ، أضعها في الكود ، وهي كذلك حتى الآن " أغلق."

الخطوة 5: حلبة المرسل

حلبة المرسل
حلبة المرسل

دارة المرسل بسيطة. اخترت المقاوم 100 kOhm لـ R2 لأنه بدا وكأنه يناسب النطاق من الرسم البياني ، وكان لدي احتياطي من إزالة أشياء مختلفة مع Minions. أقوم بتوصيل هذا في سلسلة مع الثرمستور عبر موصل. ثم أضفت حزمة بطارية. ركضت 3 فولت إلى VREF وأعلى مقسم الجهد وإدخال Xbee + 3V. أضع GND (Battery Negative) في إدخال GND ، وفي الجزء السفلي من الحاجز. ثم قمت بتوصيل AD0 (فولت في) بمنتصف دائرة مقسم الجهد.

سيقرأ AD0 جهدًا نسبيًا من VREF إلى V (1). لذلك مع انخفاض البطارية ، يجب أن ينخفض الجهد النسبي بنفس الطريقة. في النهاية سأقوم بتشغيل الوحدة بمصدر طاقة محلي. عملت الوحدة النهائية بشكل جيد ، وقمنا بتوصيل كل شيء بمشابك التمساح ، مما جعلها هشة. بعد أن حصلت على الوصلة الأنثوية 3/32 "، أضع جهاز الإرسال في حوض بلاستيكي عشوائي كان لدينا (حاوية حمص سابقًا). يجب أن يحمي هذا الجهاز من الطقس. نظرًا لأنني اشتريت موصلات" مثبتة على اللوحة "، فقد كان الأمر بسيطًا مثل حفر ثقب في البلاستيك لإضافة الموصل إلى الخارج مع توصيل ضيق للماء إلى حد ما. بمجرد أن نحصل على ذلك ، حان الوقت للاختبار.

الخطوة 6: المنزل ، المنزل ، ليس له نطاق

المنزل ، المنزل ، ليس له نطاق
المنزل ، المنزل ، ليس له نطاق
المنزل ، المنزل ، ليس له نطاق
المنزل ، المنزل ، ليس له نطاق
المنزل ، المنزل ، ليس له نطاق
المنزل ، المنزل ، ليس له نطاق

من أول الأشياء التي لاحظناها ، أن المجموعة ماتت موتًا فظيعًا بمجرد خروجنا من المكتب مع جهاز الإرسال. لقد حاولنا من غرفة مختلفة ، وكانت النتائج رهيبة. على بعد 1 قدم من ذلك. حان الوقت للنظر في الحلول ، لقد خطر لي أنه عندما اختبرنا ، كان لدينا 4 مصادر لشبكة Wi Fi في نطاق 5 أقدام ، وكلها في نطاق 2.5 غيغاهرتز مثل Xbee. كما أننا لم "نهدف إلى Xbee على الإطلاق. بعد البحث ، قررت أنه يمكنني شراء راديو Xbee أكثر قوة (حوالي 23 دولارًا) أو إضافة هوائيات. وكان أحد الأشياء التي أحتاجها هو اختبار المدى الجيد. برنامج X-CTU من Digi لديه "اختبار نطاق" مضمّن ، ولكنه لم يكن شيئًا. قضيت بعض الوقت في محاولة اكتشاف كيفية جعله يعمل. في الواقع كان هذا أسهل مما قلته. لم أكن بحاجة حقًا إلى اختبار X-CTU ، فقط قيمة "مؤشر قوة إشارة RX" (RSSI) لقد بحثت في استخدامات xbee.pyTweet-A-Watt وهناك ، السطر 39: [code] self.rssi = p [3] [/code] مما يعني أنه جزء من قيمة إرجاع Xbee! (xb.rssi في wattcher) ، لذلك قمت بتعديل سطر تصحيح للاختراق الخاص بي: طباعة str (عداد) + ": RSSI:" + str (xb.rssi) + "| "+ time.strftime ("٪ Y٪ m٪ d،٪ H:٪ M ") +"، "+": الجهد: "+ str (CalcualtedVolts) +" avgv "+ str (avgv) +" Thermistor: " + str (x) + "درجة الحرارة:" + str (درجة الحرارة) التي تنتج خطًا مثل هذا: 373: RSSI: 82 | 2009 04 26 ، 11:18 ،: الجهد: 1.80100585938 متوسط 593 ثيرمستور: 71.2276559865 درجة الحرارة: 78.6813444881 يمكنك راجع أيضًا RSSI مع المعالجة ، من صفحة Tom's Igoe. على الرغم من أنك سترغب في تعديل طول الحزمة (في الأعلى) ، حيث اشتكت المعالجة من الكتابة بعد نهاية حجم المخزن المؤقت للحزمة. أعتقد أنه يجب أن تكون أكبر من 2 * متوقع طول الحزمة. ينظر رمز توم إلى الخلف بحثًا عن حزمة سابقة مما يعني أنه إذا فاتها مؤشر حزمة Ox7E ، فقد يعمل لفترة من الوقت. نظرًا لأنني بالقرب من الحافة الخارجية لنطاق القياس ، يمكن أن يحدث ذلك لفترة من الوقت. لقد قمت بتعيين حسابي على 600 وتوقف عن إعطائي رسالة "خطأ ، تعطيل serialEvent ()". رمز توم يطبع فقط أحدث إعداد ، وهو ليس مفيدًا بالنسبة لي. سطر التصحيح الخاص بي دعني أتتبع التغييرات كما يتساءل المينيون رقم 1 حولها. الآن لدينا طريقة جيدة للقياس ، لقد حان الوقت لتجربة بعض أفكار هوائي المشروب المنزلي! باستخدام أفكار من https://www.usbwifi.orconhosting.net.nz/ لقد وجدت أن Corner Cube قاس انخفاضًا في dB ، على الرغم من أنه من الناحية العملية لا يبدو أنه يساعد في توصيل زوج غير متصل. كان Veg Compatible Steamer في الواقع الأفضل في التصويب وإعادة الاتصال. يختلف إعداد USB Wifi كثيرًا عن بعض الأشخاص الآخرين. يوجد في المنتصف ساق للبخار مما يسهل وضع XBee. كما أن وعاء pho مع رقائق القصدير يبدو واعدًا (على الرغم من أننا أزلنا للتو رقائق القصدير لاحقًا وأبقيناها في مكانها). لقد حاولنا أيضًا صنع قطع مكافئ بقطعة منحنية من العجلات الساخنة "مسار" ، لكن لا يبدو أنه يساعد. إحدى المشكلات هي أننا كنا نختبر على الحافة الخارجية من النطاق. يستخدم معظم راديو 2.5 جيجا هرتز ، XBee على وجه الخصوص ، Spectrum Spectrum مما يعني أنه يمكنهم القيام بـ "المزامنة" ثم يبحث برنامج XBee عن بداية حزمة XBee قبل التشغيل. هذا يعني أنك إذا حصلت على تأثير الكل أو لا شيء. إما أن تقفل أجهزة الراديو على بعضها البعض أم لا. في بعض الأحيان يبدو الأمر وكأنه حظ ، ولكن في الحقيقة أنت هوائي في هذه النطاقات ويمكن أن تؤثر على النتائج. ذهبت لشراء قدرتي بخارية ، لكنني اكتشفت بعد ذلك أن تكلفة الباخرة من السوبر ماركت المحلي كانت 10 دولارات ، وبسعر 2 بواخر ، يمكنني الحصول على XBee أكثر قوة. لذلك نظرت إلى عدد قليل من الأماكن الأخرى ووجدت مصفاة عميقة جدًا والتي تحولت إلى أفضل. كان 7 دولارات. أعتقد أن العمق مهم ، لأنني في نهاية إرسال الأشياء ، فهو يعكس المزيد من الإشارة (وفقًا للملاحظات الموجودة في https://www.usbwifi.orconhosting.net.nz/number13.jpg). هو أنه مع وجود قدر بخاري نباتي على أحد طرفيه (يتم استبداله) ومصفاة من جهة أخرى ، لدي إشارة تبلغ حوالي 20-30 مترًا ، من مكتب داخلي ، من خلال 3-4 جدران ، إلى حوض الاستحمام الساخن! نصيحة احترافية: تذكر لإحضار المصفاة إذا كنت تريد 1) بقاء زوجتك و / أو 2) تريد خضروات مطبوخة على البخار في وقت لاحق.

الخطوة 7: البرمجيات

برمجة
برمجة

بدءًا من Tweet-A-Wattsoftware بدأت في اختراق كود الثعبان. في الغالب كنت بحاجة إلى إزالة تحويل واتس ، وظائف السجل ، وبعد ذلك كنت بحاجة إلى إضافة عدد من القسمة على 0 حماية (تفترض Tweet-A-Watt أن الحزم ستحتوي على بيانات) ، ثم أضفت الصيغة من Excel إلى البرنامج وقمت بضبطه لطباعة كل حزمة ولدي الكثير من تصحيح الأخطاء في الكود للقبض على المشكلات ، لقد حاولت تشغيل جزء الرسم البياني ، لكنني استسلمت وهو ما يقودني إلى: Python Rant: هذه هي المرة الثانية التي أمتلك فيها حاول تنفيذ مشروع كبير في بايثون. لم أتمكن من تشغيل جميع تبعيات المكتبات والحزم الأساسية في أقل من 20 ساعة في Windows و Windows 64 و Ubuntu و Fedora. اضطررت أخيرًا إلى بناء كل شيء تقريبًا من البداية وحتى ذلك الحين لم تنجح بعض الوظائف. جربت 2.4 و 2.5 و 2.6 وإصدارات 3.x مختلفة ، ثم إصدارات من كل مكتبة ، والتي بدورها لها تبعيات على حزم أخرى. في حين أن الآخرين قد يكون لديهم صراخ ضد اللغة ، وجدت أن مجرد التثبيت ، حتى باستخدام العديد من "أدوات التثبيت السهلة" أمر شاق في أحسن الأحوال! بعد أن قمت بحساب درجات الحرارة ، قمت بتعديل درجة واحدة ، لأنني لم أصدق حوض الاستحمام الساخن كان عند 106 فهرنهايت. أنا حقًا لا أعتقد أنه في 105 أيضًا ، ثم قمت بتدوير التقارير ومنطق تويتر. نظرًا لأنني لست متأكدًا مما إذا كنت سأحصل على حزم أو حزم جيدة ، فقد اخترت الإبلاغ عن درجة الحرارة مرة واحدة في الساعة. أفترض أنني سأقطع ذلك مرة أخرى في حين أن البرنامج النصي يعمل حاليًا كمستخدم عادي. سأرغب في نقله إلى خدمة في النهاية.

الخطوة 8: الخطوات التالية

هناك بعض الخطوات الواضحة التالية:

1) استبدل مصفاة الخضروات أ. التوابع بحاجة إلى الخضار! ب. هذا كان قديمًا على أي حال. 2) ضع هوائي الحوض الساخن تحت سطح السفينة أ. قد يجعله السطح "أبعد" ولكنه سيسمح بإعداد أكثر قبحًا. ب. يمكنني بعد ذلك تشغيل الثرمستور على الجانب السفلي وإيجاد مكان أفضل. 3) إضافة المزيد من أجهزة الاستشعار أ. الطريقة السهلة هي مستشعر درجة الحرارة الخارجية. ب. ولكن لا يوجد سبب لعدم تمكننا من اكتشاف حالة لوحات التحكم ، وخاصة مستشعر الحرارة الذي يتم لمسه بطريقة سحرية عندما ينتهي الأطفال. ج. مستشعرات الطقس الأخرى (الرياح ، الرطوبة ، إلخ) د. سيكون من الجيد التحكم في حوض الاستحمام الساخن ويمكنني إيقاف التدفئة لجزء كبير من الليل والنهار. 4) يمكنني ضبط البرنامج أ. يريد التوابع بالفعل رسائل أفضل لكل درجة حرارة. ب. يجب أن نكون قادرين على الرد على الردود والرسائل المباشرة. ج. يجب أن أغرد بطريقة أكثر ذكاءً (أقل من مرة في الساعة). د. لدي بعض الأشياء الممتعة المخطط لها.

موصى به: