جدول المحتويات:
- الخطوة 1: ما هي المكتبة؟
- الخطوة 2: هيكل المكتبة والملفات
- الخطوة 3: ملف الرأس
- الخطوة 4: الملف المصدر
- الخطوة 5: تقديم نماذج اسكتشات
- الخطوة 6: النشر إلى مدير المكتبة
- الخطوة 7: الخطوات التالية
فيديو: إنشاء مكتبة Arduino لمشاهدتها على YouTube: 7 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:38
مرحبا جميعا،
لقد أنشأت مؤخرًا خدمة تسمى 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.
موصى به:
برمجة Arduino باستخدام Arduino آخر لعرض نص متحرك بدون مكتبة: 5 خطوات
برمجة Arduino باستخدام Arduino آخر لعرض نص متحرك بدون مكتبة: Sony Spresense أو Arduino Uno ليست باهظة الثمن ولا تتطلب الكثير من الطاقة. ومع ذلك ، إذا كان لمشروعك قيود على الطاقة أو المساحة أو حتى الميزانية ، فقد ترغب في التفكير في استخدام Arduino Pro Mini. على عكس Arduino Pro Micro ، فإن Arduino Pro Mi
تخطيط شدة الضوء باستخدام مكتبة Arduino و Python الرئيسية في Arduino: 5 خطوات
تخطيط شدة الضوء باستخدام مكتبة Arduino الرئيسية في Arduino و Python: تعتبر Arduino أداة اقتصادية وفعالة للغاية ، فإن برمجتها في Embedded C تجعل عملية جعل المشاريع مملة! تعمل الوحدة النمطية Arduino_Master في Python على تبسيط هذا الأمر وتتيح لنا إجراء العمليات الحسابية وإزالة قيم القمامة ،
ESP8266 مراقبة درجة حرارة Nodemcu باستخدام DHT11 على خادم ويب محلي - احصل على درجة حرارة الغرفة ورطوبتها على متصفحك: 6 خطوات
ESP8266 مراقبة درجة حرارة Nodemcu باستخدام DHT11 على خادم ويب محلي | احصل على درجة حرارة الغرفة ورطوبتها على متصفحك: مرحبًا يا شباب اليوم سنصنع الرطوبة & amp؛ نظام مراقبة درجة الحرارة باستخدام ESP 8266 NODEMCU & amp؛ جهاز استشعار درجة الحرارة DHT11. سيتم الحصول على درجة الحرارة والرطوبة من مستشعر DHT11 & amp؛ يمكن رؤيته على متصفح أي صفحة ويب ستتم إدارتها
Arduino Text to Speech Converter باستخدام LM386 - مشروع حديث اردوينو - مكتبة Talkie Arduino: 5 خطوات
Arduino Text to Speech Converter باستخدام LM386 | مشروع حديث اردوينو | مكتبة Talkie Arduino: مرحبًا يا رفاق ، في العديد من المشاريع ، نطلب من arduino التحدث بشيء مثل ساعة التحدث أو إخبار بعض البيانات في هذه التعليمات ، سنقوم بتحويل النص إلى كلام باستخدام Arduino
احصل على موافقة Google على مقاطع فيديو YouTube الخاصة بك !: 4 خطوات
احصل على موافقة Google على مقاطع فيديو YouTube الخاصة بك !: باستخدام خطأ في العلامة التجارية ، يمكنك أيضًا الحصول على مقاطع فيديو معتمدة من Google على YouTube