Labview

© Brooke Clarke 2015

Background
Description

Photos
LINX
Instruments
Instrument Drivers
    General & HP-IB
    Third Party
    RS-232
    LAN
    I2C
    Arduino
Related
References
Links

Background 

The prior LabVIEW page has been renamed LabVIEW Install because of the difficulties.  This page is more about using LabVIEW.

Description

LabVIEW is a graphical programming software language.  That means you write programs by mannipulating graphical symbols rather than by typing text.  LabVIEW also has a Graphical User Interface (GUI).  HP tried to make a graphical programming language they call VEE, but in order to avoid the National Instruments patents covering LabVIEW the VEE language language is not as elegant and far more difficult to use.

Photos











LINX

LINX (not Linux) is firmware that can be loaded into various products that allows LabVIEW to use them as I/O devices.
LINX VI Reference - analog I/O, digital I/O, PWM (Wiki), I2C (Wiki), SPI (Wiki), UART (Wiki), Accelerometer (Wiki) (ADXL345, MMS8451, MMS8452, MPU60X0, Mindstorms ), Lights (BlinkM, WS2812/NeoPixel), Display (7-segment (Wiki),  SSD1306), Distance Ultrasonic [GH-311 | HC-SR04 | PING))), Mindstorms HiTechnic], Motion RC servos, Digilent Pmods (huge selection, sophisticated) (Wiki), Signal Generation (AD9850, LTC2631), Temperature (TCN75a, Thermistor (Wiki), TMP35/TMP36/TMP37),  Misc: DS1307 RTC, Photocell (Wiki), RGB LED, Thumbstick (Wiki)

Instruments

Instruments that can be remotely controlled. 

HP-IB (GP-IB) IEEE 488 Instruments

Listing to remind myself what might be connected to LabVIEW.

HP 33120A 15 MHz Function/Arbitrary Waveform Generator
HP 3437A System Voltmeter
HP 3458A DVM (very accurate if it can be fixed) 
HP 3488A Switch Control Unit
HP 4274A  LCR Meter
HP 4275A LCR Meter
HP 4395A Combination Network, Spectrum, Impedance Analyzer 
HP 5004 Signature Analyzer
HP 54501A Digital 100 MHz Oscilloscope
HP 5342A Microwave Frequency Counter
HP 5345 Plug-In Counter
HP 59307 Dual VHF Switch
HP 59308A Timing Generator
HP 59309 HP-IB Digital Clock
HP 59313A 4 Channel A/D Converter
HP 59501 Isolated DAC/Power Supply Programmer (Isolated DAC)
HP 6038A Power Supply (60V 10A) & HP 59510A Relay Accessory (Polarity reversal)
HP 66311A Mobil Communications DC Source - combines PS & scope
HP 71100A 2.9 GHz Spectrum Analyzer 
HP 8648A 100 kHz to 1 Ghz Signal Generator w/ pager option
HP 8702B Lightwave Component Analyzer - Electro Optical Network Analyzer - 8753 equivalent
Noisecom 7110-FAC Programmable Noise Generator
Northern Telecon GPS Satellite Sumulator STR2760

Non IEEE 488 instruments

C11166GRC206 C-11166/GRC-206 Universal Radio System Control  URSC - serial & parallel interfaces
C11169GRC206 C11169/GRC-206 Signal Distribution Unit SDU  - serial & parallel interfaces
Datum 4065B Cesium Time & Frequency Standard
Defense Advanced GPS Receiver - RS-232
Drake Earth Station Receiver ESR 1252S - RS-232
AMREL EL-1132 Electronic Load - RS-232
F91120 Field Radio BER Test Set - data in and out
Harris RF-3200ET Portable Transceiver - ALE & Aux parallel interface
Heathkit GC-1000 Most Accurate Clock - RS-232 serial with a lot of RF noise
HP 5110A Synthesizer Driver & 5100A Frequency Synthesizer - maybe hundreds of connections parallel interface
HP 5216A 12.5 MHz Nixe Tube Electronic Counter - parallel interface
HP Z3805A Time & Frequency GPS Receiver - RS-232
ICOM 706 Mk II G - some remote control
ICOM R7000 - serial remote control
KVHC100FG KVH C100 Flux Gate Compass module - remote setting & reading
MD1 Automatic Astro Compass - parralel interface (very complex & undocumented
Motorola Mobat Micom 2 HF Radio - control & data remotes
NRD545 100 kHz to just under 2 GHz Receiver & Related - serial remote
Orion Electronics Ltd. Cellular Base Station ST616-CBS - RS-232 control
Panasonic KX-TA824 Telephone System - RS-232 serial configuration
PLGR GPS Family - PLGR-II Rockwell HNV-2000 PLGR II SPGR GPS Receiver - serial interface
PRC-104 HF Receiver Transmitter & other systems that use the RT-1209 - CONTROL & RT2019A serial
PRC-112 Survival Radio - remote setup
PRC-68 Series Squad Radio Cloning -
PTS Frequency Synthesizers - parallel interface
Quantic Q-5200/SM Timing GPS Receiver  - RS-232 (needs antenna-converter or bypass)
Racal MA 4230A Morse Encoder & MA 4231A Morse Decoder - needs special connectors
RCS-5A Chirp Sounder Receiver - RS-422 remote
RT1319 RT-1319B PRC-113, VRC-83, GRC-206 - REMOTE connector
Stanford Telecom 5001A Navstar Test Transmitter - parallel interface
TW7000FA Transworld Datron Fly Away H.F. Radio w/ALE - serial control & data

Instrument Drivers

In the old days a test automation program would be written with commands effecting instruments in line with the rest of the code.  The problem with that is you need to figure out each instrument over and over as they are needed.  A much better way is to use an instrument specific driver software package (instrument driver) and call it whenever you want to work with that instrument. 

General & HP-IB

The first choice is the NI web page for Instrument Drivers.
Another option is the HP/Agilent/Keysight instrument driver package for their product. 
Many other instrument manufacturers have LabVIEW drivers, check their web page.

The early HP-IB instruments used commands that looked like "R2D2" (Wiki: Star Wars, R2D2).  The drivers for these instruments are very specific to the instrument, maybe being different for different letter suffixes.  These were instruments that conform to IEEE 488.0.

Later instruments that conform to IEEE 488.2 have predefined registers and a limited number of standard commands. 

Later instruments utilize SCPI commands where a string of commands can be sent separated by the colon ":" character.  The early SCPI instruments will respond to both R2D2 commands and the SCPI commands.  Writing code using SCPI commands is considerably more difficult than using the R2D2 commands, but the code is much more general.  A good SCPI driver for a voltmeter should work for any IEEE 488.2 voltmeter.  So I you have an instrument that supports IEEE 488.2 and SCPI commands there's a good chance most of it's functionality can be had by using a driver for a similar type instrument.

I'll be using the NI_GPIB-USB-HS adapter since modern computers do not accept the cards used by older PC computers.

Third Party

The VI Package Manager (VIPM) has hundreds of LabVIEW software packages, most of which are drivers.
The NI web page for Third-Party Software Products lists software packages, but they are different than the VIPM list.
Many other instrument manufacturers have LabVIEW drivers for their products, check their web page.

RS-232

Radio Standard number 232 is an agreement to not have a standard.  It is an asynchronous mode where there is a start bit and a (variable length) stop bit.  Prior to the start bit and after the stop bit the line is always in the space or idle state.  The first transition from the idle state is the beginning of the start bit.  There are 4 different connectors DB9m, DB9f, DB25m, DB25f each of which can wired as DTE or DCE.  The voltage levels should be plus or minus 15 Volts, but there are many cheats using lower voltages.  The polarity of TTL level ( 0 to +5 V) RS-232 is typically inverted from the true RS-232 polarity because most TTL to RS-232 converter ICs include an inversion.  Flow control can be nonexistent, done is various ways in software (for example Xon/Xoff) or in hardware (for example RTC/CTS).  The number of data bits is variable.  Parity may or may not be used and when it is used may be odd or even.  The baud rate can be pretty much anything. With all these variations getting RS-232 to work, with a lot of specialized tools, can take a long time.

LAN

Early LAN cabling could be one-to-one or crossover (Wiki) just like the case of RS-232 connections.  But that problem was eliminated from LAN cabling with the advent of the Medium-dependent interface (Wiki) where the equipment detects the Tx and Rx lines automatically.  Also all cables are terminated with 8 Position 8 Contact (Wiki: 8P8C) plugs often called RJ-45 plugs.  Eliminating another of the problems that plagues RS-232.

But to make up for solving the hardware problems, there are some software configuration issues such as assigning proper LAN addresses to all the parts of the system and making them aware of each other.  This type of problem took me 3 months to solve in order to get part of LabVIEW working.

But when it's working there are some big advantages.  LAN is a much faster interface than any of the others and the cables cost much less and can be run for longer distances.  But  you can not daisy-chain cables like HP-IP so the network topology is pretty much always a "star" where the computer is the central element and a seperate LAN cable runs radially to each instrument.

I looked into getting a LAN - GP-IB adapter, but after reading about the difficulties of getting them to work chose the USB-GP-IB adapter.  I already have some active USB extension cords so can have instrument in an adjacent room from my computer.

I²C

Micro controllers can use I²C (Wiki) which is a Philips semiconductor propritary serial interface.  It shows up as a 3 line interface (Serial Data Out SDO, Serial Data In (SDI) and Clock SLK).  Many of the peripheral ICs use this data format to communicate with a microcontroller where each has it's own specific address.

Arduino

Normally you would not use a micro controller development board and the name of an interface, but in this case it's correct.  There are a very large number of "shields" made for the Arduino and so when the Arduino micro controlled is programmed to pass commands to the I/O pins and read them back to a computer the whole Arduino board becomes and I/O device.  Any of the "Shields" can be interfaced to LabVIEW using the Maker Tools & LINX.  The SparkFun Inventor's Kit (SFIK)does that and includes a lot of sensors and actuators with experiments that are supported by LabVIEW drivers.

Under the bottom suitcase cover is the SparkFun RedBoard Inventors Kit manual.  About 1/4" think heavy paper stock printed in color, very nice.

SFIK Fig 1 Suitcase
SparkFun
                      Inventor's Kit
SFIK Fig 2 Opened
SparkFun
                      Inventor's Kit





Related

LabVIEW Installation
Test Equipment
Microwave Test Equipment 

References


Links

PRC68, Alphanumeric Index of Web pages, Contact, Products for Sale