picoDetector – A metal detector implemented on a PIC12F863

Remember that black tweeting apparatus security guards use to scan for metallic objects? Its called a metal detector for obvious reasons, its actually based on the concept of inductance.

The inductance of an inductor is dependent on the permittivity of its core; by changing the composition of the core one could change the inductance of the inductor. Its from this concept that Bruno Gavand based his version of a metal detector using a PIC12F863 and a 330uH ferrite bead he calls it the picoDetector. The picoDetector’s firmware was written in C using Microelectronika’s MicroC Pro and is compatible with most PICs.

Choosing AVR programmer

As we talked earlier there are many AVR programmers to choose. The simplest ones are bitbang programmers. These are straight forward programmers that can be built with as little components as few resistors (or no resistors at all). These can be COM, LPT or USB-to-TTL converter based.

DIY Bitbang programmers

Example of LPT port programmer

These are probably simplest to build as there is no need to convert any signals coming from port. Buffer chip is used only for safety reasons to protect computer port. Even simpler programmer cable can be found here. Continue reading

Microcontroller based servo tester

A servo motor is basically an actuating device which has the ability to know its current state of its output shaft. It is controlled through the control pulses applied to the control wire a method commonly called Pulse Coded Modulation, the output angle of the servo’s shaft is proportional to the pulse width applied on the control wire.

To test servos, hobbyists usually attach the servos to a little contraption where they turn a knob to inject stimulus to the servo. EdwardM shared this simple servo tester which is capable of comprehensively testing any modern servos, Ed included all necessary files to replicate the project.

The simple tester has two pushbuttons, CENTER and SWEEP and a potentiometer. CENTER just like the name suggests it positions the shaft at the center afterwards the potentiometer can then be used to change the shaft’s position while SWEEP goes through the entire angular range of the servo at a rate determined by the potentiometers setting.

The PIC12F675 used its internal timer to set up a constant frame of 20ms, while an ADC channel was used to determine the ON/OFF cycle set at the potentiometer.