- المواد المطلوبة
- فهم محركات BLDC
- لماذا تستخدم الطائرات بدون طيار والمروحيات المتعددة الأخرى محركات BLDC؟
- لماذا نحتاج إلى ESC وما هي وظيفته؟
- بعض المصطلحات الشائعة مع BLDC و ESC:
- مخطط دائرة التحكم في محرك Arduino BLDC
- برنامج BLDC Speed Control باستخدام Arduino
- التحكم في محرك Arduino BLDC
بناء الأشياء وجعلها تعمل ، بالطريقة التي نريدها ، كان دائمًا ممتعًا تمامًا. في حين يتم الاتفاق على ذلك ، فإن بناء الأشياء التي يمكن أن تطير من شأنه أن يؤدي بتحد إلى زيادة القلق قليلاً بين الهواة والمصلحين في الأجهزة. نعم! أنا أتحدث عن الطائرات الشراعية والمروحيات والطائرات والمروحيات المتعددة بشكل رئيسي. أصبح من السهل جدًا اليوم إنشاء واحدة بمفردك بسبب دعم المجتمع المتاح عبر الإنترنت. شيء واحد مشترك مع كل الأشياء التي تطير هو أنها تستخدم محرك BLDC ، فما هو محرك BLDC هذا؟ لماذا نحتاجها لتطير الأشياء؟ ما المميز بشانه؟ كيف تشتري المحرك المناسب وتتفاعل مع وحدة التحكم الخاصة بك؟ ما هو ESC ولماذا نستخدمه؟ إذا كانت لديك أسئلة مثل هذه ، فهذا البرنامج التعليمي هو الحل الوحيد.
لذلك في هذا البرنامج التعليمي سوف نتحكم في محرك بدون فرش باستخدام Arduino. هنا يتم استخدام المحرك الخارجي A2212 / 13T Sensorless BLDC مع متحكم السرعة الإلكتروني 20A (ESC). يستخدم هذا المحرك بشكل شائع لبناء طائرات بدون طيار.
المواد المطلوبة
- محرك A2212 / 13T BLDC
- ESC (20A)
- مصدر الطاقة (12 فولت 20 أمبير)
- اردوينو
- مقياس فرق الجهد
فهم محركات BLDC
يرمز محرك BLDC إلى محرك Brush Less DC ، ويستخدم بشكل شائع في مراوح السقف والمركبات الكهربائية نظرًا لتشغيله السلس. سبق شرح استخدام محركات BLDC في السيارات الكهربائية بالتفصيل. على عكس المحركات الأخرى ، تحتوي محركات BLDC على ثلاثة أسلاك تخرج منها ويشكل كل سلك طورًا خاصًا به وبالتالي يعطينا محركًا ثلاثي الطور. انتظر ماذا!!؟؟
نعم ، على الرغم من أن محركات BLDC تعتبر محركات DC ، إلا أنها تعمل بمساعدة الموجات النبضية. تقوم وحدة التحكم في السرعة الإلكترونية (ESC) بتحويل جهد التيار المستمر من البطارية إلى نبضات وتزويده بأسلاك المحرك الثلاثة. في أي وقت من الأوقات ، سيتم تشغيل طورين فقط من المحرك ، بحيث يدخل التيار خلال مرحلة واحدة ويخرج من خلال الأخرى. خلال هذه العملية يتم تنشيط الملف الموجود داخل المحرك ، وبالتالي فإن المغناطيسات الموجودة على الدوار تصطف نفسها مع الملف النشط. ثم يتم تنشيط السلكين التاليين بواسطة ESC ، وتستمر هذه العملية لجعل المحرك يدور. تعتمد سرعة المحرك على مدى سرعة تنشيط الملف ويعتمد اتجاه المحرك على الترتيب الذي يتم فيه تنشيط الملفات. سوف نتعلم المزيد عن ESC لاحقًا في هذه المقالة.
هناك العديد من أنواع محركات BLDC المتاحة ، دعنا نلقي نظرة على التصنيفات الأكثر شيوعًا.
محرك BLDC عداء و Out-Runner: تعمل محركات BLDC في العداء مثل أي محرك آخر. هذا هو العمود داخل المحرك يدور بينما يظل الغلاف ثابتًا. في حين أن محركات BLDC للعداء الخارجي هي عكس ذلك تمامًا ، فإن الغلاف الخارجي للمحرك يدور جنبًا إلى جنب مع العمود بينما يظل الملف الداخلي ثابتًا. تعتبر المحركات التي تعمل بالخارج مزايا كبيرة في الدراجات الكهربائية نظرًا لأن الغلاف الخارجي (الذي يدور) نفسه مصنوع في إطار حافة للإطارات وبالتالي يتم تجنب آلية الاقتران. تميل محركات العداء الخارجي أيضًا إلى إعطاء عزم دوران أكبر مما هو عليه في أنواع العداء ، وبالتالي تصبح خيارًا مثاليًا في المركبات الكهربائية والطائرات بدون طيار. الذي نستخدمه هنا هو أيضًا نوع عداء خارجي.
ملحوظة: هناك نوع آخر من المحركات يسمى محركات BLDC عديمة النواة والتي تستخدم أيضًا للطائرات بدون طيار الجيب ، ولديها مبدأ عمل مختلف ولكن الآن دعنا نتخطاه من أجل هذا البرنامج التعليمي.
محرك BLDC المستشعر والمحسّن: لكي يدور محرك BLDC دون أي رعشة ، يلزم تقديم ملاحظات. هذا هو ESC يجب أن يعرف موضع وقطب المغناطيس في الدوار وذلك لتنشيط الجزء الثابت وفقًا لذلك. يمكن الحصول على هذه المعلومات بطريقتين ؛ الأول عن طريق وضع مستشعر القاعة داخل المحرك. سيكتشف مستشعر القاعة المغناطيس ويرسل المعلومات إلى ESC يسمى هذا النوع من المحركات بمحرك Sensord BLDC ويستخدم في السيارات الكهربائية. الطريقة الثانية هي استخدام EMF الخلفي الناتج عن الملفات عندما تعبرها المغناطيسات ، وهذا لا يتطلب أجهزة أو أسلاكًا إضافية ، يتم استخدام سلك الطور نفسه كتغذية مرتدة للتحقق من عودة EMF. تُستخدم هذه الطريقة في محركنا وهي شائعة في الطائرات بدون طيار وغيرها من مشاريع الطيران.
لماذا تستخدم الطائرات بدون طيار والمروحيات المتعددة الأخرى محركات BLDC؟
هناك العديد من أنواع الطائرات بدون طيار الرائعة من المروحية الرباعية إلى المروحيات والطائرات الشراعية ، كل شيء له جهاز واحد مشترك. هذه هي محركات BLDC ، لكن لماذا؟ لماذا يستخدمون محرك BLDC وهو مكلف بعض الشيء مقارنة بمحركات DC؟
هناك عدد غير قليل من الأسباب الوجيهة لذلك ، أحد الأسباب الرئيسية هو أن عزم الدوران الذي توفره هذه المحركات مرتفع للغاية وهو أمر مهم جدًا لكسب / تخفيف قوة الدفع بسرعة لإقلاع أو هبوط طائرة بدون طيار. كما تتوفر هذه المحركات كجائين للخارج مما يزيد من قوة الدفع للمحركات. سبب آخر لاختيار محرك BLDC هو تشغيله السلس للاهتزاز ، وهذا مثالي جدًا لثبات الطائرة بدون طيار في الجو.
و القدرة على نسبة وزن المحرك BLDC عالية جدا. هذا مهم جدًا لأن المحركات المستخدمة في الطائرات بدون طيار يجب أن تكون ذات طاقة عالية (سرعة عالية وعزم دوران مرتفع) ولكن يجب أيضًا أن تكون أقل وزنًا. سيكون محرك DC الذي يمكن أن يوفر نفس عزم الدوران وسرعة محرك BLDC ضعف وزن محرك BLDC.
لماذا نحتاج إلى ESC وما هي وظيفته؟
كما نعلم ، يتطلب كل محرك BLDC نوعًا من وحدة التحكم لتحويل جهد التيار المستمر من البطارية إلى نبضات لتشغيل أسلاك الطور للمحرك. تسمى وحدة التحكم هذه ESC والتي تعني وحدة التحكم الإلكترونية في السرعة. تتمثل المسؤولية الرئيسية لوحدة التحكم في تنشيط أسلاك الطور لمحركات BLDC بترتيب بحيث يدور المحرك. يتم ذلك عن طريق استشعار EMF الخلفي من كل سلك وتنشيط الملف بالضبط عندما يعبر المغناطيس الملف. لذلك هناك الكثير من تألق الأجهزة داخل ESC وهو خارج نطاق هذا البرنامج التعليمي. ولكن على سبيل المثال لا الحصر ، فإنه يحتوي على وحدة تحكم في السرعة ودائرة مزيل للبطارية.
التحكم في السرعة المستند إلى PWM: يمكن لـ ESC التحكم في سرعة محرك BLDC من خلال قراءة إشارة PWM المتوفرة على السلك البرتقالي. إنه يعمل بشكل مشابه جدًا لمحركات المؤازرة ، يجب أن يكون لإشارة PWM المقدمة فترة 20 مللي ثانية ويمكن أن تتغير دورة العمل لتغير سرعة محرك BLDC. نظرًا لأن نفس المنطق ينطبق أيضًا على محركات المؤازرة للتحكم في الموضع ، يمكننا استخدام نفس مكتبة المؤازرة في برنامج Arduino الخاص بنا. تعلم استخدام Servo مع Arduino هنا.
دائرة مزيل البطارية (BEC): تأتي جميع وحدات ESC تقريبًا مع دائرة مزيل البطارية. كما يوحي الاسم ، فإن هذه الدائرة تلغي الحاجة إلى بطارية منفصلة لمتحكم دقيق ، وفي هذه الحالة لا نحتاج إلى مصدر طاقة منفصل لتشغيل Arduino ؛ سيوفر ESC نفسه + 5 فولت منظم والذي يمكن استخدامه قوة Arduino. هناك العديد من أنواع الدوائر التي تنظم هذا الجهد عادةً ما يكون تنظيمًا خطيًا على ESCs الرخيصة ، ولكن يمكنك أيضًا العثور على تلك التي تحتوي على دوائر تبديل.
البرامج الثابتة: يحتوي كل ESC على برنامج برنامج ثابت مكتوب فيه من قبل الشركات المصنعة. تحدد هذه البرامج الثابتة بشكل كبير كيفية استجابة ESC ؛ بعض البرامج الثابتة الشائعة هي Traditional و Simon-K و BL-Heli. هذه البرامج الثابتة قابلة للبرمجة من قبل المستخدم ولكننا لن ندخل في الكثير من ذلك في هذا البرنامج التعليمي.
بعض المصطلحات الشائعة مع BLDC و ESC:
إذا كنت قد بدأت للتو في العمل مع محركات BLDC ، فربما تكون قد صادفت مصطلحات مثل الكبح ، والبدء الناعم ، واتجاه المحرك ، والجهد المنخفض ، ووقت الاستجابة ، والتقدم . دعونا نلقي نظرة على ما تعنيه هذه المصطلحات.
الكبح: الكبح هو قدرة محرك BLDC على التوقف عن الدوران بمجرد إزالة دواسة الوقود. هذه القدرة مهمة جدًا للمروحيات المتعددة حيث يتعين عليها تغيير عدد دوراتها في الدقيقة في كثير من الأحيان للمناورة في الهواء.
البداية الناعمة: البداية الناعمة هي ميزة مهمة يجب مراعاتها عندما يكون محرك BLDC مرتبطًا بالعتاد. عندما يتم تمكين بدء التشغيل الناعم للمحرك ، فلن يبدأ بالدوران بسرعة كبيرة بشكل مفاجئ ، بل سيزيد السرعة دائمًا بشكل تدريجي بغض النظر عن سرعة إعطاء دواسة الوقود. سيساعدنا هذا في تقليل تآكل التروس المرفقة بالمحركات (إن وجدت).
اتجاه المحرك: لا يتغير اتجاه المحرك في محركات BLDC عادةً أثناء التشغيل. ولكن عند التجميع ، قد يحتاج المستخدم إلى تغيير الاتجاه الذي يدور فيه المحرك. أسهل طريقة لتغيير اتجاه المحرك هي ببساطة تغيير أي سلكين للمحرك.
إيقاف الجهد المنخفض: بمجرد المعايرة ، سنحتاج دائمًا إلى تشغيل محركات BLDC الخاصة بنا بنفس السرعة المعينة لقيمة معينة من دواسة الوقود. لكن من الصعب تحقيق ذلك لأن المحركات تميل إلى تقليل سرعتها لنفس قيمة الخانق مع انخفاض جهد البطارية. لتجنب ذلك ، نقوم عادةً ببرمجة ESC للتوقف عن العمل عندما يصل جهد البطارية إلى ما دون قيمة العتبة ، وتسمى هذه الوظيفة إيقاف الجهد المنخفض وهي مفيدة في الطائرات بدون طيار.
وقت الاستجابة: تسمى قدرة المحرك على تغيير سرعته بسرعة بناءً على التغيير في الخانق بزمن الاستجابة. كلما قل وقت الاستجابة كلما كان التحكم أفضل.
تقدم: التقدم هو مشكلة أو أكثر مثل خطأ في محركات BLDC. جميع محركات BLDC لديها القليل من التقدم فيها. وذلك عندما يتم تنشيط ملفات الجزء الثابت ، ينجذب الدوار نحوها بسبب المغناطيس الدائم الموجود عليها. بعد الانجذاب ، يميل الدوار إلى التحرك قليلاً إلى الأمام في نفس الاتجاه قبل أن ينشط الملف ثم ينشط الملف التالي. تسمى هذه الحركة "متقدمًا" وسوف تخلق مشاكل مثل الرجفان والتسخين وإحداث الضجيج وما إلى ذلك. لذلك هذا شيء يجب على ESC الجيد تجنبه من تلقاء نفسه.
حسنًا ، ما يكفي من النظرية الآن ، دعنا نبدأ مع الأجهزة من خلال توصيل المحرك بـ Arduino.
مخطط دائرة التحكم في محرك Arduino BLDC
يوجد أدناه مخطط الدائرة للتحكم في محرك بدون فرش باستخدام Arduino:
اتصال توصيل محرك BLDC مع Arduino بشكل مستقيم للأمام. يحتاج ESC إلى مصدر طاقة يبلغ حوالي 12 فولت و 5 أمبير كحد أدنى. في هذا البرنامج التعليمي ، استخدمت RPS كمصدر للطاقة ولكن يمكنك أيضًا استخدام بطارية Li-Po لتشغيل ESC. يجب توصيل الأسلاك ثلاثية الطور الخاصة بـ ESC بالأسلاك ثلاثية الطور للمحركات ، ولا يوجد ترتيب لتوصيل هذه الأسلاك يمكنك توصيلها بأي ترتيب.
تحذير: لن تحتوي بعض وحدات ESC على موصلات عليها ، وفي هذه الحالة تأكد من أن اتصالك متين وقم بحماية الأسلاك المكشوفة باستخدام شريط عازل. نظرًا لأنه سيكون هناك تيار مرتفع يمر عبر المراحل ، فإن أي قصر سيؤدي إلى تلف دائم في ESC والمحرك.
و BEC (بطارية المزيل الدائرة) وفي ESC نفسها تنظيم و+ 5V التي يمكن استخدامها لتصل قوتها مجلس اردوينو. أخيرًا لضبط سرعة محرك BLDC ، نستخدم أيضًا مقياس جهد متصل بدبوس A0 في Arduino
برنامج BLDC Speed Control باستخدام Arduino
يتعين علينا إنشاء إشارة PWM بدورة عمل مختلفة من 0٪ إلى 100٪ بتردد 50 هرتز. يجب التحكم في دورة العمل باستخدام مقياس الجهد حتى نتمكن من التحكم في سرعة المحرك. يشبه الكود للقيام بذلك التحكم في محركات المؤازرة لأنها تتطلب أيضًا إشارة PWM بتردد 50 هرتز ؛ ومن ثم نستخدم نفس مكتبة المؤازرة من Arduino. و رمز كاملة ويمكن الاطلاع على الجزء السفلي من هذه الصفحة أيضا أدناه شرح لي رمز في قصاصات صغيرة. وإذا كنت جديدًا على Arduino أو PWM ، فانتقل أولاً إلى استخدام PWM مع Arduino والتحكم في المؤازرة باستخدام Arduino.
يمكن إنشاء إشارة PWM فقط على المسامير التي تدعم PWM بواسطة الأجهزة ، وعادة ما يتم ذكر هذه المسامير بالرمز ~. في Arduino UNO ، يمكن أن يولد الدبوس 9 إشارة PWM لذلك نقوم بتوصيل دبوس إشارة ESC (السلك البرتقالي) بالدبوس 9 ونذكر أيضًا نفس رمز inn باستخدام السطر التالي
ESCattach (9) ،
يتعين علينا إنشاء إشارة PWM لدورة عمل متغيرة من 0٪ إلى 100٪. بالنسبة لدورة العمل بنسبة 0٪ ، ستخرج POT 0V (0) وفي دورة العمل 100٪ ، ستخرج POT 5V (1023). هنا يتم توصيل الوعاء بالدبوس A0 ، لذلك علينا قراءة الجهد التمثيلي من POT باستخدام وظيفة القراءة التناظرية كما هو موضح أدناه
int throttle = analogRead (A0) ؛
ثم يتعين علينا تحويل القيمة من 0 إلى 1023 إلى 0 إلى 180 لأن القيمة 0 ستولد 0٪ PWM وستولد القيمة 180 دورة عمل بنسبة 100٪. أي قيم أعلى من 180 لن يكون لها معنى. لذلك قمنا بتعيين القيمة إلى 0-180 باستخدام وظيفة الخريطة كما هو موضح أدناه.
خنق = خريطة (خنق ، 0 ، 1023 ، 0 ، 180) ؛
أخيرًا ، يتعين علينا إرسال هذه القيمة إلى وظيفة المؤازرة حتى تتمكن من إنشاء إشارة PWM على هذا الدبوس. نظرًا لأننا قمنا بتسمية كائن مؤازر باسم ESC ، فسيبدو الرمز كما يلي ، حيث يحتوي الخانق المتغير على القيمة من 0-180 للتحكم في دورة عمل إشارة PWM
ESC.write (خنق) ؛
التحكم في محرك Arduino BLDC
قم بإجراء الاتصالات وفقًا لمخطط الدائرة وقم بتحميل الكود إلى Arduino وقم بتشغيل ESC. تأكد من تثبيت محرك BLDC على شيء ما لأن المحرك سوف يقفز في كل مكان عند الدوران. بمجرد تشغيل الإعداد ، سيقوم ESC بإصدار نغمة ترحيب وسيستمر في إصدار صوت تنبيه حتى تصبح إشارة الخانق ضمن حدود العتبة ، قم ببساطة بزيادة POT من 0 فولت تدريجيًا وستتوقف نغمة التنبيه ، وهذا يعني أننا نقدم الآن PWM إشارة أعلى من قيمة الحد الأدنى ، وكلما زادت أكثر سيبدأ المحرك في الدوران ببطء. كلما زاد الجهد الذي توفره زادت السرعة التي يلتقطها المحرك ، وفي النهاية عندما يصل الجهد إلى أعلى من الحد الأعلى ، سيتوقف المحرك. يمكنك بعد ذلك تكرار العملية.
يمكن أيضًا العثور على العمل الكامل لوحدة التحكم Arduino BLDC على رابط الفيديو أدناه. إذا واجهت أي مشكلة في الحصول على هذا العمل ، فلا تتردد في استخدام قسم التعليقات أو استخدام المنتديات لمزيد من المساعدة التقنية.