The design of the 16-channel stimulus response test system is finished. The only choice remaining is what software should be used to program the switch hardware. NI-SWITCH, DAQmx Switch and third-party device drivers can be effective low-level APIs, but there is an easier method to build this and every other switch system configuration: NI Switch Executive. One of the core reasons National Instruments created Switch Executive was to work with large-scale systems similar to the proposed 16-channel stimulus response test system. Below, Switch Executive is compared to the alternative low-level APIs, and shown through this comparison is how Switch Executive makes the process of building this system simple.
1. Switch Executive enables you to configure all the switch modules in your large-scale RF system as one virtual device. This means you can integrate and control multiple switch types and topologies (NI PXI-2547 8x1 Multiplexer and a NI PXI-2548 4-SPDT) as one device in your application; you can connect “routes” across multiple switches with one function call, and you create routes by simply selecting two endpoints within your configuration.
Lower-level driver software such as the NI-SWITCH API, the DAQmx Switch API, and third party drivers typically control each switch module independently, leaving it to the user to verify the overall switch configuration is performing correctly.
Figure 11. Switch Executive allows you to integrate and control multiple RF switch types and topologies as one virtual device
2. Switch Executive allows you to choose intuitive channel names. Batch renaming assigns names to multiple channels simultaneously to easily configure large systems.
Low-level drivers often use channel names based on individual switch module functionality/topology.
Figure 12. Switch Executive allows you to use intuitive channel names
3. Switch Executive provides interactive endpoint to endpoint routing capabilities. With Switch Executive, you can define hardwires to link switch modules for cross-module routing and group dependent routes into route groups.
With low-level drivers, a user must perform additional software techniques to verify correct connectivity. Maintaining the overall system state often involves programming to check the relay states of individual modules or utilizing “Disconnect All” commands betweens configurations.
Figure 13. Define hardwires to link switch modules for cross-module routing
Figure 14. Hardwire list generated with Switch Executive HTML report tool
Figure 15. Group dependent routes into route groups
Figure 16. Portion of Route Group list generated with Switch Executive HTML report tool
4. Switch Executive has a tool to validate the system’s devices, routes, and route groups to verify there are no errors within the system configuration and that all user-defined exclusions are maintained. If a route or route group attempts to connect terminals that are mutually excluded or attempts to disconnect channels that are hardwired, Switch Executive will throw an error upon validation and execution. Because Switch Executive is built on the IVI-C class driver, the user has the additional option of simulating hardware during validation.
Using low-level drivers, the user must perform additional software techniques to verify the desired channel connections do not interfere with each other or with user-defined exclusions. Programming a system using lower-level driver software in this manner can be tedious, as it often involves additional programming to check the relay states of individual modules.
Figure 17. Switch Executive has the option of simulating hardware during validation
Figure 18. Switch Executive verifies there are no errors within the system configuration
5. Switch Executive has system-wide documentation tools to generate an HTML report and to export configuration data into Microsoft Excel. Leveraging Excel’s inherent spreadsheet functionality, you can make large-scale changes and can then import the configuration back into Switch Executive. In addition to these tools, Switch Executive will automatically document specific information about each National Instruments switch module used in a configuration, and includes Comment sections for any third party and/or additional documentation (such as calibration values, as discussed previously).
If programming with low-level drivers, a user can print code for documentation, but ultimately the user must create their own report. To record hardware interface information, users will often maintain an Excel spreadsheet. In a complex switch configuration, users can create numerous spreadsheet documents in order to remember how devices interconnect.
Figure 19. Switch Executive has a tool to export the system configuration to Excel
6. Switch Executive is intuitive to program and the code is easy to maintain. In your program routes and route groups are simply connected and disconnected. If you want to add a possible route to the configuration, or see if one already exists, simply open the Virtual Device and choose the two endpoints of the route. Through abstraction, the amount of Switch Executive programming remains constant even though the complexity of the system may increase with the addition of switches and signal routes.
With low-level drivers, the difficulty of programming is largely dependent on the chosen API. The amount of function calls is greater for lower-level APIs due to multiple connections being created for every desired route, often resulting in untidy code. Code can be designed for maintainability; however, it is typically more difficult to maintain lower-level code if the switch hardware changes or if new switches/signal routes are added after the initial code development.
Figure 20. Instead of separate sessions and multiple connections, Switch Executive simply connects and disconnects routes and/or route groups to maintain clean, easy-to-maintain code
7. Switch Executive is built on top of the IVI switch class driver and works with any IVI-C compliant switch driver. You can integrate and control PXI, SCXI, GPIB, and VXI switch modules from not only National Instruments, but from any third-party IVI-C compliant switch vendors.
Unless the IVI Switch low-level driver is used, integrating modules with different form factors and/or vendors will likely force the use of multiple lower-level APIs. Using more than one API may decrease code uniformity and cleanliness.
Figure 21. Switch Executive is built on top of the IVI switch class driver and works with any IVI-C compliant switch driver
8. When National Instruments switch hardware is used, Switch Executive has an additional predictive maintenance feature, where the relay count of NI switch modules used within the configuration can be accessed. Relay count is currently the best indication of how much life a relay has left.
If NI-SWITCH or DAQmx Switch is used, relay count can also be accessed for NI switch modules. Third-party switch vendors may or may not have this feature.
Ultimately, NI Switch Executive simplifies large-scale switch system configuration and increases test performance, thus lowering your cost of test. If you’ve just finished designing a large-scale RF solution and need to configure and deploy that solution, NI Switch Executive is strongly recommend.