Kontakti

Mans impulsu metāla detektors uz Arduino. Viens no vienkāršajiem metāla detektoriem ar diskriminatoru “Megatron My impulsa metāla detektors Arduino - FoxyPI projektā

Informācija tiek sniegta tikai izglītības nolūkos.
Vietnes administrators nav atbildīgs par sniegtās informācijas izmantošanas iespējamām sekām.

Maksa Arduino var izmantot impulsu metāla detektorā ( Impulsu indukcijas metāla detektors (PI)) gan kā impulsu ģenerators, gan rezultātu apstrādei un attēlošanai.

Jūs varat lasīt vairāk par analogā impulsa metāla detektora darbības principiem.

Mans impulsa metāla detektors Arduino - FoxyPI projektā

1. versija (FoxyPI v1) (novecojusi)
Kas jauns: pirmā versija.
GNU vispārējā publiskā licence v3.0, pieejams plkst Github repozitorijā https://github.com/Dreamy16101976/foxyPIv1.

Prototipa testēšanas video:
https://youtu.be/VWCA6jYK5tY

2. versija (FoxyPI v2) (novecojusi)

Kas jauns:

  • pievienota analizētā spoles impulsa ilguma vidējā aprēķināšana, izmantojot "slīdošā vidējā" algoritmu ( slīdošais vidējais, M.A.);
  • pievienota iespēja konfigurēt impulsu ilgumu, intervālus starp tiem, aizkaves laiku un kustīgā vidējā loga platumu, izmantojot izvēlni, kā arī saglabāt iestatījumus EEPROM;
  • pievienotas izmaiņas signāla tonī, kad mainās spoles impulsa ilgums;
  • pievienots metāla detektora dinamiskais darbības režīms;
  • mainīts draiveris MOSFET;
  • Slēdži “+5 V” un “+12 V” ir apvienoti, un brīvais slēdzis tiek izmantots, lai kontrolētu fona apgaismojumu. LCD- ekrāns;
  • Ir pievienotas gaismas diodes, kas norāda signāla stiprumu.

Skices pirmkoda licence:īpašumtiesības .


Hex
- fails
programmaparatūra FoxyPI(versija 2.11) priekš - .
Kā mirgot hex-fails uz kuģa Arduino, es aprakstīju.

Lauka pārbaude un meklēšana(26.03.2016.) - https://youtu.be/Xk4X6O1646M
Prototipu pārbaude(4.01.2016.) - https://youtu.be/ikJbqUCbyvw

Metāla detektora ķēde (2. versija):

3. versija (FoxyPI v3)

Kas jauns:

  • lai noteiktu signāla līmeni, tiek izmantots nevis komparators, kā iepriekšējā versijā, bet gan ADC Arduino;
  • divi meklēšanas režīmi - dinamiskais un statiskais (pārslēgšanās starp režīmiem, ilgi nospiežot pogu);
  • signāla integrācija tiek izmantota, lai palielinātu stabilitāti;
  • tiek veikta integratora un augstfrekvences filtra emulācija;
  • mainīti izvēlnes vienumi;
  • turot pogu, to ieslēdzot, tiek atvērta iestatījumu izvēlne;
  • nospiežot pogu, tiek uzsākta/pārtraukta balansēšana;
  • tiek izmantoti divi audio un vizuālās indikācijas līmeņi, nevis četri.

Šajā versijā nav mērķa diskriminācijas.

Metāla detektora ķēde (3. versija):

  • ir izslēgti elementi, kas saistīti ar salīdzinājuma izmantošanu, R5, R6;
  • Lai palielinātu op-amp pastiprinājumu, tika mainīta rezistora vērtība R3 pie 320 kOhm (sastāv no diviem rezistoriem ar nominālvērtībām 220 kOhm un 100 kOhm);
  • Ir mainīta mikrokontrollera barošanas ķēde.

Metāla detektora ķēdē divas viena no otras izolētas "zemes". - analogā (zemes ikona) un digitālā (korpusa ikona).

Skice pirmkoda licence : īpašumtiesības.


Hex
- fails
programmaparatūra FoxyPI -

Elfs- fails programmaparatūra FoxyPI(versija 3.3, datēta ar 16.04.2019., pirmā pieejamā programmaparatūras versija 3.3) -

Kā mirgot hex-fails uz kuģa Arduino, es aprakstīju.


Video par "gaisa" testiem dinamiskā režīmā (04/07/2019, versija 3.2) - https://youtu.be/HzIiA9ws0Ak
Video ar “gaisa” un “pazemes” testiem dinamiskā režīmā (04/11/2019, versija 3.3) - https://youtu.be/GwRvhjCmOE4
Video par "gaisa" testiem statiskā režīmā (04/13/2019, versija 3.3) - https://youtu.be/1ulevNWBZ9A

Elektroniskās vienības izskats:


skats no augšas:
1 - LCD- ekrāns
2 - LED
3 - pjezodinamiskais
4 - vadības poga
5 - LCD ekrāna fona apgaismojuma slēdzis
6 - strāvas slēdzis
7 - gaismas diodes, kas norāda signāla stiprumu

Metāla detektors tiek transportēts izjauktu trīs daļās - elektronika un barošanas bloki ar rokturi, stienis, spole ar stiepli:

Samontētā metāla detektora izskats:

Darbojas ar metāla detektoru

Metāla detektora ieslēgšana un palaišana

Kad ieslēdzat metāla detektora strāvu (slēdzis 6), vispirms sākas atpakaļskaitīšana:


Lai pārvietotos starp izvēlnes vienumiem, ir nepieciešams īsi nospiest pogu (4) (iedegas zaļā gaismas diode), un, lai izvēlētos izvēlnes vienumu, ir nepieciešams ilgi nospiest pogu (4) (iedegas sarkanā gaismas diode). :

Lai pārvietotos starp izvēlētā izvēlnes elementa parametru vērtībām, ir nepieciešams īsi nospiest pogu (4) (iedegas zaļā gaismas diode), un, lai izvēlētos parametra vērtību, ir nepieciešams ilgi nospiest pogu (4). (iedegas sarkanā gaismas diode):

Lai izietu no izvēlnes, atlasiet " IZEJA":

Kad atpakaļskaitīšana ir pabeigta, displejā tiek parādīts ziņojums ar ierīces apzīmējumu un programmatūras versijas numuru ("FoxyPI v3.x"), logotips (1), un no pjezo skaļruņa atskan skaņas signāls ar mainīgu toni ( 3), kas atbilst dažādiem signāla līmeņiem un kopā ar mirgojošām gaismas diodēm:

Mērķu noteikšana, izmantojot metāla detektoru

Pēc tam, ja nav atlasīts neviens izvēlnes ieraksts, tiek parādīti pašreizējie ierīces iestatījumi:

L - impulsa ilgums (μs, mums)
R - pulsa atkārtošanās ātrums (pulss/s, pps)
es - integratora koeficients
F - filtra koeficients
S - skaņa (ieslēgts/izslēgts, IESL /IZSLĒGTS )

Pēc tam tiek veikta balansēšana ( nulles noteikšana) statiskā režīmā:

Metāla detektors darbojas divos režīmos:

  • statiskais režīms (statiskais/nekustības režīms) (noklusējums) - tiek ņemts vērā signāla līmenis, nav nepieciešama pastāvīga spoles kustība (var izmantot, lai noskaidrotu mērķa atrašanās vietu ( precīzi nosakot) un kā galveno meklēšanas režīmu);
  • dinamiskais režīms(dinamiskais/kustības režīms) - tiek ņemta vērā signāla izmaiņu dinamika, meklēšanas procesā spolei jābūt kustēties virs zemes virsmas

Līdzsvarojot ir vēlams kustēties spole (līdzīgi darbībām, veicot meklēšanu - tas ir īpaši svarīgi, balansējot dinamiskā režīmā). Nepieciešama automātiskā balansēšana uz tīras augsnes vietas(ne virs mērķa) un nesatur minerālvielas. Jūs varat lasīt par augsnes traucējošo ietekmi uz impulsu metāla detektoru.

Ir svarīgi mēģināt pārvietoties ( slaucīt) spole paralēli zemes virsmai, pretējā gadījumā Zemes magnētiskā lauka ietekmes dēļ uz spoles tiks inducēts kāds spriegums ( EFE -zemes lauka efekts), kas var izraisīt nepatiesus signālus: pat vienkārši pārvietojot spoli virs zemes:

Ja meklēšanas spole tiek pārvietota nepareizi, mainās magnētiskā plūsma $\Phi$ caur to:

Tas izskaidrojams ar to, ka magnētisko plūsmu nosaka izteiksme:
$\Phi = (B\, S\, sin\, \alpha)$, kur $B$ ir Zemes magnētiskā lauka indukcija, $S$ ir spoles šķērsgriezuma laukums, $\alpha $ ir leņķis starp spoles plakni un lauka līniju virzienu Zemes magnētiskais lauks.
Iepriekš redzamajā attēlā spoles pirmajā pozīcijā magnētiskā plūsma ir nulle, un, pārvietojoties, tā iegūst vērtību, kas nav nulle. Sakarā ar izmaiņām magnētiskajā plūsmā caur spoli, saskaņā ar elektromagnētiskās indukcijas likumu tajā tiek inducēts EML, kas izkropļo saņemto signālu.

Neprecīza spoles kustība paaugstina signāla līmeni par 4000...5000, bet enerģiska spoles kustība no horizontāla uz vertikālu stāvokli - par 15000...20000.

Automātiskās balansēšanas procesā tiek iestatīta analizētā signāla optimālā sākotnējā aizkave un ilgums, kā arī tiek novērtēta signāla dinamika (dinamiskā režīmā) vai signāla līmenis (statiskajā režīmā), vienlaikus atjaunojot “nulles” līmeni. tiek pavadīts īss skaņas signāls. Kad atjaunināšana ir apturēta, balansēšanu var apturēt, nospiežot pogu (4). Jūs varat arī sākt/pārtraukt balansēšanu darbības laikā, nospiežot pogu (4). Kad automātiskā balansēšana ir pabeigta, tiek atskaņots īss skaņas signāls un tiek parādīta “nulles” vērtība (maksimālā, parastajās vienībās).

Pēc tam sākas metāla detektora galvenais darbības cikls, un ekrānā tiek parādīts pašreizējais režīms ( REŽĪMS ) detektora darbība, NULLE - balansēšanas laikā norādītā “nulles” līmeņa vērtība (statiskajam režīmam tipiskās vērtības 120 000 - 125 000 , kad impulsa ilgums mainās no 150 līdz 250 μs, tas nedaudz mainās) un RX - analizētā signāla sākuma un beigu punkti (diapazons) (tipiskās vērtības - 16...43, , kad impulsa ilgums mainās no 150 līdz 250 μs, tie nedaudz mainās) uz impulsa ilgumu 150 μs) (pārslēgšanās starp režīmiem tiek veikta, ilgi nospiežot pogu (4)):

Nepatikšanas pazīmes(nulles līmenis/diapazons)

  • pārrāvums spolē - 12250 / 3...4 vai 23000 / 2...4
  • neinduktīvā spole (aizvietošana ar 10 omu rezistoru) - 23000 / 0...2 vai 1...3

Piemērs sākotnējo “nulles” līmeņu izplatībai:

111289 111701 111762 111819 112029
111907 112067 111871 111827 111625

Atklājot metāla “mērķa” objektu, atskan mainīga toņa skaņas signāls un iedegas zaļā gaismas diode (2), kā arī zaļā vai sarkanā gaismas diode (7). Audiovizuālās indikācijas raksturs mainās atkarībā no ierakstītā ieraksta dinamikas (dinamiskā režīmā) vai līmeņa (statiskā režīmā). RX- impulss:

Gaismas diodes Statiskais režīms Dinamiskais režīms
nav mērķa nav mērķa
vājš signāla līmenis signāla līmenis samazinās
vidējais signāla līmenis signāla līmenis paaugstinās
spēcīgs signāla līmenis -

Tuvumā esošās elektroniskās ierīces var traucēt metāla detektora darbību:

iejaukšanās no LCD-TV (jūtams attālumā līdz metram):

Traucējumi no CFL (jūtami pie lampas):

Traucējumi no tīklam pieslēgtā transformatora magnētiskā lauka izpaužas trila veidā - ļoti biežas darbības:

Darbības laikā ierīcei jāatrodas attālumā no strādājošiem televizoriem, datoriem, strāvas transformatoriem, CFL!

Metāla detektora uzstādīšana

Ja, ieslēdzot, turat nospiestu pogu (4), līdz sākas atpakaļskaitīšana, pēc tam atverat izvēlni, kas ļauj mainīt metāla detektora iestatījumus.

Izvēlņu struktūra (noklusējuma iestatījumi ir iezīmēti):

  • PULSE LEN- impulsa garums (100/ 150 /200/250 mums)
  • PULSA FREKVENTS- pulsa atkārtošanās biežums (10/20/30/40/50/60/70/ 80 /90/100 pps)
  • INTEGRATORS K- integratora koeficients (5/ 10 /20/30/40/50)
  • FILTS K- filtra koeficients (10/20/30/40/50/60/70/ 80 /90/100/110/120/130/140/150/160/170/180 /190/200)
  • SKAŅA- skaņa ( IESL/IZSL.)
  • IZEJA- iziet no izvēlnes

Īsi nospiežot pogu (4), tiek atvērts nākamais izvēlnes vienums, un, ilgi nospiežot, tiek atvērtas atlasītā iestatījuma vērtības.
Īsi nospiežot, tiks pārvietota uz nākamo iespējamo vērtību, un, ilgi nospiežot, pašreizējā vērtība tiks saglabāta un pāriet uz izvēlnes augšējo līmeni (uz iestatījumu sarakstu).

Pēc atlases IZEJA iziet no izvēlnes un saglabā iestatījumus EEPROM.

Metāla detektoru pārbaude

Lai pārbaudītu metāla detektoru montāžas laikā, varat ielādēt Arduino pārbaudīt programmaparatūru (versijai 3):

Hex- fails pārbaudīt programmaparatūru FoxyPI -

Elfs- fails pārbaudīt programmaparatūru FoxyPI(versija 3.T, datēta ar 24.04.2019.) for -

Testa režīmā pēc ieslēgšanas metāla detektors meklēšanas spolē ģenerē strāvas impulsu ar ilgumu 150 μs, pēc tam reģistrē un ekrānā parāda saņemto signālu. Nospiežot pogu, tiek ģenerēts jauns impulss utt.

Signālu piemēri:
1 - bez mērķa, 2 - ar mērķi:

Metāla detektoru testi

Es veicu metāla detektora testus uz attīrītas zemes virsmas:

Mērķi

Testēšanai tiek izmantoti dažādi mērķi:


1 — alumīnija plāksne no cietā diska (biezums 1,3 mm, ārējais diametrs 3,75 collas, cauruma diametrs 1 colla)
2 - Krievijas 5 rubļu monēta no vara, kas pārklāta ar vara niķeli (diametrs 25 mm, svars 6,45 grami)
3 - zelta gredzens

Mērķa noteikšanas diapazoni "gaisā":

Interesanti, ka tad, kad divas plāksnes (mērķis 1) ir novietotas viena uz otras, noteikšanas diapazons samazinās!

Samazinoties akumulatora spriegumam, noteikšanas diapazons ievērojami samazinās:
Ārvalstu metāla detektoros Lielbritānijas 10 pensu monēta bieži tiek izmantota kā testa mērķis - 10p ar diametru 24,5 mm, kas iepriekš (līdz 2012. gada janvārim) bija izgatavots no vara-niķeļa sakausējuma (varš 75%, niķelis 25%):
Šādas monētas analogs ir ASV 25 centu monēta. - 25 ASV centi ( ASV ceturksnis) diametrs 24,26 mm biezums 1,75 mm sver 5,67 gramus:
Deklarētais šādu monētu atklāšanas dziļums dažādiem metāla detektoriem ( maks. dziļums ASV kvartālam):
Altaja Treasure Seeker 2 hobija metāla detektors- 15 cm;
Prestige metāla detektors- 16 cm;
Metāla detektors Supereye S3000- 18 cm;
EE Treasure Hunter- 20 cm.

Masīvu mērķu noteikšanas diapazoni statiskā režīmā:

Metāla detektors nekonstatē izstrādājumus no pulverdzelzs un daudzām ferīta detaļām (1), bet dažus ferīta izstrādājumus (2) nosaka spoles iekšpusē vairāku cm attālumā no tinuma:

Kad ferīta magnēts ātri pārvietojas spoles iekšpusē, rodas viltus trauksmes:

Pirmās meklēšanas rezultāts dārzā ar FoxyPI v3.3 (21.04.2019.):

Otrās meklēšanas rezultāts dārzā ar FoxyPI v3.3 (27.04.2019.):

Un šeit ir vairāk atradumu, bet pēc elektrolītiskās attīrīšanas (vairāk par to zemāk):

Jūs varat lasīt par dažiem interesantiem atradumiem.

Tīrīšanas atradumi no rūsas

Atrastie atradumi bieži vien ir klāti ar rūsas kārtu (dzelzs oksīds Fe 2 O 3).
Rūsas attīrīšanai no atradumiem var izmantot vairākas metodes:

ķīmiskā metode- ķīmiskas vielas izmantošana, kas pārvērš rūsu viegli noņemamā (irdenā) stāvoklī:

  • skābeņskābe;
  • ortofosforskābe.

elektrolītiskā metode - visefektīvākais, izmanto netīrumu un korozijas produktu noņemšanai, tostarp arheoloģijā:

Ir iespējami divi tīrīšanas režīmi - anodisks(tīrāmais objekts ir anods, tīrīšanu veic skābekļa burbuļi) un katods(tīrāmais objekts ir katods, un tīrīšanas efektu nodrošina ūdeņraža burbuļi, kas anodiskā procesa laikā izdalās divreiz vairāk nekā skābeklis - līdzīgs process tiek izmantots ūdeņraža ražošanai)

Tālāk es aprakstīšu izmantoto katoda tīrīšanas metodi.

Plastmasas vai stikla (nekorozijas) tvertne ir piepildīta:
2% (saskaņā ar citiem avotiem, 5 - 10%) sārmu - kaustiskās sodas ūdens šķīdums NaOH;
sodas pelnu ūdens šķīdums Na2CO3(1 ēdamkarote uz trīs litriem ūdens, bet es izmantoju piesātinātāku šķīdumu):

Viens elektrods (anods) ir plāksne, kas izgatavota no tērauda, ​​tostarp nerūsējošā tērauda, ​​lokšņu dzelzs, alumīnija vai misiņa; dažreiz tiek izmantoti arī oglekļa elektrodi. Es izmantoju nerūsējošo tēraudu:

Piezīme.
Nerūsējošā tērauda anods izdala toksiskas vielas, misiņš veicina vara izdalīšanos pie katoda, un alumīnija anods ātri nolietojas.

Anods un katods ir nolaisti šķīdumā, barošanas avota “+” ir pievienots anodam, bet “-” ir savienots ar tīrāmo daļu (tīrāmo priekšmetu aptinu ar vara stiepli). Sākas ūdens elektrolīzes process, ko pavada gāzes burbuļu izdalīšanās un rūsas pārslu veidošanās (pie katoda - tīrāmā objekta - izdalās ūdeņraža burbuļi, kas iznīcina rūsu: 4H 2 0 + 4e - = 4OH + 2H 2 ).

Ir arī alternatīvs reakcijas apraksts katoda tīrīšanas laikā:
4H + + 4e - = 2H 2 (bet šajā gadījumā ir nepieciešama skāba vide, lai veidotos pietiekams skaits ūdeņraža jonu).

Procesa laikā pie anoda sāk uzkrāties rūsa:

Procesa beigās viss konteiners ir piepildīts ar rūsas daļiņām:

Rūsa pārklāj anodu elektrolīzes procesa laikā:

Šķīdumā iegremdēts lakmusa papīrs parāda reakciju uz sārmainu vidi:

Pēc tīrīšanas procesa pabeigšanas tīrāmā daļa tiek pārklāta ar vaļēju piesārņojuma slāni, kas tiek noņemts ar metāla suku:

Pēc elektrolītiskās tīrīšanas atradums izskatās šādi:

Oscilogrammas

Izmantojot laboratorijas stendu kā digitālo osciloskopu, es paņēmu virkni oscilogrammu:

laboratorijas stends -

meklēšanas spoles spriegums -

Metāla detektora ierīce

Dizains

Stienis

Metāla detektora stienim izmantoju PVC cauruli ar diametru 25 mm un sienas biezumu 1,6 mm ( PN16):

Svira

Metāla detektora rokturis ir piestiprināts pie caurules, uz kuras ir uzstādīts elektroniskais bloks un barošanas avots, izmantojot kompresijas veidgabalu:

Elektroniskā vienība

Kā metāla detektora elektroniskās vienības korpusu izmantoju sadales kārbu. Tyco ar aizsardzības pakāpi IP55(no ūdens un putekļiem) izgatavots no PVC ar desmit ieejām ar diametru 30 mm.

Skats elektroniskajā blokā:


Elektronisko bloku piestiprina pie PVC caurules, izmantojot U- formas turētāji, kas piestiprināti ar neilona saitēm:

spēka agregāts

Bateriju ievietošanai izmantoju sadales kārbu. Strāvas padeve ir piestiprināta pie PVC caurules, izmantojot U-formas turētāji, kas tiek fiksēti ar neilona saitēm.

Elektronika

Mikrokontrolleris
Es izmantoju dēli Arduino Nano 3.0.

3. versija ir balstīta uz 8 bitu versiju AVR mikrokontrolleris ATmega328P(32 kbaiti Zibspuldze, 2 kbaiti SRAM, 1 kbaits EEPROM, 3 taimeri) (2. versija - ieslēgts ATmega168) un burts " P"apzīmē" picoPower".

Arduino tapas:

secinājums Arduino Pieraksts
D08 spoles impulsu ģeneratora signāla izvade
D13 LED izeja
D11 izeja pjezo skaļruņa pievienošanai
A00 ADC ieeja - ierobežotam un pastiprinātam signālam no meklēšanas spoles
A01 izeja zaļās gaismas diodes pievienošanai
A02 izeja sarkanās gaismas diodes pievienošanai
D02 pogas savienojuma ieeja
REF atsauces sprieguma ieeja ADC

Arduino resursi:

Lai savienotu pārī ar USB-ports uz mana dēļa Arduino tiek izmantota pārveidotāja mikroshēma CH340G.

Barošanas avoti

Mikrokontrollera barošanas avots

Pārtikai Arduino Es izmantoju divus sērijveidā savienotus litija jonu akumulatorus UltraFire ZX 18650 katra jauda 4200 mAh:

Šāda pilnībā uzlādēta akumulatora atvērtās ķēdes spriegums ir 4,21 V, un pie 10 omi slodzes pēc 1 darbības minūtes tas ir 3,61 V.

Šāda akumulatora nominālais spriegums ir 7,4 V.

7,4 V akumulatora spriegums tiek pārveidots par 5 V, lai darbinātu plati Arduino izmantojot integrēts stabilizators 78L05(norādīts diagrammā VR1):

Enerģijas padeve

Kā barošanas bloku izmantoju 10 izmēra sārma baterijas. A.A. (LR6).

Esmu novērtējis dažas no izmantotajām baterijām:

Baterijas Tips Spriegums bez slodzes, V spriegums
zem slodzes
(pēc 1 minūtes darbības), V
Camelion Plus Alkaline 1
... ... (10 omi)

... ... (10 omi)
Duracell Duralock (sārmains) 2
1,54 1,47 (10 omi)
Ermak (sārmains)
1,62 1,43 (10 omi)
Energizer Max (Sārmains) 3
1,62 1,51 (10 omi)
Enerģija(sārmains)
1,62 1,48 (10 omi)

1 - nominālā jauda ir 2700 mAh (ar nepārtrauktu izlādi līdz 0,8 V ar strāvu 25 mA)
2 - tehnoloģija ļauj saglabāt uzlādi uzglabāšanas laikā līdz 10 gadiem,
Uz baterijām ir uzraksts " ":

1 - baterijas Duracell, ražots, izmantojot tehnoloģiju
2 - parastās baterijas Duracell
3 - saskaņā ar ražotāju:
nominālā iekšējā pretestība ( Nominālais IR) - 150...300 mOhm;
kapacitātes un izlādes strāvas diagramma:

Lai ievietotu izmēra baterijas A.A. Es izmantoju 10 elementu bateriju nodalījumu:

Šāda akumulatora nominālais spriegums ir 15 V.

Spole L2 Paredzēts, lai samazinātu traucējumus, ko izraisa meklēšanas spoles strāvas impulsi. Diode VD3 Apvada akumulatoru pret negatīviem sprieguma pārspriegumiem, kas rodas uz meklēšanas spoles induktivitātes, un aizsargā pret apgrieztu akumulatora polaritāti. Kondensators C1 liela ietilpība ir enerģijas uzkrāšanas ierīce - spēlē svarīgu lomu strāvas impulsu ģenerēšanā spolē.

Lai pievienotu barošanas avotus, izmantojiet četru kontaktu savienotāju elektroniskās vienības korpusa sānos:

1 - "+" baterijas 15 V
2 - "-" akumulatori 15 V
3 - "-" akumulatori 7,4 V
4 - "+" akumulatori 7,4 V

Spole

Spoles parametri

Meklēšanas spole ar vidējo diametru $D$ = 25 cm (vidējais rādiuss $R$ = 12,5 cm) un spoles sekcijas rādiuss $a$ = 0,29 cm satur $w$ = 27 emaljēta vara apgriezienus (pretestība $\ rho $ = 0,0175 Ohm mm 2 /m) vadi ar diametru $d$ = 0,7 mm (vada rādiuss $r$ = 0,35 mm, stieples šķērsgriezuma laukums $S$ = 0,385 mm 2):

Aprēķinātā spoles pretestība bija $R = (\rho ((\pi D w) \over (S)))$ = 0,964 omi, un izmērītā pretestība bija $ R$ = 1,3 omi:

Šādas spoles induktivitātes aprēķināšanai ir vairākas formulas.

aptuvenā formula:

$L = ((w^2)((\mu)_0)R[(ln(((8R) \over a)))-2])$ ,

kur $a$ ir spoles sekcijas rādiuss.

Šī formula ir dota grāmatā [ F. W. Grover, Induktivitātes aprēķini: darba formulas un tabulas, Ņujorka: Dovera, 1946.].

Manam spolei:
$L$ = 440 µH .

precīzāka formula:

$L = (((\mu)_0) \over (4 \pi)) (w^2) D \Phi $, kur $\Phi$ ir palīgkoeficients:
$\Phi = (2 \pi [((1 + (((\gamma)^2) \over 2))) (ln ((4 \over \gamma))) - 1,75 + (((\gamma ) ^ 2) \over 6) ] ) $, kur $\gamma = (a \over D)$, $a$ ir spoles sekcijas rādiuss

Šī formula tiek izmantota spraudnī daudzcilpu programmai Spole32(http://coil32.net/multi-winding-round-loop.html), lai aprēķinātu vairāku apgriezienu apaļas spoles induktivitāti ar apļveida šķērsgriezumu (eng. daudztinumu apaļa cilpa ar apaļu šķērsgriezumu).

Manam spolei:
$\gamma$ = 0,0116;
$\Phi$ = 25,7;
$L$ = 468 µH .

integrālā formula:

$L = ((\mu)_0) (w^2) (\pi) R ((\int_0^(1-(a \over R))) B_(rel)((\rho)) (\rho) \, (d(\rho)) ) $,

kur $B_(rel)((\rho)) = ( (1 \over \pi) (\int_0^(\pi)) ((1 - (\rho) cos (\phi) )) \over (( (1+((\rho)^2)-2(\rho)cos(\phi)))^(3 \over 2))) \, d(\phi) )$ - relatīvā magnētiskā indukcija plaknē spole attālumā $(\rho) \virs R$ salīdzinājumā ar indukciju spoles centrā, $a$ ir spoles šķērsgriezuma rādiuss

Spoles magnētiskais lauks

Kad strāva $I$ plūst caur šādu spoli spoles ass punktā, kas atrodas attālumā $z$ no spoles plaknes, rodas magnētiskais lauks, kura stiprumu nosaka labi zināmā izteiksme:

$H = (w (I \virs 2) ((R^2) \over (((R^2 + z^2))^(3 \virs 2))))$

Ja ņemam viena akumulatora iekšējo pretestību kā 0,3 omi, emf kā 1,45 V, tad desmit akumulatoriem kopējā emf $E$ būs 14,5 V, bet ķēdes kopējā pretestība $R$, ņemot vērā pretestību. no meklēšanas spoles 1 omi, būs 4 omi. Ņemot vērā spoles induktivitāti, kas vienāda ar 450 μH, mēs atklājam, ka impulsa ilgumam $T$, kas vienāds ar 150 μs, strāva spolē sasniegs vērtību $(E \over R) (1 - e^(- (T R)\virs L)) = 2,7 A$.

Spoles dizains

Lai aizsargātu spoli, elektrības vadiem varat izmantot gofrētu šļūteni (parasti pelēkā krāsā), kas tiek nogriezta gar:

Tajā tiek ievietota spole, un pēc tam to tur kopā ar izolācijas lenti. Spole ir nostiprināta montāžas kastē, izmantojot karsti kausētu līmi un neilona saites.
Spole tiek piestiprināta pie stieņa, izmantojot kompresijas veidgabalu, kura vītņotā daļa ir ieskrūvēta polipropilēna caurulē ar diametru 26 mm, kas piestiprināta pie uzstādīšanas kastes vāka, izmantojot neilona saiti un karsto līmi:

Lai pievienotu spoli, izmantojiet divu kontaktu savienotāju korpusa sānos:

Ģenerators
Impulsu izvadīšanai izmantoju digitālo izvadi D08, iestatot to kā "izeju" (digitālā izeja D08 atbilst izvadei PB0 mikrokontrolleris ATmega) .
Lai paātrinātu darbību, es neizmantoju komandu digitalWrite, un tieša ierakstīšana uz portu, kas ir aptuveni ātrāk 10 reizes!

Atbilstība starp Arduino digitālajām tapām un ATmega porta tapām

digitālā izeja Arduino porta tapa ATmega
D00 PD0
D01 PD1
D02 PD2
D03 PD3
D04 PD4
D05 PD5
D06 PD6
D07 PD7
D08 PB0
D09 PB1
D10 PB2
D11 PB3
D12 PB4
D13 PB5

Ģeneratora laika parametri tiek iestatīti iestatījumu izvēlnē, kad ierīce ir ieslēgta.

Spēka daļa

Tā kā spriegums ir MOSFET-e strauji palielinās, kad tas ir izslēgts (spoles induktivitātes dēļ), tad tranzistors var pāriet lavīnas sadalījuma režīmā (“ lavīnas sabrukums"). Tas notiek, ja drenāžas avota spriegums $V_(DS)$ ir vienāds MOSFET-e pārsniedz tā pārrāvuma spriegumu $V_(DS (BR))$.
Mūsdienu tranzistoriem darbība šajā režīmā ir standarta (tie ir atzīmēti kā " Atkārtota lavīna novērtēta"vai" 100% AVALANCE TESTĒTSŠajā gadījumā ir svarīgi ņemt vērā tādus tranzistora lavīnu raksturlielumus kā maksimālā atkārtotā lavīnas strāva $I_(AR)$ un maksimālā atkārtotā lavīnas sabrukšanas enerģija $E_(AR)$.
Nepieciešams, lai maksimālā strāva spolē pirms izslēgšanas nepārsniegtu vērtību $I_(AR)$, un maksimālā spolē uzkrātā enerģija nepārsniegtu vērtību $E_(AR)$. Spoles magnētiskā lauka enerģiju definē kā $(E_M) = (((L (I^2)) \over (2)))$ (piemēram, spolei ar induktivitāti $L$ = 700 μH ar strāvu $I$ = 3 A enerģija būs 3,2 mJ).

Dažu parametri MOSFET:

Vārds $V_(DS (BR)) $, V $I_(AR)$, A $E_(AR)$, mJ
IRF540 100 28 15
IRF740 400 10 13
IRF840 500 8 13
FQP12N60C 600 12 22,5

ES izmantoju MOSFET IRF840, kam ir piemēroti raksturlielumi:

Cokoļevka IRF840:

G- slēģi, D- krājums, S- avots

Tranzistora lavīnas sabrukšanas laikā slāpētā spoles strāva iet caur kanalizācijas avota sekciju MOSFET-a - barošanas akumulators”, kam ir zema pretestība, kas noved pie lēnāka strāvas pavājināšanās.

MOSFET draiveris

Kontrole MOSFET veikts, izmantojot optronu PC817C(ar ātrumu 3...4 μs, iztur izejas strāvu 50 mA un spriegumu slēgtā stāvoklī līdz 35 V) un diskrētu tranzistora ķēdi:

pinout PC817:

pinout BC547/BC557:

C- kolekcionārs, B- bāze, E- izstarotājs

Līdzīgs draiveris ir aprakstīts rakstā http://radiohlam.ru/raznoe/driver_polevikov.htm.

Es pārbaudīju šāda draivera īpašības (kad optodrivera gaismas diodei caur 470 omu rezistoru tiek pievienots 5 V spriegums):
strāvas patēriņš ieslēgtā stāvoklī ( MOSFET atvērts) ir ļoti mazs, "izslēgts" ( MOSFET slēgts) - mainās no 5,8 līdz 12 mA, palielinoties barošanas spriegumam no 7 līdz 15 V; Vadītāja izejas spriegums ir 12,15 / 1,83 V (ieslēgts/izslēgts) ar barošanas spriegumu 13 V.

Detektors

Impulsa metāla detektora darbība balstās uz elektromagnētiskās indukcijas principu - Elektromagnētiskā impulsa indukcija (EMI).

Mana metāla detektora detektora diagramma:

Signāls no meklēšanas spoles $L1$ caur strāvu ierobežojošo rezistoru $R2$ tiek piegādāts uz diodēm $VD1$ un savienots paralēlā režīmā. $VD2$, ierobežojot signāla vērtību līdz ~ 1 V. Šis ierobežojums nerada ievērojamu kļūdu, jo “mērķa” noteikšanai ir svarīga signāla “aste”, kuras spriegums ir nelielas volta daļas ( līdz milivoltiem) - apstiprināts ar modelēšanu:

Tik vājš signāls ir jāpastiprina uzticamai noteikšanai, kam izmantoju darbības pastiprinātāju $OP1$ LM358N, kas savienots saskaņā ar tradicionālo neinvertējošā pastiprinātāja ķēdi. Pastiprinājumu nosaka izteiksme $1+ (R3 \over R4)$, ar norādītajām elementu vērtībām tas ir 570 .

Operētājsistēmas pastiprinātāja iezīme LMx58 ir vienpolāra barošanas avota iespēja ( viena piegāde) — atšķirībā no, piemēram, LM318, LF356, LF357 nav nepieciešams negatīvs sprieguma avots.
Cokoļevka LM358N (N - V DIP- korpuss):

Signāla veids operētājsistēmas pastiprinātāja izejā:

Lai apstrādātu signālu no meklēšanas spoles, es izmantoju iebūvēto mikrokontrolleri ATmega analogo-digitālo pārveidotāju.

Uz ADC atsauces ieeju VREF tiek pielietots atsauces spriegums u ref, vienāds ar 1,235 V, kas ņemts no atsauces avota LM385Z-1.2(tiek izmantots ADC darbības režīms ĀRĒJĀ).
Cokoļevka LM385Z:

Uz ADC signāla ieeju ADC In tiek piegādāts darbības pastiprinātāja pastiprināts signāla spriegums no meklēšanas spoles, ierobežots ar diodēm VD1 Un VD2. ADC ņem signālu no spoles kā skaitļu secību ( ātrā laika signāls) ar vērtībām 0 (minimālais līmenis, 0 V)...1023 (maksimālais līmenis u ref).

Mērķa klātbūtne spoles tuvumā izpaužas šādi:
(1023 — signāla līmenis, kas atbilst ADC pārslodzei)

  • punktu nobīde A pa labi;
  • pieaugošais intervāls A-B;
  • līknes nobīde uz augšu.

Salīdziniet šo signālu grafiku ar iepriekš minēto:

Lai noteiktu mērķa klātbūtni, summa ( lēna laika signāls) noteikts skaits izlases signālu līmeņu, kas atrodas vienādos intervālos viens no otra laika “logā” ( novērtēšanas logs). Šajā gadījumā vērtības, kas atrodas agrāk par balansēšanas laikā norādīto sākuma punktu, netiek ņemtas vērā (lai palielinātu jutīgums).


Pēc tam tiek integrēta iegūto kopējo vērtību secība (integrators tiek emulēts programmatūrā). Filtra parametrs ir koeficients $K $, kas ir vienāds ar impulsu skaitu uz integratora laika konstanti.
Signāla līmenis pie integratora izejas tiek analizēts metāla detektora statiskajā darbības režīmā.

Kad metāla detektors darbojas dinamiskā režīmā, integrācijas rezultāti papildus iziet cauri augstfrekvences filtru ( augstas caurlaidības filtrs, HPF), kas tiek emulēta programmatūrā. Filtra parametrs ir koeficients $K$, kas parāda, cik reižu impulsa atkārtošanās frekvence ir lielāka par filtra izslēgšanas frekvenci.
Filtra izeja rada signālu, kas raksturo izmaiņu dinamiku RX-signāls.

Kad izejas signāls pārsniedz slieksni - balansēšanas laikā norādīto "nulles" līmeni, tiek aktivizēts trigeris - tiek uzskatīts, ka mērķis ir atklāts un tiek ieviesta audiovizuāla indikācija.

Skaņas indikācija

Skaņas indikācijai izmantoju pjezoelektrisko elementu no autonoma ugunsgrēka detektora. Pjezoelektriskā elementa skaņas skaļums ļoti dīvainā veidā ir atkarīgs no signāla frekvences. Man izdevās atrast frekvenču kopu 900 (vājākais signāls) - 1000 - 1100 (spēcīgākais signāls), kurām skaņas skaļums palielinās. Lai kontrolētu pjezoelektriskā elementa skaņu, kas savienots ar plates 11. tapu, es izmantoju Arduino taimeri 2.

Klusuma režīmu (tikai LED indikatoru) var aktivizēt iestatījumu izvēlnē, kad ierīce ir ieslēgta.

Vizuāla indikācija

Indikācijai izmantoju LCD- displejs no mobilā tālruņa :

Šī tālruņa displejs ir vienkrāsains ar izšķirtspēju 84 × 48:


Displeja kontrolleris - Philips PCD8544.
Displeja savienojums:

Displeja izvade Secinājums Arduino Displeja piespraudes piešķiršana
RST D10 displeja kontrollera atiestatīšana
CE (vai CS) D09 Ļauj ievadīt datus displeja kontrollerī
DC D05 ievades režīms - dati/komandas
Din D04 autobusu dati SPI
CLK (vai SCLK) D03 autobusu komandas SPI
VCC * barošanas spriegums (2,7 ... 3,3 V)
B.L. ** fona apgaismojums
GND GND "Zeme"

Ir divas displeja opcijas LCD 5110- ar zilu (tas ir tieši tas, ko es izmantoju) vai sarkanu tekstolītu:

* kontroliera barošanas spriegums -
zils - stingri 3,3 V(var savienot ar izeju 3V3 Arduino)
sarkans- pēc dažu domām nepārbaudīts Saskaņā ar informāciju tas var izturēt barošanas spriegumu 5 V (var darbināt no tapām 5V vai 3V3 Arduino)
** fona apgaismojuma barošanas spriegums -
zils- fona apgaismojuma tapu var piegādāt ar 3,3 vai 5 V spriegumu
sarkans- zemējums ir savienots ar fona apgaismojuma tapu (?)

Problēma ar šādu displeju ir neuzticams LCD paneļa kontakts ar iespiedshēmas plati, izmantojot savienotāju ZEBRA, ko var novērst, piemēram, pielodējot vadu, kas piespiež paneli pie dēļa - kā ieteikts:

Ja šī problēma netiks novērsta, ekrāns kļūs melns, un būs nepieciešama atkārtota inicializācija.

Lai strādātu ar šādu displeju Arduino Es izmantoju bibliotēku Adafruit-PCD8544 no Adafruit Industries.

Slēdzis (5) kontrolē ekrāna fona apgaismojumu. Labā apkārtējā apgaismojumā displeja fona apgaismojumu var izlaist, jo tas patērē ievērojamu jaudu.

Mērķa diskriminācija

Virpuļstrāvas tiek vājinātas elektriskās pretestības klātbūtnes dēļ "mērķī". Šo samazināšanos apraksta eksponenciālais likums $i = k H_0 (e^( (-t) \over \tau))$. Koeficientu $k$ nosaka “mērķa” forma un izmērs. Laika konstante $\tau = (L G) = (L \over R)$, kas nosaka virpuļstrāvu plūsmas ilgumu, tiek noteikta pēc mērķa materiāla $G$ elektrovadītspējas (vai pretestības $R$) un tā induktivitāte $L$.
Tabulā esmu norādījis dažādu materiālu relatīvo elektrovadītspēju attiecībā pret zeltu:

Virpuļstrāvas tiek izmantotas, lai pētītu materiālu īpašības, mērot elektrovadītspēju, jo materiāliem ir unikālas vadītspējas vērtības atkarībā no to sastāva un ražošanas metodes. Ķīmiski tīra vara vadītspējas vērtība 20 ºC temperatūrā tiek izmantota kā standarts - standarts Starptautiskais rūdīta vara standarts (IACS) - pretestība 1,7241x10 -8 Ohm m vai 5,8001x10 7 S/m (100% IACS). Piemēram, dzelzs vadītspēja ir vienāda ar 18% no vara vadītspējas.

Kā teikts (piemēram, pētnieka rakstā Reg Sniff), mērķiem, kas izgatavoti no zelta vai plānas folijas, ir ļoti īsa laika konstante un virpuļstrāvas tajos ātri sabrūk, atšķirībā no mērķiem, kas izgatavoti no dzelzs, vara vai sudraba.

Sākotnējo magnētiskā lauka stiprumu $H_0$ nosaka sākotnējā strāva spolē un samazinās saskaņā ar kubisko likumu $1 \over (h^3)$ ar attālumu no spoles. Magnētiskā lauka intensitātes $H_0$ lielumu gar spoles asi attālumā $z$ no tās centra, ko rada strāva $I_0$, nosaka pēc izteiksmes: $(H_0) = ( (w (R). ^2) (I_0)) \over (2 (((R^2)+(z^2)))^(3 \over 2) ) ) )$.

Virpuļstrāvas rada savu dilstošo magnētisko lauku, kas meklēšanas spolē izraisa eksponenciāli dilstošu (ar tādu pašu laika konstantu $\tau$) spriegumu. Šī sprieguma lielums samazinās, attāluma $1 sestajai pakāpei pārsniedzot (h^6)$, kad “mērķis” attālinās no spoles. Tas noved pie meklēšanas spoles sprieguma impulsa pagarināšanās, ko reģistrē metāla detektors.

Var veikt papildu signāla līknes analīzi (sprieguma pāri meklēšanas spolei), lai izšķirtu (atlasītu dažādus veidus) mērķus.Līknes slīpumu tās sākumā var novērtēt ar attiecību $K = ((x_t) \over (x_(t+(\Delta)t)))$ no izlases vērtībām, kas atdalītas, piemēram, ar pieciem intervāliem ( $(\Delta)t=5$) . Šajā gadījumā laika konstante tiek noteikta ar izteiksmi: $(\tau) = (((\Delta)t) \over (ln K))$

Lai pētītu virpuļstrāvas, var izmantot programmatūras pakotnes elektromagnētisko procesu modelēšanai. Piemērs ir elektromagnētiskās bremzes simulācija, izmantojot virpuļstrāvas COMSOL Multiphysics pakotnē (apraksts - https://www.comsol.com/blogs/simulating-eddy-current-brakes/):

Pastāv negatīvi viedokļi par impulsu metāla detektoru efektīvas diskriminācijas iespēju.

"Visdrošākais diskriminētājs esi tu, izrokot mērķi!" (http://www.gold-prospecting-wa.com) — “Visdrošākais diskriminētājs esi jūs, izceļot mērķi.".

Grāmatā " "autori Ahmets S. Turks, Koksals A. Hocaoglu, Aleksejs A. Vertijs

Tiek sniegti šādi paziņojumi:


"Pats svarīgākais impulsu metāla detektoru trūkums ir nespēja viegli atšķirt dažāda veida metālus... Ja konstatēto metāla priekšmetu izmērs un dziļums ir atšķirīgs un nav zināms, tad kopumā neiespējami noteikt metāla veidu."

Kā piemērs impulsa metāla detektoram, kuram ir spēja atšķirt (feromagnētiskais Dzelzs)/neferomagnētisks ( N-Dzelzs) materiāliem), varat dot modeli PULSE STAR II.
Diskriminācijas pazīmes šādā detektorā:

  • iespējams tikai mērķiem, kuru diametrs ir vismaz 10 cm (atšķirībā no VLF/TR-detektori, kas spēj atšķirt pat mazus objektus);
  • mazāki objekti tiek parādīti kā feromagnētiski;
  • Vairāki mazi neferomagnētiski objekti parādās kā viens liels feromagnētisks objekts.

Mans raksts par Habrē par neironu tīkla izmantošanu diskriminācijai impulsu metāla detektorā - https://habr.com/ru/post/435884/

Darbs pie projekta turpinās

Savulaik, savām rokām uzbūvējot vairākus dažādas veiktspējas pakāpes metāla detektorus, vēlējos izpētīt, kā Arduino shēma darbojas šajā virzienā.

Ir vairāki labi piemēri, kā ar savām rokām salikt metāla detektoru. Tomēr parasti tiem ir nepieciešams diezgan daudz ārējo komponentu, lai apstrādātu analogo signālu, vai arī izvades jutība ir diezgan vāja.

Kad mēs domājam par impulsu metāla detektoriem, galvenā tēma ir par to, kā noteikt nelielas sprieguma izmaiņas signālos, kas saistīti ar meklēšanas spoli. Šīs izmaiņas parasti ir ļoti nelielas. Acīmredzamākā pieeja ir izmantot ATmega328 analogās ieejas. Bet, aplūkojot specifikācijas, ir divas galvenās problēmas: tās galvenokārt ir lēnas, un izšķirtspēja (vairumā gadījumu) ir zema.

No otras puses, uz mikrokontrolleriem balstīts metāla detektors darbojas ar 16 MHz, un tam ir diezgan labas laika noteikšanas iespējas, proti, izšķirtspēja 0,0625 µs, izmantojot pulksteņa frekvenci. Tātad, tā vietā, lai nolasīšanai izmantotu analogo ieeju, vienkāršākais veids, kā sajust nelielas dinamiskas sprieguma izmaiņas, ir salīdzināt sprieguma krituma izmaiņas laika gaitā pie fiksēta atsauces sprieguma.

Šim nolūkam ATmega328 ir piemērotas iekšējās salīdzinājuma funkcijas starp D6 un D7. Šis salīdzinājums spēj izraisīt pārtraukumu, ļaujot notikumus apstrādāt precīzi. Izmantojot to kopā ar glīti kodētām laika noteikšanas rutīnām, piemēram, millis () un micos (), un izmantojot ATmega328 daudz augstākas izšķirtspējas iekšējo taimeri, Arduino ir lielisks pamats šāda veida metāla detektoram.

Tātad, runājot par avota kodu - labs sākums būtu ieprogrammēt iekšējo komparatoru, lai tas "apgrieztu" ieeju polaritāti un pēc iespējas ātrāk izmantotu iekšējo skaitītāju, lai mainītu izmaiņu biežumu.

Galīgais Arduino kods:

// Visu nepieciešamo pirms mainīgo definēšana utt. un reģistru iestatīšana unsigned char clockSelectBits = _BV(CS10); // bez iepriekšējas skalas, full xtal void setup() ( pinMode(6,INPUT); // + no salīdzinājuma — iestatot tos kā INPUT, tie tiek // iestatīti uz augstas pretestības pinMode(7,INPUT); // - no salīdzinājuma - iestatot tos kā INPUT, tie tiek // iestatīti uz augstu pretestību cli(); // pārtraukt pārtraukumus TCCR1A = 0; // iestatīt visu TCCR1A reģistru uz 0 TCCR1B = 0; // tas pats TCCR1B TCNT1 = 0 ; // inicializē skaitītāja vērtību uz 0; TCCR1B |= clockSelectBits; // iestata priekšskalotāju un sāk pulksteni TIMSK1 = _BV(TOIE1); // iestata taimera pārplūdes pārtraukuma iespējo bitu sei(); //atļaut pārtraukumus ACSR = (0<< ACD) | // Analog Comparator: Enabled (0 << ACBG) | // Analog Comparator Bandgap Select: AIN0 is applied to the positive input (0 << ACO) | // Analog Comparator Output: Off (1 << ACI) | // Analog Comparator Interrupt Flag: Clear Pending Interrupt (1 << ACIE) | // Analog Comparator Interrupt: Enabled (0 << ACIC) | // Analog Comparator Input Capture: Disabled (0 << ACIS1 | 0 << ACIS0 // interrupt on output toggle // (0 << ACIS1 | 1 << ACIS0 // reserved // (1 << ACIS1 | 0 << ACIS0 // interrupt on falling output edge // (1 << ACIS1 | 1 << ACIS0 // interrupt on rising input edge ; } // this routine is called every time the comparator creates an interrupt ISR(ANALOG_COMP_vect) { oldSREG=SREG; cli(); timeStamp=TCNT1; SREG = oldSREG; } // this routine is called every time there is an overflow in internal counter ISR(TIMER1_OVF_vect){ timer1_overflow_count++; } // this routine is used to reset the timer to 0 void resetTimer(void){ oldSREG = SREG; cli(); // Disable interrupts TCNT1 = 0; //initialize counter value to 0 SREG = oldSREG; // Restore status register TCCR1B |= clockSelectBits; // sets prescaler and starts the clock timer1_overflow_count=0; // resets overflow counter }

Protams, šī ideja nav gluži jauna. Šī koda lielākā daļa var atšķirties. Mēģiniet meklēt citus avotus, piemēram, TPIMD.

1. darbība: Arduino indukcijas detektora ideja — Flip Coil


Ideja ir izmantot Arduino kā impulsa indukcijas detektoru, tāpat kā TPIMD, jo šķiet, ka samazinājuma līknes ideja darbojas ļoti labi. Problēma ar impulsa indukcijas detektoriem ir tāda, ka to darbībai parasti ir nepieciešams atšķirīgs spriegums. Viens spriegums spoles darbināšanai un atsevišķs spriegums, lai apstrādātu samazinājuma līkni. Šie divi sprieguma avoti vienmēr sarežģī impulsu indukcijas detektoru veidošanas procesu.

Ņemot vērā spoles spriegumu PI detektorā, iegūto līkni var sadalīt divos dažādos posmos. Pirmais posms ir pats impulss, kas darbina spoli un rada magnētisko lauku (1). Otrais posms ir sprieguma samazināšanās līkne, kas sākas ar sprieguma maksimumu un pēc tam strauji mainās uz "bez strāvas" spoles spriegumu (2).

Problēma ir tāda, ka pēc impulsa spole maina savu polaritāti. Ja impulss ir pozitīvs (Var 1. pievienotajā attēlā), samazinājuma līkne ir negatīva. Ja impulss ir negatīvs, samazinājuma līkne būs pozitīva (Var 2. pievienotajā attēlā).

Lai atrisinātu šo pamatproblēmu, pēc impulsa spole ir elektroniski "jāapgriež". Šajā gadījumā pulss var būt pozitīvs, un samazinājuma līkne arī paliks pozitīva.

Lai to izdarītu, pēc impulsa spolei jābūt izolētai no Vcc un GND. Šajā brīdī caur snubber rezistoru plūst tikai strāva. Šo izolēto spoles un snubber rezistoru sistēmu var "mērķēt" uz jebkuru atsauces spriegumu. Tas teorētiski radīs kombinētu pozitīvu līkni (skatiet zīmējuma apakšdaļu).

Šo pozitīvo līkni var izmantot salīdzinājums, lai noteiktu laika punktu, kurā sabrukšanas spriegums "šķērso" atsauces spriegumu. Gadījumā, ja dārgums atrodas netālu no spoles, mainās atsauces sprieguma maiņas vājināšanās līkne un laika pārtveršana. Šīs izmaiņas var noteikt.

Pēc dažiem eksperimentiem es izvēlējos šādu shēmu:

Ķēde sastāv no Arduino Nano moduļa. Šis modulis kontrolē divus MOSFET, kas baro spoli (pie SV3), izmantojot D10. Kad impulss D10 beigās beidzas, abi MOSFET izolē spoli no 12V un GND.

Spolē uzkrātā enerģija tiek atbrīvota caur rezistoru R2 (220 omi). Tajā pašā laikā rezistors R1 (560 omi) savieno spoles pirmo pozitīvo pusi ar GND. Tas maina negatīvo vājinājuma līkni pāri rezistoram R5 (330 omi) uz pozitīvu līkni. Diodes aizsargā Arduino ievades tapu.

R7 ir aptuveni 0,04 V sprieguma dalītājs. Tagad samazinājuma līkne uz D7 kļūst negatīvāka nekā 0,04 uz D6, tiek aktivizēts pārtraukums un tiek saglabāts ilgums pēc impulsa beigām.

Gadījumā, ja metāls atrodas tuvu spolei, sabrukšanas līkne ilgst ilgāk un palielinās laiks starp impulsa beigām un pārtraukumu.

2. darbība: detektora izveide (izkārtojums)






Detektora izveides process ir diezgan vienkāršs. To var izdarīt vai nu uz maizes plates (pieturoties pie oriģinālās diagrammas), vai lodējot detaļas uz iespiedshēmas plates.

D13 LED uz Arduino Nano plates tiek izmantots kā metāla indikators.

Maizes dēļa izmantošana ir ātrākais veids, kā izveidot strādājošu detektoru. Ir jāveic daži vadi, taču to var izdarīt uz atsevišķa maza maizes dēļa. Attēlos tas parādīts 3 posmos, jo Arduino un MOSFET slēpj dažus vadus. Pārbaudes laikā es nejauši izslēdzu diodes, uzreiz nemanot. Tas īpaši neietekmēja detektora uzvedību. Es tos atstāju PCB versijā.

Ilustrācijās nav parādīti savienojumi ar 0,96 OLED displeju. Šis displejs ir savienots šādi:

Vcc - 5V (pie Arduino tapas, nevis barošanas avota!)
GND - GND
SCL - A5
SDA-A4

Šis OLED displejs ir nepieciešams sākotnējai detektora kalibrēšanai. Tas tiek darīts, iestatot pareizo spriegumu Arduino PIN6. Šim spriegumam jābūt aptuveni 0,04 V. Displejs palīdz iestatīt pareizo spriegumu.

Prototipa versija darbojas ļoti labi, lai gan, iespējams, tā nav piemērota izmantošanai uz lauka.

3. darbība: PCB dizains




Ciktāl tas attiecas uz lodēšanu, man īsti nepatīk divpusējais augstākās klases PCB, tāpēc es modificēju ķēdi vienpusējai.

Ir veiktas šādas izmaiņas:

  1. Diodes tika izslēgtas.
  2. MOSFET kontaktiem ir pievienots 10 omu rezistors.
  3. Sprieguma dalītāja barošanas spriegums uz D6 tiek iestatīts ar augsta līmeņa signālu uz D8
  4. MOSFET draivera tapa ir mainīta.

Tādā veidā var izveidot vienpusēju PCB, ko var pielodēt uz universālās PCB. Izmantojot šo shēmu, jūs iegūsit strādājošu PI detektoru ar 8-10 ārējiem komponentiem (atkarībā no tā, vai tiek izmantots OLED displejs un/vai skaļrunis).

4. darbība: iestatiet un izmantojiet detektoru




Ja detektors ir uzbūvēts pareizi un programma ir rakstīta Arduino, vienkāršākais (ja ne vienīgais) veids, kā konfigurēt ierīci, ir izmantot OLED displeju. Displejs ir savienots ar 5V, GND, A4, A5. Pēc ierīces ieslēgšanas displejā ir jāparāda "kalibrēšana". Pēc dažām sekundēm vajadzētu paziņot “kalibrēšana pabeigta”, un displejā ir jāparāda trīs cipari.

Pirmais cipars ir “atsauces vērtība”, kas norādīta kalibrēšanas laikā. Otrā vērtība ir pēdējā izmērītā vērtība, bet trešā vērtība ir pēdējo 32 mērījumu vidējā vērtība.

Šīm trim vērtībām vajadzētu būt vairāk vai mazāk vienādām (manos testos līdz 1000). Vidējam vajadzētu būt vairāk vai mazāk stabilam.

Lai sāktu sākotnējo iestatīšanu, spoles tuvumā nedrīkst būt metāla.

Tagad sprieguma dalītājs (skaņošanas rezistors) ir jānoregulē tā, lai divas apakšējās vērtības būtu iestatītas uz maksimālo, vienlaikus saglabājot stabilu rādījumu. Ir kritisks iestatījums, kad vidējais rādītājs sāk parādīt dīvainus rādījumus. Pagrieziet trimmeri, lai atkal iegūtu stabilas vērtības.

Var gadīties, ka displejs sasalst. Vienkārši nospiediet atiestatīšanas pogu un sāciet no jauna.

Manai konfigurācijai (spole: 18 apgriezieni\20 cm) stabilā vērtība ir aptuveni 630-650. Pēc instalēšanas nospiediet atiestatīšanas pogu, ierīce atkal kalibrēsies un visas trīs vērtības būs vienā diapazonā. Ja metāls tagad atrodas spoles tuvumā, vajadzētu iedegties gaismas diodei uz Arduino plates (D13). Iekļautais skaļrunis veic dažus klikšķus (avota kodā ir vietas uzlabojumiem).

Lai izvairītos no lielām cerībām:

Detektors atklāj dažas lietas, taču tas joprojām ir ļoti vienkāršs un ierobežots.

Lai sniegtu priekšstatu par iespējām, es salīdzināju dažus citus detektorus ar manējiem. Rezultāti joprojām ir diezgan iespaidīgi detektoram ar 8 ārējiem elementiem, taču tie nav līdzvērtīgi profesionālajam aprīkojumam.

Skatoties uz shēmu un programmu, es redzu daudz iespēju uzlabot. Rezistoru vērtības tika izvēlētas, pamatojoties uz pieredzi, impulsa laiks 250 ms tika izvēlēts nejauši, un tāpat tika izvēlēti spoles parametri.

Faili

5. darbība. 16x2 displeja pievienošana



Testēšanas laikā es sapratu, ka I2C OLED displeja bibliotēka patērē pārāk daudz resursu, tāpēc nolēmu izmantot 16x2 displeju ar I2C pārveidotāju.

Esmu pielāgojis programmu LCD displejam, pievienojot dažas noderīgas funkcijas. Displeja pirmajā rindā tagad ir redzams iespējamās indikācijas signāla līmenis. Otrajā rindā tagad ir parādītas divas vērtības. Pirmais norāda pašreizējā signāla novirzi salīdzinājumā ar kalibrēšanas vērtību. Šai vērtībai jābūt "0". Ja šī vērtība pastāvīgi ir negatīva vai pozitīva, detektors ir jākalibrē, nospiežot atiestatīšanas pogu. Pozitīvās vērtības norāda uz metālu pie spoles.

Otrā vērtība parāda samazināšanās līknes faktisko aizkaves vērtību. Šī vērtība parasti nav tik interesanta, bet tā ir nepieciešama detektora sākotnējai iestatīšanai.

Programma tagad ļauj izsekot vairākiem impulsu ilgumiem pēc kārtas (līdzeklis eksperimentēšanai/veiktspējas uzlabošanai). Tomēr es nesaņēmu nekādu izrāvienu, tāpēc noklusējuma iestatījums ir viens impulsa platums.

Sākotnējā detektora iestatīšana

Uzstādot detektoru, svarīga ir otrās rindas otrā vērtība (pirmo var ignorēt). Sākotnēji vērtība var būt "nestabila" (skatiet attēlu). Pagrieziet trimmeri, līdz vērtība sasniedz stabilu rādījumu. Pēc tam pagrieziet to, lai palielinātu vērtību līdz maksimālajai stabilai vērtībai. Nospiediet atiestatīšanas pogu, lai veiktu atkārtotu kalibrēšanu, un detektors ir gatavs lietošanai.

Man radās iespaids, ka, iestatot maksimālo stabilo vērtību, es zaudēju jutību pret krāsainajiem metāliem. Tāpēc, iespējams, ir vērts eksperimentēt ar iestatījumiem, lai to labotu.

Ruļļi

Es izveidoju 3 spoles impulsu metāla detektora ķēdes turpmākai pārbaudei:

  • 1 -> 18 pagriezieni/ 200 mm
  • 2 -> 25 pagriezieni/100 mm
  • 3 -> 48 pagriezieni/100 mm

Interesanti, ka visas spoles strādāja diezgan labi, ar gandrīz tādu pašu veiktspēju (rubļa monēta 40-50 mm gaisā). Tas var būt ļoti subjektīvs novērojums.

Tas tika izstrādāts uz jau zināmās ierīces "Terminator Pro" bāzes. Tās galvenā priekšrocība ir augstas kvalitātes diskriminācija, kā arī zems strāvas patēriņš. Tāpat ierīces salikšana nebūs dārga, turklāt tā var darboties uz jebkura veida augsnēm.

Šeit ir īsas ierīces īpašības
Saskaņā ar darbības principu metāla detektors ir arī pulsa balanss.
Darbības frekvence ir 8-15 kHz.

Kas attiecas uz diskriminācijas režīmu, tajā tiek izmantota divu toņu balss darbība. Atklājot dzelzi, ierīce izstaro zemu signālu, un, ja tiek noteikts krāsainais metāls, tonis būs augsts.

Ierīce tiek darbināta no 9-12V avota.

Ir arī iespēja regulēt jutību un ir manuāla zemes regulēšana.

Nu, tagad par galveno, par metāla detektora noteikšanas dziļumu. Ierīce spēj noteikt 25 mm diametra monētas 35 cm attālumā gaisā. Zelta gredzenu var noķert 30 cm attālumā Ierīce uztver ķiveri aptuveni 1 metra attālumā. Maksimālais noteikšanas dziļums ir 150 cm.. Runājot par patēriņu, bez skaņas tas ir aptuveni 35 mA.

Materiāli un instrumenti montāžai:

- mini urbis (autoram ir paštaisīts no motora);
- vads spoles uztīšanai;
- četrdzīslu ekranēts kabelis;
- lodāmurs ar lodmetālu;
- materiāli korpusa izgatavošanai;
- iespiedshēmas plate;
- visas nepieciešamās radio sastāvdaļas un to vērtējumus var redzēt diagrammas fotoattēlā.


Metāla detektora ražošanas process:

Pirmais solis. Plātņu ražošana
Tāfele izgatavota ar kodināšanu. Tālāk jūs varat urbt caurumus, to diametrs ir 0,8 mm. Šiem nolūkiem autors izmanto nelielu motoru ar uzstādītu urbi.






Otrais solis. Valdes sapulce
Montāža jāsāk ar džemperu lodēšanu. Pēc tam jūs varat uzstādīt paneļus zem mikroshēmām un lodēt citus elementus. Kvalitatīvai montāžai ir ļoti svarīgi, lai būtu testeris, kas var izmērīt kondensatoru kapacitāti. Tā kā ierīce izmanto divus identiskus pastiprināšanas kanālus, pastiprinājumam pa tiem jābūt pēc iespējas tuvākam vienai un tai pašai vērtībai, tas ir, jābūt vienādam. Abiem vienas kaskādes kanāliem jābūt vienādiem rādījumiem, kad tos mēra testeris.

Fotoattēlā var redzēt, kā izskatās jau samontētā shēma. Autors neuzstādīja vienību, kas nosaka akumulatora izlādes pakāpi.








Pēc montāžas dēlis jāpārbauda ar testeri. Tam ir jāpievieno strāva un jāpārbauda visas stratēģiski svarīgās ieejas un izejas. Visur barošanas avotam jābūt tieši tādam pašam kā diagrammā.

Trešais solis. Spoles salikšana
DD sensors ir salikts pēc tāda paša principa kā visiem līdzīgiem balansieriem. Raidīšanas spoli apzīmē ar burtiem TX, bet uztveršanas spoli - ar RX. Kopumā jums ir jāizveido 30 stieples pagriezieni, kas salocīti uz pusēm. Izmantotā stieple ir emaljēta, ar diametru 0,4 mm. Gan uztveršanas, gan raidīšanas spoles veido dubultvadi, kā rezultātā izejā ir četri vadi. Tālāk testētājam ir jānosaka tinumu pleci un jāsavieno vienas rokas sākums ar otras puses galu, kā rezultātā veidojas spoles vidējais spailes.

Lai salabotu spoli pēc uztīšanas, tas ir labi jāietin ar diegu un pēc tam iemērc ar laku. Pēc lakas nožūšanas spoles aptin ar elektrisko lenti.

Pēc tam uz augšu tiek izveidots folijas ekrāns, starp sākumu un beigām ir jāizveido apmēram 1 mm atstarpe, lai izvairītos no īssavienojuma.



Vidējai TX tapai jābūt savienotai ar dēļa zemējumu, pretējā gadījumā ģenerators nedarbosies. Kas attiecas uz vidējo RX izvadi, tas ir nepieciešams frekvences regulēšanai. Pēc rezonanses regulēšanas to nepieciešams izolēt, un uztverošā spole pārvēršas par parastu, tas ir, bez vada. Kas attiecas uz uztveršanas spoli, tā ir pievienota raidošās spoles vietā un iestatīta uz 100–150 Hz zemāku nekā raidīšanas spole. Katra spole jākonfigurē atsevišķi; regulējot, spoles tuvumā nedrīkst atrasties metāla priekšmeti.

Lai līdzsvarotu, spoles ir nobīdītas, kā redzams fotoattēlā. Līdzsvaram jābūt 20-30 mV robežās, bet ne vairāk kā 100 mV.

Ierīces darbības frekvences ir no 7 kHz līdz 20 kHz. Jo zemāka ir frekvence, jo dziļāk ierīce nonāks, bet zemās frekvencēs diskriminācija kļūst sliktāka. Un otrādi, jo augstāka frekvence, jo labāka ir diskriminācija, bet mazāks ir noteikšanas dziļums. Par zelta vidusceļu var uzskatīt 10-14 kHz frekvenci.

Lai savienotu spoli, tiek izmantots četrdzīslu ekranēts vads. ekrāns ir savienots ar korpusu, divi vadi iet uz raidīšanas spoli un divi uz uztveršanas spoli.

Metāla detektors ir ierīce, ko izmanto, lai noteiktu metāla klātbūtni noteiktā metāla detektora tuvumā, nepieskaroties pašam metālam. Šādas ierīces plaši izmanto, lai zemē meklētu metāla priekšmetus, piemēram, raktuves, dārgumus ar dārgmetāliem, senlietas un citas lietas. Metāla detektorā izmantotais bezkontakta noteikšanas process ir izskaidrots, izmantojot induktīvās uztveršanas metodi. Pamatkoncepcija ir tāda, ka metāla klātbūtne var mainīt induktora (spoles) induktivitāti. Tādējādi metāla detektora elektroniskā uzpilde vienkārši nosaka spoles induktivitāti, kas zondē pētāmo virsmu un, pateicoties skaļrunim vai citai saskarnes ierīcei, paziņo lietotājam par tuvumā esošu metāla priekšmetu.



Metāla detektori oficiālajās tirdzniecības vietās nav tik lēti, kā mēs vēlētos. Bet šodien, pateicoties radioamatieru tehnoloģiju attīstībai, jūs pats varat izgatavot metāla detektoru, izmantojot Arduino.


Būtībā, izmantojot Arduino, jūs varat izveidot vienkāršu induktivitātes mērītāju, tas ir, ierīci, ar kuru var izmērīt nezināmo spoles induktivitāti. Šajā projektā tiek izmantota parastā rezonanses ķēde, kurā kondensators un induktors ir savienoti paralēli. LC ķēdes dabiskā rezonanses frekvence mainās atkarībā no metāla klātbūtnes spoles tuvumā. Lai iegūtu signālu, kas ir pieņemams nolasīšanai no rezonanses ķēdes, tiek izmantots komparators LM339. Tā kā svārstības no LC ķēdes vienmēr būs sinusoidāla viļņa formā, šajā projektā tiek izmantots salīdzinājuma nulles šķērsošanas detektors, lai sinusoidālo vilni pārvērstu kvadrātviļņu frekvences impulsos, lai Arduino plate varētu izmērīt šo impulsu periodu. un, pamatojoties uz iegūtajiem datiem, periods, kurā jāpaziņo par metāla klātbūtni ierīces tuvumā. Pateicoties Arduino IDE iebūvētajai funkcijai pulseIn (), varat izmērīt impulsa laika periodu. Piemēram, impulss = impulssIn(11, AUGSTS, 5000). Šajā gadījumā funkcija atgriež laika periodu, kurā impulss saglabājās augsts 11. rindā. Trešais parametrs nav obligāts; tas iestata gaidīšanas laiku, pirms impulss parādās norādītajā rindā.


Arduino bāzes metāla detektora ķēde ir parādīta zemāk.




dubultais impulss; void setup() ( pinMode(11,INPUT); pinMode(13,OUTPUT); pinMode(8,OUTPUT); ) void loop() (digitalWrite(13,HIGH); delayMicroseconds(5000); digitalWrite(13,LOW)) ; aizkaveMikrosekundes(100); impulss = impulssIn(11,HIGH,5000); if(impulss > 920) ( tonis (8, 1); aizkave (3000); noTone(8); ) )

Vai jums patika raksts? Dalies ar to