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

رسم بسيط للبيانات عن بعد باستخدام Android / Arduino / PfodApp: 6 خطوات
رسم بسيط للبيانات عن بعد باستخدام Android / Arduino / PfodApp: 6 خطوات

فيديو: رسم بسيط للبيانات عن بعد باستخدام Android / Arduino / PfodApp: 6 خطوات

فيديو: رسم بسيط للبيانات عن بعد باستخدام Android / Arduino / PfodApp: 6 خطوات
فيديو: CS50 Live, Episode 003 2024, شهر نوفمبر
Anonim
رسم بسيط للبيانات عن بعد باستخدام Android / Arduino / PfodApp
رسم بسيط للبيانات عن بعد باستخدام Android / Arduino / PfodApp

لتخطيط البيانات مقابل التاريخ / الوقت باستخدام فقط مللي من Arduino () انظر هذا InstructableArduino التاريخ / الوقت التآمر / التسجيل باستخدام Millis () و PfodApp

يوضح لك هذا Instructable كيفية رسم بيانات مستشعر Arduino على هاتف Android الخاص بك والتقاطها لتنزيلها لاحقًا على جهاز الكمبيوتر الخاص بك. تتوفر هذه التعليمات أيضًا على www.pfod.com.au لا يلزم برمجة Android ولا يلزم سوى القليل جدًا من برمجة Arduino. إنه امتداد لتسجيل بيانات الجوال البسيط باستخدام pfodApp

الخطوة 1: البدء السريع بالتخطيط

البدء السريع بالتخطيط
البدء السريع بالتخطيط

أ) احصل على لوحة Arduino ووحدة Bluetooth (مثل Uno و Bluetooth Shield أو FioV3 + Bluetooth) ب) قم بتثبيت Arduino IDE ج) قم بتوصيل لوحة Arduino (بدون وحدة بلوتوث متصلة) بكبل USB. د) انسخ هذا الرسم التخطيطي في Arduino IDE وقم بتجميعه وتحميله في لوحة Arduino) هـ) قم بتوصيل وحدة Bluetooth Shield بـ Uno (تم تكوين Bluetooth Shield مسبقًا لـ 9600baud ولكن اضبط المفتاح 3V / 5V على 5V وقم بتعيين مفتاح To Board / To FT232 إلى الوضع To Board. و) قم بتحميل Android Mobile الخاص بك باستخدام pfodApp. ز) قم بإعداد اتصال بين هاتفك المحمول ووحدة Bluetooth كما هو موضح في pfodAppForAndroidGettingStarted.pdf ح) ابدأ pfodApp واتصل بلوحة Arduino عبر وحدة Bluetooth. انا انتهيت. سيحفظ هاتفك المحمول الآن ويخطط لتهم محول Arduino AtoD للإدخال A0

الخطوة 2: رسم التخطيط

رسم التخطيط
رسم التخطيط

يتطلب التخطيط باستخدام pfodApp شيئين: - أ) تدفق البيانات (بتنسيق CSV) و ب) أمر الرسم من pfodDevice (Arduino) الرسم التخطيطي SimpleDataPlotting.ino يقوم بأمرين فقط. أولاً ، يقرأ الإدخال التناظري A0 مرة واحدة في الثانية ويرسل الثواني الحالية والأعداد بتنسيق CSV ، وثانيًا عندما يتصل pfodApp ويطلب القائمة الرئيسية ، يستجيب الرسم بأمر التخطيط لبدء رسم القياسات. هذا هو الكود الذي يتم تنفيذه مرة واحدة في الثانية لقراءة الإدخال التناظري A0 وكتابة الثواني الحالية ، ويتم احتسابه على اتصال البلوتوث. // اقرأ A0 مرة واحدة في ثانية int val = analogRead (0) ؛ // A0 // إخراج الوقت الحالي والقراءة بتنسيق csv parser.print (thisMillis / 1000) ؛ // الحقل الأول هو الوقت بالثواني parser.print ("،") ؛ // الفاصلة تفصل الحقول parser.println (val) ؛ // خط جديد ينهي سجل البيانات

إليك الكود الذي يستجيب لطلب pfodApp لقائمة pfodDevice (Arduino Uno) الرئيسية.

البايت cmd = parser.parse () ، إذا (cmd! = 0) {// قام بتحليل رسالة كاملة {to} if ('.' == cmd) {// طلب pfodApp القائمة الرئيسية // أرسل مرة أخرى parser.print (F ("{= مخطط A0 التناظري | الوقت (بالثانية) | الأعداد}")) ؛ // هذه هي القائمة الرئيسية} else if ('!' == cmd) {// CloseConnection command closeConnection (parser.getPfodAppStream ())؛ } else {// unknown command parser.print (F ("{}")) ؛ // دائمًا أرسل رسالة pfod msg وإلا سيتم قطع اتصال pfodApp. }}

عندما يتصل pfodApp الخاص بهاتفك المحمول ، فإنه يطلب تلقائيًا القائمة الرئيسية (عن طريق إرسال الرسالة {.}) ، يقوم المحلل اللغوي في الرسم التخطيطي (انظر الرمز الموجود أسفل الرسم التخطيطي) بتوزيع {.} وإرجاع "." أمر. ثم يرسل المخطط أمر الرسم {= مخطط A0 التناظري | الوقت (بالثانية) | عدد 0} يوجه هذا الأمر pfodApp لفتح شاشة تسمى "مخطط A0 التناظري" ورسم الوقت مقابل التهم. ثم يقوم pfodApp بفحص البيانات الأولية الواردة ويبحث عن خطوط بها حقلين ويأخذ الحقل الأول كقيمة x والثاني كقيمة y ويضيف هذه النقطة إلى الرسم البياني. عندما يتم فتح شاشة التخطيط (أو شاشة البيانات الأولية) ، يبدأ pfodApp في حفظ جميع البيانات الأولية في ملف محلي على هاتفك المحمول. يستمر pfodApp في حفظ البيانات حتى تخرج من pfodApp. يمكنك تنزيل هذا الملف على جهاز الكمبيوتر الخاص بك لمزيد من المعالجة (انظر إحدى الخطوات اللاحقة). هناك عدد من الخيارات الأخرى لأمر الرسم والتي تسمح لك بتجاهل بعض الحقول ، وتعيين مقاييس الرسم ، ورسم مخططات متعددة على مخطط واحد وما إلى ذلك. راجع pfodSpecification للحصول على التفاصيل والأمثلة. يمكن لـ pfodApp أن يفعل أكثر من مجرد التخطيط ، راجع هذه الأمثلة. المؤامرة أعلاه هي مثال على مخططين يحتوي أحدهما على قطعتي أرض. هذه المؤامرة من ArduMower ، افعلها بنفسك جزازة روبوتية! الذي يستخدم نفس pfodApp للتحكم في جزازة آلية. يتم استخدام نفس pfodApp للتحكم في جميع أجهزة pfodDevices. إنها pfodDevices التي تحدد تمامًا الشاشات التي يتم عرضها للمستخدمين.

الخطوة 3: مزيد من التفاصيل

تفاصيل اكثر
تفاصيل اكثر
تفاصيل اكثر
تفاصيل اكثر

يتيح أحدث إصدار من pfodApp المتوفر في Android Market إمكانية رسم البيانات الأولية المرسلة بواسطة pfodDevice (مثل Arduino) وحفظها في ملف لاستخدامها لاحقًا. راجع pfodAppForAndroidGettingStarted.pdf لمعرفة كيفية تنزيل الملف من هاتف Android المحمول إلى جهاز الكمبيوتر الخاص بك. يتطلب التخطيط شيئين: - أ) دفق من البيانات (بتنسيق CSV) و ب) أمر مؤامرة من pfodDevice يمكن لـ pfodDevice (Arduino) إرسال أي نوع من البيانات خارج رسائل pfod. رسائل pfod المضمنة بـ {} والتي تميزها عن البيانات الأخرى. إذا كنت تريد رسم البيانات ، فأنت بحاجة إلى إرسال البيانات بتنسيق CSV. هذه هي قيم البيانات مفصولة بفواصل ، وتنتهي بسطر جديد (إما CR أو LF أو CR LF) على سبيل المثال 105 ، 680 عندما يريد pfodDevice عرض قطعة أرض للمستخدم ، يرسل pfodDevice أمر رسم. يتحكم رسم Arduino بشكل كامل في مخططات pfodApp. يعطي الأمر plot عنوانًا لشاشة الرسم ويحدد دفق البيانات الأولية المراد رسمه وأي الحقول من هذا الدفق. التدفقات المختلفة من البيانات الأولية لها أعداد مختلفة من الحقول المفصولة بفاصلة. عدد الأشرطة | في أمر الرسم ، يجب أن يتطابق مع عدد الحقول في دفق البيانات الذي تريد رسمه. يتم تجاهل سطور البيانات التي تحتوي على عدد مختلف من الحقول لهذه المؤامرة. يوجد عدد من الخيارات لأمر التخطيط لتحديد الحقول المراد رسمها وتعيين المقاييس والوحدات ووضع مخططات متعددة على مخطط واحد. أبسطها هو إرسال قيم x كحقل أول وقيم y كالحقول التالية ، ثم في اسم أمر التخطيط ، المحور x والمحور y على سبيل المثال {= مخطط A0 تمثيلي | الوقت (بالثانية) | عدد A0} عنوان قطعة الأرض | حقل قيم x | حقل قيم y يمكنك أيضًا عرض البيانات الأولية التي يتم إرسالها إلى هاتفك المحمول. يمكن الوصول إلى شاشة "البيانات الأولية" من pfodApp باستخدام قائمة هاتفك المحمول أو يمكن فتحها بواسطة pfodDevice الذي يرسل رسالة StreamingRawData ، {= عنوان الشاشة يذهب هنا} أي نسخة مقطوعة من أمر التخطيط. في كلتا الحالتين يتم فتح شاشة البيانات الأولية لـ pfodApp وستعرض البيانات التي تم إرسالها من pfodDevice. عند فتح الشاشة ، سيبدأ pfodApp في حفظ البيانات في ملف. يتم عرض اسم الملف في كل مرة يتم فيها فتح الشاشة (أو شاشة الرسم). لمنع امتلاء هاتفك المحمول بالبيانات التي لا تريدها ، لا يبدأ pfodApp في كتابة البيانات على بطاقة SD الخاصة بالهاتف المحمول حتى يتم فتح شاشة البيانات الأولية أو شاشة الرسم لأول مرة بعد كل اتصال جديد. في المرة الأولى التي يتم فيها فتح شاشة Raw Data بعد اتصال جديد ، تتم كتابة ما يصل إلى 4K بايت من البيانات المستلمة مسبقًا (منذ إجراء الاتصال) في ملف عند فتحه. هذه البيانات متاحة أيضا للمؤامرة. في معظم الحالات ، يعني هذا أنه سيتم حفظ جميع البيانات الأولية التي تم إرسالها منذ إجراء الاتصال. عند إغلاق الاتصال ، تتم كتابة آخر البيانات ويتم إغلاق الملف. إذا كان الملف موجودًا بالفعل ، من اتصال سابق ، يتم إلحاقه بكل اتصال لاحق. يمكنك تنزيل الملف وحذفه من جهاز الكمبيوتر الخاص بك. راجع pfodAppForAndroidGettingStarted.pdf لمعرفة كيفية الوصول إلى الملف من جهاز الكمبيوتر الخاص بك.

الخطوة 4: الاختبار باستخدام SerialMonitor

اختبار مع SerialMonitor
اختبار مع SerialMonitor
اختبار مع SerialMonitor
اختبار مع SerialMonitor

قبل الاتصال عبر البلوتوث ، يمكنك اختبار الرسم باستخدام Arduino IDE SerialMonitor. قم أولاً بإزالة لوحة البلوتوث ، لأنها تستخدم نفس اتصالات TX / RX مثل برمجة USB واتصال جهاز العرض التسلسلي ، وانسخ والصق الرسم (SimpleDataPlotting.ino) في Arduino IDE وبرمجة لوحة Arduino. ثم افتح Arduino IDE SerialMonitor يمكنك رؤية البيانات التي يتم إرسالها بواسطة لوحة Uno. ثم اكتب {.} وانقر على "إرسال" لإرسال الأمر getMainMenu ، {.} هذا ما سيرسله pfodApp أولاً عند الاتصال. يستجيب الرسم بأمر التخطيط. {= مخطط A0 تناظري | الوقت (بالثانية) | A0 Count} الذي سيطلب من pfodApp فتح شاشة تخطيط والبدء في رسم البيانات. يؤدي هذا أيضًا إلى بدء حفظ البيانات في ملف. راجع pfodSpecification للحصول على تفاصيل حول جميع الرسائل والشاشات التي يدعمها pfod (بروتوكول اكتشاف العملية).

الخطوة 5: الاتصال بهاتف Android Mobile

الاتصال بهاتف أندرويد
الاتصال بهاتف أندرويد
الاتصال بهاتف أندرويد
الاتصال بهاتف أندرويد

كل شيء جيد حتى تتمكن الآن من إغلاق Arduino IDE و SerialMonitor وإرفاق درع Bluetooth ، كما هو موضح سابقًا. للاتصال بجهاز Android Mobile ، قم أولاً بتثبيت pfodApp من Android Market ثم اتبع دليل pfodAppForAndroidGettingStarted.pdf لإقران درع Bluetooth بهاتفك المحمول وإعداد اتصال Bluetooth pfodApp. أطلقت على اتصالي "تسجيل البيانات البسيط". ثم حدد اتصال "Simple Data Logging" للاتصال بمسجل البيانات البسيط. بمجرد توصيل pfodApp ، يرسل الرسالة {.} التي يستجيب لها الرسم برسالة {= Analog A0 Plot | الوقت (بالثانية) | A0 Counts} التي تخبر pfodApp برسم البيانات وتبدأ أيضًا في حفظ البيانات. في هذه المؤامرة ، قمت بتوصيل A0 بـ Gnd و 5.5 فولت و 3.3 فولت وتركته عائمًا فقط لالتقاط الضوضاء.

الخطوة 6: نقل البيانات إلى جهاز الكمبيوتر الخاص بك

نقل البيانات إلى جهاز الكمبيوتر الخاص بك
نقل البيانات إلى جهاز الكمبيوتر الخاص بك

يوضح pfodAppForAndroidGettingStarted.pdf كيفية توصيل هاتفك المحمول بجهاز الكمبيوتر الخاص بك عبر USB وكيفية تشغيل وحدة تخزين USB كبيرة السعة حتى تتمكن من تصفحها من جهاز الكمبيوتر الخاص بك. ستجد جميع ملفات البيانات الأولية في مجلد pfodAppRawData. كما هو موضح أعلاه ، قام Simple Data Logger بحفظ البيانات في / pfodAppRawData / Simple Data Logging.txt يستخدم pfodApp اسم الاتصال كاسم ملف لحفظ البيانات. أن كلا من المؤامرات وحفظ البيانات الخاصة بك ، يمكنك تعديل المخطط لإرسال البيانات الخاصة بك مرة أخرى. ما عليك سوى كتابة بياناتك ، بتنسيق CSV ، على نفس الاتصال التسلسلي المتصل بوحدة Bluetooth الخاصة بك. إذا كان لديك أكثر من حقلي بيانات ، فستحتاج إلى تعديل أمر التخطيط. انظر pfodSpecification للحصول على التفاصيل والأمثلة.

موصى به: