1 / 23

UEISIM Desktop

UEISIM Desktop. Overview. The UEISIM is a Linux based system that runs S imulink models. UEISIM Desktop allows remote monitoring and parameter tuning while a model is running . R emote monitoring/Parameter tuning. External mode :

sailor
Download Presentation

UEISIM Desktop

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UEISIM Desktop

  2. Overview • The UEISIM is a Linux based system that runs Simulink models. • UEISIM Desktop allows remote monitoring and parameter tuning while a model is running.

  3. Remote monitoring/Parameter tuning • External mode: • Use Simulink itself as client to connect to the UEISIM target. • UEISIM Desktop: • A client written in C#, C/C++ or LabVIEW can display the model’s signals and parameters without Simulink being installed. • Signals and parameters are also accessible via a web page.

  4. Extra features (UEISIM desktop only) • Remotely start/stop simulation • Host PC client can start or stop simulations remotely • Timing statistics: • Average simulation step execution time • Minimum step execution time • Maximum step execution time • Model execution time

  5. Shared Data protocol UEISIM Simulation executable Client application LibSharedData LibSharedData PC #1 PC #2 Web browser UeiSimTarget.dll Client Application

  6. Shared data protocol • Implements a simple message based protocol (set/get variable) using JSON or binary data representation • Local processes communicate over UNIX sockets • Remote processes communicate over TCP/IP sockets • Web browser communicate over Web Sockets

  7. Signal Monitoring • A model automatically publishes all “exported” signals under the name: • /model_name/block_name/signal_name • To export a signal, right-click and set “Storage Class” to “Exported Global”

  8. Parameter tuning • A model also publishes all tunable parameters under the name: • /model_name/block_name/param_name • For example the constant block “value” parameter is tunable:

  9. Data hierarchy • This naming convention allows a hierarchical view of the model signals and parameters

  10. Shared Data Client • Shared Data client is an application that provides a quick and easy way to monitor a model.

  11. Client API • UEISIM Desktop API supports C/C++, .NET (C#, VB), LabVIEW and Javascript • The API provides the following services: • Start/Stop Simulation • Enumerate and read signals • Enumerate, read and write parameters • Reboot or shutdown UEISIM • Read timing statistics and CPU load

  12. C# client API 1/4 • Create a client object • UeiSimTargetClientclient= new UeiSimTargetClient(); • Open communication with UEISIM • client.Open("192.168.100.2"); • Load and Start Model • client.LoadApp("/tmp/test_ai_rt2“, 2345); • if(client.IsAppRunning()) • { • client.StopApp(); // Stop model if already running • } • client.StartApp();

  13. C# client API 2/4 • Enumerate signals • for(intsigIdx=0; sigIdx< client.GetNumSignals(); sigIdx++) • { • stringsigName = client.GetSignalName(sigIdx); • double[] sigVals = client.GetSignalValue(sigIdx,client.GetSignalWidth(sigIdx)); • Console.Write("{0} = {1}", sigName, sigVals); • }

  14. C# client API 3/4 • Enumerate and tune parameters • for(intprmIdx=0; prmIdx=0<client.GetNumParams(); prmIdx=0 ++) • { • stringprmName= client.GetParamName(prmIdx); • double[] prmVals= client.GetParamValue(prmIdx,client.GetParamWidth(prmIdx)); • Console.Write("{0} = {1}", prmName, prmVals); • // Tune parameter • prmVals[0] = 102.90; • client.SetParamValue(prmIdx, prmVals); • }

  15. C# client API 4/4 • Display timing stats • Console.WriteLine("Model ran for {0} secs", client.GetExecTime()); • Console.WriteLine("Min TET = {0}", client.GetMinTET()); • Console.WriteLine("Max TET = {0}", client.GetMaxTET()); • Console.WriteLine("Avg TET = {0}", client.GetAvgTET()); • Close communication channel • client.Close();

  16. LabVIEW API 1/4 • Open communication and start application

  17. LabVIEW API 2/4 • Enumerate and monitor signals values

  18. LabVIEW API 3/4 • Enumerate and tune parameters

  19. LabVIEW API 4/4 • Display timing stats

  20. LabVIEW client example

  21. HTML5 client • UEISIM Desktop web interface is built on top of web sockets • Web sockets are part of HTML5. Supported in the following browsers: • Google Chrome • Firefox • Safari for MacOS and iOS • Android web browser • Internet Explorer 10

  22. HTML5 client – default page

  23. HTML5 client – custom page

More Related