Отключить рекламу
Создать сайт
 Главная страница              Ст

  Разработка импульсного металлоискателя на базе  Arduino 

 

     Сделал один  металлоискатель на базе широкоизвестного МД Импад, он же Пират с управлением на Ардуино.  Потом попытался этот довольно простой металлоискатель еще более упростить.

 Все монтировал , как и ранее, на макетных платах Freeduino.

Принципиальная схема:

  

 ПО остается то же самое :



// PI metal detector for arduino version_16_min (C)alex---1967 2015
byte ss = 0;
byte c = 0;
byte i = 0;
int s0 = 0;
int s1 = 0;


void setup()
{
DDRB = 0xFF; // port B - all out
DDRD = 0xFF; // port D - all out

for (i = 0; i <16; i++) // калибровка / calibration
{
s0 = analogRead(A0);
s1 = analogRead(A0);
c = c + s1;
}
c = c / 16;
c = c - 2;
}

void loop()
{
PORTB = B11111111;
delayMicroseconds(200);
PORTB = 0;

s0 = analogRead(A0);
s1 = analogRead(A0);

ss = s1 - c;
ss = ss / 2;

PORTD = ss; // посылаем на индикатор (send to LEDs)

delay(4);
}
 

  

2-й вариант:





// PI metal detector for arduino version_18_min (C)alex---1967 2015
int ss0 = 0;
int ss1 = 0;
int ss2 = 0;
long c0 = 0;
long c1 = 0;
long c2 = 0;
byte i = 0;
int sss0 = 0;
int sss1 = 0;
int sss2 = 0;
int s0 = 0;
int s1 = 0;
int s2 = 0;


void setup()
{
DDRB = 0xFF; // port B - all out
DDRD = 0xFF; // port D - all out

for (i = 0; i <255; i++) // калибровка / calibration
{
PORTB = B11111111;
delayMicroseconds(200);
PORTB = 0;
delayMicroseconds(20);
s0 = analogRead(A0);
s1 = analogRead(A0);
s2 = analogRead(A0);
c0 = c0 + s0;
c1 = c1 + s1;
c2 = c2 + s2;


delay(3);
}
c0 = c0 / 255;
c0 = c0 - 5;
c1 = c1 / 255;
c1 = c1 - 5;
c2 = c2 / 255;
c2 = c2 - 5;


}

void loop()
{
PORTB = B11111111;
delayMicroseconds(200);
PORTB = 0;
delayMicroseconds(20);
s0 = analogRead(A0);
s1 = analogRead(A0);
s2 = analogRead(A0);
ss0 = s0 - c0;

if (ss0 < 0)
{
sss0 = 1;
}
ss0 = ss0 / 16;
PORTD = ss0; // посылаем на индикатор (send to LEDs)
delay(1);

ss1 = s1 - c1;
if (ss1 < 0)
{
sss1 = 1;
}
ss1 = ss1 / 16;
PORTD = ss1; // посылаем на индикатор (send to LEDs)
delay(1);


ss2 = s2 - c2;
if (ss2 < 0)
{
sss2 = 1;
}
ss2 = ss2 / 16;
PORTD = ss2; // посылаем на индикатор (send to LEDs)
delay(1);

if ( sss0+sss1+sss2 > 2)
{
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
digitalWrite(5,HIGH);
digitalWrite(4,HIGH);
digitalWrite(3,HIGH);
digitalWrite(2,HIGH);
digitalWrite(1,HIGH);
digitalWrite(0,HIGH);
delay(1);
sss0 = 0;
sss1 = 0;
sss2 = 0;
}
}
 

   

Чувствительность такая же.

                                                        

Главная страница  Main Page                        Страница Всякое-разное                                       

 

слова для поиска  PI arduino metal detector Arduino pulse induction metal detector металлоискатель на ардуино, make arduino metal detector металлодетектор на ардуино, миноискатель на ардуино, metal detector Arduino Uno, металлоискатель на  Arduino Uno, металлоискатель на Freeduino, простой металлоискатель на Ардуино, простейший металлоискатель на Ардуино  arduino metal detector   Arduino PI metal detector

металлоискатель Пират на Ардуино  металлоискатель Импад на Ардуино  гибридный металлоискатель на ардуино

arduino pulse induction metal detector circuit    arduino code for metal detector sensor    arduino uno metal detector     arduino based metal detector   metal detector arduino

 

 

Hosted by uCoz