الغرض من المقال: عرض توضيحي لتنفيذ حل تصور بيانات رخيص يمكن استخدامه في أنظمة الإرسال.
كيف بدأت.
في أحد مرافق الإنتاج في قطاع الطاقة ، تمت أتمتة حوالي 20 وحدة بها أكثر من 10000 إشارة ؛ كان من الضروري تطوير نظام إرسال لمراقبة بيانات APCS.
في هذا الصدد ، كنت مهتمًا بتنفيذ حل تكنولوجيا المعلومات لتصور البيانات في شكل رسوم بيانية وإطارات فيديو (الرسوم البيانية للذاكرة). يجب أن يكون الحل قابلاً للتطوير ، ومتعدد الأنظمة الأساسية ، وسهل الاستخدام ، وقائم على الويب. وهكذا ، فإن الوظيفة - الرسوم البيانية ذاكري ، والرسومات. اذهب …
الرسوم البيانية ذاكري
لتطوير الرسوم البيانية ذاكري ، مطلوب محرر رسومي.
يعد تطويرك أمرًا صعبًا ومكلفًا ، لذلك تم اختيار Visio.
لماذا Visio؟
1 - يدعم الرسومات المتجهة ؛
2 - يحتوي على محرر vba مدمج ؛
3 - يسمح لك بإنشاء مكتبتك الخاصة من العناصر الرسومية ؛
4 - لديه القدرة على إضافة مجموعة عشوائية من الخصائص إلى كائن رسومي (انظر الشكل 1)
5- محرر مشترك ، العديد من المستخدمين.
لذلك ، أصبح Visio المحرر المثالي لأغراضي.
رسم بياني 1.
الرسوم البيانية
كان الأمر أسهل هنا ، أولاً نظرنا في مكتبة Highcharts ، ولكن نظرًا لأنه يتم دفعها ،
تم الاختيار لصالح d3.js.
يعد d3.js إطارًا رائعًا للغاية ، وميزات رائعة ، ويصعب تعلمه بعض الشيء ، ولكن هناك العديد من الأمثلة على الإنترنت.
يتيح لك نموذج الويب "المخططات" عرض المخططات في نطاقات زمنية مختلفة وتنسيق المستويات وتعيين المقاييس والإمكانيات الأخرى.
منصة تطوير التطبيقات
لتطوير تطبيق ويب ، تم اختيار منصة برمجة الويب ASP.NET ، وإطار عمل ASP.NET MVC ، وبعد ذلك تم نقل التطبيق إلى ASP.NET Core MVC.
كيف يعمل التطبيق
إذن كيف يعمل التطبيق؟
يستقبل التطبيق البيانات من خلال واجهة web api ويعرضها للمستخدم في شكل رسوم بيانية ومخططات ذاكري.
يمكن أن يعمل التطبيق بطريقتين.
الخيار الأول:
الشكل 2.
كما ذكرنا سابقًا ، يقوم التطبيق بتنفيذ واجهة برمجة تطبيقات الويب التي يتلقى من خلالها البيانات ، وتشارك خدمات البيانات (وحدات البرامج) بشكل مباشر في تلقي البيانات من المصادر. في الإصدار الأول من العمل ، يمكنك أن ترى أن الخدمات يتم تنفيذها داخل التطبيق ، وهذا مناسب ، على سبيل المثال ، عندما يكون التطبيق ومصادر البيانات على نفس الشبكة.
الخيار الثاني:
الشكل 3
في الإصدار الثاني ، الخدمات عبارة عن وحدات برامج منفصلة يمكن للتطبيق الوصول إليها للحصول على البيانات. يمكن استخدام الخيار الثاني عندما تكون المصادر والتطبيق على شبكات مختلفة ، على سبيل المثال ، يتم نشر التطبيق على استضافة.
الهدف الرئيسي في التطبيق هو العلامة - متغير ، قيمة مُقاسة لعملية تكنولوجية. تقوم مجموعة من الأساليب (على سبيل المثال GetTagOnline و GetTagArchive وما إلى ذلك) للعمل مع العلامات بتنفيذ واجهة واجهة برمجة تطبيقات الويب.
لذلك ، يأخذ التطبيق البيانات من الخدمات ، ويحمل الرسم التخطيطي ذاكري ، الذي طوره المستخدم في Visio ، ويعرض هذه البيانات.
الرسوم المتحركة للكائنات الرسومية على مخطط ذاكري
يتم استخدام جافا سكريبت لتحريك العناصر الرسومية لنظام ذاكري. لتسهيل قيام المستخدم بتطوير وظائف الرسوم المتحركة ، يحتوي التطبيق على مكتبة صغيرة تتضمن ، على سبيل المثال ، الوظائف التالية: printf (نص) ، SetText (كائن ، فهرس ، قيمة) ، SetBackColor (كائن ، فهرس ، قيمة) ، SetVisible (كائن ، القيمة) ، GetTag (اسم العلامة) ، إلخ.
على سبيل المثال ، وظيفة عرض القيمة المقاسة:
Function Field (Object, Property) {
var Tag = GetTag(Property.Tag1);
SetText(Object,1,Tag.Value);
}
الإدارة والتكوين.
للتكوين ، يتم استخدام ملفات التكوين ، حيث ينشئ المستخدم ملفات تعريف ، ويضيف خدمات ، وما إلى ذلك. هذا التطبيق عبارة عن وحدة تحكم ، ويمكن أن يعمل كخدمة مشتركة.
يستخدم التطبيق خادم الويب المدمج Kestrel عبر الأنظمة الأساسية.
المادة تسمى "مراقبة البيانات من عملية نظام التحكم الآلي وليس فقط". يمكن للتطبيق أن يعرض ، من حيث المبدأ ، أي بيانات يمكن تمثيلها في شكل رسم بياني ، رسم بياني ، إلخ.
أشكركم جميعًا على القراءة ، أنا مهتم بالنقد وأي ملاحظات. شكر.
هذا كل شيء ، فيما يلي بعض الصور للتطبيق.
مثال على مخطط ذاكري (تم إنشاؤه من ملف eplan -> autocad -> visio.):
الرسوم البيانية:
