Metalldetektor är en säkerhetsanordning som används för att detektera metaller som kan vara skadliga, på olika platser som flygplatser, köpcentra, biografer, etc. Tidigare har vi gjort en mycket enkel Metalldetektor utan mikrokontroller, nu bygger vi på metalldetektor använder Arduino. I det här projektet ska vi använda en spole och kondensator som kommer att ansvara för detektering av metaller. Här har vi använt en Arduino Nano för att bygga detta metalldetektorprojekt. Detta är ett mycket intressant projekt för alla elektronikälskare. Varhelst den här detektorn upptäcker någon metall i närheten börjar summern att pipa mycket snabbt.
Nödvändiga komponenter:
Följande är de komponenter som du behöver för att bygga en enkel DIY metalldetektor med Arduino. Alla dessa komponenter bör vara lätt tillgängliga i din lokala hårdvaruaffär.
- Arduino (någon)
- Spole
- 10nF kondensator
- Summer
- 1k-motståndet
- 330 ohm motstånd
- LED
- 1N4148-diod
- Brödbräda eller kretskort
- Anslutande bygelkabel
- 9v batteri
Hur fungerar en metalldetektor?
Närhelst någon ström passerar genom spolen genererar den ett magnetfält runt den. Och förändringen i magnetfältet genererar ett elektriskt fält. Enligt Faradays lag utvecklas nu på grund av detta elektriska fält en spänning över spolen som motsätter sig förändringen i magnetfältet och det är så här Coil utvecklar induktansen, vilket innebär att den genererade spänningen motsätter sig ökningen av strömmen. Induktansenheten är Henry och formeln för att mäta induktansen är:
L = (μ ο * N 2 * A) / l Var, L- Induktans i Henries μο- Permeabilitet, dess 4π * 10-7 för luft N- Antal varv A- Inre kärnarea (πr 2) i m 2 l - Spolens längd i meter
När någon metall kommer nära spolen ändrar spolen dess induktans. Denna induktansförändring beror på metalltypen. Det minskar för icke-magnetisk metall och ökar för ferromagnetiska material som järn.
Beroende på spolens kärna ändras induktansvärdet drastiskt. I figuren nedan kan du se luftledande induktorer, i dessa induktorer kommer det inte att finnas någon fast kärna. De är i grunden spolar kvar i luften. Flödesmediet för magnetfält som genereras av induktorn är ingenting eller luft. Dessa induktorer har induktanser av mycket mindre värde.
Dessa induktorer används när behovet av värden är få mikroHenry. För värden större än några milliHenry är dessa inte lämpliga. I bilden nedan kan du se en induktor med ferritkärna. Dessa ferritkärninduktorer har mycket stort induktansvärde.
Kom ihåg att spolen som lindas här är en luftkärnad, så när ett metallstycke förs nära spolen fungerar metallstycket som en kärna för luftkärnad induktor. Genom att denna metall fungerar som en kärna ändras eller ökar spolens induktans avsevärt. Med denna plötsliga ökning av spolens induktans ändras den totala reaktansen eller impedansen för LC-kretsen med en avsevärd mängd jämfört utan metallstycket.
Så här i detta Arduino Metal Detector Project måste vi hitta induktansen hos spolen för att detektera metaller. För att göra detta har vi använt LR-krets (Resistor-Inductor Circuit) som vi redan nämnde. Här i denna krets har vi använt en spole med cirka 20 varv eller lindning med en diameter på 10 cm. Vi har använt en tom tejprulle och lindat tråden runt den för att göra spolen.
Kretsschema:
Vi har använt en Arduino Nano för att styra hela detta metalldetektorprojekt. En LED och en summer används som metalldetekteringsindikator. En spole och kondensator används för detektering av metaller. En signaldiod används också för att minska spänningen. Och ett motstånd för att begränsa strömmen till Arduino-stiftet.
Arbetsförklaring:
Att arbeta med denna Arduino metalldetektor är lite knepigt. Här tillhandahåller vi blockvåg eller puls, genererad av Arduino, till LR-högpassfiltret. På grund av detta kommer korta spikar att genereras av spolen i varje övergång. Pulslängden på de genererade spikarna är proportionell mot spolens induktans. Så med hjälp av dessa Spike-pulser kan vi mäta spolens induktans. Men här är det svårt att mäta induktansen exakt med dessa spikar eftersom dessa spikar är av mycket kort varaktighet (cirka 0,5 mikrosekunder) och det är väldigt svårt att mäta av Arduino.
Så istället för detta använde vi en kondensator som laddas av den stigande pulsen eller spetsen. Och det krävdes få pulser för att ladda kondensatorn till den punkt där dess spänning kan läsas av Arduino analoga stift A5. Sedan läste Arduino spänningen i denna kondensator genom att använda ADC. Efter att ha läst spänningen urladdades kondensatorn snabbt genom att göra capPin- stift som utgång och ställa in den på låg. Hela processen tar cirka 200 mikrosekunder att slutföra. För bättre resultat upprepar vi mätningarna och tog ett genomsnitt av resultaten. Det är så vi kan mäta den ungefärliga induktansen för spolen. Efter att ha fått resultatet överför vi resultaten till lysdioden och summern för att upptäcka närvaron av metall. Kontrollera den fullständiga koden som ges i slutet av denna artikel för att förstå hur det fungerar.
Komplett Arduino-kod ges i slutet av denna artikel. I programmeringsdelen av detta projekt har vi använt två Arduino-stift, en för att generera blockvågor som ska matas i spole och andra analoga stift för att läsa kondensatorns spänning. Förutom dessa två stift har vi använt ytterligare två Arduino-stift för att ansluta LED och summer.
Du kan se den fullständiga koden och demonstrationsvideon för Arduino metalldetektor nedan. Du kan se att när den upptäcker någon metall börjar LED och summer blinka väldigt snabbt.