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

إنشاء مكتبة Arduino لمشاهدتها على YouTube: 7 خطوات
إنشاء مكتبة Arduino لمشاهدتها على YouTube: 7 خطوات

فيديو: إنشاء مكتبة Arduino لمشاهدتها على YouTube: 7 خطوات

فيديو: إنشاء مكتبة Arduino لمشاهدتها على YouTube: 7 خطوات
فيديو: Display Temperature on LCD1602 using LM35 Temperature Sensor with Arduino 2024, شهر نوفمبر
Anonim
Image
Image
ما هي المكتبة؟
ما هي المكتبة؟

مرحبا جميعا،

لقد أنشأت مؤخرًا خدمة تسمى YouTube Sight يمكنها استخراج بيانات المشتركين من YouTube Analytics API وتمنحك أعدادًا أكثر دقة للمشتركين منذ أن بدأ YouTube في تجميع النتائج. باستخدامه ، أنشأت نموذجًا للرسم ولكني أردت أيضًا إنشاء مكتبة Arduino حتى يتمكن الأشخاص من استخدامها بسهولة أكبر.

الخطوة 1: ما هي المكتبة؟

ما هي المكتبة؟
ما هي المكتبة؟

المكتبة هي جزء من التعليمات البرمجية التي يمكنها التعامل مع عملية معينة أو معالجة نوع من البيانات أو معرفة كيفية التفاعل مع عنصر جهاز معين. إنها تسمح لنا بتوسيع بيئة Arduino بسهولة وهناك الكثير منها مثبت مسبقًا مع Arduino IDE.

في حالات مثل حالتي ، حيث نريد إضافة إمكانيات جديدة إلى Arduino ، يمكننا إنشاء مكتباتنا الخاصة لأشخاص آخرين لاستخدامها. تعيش جميع المكتبات المثبتة في مجلد محدد على جهاز الكمبيوتر الخاص بنا. في حالتي الخاصة بجهاز الكمبيوتر الشخصي الذي يعمل بنظام Windows ، تعيش المكتبات ضمن مجلد المستندات / Arduino. سيكون المسار الكامل مخصصًا لك ، بناءً على اسم المستخدم الخاص بك.

الخطوة 2: هيكل المكتبة والملفات

هيكل المكتبة والملفات
هيكل المكتبة والملفات

لبدء إنشاء مكتبتنا ، نحتاج أولاً إلى إنشاء مجلد هنا باسمه ، لذلك قمت بإنشاء مجلد يسمى YouTube Sight. في الإصدار الأدنى من المكتبة ، يجب أن يكون لدينا ملفان على الأقل.

الأول هو ما يسمى بالملف "header" الذي يحتوي على جميع تعريفات الأساليب والخصائص التي توفرها مكتبتنا ، والثاني هو الملف المصدر الذي سيحتوي على جميع التعليمات البرمجية المصدر.

ملفات الرأس لها امتداد ".h" بينما الملف المصدر له امتداد ".cpp" وعادة ما يكون لها اسم المكتبة كاسم الملف. في حالتي ، يُطلق على الملفين اسم "YouTubeSight.h" و "YouTubeSight.cpp".

قد تكون عملية كتابة كود المكتبة مملة ومحبطة بعض الشيء ، خاصة عندما تكتب مكتبة لأول مرة ، ولكن مع الكثير من التجربة والخطأ ، يمكنك تحقيق النتائج المرجوة. بسبب ذلك سوف أرشدك خلال الكود النهائي للملفين وأشرحها.

الكود الكامل والمكتبة متاحان للتنزيل من GitHub على الرابط التالي:

الخطوة 3: ملف الرأس

ملف الرأس
ملف الرأس
ملف الرأس
ملف الرأس
ملف الرأس
ملف الرأس

داخل ملف الرأس ، في البداية ، يتم التفاف الملف بأكمله داخل عبارة "ifndef" التي تتحقق مما إذا كان المتغير المحدد معرّفًا أم لا. سيؤدي هذا إلى منع حدوث أخطاء لأي شخص يستخدم المكتبة إذا قاموا بتضمينها مرتين في نفس الرسم عن طريق الخطأ.

بعد ذلك ، نحتاج إلى تضمين مكتبة Arduino الأساسية ، وبما أننا سنعمل مع عميل HTTP من نوع ما لإرسال الطلب إلى YouTube Sight ، فسنقوم أيضًا بتضمين مكتبة العميل الأساسية.

قبل أن نبدأ في كتابة محتوى صفنا الرئيسي ، نحتاج إلى تحديد أي متغيرات وإعدادات ثابتة لا نريد تعديلها. في حالتي ، هناك نوعان من هذه المتغيرات. عنوان URL الرئيسي لخدمة YouTube Sight ومتغير المهلة الذي سنستخدمه للتحقق من المدة التي نقرأ فيها قيمة.

في هذا القسم أيضًا ، يمكننا تحديد أي أنواع مخصصة نريد استخدامها مثل بنية إحصائيات القناة التي سنحفظ النتائج فيها.

ينقسم تعريف بنية الفصل إلى جزأين. الجزء الأول هو تعريف جميع الوظائف والخصائص العامة والثاني هو تعريف جميع الوظائف والخصائص الخاصة. الفرق بين الاثنين هو أن المستخدمين النهائيين لمكتبتنا لن يكونوا قادرين على استخدام أي شيء من القسم الخاص مباشرة بينما سيكونون قادرين على تعديل واستخدام أي من الخصائص والوظائف من الجزء العام مباشرة.

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

بالنسبة للخصائص الخاصة ، سنحدد واحدًا لتخزين القناة GUID ، ومؤشرًا لعميل HTTP الذي سنستخدمه ووظيفة تقسم السلسلة المرتجعة من YouTube Sight.

الخطوة 4: الملف المصدر

الملف المصدر
الملف المصدر
الملف المصدر
الملف المصدر

الآن دعونا نلقي نظرة على التنفيذ الفعلي لكل هذا داخل الملف المصدر.

الخطوة الأولى بالنسبة لنا هي تضمين ملف الرأس الخاص بنا الذي أنشأناه للتو ثم نحتاج إلى تحديد مُنشئ المكتبة. في ذلك ، نقوم بتمرير متغيرين. يتم حفظ المعرف الفريد العمومي (GUID) في المتغير الخاص الذي حددناه سابقًا ويتم تمرير العميل بالمرجع حتى نتمكن من استدعاء نفس المثيل الذي حصلنا عليه.

يتم تحديد وظيفة getData الرئيسية للمكتبة بعد ذلك من خلال تحديد نوع الإرجاع أولاً ، متبوعًا باسم المكتبة واسم الوظيفة. لن أخوض في تفاصيل ما يفعله كل سطر في هذه الوظيفة ، ولكن بشكل عام ، تفتح الوظيفة اتصالاً بخادم YouTube Sight ، وترسل طلبًا للحصول على الإحصائيات ثم تحلل البيانات التي تم إرجاعها بمساعدة وظيفة getValue الخاصة.

يتم بعد ذلك ضبط النتائج المسترجعة على متغير channelStats ويتم إرجاع مؤشر إذا نجحنا في استرداد النتائج أم لا وبهذا اكتمل جوهر مكتبتنا.

الخطوة 5: تقديم نماذج اسكتشات

تقديم نماذج اسكتشات
تقديم نماذج اسكتشات

عادة ، تقدم كل مكتبة أمثلة يمكنك تحميلها واستخدامها بسرعة لعرض ما يمكن للمكتبة القيام به وكيفية القيام بذلك. لتقديم مثل هذه الأمثلة ، نحتاج إلى تعديل بنية المكتبة حيث سيكون الرأس والملف المصدر الآن في مجلد "src" وستتم إضافة مجلد جديد تحت جذر المكتبة يسمى "أمثلة".

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

الخطوة 6: النشر إلى مدير المكتبة

النشر إلى مدير المكتبة
النشر إلى مدير المكتبة

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

تتمثل إحدى الطرق الشائعة في تنزيل المكتبة من GitHub وتثبيتها من خلال مثبت ZIP في IDE أو ببساطة وضعها داخل مجلد المكتبات كما فعلنا عندما كنا ننشئها. ومع ذلك ، يشتمل Arduino IDE أيضًا على أداة تسمى Library Manager تسمح لك بالبحث عن مكتبة مباشرة من IDE.

لتضمين مكتبتك فيها ، نحتاج أولاً إلى إنشاء ملف إضافي في المجلد الجذر يسمى "library.properties" وفيه ، نحتاج إلى تحديد اسم المكتبة والإصدار الحالي وبعض المعلومات الإضافية التي ستساعد مدير المكتبة لعرض معلومات أفضل عنها.

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

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

آمل أنه بعد Instructable ، يكون لديك فهم أفضل لكيفية عمل مكتبات Arduino ، وكيف يمكنك إنشاء واحدة ، والأهم من ذلك ، آمل أن تحصل على الإلهام لبدء العمل على فكرتك الكبيرة التالية.

لأية أسئلة أو اقتراحات إضافية ، لا تتردد في كتابتها في التعليقات ، واشترك في قناتي على YouTube وتابعني هنا على Instructables.

موصى به: