New Feature: Use the 9103 Picoammeter to Automatically Read microCMA Target Current

The latest software releases of Actuel for the 9103 Picoammeter and CMapp for the microCMA now support the ability to automatically read target current when acquiring data.

To use this feature, you must (of course) have a 9103 Picoammeter running RBD’s Actuel software.

Run CMapp for the microCMA, select Hardware Properties from the System menu, and check the option “Use 9103 Picoammeter to read target current.” You only have to do this once.

Turn on the 9103 Picoammeter, run Actuel, and measure your target current as usual. Leave Actuel open. It doesn’t matter whether the 9103 is sampling, but keep in mind that your current settings (sample rate, etc.), will be used.

Now, whenever you take an acquisition (except for an alignment), the target current will be measured at the beginning of the acquisition and displayed with the other electron gun settings when the acquisition is complete.

If you don’t have a 9103, you can still manually enter a value for the target current in the acquisition dialog.

Download the latest release of Actuel for the 9103 Picoammeter here.

Download the latest release of CMapp for the microCMA here.

9103 Floating Ground Reference

The term “floating ground reference” in the title of this post refers to an electrical circuit that does not have a ground connected electrically to earth. (This type of connection is also referred to as “floating input”.)

The 9103 USB data logging picoammeter has the ability to float higher than earth ground by up to 1,500V DC. A new 9103 version coming out in early 2018 will be able to float up to 5,000V DC.

This post explains how the connections to the 9103 USB picoammeter are made and how the floating capability works.

The HV option for the 9103 uses SHV and MHV 5kV connectors instead of a BNC.  The center pins on the INPUT and HV connectors are the signal input and ground reference input, respectively, to the 9103.

9103 HV option

Step one is to build an isolated (floating) power source.  A very easy way to do this is to use a 9 volt transistor battery and a resistor. For this example, I used a 9V battery with a 10 Meg ohm resistor to get about 900nA of current. Using Ohms law you can create any current that you would like to use for this test as long as it is in the range of 1nA to about 1mA.  A 9 volt battery works well because it is small and a very clean source of DC voltage and current.

simple isolated current source

Next, I wrapped the battery in electrical tape and mounted the battery in an enclosure.

9103 float test box

9103 float test box

One end of the resistor is connected to the INPUT on the 9103 and the other end of the resistor is connected to the battery. The battery is referenced to the HV input ground on the 9103.

Finally, I connected a high voltage power supply to the ground reference via a 1 Meg ohm current limit resistor as show in the schematic below.  The current limit resistor helps to reduce noise and current surges from the high voltage supply.

Current limit resistor.jpg

After connecting the INPUT and HV leads to the 9103, I am ready to measure current. It is important to note that the 9103 Input should be set to Normal and not Grounded. (The “Grounded” Input is used to short the specimen stage to ground when not measuring current. This is useful when measuring electron or ion currents in vacuum, but when floating the 9103 you do not want to short out the input or you may damage the 9103 or your high voltage supply.)

normal not grounded

We can now measure current and can see that we are getting 913.2 nA of current.

Using the Data recorder we can monitor the current vs. time to see a graphical representation of the current.

The signal ground reference on the 9103 is tied to the high voltage supply.  As I increase the high voltage supply from 0 to 1500V DC in increments of 500V (a limitation of the high voltage supply I am using) you can see some small instabilities in the data.  This is normal; there is some capacitive coupling as the ground reference voltage is changed.  It looks like a lot of noise but in fact is only about 20 pA.

9103 graph spikes when increasing voltage

1500V DC voltage source

If you look at the data referenced to zero you can see that the instabilities are very minor and also that the output is very stable once the high voltage supply stabilizes.  If you were to measure the voltage on the 9103 HV reference to earth ground you would measure 1,500V DC.  So for this example the 9103 ground is floating by 1,500V DC.

9103 graph zero base line

In this test I changed the high voltage supply from +1500V to -1500V DC with no change in my current reading which demonstrates how well isolated the 9103 input is from earth ground.

Applications for a floating input picoammeter include measuring the output of an electron multiplier directly, as well as bias experiments with electron and ion beams.  Click here for more information on our new 5kV floating 9103.

Resolving USB Conflicts with Virtual COM Ports

If you run multiple USB devices that operate as virtual RS232 COM ports (the ubiquitous serial port standard) on Windows, you may have run into problems with conflicts between devices. An application may connect to the appropriate device when it’s the only one connected, only to “get confused” if there is another device sharing the PC. Happily, there are a few simple things you can try that will often resolve the problem.

9103s and Arduinos Playing Nice Together

9103 and Arduino USB Devices

A 9103 Picoammeter and Arduino

To most Windows applications, virtual COM ports (VCPs) all look the same. An application can open a port and and attempt to communicate with the connected device, but since there’s no fixed protocol – each device speaks its own “language”, any message sent can have undetermined effects if the device you’re communicating with is not the one your were expecting. Some applications simply connect to the first COM port available, other’s may provide a way to select the COM port your device is connected to – but you’re still responsible for figuring that out.

When manufacturers produce hardware for PCs they can apply for unique vendor ad product IDs for their device, and there are ways for applications to safely query these. But that only solves part of the problem. Many devices use third-party USB chips and drivers from companies like FTDI, so they share the same IDs. These devices look the same to a Windows client application, or to a person perusing the Device Manager in Control Panel.

RBD’s own 9103 Picoammeter utilizes FTDI’s popular USB VCP chips, as do many versions of the popular Arduino microcontroller boards, so these two sets of devices can be confused by client applications when used on the same PC. And s it turns out, they are often used together. Here are a few tricks for getting these device to play nice together.

Solution 1: Connect Each Device and Run Each Client in Order

Many applications require you to specify the port for the selected device. Others (like Actuel for the 9103) poll the COM ports in numerical order and check and connect to the first available. If these devices first check the vendor and product ID (like the 9103), they will at least skip ports that do not match. But they cannot distinguish between two devices using the same USB chip (like FTDI’s). Setting up a device connection / application order can solve this.

In the case of a 9103 / Arduino conflict, remove all other devices, then plug in the 9103 and power it on. Next run the Actuel software. The software will find and take control of the 9103 port, and once assigned, you can safely plug in the next device and run its client.

Another order might make more sense for your particular application. Experiment with your configuration, and there are more than two devices, try getting two working first. Document the process and just make sure it’s followed anytime you reboot / power-on.

Solution 2: Change the COM Port Number for a Particular USB Port

You can force Windows to use a different COM port number than the one automatically assigned. This may help with applications that select the lowest numbered port.

For example, if the 9103 is connected to COM4 and another FTDI device is on COM3, the 9103 client software may incorrectly select the device on COM3. Setting the 9103 to COM2 may allow you to now connect the devices and run the client applications in any order, depending on how those other devices / applications behave. Some experimentation may be necessary.

With the 9103 connected and turned on, run Control Panel / Device Manager, and find the selection for “Ports (COM and LPT)”, click and you should see an entry for “USB Serial Port (COM4)” (the COM# may be different of course). Double-click for properties.

The COM port settings for the 9103 USB VCP

The COM port settings for the 9103

Now select the “Port Settings” tab, and click the “Advanced…” button. From this window you can select a new COM port assignment:

Choosing a COM port for the 9103

Choosing a COM port for the 9103

Keep in mind that plugging a device into different USB port will change the COM port assigned to it.

More Info

Of course, you’ll want to ensure you have the latest drivers installed. For FTDI, they can be found here:

http://www.ftdichip.com/FTDrivers.htm

If you’re thinking of programming your own serial port application, here’s a quick tutorial at the API level. Many popular languages include code for VCP programming, and third-party libraries are available:

http://xanthium.in/Serial-Port-Programming-using-Win32-API