في هذه المقالة أريد أن أشارك تجربتي في استخدام أنظمة المصدر المفتوح Zabbix و Grafana لتصور عمل خطوط الإنتاج. يمكن أن تكون المعلومات مفيدة لأولئك الذين يبحثون عن طريقة سريعة لعرض أو تحليل البيانات المجمعة بصريًا في الأتمتة الصناعية أو مشاريع إنترنت الأشياء. المقالة ليست دليلاً مفصلاً ، بل هي مفهوم نظام مراقبة يعتمد على برنامج مفتوح المصدر لمؤسسة تصنيع.
أدوات
Zabbix - لقد استخدمناه لفترة طويلة لمراقبة البنية التحتية لتكنولوجيا المعلومات في المصنع. اتضح أن النظام مريح للغاية ومتعدد الاستخدامات لدرجة أننا بدأنا في إدخال البيانات من خطوط الإنتاج وأجهزة الاستشعار وأجهزة التحكم فيه. سمح لنا ذلك بجمع جميع بيانات المقاييس في مكان واحد ، لعمل رسوم بيانية بسيطة لاستهلاك الموارد وأداء المعدات ، لكننا افتقرنا حقًا إلى التحليلات والرسوم البيانية الجميلة.
Grafana هي أداة قوية للتحليلات وتصور البيانات. يسمح لك عدد كبير من المكونات الإضافية بجمع البيانات من مصادر مختلفة (zabbix ، clickhouse ، influxDB) ، ومعالجتها على الفور (اقرأ متوسط القيمة ، والكمية ، والفرق ، وما إلى ذلك) ورسم جميع أنواع الرسوم البيانية (من الخطوط البسيطة ، وعدادات السرعة ، والجداول إلى الرسوم البيانية المعقدة) ).
Draw.io هي خدمة تتيح لك الرسم من مخطط كتلة بسيط إلى مخطط طابق في محرر عبر الإنترنت. هناك العديد من القوالب الجاهزة والأشياء المرسومة. يمكن تصدير البيانات بجميع تنسيقات الرسوم الرئيسية أو xml.
ضع كل شيء معا
هناك العديد من المقالات حول كيفية تثبيت وتكوين Grafana و Zabbix ، وسأخبرك بالنقاط الرئيسية للتكوين.
على خادم Zabbix ، يتم إنشاء "مضيف" يمتلك "العناصر" (العنصر) بمقاييس من أجهزة الاستشعار الخاصة بنا. يُنصح بالتفكير في أسماء العقد وعناصر البيانات مقدمًا وجعلها منظمة قدر الإمكان ، حيث سنشير إليها من grafana من خلال التعبيرات العادية. هذا الأسلوب مناسب لأنه يمكنك الحصول على بيانات من مجموعة عناصر بطلب واحد.
لتكوين برنامج grafana ، ستحتاج إلى تثبيت مكونات إضافية:
- Zabbix by Alexander Zobnin (alexanderzobnin-zabbix-app) – zabbix
- natel-discrete-panel –
- pierosavi-imageit-panel –
- agenty-flowcharting-panel – draw.io
, Configuration\Data sources\Zabbix. api zabbix , http://zabbix.local/zabbix/api_jsonrpc.php, . , api: zabbix API version: 5.0.1
Dashboard
.
natel-discrete-panel
( = 1, =0). discrete , : , / % .
, . , . , , ( «1», «ON»)
pierosavi-imageit-panel
Imageit , . url sensor. .
agenty-flowcharting-panel
FlowCharting , . , ( , , ).
, zabbix. , . — , , . Item : «/(^ 1)|()|()/» — : , « 1» «» «»
, . , (), /. : delta, , /. 0.06 /. , (setAlias) .
delta
: - ( = ). " 1 — 1 ()". : delta ( ), «+1» , «-1» «0» . 1 . - .
-
«Edit Draw», , . . , – .
Draw.io
, .
() :
- Options — (Rule name), , (Apply to metrics). (Aggregation) , Last — , , avg — , .
- Thresholds — , , . «0» — «Ok» , «>1» Critical .
- Color/Tooltip Mappings» «Label/Text Mappings» — . , – . .
flowcharting , :
- /
- - ()
. , . , – .
لقد أحببت حقًا حزمة Zabbix + Grafana وأوصي بالاهتمام بها إذا كنت بحاجة إلى معالجة البيانات بسرعة من وحدات التحكم أو أجهزة الاستشعار دون برمجة أو تنفيذ منتجات تجارية معقدة. بالطبع ، لن يحل هذا محل أنظمة SCADA الاحترافية ، لكنه سيكون كافياً كأداة للمراقبة المركزية للإنتاج بأكمله.