It could be :LabVIEWMatlabSoftware written from scratch by a high level programming language (difficult, not reusable, require a professional programmer)Commercial IDE that comes with the controller. (e.g, those come with FPGA, microcontroller boards, etc.)>>restricted to certain applications.
GOLC 2012 - On Standardizing the Management of LabVIEW-based Remote Laboratories by Remote Laboratory Management Systems (RLMSs)
On Standardizing the Managementof LabVIEW-based RemoteLaboratories by Remote LaboratoryManagement Systems (RLMSs)Mohamed Tawfik, Elio Sancristóbal, Manuel CastroSpanish University for Distance Education (UNED)David LoweUniversity of Technology, Sydney (UTS)
Summary A state of art study on the prevailing remote laboratory architectures outlining the common aspects. Technologies adopted for Lab server software technology. Technologies adopted for user client- lab server communication. Why LabVIEW? Creating standard layer for wrapping LabVIEW-based remote laboratories in RLMSs.
Generic Architecture of Remote laboratories Web Admin Web Server Lab Admin Custom built OR Embedded LabVIEW Panel Access Portal OR Lab ServerUsers RDP User Interface
Lab Server Software Web Admin Web Server Lab Admin Custom built OR Embedded LabVIEW Panel Access Portal OR Lab ServerUsers RDP User Interface
VSBoth possess rich and powerful features:• Data exchange with other GUI applications such as COM, ActiveX, CGI, Java and .Net applications, and web services.• Support for standard Application Programming Interfaces (APIs) such as IVI, VISA, PXI, GPIB, VXI, USB, LXI, and others.• Connection with ODBC or OLEDB compliance database; compilation as DLL files to be called from the Lab server software as a driver to execute the experiments on the hardware.• Support for OPC Servers to enable HMI and SCADA.
VS• LabVIEW is the most popular remote laboratory environment and it is the most outstanding representative of graphical programming language visualization and parameter tuning for remote operation.• MATLAB is the most powerful computing language for control algorithm development and simulation• Full using of their advantages can achieve high efficiency programming. In numerous remote laboratories applications, a hybrid method was adopted; the signal acquisition and the GUI were developed with LabVIEW, while numerical calculation and signal processing were developed with MATLAB.
LabVIEW can support several ways of hybrid programming with MATLAB by means of: • ActiveX automation technology • DLL technology • MathScript RT ModuleMathscript module allowsembedding .m file scripts in LabVIEWapplications by connecting the text-based I/O variables with the inputsand outputs of LabVIEW.
Why LabVIEW?1) Its wide integration and compatibility with most of the drivers and the manufacturer standards such as VISA, GPIB, VXI, LXI, IVI, USAB, OPC, ODBC, etc.2) Its communication with web standards and protocols such as Ajax, Web services, ActiveX, COM, CGI, TCP, UDP, SMTP, etc.3) Its intuitive graphical programming language.4) Its compatibility with Matlab files for complex mathematics based applications.5) It is mainly designed for remote control.6) It is web server which has facilitated significantly putting LabVIEW application online in a few steps.7) The ability to building remote applications in LabVIEW with limited software development capability only a professional programmer but only a basic LabVIEW course.8) Several companies release many commercial products, on which many remote lab applications could be built such as NI ELVIS, CompactRIO, Compactdaq, and Festo−all are LabVIEW based.9) The student edition release made it affordable to many students.
All these factors turned LabVIEW to be a de-facto standard in remote laboratories development.Taking into account that other solutions such as RIAs and CGI are no longer preferred asdiscussed in the first section. Thus, hundreds of LabVIEw based remote labs have beendeveloped at several universities, which have arisen an important question: how to manage andshare all these all these laboratories using RLMSs.
Standard API for wrapping LabVIEW based remote laboratories intoRLMSs …... RLMS USERS …... …... Lab Servers Equipments Standard API Diferent LabVIEW-based Remote Labs
LabVIEW Communication Tools• VI Server.• Calling Objects in LabVIEW Using ActiveX (usefull for embedding webcam, web pages, files,..)• Web services.• Data sockets.• Calling Shared Libraries (e.g. DLL).• Protocols (TCP, UDP, rDA, ..).• Internet (CGI, URL, ..).• Web publishing tools.
Next Step• Define which communication tools to adapt in building the layer.• Standardization of the layer to be compatible with different RLMSs. (e.g. Sahara, ISA, WebLab Deusto, ..)• Considering factors such as • simultaneous access • security • connection to database if required • connection with the session cookie • Update experiment status (e.g. check availability)