Sadržaj:

Arduino detektor impulsne indukcije - LC -zamka: 3 koraka
Arduino detektor impulsne indukcije - LC -zamka: 3 koraka

Video: Arduino detektor impulsne indukcije - LC -zamka: 3 koraka

Video: Arduino detektor impulsne indukcije - LC -zamka: 3 koraka
Video: Build Your Own Induction Heater! Transform Ordinary Materials into Red-Hot Wonders #jlcpcb 2024, Juli
Anonim
Arduino detektor impulsne indukcije - LC -zamka
Arduino detektor impulsne indukcije - LC -zamka

Dok sam tražio daljnje ideje za jednostavan detektor metala Ardino Pulse Induction sa samo jednim naponom napajanja, naišao sam na početnu stranicu Teema:

www.digiwood.ee/8-electronic-projects/2-metal-detector-circuit

Napravio je jednostavan detektor impulsne indukcije po LC-Trap principu. Slična kola su ovdje objavljena na Instructable od strane TechKiwiGadgets. Osim što Teemo kolo koristi interne komparatore PIC mikrokontrolera, pa mu je potrebno manje vanjskih komponenti

Tako da sam bio izazov da koristim Arduino umjesto PIC-kontrolera za ovu shemu i pogledam dokle mogu stići.

Korak 1: Shema

Shematski
Shematski
Shematski
Shematski
Shematski
Shematski

Arduino shema je malo složenija jer Arduino ne dopušta usmjeravanje internog analognog signala na ulaz komparatora. Ovo dodaje dvije komponente za jednostavan razdjelnik napona. To dovodi do dizajna sa 12 vanjskih komponenti (izostavljajući zvučnik i 16x2 LCD), u usporedbi s 9 dizajna preklopne zavojnice.

Princip rada sheme vrlo je dobro objašnjen na web stranici Teema. U osnovi se zavojnica napaja, a zatim isključuje. Nakon isključivanja, zavojnica i kondenzator paralelno će stvoriti prigušenu oscilaciju. Na frekvenciju i opadanje oscilacija utječe metal u blizini zavojnice. Za više detalja o krugu pogledajte stranicu Teema ili TechKiwi -a ovdje na Instructables.

Kao i u detektoru impulsne indukcije sa preklopnom zavojnicom, koristim interni komparator i mogućnost pokretanja prekida za prikupljanje signala iz zavojnice.

U ovom slučaju dobivat ću više prekida jer napon oscilira oko referentnog napona postavljenog na komparatoru. Na kraju oscilacije, napon na zavojnici će se smiriti oko 5V, ali ne baš tako. Odabrao sam razdjelnik napona sa 200 Ohm i 10k Ohm da dobijem napon od oko 4,9 volti

Da bih smanjio složenost shema, koristio sam D4 i D5 za osiguranje GND (za 10k otpornik) i 5V (za otpornik od 220 Ohma). Igle se postavljaju pri pokretanju detektora.

U ovoj verziji sam dodao vezu zvučnika pomoću višetonske aplikacije za kontrolu jačine zvuka kako je opisano u Kako programirati detektor metala na bazi Arduina. To omogućava razlikovanje svojstava cilja, kao i osjećaj za jačinu signala. Zvučnik se može povezati s dodatnim 5 -polnim zaglavljem. Preostala 3 pina zaglavlja koristit će se za pritiskanje tipki (bit će implementirano).

Korak 2: Programiranje

Programiranje
Programiranje
Programiranje
Programiranje
Programiranje
Programiranje

Sada kada je kolo dizajnirano i prototip izgrađen, vrijeme je da se pronađe odgovarajući pristup za otkrivanje metala.

1. Brojanje impulsa

Brojanje impulsa oscilacije sve dok potpuno ne nestane jedna je ideja.

Ako u blizini zavojnice postoji metal, količina oscilacija se smanjuje. U tom slučaju referentni napon komparatora treba postaviti na razinu tako da se posljednji impuls jedva još uvijek mjeri. Dakle, u slučaju da se nešto otkrije, ovaj puls odmah nestaje. Ovo je bilo pomalo problematično.

Svaki val oscilacije stvara dva prekida. Jedan prilikom spuštanja i jedan nazad. Da biste referentni napon postavili točno na vrh oscilacijskog vala, vrijeme između silaska i uzleta mora biti što je moguće kraće (vidi sliku). Nažalost, ovdje troškovi okoline Arduina stvaraju probleme.

Svaki okidač prekida poziva za ovaj kod:

ISR (ANALOG_COMP_vect) {

Toggle1 = Toggle0 // spremi zadnju vrijednost Toggle0 = TCNT1; // dobiti novu vrijednost}

Ovaj kôd traje neko vrijeme (ako se dobro sjećam, oko 78 ciklusa instrukcija koje su oko 5 mikrosekundi na 16 MHz). Stoga je minimalna detektibilna udaljenost između dva impulsa točno vrijeme koje ovom kodu treba. Ako vrijeme između dva okidača postane kraće (vidi sliku), ono će ostati neotkriveno, jer se kôd u potpunosti izvršava prije otkrivanja drugog prekida

To dovodi do gubitka osjetljivosti. U isto vrijeme, primijetio sam da je prigušivanje oscilacija vrlo osjetljivo na bilo kakve vanjske utjecaje, pa je ovaj pristup ukupno malo otežan.

2. Mjerenje frekvencije

Drugi način otkrivanja metala je mjerenje frekvencije oscilacija. Ovo ima veliku prednost u odnosu na mjerenje prigušenja oscilacija jer promjena frekvencije omogućava diskriminaciju metala. U slučaju da se u blizini zavojnice nalazi željezni materijal, frekvencija će se usporiti, u slučaju da se u blizini zavojnice nalazi plemeniti metal, frekvencija će se povećati.

Najjednostavniji način mjerenja frekvencije je mjerenje količine impulsa nakon što zavojnice počnu oscilirati. Vremenski period između početka i posljednjeg impulsa podijeljen s ukupnom količinom izmjerenih impulsa je frekvencija. Nažalost, posljednjih nekoliko oscilacija je prilično nesimetrično. Kako prisutnost metala također utječe na opadanje oscilacija, posljednje oscilacije su još nesimetričnije, očitavanja je teško interpretirati. Na slici je ovo prikaz s prijelazima 1 do 1’i 2 do 2’.

Bolji način je stoga korištenje nekih ranijih impulsa za mjerenje frekvencije. Zanimljivo je da sam tijekom testiranja otkrio da su neki impulsi osjetljiviji od drugih. Negdje na 2/3 oscilacija dobra je točka za prikupljanje podataka.

Obrada podataka

Početni kôd zasnovan na loop () pozivanju funkcije pulse () za mjerenje vremena zavojnice. Iako rezultati nisu bili loši, imao sam želju poboljšati vrijeme. Da bih to učinio, stvorio sam kôd temeljen na potpunom tajmeru, koji vodi do zasebnog instuctable načina programiranja detektora metala zasnovanog na Arduinu. Ova instrukcija detaljno objašnjava vrijeme, LCD izlaz podataka itd

1. LCD

Prvi pristup bio je mjerenje 10 impulsa, a zatim prikazivanje vrijednosti na LCD -u. Kako sam otkrio da je prijenos podataka I2C bio prespor, promijenio sam kôd da ažuriram samo jedan znak po impulsu.

2. Pristup minimalne vrijednosti

Da bih dodatno poboljšao stabilnost očitanja, napisao sam rutinu serijskog izlaza kako bih bolje osjetio mjerene podatke. Tamo je postalo očito da, iako je većina očitanja bila donekle stabilna, neka nisu! Neka očitavanja "istog" oscilacijskog impulsa bila su toliko udaljena da bi uništila svaki pristup analiziranju promjene frekvencije.

Da bih to kompenzirao, stvorio sam "granicu" unutar koje su vrijednosti pouzdane. I. e. kada su vrijednosti bile udaljene više od 35 ciklusa timera1 od očekivane vrijednosti, te su vrijednosti zanemarene (detaljno objašnjeno u uputama "Kako programirati detektor metala na bazi Arduina")

Ovaj pristup se pokazao kao vrlo stabilan.

3. Napon

Originalni dizajn Teema ima napajanje ispod 5 volti. Kako su moje pretpostavke bile „više volti = veća snaga = veća osjetljivost“, napajao sam jedinicu u početku sa 12V. To je rezultiralo zagrijavanjem MOSFET -a. Ovo zagrijavanje je zatim rezultiralo općim pomakom izmjerenih vrijednosti, što je dovelo do čestih ponovnih balansiranja detektora. Smanjivanjem napona na 5V, proizvodnja topline MOSFET -a mogla bi se svesti na nivo na kojem nije primijećeno gotovo nikakvo pomakanje očitanja. Ovo je krug učinilo još jednostavnijim, jer regulator napona na ploči Arduina više nije bio potreban.

Za MOSFET sam prvo odabrao IRL540. Ovaj MOSFET je kompatibilan s logičkim nivoom, ali ima maksimalni napon od 100V. Nadao sam se boljim performansama promjenom na IRL640 sa 200V napona. Nažalost, rezultati su bili isti. Dakle, IRL540 ili IRL640 će obaviti posao.

Korak 3: Konačni rezultati

Konačni rezultati
Konačni rezultati
Konačni rezultati
Konačni rezultati
Konačni rezultati
Konačni rezultati

Prednost detektora je u tome što pravi razliku između dragocjenog i željeznog materijala. Nedostatak je to što osjetljivost s ovom jednostavnom shemom nije tako dobra. Za usporedbu performansi koristio sam iste reference kao i za detektor Flip-Coil. Vjerovatno dobro za neke precizne tačke, ali najvjerojatnije razočaravajuće za pravo traženje.

Ovdje bi originalni dizajn s PIC kontrolerom mogao biti osjetljiviji jer radi na 32MHz umjesto na 16MHz terfora koji pruža veću rezoluciju za otkrivanje pomaka u frekvenciji.

Rezultati su postignuti korištenjem zavojnice sa 48 zavoja na 100 mm.

Kao i uvijek, otvoreni za povratne informacije

Preporučuje se: