loading

USB connected TI TMS320F28027 based ZRLC Tweezers with

Most Digital multi-meters measure Resistance and Capacitance and LC-meters can measure Inductance and Capacitance. Presented here is a ZRLC meter which can measure Resistance, Capacitance, Inductance and Complex Impedance.

The hardware is built around a TMS320F28027 micro-controller an 8-port-analog-switch ADG714 from analog-devices and a Microchip rail-to-rail dual operational-amplifier MCP6022.

The hardware details, .Hex file for the TMS320F28027 micro-controller and the VS2013 .Net 2.0 files for the PC GUI are provided in this Instructable.

The Source-Code ( TI CCS5.5 C-Code and VS2013 VB.Net-Code) is shared at the GitHub repository: https://github.com/ajoyraman/Aj_ZRLC_Tweezers .

A manual Impedance mode permits experiments and teaching of magnitude, phase and complex impedance concepts.

This hardware will form an invaluable tool for electronics students and hobbyists working with SMD components.



It should be possible to build this unit for less than $ 25.0

Step 1: Principle of Operation

This application is based on the principle of measuring the voltage (amplitude and phase) across an unknown Impedance when fed a sin-wave of known frequency and amplitude through a known resistance.

The hardware is built around a TMS320F28027 micro-controller an 8-port-analogue-switch ADG714 from analogue devices and a Microchip rail-to-rail dual operational-amplifier MCP6022.

A High-Frequency PWM waveform is generated in the micro-controller and modulated by a 64-Bit sin-wave sequence. This when filtered and buffered forms a sin-wave source ( select able 300Hz, 3kHz, 30kHz). The sin-wave source is connected to one of 4-resistors (100, 1k, 10k, 100k) using the analogue-switch. The selected resistor being connected to the unknown Impedance whose second terminal is connected to ground.

Once a frequency and resistance have been set the sin-wave is generated on command and 128 10-Bit samples of Vout (signal-source) and Vin (Voltage at unknown Impedance) are A/D converted and stored in internal memory.

This data is transferred to a PC through an USB port using an USB-to-TTL converter, which also powers the hardware.

Suitable digital-signal-processing on the PC using the VS2103 GUI software displays the real and imaginary part of the unknown Impedance. This is interpreted as Resistance, Capacitance, Inductance or Complex Impedance.

Step 2: Hardware, PCB, BOM and Cost

Hardware & PCB

The Schematic and PCB have been designed using Eagle 7.1 and the design files including the CAM files are available as ZRLC_Main_Eagle_7.1.rar.

The 1:1 printable pdf files for the Bottom and Top-Mirrored are attached for those who wish to make the PCB using the toner-transfer method.

The BOM parts and values are available as .csv files.

This hardware when built is interfaced to the PC USB port using a USB-TTL converter which supplies the +5V power and the Rx-Tx as 3.3V compatible signals. Currently the hardware has been tested using a converter based on the FTDI FT232RL and should work with the CP2102 USB to TTL USB UART serial port converter module.

The major component cost is contributed to by the Integrated Circuits and USB-TTL converter:

TMS320F28027DAT, 32 bit C28x Microcontroller 60 MHz 64 kB Flash, 12 kB RAM, I2C SPI 38-Pin TSSOP
RS Stock No. 798-4475 Mfr Part No. TMS320F28027DAT 524.61 Rs/ $ 9.0

MCP6022-I/P, Dual Operational Amplifier 10 MHz CMOS, R-R, 3 V, 5 V, 8-Pin PDIP RS Stock No. 403-064 Mfr Part No. MCP6022-I/P 108.65 Rs/ $ 2.0

ADG714BRUZ, Analogue SPST Switch Octal SPST, 3 V, 5 V, 24-Pin, TSSOP, 8 RS Stock No. 538-8333 Mfr Part No. ADG714BRUZ 351.64 Rs/ $ 6.0

CP2102 USB to TTL USB UART serial port converter module ebay 235.00 Rs/ $ 4.0

Total= 9 + 2 + 6 + 4 = $ 21.0

It should be possible to build this unit for less than $ 25.0

Step 3: Probes, Box and Test Modes

The probes are detachable and have been fashioned from stainless-steel forceps of the type used for physics experiments. They are cut to size bent, insulated and a transparent plastic sleeve slipped over them.

The unit is boxed in a small plastic container.

As the probe tips are detachable there are two test methods:

1. Tweezers mode

2. Stand alone using miniature clips with wires plugging into the output pins.

For testing a set of components were rigged up on a bread-board and Inductors wound on small cores

Step 4: Software

Embedded processor software:

Programming the TMS320F28027 is extremely easy as it can be carried out using a Freeware version of C2Prog from Coadskin.com. This permits programming through the serial port already configured for use by the hardware.

Using the Aj_ZRLC.Hex file provided, just remove the jumper give a reset and run the programming utility. Connect back the jumper and give a reset for the embedded program to work. Done !

GUI software VS2013 configured for .Net 2:

Just extract the files from Aj_ZRLC_Release.rar to a folder on the PC and execute the Aj_ZRLC.exe file.

By configuring the file for .Net 2 it is compatible with WinXP and Win7.

For Developers:

The Source-Code ( TI CCS5.5 C-Code and VS2013 VB.Net-Code) is shared at the GitHub repository:

https://github.com/ajoyraman/Aj_ZRLC_Tweezers .

Simple one character ASCII commands are used to communicate with the hardware, this Interface Control Document summarizes the commands and responses on the serial link:

COMMANDS and RESPONSES (Interface Control Document)

T for Test

15-Oct-14 09:37:42.552 [TX] - T

15-Oct-14 09:37:42.565 [RX] - Aj_ZRLC Ready

G for set switch 100 Ohms

15-Oct-14 09:38:09.929 [TX] - G

15-Oct-14 09:38:09.943 [RX] - R100

H for set switch 1k Ohms

15-Oct-14 09:38:14.501 [TX] - H

15-Oct-14 09:38:14.514 [RX] - R1K

J for set switch 10k Ohms

15-Oct-14 09:38:18.432 [TX] - J

15-Oct-14 09:38:18.449 [RX] - R10K

K for set switch 100k Ohms

15-Oct-14 09:38:20.881 [TX] - K

15-Oct-14 09:38:20.896 [RX] - R100K

L for all switches off

15-Oct-14 09:38:27.183 [TX] - L

15-Oct-14 09:38:27.200 [RX] - ROFF

A for acquire at 30 kHz

15-Oct-14 09:38:36.855 [TX] - A

15-Oct-14 09:38:36.896 [RX] - DoneA

B for acquire at 3 kHz

15-Oct-14 09:38:45.856 [TX] - B

15-Oct-14 09:38:45.935 [RX] - DoneB

C for acquire at 300 Hz

15-Oct-14 09:38:53.360 [TX] - C

15-Oct-14 09:38:53.695 [RX] - DoneC

Small c for compensate oscillator

15-Oct-14 09:39:28.820 [TX] - c

15-Oct-14 09:39:28.832 [RX] - %

Gives the temperature in decimal mode

15-Oct-14 09:39:28.820 [TX] - 099

15-Oct-14 09:39:28.832 [RX] - 037

O for Output (read acquired data)

15-Oct-14 09:40:29.300 [TX] - O

15-Oct-14 09:40:29.314 [RX] -

Response seen in Hex

128 values for each channel Vout and Vin

10 bit data msb first alternately Vout and Vin

15-Oct-14 09:40:29.300 [TX] - 4F

15-Oct-14 09:40:29.314 [RX] - 05 B4 08 A2 05 B4 08 58 05 1F 08 02 04 F8

08 0A 04 A1 07 D5 04 57 07 AE 04 0A 07 6C 03 DE 07 4F 03 9B 07 4F 03 87

07 12 03 98 06 EF 03 29 06 E9 03 68 06 69 03 72 06 7A 03 72 06 56 03 A0

06 4A 03 7C 05 EF 03 DB 06 05 04 1E 05 FA 04 5C 05 E6 04 AA 05 E3 04 ED

05 E3 05 65 05 CB 05 DC 05 DD 06 46 05 F0 06 7A 05 FC 07 25 05 DB 07 25

06 1B 07 9C 06 35 08 1F 06 5A 08 7B 06 6B 09 04 06 9E 09 6E 06 BF 09 EC

06 FB 0A 64 06 FB 0A 84 07 34 0B 00 07 2A 0B 42 07 7A 0B 9E 07 A5 0B BA

07 E6 0B BA 08 06 0B E4 08 34 0C 0F 08 62 0C 1D 08 88 0C 53 08 D9 0B EC

08 AC 0C 0A 08 FC 0B DC 08 FC 0B AC 09 0F 0B 84 09 2B 0B 14 09 4E 0A EC

09 35 0A 94 09 62 0A 94 09 62 0A 5F 09 8B 09 BC 09 4E 09 5D 09 50 08 F1

09 47 08 9A 09 43 07 E4 09 00 07 80 09 00 07 0F 08 F2 06 A6 08 D4 06 4C

08 B9 05 9C 08 9C 05 5C 08 44 05 5C 08 31 04 FC 08 02 04 AA 07 DD 04 46

07 9A 03 FE 07 6E 03 D3 07 46 03 AE 07 20 03 9F 07 20 03 49 07 0C 03 59

06 A8 03 51 06 9E 03 79 06 72 03 8B 06 65 03 8B 06 4B 03 90 06 12 03 CF

06 0A 04 07 05 F8 04 74 06 12 04 8A 05 CD 04 FA 05 E4 05 48 05 E4 05 B4

05 D3 06 2F 05 DF 06 90 05 F3 07 10 05 EF 07 8A 06 12 07 8A 06 2C 08 1C

06 5B 08 60 06 50 08 E7 06 8A 09 62 06 B8 09 C9 06 DD 0A 35 07 14 0A 77

07 14 0A E6 07 2F 0B 45 07 6D 0B 86 07 A7 0B 7F 07 DC 0B E7 07 D4 0B E7

08 32 0C 08 08 5F 0C 36 08 9F 0B FA 08 90 0C 1F 08 DB 0C 08 08 F4 0C 0F

09 33 0B 9C 09 33 0B 8E 09 11 0B 45 09 4A 0A F6 09 52 0A A6 09 5B 0A 2D

09 6D 0A 2D 09 52 09 D8 09 5E 09 74 09 5B 09 16 09 57 08 4C 09 04 08 0F

09 13 07 9D 08 FF 07 18 08 FF 06 93 08 CC 06 4A 08 A4

Step 5: Experimentation and Teaching

IMPEDANCE MODE

The impedance mode permits manual selection the test frequency and test resistance and can be used to explain the concepts of phase magnitude, their variation with frequency and changes in complex impedance.

The raw data provided and waveform display give additional information which is useful for this purpose.

For example 1:

A pure inductance is measured as 78 uH with a series resistance of 0.91 Ohms

When a 10 Ohm resistor is added in series it indicates 75 uH with 10.99 Ohms

Or example 2:

A 10 nF capacitor is measured under different conditions

At 3 kHz with a test resistance of 1.2 k Ohms the gain is 0.951 and the phase is -12.52 deg

and at 30 kHz with the same test resistance the gain is 0.376 and phase -68.69 deg.

Step 6: Results, Measuring Range and Accuracy

Sample Results:

These screen shots indicate the results of sample tests on components:

1. Opening screen showing connection to com port

2. R 10K

3. L 80 uH

4. C 10 nF

5. L with Series R 100uH 11 Ohm

Accuracy:

Keeping the magnitude of Vout/Vin within the range 0.2 to 0.8 the accuracy is within 5%

Accuracy is degraded outside these limits.

Measurement Ranges

The corresponding theoretical measurement ranges with Test Resistance & Test Frequency are:

Resistance:

100 Ohms with 3 kHz ------- 25 Ohms to 400 Ohms

1200 Ohms with 300 Hz ------ 300 Ohms to 4.8 k Ohms

15 k Ohms with 300 Hz ------- 3.75 k Ohms to 60 k Ohms

180 k Ohms with 300 Hz ------- 45 k Ohms to 720 k Ohms

Capacitance:

100 Ohms with 300 Hz -------- 25.9 uF to 3.98 uF

100 Ohms with 3 kHz -------- 2.59 uF to 0.398 uF

1200 Ohms with 3 kHz -------- 0.21 uF to 33.16 nF

15 k Ohms with 3 kHz -------- 17.3 nF to 2.65 nF

180 k Ohms with 3 kHz -------- 1.44 nF to 221 pF

180 k Ohms with 30 kHz -------- 133 pF to 20.4 pF

Inductance:

100 Ohms with 30 kHz -------- 122 uH to 1.97 mH

1200 Ohms with 30 kHz -------- 1.47 mH to 24 mH

15 k Ohms with 30 kHz -------- 18 mH to 294 mH

180 k Ohms with 30 kHz -------- 221 mH to 3.51 H

Step 7: Precautions and Disclaimer

Precautions:

The impedance under test is fed signals through an analog-switch which is a sensitive device. Therefore capacitors under test must be fully discharged and no testing of components should be carried out on circuits which are powered.


Warning & Disclaimer:

All content provided here is for informational purposes only. The author makes no representations as to the accuracy or completeness of any information. The author will not be liable for any errors or omissions in this information. The author will not be liable for any losses, injuries, or damages from the display or use of this information including software.

<p>Very cool. Beautiful tester!</p>
<p>Thank you for sharing your excellent design. Your scheme provides a multi-function meter without need in a PC for GUI. I am also impressed with your other projects and will study them in detail. </p>
<p>Hey</p><p>If you are interested in PCBs made with Kicad (looks like Eagle-level functionality but not limited) it also displays a 3D view of the circuit you have achieved and you can create your 3D Fi separates Wings3D thanks to software that is also free.</p><p>Here is the link to Kicad:</p><p>http://www.kicad-pcb.org/display/KICAD/KiCad+EDA+Software+Suite</p><p>the community also created no components to enrich the original library Kicad here is the link:</p><p><a href="http://www.kicadlib.org/" rel="nofollow">http://www.kicadlib.org/</a></p><p>the bottom of the page there is complete realization of a PCB which I did a few years there is a logic probe very simple but very functional,</p><p>Logic probe is &quot;Vampire&quot; by Mic **.</p>
Thanks Mic100, I also saw your POLLED VAMPIRE PROJECT, great! I currently use a mix of Eagle, Orcad and DesignSpark for my PCB's. I'll consider KICAD for the next project with 3D visualization.
<p>Hey</p><p>I know only the free version of Eagle, it is very efficient Kicad I use for 3D is very precise, Wings3D allows for very fine components when well mastered, you can look at this link:</p><p>http://smisioto.no-ip.org/elettronica/kicad/kicad-en.htm</p>
<p>GreatJob very useful, </p><p>Thank You :)</p><p>I also made a probe of this kind whose author is Heli website is in Spanish, but you can download the project full (PCB made with Eagle)</p><p><a href="http://heli.xbot.es/?p=40" rel="nofollow">http://heli.xbot.es/?p=40</a></p><p>on my link in the project is made with Kicad and I translated the documentation in </p><p>English and French.</p><p><a href="http://1drv.ms/1mEdoZc" rel="nofollow">http://1drv.ms/1mEdoZc</a></p><p>the bottom of the page there SuperProbePIC16F870 2 file (this is the super simple probe) and SuperProbePlusPIC16F876 is most useful I attached the screenshot in Kicad of SuperProbePlus</p>
Nice idea!!!
Smart idea! I really like this project. Thanks for shearig :)
<p>Awesome make ! Thanks for sharing !</p>
<p>Very cool!!</p>

About This Instructable

7,629views

53favorites

License:

Bio: I am a retired Electronic Systems Engineer now pursuing my hobbies full time. I share what I do especially with the world wide student community.
More by ajoyraman:Extend Defective Fluorescent Tube-Light Life COMMUTATOR BASED DIRECTION INDICATOR Z Fold Display Board Standee 
Add instructable to: