Advantech HMI مقرها لوحة التحكم HMI


فيديو: لوحة ادارة هبر. يسمح لك بضبط مستخدمي الكرمة والتصنيف وحظر المستخدمين.

TL ؛ DR: في المقالة ، سأحاول إنشاء لوحة تحكم هزلية لـ Habr باستخدام بيئة التطوير الصناعي Webaccess / HMI Designer ومحطة WebOP.

واجهة الإنسان والآلة (HMI) عبارة عن مجموعة من الأنظمة للتفاعل البشري مع الآلات التي يتم التحكم فيها. عادةً ما يتم استخدام هذا المصطلح للأنظمة الصناعية التي يوجد فيها مشغل ولوحة تحكم.

WebOP هي محطة صناعية قائمة بذاتها لإنشاء واجهات بين الإنسان والآلة. يتم استخدامه لإنشاء لوحات التحكم في الإنتاج ، وأنظمة المراقبة ، وغرف التحكم ، وأجهزة التحكم في المنازل الذكية ، إلخ. وهو يدعم الاتصال المباشر بالمعدات الصناعية ، ويمكن أن يعمل كجزء من نظام SCADA.


WebOP الطرفية - الأجهزة



محطة WebOP عبارة عن كمبيوتر منخفض الطاقة يعتمد على معالج ARM ، في حالة واحدة مزودة بشاشة وشاشة تعمل باللمس ، تم تصميمها لتشغيل برنامج بواجهة رسومية تم إنشاؤها في HMI Designer. بناءً على الطراز ، تحتوي المحطات الطرفية على واجهات صناعية متعددة على متن الطائرة: RS-232/422/485 ، حافلة CAN للاتصال بأنظمة السيارات ، منفذ USB مضيف لتوصيل الأجهزة الطرفية الإضافية ، ومنفذ USB Client لتوصيل الجهاز الطرفي بالكمبيوتر ، وإدخال الصوت وإخراج الصوت ، قارئ بطاقة MicroSD للذاكرة غير متقلبة وإعدادات النقل.

يتم وضع الأجهزة كبديل للميزانية للقطع الأحادية ، للمهام التي لا تتطلب معالجات قوية وموارد جهاز كمبيوتر مكتبي متكامل. يمكن أن تعمل WebOP كمحطة قائمة بذاتها لإدارة البيانات وإدخالها / إخراجها ، المقترنة مع WebOPs الأخرى ، أو كجزء من نظام SCADA.


يمكن أن تتصل محطة WebOP مباشرة بالأجهزة الصناعية

التبريد السلبي وحماية IP66


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

اللوحة الأمامية مصنوعة بدون فجوات ووصلات ، ومستوى حماية IP66 ، وتسمح بالاتصال المباشر بالمياه تحت الضغط.


اللوحة الخلفية للمحطة WOP-3100T

ذاكرة غير متقلبة


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

التحديث عن بعد


يمكن تحديث البرنامج الذي يعمل على الجهاز عن بُعد عبر شبكة Ethernet أو من خلال واجهات RS-232/485 التسلسلية. هذا يبسط الصيانة ، لأنه يلغي الحاجة لتجاوز جميع الأجهزة الطرفية للحصول على تحديثات البرامج.

نماذج WebOP



سلسلة 2000T هي أكثر الأجهزة بأسعار معقولة ، وهي مبنية على نظام التشغيل HMI RTOS في الوقت الفعلي. يتم تمثيل السلسلة بواسطة WebOP - 2040T / 2070T / 2080T / 2100T ، مع شاشة قطرية 4.3 بوصة و 7 بوصات و 8 بوصات و 10.1 بوصة ، على التوالي.


3000T Series هي طرز أكثر تقدمًا تعتمد على نظام التشغيل Windows CE. إنها تختلف عن سلسلة 2000T في عدد كبير من واجهات الأجهزة ولديها واجهة CAN. تعمل الأجهزة في نطاق درجة حرارة ممتدة (-20 ~ 60 درجة مئوية) ولها حماية مضادة للسكون (الهواء: 15KV / الاتصال: 8KV). يلبي الخط تمامًا متطلبات معيار IEC-61000 ، والذي يسمح باستخدام الأجهزة في تصنيع أشباه الموصلات ، حيث تشكل التصريفات الثابتة مشكلة. يتم تمثيل السلسلة بنماذج WebOP - 3070T / 3100T / 3120T ، مع شاشة قطرية من 7 بوصات و 10.1 بوصة و 12.1 بوصة ، على التوالي.

WebAccess / HMI بيئة تطوير مصمم


من خارج الصندوق ، تعد محطة WebOP عبارة عن كمبيوتر ARM منخفض الطاقة يمكنك تشغيل أي برنامج عليه ، لكن النقطة الأساسية لهذا الحل تكمن في بيئة تطوير الواجهة الصناعية WebAcess / HMI الخاصة. يتكون النظام من مكونين:

  • مصمم HMI هو بيئة لتطوير واجهات ومنطق البرمجة. وهو يعمل تحت ويندوز ، على مبرمج الكمبيوتر. يتم تجميع البرنامج النهائي في ملف واحد ويتم إرساله إلى الجهاز لتنفيذ وقت التشغيل. البرنامج متاح باللغة الروسية.
  • HMI Runtime - وقت التشغيل لتشغيل برنامج مترجم على الجهاز. يمكن أن تعمل ليس فقط على محطات WebOP ، ولكن أيضًا على أجهزة Advantech UNO وأجهزة MIC وأجهزة الكمبيوتر المكتبية العادية. هناك إصدارات من وقت التشغيل لنظامي التشغيل Linux و Windows و Windows CE.



مرحبا العالم - إنشاء مشروع


دعنا نبدأ في إنشاء واجهة اختبار لوحة التحكم Habr لدينا. سأقوم بتشغيل البرنامج على محطة WebOP-3100T التي تعمل بنظام WinCE. أولاً ، قم بإنشاء مشروع جديد في مصمم HMI. لتشغيل البرنامج على WebOP ، من المهم اختيار النموذج الصحيح ، وسوف يعتمد تنسيق الملف النهائي على هذا. في هذه الخطوة ، يمكنك أيضًا تحديد بنية سطح المكتب ، ثم سيتم تجميع الملف الناتج تحت وقت تشغيل X86.


إنشاء مشروع جديد واختيار بنية

اختيار بروتوكول الاتصال الذي سيتم من خلاله تحميل البرنامج المترجم إلى WebOP. في هذه الخطوة ، يمكنك اختيار واجهة تسلسلية ، أو تحديد عنوان IP الخاص بالجهاز.


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



أولاً ، أنشئ شاشتين بالنص "Hello World" والقدرة على التبديل بينهما باستخدام الأزرار. للقيام بذلك ، أضف شاشة شاشة جديدة # 2 ، وفي كل شاشة نضيف عنصرًا نصيًا وزرين للتبديل بين الشاشات (أزرار الشاشة). يتم تكوين كل زر للتبديل إلى الشاشة التالية.

واجهة لضبط زر للتبديل بين الشاشات

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

  • المحاكاة عبر الإنترنت - ستشارك جميع مصادر البيانات الخارجية المحددة في البرنامج. يمكن أن تكون هذه USO أو أجهزة متصلة عبر واجهات تسلسلية أو Modbus TCP.
  • المحاكاة غير المتصلة بالإنترنت - المحاكاة دون استخدام أجهزة خارجية.

بينما ليس لدينا بيانات خارجية ، إلا أننا نستخدم المحاكاة في وضع عدم الاتصال بعد تجميع البرنامج. سيتم وضع البرنامج النهائي في مجلد المشروع ، باسم ProjectName_Program Name.px3


يمكن التحكم في البرنامج الذي تم إطلاقه في المحاكاة بواسطة مؤشر الماوس بالطريقة نفسها التي يتم التحكم بها على شاشة اللمس الخاصة بمحطة WebOP. نرى أن كل شيء يعمل على النحو المنشود. ممتاز.
لتنزيل البرنامج إلى الجهاز الفعلي ، فقط انقر فوق الزر "تنزيل". ولكن نظرًا لأنني لم أقوم بتهيئة اتصال الجهاز ببيئة التطوير ، يمكنك ببساطة نقل الملف باستخدام محرك أقراص فلاش USB أو بطاقة ذاكرة microSD.

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

العمل مع الذاكرة


الآن وقد أصبحنا قادرين على إنشاء عناصر رسومية ، سندرس العمل باستخدام محتوى ديناميكي ولغة نصية. قم بإنشاء مخطط شريطي يعرض البيانات من المتغير U $ 100 . في إعدادات المخطط ، حدد نوع البيانات: عدد صحيح 16 بت ، ونطاق قيم المخطط: من 0 إلى 10.



يدعم البرنامج كتابة النصوص بثلاث لغات: VBScript ، JavaScript ولغته الخاصة. سأستخدم الخيار الثالث ، لأنه توجد أمثلة في الوثائق والمساعدة التلقائية على بناء الجملة في المحرر.

إضافة ماكرو جديد:



سنكتب رمزًا بسيطًا لتغيير البيانات تدريجيًا في متغير ، والتي يمكن تتبعها في رسم تخطيطي. سنضيف 10 إلى المتغير ، والصفر عندما يكون أكثر من 100.

$U100=$U100+10 IF $U100>100 $U100=0 ENDIF 

لتنفيذ البرنامج النصي في حلقة ، قم بتثبيته في إعدادات "الإعداد العام" كـ "ماكرو رئيسي" ، مع فاصل زمني للتنفيذ قدره 250 مللي ثانية.


ترجمة وتشغيل البرنامج في جهاز محاكاة:



في هذه المرحلة ، تعلمنا كيفية التعامل مع البيانات في الذاكرة وعرضها في شكل مرئي. هذا يكفي بالفعل لإنشاء نظام مراقبة بسيط ، واستقبال البيانات من أجهزة خارجية (أجهزة الاستشعار ، وأجهزة التحكم) وكتابتها على الذاكرة. في HMI Designer ، تتوفر العديد من وحدات عرض البيانات: في شكل أقراص دائرية بها أسهم ، ومخططات بيانية مختلفة ، ورسوم بيانية. باستخدام البرامج النصية JavaScript ، يمكنك تنفيذ تحميل البيانات من مصادر خارجية عبر HTTP.

لوحة التحكم هبر


باستخدام المهارات المكتسبة ، سنقوم بإنشاء واجهة هزلية من لوحة المسؤول من Habrom.



يجب أن يكون جهاز التحكم عن بُعد قادراً على:

  • تبديل ملفات تعريف المستخدمين
  • تخزين الكرمة وتصنيف البيانات
  • تغيير القيم الكرمة وتصنيف باستخدام المتزلجون
  • عند النقر فوق زر الحظر ، يجب تمييز ملف التعريف على أنه محظور ، ويجب أن تتغير صورة الملف الشخصي إلى شطب

سيتم عرض كل ملف تعريف على صفحة منفصلة ، لذلك سنقوم بإنشاء صفحة لكل ملف تعريف. سنقوم بتخزين الكرمة والتصنيف في المتغيرات المحلية في الذاكرة ، والتي سيتم تهيئتها باستخدام Setup Macro عند بدء تشغيل البرنامج.


صورة قابلة للنقر

ضبط الكرمة والتصنيف


لضبط الكرمة ، سوف نستخدم شريط التمرير (Slide Switch). كعنوان للسجل ، نحدد المتغير الذي تمت تهيئته في إعداد ماكرو. نحن نحد من نطاق قيم شريط التمرير من 0 إلى 1500. الآن ، عندما يتحرك شريط التمرير ، سيتم كتابة بيانات جديدة إلى الذاكرة. في هذه الحالة ، ستتوافق الحالة الأولية لشريط التمرير مع قيم المتغير في الذاكرة.


لعرض القيم العددية للكرمة والتصنيف ، سنستخدم عنصر العرض الرقمي. يشبه مبدأ تشغيله الرسم التوضيحي لبرنامج المثال "Hello World" ، ما عليك سوى تحديد عنوان المتغير في Monitor Address.

زر الحظر


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


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


استنتاج


بشكل عام ، أعجبني المنتج. في السابق ، واجهت تجربة استخدام جهاز لوحي يعمل بنظام Android للقيام بمهام مماثلة ، ولكن تطوير واجهة له أكثر تعقيدًا بكثير ، ولا تسمح واجهات برمجة التطبيقات الخاصة بالمتصفح بالوصول الكامل إلى الأجهزة الطرفية. يمكن أن تحل محطة WebOP واحدة محل حزمة من جهاز لوحي Android وجهاز كمبيوتر ووحدة تحكم.

مصمم HMI ، على الرغم من التصميم القديم ، متطور إلى حد ما. بدون مهارات البرمجة الخاصة ، يمكنك رسم واجهة العمل بسرعة. لا تتناول المقالة جميع الكتل الرسومية ، والتي يوجد بها الكثير: الأنابيب المتحركة ، الأسطوانات ، الرسوم البيانية ، مفاتيح التبديل. من خارج منطقة الجزاء يدعم العديد من وحدات التحكم الصناعية الشعبية ، ويحتوي على وصلات قاعدة البيانات.

مراجع


يمكن تنزيل بيئة تطوير WebAccess / HMI Designer ووقت التشغيل من هنا

مصادر مشروع لوحة التحكم Habrom

Source: https://habr.com/ru/post/ar449408/


All Articles