نظرية التحكم Control Theory
هذا المقال يشرح بشكل مبسط (بعض) المفاهيم العامة لنظرية التحكم، بالإضافة إلى مثال عملي على نمذجة محرك من نوع BLDC.
الشكل التالي يوضح المخطط العام لأنظمة التحكم ذات التغذية الراجعة (Feedback Control Systems).
بداية، لدينا نظام (System) ما نريد التحكم به. هذا النظام قد يكون محركاً كهربائياً، طائرة، آلة لتغليف الطعام في خط إنتاج ما، تفاعل كيميائي في مصنع للبتروكيماويات، الخ. يجب أن يتم نمذجة (modeling) هذا النظام. عملية النمذجة تعني الحصول على المعادلات الخاصة بالنظام، ومن ثم تحويلها إلى إما دالة تحويل (transfer function) أو نموذج فضاء الحالة (state space model). الشكل أعلاه يسمى Block Diagram، وفي هذه الحالة نستخدم دوال التحويل. أما في حال استخدام نموذج فضاء الحالة فسنستخدم مصفوفات. غالباً ما نقوم باستخدام تحويل لابلاس (Laplace Transform) لتحويل المعادلات التفاضلية الخاصة بالنظام من time domain إلى frequency domain.
أما المتحكم (Controller) فكما هو واضح من الاسم يقوم بالتحكم بذلك النظام. المتحكم عبارة عن معادلة رياضية (أو أكثر)، وهي الأخرى يمكن تمثيلها باستخدام دالة التحويل.
هناك أيضاً القياسات (Measurements). الغرض منها هو إغلاق الحلقة، وهذا هو الفرق بين المتحكم مفتوح الحلقة (open loop) والمتحكم مغلق الحلقة (closed loop). ضمن هذا السياق، تعتبر تلك القياسات بمثابة تغذية راجعة (feedback) للمتحكم. هذه القياسات يمكن أن تكون، مثلاً في حالة المحرك الكهربائية، سرعة دوران المحرك، كما يقيسها حساس Hall Effect مثلاً.
الإشارات (signals) الموجودة في المخطط أعلاه هي كالتالي. بداية لدينا الإشارة r وهي تمثل الأمر الصادر للمتحكم، مثلاً أمر للطائرة كي تحافظ على ارتفاع معين. في هذه الحالة تكون إشارة القياس ym هي ارتفاع الطائرة الحقيقي كما يقيسه حساس الضغط مثلاً. لاحظ هنا أنه قد يكون الجزء الخاص بـ Measurements يساوي 1، بحيث أنه لا حاجة لتعديل الإشارة القادمة من الحساس، ويكفي استخدامها كما هي. أحياناً قد يلزم عمل بعض التعديلات لهذه الإشارة (مثلاً تكبيرها، أو فلترتها من الضوضاء، الخ). في تلك الحالة لن يتم إدراج ذلك الجزء في المخطط. هناك أيضاً الإشارة e وهي تمثل الخطأ (error) وهو الفرق بين الأمر الصادر للمتحكم وبين القيمة الفعلية (مثلاً الفرق بين ارتفاع الطائرة المطلوب والارتفاع الفعلي). الإشارة u تمثل الأمر الصادر من المتحكم للنظام، وهي مثلاً أمر إلى المحرك بحيث تزيد سرعته (عبر زيادة التيار القادم إليه مثلاً).
أما بخصوص الاضطرابات (disturbance) فهي تمثل إشارة غير مرغوبة. يمكن التفكير بهذه الاضطرابات على أنها نتيجة لعدم نمذجة النظام بالدقة المطلوبة. مثلاً عند نمذجة محرك كهربائي، يجب تضمين الحث (inductance) في النموذج، وإن تم تجاهله فهذا سيؤدي إلى ما يمكن اعتباره اضطراباً في النظام. يمكن أيضاً التفكير في تلك الاضطرابات على أنها اضطرابات فيزيائية، مثلاً قد يواجه المحرك تغيرات في الحمل (load).
كمثال، يمكن اشتقاق المعادلتين التاليتين (سنقوم بذلك في الأقسام اللاحقة) لمحرك كهربائي:
حيث I هي التيار الكهربائي، R هي مقاومة المحرك، L هي حث المحرك، w هي سرعة الدوران، J هي عزم العطالة (moment of inertia) للمحرك، Vs هي الجهد المطبق على المحرك و TL هي القدرة الميكانيكية للمحرك. أما باقي القيم فهي ثوابت. التعامل مع هذه المعادلات صعب، لذلك نستخدم تحويل لابلاس والذي يعرف كالتالي:
حيث s هي بمثابة المتغير الخاص بالتردد، والذي يقابل t في الزمن. بتطبيق هذا التحويل على المعادلتين السابقتين، وبالتعويض نحصل على دالة التحويل (المبسطة) الخاصة بالمحرك كالتالي:
هناك تعريفان مهمان: أصفار النظام (zeros) وأقطاب النظام (poles). الأولى هي قيم s التي تجعل البسط صفراً، والثانية هي قيمة s التي تجعل المقام صفراً. في المثال السابق لا توجد أصفار للنظام، لكن يوجد قطبان نحصل عليهما بحل المعادلة من الدرجة الثانية. لاحظ أن أقطاب النظام قد تكون مركبة (complex).
سننتقل الآن للحديث عن الأنظمة من الدرجة الثانية. نعني بذلك أن النظام له قطبان (2 poles)، أي أن أعلى درجة في المقام هي s2. هذه الأنظمة يمكن تمثيل دالة التحويل الخاصة بها كالتالي:
اعتماداً على نوع الأقطاب، هناك 4 حالات يمكن تمييزها كالتالي:
c(t) |
Poles |
Category |
|
Two real: |
Overdamped |
|
Two complex: |
Underdamped |
|
Two imaginary: |
Undamped |
|
Repeated real: |
Critically damped |
حيث يشير العمود الأيمن إلى معادلة النظام في time domain. الشكل التالي يوضح أماكن الأقطاب. لكل فئة من تلك الفئات الأربع يمكننا رسم معادلة النظام كما في الشكل التالي. لاحظ أن فئة underdamped هي الأكثر انتشارا في الحياة العملية ولذلك سنركز عليها فيما يلي. بداية، يمكن تعريف الكميات التالية:
- Natural Frequency، أو
. هذا هو تردد التذبذبات (oscillations) دون damping.
- Damping Ratio، تقيس مقدار damping في النظام، ويعرف كالتالي:
.
الشكل التالي يوضح المفهوم الثاني. باستخدام هاتين الكميتين يمكن إعادة كتابة دالة التحويل للأنظمة من الدرجة الثانية كالتالي:
عند الحديث عن system response فإنه من المناسب تعريف الكميات التالية:
- Peak Time: أو Tp، الزمن اللازم للوصول إلى أول قمة.
- Percent Overshoot: أو OS، الفرق بين قيمة النظام عند Tpوبين قيمته النهائية.
- Settling Time: أو Ts، الزمن اللازم للتذبذبات كي تنخفض وتصل إلى أقل من 2% من القيمة النهائية.
- Rise Time: أو Tr، الزمن اللازم للانتقال من 10% إلى 90% من القيمة النهائية.
المُتحكم PID
من المهم معرفة كيفية عمل متحكم الـ PID. PID هي اختصار لـ Proportional, Integral and Derivative. الشكل العام للمتحكم هو كالتالي.
كما هو واضح من الشكل، يمكن كتابة المعادلة العامة كالتالي:
حيث e(t) هي الخطأ. يمكن إعادة كتابة المعادلة السابقة باستخدام Laplace Transform كالتالي:
سنفصل الحديث الآن عن مجموعة من المتحكمات:
- متحكم P
إن P هي اختصار Proportional. هذا المتحكم مناسب فقط للأنظمة من الدرجة الأولى، ولا يمكنه تثبيت (stabilize) أي نظام من الدرجة 2 فما فوق.
- متحكم PI
إن إضافة الحد I أي Integrator للمتحكم السابق يسمح لهذا المتحكم بالتخلص من steady state error، أي الخطأ الموجود في النظام بعد وصوله إلى مرحلة الاستقرار (المفترضة). ما يفعله هذا المتحكم هو زيادة إشارة التحكم u فورما يجد أن إشارة الخطأ e أكبر من صفر. سيؤدي هذا إلى انخفاض الخطأ، إلى أن يصل إلى صفر. هذه الميزة تأتي على حساب سرعة الاستجابة (speed of response) والاستقرار (stability). يمكن ملاحظة انخفاض سرعة الاستجابة كما بالشكل التالي. لاحظ أنه في وجود step input فإن استجابة الـ Integrator تكون عبارة عن ramp أي تزداد تدريجياً، بمعنى أن الـ Integrator لن يعطي استجابة مباشرة بل يحتاج إلى بعض الوقت. أما بخصوص العيب الثاني فهذا سببه أن الـ Integrator يسبب phase shift بمقدار -90 درجة، مع العلم أن هذا الـ phase lag ينخفض مع ازدياد التردد.
- متحكم PD
إن كان الـ Integrator معني بالماضِ الخاص بالإشارة، فالـ Derivator معني بمستقبل تلك الإشارة. هذه الخاصية مفيدة أحياناً لأن الإشارة قد تتغير فجأة، فبعد أن كانت هابطة قد تنقلب فجأة وتبدأ بالتصاعد. لن يستطيع الـ Integrator التصرف بسرعة في هذه الحالة، وهنا تكمن مهمة الـ Derivator. عند الحديث عن D mode نتحدث عادة عن Derviative Time Constant، أو Td، وهو الفرق الزمني بين استجابة (response) متحكم من النوع P ومتحكم من النوع PD:
أي أن متحكم PD يعطي استجابة قبل متحكم P بمقدار Td ثانية. هناك عدة ملاحظات يجب الانتباه لها. أولاً، فمن الناحية الفيزيائية، من المستحيل التنبؤ بالمستقبل. وعليه، فإن الـ Derivator بشكله المثالي يعتبر مكوناً نظرياً لا يمكن تطبيقه عملياً. الحل يمكن في استبدال كالتالي:
سيتم تفسير N بعد قليل. الملاحظة الثانية أنه، وخلافاً لما هو ظاهر في مخطط المتحكم PID العام في الأعلى، فإنه عملياً يتم توصيل جزئية D بالخرج مباشرة، وليس بإشارة الخطأ e كما هو الحال مع جزئيتي P و I. السبب هو محاولة تجنب التغيرات المفاجئة في إشارة التحكم والتي بدورها ستسبب تغير مفاجئ في إشارة الخطأ، ومن ثم ستسبب تغير مفاجئ في إشارة المتحكم المرسلة إلى النظام. الملاحظة الثالثة هي أن عملية الاشتقاق حساسة للترددات العالية المرتبطة غالباً بالضوضاء. الحل هو في استخدام N كما في المعادلة أعلاه، حيث تعمل على الحد من الكسب (gain) في حالة الترددات العالية. تتراوح قيمة N عادة بين 3 إلى 20. وأخيراً نلاحظ أن الـ Derivator يعمل عكس الـ Integrator من حيث الـ phase lag، أي أنه يسبب phase lead.
- متحكم PID
يجمع هذا المتحكم بين كل ما سبق شرحه، حيث يتميز بسرعة الاستجابة والاستقرار والتخلص من الخطأ الثابت.
مثال: نموذج محرك BLDC
إن نمذجة المحرك الكهربائي ليست عادة بالأمر الصعب. المحرك المستخدم هنا هو محرك كهربائي يعمل بالتيار الثابت Brushless DC Motor أو BLDC اختصاراً.
للحصول على نموذج لهذا المحرك، لنتمعن الشكل التالي:
في البداية سنقوم بنمذجة محرك ذو طور واحد، ثم ننتقل إلى ثلاثة أطوار كما بالشكل. باستخدام قانون كيرشوف (Kirchoff’s law):
حيث Vs هي جهد المصدر (supply voltage)، I هي Armature Current، e هي Back EMF للمحرك. في حالة steady state يكون الحد الأوسط في يمين المعادلة صفراً. يعطى الـ Back EMF بالمعادلة التالية:
حيث kb هي Back EMF Constant، و ωm هي السرعة الزاوية لدوران المحرك. باستخدام قوانين نيوتن، يمكن كتابة المعادلة التالية:
حيث Te هي العزم الكهربائي (Electric Torque)، b هي ثابت الاحتكاك أو لنقل اللزوجة (friction / viscousity constant)، J هي عزم العطالة للمحرك (moment of inertia)، TL هي عزم الحمل (Load Torque). يعطى العزم الكهربائي كالتالي:
حيث kt هو ثابت العزم (Torque Constant). وبهذا يمكننا كتابة المعادلتين التاليتين:
بافتراض الظروف الأولية (initial conditions) تساوي صفر، وبافتراض حالة No Load (أي TL صفر)، سنطبق Laplace Transform على تلك المعادلات لنحصل على الحل التالي:
وبتعويض إحدى المعادلتين في الأخرى نحصل على Vs بدلالة ωm، ومن هنا يمكن كتابة الـ Transfer Function كالتالي:
هذه هي المعادلة العامة، ويمكننا تبسيطها كالتالي. بافتراض b=0، وأن RJ>>kfL، و kekt>>kfR، نحصل على:
الآن لدينا عدة تعريفات:
حيث الأول هو ثابت الزمن الميكانيكي (Mechanical Time constant) والثاني هو ثابت الزمن الكهربائي (Electrical Time Constant). سننتقل الآن إلى حالة 3-phase. ستتغير التعريفات السابقة كالتالي (يجب أخذ تأثير الطور بعين الاعتبار):
حيث L-L تعني Line to Line. العلاقة بين Kb و Kt يمكن استنتاجها كالتالي:
حيث الطرف الأيسر من المعادلة الأولى هو القدرة الكهربائية، حيث استبدلنا e بـ E. أما الطرف الأيمن فهو القدرة الميكانيكية، و T هي عزم المحرك، N هي عدد الدورات بالثانية الواحدة. I هي التيار الكهربائي كما سبق. باستبدال kb بـ Kb و kt بـ Kt في transfer function السابق ذكرها يمكن الحصول على transfer function لحالة الـ 3-phase. جميع المعادلات السابقة مأخوذة من المراجع أدناه. الشكل التالي يوضح جدول الخصائص لأحد المحركات من طراز BLK421S-160V-3000، من شركة Anaheim Automation. سعر هذا المحرك 590 دولار أمريكي.
Value | Unit | Parameter |
160 | V | Rated Voltage |
3000 | RPM | Rated Speed |
1260 | W | Rated Power |
0.43 | N.m | Rated Torque |
0.42 | Ω | Resistant (RL-L) |
0.0031 | H | Inductance (LL-L) |
0.000024 | Kg.m2 | Rotor Inertia (J) |
0.43 | N.m / A | Torque Constant (Kt) |
5.89 | Kg | Weight |
Star | – | Winding |
8 | – | No. of Poles |
ملاحظة: نظراً لأن قيمة L صغيرة (في الجدول السابق قيمتها 0.0031)، عادة ما يتم تجاهلها وافتراضها صفراً.
وبهذا نكون قد انتهينا من نمذجة المحرك الكهربائي من نوع BLDC.
المراجع
[1] | Radhesh. [Online]. Available: http://radhesh.wordpress.com/2008/05/11/pid-controller-simplified/. [Accessed 2 April 2014]. |
[2] | Z. Vukic and O. Kuljaca, “LECTURES ON PID CONTROLLERS,” April 2002. [Online]. Available: http://www.uta.edu/utari/acs/jyotirmay/EE4343/Labs_Projects/pidcontrollers.pdf. [Accessed 9 May 2014]. |
[3] | O. J. Oguntoyinbo, “PID Control of Brushless DC Motor and Robot Trajectory Planning and Simulation using MATLAB/SIMULINK,” Vaasan Ammattikorkeakoulu Univ. of applied sciences, 2009. |
[4] | Anaheim Automation, [Online]. Available: http://www.anaheimautomation.com/products/brushless/brushless-motor-item.php?sID=366&pt=i&tID=96&cID=22. [Accessed 20 April 2014]. |
at | Permalink
ما شاء الله بشمهندس … مقال مرتب جدا جدا جدا .. مش ناقصه اي شي
at | Permalink
مقال رائع بارك الله فيك
at | Permalink
اافضل مقال قراته, راجع لي جميع معلوماتي من كرس 2 الي 4 , جزاك الله خير
at | Permalink
ممتاز يا دكتور علي
at | Permalink
تسلم يا محمد
at | Permalink
تسلم يا محمد
at | Permalink
تسلم يا بشمهندس
at | Permalink
الله يخليك يا بشمهندس
at | Permalink
تسلم الله يخليك
at | Permalink
طالب راغب في العلم أرجو التعاون
at | Permalink
لدي مشروع تخرج لنظام حراري باستخدام الخوارزميه الجينيه .. ارجو لمن لديه الخلفيه عن الموضوع المساعد وشكرا جزيلا
at | Permalink
اجبني العرض أرجو الله أن يتقبل منك أنا مقبل علي مدكرة تخرج سنة2 ماستر الية صناغية عندي مشاكل مع انظمة التحكم خصوصا المخمن ( estlmater والتحكم بالاشعة في محرك mas