Browsed by
Category: Experimental automation notes

You don’t have to use LabView

You don’t have to use LabView

LabView works for a wide range of automation tasks, and lots of people are glad to use it.  Others don’t care for it.  Fortunately for its detractors, there’s other options out there, and here I’m going to highlight my current favorite. Why c++ and Qt? I started out writing automation code in LabView.  Some people like its signal-oriented approach, but I prefer a procedural approach.  While it worked fine for smaller projects, I don’t think it scales well to larger…

Read More Read More

Controlling Signal Recovery Lock-ins over TCP/IP

Controlling Signal Recovery Lock-ins over TCP/IP

Signal Recovery makes great lock-ins.  For my first project as a graduate student I did a lot of shopping around, and eventually ended up purchasing three 7265’s.  They have a GPIB interface (or RS232 for the desperate), and while it’s nearly 50 years old at this point it still works fine (and we have tons of GPIB cards around the lab). Their newer lock-ins, like the 7270, have taken the understandable move of switching to Ethernet and USB control.  They…

Read More Read More

Using NI’s GPIB drivers in Qt

Using NI’s GPIB drivers in Qt

National Instruments DAQ drivers play nicely with Qt, but for some reason NI only provides a .obj file for the GPIB drivers and not a .lib file. Other people figured out how to get this working, but since the instructions are somewhat spread out across the internet I thought it would be nice to summarize the whole thing here. These instructions are for the MinGW build chain — things are somewhat simpler for the MSVCC version as one of my…

Read More Read More

Communicating with Thorlabs APT motor controllers

Communicating with Thorlabs APT motor controllers

We recently added a Thorlabs DC motor controller to our scanning MOKE setup to automate the rotation of a waveplate.  Our MOKE setup software is written in c++ using Qt, and we wanted to operate the motor from within the software.  Thorlabs provides ActiveX controllers and detailed information on the communications protocol for the controller, but their sample videos on using the ActiveX controllers involve embedding the controls which we would rather not do, and communicating directly with the controller…

Read More Read More