Go Back   Home > Forums > Amplifiers > Tubes / Valves

Tubes / Valves All about our sweet vacuum tubes :) Threads about Musical Instrument Amps of all kinds should be in the Instruments & Amps forum

Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 15th February 2012, 02:55 PM   #1
diyAudio Member
 
Michael Koster's Avatar
 
Join Date: Jan 2008
Location: Eureka, CA
Default A micro-programmable tube tracer/tester

I decided to start another tube tracer thread to discuss a new project.

What I want to do is build a fully programmable tube tracer/tester using the Arduino microcontroller to control the measurement steps.

The design is very simple, consisting of the Arduino with an external 10 bit D/A converter, driving three programmable pass regulators (Vg1, Vg2, Vplate). The Arduino has enough onboard 10 bit A/D channels to measure all the electrode currents.

At each measurement point all three regulators would be pulsed on only long enough to settle and measure, then returned to a baseline state. The baseline state could produce some known idle dissipation if needed. The dissipation during measurement can be limited by limiting the duty cycle.

Producing a set of plate curves would involve running enough measurement points in any order such as to connect the dots and draw curves.

The electrode power supplies would each be isolated with shunt current measurement on the ground side. Safe, easy, cheap. All one needs is 3 separate secondary windings e.g. Antek toroids, etc. and relatively small ones at that (50-100VA should be sufficient due to the short duration of the measurement pulses).

The status of this project is I have the necessary parts and Arduino testbed, I have obtained an A/D converter (AD7808), and am currently prototyping the programmable pass regulator design. I plan to build one PCB for the Arduino D/A shield, and another PCB for the programmable pass regulator (3 regulators needed for each tracer). The regulator board will carry the rectifier, filter/storage caps, and current sensing with protection circuits.

The other part is some manual range selection so one can test power tubes and small signal tubes using the 10 bit A/D, e.g. electrode current ranges of 1mA, 10mA, 100mA, 1A. Grid voltage range 20V, 200V. Manual g3 bias setting would probably be sufficient but another regulator could be added.

I'm also intrigued at the idea of physical tube modeling, where Spice would provide inputs to the tracer, the tracer would make measurements, and provide the results back to Spice to use in the circuit model.

The arduino provides USB, serial, and IP interfaces, but it seems like USB would be a good method.

This project would be fully open hardware and software, allowing anyone to build it for any purpose including commercial products.

Cheers,

Michael

Last edited by Michael Koster; 15th February 2012 at 03:15 PM.
  Reply With Quote
Old 15th February 2012, 03:50 PM   #2
TheGimp is offline TheGimp  United States
diyAudio Member
 
TheGimp's Avatar
 
Join Date: Aug 2009
Location: Johnson City, TN
For a start, I recommend a design definition along with block diagrams would be a good first step. From this determine the functions and number of I/O necessary and then determining which Arduino would be optimal for the project. The difficult part is determining the amount of internal resources which will be necessary (Flash, RAM, etc).

In addition, bit banging several serial DACs may consume a lot of time from my limited experience with the 89C51 driving three DACs and two ADC channels at a time. I ended up going to parallel DACs. The Arduino may be faster, best to benchmark it before getting too far into the design.

This thread came about from this one:

DIY Curve Tracer

Last edited by TheGimp; 15th February 2012 at 03:55 PM.
  Reply With Quote
Old 15th February 2012, 04:02 PM   #3
diyAudio Member
 
Join Date: Apr 2009
Can't hardly wait ...
__________________
tubes.rs
  Reply With Quote
Old 15th February 2012, 04:15 PM   #4
diyAudio Member
 
Michael Koster's Avatar
 
Join Date: Jan 2008
Location: Eureka, CA
Quote:
Originally Posted by TheGimp View Post
For a start, I recommend a design definition along with block diagrams would be a good first step. From this determine the functions and number of I/O necessary and then determining which Arduino would be optimal for the project. The difficult part is determining the amount of internal resources which will be necessary (Flash, RAM, etc).

In addition, bit banging several serial DACs may consume a lot of time from my limited experience with the 89C51 driving three DACs and two ADC channels at a time. I ended up going to parallel DACs. The Arduino may be faster, best to benchmark it before getting too far into the design.

This thread came about from this one:

DIY Curve Tracer
Good points. I do have a block diagram and know that the Uno has enough I/O. Today I'm documenting some of this in electronic form so I can post it.

Internal resources depend on how complex the internal logic needs to be, but my experience so far is encouraging for the Uno being able to run at least plate curves autonomously from start-stop-step parameters while pushing the data out the USB. Current idea is to make a measurement, then spit out the data before making the next measurement, which provides a cooling off period between measurements. A storage card could be added to store data sets etc. but I see most of the heavy lifting being done by an attached PC running python scripts. I wouldn't want to program heavy analysis using the pidgin C of the arduino SDK. It's mainly for sequencing and interfacing.

I looked at both serial and parallel and for Arduino it's really about a wash as there's no instruction to load a word to a port but good support shifting data bits out a serial line...

The AD7808 D/A has a global load so I can preload the data registers and then pulse the load signal to change all outputs together. On the measurement side, I don't think a few A/D conversion cycles will be a problem but I will let you know the timing when I have made a measurement later on. I still need to hook up the 7808 to the Arduino.

I should point out that one big goal is to keep it simple. At first all I care about is generating plate curves by importing CSV data into MS Excel. Manual range switching. Minimal programming. It's super easy just to download different arduino code sets for different tester/tracer functions. This can get way more sophisticated as time goes on and if others get interested in making improvements, commercializing, etc.

Last edited by Michael Koster; 15th February 2012 at 04:21 PM.
  Reply With Quote
Old 15th February 2012, 07:03 PM   #5
diyAudio Member
 
smoking-amp's Avatar
 
Join Date: Dec 2001
Location: Hickory, NC
Sounds like an excellent idea. Keep in mind some isolation between tester and PC.

The PC side (for physical tube modeling, can do some interpolation between measurements to improve Spice speed, just needs some predictive (derivatives) modeling to locate the next test samples needed)

Seeing as you have programmable voltages planned available, another very useful function can be performed besides tube curve tracing. You can measure circuit gain versus some parameter like DC input bias or screen voltage or plate voltage. Just need a 1 KHz say oscillator for a test signal and a 1KHz selective detector (converts amplitude to a DC level for the A/D) for measuring the output level. Then plot variation of gain (from the mean) versus the swept parameter.
__________________
I want a Huvr-Board!!
  Reply With Quote
Old 15th February 2012, 08:07 PM   #6
mogliaa is offline mogliaa  United Kingdom
diyAudio Member
 
mogliaa's Avatar
 
Join Date: Dec 2009
Location: London
I'm up for this Michael, just what I needed, another curve tracer!!
__________________
"A mistake is always forgivable, rarely excusable and always unacceptable. " (Robert Fripp)
http://www.bartola.co.uk/valves/
  Reply With Quote
Old 15th February 2012, 08:13 PM   #7
tomchr is offline tomchr  United States
diyAudio Member
 
tomchr's Avatar
 
Join Date: Feb 2009
Location: Greater Seattle Area
My vote is for an IP/ethernet interface rather than a USB interface. The handling of TCP/IP and UDP is much more platform independent than USB. Makes writing the host software in something like Python pretty easy. That's my vote anyway.

~Tom
__________________
21st Century Maida Regulator, Universal Filament Regulator, Damn Good 300B, Novar Spud, and more...
Neurochrome : : Audio - http://www.neurochrome.com/audio - Engineering : : Done : : Right
  Reply With Quote
Old 15th February 2012, 09:25 PM   #8
ChrisA is offline ChrisA  United States
diyAudio Member
 
Join Date: Jan 2008
Quote:
Originally Posted by tomchr View Post
My vote is for an IP/ethernet interface rather than a USB interface. The handling of TCP/IP and UDP is much more platform independent than USB. Makes writing the host software in something like Python pretty easy. That's my vote anyway.

~Tom
If you are using an Arduino then it already works across Windows, Mac and Linux. The Arduino looks like a USB serial device the PC.

But I suspect many people will want to use the curve tracer stand-alone without a cable going to a PC. It is very easy to add an SD memory card to an Arduino. Easy to add Ethernet too. and Easy to do BOTH because the Ethernet shield just happens to also have an SD card on it. So if you add Ethernet you get SD.

My plan, and now it looks like we have at least a few people working in the same general idea is to have four programmable voltages out. These can use the built-in 8-bit DACs But I will also measure the voltage and not depend on a DAC controlled pwer supply to be accurate, that would cost to much. Easier to close the loop in software. Also for each power supply I will measure current using a 1 ohm resistor.

With this setup I can servo, in software a constant current or a constant voltage on one pin while the other pin is swept.

If serial DACs/ADC is used I'd look a the "mega" rather than the "Uno" version of Arduino because the Mega has hardware UARTs and you avoid "bit banging".

A big part of the design is the opto-couplers. I CERTAINLY want optos between the high voltage and the Arduino. It takes some effort to pass a linear analog signal through an opto. However serial data like I2C can work easy with an opto. I have yet to work out a parts count and cost for each method.

The other part of design is the user interface. I'm thinking of using a 2x16 character LCD and a rotary encoder, the kind with a push button on the shaft.

One more idea: Build a "library". ("Library" as a rather exact meaning when using an Arduino.) To abstract away difference between Serial and parallel DACS and so on. Just have exposed functions like "set_plate_voltage()" or "get_cathode_current()". Then if people modify their hardware the top level control routines don't change.
  Reply With Quote
Old 15th February 2012, 09:55 PM   #9
tomchr is offline tomchr  United States
diyAudio Member
 
tomchr's Avatar
 
Join Date: Feb 2009
Location: Greater Seattle Area
The issue with USB serial ports, is that many times it shows up as a different port every time. So sometimes it may be COM1 at other times it's COM4. That's pretty annoying. An IP address is always the same and implementing UDP discovery isn't a huge deal. But that's my preference.

It's not that hard to get linear signals through opto couplers. Use two identical opto couplers (a dual type is preferred). Hook the LEDs in series and drive the current through them with an op-amp. Use one of the photo transistors as the feedback to the op-amp, use the other to drive the isolated side. I can draw a schematic for you if you're not familiar with the circuit.

~Tom
__________________
21st Century Maida Regulator, Universal Filament Regulator, Damn Good 300B, Novar Spud, and more...
Neurochrome : : Audio - http://www.neurochrome.com/audio - Engineering : : Done : : Right
  Reply With Quote
Old 15th February 2012, 10:34 PM   #10
diyAudio Member
 
tubelab.com's Avatar
 
Join Date: Jul 2005
Location: South Florida
I have tossed this idea around in the back of my head for a couple of years now. Life's little roadblocks have kept my soldering iron cold since last October, but that is slowly improving. I had similar hardware ideas but you need to think about what to do with the data once you have it. Full curve plotting and tube matching is only a bit of code away. I considered the Arduino, and it may still ba a valid choice, but I thought what if there was an Arduino with BALLS. 32 bit's worth......


Digilent Inc. - Digital Design Engineer's Source

Not telling anyone what to do but, I already have two of them and an ethernet shield.
__________________
Too much power is almost enough! Turn it up till it explodes - then back up just a little.
  Reply With Quote

Reply


Hide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Valve curve tracer gm tester mogliaa Tubes / Valves 13 15th February 2011 02:34 PM
What tube bases to support for a new tube curve tracer crj11 Tubes / Valves 21 6th February 2010 03:15 PM
Modifying a tube tester into a curve tracer (oscilloscope X/Y outputs) ? bembel Tubes / Valves 27 23rd October 2006 09:34 PM
Tube Tracer jackinnj Tubes / Valves 11 20th March 2006 01:10 PM
usb-programmable micro? nuppe Parts 7 6th January 2005 04:32 PM


New To Site? Need Help?

All times are GMT. The time now is 09:30 PM.


vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2014 DragonByte Technologies Ltd.
Copyright 1999-2014 diyAudio

Content Relevant URLs by vBSEO 3.3.2