close-circle
Close
0%
0%

Microcontroller based curve tracer

Electronic Curve tracer for measure and compare components on circuit boards

Similar projects worth following
close
This project was based on the Huntron Tracker 2000. I made a simplier, but much usable curve tracer for my self. It is perfect for repair purposes, because with it really easy to find bad components on circuit boards.

What is it good for?

It is good for compare a working and a not working circuit board, without you have to apply any power to it. A curve tracer show Voltage - Current characteristic of any electric component, like diodes, capacitors, CMOS ICs and many more, which you want to look.

This equipment mostly used in repair purposes

I created two version of the tracker, called Version 1 and Version 2. Recently I am working on a new version (Version 3). Below this lets see how each version works.

Version 1

I started develop this version about a year ago, when I saw a Huntron tracker at my work and I thought it is not too difficult electronic, but so overprice at the same time.

The Version 1 has just one voltage and one frequency range, so it is a very basic model. The basic idea behind a curve tracer a simple circuit, which input is a sine wave and has some resistor in it. We need a current limit resistor and a current sense resistor.

The other big part is a dual channel oscilloscope with X-Y mode, or like my version I used a cheap arduino pro mini and a display, it is more then enough for a basic operation. I added a function, with the tracker can save a curve on the display and can measure an other component at the same time, so with that you can compare a good component with a bad component.

The schematic is a updated version, with some compensation, and modification on it, I could reduce the short circuit difference, so the line is almost vertical on the screen, when the two probe is shorted.

The upper op-amp is the voltage sense (X axis on the screen), the lower op-amp is sensing the current, which is flowing through the measured component (Y axis on the screen).

Some picture about the Version 1

It is not too pretty, but it works well, for a beginner I recommend to start with this, because it is cheap, and after easier to improve.

A short slow mo video how it is works.

I am planning to add some feature to this version, so it more capable of repair works.

Version 2

The second version is basically a much closer producte what I really wanted to create, it is based on the Version 1, but I learned a lot from my mistakes. I wanted a multi range and pc compatible version with the stand alone usability without pc, so most of the time I can use it like a independent device, but if I have to I can save the curves to the pc as well. The development was long, it took me more than half a year, and a lot of money as well. I think it is worth all the time I put in it.

Lets start show what I am talking about.

It has 25 voltage range, 5 resistance and 6 frequancy range. The screen is a 4" mcufriends tft touch screen, but in this operation I did not put any function on the touch screen. The Version 2 has two channel, it is more easier to compare curves at the same time.

The buttons light up when the actual function selected.

This device is much more complicated then the first version was, so I do not recommand a beginner to try to build this. I am planning on making a kit about every version, so it will still stay cheap and I can give a little bit of fun to build these.

The Version development is still on progress, so I did not have a propper schematic, but it will be released soon, as well as the code.

More info about this version you can find below at the log section.

Version 3

I started developing a new version at a couple weeks ago, which will be similar to the Tektronix TR210. It is basically the Version 2 without the screen and any pc connection option. For this version you need a dual channel oscilloscope, but I think it is not a problem for that who is looking these types of instruments. I would like to make this open source, like the Version 1 so if anybody want to help developing this version, please contact me.

Version 3 will have at least 25 voltage range, 5 resistance and minimum 5 frequancy range, and ass well two channel measuring input, with alternating mode.

I designed the scheamtic, it is not done yet, but close to...

Read more »

Portable Network Graphics (PNG) - 19.98 kB - 06/29/2017 at 20:11

eye
Preview
download-circle
Download

Portable Network Graphics (PNG) - 285.89 kB - 06/29/2017 at 20:11

eye
Preview
download-circle
Download

Adobe Portable Document Format - 68.04 kB - 06/29/2017 at 20:11

eye
Preview
download-circle
Download

Adobe Portable Document Format - 29.08 kB - 02/21/2017 at 18:15

eye
Preview
download-circle
Download

ino - 5.61 kB - 02/21/2017 at 18:14

download-circle
Download

  • Version 3 prototype is on the way

    Máté Tóth07/24/2017 at 19:29 0 comments

    I started working on the nev version prototype, which will be really simmilar to the Tektronix TR210. For use you will be need an oscilloscope to display the curves.

    It will have:

    • 2 channel
    • 6 voltage ranges
    • 3/6 frequancy ranges
    • will work both 230V and 110V AC

    I still have to finish the pcb designe, and manufacture them.

  • Version 1

    Máté Tóth06/29/2017 at 17:05 0 comments

      The hardware:

      It has tree main part, which are:

      1. Display (2.4" TFT Touch display)
      2. Arduino pro mini (5V 16Mhz version)
      3. Analog stage of the curve tracer

      The display has 320x240 pixel resolution, which is perfect for this application. I only use 240x240 pixels for the curves and the other part of the screen is used to show some basic parameter, which is minimum and maximum measured voltage. These two voltage point can show you the break down points on the Zener diode for example.

      When I was developing the sketch I was optimistic to use the Arduino pro mini, but end of the project I had to realise it can not handle very well the display functions and at the same time the measure functions. I ran out very quickly of the 2K RAM, so I had to do some optimalisation. In the "final" code I am using half of the program memory and almost 90% of the RAM. On the Pro Mini I had to use almost all digital and analog pin, to make it working.

      For power the microcontroller and the display I used a small DC-DC converter, which I not recommend to do, because I figured out it makes a lot of noise. This noise has a very bad effect on the current measurment, that why I do not have a perfectli straight line on the display.

      On the picture above you can see I hacked a button on the red probe. That button has a purpose, if you push it when you measure something, the tracer can store that curve into the memory. The stored curve showed on the display as a red curve, and same time you can measure a other component, which you want to compare it.

      The software:

      Part of the code was from my other project, which was a simple arduino oscilloscope I made. I never thought I can use it for anything usefull, because of the low speed, but for this project it was perfect. I modified to handle two channel, and it worked perfectly.

      In this project I did not need any trigger function, because it does not matter where the drawing is starting. It just simple measure 240 point on each channel as fast as can do, and after those stored in two array, it start drawing the dots on the display.

      After all this project was successful for me, I learned a lot.

      A slow mo video how it works:

      Upgrade plans:

      In the future I would like to separate the display functions from the measure functions.

      I am thinking about to make a function generator for drive the analog section, and then I can change the voltage, frequency and with some other component the resistance, with I can limit the current.

  • It is working properly

    Máté Tóth04/19/2017 at 18:03 0 comments

    I was working on the auto range function on the tracker, and it is working properly now. I can set anything, and the lines now stay stable. It was a the biggest job in this project I think, because I had to do a lot of research about op-amps. After all the programming was a bit difficult, but after I figured the method, is is quite simple.

    I did not make a video about the new function, becaus I last video is almost the same, one that changed, the waveform stay steady, whenever the Voltage or Resistance range changed.

    The curve tracer now have:

    - 25 Voltage range from 1V to 20V peak-peak

    - 5 Resistance range (50 , 2k, 10k, 17k, 25k ohm ) I will expend this to 10-15 ranges, it is not to difficult.

    - 6 Frequancy range from 120Hz to 1.2kHz I will expand this as well, up to 2kHz, or above.

    - USB connection to PC, for save waveforms.

    What do not work yet, known bugs:

    - Have to press twice the main menu button to go to main menu. (bug)

    - Need a front foil, with things printed on it.

    - First start up, the auto range function works only, when you go to first in to the Voltage menu

    - Have to make full schematic and circuit designe, to send out to the PCB fabricator

    - I can make a scanner for the curve tracer, but have to think, wher can I place a connector on the front panel.


    So yes I am slowly gettint closer to the end, but every working hours on it, I see more, in this project.

  • Saving curve to PC

    Máté Tóth03/26/2017 at 20:33 7 comments

  • Functioning with 2 channel!

    Máté Tóth03/13/2017 at 22:12 0 comments

    It was not to difficult and not too much work to made the second channel ussable. Whit this I can compare 2 component, and see if those have any different.

    I made a little video about how it is works now.

    In the video the first test was between a 6.2V zener and a 8.2V zener diode.

    In the second test I used a LED and a normal diode.

  • Like a huntron.

    Máté Tóth03/08/2017 at 21:28 0 comments

    I have been working hard on the tracker, I built it together, so no more breadboard floating around. I found some problem with the auto ranging circuit, so it is not working yet. I also had to change the rensistance ranges, so in this state I have 5 ranges, but I would like to upgrade to 8 or more, if it is possible. I have to work on a lot of things still, so it is some photo, where is the project now.


  • Version 2 is almost done!

    Máté Tóth02/23/2017 at 22:06 0 comments

      Hi everyone, I made a lot of progress since the last log. I worked on the Curve tracer like almost every day around 2-3 hours.

      It is more complex then I thought in the past, it will be. Now it is sort of working, with some function.

      What is working:

      1. I can change the voltage range between around 40Vpp - 0.5Vpp in 25 steps.
      2. I can change the frequency between 170Hz and 1.1kHz in 6 steps.
      3. It is working from the main now, but if I want I can program the microcontroller at the same time.

      What does not work yet:

      1. I can use only one resistance range at this moment, but I am working on it. It will have 15 resistance range at the end.
      2. The automatic voltage level stabiliser, which will adjust the lines to the maximum screen size, when you change the voltage range.
      3. I need to finnish the main sreen (the big one).
      4. I have to fix some bug.
      5. The alternating mode is not finnished yet. (second channel)
      6. And some little stuff.

      And the video ;)

  • Sine wave generator test

    Máté Tóth02/05/2017 at 17:45 1 comment

    Recently I had not too much progress on the V2, but on this weekend I made one of the main part of the curve tracer, which is the sine wave generator. On the Version 1, I did it with a simple solution, with a transformer, which give me 12V 50Hz sine wave. It was good for basic things, but if you would like to measure electronic components with series or parallel with inductance or capacitans, you have to use higher frequancy. At higher frequancy inductive and capacitive parts shoud act differently.

    This is the reason, because you have to use a variable frequancy source, to drive your front end electronic. I would like to have 6 or more steps on the frequancy range like the minimum is around 50 (60)Hz and the maximum is up to 1.5 - 2kHz.

    As you can see in the video, I did managed to do the electronic, and it is more than capable to make the sine wave up to 10-20Khz, if have to.

    I had some difficulty to set up the generator, because sadly I have not get an oscilloscope yet. So I had to do it differently, like I did on the Version 1, I modified the code to act like a simple oscilloscope, because if you think of it, a Curve tracer is a dual channel oscilloscope in X-Y mode, so the arduino is basically an oscilloscope in this project.

    After all, I was able to develop one channel with it, so I will just have to copy the other channel from the first one and it is ready to go. It can measure a sine wave up to 1.5-2kHz so it is in the ideal range. (If I have to I will use some ADC accelerator code)

    In the video the signal was free running, because I not use any trigger function. I programmed 2 main menu, which you see at the start, and that one where you can see and set the values for the Voltage, Resistance and to the Frequancy.

    The left upper button is the menu button, the next to it is the Voltage selector button. When you selected a menu, it show you on the leds and on the screen which menu you ar in. The up and down button is light up that direction where you can set the value. Like if you are 0 on the voltage value it is only showing the up button with the led.

    At this state where the project is, I have not figured out if I have to isolate the Arduino DUE (measure and contorl unit) from the sine wave generator completely or not, but I think I might be.

    I also changed the code and now the display is smoother than before on the Version 1.


  • Version 2 front panel demo, test.

    Máté Tóth01/10/2017 at 22:45 0 comments

    So I am done with the case, and the front electronics, the screen, buttons and LEDs all works.

    A little demo video, how it gonna look like.

  • A little progress in build Version 2.

    Máté Tóth01/02/2017 at 19:59 0 comments

    I mentioned in the last log, I had not too much time build the Curve tracer V2, because of the holidays.

    In January I would like to put together the hardware section of the tracker, I did already finish the front of the device, it is looking good I think. After I got the Arduino Due I put ut together with the screen, and started work on the display functions, which is far to be done, but it is something.

    The buttons will light up when you selected the mode with them.

    I am planning to make a sticker for the front, to hide all mistakes what I made, and also it will looks more professional.

    Some picture of the current state:


View all 11 project logs

Enjoy this project?

Share

Discussions

dardo wrote 08/19/2017 at 01:48 point

Hola, gracias por tan gran aporte, espero puedo resolver la versión 3, si puedo ser de ayuda dejo mi mail trcelectronica@gmail.com 

Le hago una consulta, el transformador de características es?

El código en la descarga es de la versión 1 ?

En la versión 3 usaría tres arduinos?

El MICRO, el DUE y el MEGA?

Saludos Dardo

  Are you sure? yes | no

Davey3D wrote 06/28/2017 at 13:58 point

Do I read correctly that you are not able to add beyond version 1? It would be nice to know so that I can plan to add some features myself or wait for you to release the information or an actual product to buy. I don't have nearly as many features as your V2. 

I think it  would make a nice product but I am guessing that you may have troubles with Huntron or some of the other manufacturers. I hope they have not caused you legal difficulties! :-( Perhaps you can sell it to them lol? Theirs looks primitive compared to this and I'm sure will not cost $2k ~ $4k  to make.



  Are you sure? yes | no

Máté Tóth wrote 06/28/2017 at 16:20 point

Hi,

I did not  have any problem with Huntron. I can sell my trackers I guess.

The Version 1 documentation you can find at the download section, but it is not too well made. I am working on a new updated Version 1 with better documentation and a new Version, which is called Version 3. It will be like the Tektronix TR210, but much cheaper. 

The Version 2 is waiting for some finishing, but it is in use at the moment. I am not sure what I wanna do with these, but I am sure I would like to make it open source and both make a kits from them, so I can get some money to develop new features.

If you are interrested, i am locking for people, who wanna help developing these.  (Like Open source project) 

  Are you sure? yes | no

Davey3D wrote 06/28/2017 at 21:32 point

I think a kit would be very popular. It would be too ambitious for me to tackle without one. I'm a hardware person that knows just enough programming to be dangerous lol. I don't know what I can offer there. Is there specific help that you're looking for? I have been thinking of ways of making something like this for a while. I decided to google before I started serious design and this popped up.


The V1 docs are fine from what I saw.  Perhaps not for an inexperienced person. The big limitation in the V1 design as you know and resolved is that it relies on the fixed 60hz signal. The other you've solved as well- the ability to compare 2 channels "A-B" testing. 

There are a couple of other players in the game that you may
already be aware of. This is probably closest to what you're doing- big
difference is that it's windows based. I think it's around $1K - $1.5K from
memory.  google: FADOS9F1


At the other end is the Saelig ABI System 8. It's an extensive system- starting around $6k. The AMS is the VI module. "Using a novel approach to V/I signature testing, the SYSTEM 8 AMS increases test coverage by varying the frequency of the test signal to observe the DUT's Device Under Test) response over a frequency range. This can lead to finding faults not detectable with other instruments."

It has 64 channels and can do a matrix scan. Rather than comparing the test point against a single ground reference, it can test one test points against multiple other test points. Our company is looking at buying one as the 64 channels and requiring less operator interpretation is better for a production system. 


Thanks!

  Are you sure? yes | no

Walter wrote 06/19/2017 at 03:12 point

This project is way awesome!

  Are you sure? yes | no

PROFESOR wrote 03/08/2017 at 21:31 point

Hi, Máté Version 2 is a beautiful project as you can see from the picture. I wish you continued success.

  Are you sure? yes | no

Máté Tóth wrote 03/08/2017 at 22:06 point

Thank you, I am planing to make a PC software for it, with that I will can save curves, and that is the goal.

  Are you sure? yes | no

PROFESOR wrote 02/24/2017 at 17:11 point

Hi, Máté wonderful project. You will share files. ??

Best regards

  Are you sure? yes | no

Máté Tóth wrote 02/24/2017 at 18:20 point

Hi PROFESOR, Thank you. To be honest with you all of who here because of you want to build it. I have to tell, I have many many reasons why I should not to publish everything about my Version 2. It is not fully my decision.  I am sorry, have to tell you now, but I can not publish the version 2 schematic and code.

But I will polish the Version 1 and fix al those bugs That have, and I will give every information about the Version 1 tobyou

  Are you sure? yes | no

xt1541xt1541xd1541 wrote 02/24/2017 at 16:52 point

cool Mate hope you finished soon !

  Are you sure? yes | no

Máté Tóth wrote 02/24/2017 at 18:13 point

I hope so

  Are you sure? yes | no

daniel elvas wrote 02/21/2017 at 17:29 point

hi Máté could you upload curve tracer V1 files if thats ok thank you

  Are you sure? yes | no

xt1541xt1541xd1541 wrote 02/07/2017 at 12:10 point

keep on going dude ur great !   we hope to see the final version soon ur freind 

respect

  Are you sure? yes | no

xt1541xt1541xd1541 wrote 02/03/2017 at 12:00 point

hello Mate i would like to help with some funds i find it a very nice project far away to be simple 

and at anytime i would like to see it work im a repair technician with a littel money cant afford a huntron or an abi or a deltest or a polar or fados1F7

anytime i would loe to help make a production version for you better casing better screen 

  Are you sure? yes | no

Máté Tóth wrote 02/03/2017 at 19:28 point

That is cool man, first I would like to make a working prototype of it and after I have some plan, to make both the V1 and the V2 ready for production. I would like to help people like you or me and make a cheaper but usable versions. 

If you have any good idea or question, or anything, go for it, I am open for ideas. And thank you for the offer I will ask you If i am stuck with the project

  Are you sure? yes | no

xt1541xt1541xd1541 wrote 02/03/2017 at 19:47 point

ok Man the ideas that i have is making a cnc version of it 

what i mean is make a programmable cnc to verify some tp you already tested on a working board and save them then later compare to other non working boards

  Are you sure? yes | no

xt1541xt1541xd1541 wrote 02/02/2017 at 23:12 point

hope we see the new version soon it is very very nice 

thank you my freind it is a wonderfull tool

  Are you sure? yes | no

Máté Tóth wrote 02/03/2017 at 19:12 point

Thank you, I am working on it, it is going well, maybe a couple of day and I can test the basic functions on it, but I have to work a lot on it still

  Are you sure? yes | no

PROFESOR wrote 01/30/2017 at 22:57 point

Hi,Mate please explain save button function which pin.??

  Are you sure? yes | no

Máté Tóth wrote 01/31/2017 at 06:35 point

It is buttonPin = 12,

So digital PIN 12 is the input. Do not forget to add a 10k pulldown resistor to it

  Are you sure? yes | no

PROFESOR wrote 01/29/2017 at 19:06 point

Waiting version 2 Test video. Best regards. :)

  Are you sure? yes | no

Máté Tóth wrote 01/30/2017 at 09:13 point

Thank you PROFESOR, I am working on the analog section recently, hoppefully it will be done shortly.

  Are you sure? yes | no

mkpael wrote 01/26/2017 at 11:50 point

Do you have some equivalent for the TLC2721P?

  Are you sure? yes | no

Máté Tóth wrote 01/26/2017 at 18:24 point

You can use any precision op-amp, like TLC 272 CN, TLC 2272 IP, TLC 2272 CP (these are dual precision op-amps), or two OP07CP, which is a singe op amp, that why you have to use 2 of those. OP07CP is much cheaper, and maybe better, but I did not have those on hand.

  Are you sure? yes | no

mkpael wrote 01/27/2017 at 16:19 point

ok. thank you.

  Are you sure? yes | no

PROFESOR wrote 01/24/2017 at 17:31 point

Hi Mate, Very nice Project Please shared files.???

  Are you sure? yes | no

Máté Tóth wrote 01/26/2017 at 14:04 point

Hi, I uploaded all the files, look at the section "files" above. It has the Arduino code and the shematic for the analog section. If you have any question, feel free to ask me

  Are you sure? yes | no

mkpael wrote 01/18/2017 at 19:09 point

Does this ci have any equivalent that I can use?

  Are you sure? yes | no

Máté Tóth wrote 01/23/2017 at 17:31 point

I do not understand clearly, what do you mean any equivalent. If you have an Oscilloscope and a Function generator you can use those. Or you can buy one Curve tracer like the Huntron Trackers, on eBay

  Are you sure? yes | no

mkpael wrote 01/16/2017 at 17:04 point

How can i modify the arduino code to use the processing?

  Are you sure? yes | no

Máté Tóth wrote 01/16/2017 at 20:52 point

Sorry, but I had not used processing yet, so I can not help with that. But I guess you have to send out the two array (value[ ], and value2[ ]) because these are the arrays, which contains the X and the Y cordinates. If you do not need any display function on arduino you can delete everything below the display text in the code.

  Are you sure? yes | no

mkpael wrote 12/21/2016 at 20:26 point
Can you make the project available for me to do?

  Are you sure? yes | no

Máté Tóth wrote 12/27/2016 at 22:29 point

I will publis the schematic and the code soon, when I get home at the weekend.

  Are you sure? yes | no

Máté Tóth wrote 01/02/2017 at 20:00 point

I uploaded the files you asked for.

  Are you sure? yes | no

mkpael wrote 12/21/2016 at 20:24 point

good project.

  Are you sure? yes | no

Máté Tóth wrote 12/27/2016 at 22:25 point

Thank you.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates