أنظمة المحاكاة الموزعة



لتكون قادرة على الجمع بين المحاكاة الفردية في نظام محاكاة موزعة ، يتم استخدام المعايير والتقنيات التالية حاليًا:



  • IEEE1516 (يستبدل أيضًا HLA و DIS)
  • OPC ؛
  • CAPE-OPEN ومعايير "الصناعة" الأخرى.


الأكثر أهمية هو معيار IEEE 1516 ، لأن هذه المواصفة مرتبطة مباشرة بأجهزة المحاكاة وتهدف إلى بناء أنظمة محاكاة موزعة (البروتوكولات ، طرق التحكم والملاحظات الموصى بها ، بنية النظام ، إلخ).



تعد عائلة تقنيات برامج OPC (OLE for Process Control) التي توفر واجهة واحدة لإدارة كائنات الأتمتة والعمليات التكنولوجية ذات أهمية كبيرة أيضًا ، ولكن فقط إذا كان التكامل مع كائنات الأتمتة والعمليات التكنولوجية مطلوبًا. يتم استخدام معيار CAPE-OPEN لتفاعل المحاكيات المصممة خصيصًا للصناعات الكيميائية.



قدم معهد المهندسين الكهربائيين والإلكترونيين (IEEE) مساهمات كبيرة في توحيد النمذجة والمحاكاة. النمذجة الموزعة (محاكاة) هي تقنية لتبادل البيانات بين المحاكيات عبر شبكات الكمبيوتر المحلية أو العالمية. وهذا يسمح لأجهزة المحاكاة الفردية بالعمل معًا كنموذج واحد للمحاكاة أو نظام محاكاة. يعتمد مفهوم النمذجة الموزعة على استخدام بنية عالية المستوى (HLA). من الناحية العملية ، يحدد معيار IEEE 1516 البنية باستخدام واجهة برمجة تطبيقات واحدة (واجهة برمجة التطبيقات). المسلمات الأولية للمعيار هي:



  1. لا يمكن لنماذج المحاكاة البسيطة "المتجانسة" تلبية احتياجات المستخدمين المحترفين ؛
  2. جميع التطبيقات الممكنة للمحاكاة غير معروفة مسبقًا ؛
  3. يجب توفير إمكانية الجمع التعسفي لأجهزة المحاكاة الفردية في أنظمة محاكاة معقدة ؛
  4. يجب أن تكون بنية النمذجة الموزعة مفتوحة قدر الإمكان لتقنيات النمذجة والمحاكاة في المستقبل.


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



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



لإنشاء أنظمة محاكاة معقدة ، يمكنك الجمع بين استخدام IEEE 1516 و OPC ، مما يجعل من الممكن استخدام المعدات الحقيقية وأنظمة SCADA (الشكل) ، والتي يمكن أن تكون مفيدة جدًا في العديد من المهام.



يمكن تنفيذ الاتصال بين معايير IEEE 1516 (وهو أساسي لأجهزة المحاكاة) و OPC (المستخدمة في أنظمة SCADA) إما مباشرة في جهاز المحاكاة أو من خلال وسيط. دور مثل هذا الوسيط ، على سبيل المثال ، بالنسبة لي ، يتم تنفيذه بواسطة حزمة National Instruments LabView. يمكن لـ LabView دعم النماذج الرياضية من أي تعقيد ، ولديه دعم OPC مدمج ، ويمكن أن يعمل كخادم OPC ، ولديه دعم فعال للتفاعل مع بطاقات الإدخال / الإخراج المختلفة ، مما يسمح لك باستخدام المعدات اللازمة مباشرة ، ولكن للأسف ، ليس لديه وسائل للتفاعل مع IEEE 1516 ، الأمر الذي يتطلب كتابة مكونات البرنامج المناسبة.



نتيجة لاستخدام IEEE 1516 و OPC ، من الممكن إنشاء أنظمة محاكاة موزعة معقدة نسبيًا ، بما في ذلك العديد من أجهزة المحاكاة ، والمعدات الحقيقية ، وأنظمة SCADA ، وما إلى ذلك. إن



مسألة اعتماد جهاز محاكاة أو محاكي فيما يتعلق بدعم معيار IEEE 1516 يستحق دراسة منفصلة . الاتحادات في مصطلحات IEEE 1516) ومكتبات البرامج التي تنفذ التفاعل. لكن الغرض من هذه الشهادة ليس تحديد العيوب الوظيفية للبرنامج (فقط شهادة دعم لمعيار IEEE 1516).



المنظمات القادرة على التصديق:



  • الولايات المتحدة الأمريكية. وزارة الدفاع (DoD) مكتب تنسيق النماذج والمحاكاة (M&S CO). الموقع الإلكتروني: www.msco.mil
  • . ONERA. (Office National d’Etudes et Recherches Aérospatiales) is the French national aerospace research center. : www.onera.fr
  • . Pitch Technologies AB. : www.pitch.se














دعونا نأخذ في الاعتبار قضايا بناء أنظمة المحاكاة الموزعة على أساس معيار IEEE 1516. المصطلحات الأساسية المستخدمة في دعم المعلومات تتوافق مع مصطلحات أنظمة المحاكاة التفاعلية الموزعة IEEE 1516 - فهي اتحاد ، فدرالية ، كائن ، سمة ، وتفاعل. يتم تعريف مفهوم الكائن كنموذج لظاهرة منفصلة في العالم الحقيقي. لا تحتوي الكائنات على طرق ، بل لها حالات فقط (فقط بنية بيانات بدون وظائف لمعالجتها). تتميز حالة الكائنات بمجموعة ثابتة من السمات - قيم دقيقة يمكن أن تتغير بمرور الوقت. يتميز كل كائن في أي وقت بحالته ، والتي يتم تحديدها من خلال مجموعة من القيم الحالية لسماته. الاتحادات هي أوصاف رياضية لسلوك الأشياء - نماذج المحاكاة ،معرّف بواسطة البرنامج (يتم تنفيذه بلغة التوجيه) أو ممثلة بقيم أجهزة الاستشعار. في الواقع ، يمكن أن يكون الفدراليون مقلدين ومعدات حقيقية أو برامج خاصة. الشرط الوحيد هو توفير واجهة موحدة للاتصال. يمكن للاتحاد التعامل مع الكائنات من خلال تغيير (تحديث) أو الحصول على (عرض) قيم سماتها. على وجه الخصوص ، مستخدمي الانتحال هم أيضا اتحادات. مجموع جميع الاتحادات المشاركة في المحاكاة يشكل اتحاد.الشرط الوحيد هو توفير واجهة موحدة للاتصال. يمكن للاتحاد التعامل مع الكائنات من خلال تغيير (تحديث) أو الحصول على (عرض) قيم سماتها. على وجه الخصوص ، مستخدمي الانتحال هم أيضا اتحادات. مجموع جميع الاتحادات المشاركة في المحاكاة يشكل اتحاد.الشرط الوحيد هو توفير واجهة موحدة للاتصال. يمكن للاتحاد التعامل مع الكائنات من خلال تغيير (تحديث) أو الحصول على (عرض) قيم سماتها. على وجه الخصوص ، مستخدمي الانتحال هم أيضا اتحادات. مجموع جميع الاتحادات المشاركة في المحاكاة يشكل اتحاد.



يُعرَّف مصطلح "التفاعل" بأنه رسالة (حدث) فورية غير مرتبطة بمثيل كائن محدد أو اتحاد ، تحدث على مستوى الاتحاد (أي أنه من المستحيل تحديد المرسل). التفاعلات ، على عكس حالات الأشياء ، لا يتم الحفاظ عليها باستمرار في النظام ، ولكنها ذات طبيعة فورية. مثال على ذلك هو بث رسالة نصية أحادية الاتجاه لجميع أعضاء الاتحاد المهتمين. يظهر مخطط الاتحاد الهرمي (HLA / IEEE 1516) في الشكل



يتم تنفيذ تفاعل الاتحادات باستخدام آلية تفاعل عامة (RTI) ، يتم تنفيذها كاشتراك. يجب على الاتحاد المهتم بالحصول على سمات وتفاعلات معينة لاتحاد آخر الاشتراك فيها من خلال RTI. يظهر آلية طلب وتقديم وتغيير قيم السمات في الشكل. يوضح الشكل آلية تنظيم المحاكاة والتعاون الموزع.





صورة. مخطط الاتحاد الهرمي



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





. (RTI)





. (RTI)





.



عند إنشاء أنظمة محاكاة موزعة تتفاعل من خلال RTI ، من الضروري مراعاة الميزات الهامة التالية. يجب توثيق جميع عناصر الاتحادات والاتحادات في ملفات محددة (تُستخدم ملفات FOM (نموذج كائن الاتحاد) لوصف الاتحاد) ، ويتم وصف الاتحادات في ملفات SOM (نموذج كائن المحاكاة). يتم تخزين جميع البيانات في الاتحادات فقط ، ولا يخزن RTI أي بيانات ، ولكنه ينقلها فقط. يسمح HLA لاتحاد واحد فقط بتغيير قيمة السمة في أي وقت معين (هناك آلية إدارة حقوق خاصة لنقل الحقوق). يمكن للاتحادات إدارة الوقت المحلي ، وتستخدم HLA العديد من آليات إدارة الوقت الداخلية (التزامن).



بشكل عام ، يعالج معيار IEEE 1516 عددًا كبيرًا من المشكلات المتعلقة بإنشاء أنظمة محاكاة موزعة ، مثل الحفاظ على حالة الاتحاد ، وتجديد الولاية ، وآليات المزامنة الزمنية المختلفة ، ومجالات تفاعل الاتحاد ، إلخ. نظرًا للحجم الكبير للمعيار نفسه ، وعلاوة على ذلك ، حجم رمز البرنامج لإثبات جميع الجوانب الموضحة في المعيار ، سيتم توضيح التنفيذ الأساسي للقدرات "الأساسية" أدناه (الشكل).





صورة. IEEE 1516 رسم تخطيطي لكتلة تنفيذ القدرات الأساسية



يرتبط عرض أكثر تفصيلاً للتنفيذ بالحاجة إلى تقديم قائمة كبيرة إلى حد ما بالبرنامج ، ولهذا السبب ، يمكن للقارئ استخدام أمثلة البرامج التي يتم توفيرها مع البرنامج لدعم RTI بشكل مستقل. يتم تضمين أمثلة بسيطة مع العديد من التعليقات في مكتبة مشروع Portico وهي متاحة مجانًا في porticoproject.org . تحتوي جميع التطبيقات التجارية للمعيار تقريبًا على العديد من الأمثلة.



كمثال ، ضع في اعتبارك الاتحاد التالي ، والذي يتكون من اتحادين: سيارة يتم التحكم فيها عن طريق الراديو ولوحة تحكم. افترض أن التحكم يتم عن طريق ضبط سرعة كل محرك من المحركات الأربعة للسيارة وتحويل العجلات الأمامية. الآلة مزودة بجهاز استشعار يحدد المسافة إلى العائق وينقل إشارة إلى لوحة التحكم. لهذا من الضروري تحديد فئتين من الكائنات ، cYpravlenie للوحة التحكم و cDatchik لمستشعر المسافة. سمات فئة cYpravlenie هي wheel1 ، wheel2 ، wheel3 ، wheel4 ، wheel_angle. سمة فئة cDatchik هي المسافة. ما يلي هو ملف وصف الاتحاد ، بتنسيق HLA 1.3 (التفاعلات مقدمة كمثال).



;;  —   (FED )   HLA 1.3

(Fed 
  (Federation Test) 
  (FedVersion v1.3) 
  (Federate "fed" "Public") 
  (Spaces 
	(Space "Geo" 
		(Dimension X) 
		(Dimension Y) 
	) 
  ) 

(Objects 
	(Class cYpravlenie 
		(Attribute wheel1 reliable timestamp) 
		(Attribute wheel2 reliable timestamp) 
		(Attribute wheel3 reliable timestamp) 
		(Attribute wheel4 reliable timestamp) 
		(Attribute wheel_angle reliable timestamp) 
	) 
	(Class cDatchik 
		(Attribute distance reliable timestamp) 
	) 
) 
	 
(Interactions 
	(Class reaction BEST_EFFORT RECEIVE 
	(Sec_Level "Public") 
		(Parameter dx) 
		(Parameter dy) 
		(Parameter dz) 
	) 
) 

)
	


بعد ذلك ، ينشئ المحاكي الذي يمثل عنصر التحكم اتحادًا وكائنًا بناءً على فئة cYpravlenie. يقوم جهاز المحاكاة الذي يمثل السيارة أيضًا بإنشاء اتحاد وكائن بناءً على فئة cDatchik. يشترك الاتحاد أيضًا في التغييرات التي يرغبون فيها ، أي تشترك الآلة المتحدة في استقبال بيانات الكائن من فئة cYpravlenie (أي فئة cYpravlenie) ، والتحكم المتحد في فئة cDatchik. وبالتالي ، تتلقى الآلة تغييرات من لوحة التحكم ، وتتلقى لوحة التحكم بيانات من المستشعر في السيارة.



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





صورة. هيكل الاتحاد



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





صورة. مثال على المرحلة الأولى من تحديد الروابط



في المرحلة التالية ، يتم تحديد العدد المطلوب من أجهزة الكمبيوتر والتوزيع المقابل للاتحادات. على سبيل المثال ، الاتحاد "A" سيعمل على الكمبيوتر "1" ، الاتحادات "B ، C ، D" سيعمل على الكمبيوتر "2".





صورة. توزيع الاتحادات بواسطة الكمبيوتر



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



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



إحصائيات لكل اتحاد على حدة وللإتحاد ككل يوضح عدد وأنواع الاستعلامات المنفذة ويسمح لك بتحديد المشاكل المحتملة أثناء تشغيل النظام.



مثال إحصائي لاتحاد:



RTIA: Statistics (processed messages)
Joined federation as car_federate
Synchronization point announced: ReadyToRun
Achieved sync point: ReadyToRun, waiting for federation...
Federation Synchronized: ReadyToRun
Time Policy Enabled
Published and Subscribed
Add instance object: obj_datchik
Removing temporary file _RTIA_3033_ExampleFederation.fed on resign federation.
Resigned from Federation
Didn't destroy federation, federates still joined
List of federate initiated services 
--------------------------------------------------
1 Message::CLOSE_CONNEXION (MSG#1)
1 Message::DESTROY_FEDERATION_EXECUTION (MSG#3)
1 Message::JOIN_FEDERATION_EXECUTION (MSG#4)
1 Message::RESIGN_FEDERATION_EXECUTION (MSG#5)
1 Message::SYNCHRONIZATION_POINT_ACHIEVED (MSG#10)
1 Message::PUBLISH_OBJECT_CLASS (MSG#28)
1 Message::SUBSCRIBE_OBJECT_CLASS_ATTRIBUTES (MSG#32)
1 Message::SUBSCRIBE_INTERACTION_CLASS (MSG#34)
1 Message::REGISTER_OBJECT_INSTANCE (MSG#40)
1708 Message::UPDATE_ATTRIBUTE_VALUES (MSG#41)
855 Message::TIME_ADVANCE_REQUEST (MSG#91)
3 Message::GET_OBJECT_CLASS_HANDLE (MSG#112)
6 Message::GET_ATTRIBUTE_HANDLE (MSG#114)
1 Message::GET_INTERACTION_CLASS_HANDLE (MSG#116)
120516 Message::TICK_REQUEST (MSG#141)
2564 Message::TICK_REQUEST_NEXT (MSG#142)
List of RTI initiated services 
--------------------------------------------------
1 NetworkMessage::ANNOUNCE_SYNCHRONIZATION_POINT (MSG#13)
1 NetworkMessage::FEDERATION_SYNCHRONIZED (MSG#15)
1 NetworkMessage::DISCOVER_OBJECT (MSG#43)
1711 NetworkMessage::REFLECT_ATTRIBUTE_VALUES (MSG#45)
49 NetworkMessage::GET_FED_FILE (MSG#84)
Number of Federate messages : 125662
Number of RTIG messages : 1763
RTIA: Federate destroyed
TCP Socket 3 : total = 122015 Bytes sent 
TCP Socket 3 : total = 340249 Bytes received
UDP Socket 4 : total = 0 Bytes sent 
UDP Socket 4 : total = 0 Bytes received
	     :
CERTI RTIG up and running ... 
New federation: ExampleFederation 
Looking for FOM file... 
   Trying... open_test.fed --> cannot access. 
   Now trying.../usr/local/share/federations/open_test.fed... opened. 

 TCP Socket  7 : total =    340400 Bytes sent 
 TCP Socket  7 : total =    122015 Bytes received 
 UDP Socket  4 : total =         0 Bytes sent 
 UDP Socket  4 : total =         0 Bytes received 
 TCP Socket  6 : total =    258616 Bytes sent 
 TCP Socket  6 : total =    283044 Bytes received 
 UDP Socket  4 : total =         0 Bytes sent 
 UDP Socket  4 : total =         0 Bytes received 


مزامنة الوقت



كما أظهرت ممارسة تصميم وتنفيذ أنظمة المحاكاة الموزعة ، فإن أصعب القضايا تتعلق بالتحكم في تدفق الوقت (مزامنة الوقت).



عادةً ، عندما تقوم بتعيين كيفية مزامنة الوقت المتحد ، يتم تعيين معلمتين ، TimeRegulating و TimeConstrained. من الناحية العملية ، تؤثر هذه الأوضاع على عملية استقبال الرسائل من الاتحادات الأخرى وترتبط مباشرة بآلية ترتيب الرسائل:

  • من أجل الاستلام (يتم إرسال الرسائل بالترتيب الذي تم استلامها به دون التحكم في الوقت) ؛
  • الأولوية (توجد الرسائل الواردة في قائمة انتظار الأولوية ، ويستخدم طابعها الزمني لتحديد أولوية الرسالة) ؛
  • السببي (يضمن إرسال الرسائل إلى الاتحادات بترتيب يتوافق مع الأحداث السابقة واللاحقة التي تمثلها تلك الرسائل) ؛
  • حسب الطوابع الزمنية (عند استخدام هذه الخدمة ، سيتم إرسال الرسائل إلى الاتحادات بترتيب الطوابع الزمنية الخاصة بهم).


ومن الجدير بالذكر أيضًا أن الاتحادات المختلفة يمكنها استخدام طرق مزامنة مختلفة.



مكتبات البرمجيات لتنفيذ RTI



قائمة بتطبيقات HLA \ IEE1516 المتاحة متاحة على en.wikipedia.org/wiki/Run-Time_Infrastructure . اليوم ، يتوفر عدد كبير من التطبيقات ، سواء التجارية أو غير التجارية. يتم تنفيذ معظم التطبيقات في JAVA و C ++ (هذه هي اللغات المستخدمة في المعيار) ، ولكن هناك أيضًا تطبيقات لـ MatLab و Python (مشروع CERTI) ، وما إلى ذلك.



عند اختيار مكتبة ، يجب إيلاء اهتمام خاص لـ "شهادة" لدعم IEEE 1516. كقاعدة ، جميع التطبيقات التجارية لديها "شهادة" ، تطبيقات مجانية لا (العديد من التطبيقات المجانية تستعد لمثل هذه الشهادة).



جدول المبيعات التجارية:





جدول المبيعات غير التجارية:





أنا شخصياً أستخدم مشروع ONERA CERTI (https://savannah.nongnu.org/projects/certi) لدعم البنية التحتية للتطبيقات الموزعة.



قياسات سرعة تفاعل الاتحادات عبر RTI



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



لتحقيق الحد الأدنى من تأخيرات الوقت ، يجب عليك اختيار الخادم الذي لديه أقل تأخيرات في وقت عبور الحزمة (يمكنك التحقق باستخدام الأمر ping). كمثال ، دعنا نفكر في عمل أحد الأنظمة الموزعة التي تم إنشاؤها في NII EOR من TyumGNGU. يتم استخدام شبكة بسعة 100 ميغابت (تأخير ping <0.231 مللي ثانية) ، ولا يوجد مزامنة للوقت (لتقليل التأخيرات داخل RTI) ، وجهازي كمبيوتر ، يعمل الخادم (rtig) على أحد الأجهزة. معلمات الاتحاد - يحتوي كائنان على 5 سمات (كائن واحد لكل اتحاد / كمبيوتر) ، والتفاعل بين الاتحادات في اتجاهين. نتيجة لمعالجة القياسات ، تم الحصول على اعتماد عدد التفاعلات في الثانية على حجم البيانات المرسلة.



تسمح لنا نتائج هذه القياسات باستخلاص العديد من الاستنتاجات ، على سبيل المثال ، إذا كان يجب أن يعمل المحاكي في "وقت حقيقي" معين ، أي تحديث ، على سبيل المثال ، 60 مرة على الأقل في الثانية ، ثم لتفاعل واحد (لشبكة إيثرنت سريعة) يجب عدم إرسال أكثر من 300 كيلوبايت (إذا كان ، على سبيل المثال ، 5 سمات ، ثم 60 كيلوبايت لكل منها). في الوقت نفسه ، تشير 300 كيلوبايت من البيانات المرسلة 60 مرة في الثانية أيضًا إلى إمكانية استخدام RTI لنقل بيانات الصوت والفيديو بين المحاكيات ، وكذلك للتفاعل مع أجهزة الواقع الافتراضي.



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



استخدام حلول أسرع مثل IpoIB (IP عبر InfiniBand ، RFC 4392) ، 10G Ethernet ، Myrinet-10G ، إلخ. . سيسمح بزيادة الإنتاجية وتقليل وقت الاستجابة بشكل كبير (تسمح الحلول الحالية بإنتاج 30 مليون تفاعل في الثانية أو أكثر).



التفاعل مع الأنظمة الحقيقية



ليس فقط النماذج الرياضية للكائنات ، أي الأنظمة الاصطناعية ، ولكن أيضًا الأنظمة والأجهزة الحقيقية يمكن أن تكون بمثابة اتحادات. الامثله تشمل:



  • ميكروفون يوفر بيانات صوتية ؛
  • كاميرا فيديو توفر بيانات الفيديو ؛
  • أجهزة إدخال / إخراج متنوعة مثل عصا التحكم (الصورة) والطابعات وما إلى ذلك.
  • أجهزة استشعار وآليات تحكم مختلفة متصلة بالكمبيوتر عبر لوحات ADC / DAC ؛
  • المعدات الحقيقية وأنظمة SCADA (الشكل 2.10.1. ، الفصل 1.4.1.) عبر واجهة OPC الصناعية ؛
  • واجهات إلى "سطح المكتب" لنظام تشغيل حقيقي يعمل على كمبيوتر منفصل أو جهاز افتراضي (الشكل) ؛
  • أجهزة الواقع الافتراضي (الفصل 4-5-9) ؛
  • واجهة قاعدة البيانات ، إلخ.


مثل هذه الاحتمالات ذات أهمية كبيرة لأجهزة المحاكاة وأنظمة المحاكاة بشكل عام.



All Articles