The hardware of the GPIB-based digital oscilloscope automatic calibration system consists of a GPIB controller, FLUKE5500A, the digital oscilloscope to be calibrated, and a PC, as well as peripheral devices such as a printer. GPIB is a practical instrument interface system developed by Hewlett-Packard in the late 1960s and early 1970s. Due to the control of the test instrument is very convenient, and has a high transmission speed (1Mbps), GPIB in 1975 was designated as the IEEE488 standard, 1987 revised to IEEE488.1-1987. GPIB bus is a digitized 24-pin parallel bus, there are 8 wires are ground and shielded, and the other 16 lines is a TTL level signal transmission line. TTL level signal transmission lines, including 8 data lines, 5 interface management lines and 3 data transmission control lines. GPIB uses 8-bit parallel, byte serial, asynchronous communication, all bytes are transmitted sequentially through the bus.
GPIB system devices have three attributes: controller, speaker and listener. The actual device has one, two or all three of these. As a controller, it can designate devices connected to the bus with the speaker attribute as speakers and devices with the listener attribute as listeners, including designating itself, through addressing. The speaker can send data to other devices over the bus. The listener can receive data sent by the speaker from the bus. Generally in a GPIB system the computer is the controller and has the attributes of speaker, listener and controller. In order to avoid bus conflicts, IEEE488 stipulates that there can only be one speaker at a time, but there can be several listeners at the same time. Since the operating speed of each device in the GPIB system may vary greatly, in order to ensure that multi-line messages can be transmitted bi-directionally, asynchronously, and reliably, three handshaking lines are set up in the GPIB bus, respectively, for the data-valid line, the not-ready-to-receive line, and the not-received-data line.
The GPIB controller used in this system is the BC-1401-2 USB-GPIB interface controller developed by Bekaa Technology, which comes with a USB interface that converts the USB bus into a GPIB bus and operates GPIB instruments. Its features are: fully compliant with IEEE488.1 and IEEE488.2 international standards, support for PCI, USB, Ethernet industry standards; data transfer rate of 900kbps, suitable for high-speed data transmission between the PC and the instrument; provides a set of I/O GPIB operation function library, its function with the ISA bus of the ES1400 series interface controller The same; provides a set of virtual instrument software architecture in line with the VPP specification VISA (Virtual Instrument Software Architecture) function library, the realization of the VISA function where the development of the application, in the replacement of different manufacturers of different models of the GPIB interface controller, the application does not need to make any changes; the The interface controller can use C/C++, VC++, VB, LabView, LabWindows/CVI, HP-VEE, Delphi and other languages to prepare test programs, convenient and flexible. VISA is an I/O interface software standard developed by the VXI plug&play consortium. The development of VISA is to ensure that different manufacturers, different interface standards of the instrument can be compatible with each other, can communicate and exchange data. Its salient features are: VISA is the use of advanced object-oriented programming ideas to achieve; it is the current instrument interface type function function of all the super-integrated, and very concise, only more than 90 functions; VISA as a standard function, and the instrument's I / O interface type has nothing to do with the convenience of the program transplantation. For driver and application developers, the VISA library functions are a set of functions that can be easily invoked to control various devices such as GPIB, VXI, PXI, and so on.
IVI (Interchangeable Virtual Instrument) is an instrument driver programming interface introduced by the IVI Foundation in order to further improve the executable performance of instrument drivers, to achieve the true meaning of instrument interchangeability, and to realize that the application program is completely independent of the hardware.
The IVI system consists of the IVI class driver, the specific IVI system consists of five parts: IVI class driver, specific driver, IVI engine, IVI configuration utility and IVI configuration information file. The class driver realizes the encapsulation of the upper level unified function and faces the operator, while the specific driver completes the communication with the specific instrument. The test program is to call the class driver, with the class driver to call the specific driver to achieve the test program and hardware independence. IVI engine to complete the state cache, instrument attribute tracking, classification of drivers to specific driver mapping function. IVI configuration utility is to use software MAX to create and configure the IVI logical name, in the test program by transmitting the logical name to a classified driver initialization function to map operations to specific instruments and instrument drivers.The IVI configuration information file records all logical names and mapping information from class drivers to specific instrument drivers. Its structure is shown in Figure 2. Test Software Module:
The test software is divided into three parts: test data management module, test parameter management module and test program module. Test data management module is to manage the test date of the instrument, test personnel, the specific instrument has been tested items, test data and so on. Test parameter management is to manage the test items of specific instruments and standard values of test items in the database. Test program module is based on the user in the soft panel selected test parameters, call the corresponding test instrument for testing, the test data and database standards to compare, to determine whether qualified.
The structured flow of the test software:
After the system self-test on the power-on, the calibration operator selects/inputs the model of the instrument to be calibrated on the software interface, and the program calls out the corresponding calibration items, the standard values of the items to be calibrated, and the connection diagrams of the instrument to be calibrated and FLUKE5500A and the GPIB controller in the database by the model of the instrument. The tester connects the instrument according to the connection diagram (FLASH animation), checks whether there is IVI driver after confirming the correct connection, runs the MAX configuration tool after installing the driver, runs the corresponding test program after completing the configuration, saves the test results to the database and prints the corresponding pass/fail report. The flow chart is shown in Figure 3.
Development of IVI Driver:
For IVI instruments, manufacturers will provide IVI driver only need to write a small amount of code to achieve the instrument verification, the main program is simple, easy to manage. the IVI Foundation's goal is to support 95% of the instruments. The calibration of digital instruments based on IVI technology will be the inevitable path of instrument calibration.
But not all instruments support IVI, for non-IVI instruments, the use of LabWindows/CVI in the IVI driver development wizard to the instrument programmed command tree of all the underlying commands encapsulated into a series of high-level functions with an image panel, to complete the development of the IVI driver, so that it becomes an IVI instrument. It is characterized by the heavy workload of IVI driver development in the early stage, but less workload of test program development and maintenance in the later stage. The database management mainly includes six modules: user management, tested instrument model management, calibration project management, calibration report management, calibration project index management and data query.