กลับไปหน้าบทความ

อ่าน 3 นาที

อินเทอร์เฟซจำลองการทำงาน

อินเทอร์เฟซจำลองการทำงาน (Functional Mock-up InterfaceหรือFMI ) กำหนดอินเทอร์เฟซ มาตรฐาน ที่จะใช้ในการจำลองด้วยคอมพิวเตอร์เพื่อพัฒนาระบบไซเบอร์-กายภาพ ที่ ซับซ้อน

อินเทอร์เฟซจำลองการทำงาน

อินเทอร์เฟซจำลองการทำงาน
คำย่อเอฟเอ็มไอ
สถานะที่ตีพิมพ์
ปีเริ่มต้น2010
เวอร์ชั่นล่าสุด3.0.2 [ 1 ] 27 พฤศจิกายน 2024 ( 27 พฤศจิกายน 2024 )
องค์กรโครงการสมาคมโมเดลลิกา (MAP)
มาตรฐานที่เกี่ยวข้องการจำลองร่วม
โดเมนการจำลองด้วยคอมพิวเตอร์
ใบอนุญาตซีซี บีวาย-เอสเอ-4.0
เว็บไซต์เว็บไซต์ FMI

อินเทอร์เฟซจำลองการทำงาน (Functional Mock-up InterfaceหรือFMI ) กำหนดอินเทอร์เฟซ มาตรฐาน ที่จะใช้ในการจำลองด้วยคอมพิวเตอร์เพื่อพัฒนาระบบไซเบอร์-กายภาพ ที่ ซับซ้อน

วิสัยทัศน์ของ FMI คือการสนับสนุนแนวทางนี้: หากผลิตภัณฑ์จริงต้องประกอบขึ้นจากชิ้นส่วนจำนวนมากที่ทำงานร่วมกันอย่างซับซ้อน โดยแต่ละชิ้นส่วนถูกควบคุมด้วยชุดกฎทางฟิสิกส์ ที่ซับซ้อน ก็ควรเป็นไปได้ที่จะสร้างผลิตภัณฑ์เสมือนจริงที่สามารถประกอบขึ้นจากชุดแบบจำลอง ซึ่งแต่ละแบบจำลองแสดงถึงการรวมกันของชิ้นส่วน โดยแต่ละแบบจำลองเป็นทั้งแบบจำลองของกฎทางฟิสิกส์และแบบจำลองของระบบควบคุม (โดยใช้อุปกรณ์อิเล็กทรอนิกส์ระบบไฮดรอลิกและซอฟต์แวร์ ดิจิทัล ) ที่ประกอบขึ้นในรูปแบบดิจิทัล มาตรฐาน FMI จึงเป็นเครื่องมือสำหรับการพัฒนาแบบจำลองของระบบ และใช้สำหรับการออกแบบฟังก์ชันที่ขับเคลื่อนด้วยอุปกรณ์อิเล็กทรอนิกส์ภายในยานพาหนะ (เช่น ตัวควบคุม ESP ระบบความปลอดภัยเชิงรุก ตัวควบคุมการเผาไหม้) กิจกรรมต่างๆ ตั้งแต่การสร้างแบบจำลองระบบ การจำลอง การตรวจสอบความถูกต้อง และการทดสอบ สามารถครอบคลุมได้ด้วยแนวทางที่อิงตาม FMI

ในการสร้างมาตรฐาน FMI นั้น บริษัทซอฟต์แวร์และศูนย์วิจัยจำนวนมากได้ร่วมมือกันในโครงการที่จัดตั้งขึ้นผ่านกลุ่มพันธมิตรยุโรป ซึ่งดำเนินการโดยDassault Systèmesภายใต้ชื่อMODELISARโครงการ MODELISAR เริ่มต้นในปี 2008 เพื่อกำหนดข้อกำหนดของ FMI ดำเนินการศึกษาด้านเทคโนโลยี พิสูจน์แนวคิดของ FMI ผ่านกรณีการใช้งานที่จัดทำโดยพันธมิตรในกลุ่มพันธมิตร และช่วยให้ผู้จำหน่ายเครื่องมือสามารถสร้างต้นแบบขั้นสูง หรือในบางกรณีอาจถึงขั้นสร้างผลิตภัณฑ์ได้ การพัฒนาข้อกำหนดของ FMI นั้นได้รับการประสานงานโดยDaimler AGหลังจากสิ้นสุดโครงการ MODELISAR ในปี 2011 FMI จึงได้รับการจัดการและพัฒนาในฐานะโครงการของสมาคม Modelica (MAP )

มาตรฐาน FMI กำหนดประเภทอินเทอร์เฟซสามประเภทสำหรับแง่มุมต่างๆ ของโมเดล:

  • FMI สำหรับการแลกเปลี่ยนโมเดล
  • FMI สำหรับ การ จำลองร่วม
  • FMI สำหรับการดำเนินการตามกำหนดเวลา (ตั้งแต่ FMI เวอร์ชัน 3.0)

ในทางปฏิบัติ การนำ FMI ไปใช้โดยเครื่องมือสร้างแบบจำลองซอฟต์แวร์ช่วยให้สามารถสร้างแบบจำลองการจำลองที่สามารถเชื่อมต่อกันได้ หรือสร้างไลบรารีซอฟต์แวร์ที่เรียกว่า FMU (Functional Mock-up Unit) [ 2 ]

แนวทาง FMI

วิธีการ FMI ทั่วไปมีขั้นตอนดังต่อไปนี้:

  • สภาพแวดล้อมการสร้างแบบจำลองอธิบายระบบย่อยของผลิตภัณฑ์โดยใช้สมการเชิงอนุพันธ์ พีชคณิต และสมการแบบไม่ต่อเนื่อง โดยมีตัวแปรเวลา สถานะ และเหตุการณ์แบบขั้นบันได แบบจำลองเหล่านี้อาจมีขนาดใหญ่สำหรับการใช้งานในการจำลองแบบออฟไลน์หรือออนไลน์ หรือสามารถใช้ในระบบควบคุมแบบฝังตัวได้
  • อีกทางเลือกหนึ่งคือ เครื่องมือทางวิศวกรรมจะกำหนดรหัสควบคุมสำหรับควบคุมระบบยานยนต์
  • เครื่องมือดังกล่าวสร้างและส่งออกส่วนประกอบในรูปแบบ FMU (Functional Mock-up Unit)
  • จากนั้นสามารถนำ FMU เข้าสู่สภาพแวดล้อมอื่นเพื่อเรียกใช้งานได้
  • ด้วยวิธีนี้ FMU หลายตัวสามารถทำงานร่วมกันได้ในระหว่างการทำงานผ่านสภาพแวดล้อมการจำลองร่วม โดยอาศัยคำจำกัดความ FMI ของอินเทอร์เฟซต่างๆ

ใบอนุญาต

ข้อกำหนดของ FMI เผยแพร่ภายใต้ใบอนุญาตโอเพนซอร์ส:

  • ข้อกำหนดเหล่านี้ได้รับอนุญาตภายใต้สัญญาอนุญาต CC BY-SA (Creative Commons Attribution-Sharealike 4.0 )
  • ไฟล์ C-header และ XML-schema ที่แนบมากับเอกสารนี้อยู่ภายใต้ สัญญาอนุญาต BSDโดยมีข้อกำหนดเพิ่มเติมว่า การแก้ไขใดๆ ก็ต้องอยู่ภายใต้สัญญาอนุญาต BSD ด้วยเช่นกัน

สถาปัตยกรรม

แต่ละ FMU (Functional Mock-up Unit) จะถูกแจกจ่ายในไฟล์ zipที่มีนามสกุล ".fmu" ซึ่งประกอบด้วย: [ 2 ]

  • ไฟล์ XML ซึ่งประกอบด้วยข้อมูลต่างๆ รวมถึงคำจำกัดความของตัวแปรที่ใช้โดย FMU;
  • สมการทั้งหมดที่ใช้โดยแบบจำลอง (กำหนดเป็นชุดของ ฟังก์ชัน C );
  • ข้อมูลเพิ่มเติมอื่นๆ เช่น ตารางพารามิเตอร์ ส่วนติดต่อผู้ใช้ เอกสารประกอบ ซึ่งอาจจำเป็นสำหรับแบบจำลอง (เป็นทางเลือก)

ตัวอย่าง

ด้าน ล่าง นี้คือตัวอย่างคำอธิบายแบบจำลอง FMI ที่ออกโดยModelica

<?xml version="1.0" encoding="UTF8"?> <fmiModelDescription fmiVersion= "1.0" modelName= "ModelicaExample" modelIdentifier= "ModelicaExample_Friction" > ... <UnitDefinitions> <BaseUnit unit= "rad" > <DisplayUnitDefinition displayUnit= "deg" gain= "23.26" /> </BaseUnit> </UnitDefinitions> <TypeDefinitions> <Type name= "Modelica.SIunits.AngularVelocity" > <RealType quantity= "AngularVelocity" unit= "rad/s" /> </Type> </TypeDefinitions> <ModelVariables> <ScalarVariable name= "inertia1.J" valueReference= "16777217" description= "Moment of inertia" variability= "parameter" > <Real declaredType= "Modelica.SIunits.Torque" start= "1" /> </ScalarVariable> ... </ModelVariables> </fmiModelDescription>

FMI มักถูกเปรียบเทียบกับSimulink S-Functions เนื่องจากทั้งสองเทคโนโลยีสามารถใช้เพื่อรวมเครื่องมือของบุคคลที่สามเข้าด้วยกันได้ S-Functions ใช้เพื่อระบุ คำอธิบาย ภาษาคอมพิวเตอร์ของระบบไดนามิก โดยจะถูกคอมไพล์เป็นไฟล์ MEX ที่เชื่อมโยงแบบไดนามิกเข้ากับMATLABเมื่อจำเป็น S-Functions ใช้ไวยากรณ์การเรียกที่โต้ตอบกับตัวแก้สมการของ Simulink การโต้ตอบนี้คล้ายกับการโต้ตอบที่เกิดขึ้นระหว่างบล็อกในตัวของ Simulink และตัวแก้สมการ[ 3 ]

ผู้สนับสนุน FMI อธิบายว่าโมเดล FMI มีข้อดีหลายประการเหนือฟังก์ชัน S ของ Simulink: [ 4 ]

  • รูปแบบ S-Functions เป็นกรรมสิทธิ์เฉพาะ ในขณะที่ส คีมา FMI ได้รับอนุญาตภายใต้ใบอนุญาต BSD
  • ส่วนประกอบพื้นฐานของ S-Functions นั้นซับซ้อนกว่า FMI มาก ทำให้การบูรณาการเข้ากับโปรแกรมจำลองอื่นๆ นอกเหนือจาก Simulink นั้นทำได้ยากมาก
  • นอกจากนี้ รูปแบบ S-Functions ยังเป็นรูปแบบเฉพาะสำหรับ Simulink อีกด้วย
  • ฟังก์ชัน S ไม่เหมาะสำหรับระบบฝังตัวเนื่องจากฟังก์ชัน S ใช้หน่วยความจำมากเกินไป
โครงสร้างระบบและการกำหนดพารามิเตอร์
คำย่อเอสเอสพี
สถานะที่ตีพิมพ์
เวอร์ชั่นล่าสุด2.0 [ 5 ]
องค์กรโครงการสมาคมโมเดลลิกา (MAP)
มาตรฐานที่เกี่ยวข้องการจำลองร่วม
โดเมนการจำลองด้วยคอมพิวเตอร์
ใบอนุญาตซีซี บีวาย-เอสเอ-4.0
เว็บไซต์เว็บไซต์ SSP

โครงสร้างระบบและการกำหนดพารามิเตอร์ (SSP)

โครงสร้างระบบและการกำหนดพารามิเตอร์ ( SSP ) [ 6 ]เป็นมาตรฐานเสริมของ FMI ที่กำหนดรูปแบบไฟล์แบบเปิดมาตรฐานเพื่ออธิบายระบบที่ซับซ้อนและมีลำดับชั้น (ทางเทคนิค) ซึ่งสามารถจำลองได้ ไฟล์ SSP ประกอบด้วยคำจำกัดความสำหรับสถาปัตยกรรมระบบ อินเทอร์เฟซขององค์ประกอบระบบ และการเชื่อมต่อและการกำหนดพารามิเตอร์ จุดมุ่งหมายของ SSP คือการทำให้การแลกเปลี่ยนและการบูรณาการองค์ประกอบระบบที่ใช้ในการ พัฒนาแบบกระจายของระบบที่จะจำลองโดยใช้เครื่องมือที่หลากหลายนั้นง่ายขึ้น [ 7 ]

SSP กำลังได้รับการพัฒนาในฐานะโครงการของสมาคม Modelica และอิงตามข้อกำหนด FMI FMI ช่วยให้สามารถแลกเปลี่ยนส่วนประกอบการจำลองแต่ละส่วนได้ ในขณะที่ SSP ช่วยให้สามารถแลกเปลี่ยนระบบการจำลองที่สมบูรณ์ รวมถึงรูปแบบต่างๆ และการกำหนดพารามิเตอร์ได้ ส่วนประกอบการจำลองของระบบการจำลองที่อธิบายไว้ใน SSP ยังสามารถเป็นอิสระจาก FMI และสามารถแมปไปยังการใช้งานอื่นๆ ได้ด้วย

SSP สามารถขยายเพื่อรองรับข้อกำหนดเฉพาะหรือส่วนขยายเฉพาะด้านได้ เช่น OSI, การจัดทำเอกสารข้อกำหนด, การตรวจสอบย้อนกลับ หรือขั้นตอนกระบวนการ เป็นต้น SSP เปิดกว้างในส่วนของรูปแบบส่วนประกอบ แม้ว่าจะอิงตาม FMI แต่ก็สามารถใช้กับข้อกำหนดส่วนประกอบในรูปแบบอื่น ๆ ได้เช่นกัน

มาตรฐานและข้อแนะนำที่เกี่ยวข้อง

ในเดือนพฤษภาคม พ.ศ. 2557 กลุ่มโครงการ Smart Systems Engineering (SmartSE) ของ สมาคม ProSTEP iViPได้เผยแพร่คำแนะนำ PSI 11 สำหรับการแลกเปลี่ยนแบบจำลองพฤติกรรมข้ามบริษัท[ 8 ]โดย FMI เป็นพื้นฐานทางเทคโนโลยี PSI 11 ระบุสถานการณ์การโต้ตอบ กรณีการใช้งาน กระบวนการอ้างอิง และแม่แบบ ซึ่งจะช่วยให้การประยุกต์ใช้ในอุตสาหกรรมง่ายขึ้น ในช่วงปลายปี พ.ศ. 2559 กลุ่มได้เผยแพร่ภาพยนตร์ซึ่งเน้นถึงประโยชน์ทางอุตสาหกรรม[ 9 ]

ดูเพิ่มเติม

  • เว็บไซต์หลักของ FMI
  • เว็บไซต์หลักของ SSP
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Functional_Mock-up_Interface&oldid=1311859242 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ อินเทอร์เฟซจำลองการทำงาน

อินเทอร์เฟซจำลองการทำงาน (Functional Mock-up InterfaceหรือFMI ) กำหนดอินเทอร์เฟซ มาตรฐาน ที่จะใช้ในการจำลองด้วยคอมพิวเตอร์เพื่อพัฒนาระบบไซเบอร์-กายภาพ ที่ ซับซ้อน

ใบอนุญาต

ข้อกำหนดของ FMI เผยแพร่ภายใต้ใบอนุญาตโอเพนซอร์ส:

สถาปัตยกรรม

แต่ละ FMU (Functional Mock-up Unit) จะถูกแจกจ่ายใน ไฟล์ zip ที่มีนามสกุล ".fmu" ซึ่งประกอบด้วย: [ 2 ]

ตัวอย่าง

ด้าน ล่าง นี้คือตัวอย่างคำอธิบายแบบจำลอง FMI ที่ออกโดย Modelica