Orodha ya maudhui:

Kigunduzi cha Uingizaji wa Pulse ya Arduino - LC-mtego: 3 Hatua
Kigunduzi cha Uingizaji wa Pulse ya Arduino - LC-mtego: 3 Hatua

Video: Kigunduzi cha Uingizaji wa Pulse ya Arduino - LC-mtego: 3 Hatua

Video: Kigunduzi cha Uingizaji wa Pulse ya Arduino - LC-mtego: 3 Hatua
Video: Output DC or AC Voltage using MCP4725 DAC with LCD and PWM to Voltage Converter with Arduino 2024, Julai
Anonim
Kigunduzi cha Uingizaji wa Pulse ya Arduino - LC-mtego
Kigunduzi cha Uingizaji wa Pulse ya Arduino - LC-mtego

Wakati nikitafuta maoni zaidi kwa kifaa rahisi cha kugundua chuma cha Ardino Pulse na voltage moja tu ya usambazaji nilikuta ukurasa wa kwanza wa Teemo:

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

Aliunda kichunguzi rahisi cha kuingiza Pulse kwa kutumia kanuni ya LC-Trap. Mizunguko kama hiyo ilichapishwa hapa kwa Kufundishwa na TechKiwiGadgets. Isipokuwa kwamba mzunguko wa Teemo hutumia ulinganishaji wa ndani wa mdhibiti mdogo wa PIC, na hivyo kuhitaji vitu vichache vya nje

Kwa hivyo nilipewa changamoto kutumia Arduino badala ya Mdhibiti wa PIC kwa mpango huu na niangalie umbali ninaweza kufikia.

Hatua ya 1: Mpangilio

Mpangilio
Mpangilio
Mpangilio
Mpangilio
Mpangilio
Mpangilio

Mpangilio wa Arduino ni ngumu zaidi kwani Arduino hairuhusu kupitisha ishara ya ndani ya analog kwa pembejeo ya kulinganisha. Hii inaongeza vifaa viwili kwa deviderr rahisi ya voltage. Hii inasababisha muundo na vifaa 12 vya nje (ukiacha spika na LCD ya 16x2), ikilinganishwa na 9 ya muundo wa Flip Coil.

Kanuni ya kufanya kazi ya mpango huo imeelezewa vizuri kwenye wavuti ya Teemo. Kimsingi coil inaendeshwa na kisha imezimwa. Baada ya kuzima, coil na condenser kwa sambamba zitaunda oscillation iliyofutwa. Mzunguko na uozo wa oscillation huathiriwa na chuma katika ukaribu wa coil. Kwa maelezo zaidi ya mzunguko tazama ukurasa wa Teemo au wa TechKiwi hapa kwenye Maagizo.

Kama ilivyo kwenye kigunduzi cha kuingiza Flip Coil Pulse Induction mimi hutumia kulinganisha ndani na uwezekano wa kusababisha kukatiza ili kupata ishara kutoka kwa coil.

Katika kesi hii nitapata usumbufu mwingi kwani voltage inazunguka karibu na voltage ya kumbukumbu iliyowekwa kwa kulinganisha. Mwisho wa oscillation, voltage kwenye coil itakaa karibu 5V, lakini sio haswa. Nilichagua msambazaji wa voltage na 200 Ohm na 10k Ohm kupata voltage ya volts kama 4.9

Ili kupunguza ugumu wa hesabu nilitumia D4 na D5 kutoa GND (kwa Resistor ya 10k) na 5V (kwa kontena la 220 Ohm). Pini zimewekwa wakati wa kuanza kwa detector.

Katika toleo hili, niliongeza unganisho la spika kwa kutumia sauti ya sauti inayodhibitiwa kwa sauti nyingi kama ilivyoelezewa katika Jinsi ya Kupangilia Kigunduzi cha Chuma cha Arduino. Hii inaruhusu kutofautisha mali ya mlengwa na pia kupata hisia ya nguvu ya ishara. Spika inaweza kushikamana na kichwa cha nyongeza cha pini 5. Pini 3 zilizobaki za kichwa zitatumika kwa vifungo vya kushinikiza (kutekelezwa).

