Top Banner
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com UEISIM Desktop
23
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

UEISIM Desktop

Page 2: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

OverviewThe UEISIM is a Linux based system that

runs Simulink models.

UEISIM Desktop allows remote monitoring and parameter tuning while a model is running.

Page 3: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

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.

Page 4: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

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

Page 5: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

UEISIM

Simulation executable

LibSharedData

Client application

PC #2

Client Application

UeiSimTarget.dll

PC #1

Web browser

LibSharedData

Shared Data protocol

Page 6: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

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

Page 7: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

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”

Page 8: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

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:

Page 9: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

Data hierarchy• This naming convention allows a hierarchical

view of the model signals and parameters

Page 10: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

Shared Data Client Shared Data client is an application that provides a

quick and easy way to monitor a model.

Page 11: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

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

Page 12: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

C# client API 1/4Create a client objectUeiSimTargetClient client = new UeiSimTargetClient();

Open communication with UEISIMclient.Open("192.168.100.2");

Load and Start Modelclient.LoadApp("/tmp/test_ai_rt2“, 2345);

if(client.IsAppRunning())

{

client.StopApp(); // Stop model if already running

}

client.StartApp();

Page 13: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

C# client API 2/4Enumerate signalsfor(int sigIdx=0; sigIdx< client.GetNumSignals(); sigIdx++)

{

string sigName = client.GetSignalName(sigIdx);

double[] sigVals = client.GetSignalValue(sigIdx, client.GetSignalWidth(sigIdx));

Console.Write("{0} = {1}", sigName, sigVals);

}

Page 14: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

C# client API 3/4Enumerate and tune parametersfor(int prmIdx=0; prmIdx=0<client.GetNumParams(); prmIdx=0 ++)

{

string prmName = 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);

}

Page 15: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

C# client API 4/4Display timing statsConsole.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 channelclient.Close();

Page 16: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

LabVIEW API 1/4Open communication and start application

Page 17: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

LabVIEW API 2/4Enumerate and monitor signals values

Page 18: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

LabVIEW API 3/4Enumerate and tune parameters

Page 19: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

LabVIEW API 4/4Display timing stats

Page 20: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

LabVIEW client example

Page 21: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

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

Page 22: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

HTML5 client – default page

Page 23: © 2010 UEI, Inc. All Rights Reserved  UEISIM Desktop.

© 2010 UEI, Inc. All Rights Reservedwww.UEIDAQ.com

HTML5 client – custom page