Professional Documents
Culture Documents
تصميم نظم التحكم والمحاكاة باستخدام labview
تصميم نظم التحكم والمحاكاة باستخدام labview
المكونات البرمجٌة
تحصٌل
تحلٌل تحصٌل
عرض تحلٌل
عرض
المكونات المادٌة
3
هذا الدرس سوف ٌساعدك على:
-فهم وحدة مصمم التحكم والتعرٌف فً البفٌو.
-استعمال البفٌو فً حل مشاكل التحكم.
-بناء دوال تحوٌل النظم.
-تطوٌر خوارزمٌات التحكم وتحلٌل استجاباتها.
-محاكاة خوارزمٌات التحكم فً محٌط الخطً.
-البحث عن الحلول المثلى للخوارزمٌات من خالل محٌط
جدالً.
4
-فهم وحدة مصمم التحكم والتعرٌف فً
البفٌو.
-
استعمال البفٌو فً حل مشاكل التحكم.
7
مع األجهزة االفتراضٌةٌ ،ستعمل المهندسون البرمجة
الصورٌة لخلق حلول تناسب حاجٌاتهم ،وهو البدٌل
المهم للملكٌة الخاصة ،التوظٌف الثابت لألجهزة
التقلٌدٌة.
أضف إلى ذلك ،األجهزة االفتراضٌة تعطً أولوٌة ألداء
الحاسوب المتزاٌد .مثال ،فً االختبار ،القٌاس ،والتحكم،
المهندسون األجهزة االفتراضٌة للتقلٌل من حجم استعمل
أجهزة األتمتة واالختبار ،وارتفع كسب المردود فً
اإلنتاجٌة بعشرة مرات
مقابل تكالٌف متدنٌة بالنسبة لمردود األجهزة التقلٌدٌة.
كثٌر من الشركات الرائدة اختارت األجهزة االفتراضٌة
بدال من األجهزة التقلٌدٌة.
8
ذطٕس األخٓضج االفرشاضٛح
ٚؼرثش ذطٕس األخٓضج االفرشاضٛح ذسٕال ف ٙطشٚقح ذطثٛق ػًهٛح انشتظ تٍٛ
انساعٕب ٔاألخٓضج انخاسخٛح انًشذثطح تّ .ف ٙانًاض ٙانقشٚة ،كاَد ػًهٛح
انشتظ يثُٛح ػهٗ أكٕاد ،يؼقذج ٔغٛش ٔاضسح انًؼانى ،إٌ نى َقم يثًٓحٚٔ .قضٙ
انًظًى ٔقرا طٕٚال نكراتح انكٕد أٔ نًؼشفح كٛف ٚؼًم ،يثم يا ْٕ انسال ػُذ
اعرؼًال نغح ....، Basic ،Pascal ، Cانٕٛوًٚ ،كٍ أٌ ٚسم َفظ انًٕضٕع
ف ٙنسظح تاعرؼًال طشٚقح األخٓضج االفرشاضٛح Virtual ( VI
ٔ ،)Instrumentsخاطح ذهك انر ٙذغرؼًم ذقُٛح انثشيدح(انظٕسٚح)
تانشعٕياخ ٔاألشكال ٔذذفق انثٛاَاخ.
9
ْزِ انرقُٛح ذسراج إنٗ يًاسعح ػًهٛح ،كًا ذسراج إنٗ
انُض انرذقٛق ٙانُظش٘ نرسٕٚم انخثشج إنٗ كٕد يُرح
ٔفؼال .انُض انُظش٘ ٚغرؼًم كًشخغ نرشخًرّ إنٗ
ػًه ٙف ٙانًٛذاَ ٍٛاألكادٔ ًٙٚانظُاػ .ٙف ٙاػرقاد
انكثٛش ٍٚأَّ ال ذٕخذ ػالقح ت ٍٛتشيدح التفٔ ٕٛانثشيدح
انرقهٛذٚحْٔ ،زا غٛش يقُغ .طسٛر أٌ يٕاطفاخ التفٕٛ
كثٛشج ٔٔظائف خاطح تّ ،نٛظ نٓا يا ٚقاتهٓا فٙ
انثشيدح انرقهٛذٚح.
10
فIcon ٙنكٍ ،أعاط انًُطق ٔازذ .التفٚ ٕٛغرؼًم األٚقَٕح
انثشيدحٔ ،انؼالقح ت ٍٛانثشيدح انرقهٛذٚح .انثشيدح ف ٙالتفٕٛ
ًٚكٍ ذذاسكٓا تغٕٓنح ٔتذٌٔ ػُاء تؼكظ انثشيدح انرقهٛذٚح
انر ٙذرغى تانظؼٕتح ٔانٕقٕع ف ٙكثشج األخطاء.
11
نًارا التفٕٛ؟
هدف هذه المشاركات الفنٌة هو إعطاء فكرة على األجهزة االفتراضٌة ،بناء
القٌاس ،واألتمتة بتطبٌق المعاٌٌر الصناعٌة باستعمال محٌط البفٌو المبنً
على الرسومات واألشكال .كٌف ٌمكن استعمال البفٌو لتحصٌل البٌانات،
تحلٌلها،وعرضها؟ Acquire , Analyze, and Present Data
12
األجهزة االفتراضٌة تتطلب التطور المتوازي فً
المكونات المادٌة والمكونات الغٌر مادٌة(البرمجٌات).
إن تطور الوصلة البٌنٌة لمستعمل الرسومات بتطور
البرامج و التقدم فً استعمال معاٌٌر موصالت األجهزة،
كلها شاركت فً تطوٌر األجهزة االفتراضٌة ،VIولم
ٌكن بمقدور أحدها التطور بدون اآلخر .هذا التفاعل تم
إبرازه وتفسٌر التعامل بٌن هذه العناصر .كما تطرقنا
للمقارنة بٌن محٌطً البرمجة التقلٌدٌة التً توصف
بتدفق البرامج و البرمجة باستعمال البفٌو من خالل VI
التً تعرف بتدفق البٌانات ،وإظهار وجه االختالف
بٌنهما.
13
ما هً األجهزة االفتراضٌة VI؟
منذ منتصف الثمانٌنات ،أصبحت األجهزة االفتراضٌة تكون تحالفا
مع تكنولوجٌا الحاسوب ،برامج التطوٌر وأجهزة القٌاس
المعٌارٌة(المكونة من عناصر متكررة) لمساعدة المستعملٌن
بتكوٌن أجهزة شخصٌة معرفة بواسطة برنامج الحاسوب.
هذه األجهزة االفتراضٌة تتوفر على اللٌونة والمرونة أفضل من
األجهزة التقلٌدٌة و تطورت بسرعة لتالحق تطور تكنولوجٌا علم
الحاسوب.
األجهزة االفتراضٌة تم اعتمادها وبقوة فً تطبٌقات االختبار.
معانً وتصورات األجهزة االفتراضٌة إما ٌتم اعتمادها أو ٌطعن
فً مصداقٌتها فً صناعة االختبار.
14
الصناعة التكنولوجٌة عند وزارة لدفاع األمرٌكٌة ،مثال ،التً
لٌس لها ،بصفة عامة ،مٌول و نزعة فً خلق التوجهات
فً مٌدان التكنولوجٌا ،اعتمدت وبقوة األجهزة االفتراضٌة،
وهً تعتبر أكبر مستهلك ألجهزة االختبار المؤتمتة .وقد
اعتمدت اختٌار األجهزة الموجهة بواسطة برامج الحاسوب
Syntheticفً مشروعها"األجهزة التركٌبٌة
Instrument .
15
هذه األجهزة ٌمكن إعادة تشكٌلها التكوٌنً
Reconfigurationكلما لزم تغٌٌر نمط
التحكم .الجهاز التركٌبً ٌمكن أن ٌعوض كثٌرا
من األجهزة أحادٌة الوظٌفة ،وهذا ٌقلص من
الحجم المخصص لها ،ومن الصعوبات اللوجستٌة
وٌحل مشكل اإلهمال واالستغناء عن األجهزة
أحادٌة المهام والمكلفة.
16
معظم الشركات الصناعٌة الكبرى ،مثل
موتوروال ،فٌلٌبس،نوكٌا ....اعتمدت األجهزة
االفتراضٌة وتستعمل برامج الحاسوب واألجهزة
االفتراضٌة لبناء التطبٌقات الحاسمة والحرجة
فً اختبار اإلنتاجٌة بكمٌات كبٌرة وبدقة عالٌة،
و فً مٌدان التحكم فً آالت اإلنتاج ،وحتى فً
المفاعالت الذرٌة......
17
تارٌخ األجهزة االفتراضٌة
عند بداٌة تطور الحاسبات ،كان لكل حاسوب برنامج خاص به .لكن ،عملٌة
تقاسم المحٌط الزمنً باستعمال نظم التشغٌل بدأت منذ الستٌنات .فكان،
VAX VMSأو هذه النظم وسٌطر على الكثٌر من عملٌات التحكم فً
التطبٌقات الصناعٌة .وتاله نظام HPUXمن .UNIXإطالق
PC/MSDOS2فً سنة 1983غٌر الكثٌر فً نمط تشغٌل الحاسب
الشخصً ،لكن الشًء الجدٌد الذي حمله هو إمكانٌة ربط األجهزة المشغلة
بنظام التشغٌل .وبذلك أصبحت عملٌة تطوٌر األجهزة اإللكترونٌة التً ٌمكن
ربطها بنظام التشغٌل منتشرة ،وكل مطور ٌبحث عن تطوٌر نظام األجهزة
الخاصة بتطبٌقاته .ثم تمكن Macintoshمن طرح الوصلة البٌنٌة
الخاصة بالرسومات واألشكال سنة .1984ثم جاء نظام Windows3
سنة .1990فً بداٌة صدورها ،لم ٌكن نظام وندووز مستقرا ولم ٌكتسب
الشعبٌة المرتقبة من طرف المستعملٌن .لكن ،وندووز تحسن من الزمن.
التوصٌل البٌنً
18
تطرقنا سابقا لعملٌة ربط الحاسوب بالعالم الخارجً .بعد ظهور
Unibusواكتسابه الشهرة ،لوحظ أنه ال ٌستجٌب لكل متطلبات
الربط فً التطبٌقات المختلفة ،مما أدى إلى تطوٌر الكثٌر من
الوصالت البٌنٌة حسب التطبٌق الخاص به وسعة الذاكرة الالزمة.
فً التوصٌل البٌنً بالحاسوب ،كل من الموصالت البٌنٌة الداخلٌة
للحاسوب و التوصٌالت البٌنٌة الخارجٌة المعٌارٌة تلعب دورا
خاصا ومهما فً ربط األجهزة بالحاسوب وتكوٌن المنابر .تم
تطوٌر و تمدٌد الموصل VMEلٌتعامل مع األجهزة ومنه برز
PXIالمعٌاري الذي هو فً األصل PCIو Xتعنً التمدٌد .كما
تم تمدٌد الموصل SCSIلٌصبح SCXIالمعٌاري .كما ٌوجد
موصل ٌدمج بٌن SCXIو .PXI
19
تستعمل الكثٌر من الموصالت البٌنٌة لربط األجهزة الخارجٌة بالحاسوب .فً
التوصٌل على التوالً تمرر كل البتات بالتتابع ،أي الواحد تلو اآلخر .فً
الوصلة على التوازي توجد خطوط منفصلة ولكل بت خط خاص به .هذا ٌعنً
أن تحوٌل البٌانات على التوازي أسرع من تحوٌلها على التوالً .لكن ،فً
الوقت الحالً التوصٌل على التوالً باستعمال USBهو أٌضا سرٌع ووصل
إلى 1600MBفً الثانٌة .الموصالت المعٌارٌة الشعبٌة المتوفرة هً:
.Firewire ،USB ، GPIB ، RS485 ، RS232C
20
من ناحٌة أخرى ،األسطوانات المرنة ،وسائل اإلعالن والتعلٌق ،ونطاق
المرور Pass Bandفً الموصالت البٌنٌة كلها استفادت من نفس
الكسب فً األداء .الجٌل الجدٌد من الموصالت عالٌة السرعة PCI
Express, PXI, USB, Ethernet….تتمتع بنطاق مرور
3Go/sوأكثر من ذلك ،مما ٌسمح بقٌاس نطاق مرور أوسع .األجهزة
االفتراضٌة تجمع بٌن كل هذه الموصالت البٌنٌة ألن كل موصل بٌنً
افتراضً ٌمكن دمجه فً برنامج التطبٌق.
االتجاه الٌوم ،فً التعلٌم ،هو تلقٌن علوم الحاسوب والتقنٌات الحدٌثة
منذ الصغر .ألن التحكم بالحاسوب فً األجهزة أبسط لالستعمال من
األجهزة ذات التوصٌالت التقلٌدٌة
21
البرامج البٌانٌة لتصمٌم النظم
أهم مكسب لألجهزة االفتراضٌة هو مقدرتها على تصمٌم نظم محددة
المواصفات وذلك باستعمال برامج حاسوب للتصمٌم توفر وصلة بٌنٌة
حدسٌة(بدٌهٌة .)Intuitiveفً األجهزة االفتراضٌة ،كل مستعمل ٌمكنه
اختٌار الخوارزمٌة التً تناسب جهازه الشخصً.
البفٌو مثال على هذا االختٌار .البفٌو ٌستعمل لغة رسوم
بٌانٌة(صورٌة) Graphicalمع تدفق بٌانات ،وٌحوي وصلة بٌنٌة تسمى
المخطط . Diagramالبفٌو ٌوفر محٌطا ٌساعد المهندسٌن واألكادٌمٌٌن
فً تصمٌم نظم قٌاس خاصة بهم.
22
البفٌو و األجهزة االفتراضٌة
كل من ٌسمع باألجهزة االفتراضٌة ألول مرة ٌتساءل عن مغزاها؟
لإلجابة على السؤالٌ ،جب أن ننظر إلى تطور األجهزة االفتراضٌة .VI
منذ بداٌة استعمال الحاسوب ،كان دوره األساسً فً المراقبة والتحكم،
ثم تطور تطورا عجٌبا مع الزمن .مع تطور استعمال الحاسوب،
تضاعفت وظائف اللوحات األمامٌة لألجهزة المتوفرة من خالل
الوصالت البٌنٌة .هكذا ،ولدت فكرة التحكم فً األجهزة من خالل
اللوحة األمامٌة و الحاسوب معا .هكذا جاءت فكرة األجهزة االفتراضٌة.
بدأت هذه الفكرة عندما كان GPIBاألكثر شعبٌة بٌن الموصالت .لذلك
ٌمكن القول أن GPIBهو أو جهاز افتراضً تم اعتماده .هكذا،
أصبحت VIتقنٌة مستقلة بذاتها وانتشرت تطبٌقاتها فً العدٌد من
التطبٌقات ٌمتد من المختبرات التجرٌبٌة إلى التطبٌقات المؤتمتة
الكبٌرة....،
23
منذ البداٌة ،تشعبت تقنٌات VIالمتعددة األوجه والمبنٌة
على الحاسوب .سر نجاح VIهو التحول فً جعل األجهزة
ذكٌة بارتباطها ببرامج الحاسوب .المكونات المادٌة
للحاسوب أصبحت تمثل الحساسات Sensorsالحالٌة
للتحسس والقٌام بالقٌاس ،مثل االزدواج الحراري،
القناطر .... ،والمشغالت لتغٌٌر النظام مثل المفاتٌح،
المحركات ،الصمامات....،وكل إجراء ومعالجة ٌتم عن
طرٌق البرنامج.
ٌمكن استعمال الحاسوب الشخصً فً التعامل مع VIمن
خالل نظم تشغٌل وندووز و لٌنكس .Linuxكما ٌمكن
استعمال نظم ..HP ،Sun ،Macintosh
كل منابر VIتستعمل وصلة الرسوم البٌنٌة
للمستعمل(،GUI ) Graphical User Interface
لتطوٌر ،تنفٌذ وتحقٌق الحلول.
الحلول باستعمال VIتدور حول استعمال المكونات المادٌة لهدف عام ٌتمثل فً
تحصٌل البٌانات ولو على حساب المكونات المادٌة الجاهزة .المكونات المادٌة
المصممة ألهداف عامة علٌها طلب أكثر من المكونات المادٌة الجاهزة لهدف
معٌن .باإلضافة إلى الفرق فً التكلفة بٌن النوعٌن ٌمكن أن ٌعول وٌعتمد على
المكونات المادٌة لهدف عام كما تتمٌز بالعمومٌة.
25
البرمجة التقلٌدٌة والبرمجة(الصورٌة) المبنٌة على الرسومات واألشكال
المشغالت تتمثل فً الوصالت البٌنٌة للمكونات المادٌة واألجهزة وهً متوفرة
بكثرة ،وهذا ٌحد من التكلفة ومن زمن التطوٌر فً التطبٌقات التً تستعملها
وحسب مطور األجهزة الذي ٌضطر إلى إٌجاد البرنامج المشغل المناسب لمنابر
VIأو االستعانة بمزودي هذه المشغالت .من بٌن هذه المنتجات ٌمكن االعتماد
على مشغالت البفٌو التً تستعمل فً التحمٌل التحتً تقرٌبا فً كل األجهزة مثل
.....Matrox ،Tektronics ، HP
الهدف من هذه التراكٌب التً تجمع بٌن المشغل والجهاز هو الوصول إلى أداء
األجهزة التقلٌدٌة بدقة أكبر وبسعر اقل .كما ٌمكن تعمٌم استعمالها فً حاالت
متشابهة.
26
ٌرتبط تطور VIبتطور الحاسوب والتقدم الحاصل فً المكونات المادٌة
والبرمجة .وصلة الرسومات البٌنٌة هً أٌضا لعبت دورا مهما فً
تطوٌر ،VIوأصبحت عنصرا أساسٌا فً برامج .VIمع تطور
استعمال شاشة الحاسوب فً الرسومات واألشكال أصبحت التطبٌقات
التفاعلٌة سهلة .فً نفس الوقت تطورت قدرة المعالجات فً الحوسبة
وتعدت حدودا معتبرة.
ٌمكن حصر تطور VIفً ثالثة عناصر:
-1معٌارٌة وتقدم المكونات المادٌة والحوسبة:
بما أن قدرة الحاسبات تطورت وبشكل رهٌب ،كان من الممكن تطوٌر
ذكاء الحاسوب الشخصً الذي ٌمثل قلب النظام.
-2تطور وصلة الرسوم البٌنٌة:
تقدم المحٌط المعٌاري التفاعلً لعب دورا مهما فً تطور ،VI
والفضل ٌرجع إلى Macintoshالمبنً على منبر Motorola
منذ البداٌة .بٌنما ،منبر Intelلم ٌفلح فً ذلك.
-3تطوٌر معاٌٌر الوصالت البٌنٌة:
27
دور المعٌارٌة واضح وجلً ،فقد أدت إلى تقلٌص كمً مهم فً مجهود
التطوٌر.
كل هذه التطورات حدثت بالتوازي وأوصلت VIإلى أداة مسٌطرة فً عملٌة
تطوٌر وتنفٌذ تطبٌقات األجهزة المتحكم فٌها بواسطة VIمن خالل VI
متواجدة داخل الجهاز ذاته .كما هو متوفر فً أجهزة راسم الذبذبات
الحدٌثةٌ .جب التفرٌق بٌن VIالمبنٌة حول األجهزة و VIالمتوافقة أو
المتسقة مع األجهزة .كل جهاز مرتبط بوصلة بٌنٌة مع الحاسوب ٌسمى
متوافق أو متسم Compatibleمع VIمثل ، GPIB
...،RS232Cرغم أن التوافق مع الحاسوب ٌمكن أن ٌتغٌر .بٌنما
VIالمبنٌة حول األجهزة تحتاج إلى حاسوب لتشغٌلها ،وقدراتها التشغٌلٌة
مبٌنة حول الحاسوب .مثل هذه األجهزة ٌمكن توصٌلها مباشرة بموصل
الحاسوب Computer Busأو بتوصٌلها بشاسً Chassisجهاز
شعبً مثل VXIأو .PXI
28
برنامج البفٌو
برنااامج البفٌااو هااو نظااام تطااوٌري ٌسااتعمل فااً الصااناعة ،التجااارب ،القٌاااس،
التعلااٌم وتطبٌقااات الااتحكم اآللااً .هااذا البرنااامج مبنااً علااى البرمجااة بالرسااوم
واألشكال(الصورٌة) البٌانٌاة Graphical Programming Language
مكااون ماان الكثٌاار ماان العقااد nodesموصاالة ببعضااها الاابعض ،ماان الٌسااار إلااى
الٌمااٌن .بعكااس البرمجااة النصااٌة التقلٌدٌااة برنااامج البفٌااو ٌحااوي الترجمااة اآللٌااة
المسااتمرة Continuous Auto-Compilingوالعدٌااد ماان الوظااائف
لتصاامٌم ،تحلٌاال و إظهااار المعطٌااات .بحٌااثٌ ،خباارك البرنااامج أٌاان وقااع الخطاا
مباشرة .البفٌو ٌبدأ العد من الصافر .كماا أن مخططاات البفٌاو لٌسات مثال الادوائر
الكهربائٌااة المكونااة ماان المقاومااات والمكثفااات والاادوائر المتكاملااة .ICsبرنااامج
البفٌو ٌعوض لغات البرمجة المبنٌة على النصوص .فً البفٌاو تارى بعٌنٌاك كٌاف
تبنً نظامك بإضافة أجهزة وتوصٌلها ببعضها البعض ،كماا تتاابع تادفق البٌاناات
وسرٌانها من جهاز إلى آخار .البرمجاة باساتعمال البفٌاو ال تحتااج إلاى كتاباة وال
هجاء.
29
البفٌاااو مااان شاااركة ناشاااٌونال انساااترمنتس NIبرناااامج رائاااد فاااً المٌااادان
الصناعً ،وهو أداة الختبار للتصمٌم ،القٌاس ،والتحكم فً النظم .مناذ بداٌاة
اساااتعماله سااانة ، 1986المهندساااون واألكاااادٌمٌون ،حاااول العاااالم ،الاااذٌن
اختاروا البفٌو فً تطاوٌر البرمجاة بالرساوم واألشاكال لمشاارٌعهم مان خاالل
مراحاال تصاامٌم المنااتج ربحااوا النوعٌااة فااً المنااتج ،زمنااا أقصاار لتسااوٌقه،
وكثٌاارا ماان الدقااة فااً التصاانٌع .بتكاماال محااٌط البفٌااو مااع الوصاالة البٌنٌااة
وإشااارات العااالم الحقٌقااً ،تحلٌاال البٌانااات للحصااول علااى المعلومااة الدقٌقااة،
وتقاسم النتائجٌ ،مكن الادفع إلاى األماام باإلنتاجٌاة مان خاالل التنظاٌم .بماا أن
البفٌااو ٌمتلااك صاافة المرونااة عنااد البرمجااة والتااالف مااع األجهاازة الجاااهزة
الخاصة بالتجربة ،القٌااس ،والاتحكمٌ .مكان إقاماة تطبٌقاات تمتاد مان مراقباة
درجة الحرارة البسٌطة حتى محاكاة النظم المعقدة والتحكم فٌها.
30
● كتابة البرامج باستعمال برامج البفٌو ،المسماة أجهزة افتراضٌة
.VIs
● التمكن من إزالة العلل ،اكتشاف وتصحٌح األخطاء باستعمال
تقنٌات متعددة.
● معالجة كل من وظائف األجهزة االفتراضٌة VIsالجاهزة
لالستعمال.
●تصمٌم وصالت بٌنٌة وفقا لمواصفات محددة من طرف المستعمل.
●حفظ البٌانات فً ملفات ونشرها على شكل مخطط بٌانً أو خرٌطة.
●خلق تطبٌقات تستعمل الناقل البٌنً ألغراض عامة GPIBأو
أجهزة التسلسل . Serial Instruments
● استعمال DAQلتحصٌل البٌانات.
● وظائف تحلٌل جاهزة لالستعمال لمعالجة البٌانات.
● البحث عن الحلول المثلً للسرعة وأداء برامج البفٌو التً تم
تصمٌمها
31
●استعمال تقنٌات متقدمة كالهٌاكل(البنً) .Structures
●التحكم فً VIsونشر البٌانات.
●استعمال البفٌو فً خلق تطبٌقات معٌنة.
بعد كل هذاٌ ،مكن القول أن البفٌو منتج ممتاز شامل و
واسعٌ ،حتوي على روابط من أدوات وبرامج عدٌدة ،
متنوعة ،و قابلة للتطور .البفٌو له نزعة تالءم وتتكٌف مع
Fire-wire,الوصالت البٌنٌة المعٌارٌة والجدٌدة مثل
....التً بدأت تحتل الوصالت USB, Bluetooth
..كما أن البفٌو له مٌزة RS232C, GPIBالتسلسلٌة مثل
MATLAB,التواصل مع الكثٌر من برامج المحاكاة
Simulink
32
البفٌو واألجهزة االفتراضٌة VI
انسذ VIيشذثظ ترطٕس ، LabVIEWزٛث ذى ذُفٛز أٔل ًَٕرج
انثشيدح(انظٕسٚح) تانشعٕياخ ٔاألشكالٔ .يُز أكثش يٍ ستغ قشٌ تقٙ
التف ٕٛيرشتؼا ػهٗ ػشػ انثشيدح انظٕسٚح .اعرًذ التف ٕٛأفكاسِ يٍ
زضيح انثشايح انداْضج فٔ .Apple Macintosh ٙطٕس
LabVIEW2كًرشخى Compilerتشايح تذال يٍ يفغش
Interpretنثشايح خاْضجْ .زِ انرقُٛح اندذٚذج انًؼرًذج زغُد يٍ األداء
تكٛفٛح يؼرثشج .ف ٙعُح 1992ذى طشذ LabVIEWػٍ طشٚق
َٔذٔٔص .ثى ذى ذؼًٛى اعرؼًال LabVIEW3فMacintosh, PC, ٙ
... SUNعُح ٔ .1993ف ٙعُح 1999أطثر التف ٕٛيرٕفشا فَ ٙظاو
.Linuxفَ ٙغخح التف 6ٕٛذى اعرؼًال االَرشَد .ف ٙانُغخح التف 7ٕٛذى
انرثغٛظ ٔاعرؼًال انًغاػذاخ ٔانًغشػاخ Express & Assistants
ٔ انًغاػذ انشقً ٙانشخظ..PDA ٙ
33
ذٕخذ َغخح LabVIEW RTيٕخٓح نرطثٛقاخ انضيٍ انسقٛقٔ ،ٙ
ًٚ ٔ Bridge VIEWكٍ ذغًٛرٓا LabVIEW Industrialيٕخٓح
نرطثٛقاخ انًٛذاٌ انظُاػ ٙتاعرؼًال زًاٚح ذرًثم ف ٙكهًح عشٔ ،ذرؼايم يغ
انكثٛش يٍ انسغاعاخ ٔانًسٕالخ LabVIEW RT .طًى ،ف ٙانثذاٚح،
نهرؼايم يغ انسٕعثح انًٕصػح ٔذطثٛقاخ انضيٍ انسقٛق .ٙيشكهح ذشغٛم
التف ٕٛتاعرؼًال َٔذٔٔص ْٕ أٌ َٔذٔٔص نٛظ َظاو ذشغٛم ف ٙانضيٍ انسقٛقٙ
ٚ ْٕٔ ، RTOSرؼايم يغ ذؼذد انؼًهٛاخ تذال يٍ ذؼذد انًٓاو .انؼًم تذٌٔ
RTOSال ٚغًر تانرسكى ترٕقٛد انسهقاخٔ ،ال تضيٍ ذأخٛش ػًهٛاخ
انرطثٛق .كًا أٌ ػًهٛاخ انرٕصٚغ أنساعٕت ٙذسذ يٍ عؼح راكشج انًؼانح.
ًٚكٍ تشيدح RTتانرٕافق يغ خٓاص FPGAنرسقٛق ػذد يٍ انًٓاو
انًشذثطح تانضيٍ انسقٛق.ٙ
أسباب تفوق البفٌو كثٌرة ،نذكر منها:
•ٌوفر محٌطا قوٌا ومالئما لتطوٌر تطبٌقات األجهزة.
•توفر برامج الوصالت البٌنٌة مع هذه األجهزة.
البرامج المشغلة فً البفٌو متوفرة لكثٌر من األجهزة
34
•ٌمكن تحمٌل البفٌو داخل راسم الذبذبات كما ٌمكن استعمال البفٌو من
داخل راسم الذبذبات.
•البفٌو ٌسمح لراسم الذبذبات أن ٌتصرف حسب VIوحسب اختٌار
المستعمل.
تطور VIأدى إلى تطور أدوات البرمجة الصورٌة .لكن ،اعتبار VI
محدودة على البرمجة بالرسومات واألشكال فقط غٌر صحٌحٌ .مكن تنفٌذ
VIباستعمال لغات البرمجة التقلٌدٌة ،بتمدٌد المكتبات ،أو باستعمال
برامج الترجمة مثل .CVI LabVIEWهذا ٌعنً أن VIلٌست حكرا
على البفٌو وال على محٌط تدفق البٌانات .كما ٌمكن التداخل بٌن البرمجة
التقلٌدٌة و البفٌو.
35
كل وصلة الرسوم البٌنٌة للمستعمل( Graphical User
ٌ GUI ) Interfaceمكن اعتبارها مكونة من عنصرٌن:
وصلة المستعمل البٌنٌة والكود المسطر .وصلة المستعمل
البٌنٌة لم تتغٌر حسب االستعمال التقلٌدي أو الصوري أي
بالرسم واألشكال .فً حالة الكود المسطر فً البداٌة ،تظهر
األمور مختلفة .الكود فً اللغات التقلٌدٌة مثل ٌ Cحوي
عددا من البرامج أو الروتٌن ،بٌنما فً لغة (Gالصورٌة) ال
نرى أثرا للنص .كل ما نراه هو مجموعة من األٌقونات
مرتبطة ببعضها البعض بخطوط متعددة األلوان .لكن ،الفرق
بسٌط بٌن طرٌقتً البرمجة .الفرق المالحظ هو فً الفصل
بٌن قائمتً المداخل والمخارج ،وهذا ٌتماشى مع فلسفة
تدفق البٌانات .الفصل بٌن القائمتٌن ٌمنع الروتٌن من تغٌٌر
بٌانات الدخل.
36
المستقبل والتوقعات
مستقبل تصمٌم النظم باستعمال األجهزة االفتراضٌة
األجهزة االفتراضٌة VIمستمرة فً بسط قدراتها وتستعمل فً عدد
متزاٌد من التطبٌقات .البفٌو ٌمكن استعماله ،لٌس فقط فً خلق برامج
االختبار على الحاسوب ،ولكن فً التصمٌم باستهداف معالجات
مغمورة و شبكات مبرمجة .FPGAهدف هذه التكنولوجٌا هو توفٌر
محٌط فرٌدٌ ،ستخدم فً مجاالت عدٌدة من تصمٌم نظم االختبار حتى
تعرٌف وظائف المواد .مهندسو االختبار ٌمكنهم العمل على النظم
باستعمال الوظائف المناسبة وتسخٌر البرامج المرافقة لمعرفة وظائف
النظم .فٌمكن خلق برامج لقٌاس التٌار المستمر وزمن الصعود
....باستعمال أجهزة افتراضٌة على شكل تراكٌب .كما ٌمكن استعمال
البفٌو لتحلٌل البٌانات فً الزمن الحقٌقً ،أو تعرٌف خوارزمٌة
فلتر(مرشح) باستعمال ...... FPGA
.
37
إن إمكانٌة أداء األجهزة االفتراضٌة تزداد ٌوما بعد ٌوم .لقد تم
اعتمادها كبدٌل لألجهزة التقلٌدٌة فً الكثٌر من التطبٌقات .موازاة
مع تطور الحاسوب المستمر وشبه الموصالت ،و قدرات البرامج
الهائلة وانسجامها مع كل الحاالت واألوضاع ،سٌكون لألجهزة
االفتراضٌة وضع مشوق فً المستقبل القرٌب لتصمٌم نظم
االختبار والقٌاس وتزوٌد المهندسٌن بوسائل مساعدة فً مٌدانً
القٌاس والتحكم
38
مستقبل البرمجة(الصورٌة) بالرسوم واألشكال
مستقبل هذه التقنٌة ٌتمثل فً السرعة ،السهولة ،والتكلفة المتدنٌة.
من المحتمل أن ٌتزاٌد التوجه نحو هذه التقنٌة وبتسارعٌ .ساعد فً
هذا التطور برمجة FPGAالمتوفرة فً البفٌو وال تتوفر فً البرمجة
التقلٌدٌة .من المحتمل أن ٌتوسع نطاق البفٌو مستقبال فً البرمجة
الموزعة ،النظم المطوقة(المغمورة) ،وما ٌشابهها ...الزمن الحقٌقً
RTتم إدماجه فً البفٌو باستعمال كود Xilinxو نجح فً برمجة
التراكٌب مثل .PXIمع تزاٌد استعمال FPGAكنظام معٌاري مفتوح،
سوف تصبح وظائف الزمن الحقٌقً جزءا أساسٌا من البفٌو.
الحساسات الذكٌة أصبحت الهدف المنشود .باستعمال ٌ FPGAمكن
أن نت كد من أن المكونات المادٌة لمعالجة اإلشارات الرقمٌة DSP
تمثل حساسا ذكٌا.
باختصار
39
البفٌو مثال على الربط بٌن الجهاز والبرمجة نتج عنه
محٌط صوري تطوٌري ٌتمتع باألداء والمرونة للغة
البرمجة ،مع وظائف عالٌة المستوى و أشكال تراكٌب
صممت خصٌصا لتطبٌقات القٌاس واألتمتة.
40
Virtual Instrumentation Applications
تطبٌقات األجهزة االفتراضٌة
• Design التصمٌم
– Signal and Image Processing معالجة اإلشارة
والصور A single graphical development platform
– Embedded System Programming
)برمجة النظم المطمورة(المطوقة Design Prototype Deploy
• (PC, DSP, FPGA, Microcontroller)
– Simulation and Prototyping ...محاكاة ونمذجة
• Control تحكم
– Automatic Controls and Dynamic Systems نظم
دٌنامٌكٌة وتحكم
– Mechatronics and Robotics الكترونٌة-مٌكانٌكا
...ربوت
• Measurements قٌاسات
– Circuits and Electronics دوائر الكترونٌة
– Measurements and Instrumentation أجهزة
وقٌاسات
41
Spectrum of Control Applications
مجاالت تطبٌقات التحكم
Flight Control
Precision Machine Control التحكم في الطيران
التحكم في دقة اآللة
Process Control
التحكم في العمليات
Startup Screen:
شاشة البدء
Start from a Blank VI:
New » Blank VI
البداٌة
orأو
Start from an Example:
البداٌة من مثال
Examples » Find
Examples…
45
LabVIEW البفٌو
البفٌو هو للغة برمجة صورٌة ٌستخدم األٌقونات بدال من
الخطوط النصٌة لخلق تطبٌقات.
خالفا للغات البرمجة النصٌة ،حٌث تحدد األوامر عملٌة
تنفٌذ البرنامج ،البفٌو ٌستعمل برمجة تدفق البٌانات ،حٌث
ٌحدد تدفق البٌانات ترتٌب التنفٌذ ٌ .مكن استعمال الكثٌر من
التطبٌقات .كل البرامج المرافقة حسب كل تخصص لتطوٌر
البرامج المرافقة.
البفٌو ٌشمل أٌضا كثٌرا من األدوات العرافة للمساعدة،
لتشكٌل أجهزة تحصٌل البٌانات واألجهزة المرتبطة
بالحاسبات لبناء التطبٌقات.
46
Review: Creating a Virtual Instrument
ً خلق جهاز افتراض:مراجعة
• LabVIEW programs are called Virtual Instruments or
VIs.
Vis أجهزة افتراضٌة:تسمى برامج البفٌو
• Each VI has two windows
لكل جهاز افتراضً نافذتان
– Front Panel User Interface (UI)
اللوحة األمامٌة = وصلة المستعمل البٌنٌة
• Controls = User Inputs =عناصر التحكم
مداخل المستعمل
Front Panel
اللوحة األمامٌة
47
Indicators = Outputs المؤشرات =المخارج
Block Diagram Program Code
المخطط الصندوقً= كود البرنامج
Data travels on wires from controls
البٌانات تنتقل من خالل موصالت من عناصر التحكم
through functions to indicators مرورا بالوظائف نحو
المؤشرات
Blocks execute by Dataflow الصنادٌق تنفذ تدفق البٌانات
48
برامج البفٌو
).virtual instruments (VIs
عناصر التحكم هً المداخل والمؤشرات هً
المخارج
تسمى أجهزة افتراضٌة
كل جهاز افتراضً ٌحتوي على ثالثة أجزاء:
-اللوحة األمامٌة :تستعمل لتفاعل المستعمل
مع األجهزة االفتراضٌة.
-المخطط الصندوقًٌ :حوي أكواد التحكم فً
البرنامج-.
-األٌقونة\رابطة :تمثل ربط جهاز افتراضً
بجهاز افتراضً آخر.
49
فً البفٌو نبنً وصلة مستعمل بٌنٌة باستعمال أدوات
وأهداف .وصلة المستعمل البٌنٌة تسمى باللوحة
األمامٌة.
ٌمكن إضافة الكود باستعمال عروض صورٌة للوظائف
للتحكم فً أهداف اللوحة األمامٌة .المخطط الصندوقً
ٌحوي هذا الكود .بشكل عام ٌشبه المخطط الصندوقً
خرٌطة سٌر العملٌات .المستعملون ٌتفاعلون مع
اللوحة األمامٌة عند تنفٌذ البرامج.
ٌمكن للمستعمل التحكم فً تغٌر مداخل و رؤٌة تجدٌد البٌانات فً
تستعمل للمداخل مثل ضبط مسطرة الزمن الحقٌقً .عناصر التحكم
تحكم لوضع قٌم جهاز إنذار ،ضبط قٌم مفتاح تشغٌل أو لتوقٌف
برنامج .المؤشرات تستعمل كمخارج .ترمومتر ،إضاءة،وغٌرها
من المؤشرات تنشر قٌم المخارج من البرنامج 0هذه ٌمكنها أن
تشمل البٌانات ،حاالت البرامج ،وغٌرها من المعلومات .كل لوحة
عناصر تحكم أو مؤشرات لها نهائً مناسب فً المخطط
من عناصر الصندوقً 0عند تنفٌذ جهاز افتراضً ،تتدفق القٌم
التحكم نحو المخطط الصندوقً ،حٌث تستعمل فً الوظائف فً
المخطط ،والنتائج تمرر فً وظائف أخرى أو مؤشرات من خالل
لفات.
51
Review: Front Panel Controls Palette
اللوحة األمامٌة لوحة عناصر التحكم:مراجعة
(Controls & Indicators )عناصر التحكم والمؤشرات
تحكم عدديControl:
Numeric
Front Panel
اللوحة األمامٌة
Indicator:
Gauge مؤشر
القٌاس
52
ٌمكن استعمال لوحة التحكم لوضع عناصر
التحكم والمؤشرات على اللوحة األمامٌة.
لوحة عناصر التحكم توجد فقط فً اللوحة
األمامٌة .لرؤٌة اللوحة ،ننقر بٌمنى الف رة
على مساحة مفتوحة فً اللوحة األمامٌة .كما
ٌمكن اختٌار:
53
Review: Block Diagram Functions Palettes
المخطط الصندوقً لوحة الوظائف:مراجعة
54
استعمل لوحة الوظائف لبناء المخطط الصندوقً .لوحة
الوظائف توجد فقط على المخطط الصندوقً .لرؤٌة
اللوحة ،اختر:
select Window»Show Functions Palette
كما ٌمكن نشر لوحة الوظائف بالنقر بٌمنى الف رة على
مساحة مفتوحة من المخطط الصندوقً ،ثم تحرٌك لوحة
الوظائف نحو األسفل بالنقر على دبوس طرف التوصٌل
فً القمة الزاوٌة الٌسرى للوحة.
55
Review: Block Diagram Terminals
ً نهاٌات المخطط الصندوق:مراجعة
Front Panel Window نافذة اللوحة األمامٌة Block Diagram Windowًنافذة المخطط الصندوق
Numeric Numeric
Controls Indicator
عناصر تحكم مؤشرات
عددٌة عددٌة
56
عند خلق هدف على اللوحة األمامٌة ،سوف ٌخلق نهائً
على المخطط الصندوقً .هذه النهائٌات تسمح بالوصول
ألهداف للوحة األمامٌة انطالقا من كود المخطط الصندوقً.
كل نهائً ٌحوي معلومات مهمة عن الهدف المتواجد فً
اللوحة األمامٌة المناسب له .مثال ،اللون و الرمز تعطً
معلومات على نوع البٌانات .فمثال ،نوع البٌانات الدٌنامٌكٌة
أشكال polymorphic dataهً نوع من البٌانات متعددة
التنفٌذ:
57
لون نهائٌاتها أزرق قاتم .النهائٌات البولٌانٌة لونها أخضر .
بصفة عامة ,النهائٌات الخضراء ٌجب أن تلف(توصل) بالنهائٌات
الزرقاء ،األخضر باألخضر ،وهكذا...هذه لٌست قاعدة دائمة وسرٌعة,
البفٌو ٌسمح للمستعمل بتوصٌل(لف) نهائً أزرق (بٌانات
دٌنامٌكٌة) بنهائً وردي(قٌم كسرٌة) ،كمثل .لكن ،فً الكثٌر من
الحاالتٌ ،جب مراقبة مواءمة األلوان عند اللف .عنصر التحكم
تحتوي على سهم فً الجهة الٌمنى ولها حدود سمٌكة .المؤشرات
لها سهم فً الجهة الٌسرى وحدود رقٌقة 0القواعد المنطقٌة
المستعملة فً اللف فً البفٌو تنص على أن :كل لفة ٌجب أن تحوي
مصدرا(عنصر تحكم) واحدا فقط (ال غٌر) وكل لفة ٌمكن أن تكون لها
مقاصد متعددة (مؤشرات).
58
إذا تم تمكٌن أداة االختٌار آلٌا وباإلمكان تحرٌف مؤشر
الشاشة(الشعرة) من فوق األهداف فً اللوحة األمامٌة أو المخطط
الصندوقً ،سوف ٌختار البفٌو آلٌا األداة المناسبة من لوحة
األدوات .تبادل اختٌار األداة آلٌا بالنقر على زر اختٌار األداة آلٌا فً
لوحة األدوات 0استعمل أداة التشغٌل لتغٌٌر قٌم عنصر تحكم أو اختر
النص داخل عنصر التحكم .استعمل أداة وضع وإعادة تحجٌم
الختٌار ،تحرٌك ،أو تغٌٌر حجم الهدف .أداة وضع وإعادة تحجٌم
تغٌر شكلها عندما تتحرك من على زاوٌة هدف إلعادة تحجٌمه.
استعمل أداة العنونة لتنقٌح أو تعدٌل نص وخلق عناوٌن حرة .أداة
العنونة تتحول إلى مؤشر الشاشة(الشعرة) عند خلق عناوٌن حرة
(خاصة) .استعمل أداة اللف(التوصٌل) لكتابة األهداف معا على
المخطط الصندوقً.
60
Review: Status Toolbar حالة قضٌب األدوات:مراجعة
61
٠انقر على زر التنفٌذ :Run button
لتنفٌذ الجهاز االفتراضً ،زر التنفٌذ ٌظهر بسهم أسود إذا كان الجهاز
االفتراضً جهازا افتراضٌا من مستوى علىٌ ،عنً لٌس له
ألوان وهذا ٌعنً أنه لٌس جهازا افتراضٌا فرعٌا.
٠أنقر على زر التنفٌذ المستمرContinuous Run button :
لتنفٌذ الجهاز االفتراضً حتى اإلجهاض أو التوقف المؤقت0كما
ٌمكن أٌضا النقر على الزر مرة ثانٌة لتعطٌل0حجب) التنفٌذ
المستمر ،خالل تنفٌذ الجهاز االفتراضًٌ ،جب تفادي زر إجهاض
تدفق بٌانات التنفٌذ توقٌف تنفٌذ جهاز افتراضً .كما ٌجب ترك
حتى النهاٌة أو صمم طرٌقة لتوقٌف تنفٌذ الجهاز االفتراضً
برمجٌا 0عند القٌام بهذه العملٌةٌ ،كون الجهاز االفتراضً فً حالة
معروقة 0فمثال ،ضع زرا على اللوحة األمامٌة لتوقٌف الجهاز
االفتراضً عند النقر علٌه.
:
62
٠أنقر زر توقٌف مؤقت لتوقٌف تنفٌذ مؤقتا ،عند النقر على زر
التوقٌف المؤقتٌ ،قوم البفٌو بإظهار مكان التوقف المؤقت فً
المخطط الصندوقً .بالنقر على زر التوقف المؤقت مرة أخرى
الستمرار تنفٌذ الجهاز االفتراضً.
لتغٌٌر شكل حرف الطباعة للجهاز االفتراضً ،الحجم،
اختر أوضاع النص Text Settings :النسق(الطراز) ،واللون
Alignلصف (محاذاة) األهداف ،عمودي ،أفقًٌ ،مٌنٌ ،سار...
٠اختر Objects :
Distribute Objectsلخلق مسافات بٌن األهداف ،ضغط... ،
٠اختر توزٌع األهداف:
Resize Objectsلتغٌٌر عرض وطول أهداف اللوحة األمامٌة.
٠اختر
63
Review: Dataflow Programming
برمجة تدفق البٌانات:مراجعة
• Block diagram execution
ًتنفٌذ المخطط الصندوق
– Dependent on the flow of data
حسب تدفق البٌانات
– Block diagram does NOT execute left
to right
المخطط الصندوقً ال ٌنفذ من الٌسار على الٌمٌن
• Node executes when data is available to
ALL input terminals
العقدة تنفذ عندما تكون البٌانات جاهزة لكل نهاٌات
الدخل
• Nodes supply data to all output
terminals when done
العقدة تزود كل نهاٌات المخارج بالبٌانات
64
البفٌو ٌستعمل نموذج تدفق البٌانات لتنفٌذ األجهزة االفتراضٌة .عقدة
مخطط صندوقً تنفذ عندما تكون كل بٌانات مداخلها متوفرة .عندما
ٌنتهً تنفٌذ عقدةٌ ،تم إمداد (تموٌن) نهائٌات المخارج بالبٌانات و
تمرر بٌانات الخرج للحلقة التالٌة فً مسار تدفق البٌانات .فً تدفق
البٌانات ،ترتٌب التتابع لعناصر البرنامج ٌحدد ترتٌب التنفٌذ للبرنامج.
كما نالحظ فً المخططٌ ،قوم بجمع عددٌن ثم ضرب نتٌجة الجمع
باثنٌن 0فً هذه الحالةٌ ،نفذ المخطط الصندوقً من الٌسار على
الٌمٌن ،لٌس ألن األهداف موضوعة فً هذا الترتٌب ،ولكن ألن أحد
مداخل الضرب ٌكون غٌر صالح(ساري المفعول) حتى تتم عملٌة الجمع
وتمرر البٌانات لوظٌفة الضرب .تذكر أن العقدة تنفذ فقط عندما تكون
البٌانات متوفرة فً كل نهائٌات مداخلها ،وتقوم بإمداد البٌانات لكل
نهائٌات الخرج فقط بعد نهاٌة التنفٌذ .فً القطعة الثانٌة للكود ،محاكاة
الجهاز االفتراضً السرٌع لإلشارة
Simulate Signal Express VI
65
ٌتلقى المداخل من عناصر التحكم وٌمرر نتائجها
لراسم اإلشارة .بهذا ٌمكن اعتبار عملٌة الجمع-
ضرب ومحاكاة كود اإلشارة متواجدان على نفس
المخطط الصندوقً وعلى التوازي .هذا ٌعنً أنهما
سوف ٌبدآن فً التنفٌذ فً نفس اللحظة و لكن
ٌنفذان باستقاللٌة كل عن اآلخر .إذا كان الحاسوب
الذي ٌنفذ هذا الكود كثٌرا من المعالجات ،هاتان
القطعتان من الكود تنفذا باستقاللٌة الواحدة عن
األخرى(لكل واحدة معالجها الخاص) بدون إضافة
أي تكوٌد.
66
Review: Context Help Window
نافذة سٌاق المساعد:مراجعة
< للمساعدةCtrl+H> اضغط على مفتاح
• Help»Show Context Help, press the <Ctrl+H> keys نافذة سٌاق المساعد
• Hover cursor over object to update window
68
:الروابط التً تنشر من خالل سٌاق المساعد
Required – bold أسود عرٌض-متطلب
Recommended – normal عادي-)ًموصى به (مزك
Optional – dimmed ) معتم(باهت-اختٌاري
Additional Help إضافات
• VI, Function, & How-To Help is also available. أجهزة
وظائف& كٌف تساعد متوفر،افتراضٌة
– Help» VI, Function, & How-To Help
– Right-click the VI icon and choose Help, Help أنقر بٌمنى
الف رة أٌقونة الجهاز االفتراضً واختر
– Choose “Detailed Help.” on the context help window.
Detailed Help :أو اختر
• LabVIEW Help – reference style help مرجع-مساعد البفٌو
طراز المساعد
– Help»Search the LabVIEW Help… البحث عن مساعد البفٌو
69
Review: Textual Math in LabVIEW
النص ألرٌاضٌاتً فً البفٌو:مراجعة
• Integrate existing scripts with LabVIEW for faster development ربط التعلٌق البفٌو لتطوٌر
أسرع
• Interactive, easy-to-use, hands-on learning environment
عملً فً محٌط التعلم، سهل االستعمال،ًتفاعل
• Develop algorithms, explore mathematical concepts, and analyze results using
a single environment
وتحلٌل النتائج فً نفس المحٌط، استكشاف أساسٌات الرٌاضٌات،تطوٌر الخوارزمٌة
• Freedom to choose the most effective syntax, whether graphical or textual
within one VI حرٌة
ًاختٌار تركٌب الجمل الصورٌة أو النصٌة باستعمال جهاز افتراض
71
مراجعة Overview
بإطالق نسخة البفٌو الثامنة ،أصبحت لنا حرٌة اختٌار
أهم تركٌب الجمل الفعالة للحساب التقنً ،مهما كان من
ناحٌة تطوٌر الخوارزمٌات ،اكتشاف معالجة مبادئ
اإلشارات ،أو تحلٌل النتائجٌ .مكن تحوٌل المخطوط إلى
أداة وتطوٌر الخوارزمٌات فً المخطط الصندوقً بالقٌام
بعملٌة تفاعلٌة مع أدوات رٌاضٌاتٌة مثل:
The MathWorks Inc. MATLAB software,
Mathematica, Maple, Mathcad, IDL and Xmath
استعمال هذه األدوات ألرٌاضٌاتٌة مع البفٌو تتم بطرق
متعددة حسب الحاجة.
Communication with vendor software
االتصال مع مروجً through LabVIEW node:
البرامج من خالل عقدة البفٌو:
72
Xmath node, MATLAB script node, Maple* node,
IDL* node
73
Review: Math with the MathScript Node
ً الرٌاضٌات وعقدة المخطوط ألرٌاضٌات:مراجعة
• Implement equations and algorithms textually
تطبٌق المعادالت والخوارزمٌات نصٌا
• Input and Output variables created at the border
تولد متغٌرات المداخل والمخارج عند الحد
• Generally compatible with popular m-file script language
متوافق(متسق) عامة مع مخطوطات اللغات الشعبٌة
• Terminate statements with a semicolon to disable immediate output
(Functions»Programming»
Structures»MathScript)
76
• Name variables as they are used in formula.
(Names are case sensitive.) ًتسمٌة المتغٌرات كما ه
.مستعملة فً القانون
• The data type of the output can be changed by
right-clicking the input or output node. نوع بٌانات
الخرج ٌمكن استبدالها بالنقر بٌمنى الف رة على عقد الدخل أو
.الخرج
• Statements should be terminated with a semicolon
to suppress output. العبارات ٌجب أن تنتهً بفاصلة
نقطة لكتم(طمس) الخرج
• Ability to import & export m-files by right-clicking
on the node. إمكانٌة استٌراد وتصدٌر الملفات ألرٌاضٌاتٌة
بالنقر بٌمنى الف رة
77
Review: The Interactive MathScript Window
نافذة المخطوط ألرٌاضٌاتً التفاعلٌة:مراجعة
• Rapidly develop and test algorithms تطوٌر واختبار الخوارزمٌات
• Share Scripts and Variables with the
Node
مشاركة المخطوطات والمتغٌرات مع العقد
• View /Modify Variable content in 1D, 2D,
and 3D Variable مساحة عمل
Output نافذة المتغٌرات
رؤٌة\تغٌٌر المتغٌرات الخرج
Window
Workspace
View/Modify مشاهدة\تغٌٌر
محتوى المتغٌرات
Variable Contents
(LabVIEW»Tools»MathScript Window)
نافذة المخطوط ألرٌاضٌاتً توفر محٌطا تفاعلٌا حٌث ٌمكن تصنٌفها على شكل نموذج
والقٌام بالحسابات.نافذة المخطوط ألرٌاضٌاتً و العقدة تشتركان فً تركٌب الجمل
والمتغٌرات الشاملة والعمومٌة تجعل التحرك من التصنٌف إلى التنفٌذ سهلة وب قل
األخطاء .مراجعة البٌانات توفر طرٌقة مناسبة لمشاهدة البٌانات المتغٌرة ك عداد،
صور ومخططات ،و سمعٌة(فً حالة توفر كرت صوتً).
مساعد المخطوط ألرٌاضٌاتً Help for MathScript
ٌمكن الوصول إلى المساعد باستعتمال نافذة محٌط تفاعل المخطوط ألرٌاضٌاتً.
Type Help in the command window for an introduction to MathScript
أكتب Helpللوصول على نافذة المساعد help
Help followed by a function will display help specific to that function
إذا أضفنا Help +functionتنشر المساعد الخاص بتلك الوظٌفة.
ممٌزات نافذة المخطوط Features of the interactive MathScript Window
ألرٌاضٌاتً التفاعلٌة
79
• Prototype equations and formulas through the command
Window تصنٌف المعادالت والقوانٌن من خالل نافذة األوامر
• Easily access function help by typing Help <function> in the
Command Window سهولة الوصول إلى المساعد
• Select a variable to display its data in the Preview Pane and
even listen to the result نشر بٌانات المتغٌرة ومشاهدتها
• Write, Save, Load, and Run m-files using the Script tab ،كتابة
وتنفٌذ الملفات باستعمال المخطوط، تحمٌل،حفظ
• Share data between the MathScript Node in LabVIEW and the
MathScript Window using Global Variables
ًإشراك البٌانات بٌن عقدة المخطوط ألرٌاضٌاتً و نافذة المخطوط ألرٌاضٌات
باستعمال المتغٌرات الشاملة
• Advanced plotting features and image export features و مزاٌا
ممٌزات المرسوم المتقدمة تصدٌر الصور
80
Review Exercise: Introduction to LabVIEW
:تمرٌن مراجعة
81
ذًش ٍٚيشاخؼح :يذخم إنٗ التفٕٛ
نهثذء ف ٙكراتح انًُٕرجَ ،قٕو ترثغٛظ زغاب انًُٕرج نقإٌَ َٕٛذٍ انرقهٛذ٘:
F=m*aعٕف َسغة انرغاسع يٍ انقإٌَ a=F/m :
تاػرثاس انكرهح ٔانقٕج كًذخم.
-أَقش ت ًُٗٛانفأسج ػهٗ انهٕذ األياي ٙنهسظٕل ػهٗ نٕزح ػُاطش انرسكى :ػذد٘
ٔػًٕد٘ ٔ ػًٕد٘ اَضالق.ٙ
-ارْة إنٗ:
Navigate to the Modern » Numeric sub-palette by left-
clicking
تانُقش تٛغشٖ انفأسج. .
أَقش تٛغشٖ انفأسج ػهٗ ػُظش a)Left click the Numeric control.
انرسكى.
أَقش b)Left click on the Front Panel to place the control.
تٛغشٖ انفاسج ػهٗ انهٕذ األياي ٙنٕضغ ػُظش٘ انرسكى.
c) The name of the control will be highlighted. Start typing to
”(rename this control to “Mass )kg
اعى ػُظش انرسكى عٕف ٚظٓش .اتذأ ترغٛٛش االعى إنٗ كرهح (كٛهٕغشاو).
a)Repeat steps a-d with a Vertical Pointer Slide. Name this
أػٛذ ”(control “Force )N
82
a).َٙفظ انًشازم تانُغثح نؼُظش انرسكى انؼًٕد٘ أالَضالق
1.Create a front panel gauge indicator ٍ يؤششٕٚذك
ٙ انهٕذ األيايٙشج) فٚاط(انًؼاٛانق
a)In the Controls Palette, navigate to the Modern »
Numeric sub-palette :ٙ ٔ ف،حٛ انهٕزح األيايٙف
b)Select the Gauge indicator ٙشج) فٚاط(انًؼاٛاخرش يؤشش انق
ٙانهٕذ األياي
c)Place and name this indicator “Acceleration )m/s2(” ضغ
ْزا انًؤشش انرغاسعًٙٔ ع
2.Notice how corresponding terminals appeared on the white
block diagram. )ضٛ(األتٙ انًخطظ انظُذٔقٙاخ فٛف ذظٓش انُٓائٛالزع ك
3.Place a divide function on the block diagram ضغ ػاليح قغًح
ٙ انًخطظ انظُذٔقٙف
a)In the Functions Palette, navigate to the Programming »
Numeric sub-palette ، نٕزح انٕظائفٙف
b)Select and place the Divide function. اخرش ثى ضغ ػاليح قغًح
83
The Design Process تصمٌم النظام
84
ٌمكن الحصول على قٌمة مثلى للحاكم بفهم
العملٌة(النظام) .هذا الفهم ٌ تً من التحلٌل المتوفر فً
وحدة تصمٌم التحكم والمحاكاة .مخططات تخصصٌة مثل
مخطط بودي ،موقع الجذور ،ومخطط نٌكوٌست ،تعطً
فكرة عن تصرف العملٌة(النظام) .تحالٌل إضافٌة
باستعمال هذه المخططات فً حالة نظام ذي حلقة مفتوحة
بوجود الحاكم تسمح بدراسة االستقرار ومواصفات أخرى
ٌمكن حسابها .لهذا الهدف ،نستعمل تصمٌم تحكم لحساب
القٌمة المثلى للبرامترات .فً الحالة الخاصة التً نحن
بصدد دراستها تخص قٌم الحاكم التناسبً -التكاملً-
التفاضلً ،و مخططات االستجابة الزمنٌة فً حالة إشارة
خطوة فً الدخل ،لتعطً فكرة عن التصرف المثالً
للنظام ،كزمن الصعود ،التعدي(التجاوز) ،زمن االستقرار،
و الخط فً حالة االستقرار.
85
ٌمكننا حٌنئذ محاكاة الوحدة للت كد من صحة هذه البرامترات فً
حالة عوائق قٌد أو تحفظ .أول هذه األمثلة تتمثل فً القٌمة
العظمى والقٌمة الصغرى للجهد والتٌار المتوفران لتغذٌة المحرك.
حدود الجهد للمحرك تحدد المدى الخطً للعملٌة .خارج هذا
المدى ،الذي ال ٌمكن حساب نموذج خاص به ،وٌمكن أن ٌؤثر
على عمل المحرك و عدم التنبؤ بعمله .هذا مثال على المحٌط
الالخطً ،الذي ال ٌمكن حساب نموذج خاص به باستعمال القوانٌن
الخاصة بالنظم الخطٌة المتوفرة فً وحدة تصمٌم التحكم .أما
وحدة المحاكاة فتسمح بمحاكاة الالخطٌات باستعمال تجمٌع
التشبع ،مثال .تصرف الالخطٌات أخرى ٌمكن كتابته فً
البفٌو،المحطوط ألرٌاضٌاتً ،الصٌغة ألرٌاضٌاتٌة للعقدة فً
البفٌو،و ٌمكن دمجها فً الوحدة كجهاز افتراضً فرعً.
86
Step 1: الخطوة األولى
Modeling النمذجة
88
ٌمكن الحصول على قٌمة مثلى للحاكم بفهم العملٌة(النظام).
هذا الفهم ٌ تً من التحلٌل المتوفر فً وحدة تصمٌم التحكم
والمحاكاة .مخططات تخصصٌة مثل مخطط بودي ،موقع
الجذور ،ومخطط نٌكوٌست ،تعطً فكرة عن تصرف
العملٌة(النظام) .تحالٌل إضافٌة باستعمال هذه المخططات فً
حالة نظام ذي حلقة مفتوحة بوجود الحاكم تسمح بدراسة
االستقرار ومواصفات أخرى ٌمكن حسابها .لهذا الهدف،
نستعمل تصمٌم تحكم لحساب القٌمة المثلى للبرامترات .فً
الحالة الخاصة التً نحن بصدد دراستها تخص قٌم الحاكم
التناسبً -التكاملً -التفاضلً ،و مخططات االستجابة الزمنٌة
فً حالة إشارة خطوة فً الدخل ،لتعطً فكرة عن التصرف
المثالً للنظام ،كزمن الصعود ،التعدي(التجاوز) ،زمن
االستقرار ،و الخط فً حالة االستقرار.
89
ٌمكننا حٌنئذ محاكاة الوحدة للت كد من صحة هذه البرامترات فً حالة
عوائق قٌد أو تحفظ .أول هذه األمثلة تتمثل فً القٌمة العظمى والقٌمة
الصغرى للجهد والتٌار المتوفران لتغذٌة المحرك .حدود الجهد للمحرك
تحدد المدى الخطً للعملٌة .خارج هذا المدى ،الذي ال ٌمكن حساب
نموذج خاص به ،وٌمكن أن ٌؤثر على عمل المحرك و عدم التنبؤ
بعمله .هذا مثال على المحٌط الالخطً ،الذي ال ٌمكن حساب نموذج
خاص به باستعمال القوانٌن الخاصة بالنظم الخطٌة المتوفرة فً وحدة
وحدة المحاكاة فتسمح بمحاكاة الالخطٌات تصمٌم التحكم .أما
باستعمال تجمٌع التشبع ،مثال .تصرف الالخطٌات أخرى ٌمكن كتابته
فً البفٌو،المحطوط ألرٌاضٌاتً ،الصٌغة ألرٌاضٌاتٌة للعقدة فً
البفٌو،و ٌمكن دمجها فً الوحدة كجهاز افتراضً فرعً.
90
Why Model? لماذا النموذج
A model represents a physical system النموذج ٌمثل نظاما فٌزٌائٌا
• Inputs and outputs have real-world units المداخل والمخارج لها وحدات حقٌقٌة
• It is often a simplification of the system’s behavior تمثل اختصارا لمحٌط
النظام
Many types of systems can be modeled كثٌر من أنواع النظم ٌمنكن أن تنمذج
• Mechanical systems النظم المٌكانٌكٌة
• Electronic circuits الدوائر اإللكترونٌة
• Analog and digital filters المرشحات التماثلٌة والرقمٌة
• Thermal and fluid systems النظم الحرارٌة ونظم السوائل
Models can be represented in many ways النماذج ٌمكن أن تعرض بطرق متعددة
• Transfer function دوال التحوٌل
• State space فضاء الحالة
• Others ...وغٌرها
91
Modeling with the Transfer Function
النمذجة باستعمال دالة التحوٌل
92
دالة التحوٌل Transfer function
تمثل العالقة الرٌاضٌاتٌة بٌن خرج نظام التحكم (العملٌة) ودخله.
بصفة عامة ،تمثل بتحوٌل البالس لخرج النظام(العملٌة) مقسمة
على تحوٌل البالس لدخل النظام باعتبار القٌم البدائٌة مساوٌة
للصفر .كما ٌمكن تمثٌل دالة التحوٌل بتحوٌل زاد:
Z-Transform.
دخل وخرج دالة التحوٌل ٌمكن أن تكون عبارة مٌكانٌكٌة،
كهربائٌة ،نٌوماتٌة...فً هذه الحاالت ٌكون النظام محركا مثال
وٌكون دخل النظام جهدا وخرجه سرعةٌ .مكن الحصول على دالة
التحوٌل للنموذج الفٌزٌائً باستعمال المعادالت الفٌزٌائٌة
باستعمال أدوات مثل وحدة نظام التعرٌف فً الحركٌة...أو بتقدٌر
البفٌو.
93
QNET DC Motor Control Trainer
نموذج تحكم فً محرك تٌار مستمر
The model in this course is based on the نستعمل
نموذج محرك تٌار مستمر
Quanser QNET DC Motor.
فولت24 بجهد تغذٌة
• The motor is a 24 volt DC motor
The motor is highly linear in terms of its speed
given a voltage المحرك خطً وٌنتج عن الجهد سرعة
• We will use the Control Design Toolkit
functions to create the mathematical model in
LabVIEW
سوف نستعمل وحدة وظائف لتصمٌم عملٌة التحكم
.والحصول على نموذج رٌاضٌاتً فً البفٌو
94
Deriving the Motor Model
بناء نموذج المحرك
Electrical المعادالت الكهربائٌة
1. Motor Diagram
2.
where : L R
m m
3.
Mechanical المعادالت المٌكانٌكٌة
4.
Ωm Fixed Magnets
Motor Coil
5. where : Td 0
Brushes
Drive Shaft
6. (substitute in Electrical eqn)
Encoder
7 Ω
m
Vm Inertial Mass
بعد التغٌٌر فً المعادالت الكهربائٌة
96
Motor Specifications Sheet مواصفات المحرك
Symbol Description Value القٌمة Unit الوحدة
Motor: المحرك
Rm Motor armature resistance. مقاومة كتلة المحرك 3.30 ohms
Kt Motor torque constant .ثابت عزم المحرك 0.0280 N.m
Km Motor back-emf constant ثابتة القوة المحركة العكسٌة 0.0280 V/(rad/s)
Moment of inertia of motor rotor ًعزم القصور الذات
Jm 9.64e-6 kg.m2
لدوار المحرك
Ml Inertial load disc mass حمل كتلة القرص البدائٌة 0.033 kg
rl Inertial load disc radius ًحمل جذر القرص البدائ 0.0242 m
Pulse-Width Modulated Amplifier: عرض نبضة المكبر المعدلة
PWM amplifier maximum output voltage عرض نبضة
Vmax 24 V
المكبر المعدلة لجهد خرج أكبر
PWM amplifier maximum output current عرض نبضة
5 A
المكبر المعدلة لتٌار خرج أكبر
Plant(Motor) Vm Input Voltage
PWM amplifier gainكسب المكبر 2.3 V/V
Vm Km m m Angular Velocity
J eq Rm s K m
2
LabVIEW Control Design Toolkit
وحدة البفٌو للتصمٌم والتحكم
• Construct and analyze system
models بناء وتحلٌل نماذج التحكم
• Design basic and advanced
control algorithms تصمٌم
خوارزمٌات تحكم أساسٌة و متقدمة
• Simulate response of controller
designs محاكاة استجابة تصامٌم
الحاكمات
• Analyze control efficiency and
stability interactively تحلٌل كفاءة
الحاكم واالستقرار تفاعلٌا
98
Constructing Models Graphically
بناء النماذج صورٌا
• Create continuous and discrete time models
خلق نماذج مستمرة ومتقطعة زمنٌا
• Models can be created symbolically
ٌمكن بناء النماذج رمزٌا
99
استعمل نموذج بناء الجهاز االفتراضً لخلق نماذج نظم خطٌة صورٌة
وتغٌٌر مواصفات نموذج نظام .كما ٌمكن استعمال نموذج بناء جهاز
افتراضً لحفظ نموذج نظام فً ملف ،قراءة شكل نموذج نظام من
ملف ،أو الحصول على تمثٌل مرئً لنموذج.
الخطوة األولى فً استعمال وحد تصمٌم تحكم تتمثل فً الحصول على
نموذج ٌنفذ من خالله .وحد تصمٌم تحكم ٌمكن أن ٌتعامل مع دالة
التحوٌل ،فضاء الحالة ،نماذج كسب األقطاب و األصفار:
The Control Design Toolkit can work with Transfer
)Function (TF), State Space (SS), and Zero Pole Gain (ZPK
ٌخزن النموذج كمجموعات متجانسة ٌمكن تمرٌرها من models.
جهاز افتراضً إلى آخر ألداء عملٌات متعددة على نموذج واحد.
100
Constructing Models Textually
بناء النماذج نصٌا
MathScript allows models to be created using m-file syntax.
مخطوط رياضياتي يسمح بتكوين النماذج باستعمال الجمل
101
النماذج ٌمكن بناؤها باستعمال لغة البرمجة النصٌة مع
وظائف المخطوط ألرٌاضٌاتً فً مصمم التحكم .نستعمل
عقدة المخطوط ألرٌاضٌاتً لتعرٌف منطقة فً المخطط
الصندوقً للبرمجة النصٌة .المخطوط ألرٌاضٌاتً ٌمكن
الحالة ،و نماذج أن ٌستعمل مع دالة التحوٌل ،فضاء
كسب األصفار واألقطاب .المجموعة المتجانسة التً
تحوي المعلومات عن النموذج الناتج عن عقدة المخطوط
ألرٌاضٌاتً له نفس شكل المجموعة المتجانسة الناتجة
عن بناء نظام الجهاز االفتراضً ،و ٌسمح باالستعمال
المتبادل بٌن البرمجة النصٌة والبرمجة الصورٌة.
102
Exercise 1a: التطبٌق األول
Create and Display a Transfer Function
خلق ونشر دالة تحوٌل
Plant(Motor)
Vm Km m Vm Input Voltage
J eq Rm s K m
2 m Angular Velocity
103
1. Build the VI block diagram ٙغ يخطظ خٓاص افرشاضًٛتُاء ذد
Open a blank VIand save it as i from the Getting Started screen. َثذأ تفرر
: َٔسفظّ تاعىٙيخطظ طُذٔق Exercise_1a.v
Switch to the block diagram (<Ctrl+E>) َُٙرقم إنٗ انًخطظ انظُذٔق
Place the CD Construct Transfer Function Model.vi on the block diagram.
:َضغ
ٙ انًخطظ انظُذٔقٙف
From the functions palette, select : يٍ نٕزح انٕظائف َخراس َٔضغ
Place the CD Construct Transfer Function Model.vi َٔضغ تانغسة يٍ خالل
Addons»Control Design»Model Construction»CD Construct Transfer
Function Model.vi
.ٙ انًخطظ انظُذٔقَٙٔضؼٓا تانغسة ف
and place it on the block diagram. From the drop-down menu select يٍ خالل
انٓثٕط َسٕ األعفم
Single-Input Single-Output (Symbolic). َسراس
Right-click the Symbolic Numerator input terminal of the CD Construct
Transfer Function Model.vi ًُٗ انفأسجَُٛقش ت
and select Create»Control from the shortcut menu. َٔخراس انقائًح انًخرظشج
Right-click the Symbolic Denominator input terminal of the CD Construct
Transfer Function Model.vi
:ًُٗٗ انفاسج ػهَُٛقش ت
and select Create»Control from the shortcut menu. َٔخراس يٍ انقائًح انًخرظشج
Right-click the Variables input terminal of the CD Construct Transfer
Function Model.vi : ًُٗٗ انفأسج ػهَُٛقش ت
104
and select Create»Control from the shortcut menu. َخراس يٍ انقائًح
انًخرظشج
Place the CD Draw Transfer Function Equation.vi on the block
diagram. From the functions palette, select
: َٔخراسٙ انًخطظ انظُذٔقٙتانغسة َضغ ف
Addons»Control Design»Model Construction» CD Draw Transfer
Function Equation.vi and
: ٔتانٓثٕط َسٕ األعفم َخراس.ٙ انًخطظ انظُذٔقَٙٔضؼٓا ف
place it on the block diagram. From the drop-down menu select
Transfer Function.
م ًَٕرجٕٚ دخم دانح انرسٙم تُٓائٕٚ خشج دانح انرسٙٔطم َٓائ
Wire the Transfer Function Model output terminal of the CD
Construct Transfer Function Model.vi to the Transfer Function
Model input terminal of the CD Draw Transfer Function
Equation.vi.
: يؼادنحًُٙٗ انفأسج خشج َٓائٛأَقش ت
Right-click the Equation output terminal of the CD Draw Transfer
Function Equation.vi and select
Create»Indicator from the shortcut menu. َكٌٕ يؤششا يٍ انقائًح
انًخرظشج
Double-click the label of the picture indicator,. ٍ ػهٗ ػَُٕحَُٛقش يشذ
حًٛذ انرغٛانًؤشش ٔ َؼ
and rename it Plant Equation
Save the VI. َٙسفع اندٓاص االفرشاض
105
Exercise 1b: التمرٌن
Create and Display a Transfer Function
خلق ونشر دالة تحوٌل
Plant(Motor)
Vm Km m Vm Input Voltage
J eq Rm s K m
2 m Angular Velocity
106
Exercise 1b: ٍٚذًش
1. Build the VI block diagram. ٙ نهدٓاص االفرشاضٙتُاء يخطظ طُذٔق
Open a blank VI and save it from the Getting Started screen. ٍي
شاشح انثذء
as Exercise_1b.vi :ضا َٔسفظٓا تاعىٛا أتَٛفرر خٓاصا افرشاض
Switch to the block diagram (<Ctrl+E>) َُٙرقم إنٗ انًخطظ انظُذٔق
Place a MathScript Node on the block diagram. Right-click to
open the functions palette and select
ًُٗ انفاسج نفرر نٕزحٛ َُٔقش ت.ٙ انًخطظ انظُذٔقٙ فٙاذٛاضَٚضغ ػقذج انًخطٕط أنش
:انٕظائف َٔخراس
Programming»Structures»MathScript Node.
Enter the following code inside the MathScript Node: أدخم انكٕد
ٙاذٛاضٚ ػقذج انًخطٕط أنشٙ فٙانران
%Motor Model عنونة
num = [K]; البسط
den = [J*Rm K^2]; المقام
sys = tf(num,den); تكوين دالة تحويل النظام
107
Right-click on the left border of the MathScript
Node and select Add Input. Enter K as input.
Right-click
ٔاخرثشٙاذٛاضٚغش نؼقذج انًخطٕط أنشًُٚٗ انفأسج ػهٗ انسذ األٛأَقش ت
ًًُٗٛح انكغة ثى أَقش تٛ إضافح دخم ٔادخم قK انفأسج ػهٗ دخم
انكغةَٙٓائ
the input terminal of the K variable and select
Create»Control from the shortcut menu. ٌَٕٔك
ػُظش ذسكى
Right-click on the left border of the MathScript
Node and select Add Input. Enter Rm as input.
Right-click
: َٔخراسٙاذٛاضٚغش ػقذج انًخطٕط أنشًُٚٗ انفاسج ػهٗ انسذ األَُٛقش ت
Rm :ًح انذخمٛ َٔذخم قAdd Input
Rm شجٛ انذخم نهًرغًُٙٗ انفأسج َٓائٛثى َُقش ت
the input terminal of the Rm variable and select
Create»Control from the shortcut menu.
Create»Control: َٔخراس
.ٍ ػُظش انرسكىٕٚنرك
108
Right-click on the left border of the MathScript Node
and select Add Input. Enter J as input. Right-click
.ًٙح ػضو انقظٕس انزاذٛ َٔذخم قAdd Input ًُٗ انفأسج ػهٗ انسذَُٛقش ت
:غش َٔخراسٚاأل
the input terminal of the J variable and select
Create»Control from the shortcut menu.
.َٔكٌٕ ػُظش ذسكى كًا عثق
Right-click on the right border of the MathScript
Node and select Add Output. Enter plant as output.
Add Output ًٍ نؼقذج انًخطٕطًُٚٗ انفأسج ػهٗ انسذ األَُٛقش ت
: َٔخراسٙاذٛاضٚأنش
. كذخلplan َٔذخم
...... ونختار نوع البياناتplan حٚ انُٓاٙف
:ًُٗٗ انفأسج ػهَُٛقش ت
Right-click on plant and select Choose Data
Type»Add-ons»TF objeCT
109
Step 2: الخطوة
Control Design تصمٌم تحكم
111
ٌمكن الحصول على القٌمة المثلى للحاكم بفهم العملٌة (النظام)جٌدا0
الفهم ٌ تً من التحلٌل الذي ٌتم فً وحدة تصمٌم التحكم فً البفٌو.
الرسومات والمخططات البٌانٌة المتخصصة ،كمخطط بودي ،موضع
الجذور ،ومخطط نٌكوٌست ،تعطً فكرة عن تصرف النظام(العملٌة).
تحلٌل أدق ،فً حالة نظام ذي حلقة مفتوحة ،بوجود حاكم تسمح
ٌمكن حسابها 0فً هذا بدراسة االستقرار ،ومواصفات أخرى
الموضوعٌ ،مكن استعمال تصمٌم التحكم للحصول على قٌم مثلى،
التفاضلً .االستجابة الزمنٌة توفر فكرة كالكسب التماثلً ،التكاملً،
سرٌعة على التصرف المثالً للنظام.
مثل زمن الصعود ،زمن الوصول على القمة ،التعدي ،زمن االستقرار...
112
Control Systems نظم التحكم
• A control system consists of a Controller model and a Plant
model. ٌتكون نظام التحكم من نموذج حاكم ونموذج عملٌة متحكم فٌها
• Control systems can be open or closed loop. نظم التحكم ٌمكن
أن تكون مفتوحة أو مغلقة
• Controller
حاكم فيها متحكم
Plant عملية
(Motor )
error Vm Km m 1
Setpoint +_ PID Output
J eq Rm s K m
2
s
113
نظام التحكم ٌتكون عادة من نموذج حاكم ،ونموذج عملٌة(نظام) متحكم فٌها0خرج
الحاكم ٌرسل إلى العملٌة 0فً نظام ذي
حلقة مغلقة ،خرج العملٌة ٌطرح من دخل النظامٌ .نتج عن عملٌة الطرح فرق ٌسمى
الخط ،هذا الخط ٌمثل دخل الحاكم .تسمى هذه العملٌة بالتغذٌة الخلفٌة.
114
PID Control Algorithm -ًتكامل-ًخوارزمٌة حاكم تناسب
ًتفاضل
ًتفاضل-ًتكامل-ً تناسب:ً تعنPID
:وتمثل خوارزمٌة
-Linear, Single Input Single Output (SISO) : وحٌدة الدخل ووحٌدة الخرج،خطٌة
Uses error from feedback as control input تستعمل الخط من التغذٌة الخلفٌة كدخل للتحكم
– Proportional: Proportional linear reaction to error تتناسب خطً مع الخط
– Differential: React more when signal is changing quickly التفاضلً ٌتفاعل أكثر
عند تغٌر اإلشارة بسرعة
– Integral: React when error is present over a long period of time التكاملً ٌتفاعل
عند وجود الخط لدورة زمنٌة طوٌلة
115
الحاكم التناسبً التكاملً التفاضلً PID controller
ٌعمل على استثارة العملٌة ،معامالت الحاكم:
Kp, ,Kd and Ki PID controller.
تستعمل لضبط عمل الحاكم التناسبً التكاملً التفاضلً
خط التتبع “e” represents the tracking error,
وٌمثل الفرق بٌن الخرج المرغوب والخرج الحالً .هذا
الخط ٌرسل للحاكم التناسبً التكاملً التفاضلًٌ .قوم الحاكم
التكاملً التفاضلً بحساب معامالت التناسب التناسبً
والتكامل والتفاضل للخط 0بعدها ٌرسل خرج الحاكم
التناسبً التكاملً التفاضلً إلى دخل العملٌة ،وبهذا تولد
العملٌة خرجا آخر ٌمثل خط التجمٌعٌ .غذى هذا الخط خلفٌا
للحاكم التناسبً التكاملً التفاضلً .وهكذا تعاد العملٌة.
116
)A proportional controller (Kp 0الحاكم التناسبً
ٌعمل على تقلٌص زمن الصعود و خط حالة االستقرار.
0الحاكم التفاضلً )A derivative control (Kd
ٌعمل على زٌادة استقرار النظام ،تقلٌص التجاوز ،و
تحسٌن االستجابة العابرة.
0الحاكم التكاملً )an integral control (Ki
ٌعمل على القضاء على خط حالة االستقرار ،تخفٌض
زمن الصعود ،ولكن ٌزٌد من قٌمة زمن االستقرار.
117
Constructing a PID Controller with Control Design
Toolkit تفاضلً باستعمال وحدة-ًتكامل-ًبناء حاكم تناسب
تصمٌم تحكم
• Create a PID model in the
form of a transfer function
-ًتكامل-ًخلق نموذج تناسب
تفاضلً لدالة تحوٌل
• Model can then be
interconnected with plant
model النموذج ٌمكن أن ٌكون
متصال بٌنٌا بنموذج عملٌة
متحكم فٌها
Controller
PID
118
بناء نموذج للحاكم التناسبً التكاملً التفاضلً باستعمال مصمم التحكم
ٌخلق نموذج حاكم تناسبً تكاملً تفاضلً على شكل دالة تحوٌل.
وهذا جهاز افتراضً متعدد أشكال التنفٌذ ،مع اختٌارات نموذج حاكم
تناسبً تكاملً تفاضلً على التوازي ،نموذج حاكم تناسبً تكاملً
تفاضلً أكادٌمً ،أو نموذج حاكم تناسبً تكاملً تفاضلً على
التوالً .فً هذه الدروس سوف نستعمل نموذج الحاكم التناسبً
.التكاملً التفاضلً على التوازي.
لمعادلة التالٌة تستعمل فً حالة نموذج the PID Parallel Model:
التوازي:
)U(s)/E(s) = Kc + Ki/s + Kds/(Tfs+1
119
Control Design Model Interconnection
نموذج تصمٌم تحكم متصل بٌنٌا
Graphical صوريMathScript مخطوط
رياضياتي
Series: A B
توالي
A +
Parallel:
+
توازي B
+
A
Feedback: -
B
تغذية خلفية
120
نماذج النظم ٌمكن أن توصل بٌنٌا باستعمال وحدة البفٌو لتصمٌم التحكم
the Modelإما صورٌا أو نصٌا 0التوصٌالت البٌنٌة الصورٌة ٌمكن أن
تكون باستعمال األجهزة االفتراضٌة فً Interconnection palette
البفٌو انطالقا من:
وتعنً لوحة نموذج التوصٌالت البٌنٌة 0نفس التوصٌالت البٌنٌة ٌمكن
أن تكون نصٌا باستعمال عقدة المخطوط ألرٌاضٌاتً.
األنواع المختلفة من نماذج التوصٌل البٌنً تشمل :التوالً ،التوازي ،و
من خالل وظائف تصمٌم التحكم .توصٌل التغذٌة الخلفٌة.
لكل وظٌفة نموذجان اثنان للدخل ونموذج واحد للخرج.
121
•Create a Series model graphically with the CD Series VI, or
textually with the Series() function.
ٌمكن تكوٌن نماذج توالً صورٌة باستعمال مصمم تحكم لألجهزة
االفتراضٌة على التوالً ،أو نصٌا باستعمال وظائف التوالً.
•Create a Parallel model graphically with the CD Parallel VI,
or textually with the Parallel() function.
مكن تكوٌن نماذج توازي صورٌة باستعمال مصمم تحكم لألجهزة
االفتراضٌة على التوازي ،أو نصٌا باستعمال وظائف التوازي.
•Create a Feedback model graphically with the CD
Feedback VI, or textually with the Feedback() function.
ٌمكن تكوٌن نموذج تغذٌة خلفٌة صورٌا باستعمال مصمم التحكم لألجهزة
االفتراضٌة بالتغذٌة الخلفٌة.
األنواع المختلفة من التوصٌالت البٌنٌة تستعمل غالبا معا لتكوٌن نظم .
تحكم مكتملة بتكوٌن مجموعة مؤتلفة من الحاكمات و النظم المتحكم فٌها.
122
Control Design Model Interconnection (Math Script)
)ًنموذج تصمٌم تحكم متصل بٌنٌا(مخطوط رٌاضٌات
Plant(Motor)
• Use MathScript commands to Vm Km m 1 Output
J eq Rm s K m
2
interconnect models s
123
وظائف المخطوط ألرٌاضٌاتً فً مصمم
التحكم تشمل وظائف نماذج التوصٌل البٌنً.
وظٌفة التوصٌل سوف تكون نموذج خرج
مكافئا لنماذج الدخل الموصلة بٌنٌا.
124
Control Design Model Interconnection (Graphical)
)نموذج تصمٌم تحكم متصل بٌنٌا(صوري
• Connect models in series and parallel
توصٌل النماذج على التوالً والتوازي
• Create feedback loops خلق حلقة مغلقة
Controller Plant(Motor)
error Vm Km m 1
Setpoint +_ PID Output
J eq Rm s K m
2
s
125
نماذج تصمٌم التحكم ٌمكن أن توصل بٌنٌا إما
صورٌا أو نصٌا .توصٌل األجهزة االفتراضٌة
بٌنٌا سوف ٌكون نموذج خرج مكافئا لنماذج
الدخل الموصلة بٌنٌا.
126
تحلٌل االستجابة الزمنٌة Time Response Analysis
127
الجهاز االفتراضً لالستجابة الزمنٌة ٌمكن أن ٌستعمل
لتكوٌن محاكاة خطٌة عامة فً مجال الرسم البٌانً
الزمنً عندما تكون إشارة الدخل إشارة خطوة ،نبضة ،و
االستجابة لقٌم بدائٌةٌ .مكن رسم النتائج بٌانٌا ،و نشر
البٌانات البارامترٌة تخص المحاكاة الخطٌة
128
Displaying Frequency Response and Dynamic
Characteristics Data
نشر االستجابة الترددٌة وبٌانات الدٌنامٌكٌة الخاصة
129
إٌفا نس Evans plot
ٌستعمل لرسم مخطط أو single-input single-output (SISO) system
مسار أقطاب الحلقة المغلقة لنظام ذي دخل منفرد-خرج منفرد
عندما ٌتغٌر كسب التغذٌة الخلفٌة ٌتغٌر من الصفر إلى ما النهاٌة.
131
Review: While Loops حلقات الفترة:مراجعة
132
حلقة الفترة While Loop
مثل ما ٌحدث فً حلقة التكرار فً البرمجة النصٌة ،حلقة
الفترة تنفذ مخطط فرعٌا حتى تالقً شرطا.
حلقة الفترة تنفذ المخطط الفرعً حتى نهائً شرطً أو
نهائً دخل ٌتلقى قٌمة بوولٌة معٌنة.
البدٌل االفتراضً هو:
Stop If True
أي توقف إن كان صحٌحا .تنفذ الحلقة حتى تتلقى قٌمة
صحٌحة:
TRUE value
نهائً التكرار مبٌن فً الٌسار(نهائً خرج) ٌحوي عدد
التكرار التً ٌجب إتمامها.
حساب التكرار ٌبدأ عادة من الصفر.
133
التمرٌن الثانً Exercise 2:
بناء حاكم تناسبً-تكاملً-تفاضلً Construct a PID Controller
134
Exercise 2: ٍَٙ انثاٚانرًش
1. Open a blank VI from the Getting Started screen. Save the
VI as Exercise 2.vi. ّضا َٔسفظٛا أتَٛفرر خٓاصا افرشاض
:تاعى
2. Go to the block diagram (<Ctrl+E>) َٙزْة إنٗ انخطظ انظُذٔق
3. and place a while loop down. َٔضغ زهقح فرشج
4. Right-click to open the functions palette and select َُقش
ًُٗ انفأسج نفرر نٕزح انٕظائفٛت
5. Programming»Structures»While Loop. :َٔخراس
6. Click and drag on the block diagram to make the while loop
the correct size. زهقح انفرشج يغ ضثظٙ انًخطظ انظُذٔقَُٙقش َٔغسة ف
.انسدى
7. Place the CD Construct PID Model.vi on the block diagram.
ٙ انرفاضهٙ انركايهٙ نثُاء انساكى انرُاعثَٙضغ اندٓاص االفرشاض
135
1. From the functions palette, select :يٍ نٕزح انٕظائف َخراس
2. Addons»Control Design»Model Construction»CD Construct PID
Model.vi
3. and place it on the block diagram. ٙ انًخطظ انظُذٔقَٙٔضؼٓا ف
4. From the drop-down menu select PID Parallel. :تانٓثٕط إنٗ أعفم َخراس
5. Right-click the Kc input terminal of the CD Construct PID
Model.vi : Kcًُٗ انفأسج انًؼايمَُٛقش ت
6. and select Create»Control from the shortcut menu. ٍ ػُظشَٕٚٔخراس ذك
ذسكى
7. Right-click the Ki input terminal of the CD Construct PID Model.vi
Kiًُٗ انفأسج انًؼايمَُٛقش ت
8. and select Create»Control from the shortcut menu. ٍ ػُظشَٕٚٔخراس ذك
ذسكى
136
Exercise 2: ٍَٙ انثاٚذاتغ انرًش
Right-click the Kd input terminal of the CD Construct PID Model.vi Kd
ًُٗ انفأسج ػهٗ انًؼايمَُٛقش ت
16. and select Create»Control from the shortcut menu. ٍ ػُظشَٕٚٔخراس ذك
ذسكى
17. Right-click the High Frequency Time Constant [s] (Tf) ًُٗ انفأسجَُٛقش ت
ٗػه
18. input terminal of the CD Construct PID Model.vi ٙ ذًثم دخم َٓائْٙٔ
ٙ انرفاضهٙ انركايهٙ نثُاء انساكى انرُاعثٙاندٓاص االفرشاض
19. and select Create»Constant from the shortcut menu. ٍ ثاتدٕٚثى َخراس ذك
20. Place the CD Series.vi on the block diagram. ٗ ػهَٙضغ يظًى خٓاص انرٕان
ٙانًخطظ انظُذٔق
137
21. From the functions palette, select :يٍ نٕزح انٕظائف َخراس
22. Addons»Control Design»Model Construction»CD Series.vi
23. and place it on the block diagram.َٙٔضؼٓا ػهٗ انًخطظ انظُذٔق
24.F rom the drop-down menu select Transfer Function and
Transfer Function. :تانٓثٕط َسٕ األعفم َخراس
25. Wire the Transfer Function Model output terminal of the CD
Construct PID Model.vi to the Model 1 input terminal of the CD
Series.vi. ٙم انساكى تذخم خٓاص انرٕانَٕٕٚطم (َهف) خشج دانح ذس
27. Place the CD Feedback.vi on the block diagram. From the
functions palette, اَطالقا يٍ نٕزحَٙضغ يظًى انرسكى ػهٗ انًخطظ انظُذٔق
.انٕظائف
28. select Addons»Control Design»Model Construction»CD
Feedback.vi :َٔخراس
29. and place it on the block diagram. ٙ انًخطظ انظُذٔقَٙٔضؼٓا ف
30. From the drop-down menu select :يٍ قائًح انٓثٕط َسٕ األعفم َخراس
31. Transfer Function and Transfer Function. مٕٚم ٔدانح ذسٕٚدانح ذس
138
Step 3: Simulation الخطوة الثالثة
Test the motor and controller with real-world timing and a continuous time solver.
جرب المحرك والحاكم بتوقٌت حقٌقً وأداة حل فً زمن مستمر
140
ٌمكن الحصول على القٌمة المثلى للحاكم بفهم العملٌة (النظام)جٌدا 0الفهم
ٌ تً من التحلٌل الذي ٌتم فً وحدة تصمٌم التحكم فً البفٌو .الرسومات
والمخططات البٌانٌة المتخصصة ،كمخطط بودي ،موضع الجذور ،ومخطط
نٌكوٌست ،تعطً فكرة عن تصرف النظام(العملٌة) .تحلٌل أدق ،فً حالة نظام
ذي حلقة مفتوحة ،بوجود حاكم تسمح بدراسة االستقرار ،ومواصفات أخرى
ٌمكن حسابها 0فً هذا الموضوعٌ ،مكن استعمال تصمٌم التحكم للحصول
التفاضلً .االستجابة الزمنٌة على قٌم مثلى ،كالكسب التماثلً ،التكاملً،
توفر فكرة سرٌعة على التصرف المثالً للنظام.
مثل زمن الصعود ،زمن الوصول على القمة ،التعدي ... ،عند استعمال وحدة
المحاكاة للت كد من صحة هذه البارامترات تحت عوائق حقٌقٌة.
أحد هذه األمثلة هً القٌمة الكبرى والقٌمة الصغرى للجهد والتٌار المتوفران
لتغذٌة المحرك.
حدود جهد المحرك تحدد المدى الخطً للعملٌة .خارج المدىٌ ،مكن أن ٌت ثر
الالخطٌات التً ٌمكن تمثٌلها فً المحرك وٌصبح غٌر دقٌق .هذه الحالة تمثل
وحدة المحاكاة.
141
LabVIEW Simulation Module وحدة البفٌو النمطٌة للمحاكاة
143
The Simulation Loop حلقة المحاكاة
144
حلقة المحاكاة تمثل عنصر وحدة المحاكاة الرئٌسً .وهً عبارة عن نسخة
مطورة لحلقة الفترة التً تدمج عنصر حل المعادالت التفاضلٌة العادٌة،
مواصفات التوقٌت الداخلٌة والخارجٌة ،و منصة تقاطع برمجٌة ذات
قدرات.
مع وحدة المحاكاة ٌمكن تنفٌذ نظم الزمن المستمر فً المجال الرقمً
المتقطع .تتكون الحلقة من ثالثة أجزاء:
دخل العقدة (ٌسارا) Input node (Left)-
ٌسمح بتعرٌف بارامترات المحاكاة برمجٌا .افتراضٌا ،هذه البرامترات
تكون استاتٌكٌة(ساكنة) وٌمكن أن ٌتم تشكٌلها بالنقر المزدوج دخل العقدة.
وٌمكن أن توسع بالنقر على الهامش السفلً للعقدة النتزاع المعالجة و
السحب ألسفل لعرض برامترات إضافٌة.
الحلقة الرئٌسٌة – Main loop
حٌث ٌوضع النظام المراد تمثٌله.
خرج العقدة(ٌمٌن) – )Output node (Right
ٌرجع األخطاء التً وقعت فً المحلقة ،مثل دالة التحوٌل الغٌر سلٌمة.
145
Simulation Loop Parameters بارامترات حلقة المحاكاة
• Drag left node to show current parameters and
provide inputs for run-time simulation
configuration إسجب العقدة الٌسرى إلظهار البارومترات
الحالٌة وتوفٌر مداخل لتنفٌذ تشكٌل المحاكاة زمنٌا
146
تشكٌل محاكاة
Configuring a Simulation
ٌوجد الكثٌر من البرامترات التً ٌمكن تشكٌلها لحلقة محاكاة.
بارامترات المحاكاة Simulation Parameters Tab
زمن المحاكاة– Simulation Time
ٌحدد مدى دوام دورة ”زمن المحاكاة“ و مدة تنفٌذ المحاكاة .هذا الزمن المحاكاة.
ال ٌملً زمن حوسبة(معالجة)
أداة حل المعادالت – Solver Method
ٌعٌن ما نوع أداة حل المعادلة التفاضلٌة العادٌة التً تستعمل لحل تجمٌع أنواع
التكامل والتفاضل فً المحاكاة .توجد أنواع متعددة من أدوات الحل.
زمن الخطوة و حد التفاوت المسموح بهTime Step and Tolerance – -
عوامل الضبط هذه تتحكم فً نافذة زمن الخطوات التً تستعمل فً البفٌو .عادة،
عوام الضبط االفتراضٌة المتوفرة تكفً ،
147
ولكن ٌجب إعادة ضبطها إذا لزم.
زمن التقطٌع – Discrete Time
بما أن اختٌارات زمن التقطٌع الذاتً سوف تعمل فً الكثٌر من المحاكاةٌ ،مكن إجبار
البفٌو فسرٌا باستعمال حجم معٌن للخطوة .
بارامترات التوقٌت Timing Parameters Tab
اختٌارات توقٌت البرنامج تستعمل عادة عند تنفٌذ المحاكاة .هذا سوف ٌحل المعادلة
حسب سرعة وحدة المعالجةٌ .مكن مالحظة محاكاة فً الزمن الحقٌقً ،نقوم
بتعطٌل(حجب) اختٌارات التوقٌت فً البرنامج ووضع برامترات المحاكاة المبٌنة.
مصدر توقٌت الحلقة – Loop Timing Source
عند تنفٌذ محاكاة فً مكونات مادٌة ،تغٌر مصدر توقٌت الحلقة بتوقٌت المكونات
تستعمل لتحقٌق تزامن تنفٌذ المحاكاة مع المادٌة المتوفرة .هذا االختٌار ٌمكن أن
مصدر زمن خارجً ،مثل ساعة نظام التشغٌل ،أو ساعة لوحة تحصٌل البٌانات.
بارامترات توقٌت الحلقة– Loop Timing Parameters
هذه الخٌارات تتحكم فً كٌفٌة تنفٌذ الحلقة باعتبار مصدر التوقٌت الذي تم اختٌاره.
ٌمكن االستعانة بالمساعد
148
Generating Simulation Input تولٌد دخل المحاكاة
Simulations can utilize a wide variety of signal sources: ٌمكن
للمحاكاة استعمال مجموعة واسعة من إشارات المصادر
150
المحاكاة ٌمكن أن تستعمل الكثٌر من اإلشارات.
إشارة المحاكاة تفٌد فً تصنٌف استجابات النظم
واختبار الحاالت المختلفة 0إشارة الخطوة تعطً
استجابة جٌدة ،إشارة النبضة سرٌعة... ،
بعد ت كٌد المحاكاةٌ ،مكن استعمال إشارة حقٌقٌة
لتحل محل إشارة المحاكاة .بذلك نقوم بحسابات
مبنٌة على بٌانات آنٌة.
.
151
Capturing Simulation Output التقاط خرج المحاكاة
152
المحاكً لمخطط شكل الموجة زمنٌا هو مؤشر عددي خاص
لنشر رسم أو أكثر من رسم على نفس الشاشة .مخطط شكل
الموجة ٌوجد فً لوحة:
» Functions » Control Design & Simulation
Simulation » Graph Utilities » SimTime Waveform
palette
ٌمكن تغٌٌر القٌمتٌن العظمى والصغرى لكل من المحورٌن
بالنقر مرتٌن على القٌمة المعنونة وكتابة قٌمة جدٌدة .كما
ٌمكن تغٌٌر عنونة أي من المحورٌن .كما ٌمكن تغٌٌر أسلوب
أو طراز أو شكل و لون الرسم....بالنقر بٌمنى الف رة على
شعار الرسم.
153
Exercise 3: التمرٌن
Simulate the Motor Control System ًمحاكاة نظام التحكم ف
المحرك
Km 1
+_ PID J eq Rm s K m
2
s
155
Right-click the Rm control and choose Change to Constant.
Set the constant to 3.3.
Rm:ًُٗٗ انفأسج ػهٛأَقش ت
.ًح انثاتدٛ ثى ضغ ق،م إنٗ ثاتدٕٚٔاخرش انرس
Right-click the J control and choose Change to Constant. Set
the constant to 9.64E-6.
J:ًُٗٗ انفأسج ػهٛأَقش ت
.ًح انثاتدٛ ثى ضغ ق،م إنٗ ثاتدٕٚٔاخرش انرس
ٔ انثٕابٙاذٛاضٚ ياػذا ػقذج انًخطٕط أنشٙء يٍ انًخطظ انظُذٔقٙقى تًغر كم ش
.ٙاذٛاضٚانًٕطهح تانًخطٕط أنش
MathScript Node, Kc, Ki, and Kd.
156
Step 4: Tuning and Verification
ضبط و وضع تحقٌق:4 الخطوة
158
إدماج الالخطٌات Introducing Nonlinearities
159
الالخطٌات تسبب تصرفا غٌر مرتقب للنماذج
المثالٌة والحاكمات .مصادر الالخطٌات تشمل
التشبع ،التشوٌش ،االحتكاك ،التً ال ٌمكن
حسابها فً نموذج نظام خطً .وحدة المحاكاة
ٌمكنها تحلٌل النماذج الالخطٌة ،وتسمح بمحاكاة
تنفٌذه.التصرف الغٌر مثالً قبل
160
مثال على الالخطٌات Nonlinearity Example
استجابة مثالٌة لنموذج خطً فً تصمٌم تحكم نفس الحاكم بوجود تشبع أضٌف فً المحاكاة
Kc = 10تناسبً
Ki = 0تكاملً
Kd = 1تفاضلً
161
فً هذا المثال ،تم تكوٌن نموذج حاكم تناسبً تكاملً تفاضلً باستعمال
وحدة تصمٌم التحكم .بارامترات الحاكم التناسبً التكاملً التفاضلً ٌتم
ضبطها بحٌث تكون استجابة الخطوة للنظام قرٌبة من المثالٌةٌ .ستعمل
المحاكاة مع نفس بارامترات الحاكم عندها نموذج الحاكم فً وحدة
التناسبً التكاملً التفاضلً ،حٌث أدمجت الخطٌة تشبع .الالخطٌة تمثل
العظمى و الصغرى .قٌمتً الجهد
)the maximum and minimum voltage (24V, -24V
التً تغذي المحرك .إدماج وظٌفة التشبع تغٌر تصرف النظام بحٌث ٌكون
تصرفها بعٌدا عن التصرف المثالً .هذا القٌد أو التحفظ الحقٌقً لوظٌفة
التشبع ٌجب اعتباره من اآلن وٌجب إعادة ضبط بارامترات الحاكم
تناسبً تكاملً تفاضلً إلعطاء استجابة أفضل بوجود قٌد.
البحث عن الحل األمثل تشمل ،عادة ،الكثٌر من التكرار بٌن مصمم التحكم
و المحاكاة التً نرٌد الحصول علٌها للوصول إلى أداء مقبول للنظام..
162
Controller Optimization البحث عن القٌمة المثلى للحاكم
Control Design تصمٌم التحكم
• Tune Controller Parameters ضبط بارمترات الحاكم
• Estimate Performance تقدٌر األداء
Simulation محاكاة
• Introduce Impairments and Nonlinearities إدماج مؤثرات والخطٌات
163
ٌمكن الحصول على القٌمة المثلى للحاكم بفهم العملٌة (النظام)جٌدا 0الفهم
ٌ تً من التحلٌل الذي ٌتم فً وحدة تصمٌم التحكم فً البفٌو .الرسومات
والمخططات البٌانٌة المتخصصة ،كمخطط بودي ،موضع الجذور ،ومخطط
نٌكوٌست ،تعطً فكرة عن تصرف النظام(العملٌة) .تحلٌل أدق ،فً حالة نظام
ذي حلقة مفتوحة ،بوجود حاكم تسمح بدراسة االستقرار ،ومواصفات أخرى
ٌمكن حسابها 0فً هذا الموضوعٌ ،مكن استعمال تصمٌم التحكم للحصول
التفاضلً .االستجابة الزمنٌة على قٌم مثلى ،كالكسب التماثلً ،التكاملً،
توفر فكرة سرٌعة على التصرف المثالً للنظام.
مثل زمن الصعود ،زمن الوصول على القمة ،التعدي ... ،عند استعمال وحدة
المحاكاة للت كد من صحة هذه البارامترات تحت عوائق حقٌقٌة.
أحد هذه األمثلة هً القٌمة الكبرى والقٌمة الصغرى للجهد والتٌار المتوفران
لتغذٌة المحرك.
حدود جهد المحرك تحدد المدى الخطً للعملٌة .خارج المدىٌ ،مكن أن ٌت ثر
الالخطٌات التً ٌمكن تمثٌلها فً المحرك وٌصبح غٌر دقٌق .هذه الحالة تمثل
وحدة المحاكاة.
164
Tuning your PID Controller -ًالتكامل-ًضبط الحاكم التناسب
ًالتفاضل
Tune PID controller design using the step response ضبط تصمٌم حاكم
تفاضلً باستعمال استجابة خطوة-ًتكامل-ًتناسب
165
Exercise 4: التمرٌن
Tune the Controller ضبط الحاكم
Km 1
+_ PID J eq Rm s K m
2
s
• Change Simulation loop to a continuous model تحوٌل حلقة المحاكاة إلى نموذج مستمر
• Incorporate nonlinearities into state model. إدراج الخطٌات فً نموذج الحالة
• Tune PID parameters with a continuous input. تفاضلً بدخل-ًتكامل-ًضبط الحاكم تناسب
مستمر
166
Exercise 4: ٍٚانرًش
1. Open Exercise 3.vi. ٍٚافرر انرًش
2. Save the VI as Exercise 4.vi. :أزفع تاعى
3. Go to the front panel and place down a Slide Switch control. انهٕزحٙف
.ٙح َضغ ػُظش ذسكى اَضالقٛاألياي
4. Right-click and select Boolean »Slide Switch :ًُٗ انفاسج َٔخراسَُٛقش ت
5. Label the Slide Switch Input Mode. َٙؼٌُٕ ػُظش انرسكى أالَضالق
6. Double-click on empty space to the left of Input Mode to create a free
label. Type “Manual )Dial(” inside this free label. “Manual )Dial(”
:ًٍّٛ ػُٕاٌ خاص َٔغٕٚغاس ًَٕرج انذخم نركٚ ٗ انفشاؽ ػهٍٙ فَُٛقش يشذ
7. Double-click on empty space to the right of Input Mode to create another
free label. Type “Pulse Train” inside this free label . “Pulse Train” َُقش
ًٍّٛ ػُٕاٌ آخش َٔغٍٕٚ ًَٕرج انذخم نركًٛٚ ٗ انفشاؽ ػهٍٙ فٛيشذ
8. Place a dial on the front panel. Right-click and select Numeric »Dial.
ح َُٔقشٛ انهٕزح األيايَٙضغ يفرازا دٔاسا(ذهفُح) فNumeric »Dial
:ًُٗ انفأسج َٔخراسٛت
167
1. Label the Dial Input Angle. َ٘ٔؼَُّٕ تانذخم انضا
2. Place a stop button on the front panel. Right-click and select
Boolean» Stop Button. َضغ صس ذٕقف ػهٗ انهٕزح
Boolean» Stop Button :ًُٗ انفاسج َٔخراسٛ َُٔقش ت، حٛاألياي
1. Go to the block diagram. َٙزْة ػهٗ انًخطظ انظُذٔق
2. Double-click the block on the top-left of the Simulation Loop.
In the Configure Simulation Parameters window, set Final Time
to “Inf”. م َضغٛ َافزج انرشكٙ ف.غشٖ نسهقح انًساكاجٍٛ ػهٗ انقًح انَُٛقش يشذ
:ٗ إنٙانضيٍ انُٓائ
3. Right-click the Step Signal VI and select Replace»
Programming» Comparison» Select ًُٗ انفأسج ػهٗ اندٓاصَُٛقش ت
Replace» Programming» Comparison» إلشاسج انخطٕجٙاالفرشاض
:َٔخراس
4. Right-click Input Angle (rad) and select Create» Control. َُقش
ٍ ػُظش ذسكىًُٕٚٗ انفأسج ػهٗ انذخم انضأ٘ َٔخراس ذكٛت
5. Label this new control Output Angle (rad). َؼٌُٕ خشج ػُظش انرسكى
٘ٔتانخشج انضا
6. Right-click Output Angle (rad) and select Change to Indicator.
ًُٗ انفأسج ػهٗ انخشج انضأ٘ َٔخراس زٕل إنٗ يؤششَُٛقش ت
168
Step 5: Deployment النشر:5 الخطوة
170
ٌمكن الحصول على القٌمة المثلى للحاكم بفهم العملٌة (النظام)جٌدا 0الفهم
ٌ تً من التحلٌل الذي ٌتم فً وحدة تصمٌم التحكم فً البفٌو .الرسومات
والمخططات البٌانٌة المتخصصة ،كمخطط بودي ،موضع الجذور ،ومخطط
نٌكوٌست ،تعطً فكرة عن تصرف النظام(العملٌة) .تحلٌل أدق ،فً حالة نظام
ذي حلقة مفتوحة ،بوجود حاكم تسمح بدراسة االستقرار ،ومواصفات أخرى
ٌمكن حسابها 0فً هذا الموضوعٌ ،مكن استعمال تصمٌم التحكم للحصول على
التفاضلً .االستجابة الزمنٌة توفر قٌم مثلى ،كالكسب التماثلً ،التكاملً،
فكرة سرٌعة على التصرف المثالً للنظام:
مثل زمن الصعود ،زمن الوصول على القمة ،التعدي ... ،عند استعمال وحدة
المحاكاة للت كد من صحة هذه البارامترات تحت عوائق حقٌقٌة.
أحد هذه األمثلة هً القٌمة الكبرى والقٌمة الصغرى للجهد والتٌار المتوفران
لتغذٌة المحرك.
حدود جهد المحرك تحدد المدى الخطً للعملٌة .خارج المدىٌ ،مكن أن ٌت ثر
المحرك وٌصبح غٌر دقٌق.
171
ٌمكن الحصول على القٌمة المثلى للحاكم بفهم العملٌة
(النظام)جٌدا 0الفهم ٌ تً من التحلٌل الذي ٌتم فً وحدة
تصمٌم التحكم فً البفٌو .الرسومات والمخططات البٌانٌة
المتخصصة ،كمخطط بودي ،موضع الجذور ،ومخطط
نٌكوٌست ،تعطً فكرة عن تصرف النظام(العملٌة) .تحلٌل أدق
،فً حالة نظام ذي حلقة مفتوحة ،بوجود حاكم تسمح بدراسة
ٌمكن حسابها 0فً هذا االستقرار ،ومواصفات أخرى
الموضوعٌ ،مكن استعمال تصمٌم التحكم للحصول على قٌم
التفاضلً .االستجابة مثلى ،كالكسب التماثلً ،التكاملً،
الزمنٌة توفر فكرة سرٌعة على التصرف المثالً للنظام.
مثل زمن الصعود ،زمن الوصول على القمة ،التعدي ،زمن
االستقرار...
172
Control System Deployment Options خٌارات نشر نظام التحكم
Algorithms designed in LabVIEW Control Design Toolkit and
Simulation Module can be deployed on a desktop PC, or a Real
Time system. الخوارزمٌات المصممة فً وحدة تصمٌم تحكم ومحاكاة ٌمكن أن
ًتنفذ على شاشة حاسوب شخصً أو نظام تحكم فً الزمن الحقٌق
• Desktop PC ًحاسوب شخص
− Program runs on Windows برنامج ٌنفذ على وٌندوز
− Input and Output via NI Data Acquisition device الدخل
والخرج من خالل جهاز تحصٌل بٌانات
− For example, desktop PC with PCI-6259 مثل حاسوب
ًشخص
• Real Time System ًنظام الزمن الحقٌق
− Program runs on a deterministic operating system برنامج
ٌعمل على نظام تشغٌل محدد
− Input and Output via specialized devices الدخل والخرج من
خالل أجهزة متخصصة
− For example, CompactRIO controller with selected
modules
وحدة مدمجة إلعادة تشكٌل المداخل والمخارج مع وحدات تحكم:مثل
مختارة
173
بعد إتمام تصمٌم نظام تحكم بواسطة وحدة تصمٌم التحكم ووحدة المحاكاة فً البفٌو،
ٌمكن تنفٌذ الخوارزمٌة للتحكم فً نظام فٌزٌائً حقٌقًٌ.مكن تنفٌذ الخوارزمٌة عن
طرٌق الحاسب الشخصً أو فً الزمن الحقٌقً.
عند تنفٌذ نظام تحكم على سطح مكتب ٌستلزم استبدال العملٌة بوظائف دخل وخرج
من مكونات مادٌة.
ٌنفذ النظام فً البفٌو مثل ما هو فً المحاكاة .كمثال ،نستبدل دالة التحوٌل التً تمثل
العملٌة(النظام المتحكم فٌه) فً حلقة محاكاة باستعمال جهاز تحصٌل البٌانات:
بدخل وخرج الجهاز االفتراضً NI-DAQmx input and output Vis
The DAQmx VIs would control an NI Data Acquisition device like the
PCI-6259.
لكن طرٌقة تنفٌذ نظام تحكم على سطح مكتب ،تتمثل فً عدم محدودٌة نظام تشغٌل
الحاسوبٌ .مكن أن تحدث مقاطعات تخل بالنتائج .للحصول على نتائج مرضٌة ٌجب
استعمال التجربة فً الزمن الحقٌقً باستعمال جهاز مدمج إلعادة تشكٌل المداخل
والمخارج مثلsuch as the CompactRIO :
174
النشر والتنفٌذ Deployment
المرور من نموذج محاكاة إلى Moving from a simulated model to a real life model
نموذج عالم حقٌقً
• تغٌٌر نموذج العملٌة بمكونات مادٌة Replace Plant Model with Hardware I/O
ذات دخل وخرج
ت كد من أن توقٌت مداخل • Make sure Hardware I/O timing matches Simulation
ومخارج المكونات المادٌة ٌوائم المحاكاة
حلقة التوقٌت • Loop timing
175
وحدة المحاكاة فً البفٌو ٌمكن استعمالها للتحكم فً النظم فً الزمن
الحقٌقً وكذلك فً نماذج المحاكاة .للمرور من نماذج المحاكاة إلى نظم
الزمن الحقٌقًٌ،مكن استبدال العملٌة(النظام المتحكم فٌه) بوظائف مداخل
ومخارج المكونات المادٌة.
فً هذه الحالة ،سوف نستبدل دالة التحوٌل التً تمثل المحرك بمداخل
ومخارج الجهاز االفتراضً
DAQmx input and output VIs that control the actual motor.
الذي ٌتحكم فً المحرك الحالً.
للتوقٌت اعتبارات مهمة عند التنفٌذ باستعمال وحدة المحاكاة .بما أن حلقة
ODE solver with timeالمحاكاة تستعمل أداء حل المعادالت التفاضلٌة
بخطوات زمنٌةsteps:
ٌجب وضع بارامترات المحاكاة و بارامترات التوقٌت الخاصة بالحلقة لكً
ٌكون لها نفس زمن الخطوة .مهام تحصٌل البٌانات ،خصٌصا ،تستعمل
بارامترات التوقٌت ،بحٌث تعادل توقٌت حلقة المحاكاة مع توقٌت تحصٌل
البٌانات.
176
Exercise 5: (Optional) )التمرٌن (اختٌاري
Use the Controller in a Real Life System
ًاستعمال الحاكم فً نظام زمن حقٌق
1
+_ PID s
• Replace the plant model with the real life motor. استبدل نموذج العملٌة بمحرك
ًحقٌق
• Test the behavior of the motor, and compare to the original plant model.
جرب سلوك محٌط المحرك وقارن بالعملٌة األصلٌة
177