Software

Perception – CSI (Custom Software Interface) option

Perception – CSI (Custom Software Interface) option

Overview
CSI stands for Custom Software Interface and is a powerful technology which allows software integrators and Perception users to customize and automate (parts of) the Perception software. As opposed to the ‘standard’ API technology, programs written with CSI form an integral part of the Perception software and are fully integrated into the Perception user interface.

While Perception and its options offer a perfect solution for most measuring, processing and reporting tasks, there are still some areas where the supplied software is not tailored to your specific requirements. A viable solution in this situation is to extend the Perception software with your own programs by using the Perception CSI.

Writing your own program has the advantage of having total control over your extensions, while you maintain access to the flexibility and power of the Perception environment. Your imagination sets the limits.

Other ‘standard’ interface techniques allow you to add an external program that works in parallel with the main application, either on the same machine or via remote access. Using the Perception CSI, you create plugins that become part of the Perception application on the same machine.
These plug-ins have a user interface that is based on the Perception concept known as ‘sheets’. You create a DLL that is linked into the Perception software at start-up.

Should you require external/remote control of the Perception software, then you should consider using the Perception Remote Control option (a.k.a. Remote API or COM/SOAP/RPC).

The documentation and support files that are provided are to be used with the C# programming language in the Microsoft® Visual Studio® development environment.

For those who do not have the desire to program the system at this level, HBM can do the job for you on a project basis.

Functionality
CSI is based on the Perception sheet concept: you add a sheet to the collection of Perception sheets. This sheet behaves like any other sheet with one exception: it is your sheet. You define the user interface, functionality, etc.

Usually you will create a single instance of a sheet, visible or not. However, you can also create sheets that can be used multiple times. Since you use the standard Perception sheet interface, you also have access to a sheet menu and a sheet toolbar that you can adapt to your specific needs.

Apart from the sheet functionality, CSI gives you access to:
• All public and documented features: user mode, component and sheet manager, workbench, etc.
• Perception DLL’s and components
• .NET DLL’s and components
• Extra DLL that provides easy access to commonly asked functions

Capabilities
The following list is a summary of capabilities. While not complete, it gives an idea of the many aspects of Perception
CSI.

• Hardware control Full control of all aspects of the hardware: acquisition parameters, control and status; amplifier settings; trigger settings, etc.
• Data management Complete interfacing to all data sources, including strings, numbers, and waveforms. You can also create your own numeric variables, strings, and waveforms. The waveform interface is the PNRF data format.
• Formula database Create your formulas on the fly and use the results. Create your own functions to be used within the formula database and expand the formula database capabilities.
• Build on Perception objects You can use the C# inheritance concept to build function code based on well-tested, existing classes from Perception.
• “Off-the-shelf” components When you use Perception components, you also get all of the additional stuff for free. E.g. the display also gives you zooming, cursors, measurements, drag-and-drop, etc. Examples include displays, meters, data navigators, etc.

Automation
CSI lifts automation to a level that exceeds standard automation concepts like macros and scripting. Even built-in programming environments usually lack the capability to connect to the internals of the software as tightly as CSI does.

With the power of the external C# programming environment and CSI knowledge, you can build automation applications ranging from simple to the extreme.
There are almost no limitations in realizing your vision of data acquisition, analysis, and reporting.

Using the external programming environment allows integration of modern techniques like active-X and internet communication into your CSI-based Perception sheets. It also allows for future expansion and compatibility with the operating system and programming techniques without large investments.

The capability to build separate formula functions and save them in an auto-loading file that can be used in any CSI-enabled Perception may be extremely useful for your company. Create your own functions for special analysis based on your company’s know-how and distribute them within your company, world-wide.

Perception remote control and automation options
CSI is part of a complete suite of remote control and automation options for Perception. Depending on your requirements and application, one or more of the following
options may be useful to you.

• PNRF Reader The GEN Series PNRF Reader allows you to build software that ‘reads’ the proprietary native GEN Series file format.

• SOAP The XML-based SOAP remote control protocol allows interfacing with other software running on Windows, Unix, Linux, etc. ASCII based commands are used to load setups, control acquisition and trigger, and fetch status as well as live data.

• RPC In addition to the functionality provided by SOAP, RPC includes direct control of hardware settings like timebase, acquisition modes, amplifier, trigger modes, etc. RPC is a low level communication protocol.

• COM is the easiest and most popular way to interface. COM allows retrieval and control of all hardware settings, acquisition control, data retrieval and more. COM is supported by any major programming language and also HP-VEE, NI Labview, Matlab and other software packages.