Hatua ya 2: Programu

Kupanga programu
Kupanga programu
Kupanga programu
Kupanga programu
Kupanga programu
Kupanga programu

Sasa kwa kuwa mzunguko umebuniwa na mfano umejengwa, ni wakati wa kupata njia inayofaa ya kugundua chuma.

1. Kuhesabu kunde

Kuhesabu kunde za kutoweka hadi uharibike kabisa ni wazo moja.

Ikiwa kuna chuma karibu na coil kiwango cha oscillation hupungua. Katika kesi hii voltage ya kumbukumbu ya kulinganisha inapaswa kuwekwa kwa kiwango ambacho mapigo ya mwisho bado hayajapimwa. Kwa hivyo ikiwa kitu kimegunduliwa, mapigo haya hutoweka mara moja. Hii ilikuwa shida kidogo.

Kila wimbi la oscillation linaunda usumbufu mbili. Moja wakati kwenda chini na moja kurudi juu. Kuweka voltage ya kumbukumbu haswa kwa upeo wa wimbi la oscillation, muda kati ya kwenda chini na kwenda juu unapaswa kuwa mfupi iwezekanavyo (angalia picha). Kwa bahati mbaya hapa kichwa cha mazingira ya Arduino husababisha shida.

Kila kichocheo cha usumbufu huita kificho hiki:

ISR (ANALOG_COMP_vect) {

Toggle1 = Toggle0 // kuokoa thamani ya mwisho Toggle0 = TCNT1; // pata thamani mpya}

Nambari hii inachukua muda (ikiwa nakumbuka sawa, karibu mizunguko 78 ya maagizo mchawi ni kama microseconds 5 @ 16MHz). Kwa hivyo umbali wa chini unaoweza kugundulika kati ya kunde mbili ndio wakati nambari hii inachukua, Ikiwa muda kati ya vichocheo viwili unakuwa mfupi (tazama picha), hautagunduliwa, kwani nambari imetekelezwa kabisa kabla ya kugundua kukatizwa kwa pili.

Hii inasababisha kupoteza kwa unyeti. Wakati huo huo, niliona, kwamba kunyunyiziwa kwa oscillations ni nyeti sana kwa ushawishi wowote wa nje, na hivyo kuifanya njia hii kuwa ngumu kidogo.

2. Kupima mzunguko

Njia nyingine ya kugundua chuma ni kupima mzunguko wa oscillation. Hii ina faida kubwa ikilinganishwa na kupima upunguzaji wa oscillation kwani mabadiliko ya masafa inaruhusu ubaguzi wa chuma. Ikiwa kuna nyenzo zenye feri karibu na coil, masafa yatapungua, ikiwa kuna chuma cha thamani karibu na coil, masafa yataongezeka.

Njia rahisi ya kupima masafa ni kupima kiwango cha kunde baada ya kozi kuanza kusonga. Kipindi cha wakati kati ya mwanzo na mapigo ya mwisho yaliyogawanywa na jumla ya kunde zilizopimwa ni masafa. Kwa bahati mbaya oscillations chache za mwisho hazina kipimo. Kwa kuwa uwepo wa chuma pia unashawishi kuoza kwa oscillation oscillations ya mwisho ni isiyo ya kawaida, usomaji ni ngumu kutafsiri. Katika picha hii ni onyesho na kuvuka 1 hadi 1 'na 2 hadi 2'.

Njia bora ni kwa hivyo kutumia kunde za mapema kupima masafa. Wakati wa kujaribu, kwa kupendeza niligundua kuwa kunde zingine ni nyeti zaidi kuliko zingine. Mahali fulani kwa 2/3 ya oscillations ni hatua nzuri ya kupata data.

Inachakata data

Nambari ya kwanza kulingana na kitanzi () inayoita kazi ya kunde () kufanya wakati wa coil. Wakati matokeo hayakuwa mabaya, nilikuwa na hamu ya kuboresha muda. Ili kufanya hivyo, niliunda nambari ya msingi ya kipima muda, ikiongoza kwa njia tofauti inayoweza kusanifiwa Jinsi ya Kupanga Kichunguzi cha Chuma cha Arduino. Hii inaelezewa inaelezea wakati, data crunching pato la LCD nk kwa undani

1. LCD

Njia ya kwanza ilikuwa kupima kunde 10 na kisha kuonyesha maadili kwenye LCD. Kama nilivyogundua uhamishaji wa data wa I2C ulikuwa polepole sana, nilibadilisha nambari ili kusasisha mhusika mmoja tu kwa mapigo.

2. Njia ya chini ya thamani

Ili kuboresha utulivu wa usomaji zaidi niliandika utaratibu wa pato la serial kupata hisia bora kwa data iliyopimwa. Hapo ikawa dhahiri, kwamba ingawa usomaji mwingi ulikuwa thabiti, zingine hazikuwa hivyo! Usomaji mwingine wa mpigo wa "sawa" wa kusukuma ulikuwa mbali sana na kwamba ingeharibu kila njia ya kuchambua mabadiliko ya masafa.

Ili kulipa fidia hii, niliunda "mpaka" ambao thamani yake ilikuwa ya kuaminika. I. e. wakati maadili yalikuwa zaidi ya mizunguko 35 ya timer1 mbali na thamani inayotarajiwa, maadili haya yalipuuzwa (imeelezewa kwa undani katika "Inayoweza kufundishwa" Jinsi ya Kupangilia Kigunduzi cha Chuma cha Arduino ")

Njia hii imeonekana kuwa thabiti sana.

3. Voltage

Ubunifu wa asili wa Teemo unaendeshwa chini ya volts 5. Kwa kuwa mawazo yangu yalikuwa "volts zaidi = nguvu zaidi = unyeti zaidi" Niliendesha kitengo hapo mwanzoni na 12V. Hii ilisababisha kupokanzwa kwa MOSFET. Upashaji-joto basi ulisababisha kutoweka kwa jumla kwa maadili yaliyopimwa, na kusababisha kusawazisha mara kwa mara kwa kipelelezi. Kwa kupunguza voltage hadi 5V kizazi cha joto cha MOSFET kinaweza kupunguzwa hadi kiwango ambacho karibu hakuna utaftaji wa usomaji ulionekana. Hii ilifanya mzunguko kuwa rahisi zaidi, kwani mdhibiti wa voltage kwenye bodi ya Arduino hakuhitajika tena.

Kwa MOSFET nilichagua mwanzoni IRL540. MOSFET hii inalingana na kiwango cha mantiki, lakini ina kiwango cha juu cha kiwango cha voltage ov 100V. Nilitarajia mabadiliko bora ya utendaji kuwa IRL640 na viwango 200V. Kwa bahati mbaya matokeo yalikuwa yale yale. Kwa hivyo ama IRL540 au IRL640 itafanya kazi hiyo.

Hatua ya 3: Matokeo ya Mwisho

Matokeo ya Mwisho
Matokeo ya Mwisho
Matokeo ya Mwisho
Matokeo ya Mwisho
Matokeo ya Mwisho
Matokeo ya Mwisho

Faida ya upelelezi ni kwamba inabagua kati ya vitu vyenye thamani na vya feri. Ubaya ni kwamba unyeti na muundo huu rahisi sio mzuri. Kulinganisha utendaji nilitumia marejeo sawa na ya kigunduzi cha Flip-Coil. Labda ni nzuri kwa kubainisha, lakini kuna uwezekano wa kukatisha tamaa kwa utaftaji wa kweli.

Hapa muundo wa asili na mtawala wa PIC unaweza kuwa nyeti zaidi kwani inaendesha 32MHz badala ya 16MHz ya therfor kutoa azimio kubwa la kugundua mabadiliko katika masafa.

Matokeo yalifanikiwa kwa kutumia coil na zamu 48 @ 100mm.

Kama kawaida, fungua maoni

Ilipendekeza: