Turinys:

„Pasidaryk pats“perimetro vielos generatorius ir jutiklis: 8 žingsniai
„Pasidaryk pats“perimetro vielos generatorius ir jutiklis: 8 žingsniai

Video: „Pasidaryk pats“perimetro vielos generatorius ir jutiklis: 8 žingsniai

Video: „Pasidaryk pats“perimetro vielos generatorius ir jutiklis: 8 žingsniai
Video: Functioning & Working Principle of IR Sensor || By - V.M.AKASHWARAN. 2024, Liepa
Anonim
„Pasidaryk pats“perimetro vielos generatorius ir jutiklis
„Pasidaryk pats“perimetro vielos generatorius ir jutiklis

Laidų nukreipimo technologija plačiai naudojama pramonėje, ypač sandėliuose, kuriuose tvarkymas yra automatizuotas. Robotai seka žemėje palaidotą vielinę kilpą. Šioje laidoje teka santykinai mažo intensyvumo ir dažnio kintamoji srovė tarp 5Kz ir 40KHz. Robotas turi indukcinius jutiklius, paprastai pagrįstus bako grandine (kurio rezonanso dažnis yra lygus arba artimas sukuriamos bangos dažniui), kuris matuoja elektromagnetinio lauko intensyvumą arti žemės. Apdorojimo grandinė (stiprinimas, filtrai, palyginimas) leidžia nustatyti roboto padėtį laido viduje. Šiais laikais perimetras/kontūro viela taip pat naudojami „nematomoms tvoroms“sukurti, kad augintiniai būtų laikomi kiemuose, o robotų vejapjovės - zonose. „LEGO“taip pat naudoja tą patį principą, norėdamas nukreipti transporto priemones keliais, lankytojams nematant jokių linijų.

Ši pamoka lengvai ir intuityviai paaiškina, kad padėtų jums suprasti teoriją, dizainą ir įgyvendinimą, kad sukurtumėte savo generatorių ir jutiklį perimetro vielai. Failus (schemas, „Eagle Files“, „Gerbers“, „3D Files“ir „Arduino Sample Code“) taip pat galima atsisiųsti. Tokiu būdu galite pridėti laido perimetro aptikimo funkciją prie savo mėgstamo roboto ir laikyti jį veikiančioje „zonoje“.

1 žingsnis: GENERATORIUS

GENERATORIUS
GENERATORIUS
GENERATORIUS
GENERATORIUS
GENERATORIUS
GENERATORIUS

Teorija

Perimetro vielos generatoriaus grandinė bus pagrįsta garsiuoju NE555 laikmačiu. NE555 arba dažniau vadinamas 555 yra integruotas grandynas, naudojamas laikmačio arba multivibratoriaus režimui. Šis komponentas vis dar naudojamas ir šiandien, nes yra patogus naudoti, mažos kainos ir stabilumas. Per metus pagaminama milijardas vienetų. Savo generatoriui naudosime NE555 Astable konfigūracijoje. Stabili konfigūracija leidžia naudoti NE555 kaip osciliatorių. Du rezistoriai ir kondensatorius leidžia keisti svyravimo dažnį ir darbo ciklą. Komponentų išdėstymas yra toks, kaip parodyta žemiau esančioje schemoje. NE555 sukuria (šiurkščią) kvadratinę bangą, kuri gali nubėgti perimetro laidą. Remiantis laikmačio NE555 duomenų lapu, yra pavyzdinė grandinė, taip pat veikimo teorija (8.3.2 A stabilus veikimas). „Texas Instruments“nėra vienintelis NE555 IC gamintojas, todėl jei pasirinksite kitą mikroschemą, būtinai peržiūrėkite jos vadovą. Mes siūlome šį gražų 555 laikmačio litavimo rinkinį, kuris suteiks jums galimybę lituoti visus vidinius 555 laikmačio komponentus per skylių paketą, kad galėtumėte išsamiai suprasti šios grandinės veikimą.

Schema ir prototipų kūrimas

Schema, pateikta NE555 vadove (8.3.2 A stabilus veikimo skyrius) yra gana išsami. Buvo pridėta keletas papildomų komponentų ir aptarta toliau. (pirmasis vaizdas)

Formulė, naudojama išvesties kvadratinės bangos dažniui apskaičiuoti, yra

f = 1,44 / ((Ra+2*Rb)*C)

Sukurtos kvadratinės bangos dažnių diapazonas bus tarp 32Khz ir 44KHz, tai yra specifinis dažnis, kuris neturėtų trukdyti kitiems artimiems įrenginiams. Tam mes pasirinkome Ra = 3,3 KOhm, Rb = 12 KOhm + 4,7 KOhm potenciometras ir C = 1,2 nF. Potenciometras padės mums keisti kvadratinių bangų išėjimo dažnį, kad jis atitiktų LC bako grandinės rezonansinį dažnį, kuris bus aptartas vėliau. Teoriškai mažiausia ir didžiausia išėjimo dažnio vertė bus apskaičiuota pagal formulę (1): Žemiausia dažnio vertė: fL = 1.44 / ((3.3+2*(12+4.7))*1.2*10^(-9)) ≈ 32 698Hz

Aukščiausia dažnio vertė: fH = 1,44 / ((3,3+2*(12+0))*1,2*10^(-9)) 95 43 956Hz

Kadangi 4,7Kohm potenciometras niekada nepasiekia 0 arba 4,7, išėjimo dažnių diapazonas skirsis nuo maždaug 33,5Khz iki 39Khz. Čia yra visa generatoriaus grandinės schema. (antras vaizdas)

Kaip matote schemoje, buvo pridėta keletas papildomų komponentų ir jie bus aptarti toliau. Čia yra visas BOM:

  • R1: 3,3 KOhm
  • R2: 12 KOhm
  • R3 (srovės ribojimo rezistorius): 47 omai (turi būti gana didelis, kad išsklaidytų šilumą, o 2 W galios turėtų pakakti)
  • R4: 4.7 KOhm potenciometras
  • C2, C4: 100 nF
  • C3: 1.2nF (1000pF taip pat atliks darbą)
  • C5: 1uF
  • J1: 2,5 mm centrinė teigiama statinės jungtis (5-15 V DC)
  • J2: varžto gnybtas (dvi padėtys)
  • IC1: NE555 tikslumo laikmatis

Prie schemos pridėtos papildomos dalys: A statinės lizdas (J1), skirtas lengvai prijungti prie sieninio adapterio (12 V), ir varžto gnybtas (12), kad būtų patogu prijungti prie perimetro laido. Perimetro viela: atkreipkite dėmesį, kad kuo ilgesnis perimetro laidas, tuo labiau signalas blogėja. Mes išbandėme sąranką su maždaug 100 colių 22 skersmens viela (pritvirtinta prie žemės, o ne palaidota). Maitinimo šaltinis: 12 V sieninis adapteris yra neįtikėtinai paplitęs, o bet kokia srovė, didesnė nei 500 mA, turėtų gerai veikti. Taip pat galite pasirinkti 12 V švino rūgštį arba 11,1 V LiPo, kad laikytumėte ją korpuse, tačiau būtinai apsaugokite ją nuo oro sąlygų ir išjunkite, kai nenaudojate. Štai keletas mūsų siūlomų dalių, kurių jums gali prireikti kuriant generatoriaus grandinę:

  • 2,1 mm statinės lizdas prie terminalo arba šis 2,1 mm statinės lizdo adapteris - suderinamas su duonos lenta
  • 400 raištinių taškų tarpusavyje sujungta permatoma be litavimo duonos lenta
  • 65 x 22 matuoklio jungiamieji laidai
  • DFRobot rezistorių rinkinys
  • „SparkFun“kondensatorių rinkinys
  • 12VDC 3A sieninio adapterio maitinimo šaltinis

Štai kaip turėtų atrodyti generatoriaus grandinė ant duonos lentos (trečias vaizdas)

2 žingsnis: Rezultatai

Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai

Kaip parodyta žemiau esančioje generatoriaus grandinės išvesties osciloskopo ekrano kopijoje (padaryta naudojant „Micsig 200 MHz 1 GS/s 4 Channels Tablet Oscilloscope“), matome (šiurkščią) kvadratinę bangą, kurios dažnis yra 36,41 KHz ir amplitudė 11,8 V (naudojant 12 V maitinimo adapterį). Dažnį galima šiek tiek keisti reguliuojant R4 potenciometrą.

Duonos lenta be litavimo retai kada yra ilgalaikis sprendimas ir geriausiai naudojama greitam prototipui sukurti. Todėl, patvirtinę, kad generatoriaus grandinė veikia taip, kaip turėtų, sukurdama kvadratinę bangą, kurios dažnių diapazonas yra 33,5KHz ir 40KHz (kintama per R4 katilą), mes sukūrėme PCB (24mmx34mm) tik su PTH (Plated-through Hole)) komponentai, kad tai būtų graži mažų kvadratinių bangų generatoriaus plokštė. Kadangi skylių komponentai buvo naudojami prototipams gaminti su duonos plokšte, PCB taip pat galėjo naudoti ir skylių komponentus (vietoj montavimo ant paviršiaus) ir tai leidžia lengvai lituoti rankomis. Komponentų išdėstymas nėra tikslus, ir jūs tikriausiai rasite kur tobulėti. Mes sukūrėme „Eagle“ir „Gerber“failus, kuriuos galite atsisiųsti, kad galėtumėte sukurti savo PCB. Failus rasite šio straipsnio pabaigoje esančiame skyriuje „Failai“. Štai keletas patarimų kuriant savo plokštę: Būgno jungtis ir varžto gnybtas turi būti toje pačioje plokštės pusėje Padėkite komponentus santykinai arti vienas kito ir sumažinkite pėdsakus/ilgį Ar tvirtinimo angos turi būti standartinio skersmens ir lengvai išdėstytos atkurti stačiakampį.

3 žingsnis: laidų montavimas

Vielos montavimas
Vielos montavimas
Vielos montavimas
Vielos montavimas
Vielos montavimas
Vielos montavimas

Taigi, kaip įdiegti laidą? Užuot palaidojus, lengviausia tiesiog naudoti kaiščius, kad jis liktų vietoje. Galite laisvai naudoti viską, ką norite, kad viela liktų vietoje, tačiau geriausiai tinka plastikas. Robotas vejapjovėms naudojama 50 kaiščių pakuotė yra nebrangi. Klojant laidą, įsitikinkite, kad abu galai susitinka toje pačioje vietoje, kad būtų galima prijungti prie generatoriaus plokštės per varžtą.

4 žingsnis: atsparumas oro sąlygoms

Kadangi sistema greičiausiai bus palikta lauke ir bus naudojama lauke. Perimetriniam laidui reikia oro sąlygoms atsparios dangos, o pati generatoriaus grandinė yra vandeniui atspariame dėkle. Galite naudoti šį kietą korpusą, kad apsaugotumėte generatorių nuo lietaus. Ne visi laidai yra lygūs. Jei planuojate palikti laidą, būtinai investuokite į tinkamą laidą, pavyzdžiui, šis „Robomow 300“perimetro laidų ekranas, kuris nėra atsparus UV / vandeniui, laikui bėgant greitai sugenda ir tampa trapus.

5 žingsnis: jutiklis

Jutiklis
Jutiklis

Teorija

Dabar, kai sukūrėme generatoriaus grandinę ir įsitikinome, kad ji veikia taip, kaip numatyta, laikas pradėti galvoti apie tai, kaip aptikti laidą einantį signalą. Norėdami tai padaryti, kviečiame skaityti apie LC grandinę, dar vadinamą bako grandine arba suderinta grandine. LC grandinė yra elektros grandinė, pagrįsta lygiagrečiai prijungtu induktoriumi/ritė (L) ir kondensatoriumi (C). Ši grandinė naudojama filtruose, imtuvuose ir dažnio maišytuvuose. Todėl jis dažniausiai naudojamas belaidžio transliavimo metu tiek transliuojant, tiek priimant. Mes nesigilinsime į teorines detales, susijusias su LC grandinėmis, tačiau svarbiausias dalykas, kurį reikia nepamiršti, norint suprasti šiame straipsnyje naudojamą jutiklio grandinę, būtų LC grandinės rezonanso dažnio apskaičiavimo formulė, kuri yra tokia:

f0 = 1/(2*π*√ (L*C))

Kur L yra ritės induktyvumo vertė H (Henry), o C - kondensatoriaus talpos vertė F (Faradas). Kad jutiklis aptiktų 34kHz-40Khz signalą, kuris patenka į laidą, mūsų naudojama bako grandinė turėtų turėti šio diapazono rezonanso dažnį. Mes pasirinkome L = 1mH ir C = 22nF, kad gautume 33 932Hz rezonanso dažnį, apskaičiuotą naudojant (2) formulę. Mūsų rezervuaro grandinės aptikto signalo amplitudė bus palyginti maža (ne daugiau kaip 80 mV, kai išbandėme jutiklio grandinę), kai induktorius yra maždaug 10 cm atstumu nuo laido, todėl jį reikės šiek tiek sustiprinti. Norėdami tai padaryti, mes panaudojome populiarųjį LM324 „Op-Amp“stiprintuvą, kad signalas būtų sustiprintas 100 kartų, esant nekeičiamai konfigūracijai, 2 pakopų stiprinimas, kad būtų užtikrintas gražus skaitomas analoginis signalas didesniu nei 10 cm atstumu. jutiklio išėjimas. Šiame straipsnyje pateikiama naudinga informacija apie „Op-Amps“apskritai. Taip pat galite pažvelgti į LM324 duomenų lapą. Čia yra tipiška LM324 stiprintuvo grandinės schema: „Op-Amp“nekeičiama konfigūracija (ketvirtas vaizdas)

Naudojant neinvertinio stiprinimo konfigūracijos lygtį, Av = 1+R2/R1. Nustačius R1 į 10KOhms ir R2 į 1MOhms, bus pasiektas 100 padidėjimas, kuris atitinka norimą specifikaciją. Kad robotas galėtų aptikti perimetrinį laidą skirtingomis kryptimis, tikslingiau, jei ant jo būtų sumontuotas daugiau nei vienas jutiklis. Kuo daugiau roboto jutiklių, tuo geriau jis aptiks kontūro laidą. Šiai pamokai ir kadangi LM324 yra keturių opų stiprintuvas (tai reiškia, kad vienas LM324 lustas turi 4 atskirus stiprintuvus), plokštėje naudosime du aptikimo jutiklius. Tai reiškia, kad reikia naudoti dvi LC grandines ir kiekviena turės 2 stiprinimo pakopas. Todėl reikia tik vieno LM324 lusto.

6 žingsnis: schema ir prototipų kūrimas

Schema ir prototipų kūrimas
Schema ir prototipų kūrimas
Schema ir prototipų kūrimas
Schema ir prototipų kūrimas

Kaip aptarėme aukščiau, jutiklio plokštės schema yra gana paprasta. Jį sudaro 2 LC grandinės, vienas LM324 lustas ir pora 10KOhms bei 1MOhms rezistorių, skirtų stiprintuvams padidinti.

Čia yra komponentų, kuriuos galite naudoti, sąrašas:

  • R1, R3, R5, R7: 10KOhm rezistoriai
  • R2, R4, R6, R8: 1MOhm rezistoriai
  • C1, C2: 22nF kondensatoriai
  • IC: LM324N stiprintuvas
  • JP3 / JP4: 2,54 mm 3 kontaktų M / M antraštės
  • Induktoriai 1, 2: 1 mH*

* 1mH induktoriai, kurių dabartinė vertė yra 420 mA, o Q koeficientas yra 40 252 kHz, turėtų gerai veikti. Prie schemos pridėjome sraigtinius gnybtus kaip induktoriaus laidus, kad induktoriai (su prie laidų prilituotais laidais) būtų patalpinti patogiose roboto vietose. Tada (induktorių) laidai bus prijungti prie varžtų gnybtų. „Out1“ir „Out2“kaiščiai gali būti tiesiogiai prijungti prie mikrovaldiklio analoginių įvesties kaiščių. Pavyzdžiui, galite naudoti „Arduino UNO“plokštę arba, dar geriau, „BotBoarduino“valdiklį, kad būtų patogiau prisijungti, nes jo analoginiai kaiščiai yra suskirstyti į 3 kaiščių eilę („Signal“, VCC, GND) ir taip pat suderinamas su „Arduino“. LM324 lustas bus maitinamas per 5 V mikrokontrolerio įtampą, todėl analoginis signalas (aptikta banga) iš jutiklio plokštės skirsis nuo 0 V iki 5 V, priklausomai nuo atstumo tarp induktoriaus ir perimetro laido. Kuo arčiau induktoriaus yra perimetro laidas, tuo didesnė jutiklio grandinės išėjimo bangos amplitudė. Štai kaip jutiklio grandinė turėtų atrodyti ant duonos lentos.

7 žingsnis: Rezultatai

Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai
Rezultatai

Kaip matome toliau pateiktose osciloskopo ekrano kopijose, aptikta banga LC grandinės išėjime yra sustiprinta ir prisotinama esant 5 V įtampai, kai induktorius yra 15 cm atstumu nuo perimetro laido.

Kaip ir su generatoriaus grandine, mes sukūrėme gražią kompaktišką PCB su skylių komponentais jutiklių plokštei su dviem bako grandinėmis, stiprintuvu ir 2 analoginiais išėjimais. Failus rasite šio straipsnio pabaigoje esančiame skyriuje „Failai“.

8 žingsnis: „Arduino“kodas

„Arduino“kodas, kurį galite naudoti savo perimetro laidų generatoriui ir jutikliui, yra labai paprastas. Kadangi jutiklio plokštės išvestis yra du analoginiai signalai, kintantys nuo 0 V iki 5 V (po vieną kiekvienam jutikliui/induktoriui), galima naudoti „AnalogRead Arduino“pavyzdį. Tiesiog prijunkite du jutiklio plokštės išvesties kaiščius prie dviejų analoginių įvesties kaiščių ir perskaitykite atitinkamą kaištį, pakeisdami „Arduino AnalogRead“pavyzdį. Naudodami „Arduino“serijinį monitorių, turėtumėte matyti, kad jūsų naudojamo analoginio kaiščio RAW vertė skiriasi nuo 0 iki 1024, kai artėjate prie induktoriaus prie perimetro laido.

Kodas nuskaito „analogPin“įtampą ir ją parodo.

int analogPin = A3; // potenciometro valytuvas (vidurinis gnybtas) prijungtas prie analoginio kaiščio 3 // išoriniai laidai įžeminami ir +5V

int val = 0; // kintamasis, kad išsaugotų perskaitytą vertę

void setup () {

Serial.begin (9600); // sąrankos serija

}

void loop () {

val = analogRead (analogPin); // skaityti įvesties kaištį Serial.println (val); // derinimo vertė

Rekomenduojamas: