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

تسجيل بيانات عن بُعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp: 10 خطوات (بالصور)
تسجيل بيانات عن بُعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp: 10 خطوات (بالصور)

فيديو: تسجيل بيانات عن بُعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp: 10 خطوات (بالصور)

فيديو: تسجيل بيانات عن بُعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp: 10 خطوات (بالصور)
فيديو: LoRa Transmitter Power Measurement with AD8318 and Arduino DIY Tool (EP10) 2024, يوليو
Anonim
تسجيل بيانات عن بعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp
تسجيل بيانات عن بعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp
تسجيل بيانات عن بعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp
تسجيل بيانات عن بعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp
تسجيل بيانات عن بعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp
تسجيل بيانات عن بعد عالي الدقة باستخدام جهاز القياس المتعدد / Arduino / pfodApp

تم تحديث الدائرة الكهربائية واللوحة المعدلة في 26 أبريل 2017 للاستخدام مع عدادات USB 4000ZC.

لا يلزم تشفير Android

يوضح لك هذا التوجيه كيفية الوصول إلى مجموعة واسعة من القياسات عالية الدقة من Arduino الخاص بك وإرسالها أيضًا عن بُعد للتسجيل والتخطيط. لتسجيل البيانات عالي السرعة (2000 عينة / ثانية) ، راجع هذا التوجيه ، تسجيل البيانات عالي السرعة عن بُعد باستخدام Arduino / GL AR150 / Android / pfodApp

يتميز محول AtoD المدمج في Arduino بدقة رديئة ، عادةً +/- 10٪ ونطاق محدود للغاية ، عادةً من 0 إلى 5 فولت تيار مستمر فقط. باستخدام دائرة ومكتبة بسيطة ، يمكنك تغذية Arduino بقياسات نطاق تلقائي عالية الدقة من مقياس متعدد مع اتصال RS232 معزول بصريًا. يتيح لك توفر القياسات للرسم التخطيطي التحكم في المخرجات بناءً على القيم. يغطي هذا البرنامج التعليمي أيضًا إرسال القياس عن بُعد ، عبر WiFi أو Bluetooth أو Bluetooth Low Energy أو SMS ، إلى هاتف Android للعرض والتسجيل والتخطيط باستخدام pfodApp.

تستخدم هذه التعليمات لوحة Arduino Mega2560 5V والتي يمكنك إقرانها مع مجموعة متنوعة من دروع الاتصالات أو Ethernet أو WiFi أو Bluetooth V2 (كلاسيكي) أو Bluetooth LE أو الرسائل القصيرة. يمكن أيضًا استخدام أجهزة ومكتبة الواجهة المعروضة هنا مع لوحات متوافقة مع Arduino 3.3 فولت. بالإضافة إلى Mega2560 ، يمكنك استخدام مجموعة متنوعة من اللوحات الأخرى مثل UNO مع درع Ehternet ، أو لوحة أساسية ESP8266 (قائمة بذاتها) ، أو لوحة مزودة بتقنية Bluetooth منخفضة الطاقة ، مثل Arduino 101 ، أو اللوحات التي تتصل بالاتصال نظام فرعي يستخدم SPI مثل RedBear BLE shield ولوحات Adafrut's Bluefruit SPI. يدعم pfodDesignerV2 كل مجموعات اللوحات هذه وسيُنشئ رمزًا لها. الشرط المقيِّد هو أنك بحاجة إلى الحصول على مسلسل أجهزة مجاني للاتصال بدرع Multimeter RS232 هذا.

تعمل الدائرة والكود المقدمان هنا مع عدد من المترات. أحدها متوفر بسهولة وغير مكلف ، وهو Tekpower TP4000ZC ، المعروف أيضًا باسم Digitek TD-4000ZC. تشمل المقاييس المتعددة التي تعمل مع هذه الدائرة والمكتبة Digitek DT-4000ZC و Digitech QM1538 و Digitech QM1537 و Digitek DT-9062 و Digitek INO2513 و Digitech QM1462 و PeakTech 3330 و Tenma 72-7745 و Uni-Trend UT30A و Uni-Trend UT30E و Uni -Trend UT60E ، Voltcraft VC 820 ، Voltcraft VC 840

الخطوة 1:

يتكون هذا البرنامج التعليمي من جزأين:

يغطي الجزء الأول واجهة الأجهزة للمقياس المتعدد ومكتبة الأكواد باستخدام Arduino Mega. إذا كنت ترغب فقط في الحصول على القياس في Arduino الخاص بك ، فهذا كل ما تحتاجه.

يغطي الجزء الثاني إرسال القياس إلى هاتف Android بعيد للعرض والتسجيل والتخطيط. في هذا المثال ، سنستخدم درع Bluetooth وننشئ الرسم الأساسي باستخدام pfodDesignerV2 ، ولكن يمكنك أيضًا إنشاء رمز لاتصالات WiFi و Ethernet و Bluetooth منخفضة الطاقة والرسائل القصيرة باستخدام pfodDesignerV2. يتم بعد ذلك إضافة مكتبة المالتيميتر إلى الرسم التخطيطي الأساسي لإكمال الكود. لا يلزم تشفير Android لعرض القراءة وتسجيلها ورسمها. يتم التحكم في كل شيء من كود Arduino الخاص بك.

هذا المشروع متاح أيضًا عبر الإنترنت على www.pfod.com.au

للحصول على شاشة عرض رأسية عن بُعد للمقياس المتعدد ، راجع نظارات بيانات Arduino القابلة للتوجيه لـ My Multimeter بواسطة Alain.

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

المتر
المتر

المقاييس المتعددة المستخدمة في هذا البرنامج التعليمي هي أجهزة Tekpower TP4000ZC غير المكلفة (~ US40) (تُعرف أيضًا باسم Digitek DT-4000ZC) و Digitech QM1538 الأقدم ، والتي لم تعد تُباع. كلا هذين العدادات متماثلان بصريًا ويستخدمان نفس تشفير RS232 للقياس.

هنا مواصفات Tekpower TP4000ZC: -DC Voltage: 400mV / 4/40 / 400V ± 0.5٪ + 5، 600V ± 0.8٪ AC Voltage: 4/40 / 400V ± 0.8٪ + 5، 400mV / 600V ± 1.2٪ + 5DC الحالي: 400 / 4000μA ± 2.0٪ + 5، 40 / 400mA ± 1.5٪ + 5، 4 / 10A ± 2٪ + 5AC Current: 400 / 4000μA ± 2.5٪ + 3، 40 / 400mA ± 2٪ + 5، 4 / 10A ± 2.5٪ + 5 المقاومة: 400Ω / 4/40 / 400kΩ / 4MΩ ± 1٪ + 5 ، 40MΩ ± 2٪ + 5 السعة: 40nF ± 3.5٪ + 10 ، 400nF / 4 / 40μF ± 3٪ + 5 ، 100μF ± 3.5٪ + 5 التردد: 10 هرتز -10 ميجا هرتز ± 0.1٪ + 5 دورة العمل: 0.1٪ -99.9٪ ± 2.5٪ + 5 درجة الحرارة: 0 درجة مئوية - + 40 درجة مئوية ± 3 درجة مئوية ، -50 درجة مئوية - + 200 درجة مئوية ± 0.75٪ ± 3 درجة مئوية ، + 200 درجة مئوية - + 750 درجة مئوية ± 1.5٪ ± 3 درجة مئوية ، الدقة 0.1 درجة مئوية عبر مسبار مزدوج حراري.

يعد اتصال RS232 الخاص بالمقياس المتعدد طريقة واحدة فقط ولا يمكنك تغيير إعدادات جهاز القياس المتعدد عن بُعد ، لذلك تحتاج إلى تحديد نوع القياس يدويًا. ومع ذلك ، فإن المقياس يتحدد تلقائيًا ويتعامل إعدادات الجهد والتيار مع كل من التيار المتردد والتيار المستمر.

الخطوة 3: جهاز واجهة RS232

أجهزة واجهة RS232
أجهزة واجهة RS232
أجهزة واجهة RS232
أجهزة واجهة RS232
أجهزة واجهة RS232
أجهزة واجهة RS232

هناك نوعان من الواجهات. تأتي أجهزة Digitek DT-4000ZC و Tekpower TP40000ZC الأحدث مزودة بكابل USB. بينما تم تزويد Digitek QM1538 الأقدم بكابل موصل RS232 9pin D. توضح الدائرة أعلاه (إصدار pdf) كيفية توصيل مقرن البصريات متعدد المقاييس لتشغيل دبوس تسلسلي Arduino RX. ملاحظة: تم تحديث هذه الدائرة لإضافة مقاوم حماية آخر ، R2 ، لمقاييس Digitek DT-4000ZC و Tekpower TP40000ZC. لم يتم تضمين هذا المقاوم في لوحة موصل 9pin D الموضحة أعلاه.

Digitek DT-4000ZC و Tekpower TP40000ZC

بالنسبة إلى Digitek DT-4000ZC و Tekpower TP40000ZC ، فأنت بحاجة إلى كابل صوت 3.5 مم من الذكور إلى الذكور ، وسيفعل استريو أو أحادي ، ومقبس مقاس 3.5 مم.

Digitek QM1538

بالنسبة إلى Digitek QM1538 الأقدم ، فأنت بحاجة إلى مقبس 9pin D يحتوي الموصل 9pin D على دبابيس إزاحة لن يتم توصيلها بدرع النموذج الأولي. ما عليك سوى قطع الصف المكون من 4 دبابيس حتى تتمكن من لحام الموصل باللوحة ، حيث تستخدم الدائرة فقط المسامير في الصف الثاني المكون من 5 دبابيس. تم ثني أرجل التثبيت لترك الموصل مستويًا وتم تثبيت الموصل على درع النموذج الأولي باستخدام غراء إيبوكسي مكون من جزأين ("Araldite") تخطيط دبوس الموصل الموضح أعلاه من هذا الموقع. المقاوم 10K الذي يتم تركيبه داخل موصل كبلات RS232 الموردة (متصل بين السنون 2 و 3) غير مطلوب لهذا المشروع.

توصيل الإشارة بدبوس Arduino RX

ستعمل هذه الدائرة لكل من لوحات Arduino 5V و 3.3V. نحن هنا نستخدم Mega2560 (5V) Arduino وقمنا بتركيب الدائرة على درع نموذج أولي كما هو موضح أعلاه.

يتم استخدام الرصاص الطائر لتوصيل TP1 على الدرع بـ Serial1 RX ، دبوس D19 ، على Mega2560.

ملاحظة حول Software Serial: في البداية تم إقران هذا الدرع مع UNO باستخدام Software Serial على الأطراف 10 ، 11. ومع ذلك ، عند إقرانه مع Bluetooth Shield على المسلسل عند 9600baud ، فقدت بعض وحدات بايت الاستقبال. أدى نقل RS232 إلى اتصال تسلسلي للأجهزة إلى حل هذه المشكلة. لذلك من أجل العرض والتسجيل الموثوق به عن بُعد ، إذا كنت تستخدم درع اتصال متصل عبر تسلسلي ، فأنت بحاجة إما إلى لوحة بها سلسلان أو أكثر من مسلسلات الأجهزة مثل Mega2560. البدائل الأخرى هي UNO مع ودرع Ehternet ، ولوحة أساسية ESP8266 (قائمة بذاتها) ، لوحة مزودة بتقنية Bluetooth منخفضة الطاقة مثل Anduino 101 أو اللوحات التي تتصل بنظام الاتصال الفرعي باستخدام SPI مثل RedBear BLE shield و Adafrut's Bluefruit SPI المجالس. يدعم pfodDesignerV2 كل هذه اللوحات وسيقوم بإنشاء الكود لها.

الخطوة 4: مكتبة PfodVC820MultimeterParser

لا يرسل Tekpower TP4000ZC وعدد من أجهزة القياس الأخرى القياس عبر RS232 كنص ASCII ، بل يرسل 14 بايت مع مجموعة بت اعتمادًا على أجزاء شاشة LCD المضيئة. تم شرح ترميز 14 بايت في ملف pdf هذا. تقوم مكتبة pfodVC820MeterParser.zip بفك تشفير هذه البايتات إلى سلاسل نصية وتحويلها إلى عدد عائم. (يشير VC820 إلى أحد العدادات التي تستخدم هذا الترميز.) راجع أيضًا QtDMM لبرامج كمبيوتر Windows و Mac و Linux التي تتعامل مع نطاق واسع من المقاييس المتعددة.

يوجد مثال أدنى ، MeterParserExample.ino ، لاستخدام مكتبة pfodVC820MeterParser. قم بتوصيل العداد باتصال تسلسلي 2400baud ثم قم باستدعاء haveReading () كل حلقة لمعالجة البايت. سيعود haveReading () صحيحًا عندما يكون هناك قراءة كاملة جديدة تم تحليلها. بعد ذلك يمكنك استدعاء getAsFloat () للحصول على القيمة (تحجيمها) كعوامة أو getAtStr () للحصول على القراءة مع التحجيم للطباعة والتسجيل. هناك طرق أخرى متاحة للوصول إلى نوع القياس ، getTypeAsStr () و getTypeAsUnicode () ، بالإضافة إلى طرق المرافق الأخرى.

# تضمين مقياس "pfodVC820MeterParser.h" pfodVC820MeterParser ؛ // void setup () {Serial.begin (74880) ؛ Serial1.begin (2400) ؛ meter.connect (& Serial1) ؛ } قراءة عائمة؛ حلقة باطلة () {if (meter.haveReading ()) {reading = meter.getAsFloat () ؛ // استخدم هذا في حسابات Arduino Serial.print ("القراءة بالوحدات:") ؛ Serial.print (meter.getDigits ()) ؛ Serial.print (meter.getScalingAsStr ()) ؛ Serial.print (meter.getTypeAsStr ()) ؛ Serial.print (F ("= كطباعة عائمة (6 أرقام):")) ؛ Serial.println (قراءة ، 6) ؛ Serial.println ("الوقت (بالثانية) والقراءة كسلسلة للتسجيل") ؛ Serial.print (((float) millis ()) / 1000.0) ؛ Serial.print ("، sec،")؛ Serial.print (meter.getAsStr ()) ؛ Serial.print ('،')؛ Serial.println (meter.getTypeAsStr ()) ، }}

مع ضبط العداد على درجة C واستخدام مسبار مزدوج حراري ، يعطي مثال الرسم هذا الإخراج على شاشة Arduino IDE التسلسلية

القراءة بالوحدات: 25.7C = كما طبع تعويم (6 أرقام): 25.700000 الوقت (ثانية) والقراءة كسلسلة للتسجيل 2.40 ، ثانية ، 25.7 ، ج

الخطوة 5: الجزء 2 - العرض عن بعد والتسجيل والتخطيط

يغطي هذا الجزء من البرنامج التعليمي كيفية عرض قراءة العداد وتسجيلها ورسمها عن بُعد على هاتف Android المحمول الخاص بك. يستخدم pfodApp للتعامل مع العرض والتسجيل والتخطيط على هاتف Android الخاص بك. لا حاجة لبرمجة أندرويد. يتم التحكم في جميع شاشات العرض والتسجيل والتخطيط بالكامل بواسطة رسم Arduino الخاص بك. يتيح لك تطبيق pfodDesignerV2 المجاني تصميم قائمة Android الخاصة بك والمخطط ثم إنشاء رسم Arduino لك.

يدعم pfodApp عددًا من أنواع الاتصال ، Ethernet ، WiFi ، Bluetooth V2 (كلاسيكي) ، Bluetooth LE أو الرسائل القصيرة. يستخدم هذا البرنامج التعليمي Arduino 101 (Bluetooth Low Energy) لتسجيل البيانات والتخطيط. يتم دعم لوحات Bluetooth منخفضة الطاقة الأخرى أيضًا. يستخدم هذا البرنامج التعليمي الرسائل القصيرة للاتصال بـ pfodApp. يمكنك استخدام pfodDesignerV2 لإضافة تسجيل البيانات وتخطيطها إلى مثال SMS هذا. يحتوي pfodDesignerV2 أيضًا على خيارات لإنشاء كود Arduino إلى درع Bluetooth V2 (كلاسيكي) للاتصال بـ pfodApp.

في هذا المثال ، سنستخدم Iteadstudio Bluetooth Shield V2.2 الذي يتصل بـ Arduino Mega2560 عبر اتصال تسلسلي 9600baud. باستخدام تطبيق pfodDesignerV2 المجاني ، قمنا بإعداد قائمة بسيطة تحتوي فقط على ملصق لإظهار قراءة العداد وزر واحد لفتح المخطط. تحتوي هذه الصفحة على عدد من دروس pfodDesignerV2 التعليمية. بمجرد أن يكون لدينا رسم أساسي ، سنقوم بتعديله لإضافة محلل العداد وإرسال قراءة العداد والبيانات للتسجيل والتخطيط.

تصميم القائمة

في هذا القسم ، سنصمم قائمة Android / pfodApp تعرض قراءة العداد وزرًا لفتح مخطط للقراءات. يتم حفظ القراءات أيضًا في ملف على هاتف Android

الخطوة 6: إضافة ملصق

إضافة تسمية
إضافة تسمية
إضافة تسمية
إضافة تسمية
إضافة تسمية
إضافة تسمية

قم بتثبيت برنامج pfodDesignerV2 المجاني وابدأ قائمة جديدة.

الهدف الافتراضي هو Serial at 9600baud وهو ما هو مطلوب لـ Iteadstudio Bluetooth Shield V2.2. إذا كنت تتصل باستخدام جهاز Bluetooth منخفض الطاقة أو Wifi أو SMS ، فانقر فوق الهدف لتغيير التحديد.

لإضافة تسمية لعرض قراءة العداد ، انقر فوق إضافة عنصر قائمة وحدد التمرير لأسفل لتحديد التسمية.

اختر حجم الخط والألوان المناسبة. اترك النص كتسمية حيث سنقوم بتعديل الكود الذي تم إنشاؤه لاستبداله بقياس العداد لاحقًا. هنا قمنا بتعيين حجم الخط على +7 ولون الخط على الأحمر والخلفية إلى الفضة.

ارجع إلى شاشة قائمة التعديل_1 وعيّن الفاصل الزمني للتحديث 1 ثانية. سيجعل pfodApp يعيد طلب القائمة مرة واحدة في الثانية تقريبًا لعرض أحدث قراءة في الملصق.

الخطوة 7: إضافة زر الرسم البياني

إضافة زر مخطط
إضافة زر مخطط
إضافة زر مخطط
إضافة زر مخطط
إضافة زر مخطط
إضافة زر مخطط
إضافة زر مخطط
إضافة زر مخطط

انقر فوق إضافة عنصر قائمة مرة أخرى لإضافة زر مخطط.

قم بتحرير نص زر المخطط إلى شيء مناسب ، على سبيل المثال فقط "مخطط" واختر حجم الخط والألوان.

ثم انقر فوق الزر "مخطط" لفتح شاشة تحرير قطعة الأرض. سيكون هناك قطعة أرض واحدة فقط ، لذا انقر فوق أزرار Edit Plot 2 و Edit Plot 3 وقم بالتمرير لأسفل وانقر فوق Hide Plot لكل منها.

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

أخيرًا ، عد إلى قائمة التحرير_1 وموجه التحرير ، وهذا يضبط النص في أسفل القائمة ولون خلفية القائمة بشكل عام. هنا قمنا بتعيين الموجه إلى "Remote Multimeter" بحجم الخط +3 ولون الخلفية Silver.

يمكنك الآن العودة إلى Editing Menu_1 والنقر فوق Preview Menu لمعاينة تصميم القائمة.

إذا لم يعجبك التصميم ، يمكنك تغييره قبل إنشاء الكود. إذا كنت تريد ترك مسافة بين الملصق من الزر ، فيمكنك إضافة بعض الملصقات الفارغة كما هو موضح هنا. تعد إضافة مخطط وبيانات تسجيل حول كيفية عرض / رسم بيانات Arduino على Android برنامجًا تعليميًا آخر حول pfodDesignerV2 / pfodApp datalogging والرسوم البيانية.

الخطوة 8: إنشاء رسم اردوينو

إنشاء رسم اردوينو
إنشاء رسم اردوينو
إنشاء رسم اردوينو
إنشاء رسم اردوينو

لإنشاء كود Arduino الذي سيعرض هذه القائمة في pfodApp ، ارجع إلى شاشة Editing Menu_1 وانتقل لأسفل وانقر فوق الزر Generate Code.

انقر فوق الزر "كتابة الرمز إلى ملف" لإخراج رسم Arduino إلى ملف /pfodAppRawData/pfodDesignerV2.txt على هاتفك المحمول. ثم اخرج من ملف pfodDesignerV2. انقل ملف pfodDesignerV2.txt إلى جهاز الكمبيوتر الخاص بك باستخدام اتصال USB أو تطبيق نقل الملفات ، مثل wifi file transfer pro. نسخة من الرسم الذي تم إنشاؤه هنا ، pfodDesignerV2_meter.txt

قم بتحميل المخطط في Arduino IDE الخاص بك وقم ببرمجة لوحة Uno (أو Mega) الخاصة بك. ثم أضف Iteadstudio Bluetooth Shield V2.2. قم بتثبيت pfodApp على هاتف Android الخاص بك وقم بإنشاء اتصال Bluetooth جديد يسمى ، على سبيل المثال ، Multimeter. راجع pfodAppForAndroidGettingStarted.pdf لمعرفة كيفية إنشاء اتصالات جديدة. ثم عند استخدام pfodApp لفتح اتصال Multimeter ، سترى القائمة المصممة الخاصة بك.

لا يعرض فتح الرسم البياني أي شيء مثير للاهتمام لأننا لم نقم بإضافة أجهزة / برامج متعددة المقاييس.

الخطوة 9: إضافة المتر

إضافة المتر
إضافة المتر
إضافة المتر
إضافة المتر
إضافة المتر
إضافة المتر

سنقوم بتعديل الرسم الذي تم إنشاؤه لإضافة المحلل اللغوي متعدد المقاييس وإرسال بياناته إلى هاتفك المحمول الذي يعمل بنظام Android. الرسم المعدل الكامل موجود هنا ، pfod_meter.ino

تضيف هذه التعديلات المحلل اللغوي المتعدد وجهاز توقيت 5 ثوان. إذا لم تكن هناك قراءة جديدة صالحة في ذلك الوقت ، فسيتوقف الرسم عن إرسال البيانات ويقوم بتحديث شاشة Android / pfodApp إلى "- - -". نظرًا لتغيير التحديد اليدوي للعداد ، يتم تحديث تسميات الرسم البياني ، لكنك تحتاج إلى الخروج من المخطط وإعادة تحديده لرؤية التسميات الجديدة. من ناحية أخرى ، يتم تحديث قراءة العداد تلقائيًا كل ثانية. أخيرًا ، يتعامل pfodApp مع Unicode افتراضيًا ، لذلك عند عرض قراءة العداد ، يتم استخدام الطريقة getTypeAsUnicode () لإرجاع Unicode للأوم ، و ، و degsC ، ℃ لعرض العداد.

يعرض زر المخطط مخطط تحديث القراءات: -

يتم أيضًا حفظ بيانات الرسم البياني ، بتنسيق CSV ، في ملف على هاتف Android الخاص بك ضمن /pfodAppRawData/Mulitmeter.txt لنقلها لاحقًا إلى جهاز الكمبيوتر الخاص بك واستيرادها إلى جدول بيانات لمزيد من العمليات الحسابية والرسوم البيانية.

الخطوة 10: تعديلات الرسم بالتفصيل

  1. قم بتنزيل مكتبة pfodVC820MeterParser.zip ثم افتح Arduino IDE وانقر في Sketch → Include Library → Add.zip لإضافة هذه المكتبة إلى IDE الخاص بك.
  2. أضف مكتبة pfodVC820MeterParser إلى الرسم التخطيطي. انقر فوق Sketch → Include Library → pfodVC820MeterParser. سيؤدي هذا إلى إضافة عبارات التضمين في الجزء العلوي من الرسم التخطيطي.
  3. تحرير المحلل اللغوي pfodParser_codeGenerated ("V1") ؛ إلى pfodParser_codeGenerated parser ("") ؛ يؤدي هذا إلى تعطيل قائمة التخزين المؤقت في pfodApp حتى يتم عرض تغييرات القائمة الخاصة بك. يمكنك العودة إلى "V3" عند الانتهاء من جميع التغييرات لإعادة تمكين التخزين المؤقت للقائمة.
  4. أضف هذه الأسطر لإنشاء كائنات للبرنامج التسلسلي والمولتيميتر. متر pfodVC820MeterParser ؛
  5. في نهاية الإعداد () أضف Serial1.begin (2400) ؛ meter.connect (& Serial1) ؛
  6. حلقة فوق () تضيف صالحة طويلة بدون إشارة طويلة صالحة للقراءة = 0 ؛ ثابت بدون توقيع طويل VALID_READINGS_TIMEOUT = 5000 ؛ // 5secs منطقي haveValidReadings = صحيح ؛ // ضبط على صواب عندما يكون لديك قراءات صحيحة int للقياس نوع = meter. NO_READING ؛ وأعلى الحلقة () أضف if (meter.haveReading ()) {if (meter.isValid ()) {validReadingTimer = millis () ؛ haveValidReadings = صحيح ؛ } int newType = meter.getType () ؛ if (augeType! = newType) {// إخراج عناوين تسجيل بيانات جديدة parser.print (F ("sec،")) ؛ parser.println (meter.getTypeAsStr ()) ، } MeasType = newType ؛ } if ((millis () - validReadingTimer)> VALID_READINGS_TIMEOUT) {haveValidReadings = false ؛ // لا توجد قراءة جديدة صالحة في آخر 5 ثوان}
  7. مزيد من الأسفل في الحلقة استبدل parser.print (F ("{= Multimeter | time (secs) | Plot_1 ~~~ ||}")) ؛ باستخدام parser.print (F ("{= Multimeter | time (secs) | قراءة العداد ~~~")) ؛ parser.print (meter.getTypeAsStr ()) ، parser.print (F ("||}")) ؛
  8. في أسفل الحلقة () استبدل sendData () ؛ مع if (haveValidReadings) {sendData () ؛ }
  9. في sendData () استبدل parser.print ('،')؛ parser.print (((float) (plot_1_var-plot_1_varMin)) * plot_1_scaling + plot_1_varDisplayMin) ؛ مع parser.print ('،') ؛ parser.print (meter.getAsStr) ؛
  10. في sendMainMenu () استبدل parser.print (F ("~ Label")) ؛ مع parser.print ('~') ؛ إذا (haveValidReadings) {parser.print (meter.getDigits ()) ؛ parser.print (meter.getScalingAsStr ()) ، parser.print (meter.getTypeAsUnicode ()) ، } else {parser.print (F ("- - -")) ؛ }
  11. في sendMainMenuUpdate () أضف parser.print (F ("|! A")) ؛ parser.print ('~') ؛ إذا (haveValidReadings) {parser.print (meter.getDigits ()) ؛ parser.print (meter.getScalingAsStr ()) ، parser.print (meter.getTypeAsUnicode ()) ، } else {parser.print (F ("- - -")) ؛ } لتحديث القراءة عند استخدام قائمة التخزين المؤقت.

استنتاج

أظهر هذا البرنامج التعليمي كيفية توصيل جهاز متعدد غير مكلف بـ Arduino Mega2560 عبر RS232. يتم دعم العديد من اللوحات الأخرى أيضًا. تقوم pfodVC820MeterParserlibrary بتوزيع بيانات المتر المتعدد إلى عوامات لحسابات Arduino وسلاسل العرض والتسجيل. تم استخدام pfodDesignerV2 لإنشاء رسم أساسي لعرض قراءة المقياس المتعدد وإظهار مخطط للقيم في هاتف Android باستخدام pfodApp. لا حاجة لبرمجة أندرويد.إلى هذا الرسم الأساسي ، تمت إضافة التعامل مع أجهزة القياس المتعددة ، ويعرض المخطط النهائي القراءة الحالية للمقياس المتعدد على هاتفك المحمول الذي يعمل بنظام Android بالإضافة إلى رسم القراءات وتسجيلها في ملف على هاتفك المحمول لاستخدامها لاحقًا.

موصى به: