Turinys:

Pridėkite „Arduino“optinį tachometrą prie CNC maršrutizatoriaus: 34 žingsniai (su nuotraukomis)
Pridėkite „Arduino“optinį tachometrą prie CNC maršrutizatoriaus: 34 žingsniai (su nuotraukomis)

Video: Pridėkite „Arduino“optinį tachometrą prie CNC maršrutizatoriaus: 34 žingsniai (su nuotraukomis)

Video: Pridėkite „Arduino“optinį tachometrą prie CNC maršrutizatoriaus: 34 žingsniai (su nuotraukomis)
Video: Rumba - Optical Endstop 2024, Liepa
Anonim
Image
Image
Pridėkite „Arduino“optinį tachometrą prie CNC maršrutizatoriaus
Pridėkite „Arduino“optinį tachometrą prie CNC maršrutizatoriaus

Sukurkite optinį savo CNC maršrutizatoriaus RPM indikatorių su „Arduino Nano“, IR LED/IR fotodiodo jutikliu ir OLED ekranu už mažiau nei 30 USD. Mane įkvėpė „eletro18“„Measure RPM - Optical Tachometer Instructable“ir norėjau pridėti tachometrą prie savo CNC maršrutizatoriaus. Aš supaprastinau jutiklio grandinę, sukūriau individualų 3D spausdintą laikiklį savo „Sienci“CNC maršrutizatoriui. Tada aš parašiau „Arduino“eskizą, kad OLED ekrane būtų rodomas ir skaitmeninis, ir analoginis ratukas

Keletas paprastų dalių ir pora valandų jūsų laiko, o prie savo CNC maršrutizatoriaus galite pridėti skaitmeninį ir analoginį RPM ekraną.

Štai dalių sąrašas, kurį galima pristatyti per 2 dienas. Tikriausiai galite įsigyti dalių pigiau, jei norite laukti ilgiau.

Dalių sąrašas

6,99 USD „Arduino Nano“

5,99 USD IR LED/IR fotodiodas (5 poros)

7,99 USD OLED ekranas 0,96 geltonos/mėlynos spalvos I2C

4,99 USD trumpieji laidai

1,00 USD 30 colių (75 cm) 3 laidų viela. Galima įsigyti vietinėje namų apyvokos reikmenų parduotuvėje („Home Depot“, „Lowes“) skiltyje „Pirkti po koją“

0,05 USD 220 omų rezistorius (6,99 USD, jei norite 750 įvairių rezistorių)

0,50 USD termiškai susitraukiantys vamzdžiai (5,99 USD, jei norite viso asortimento)

3D spausdinti laikikliai

„Arduino IDE“(nemokama)

Pastaba: iš pradžių pridėjau.01μF kondensatorių po to, kai pritvirtinau visus laidus ir pastebėjau kai kurias klaidingas RPM vertes, kai CNC judėjo. Kondensatorius puikiai veikė esant mažesniems apsisukimams <20K, tačiau jis per daug išlygino signalą, kad būtų didesnis. Stebėjau triukšmą, kad galėčiau įjungti „Nano“ir ekraną tiesiai iš CNC skydo. Atskiras tiekimas veikia visiems aps./min. Kol kas palikau veiksmus, bet turėtumėte naudoti atskirą USB maitinimo šaltinį.

1 veiksmas: atspausdinkite 3D skliaustą

Spausdinkite 3D skliaustą
Spausdinkite 3D skliaustą

Spausdinkite 3D laikiklį, kad laikytumėte IR šviesos diodus ir IR fotodiodus. 3D failai yra čia ir „Thingiverse“.

www.thingiverse.com/thing:2765271

„Sienci Mill“atveju kampinis laikiklis naudojamas jutikliui pritvirtinti prie aliuminio kampinių strypų, tačiau plokščias laikiklis gali būti geresnis jūsų projektui.

2 veiksmas: pasirinktinai 3D spausdinkite OLED ekrano laikiklį ir elektroninį gaubtą

Pasirinktinai 3D spausdinkite OLED ekrano laikiklį ir elektroninį gaubtą
Pasirinktinai 3D spausdinkite OLED ekrano laikiklį ir elektroninį gaubtą

Aš nusprendžiu pritvirtinti OLED prie kampinio ekrano laikiklio, kurį užsukau ant „Sienci Electronics“korpuso viršaus.

Čia yra nuorodos į mano naudojamas 3D spausdintas dalis.

„Sienci“elektronikos gaubto 3D dalis

0,96 OLED ekrano tvirtinimo laikiklis

Korpusas buvo puiki vieta OLED ekrano laikikliui pritvirtinti, jis puikiai laiko „Arduino Nano“, be to, jis tinka Sienci malūno gale. Korpuso viršuje išgręžiau keletą skylių OLED laikikliui pritvirtinti.

Aš taip pat išgręžiau porą skylių apačioje, kad perbrauktumėte mažą užtrauktuką, kad tvirtai pritvirtintumėte laidus

3 žingsnis: sukurkite IR jutiklio laidų mazgą

Sukurkite IR jutiklio vielos mazgą
Sukurkite IR jutiklio vielos mazgą

Jutikliui prijungti bus naudojama 3 laidų viela. Vienas laidas bus bendras IR šviesos diodo ir IR fotodiodo pagrindas, o visi kiti du bus nukreipti į atitinkamą komponentą.

4 veiksmas: pridėkite srovės ribojimo rezistorių IR šviesos diodui

Pridėkite srovės ribojimo rezistorių IR šviesos diodui
Pridėkite srovės ribojimo rezistorių IR šviesos diodui

IR šviesos diodui reikalingas srovę ribojantis rezistorius. Lengviausias būdas yra įtraukti rezistorių į vielos mazgą.

Sulenkite kiekvieno jų galus į U formą ir sujunkite juos. Suspauskite su replėmis ir lituokite jas kartu.

5 veiksmas: sujungimo jungiamieji laidai

„Splice Jumper“laidai
„Splice Jumper“laidai
„Splice Jumper“laidai
„Splice Jumper“laidai

Galite sujungti trumpiklius, kad prijungtumėte juos prie „Arduino“antraštės kaiščių.

Prieš prijungdami, nupjaukite termiškai susitraukiančio vamzdžio gabalėlį ir slyskite per laidą.

Pastumkite termiškai susitraukiantį vamzdelį atgal per jungtį (arba visą rezistorių) ir sutraukite vamzdelį, naudodami šilumos pistoletą arba greitai liepsnodami virš vamzdžio, kol jis susitrauks. Jei naudojate liepsną, greitai judėkite, kitaip ji gali pradėti tirpti.

6 veiksmas: nustatykite IR šviesos diodą ir fotodiodo laidus

Nustatykite IR šviesos diodą ir fotodiodo laidus
Nustatykite IR šviesos diodą ir fotodiodo laidus

Ir IR šviesos diodas, ir IR fotodiodas atrodo panašiai, kiekvienas turi ilgą (anodinį arba teigiamą) laidą ir trumpą (katodo arba neigiamą) laidą.

7 žingsnis: Įdėkite diodus į laikiklį

Įdėkite diodus į laikiklį
Įdėkite diodus į laikiklį

Paimkite IR šviesos diodą (skaidrų diodą) ir įkiškite jį į vieną iš LED laikiklio angų. Pasukite šviesos diodą taip, kad ilgas laidas būtų išorėje. Nuotraukoje viršuje esančioje skylėje galite pamatyti aiškų šviesos diodą su ilgu laidu pačiame viršuje.

Paimkite IR fotodiodą (tamsų diodą) ir įkiškite jį į kitą angą. Pasukite fotodiodą taip, kad jo ilgas laidas būtų centre.

Kaip parodyta nuotraukoje, trumpas šviesos diodo laidas ir ilgas fotodiodo laidas bus centre. Šie du laidai bus sujungti į bendrą laidą atgal į arduino. (Jei norite gauti daugiau informacijos, žiūrėkite technines pastabas pabaigoje)

Paimkite nedidelį 1,75 gijos gabalėlį ir įdėkite jį už diodų. Tai užrakins diodus ir neleis jiems suktis ar išeiti.

Prieš apsispręsdamas dėl šio, perėjau keletą dizaino pakartojimų. Šiek tiek išsikišę diodai labai pagerino toleranciją, kai jie suderinami su įvorės veržle.

8 žingsnis: pritvirtinkite fiksuojančią giją prie laikiklio

Saugokite fiksavimo siūlą prie laikiklio
Saugokite fiksavimo siūlą prie laikiklio

Fiksuojamą kaitinamąjį siūlą norėsite nupjauti tik šiek tiek ilgiau nei laikiklio plotis.

Keletą sekundžių pakaitinkite nagą vise arba laikydami replėmis.

9 veiksmas: prispauskite gijų galus prie įkaitintos nagų galvutės

Filamentų galai prispauskite prie įkaitusios nagų galvutės
Filamentų galai prispauskite prie įkaitusios nagų galvutės

Laikykite pirštą ant priešingo kaitinamojo siūlo galo ir paspauskite, kad ištirptų ir susilietų laikiklio fiksavimo kaištis.

10 veiksmas: baigtas diodų laikiklis

Baigtas diodų laikiklis
Baigtas diodų laikiklis

Lygus ir tvarkingas

11 veiksmas: pritvirtinkite laidus prie diodų

Prijunkite laidus prie diodų
Prijunkite laidus prie diodų
Prijunkite laidus prie diodų
Prijunkite laidus prie diodų

Nukirpkite vielą pagal savo paskirtį. Sienci malūnui iš viso jums reikės apie ~ 75 cm (viela + trumpikliai) ir laisvai, kad maršrutizatorius galėtų judėti.

Sulenkite vielos ir švino antgalius į U formą, kad juos sujungtumėte ir palengvintumėte litavimą.

Paimkite keletą plonų termiškai susitraukiančių vamzdžių ir supjaustykite du trumpus gabalus ir du šiek tiek ilgesnius gabalus. Trumpesnes dalis slyskite per išorinius diodų laidus. Slinkite ilgesnius gabalus per du centrinius laidus.

Dviejų skirtingų ilgių poslinkiai sujungia sujungimo jungtis ir atstumia storesnes jungtis viena nuo kitos, todėl sumažėja laidų skersmuo. Tai taip pat apsaugo nuo trumpojo jungimo tarp skirtingų vielos jungčių

Iškirpkite tris šiek tiek didesnio skersmens termiškai susitraukiančio vamzdžio dalis ir padėkite jas ant kiekvieno iš trijų laidų laidų.

Svarbu įsitikinti, kad tarp laidų termiškai susitraukiančio vamzdelio galų ir sujungimo taško yra nedidelis tarpas. Laidai įkais, o jei termiškai susitraukiantys vamzdeliai bus per arti, jie pradės trauktis pabaigoje, todėl gali būti per maži, kad galėtų slysti per jungtį.

12 veiksmas: įsitikinkite, kad viela su rezistoriumi yra pritvirtinta prie ilgo IR šviesos diodo laido

Srovės ribojimo rezistorius (220 omų), įmontuotas į laidų laidus, turi būti prijungtas prie ilgo (anodo) skaidraus IR šviesos diodo laido. Laidas, jungiantis du bendrus laidus, bus prijungtas prie žemės, todėl galbūt norėsite naudoti juodą arba pliką laidą.

Lituokite jungtis, kad jos taptų nuolatinės.

13 žingsnis: susitraukite termiškai susitraukiantį vamzdelį

Sutraukite termiškai susitraukiantį vamzdelį
Sutraukite termiškai susitraukiantį vamzdelį

Lituodami jungtis, pirmiausia naudokite degtuką ar žiebtuvėlį, kad sutrauktumėte diodų laidų vamzdelius. Pirmiausia perkelkite termiškai susitraukiantį vamzdelį ant laidų kuo toliau nuo karščio.

Kad liepsna greitai judėtų, ji susitraukia ir sukasi, kad visos pusės būtų vienodos. Neskubėkite, kitaip vamzdis ištirps, o ne susitrauks.

Sumažinus diodų laidus, šiek tiek didesnį termiškai susitraukiantį vamzdelį nuo laidų perbraukite per jungtis ir pakartokite susitraukimą.

14 žingsnis: Paruoškite tvirtinimo bloką

Paruoškite tvirtinimo bloką
Paruoškite tvirtinimo bloką

Priklausomai nuo jūsų taikymo, pasirinkite montavimo bloką, kuris tinka jūsų programai. „Since Mill“pasirinkite kampinį tvirtinimo bloką.

Paimkite M2 veržlę ir M2 varžtą. Veržlę vos prisukite prie varžto galo.

Apverskite tvirtinimo bloką ir išbandykite M2 veržlę į skylę.

Nuimkite ir šiek tiek pašildykite veržlę degtuku ar liepsna, tada greitai įdėkite ją į tvirtinimo bloko galą.

Atsukite varžtą, palikdami veržlę įterptą į plastikinį tvirtinimo bloką. Norėdami dar labiau sustiprinti, ant veržlės krašto užlašinkite lašą super klijų, kad tvirtai pritvirtintumėte veržlę prie bloko.

15 veiksmas: įsitikinkite, kad M2 varžtas yra tinkamo ilgio

Įsitikinkite, kad M2 varžtas yra tinkamo ilgio
Įsitikinkite, kad M2 varžtas yra tinkamo ilgio

Įsitikinkite, kad varžtas nėra per ilgas arba jutiklis neprisiverčia prie tvirtinimo bloko. Norėdami pritvirtinti kampinį bloką, įsitikinkite, kad M2 varžtas yra 9 mm arba šiek tiek trumpesnis.

16 žingsnis: pritvirtinkite tvirtinimo bloką prie CNC maršrutizatoriaus

Pritvirtinkite montavimo bloką prie CNC maršrutizatoriaus
Pritvirtinkite montavimo bloką prie CNC maršrutizatoriaus

Jei naudojate „Sienci Mill“, kampinį tvirtinimo bloką pritvirtinkite prie „Z Rail“vidinės dalies apačios porą lašų super klijų.

17 žingsnis: pritvirtinkite jutiklį prie tvirtinimo bloko

Pritvirtinkite jutiklį prie tvirtinimo bloko
Pritvirtinkite jutiklį prie tvirtinimo bloko

Įdėkite reguliuojamą svirtį į tvirtinimo bloką

Įkiškite M2 varžtą su poveržle per reguliuojamos tvirtinimo svirties angą ir įsukite į veržlę.

Stumkite reguliuojamą svirtį, kol šviesos diodas ir fotodiodai bus vienodi su frezavimo veržle

Priveržkite varžtą

18 veiksmas: pridėkite atspindinčią juostelę vienoje veržlės pusėje

Pridėkite atspindinčią juostelę vienoje veržlės pusėje
Pridėkite atspindinčią juostelę vienoje veržlės pusėje

Naudokite mažą aliuminio juostos juostelę (naudojama krosnių ortakiams) ir pritvirtinkite ją prie vieno sandariklio veržlės. Ši atspindinti juosta leis optiniam infraraudonųjų spindulių jutikliui užfiksuoti vieną veleno apsisukimą.

19 veiksmas: įsitikinkite, kad atspindinti juosta neperžengia krašto iki gretimų briaunų

Įsitikinkite, kad atspindinti juosta neperžengia gretimų briaunų krašto
Įsitikinkite, kad atspindinti juosta neperžengia gretimų briaunų krašto

Juosta turi būti tik vienoje veržlės pusėje. Juosta yra pakankamai plona ir lengva, todėl ji netrukdo veržliarakčiui keisti galinius frezus arba paveikti veleno balansą.

20 veiksmas: paleiskite jutiklio laidą išilgai Z bėgelio

Paleiskite jutiklio laidą palei Z bėgelio vidų
Paleiskite jutiklio laidą palei Z bėgelio vidų

Naudodami aliuminio lipniosios juostos juosteles, pritvirtinkite vielą prie „Z Rail“vidinės pusės. Geriausia paleisti juostą šalia kampinio bėgelio krašto, kad išvalytumėte švino veržlės veržlę.

21 veiksmas: pritvirtinkite jutiklį prie „Arduino Nano“

Pritvirtinkite jutiklį prie „Arduino Nano“
Pritvirtinkite jutiklį prie „Arduino Nano“

Prijunkite laidus prie „Arduino“taip:

  • IR šviesos diodas (su integruotu rezistoriumi) -> kaištis D3
  • IR fotodiodas -> D2 kaištis
  • Bendra viela -> GND kaištis

22 veiksmas: pritvirtinkite trumpiklius prie OLED ekrano

Pritvirtinkite trumpiklius prie OLED ekrano
Pritvirtinkite trumpiklius prie OLED ekrano

Ištraukite 4 laidų jungiamųjų kabelių rinkinį

Prijunkite laidus prie keturių I2C sąsajos kaiščių:

  • VCC
  • GND
  • SCL
  • SDA

23 veiksmas: pritvirtinkite OLED ekraną prie „Arduino“

Pritvirtinkite OLED ekraną prie „Arduino“
Pritvirtinkite OLED ekraną prie „Arduino“
Pritvirtinkite OLED ekraną prie „Arduino“
Pritvirtinkite OLED ekraną prie „Arduino“

Pritvirtinkite trumpiklius prie šių kaiščių. Pastaba: Šios vielos ne visos tvirtinamos prie gretimų kaiščių ir ne ta pačia tvarka.

  • VCC -> 5V kaištis
  • GND -> PIN GND
  • SCL -> kaištis A5
  • SDA -> kaištis A4

24 veiksmas: pritvirtinkite OLED ekraną prie jo laikiklio

Pritvirtinkite OLED ekraną prie jo laikiklio
Pritvirtinkite OLED ekraną prie jo laikiklio

Naudodami anksčiau išspausdintus skliaustus, pritvirtinkite OLED ekraną prie jo laikiklio

Tada pritvirtinkite ekraną prie CNC rėmo.

25 žingsnis: Paruoškite „Arduino IDE“, kad būtų galima įkelti „Arduino“eskizą

Paruoškite „Arduino IDE“, kad galėtumėte įkelti „Arduino“eskizą
Paruoškite „Arduino IDE“, kad galėtumėte įkelti „Arduino“eskizą

„Arduino“programa vadinama eskizu. „Arduinos“integruota kūrimo aplinka (IDE) yra nemokama ir turi būti naudojama programai įkelti, kad būtų galima aptikti jutiklį ir rodyti RPM.

Jei to dar neturite, čia yra nuoroda, kaip atsisiųsti „Arduino IDE“. Pasirinkite atsisiųstą versiją 1.8.5 arba naujesnę.

26 veiksmas: pridėkite reikalingas OLED bibliotekas

Pridėkite reikiamas OLED bibliotekas
Pridėkite reikiamas OLED bibliotekas

Norėdami paleisti OLED ekraną, jums reikės poros papildomų bibliotekų, bibliotekos „Adafruit_SSD1306“ir „Adafruit-GFX-Library“. Abi bibliotekos yra nemokamos ir pasiekiamos per pateiktas nuorodas. Vadovaukitės „Adafruit“pamoka, kaip įdiegti savo kompiuterio bibliotekas.

Kai bibliotekos bus įdiegtos, jos bus prieinamos bet kuriam jūsų sukurtam „Arduino“eskizui.

„Wire.h“ir „Math.h“bibliotekos yra standartinės ir automatiškai įtraukiamos į jūsų IDE diegimą.

27 veiksmas: prijunkite „Arduino“prie kompiuterio

Naudodami standartinį USB kabelį, prijunkite „Arduino Nano“prie kompiuterio naudodami „Arduino IDE“.

  1. Paleiskite IDE
  2. Meniu Įrankiai pasirinkite Lenta | Arduino Nano
  3. Meniu Įrankiai pasirinkite Uostas |

Dabar esate pasiruošę įkelti eskizą, sudaryti jį ir įkelti į „Nano“

28 veiksmas: atsisiųskite „Arduino“eskizą

Pridėtas „Arduino Sketch“kodas, kuris taip pat yra mano „GitHub“puslapyje, kuriame bus paskelbti visi būsimi patobulinimai.

Atsisiųskite „OpticalTachometerOledDisplay.ino“failą ir įdėkite jį į darbo katalogą tuo pačiu pavadinimu (atėmus.ino).

Iš „Arduino IDE“pasirinkite Failas | Atviras…

Eikite į savo darbo katalogą

Atidarykite failą „OpticalTachometerOledDisplay.ino.ino“.

29 žingsnis: Sudarykite eskizą

Sudarykite eskizą
Sudarykite eskizą
Sudarykite eskizą
Sudarykite eskizą

Spustelėkite mygtuką „Tikrinti“arba pasirinkite Eskizas | Patvirtinkite/kompiliuokite meniu, kad sudarytumėte eskizą.

Apačioje turėtumėte pamatyti kompiliavimo sritį su būsenos juosta. Po kelių sekundžių bus parodytas pranešimas „Atlikta kompiliacija“ir tam tikra statistika apie tai, kiek eskizas užima atminties. Nesijaudinkite dėl pranešimo „Yra mažai atminties“, jis nieko nedaro. Didžiąją atminties dalį naudoja GFX biblioteka, reikalinga šriftui piešti OLED ekrane, o ne pats eskizas.

Jei matote klaidų, tai greičiausiai yra trūkstamų bibliotekų ar konfigūracijos problemų rezultatas. Dar kartą patikrinkite, ar bibliotekos nukopijuotos į tinkamą IDE katalogą.

Jei tai nepadeda išspręsti problemos, patikrinkite bibliotekos diegimo instrukcijas ir bandykite dar kartą.

30 veiksmas: įkelkite į „Nano“

Įkelti į „Nano“
Įkelti į „Nano“

Paspauskite mygtuką „Rodyklė“arba pasirinkite Eskizas | Įkelkite iš meniu, kad sudarytumėte ir įkeltumėte eskizą.

Pamatysite tą patį pranešimą „Kompiliuojama..“, po to - pranešimą „Įkeliama..“ir galiausiai pranešimą „Įkėlimas baigtas“. „Arduino“pradeda vykdyti programą, kai tik įkėlimas baigiamas arba kai tik po to įjungiama energija.

Šiuo metu OLED ekranas turėtų atgaivinti su RPM: 0 ekranu, kurio ratukas yra nulis.

Jei vėl sudėjote maršrutizatorių, galite įjungti jungiklį ir matyti, kad ekrane rodomas RPM, kai reguliuojate greitį.

Sveikinu!

31 veiksmas: naudokite specialų energijos šaltinį

Naudokite specialų energijos šaltinį
Naudokite specialų energijos šaltinį
Naudokite specialų energijos šaltinį
Naudokite specialų energijos šaltinį

PASTABA: tai buvo signalo triukšmo, kuris sukėlė nepastovius RPM ekranus, šaltinis. Aš tyrinėju, kaip uždėti kai kuriuos filtro dangtelius ant maitinimo jungiklių, tačiau kol kas turėsite jį maitinti per atskirą USB kabelį.

Prie kompiuterio prijungtą ekraną galite paleisti naudodami USB kabelį, tačiau galiausiai jums reikės specialaus maitinimo šaltinio.

Turite keletą variantų, galite įsigyti standartinį USB sieninį įkroviklį ir iš jo paleisti „Arduino“.

Arba galite paleisti „Arduino“tiesiai iš savo CNC maršrutizatoriaus elektronikos. „Arduino“/OLED ekranas sunaudoja tik 0,04 amperus, todėl neperkraus esamos elektronikos.

Jei turite „Arduino“/CNC maršrutizatoriaus skydo elektroniką (pvz., „Sienci Mill“), tuomet galite naudoti keletą nenaudotų kaiščių, kad išnaudotumėte reikiamą 5 voltų galią.

Viršutinėje kairėje CNC maršrutizatoriaus skydo pusėje galite pamatyti, kad yra keletas nepanaudotų kaiščių, pažymėtų 5V/GND. Prie šių dviejų kaiščių pritvirtinkite jungiamųjų kabelių porą.

32 veiksmas: prijunkite „Arduino“prie „Power Jumpers“

Prijunkite „Arduino“prie „Power Jumpers“
Prijunkite „Arduino“prie „Power Jumpers“
Prijunkite „Arduino“prie „Power Jumpers“
Prijunkite „Arduino“prie „Power Jumpers“

Tai lengva, bet ne taip gražiai paženklinta.

„Arduino Nano“lentos gale yra 6 kaiščių rinkinys. Jie nėra pažymėti, bet aš įtraukiau kaiščio schemą ir matote, kad du išoriniai kaiščiai, kurie yra arčiausiai indikatoriaus šviesos diodų, diagramoje pažymėti kaip GND ir 5V.

Prijunkite trumpiklį nuo 5 V kaiščio, esančio CNC skydelyje, prie kaiščio, esančio arčiausiai VIN pažymėto kaiščio (nejunkite jo prie VIN, bet prie 6 kontaktų grupės vidinio kampo kaiščio). VIN yra skirtas „Nano“maitinti 7V-12V galia.

Prijunkite trumpiklį nuo GND kaiščio CNC skydelyje prie kaiščio, esančio arčiausiai TX1 kaiščio.

Dabar, kai įjungsite CNC maršrutizatoriaus elektroniką, taip pat įsijungs OLED RPM ekranas.

33 žingsnis: Techninės grandinės pastabos

Techninės pastabos apie grandinę
Techninės pastabos apie grandinę

Jutiklio grandinėje naudojama IR LED/IR fotodiodų pora.

IR šviesos diodas veikia kaip bet kuris įprastas šviesos diodas. Teigiamas laidas (ilgesnis arba anodas) yra prijungtas prie teigiamos įtampos. „Arduino Nano“išvesties kaištis nustatytas kaip AUKŠTAS. Neigiamas laidas (trumpesnis arba katodas) yra prijungtas prie žemės, kad užbaigtų grandinę. Kadangi šviesos diodai yra jautrūs per didelei srovei, mažas rezistorius yra sujungtas su LED, kad būtų apribotas srovės kiekis. Šis rezistorius gali būti bet kurioje grandinės vietoje, tačiau prasmingiausia jį pastatyti į teigiamą grandinės pusę, nes neigiamas laidas yra sujungtas su įžeminimu su fotodiodu.

IR fotodiodas elgiasi kaip bet kuris kitas diodas (įskaitant šviesos diodų šviesos diodus), nes jie praleidžia elektros energiją tik viena kryptimi ir blokuoja elektros energiją priešinga kryptimi. Štai kodėl svarbu, kad šviesos diodai veiktų teisingai.

Svarbus skirtumas tarp fotodiodų yra tas, kad kai jie aptinka šviesą, fotodiodai leis elektrai tekėti bet kuriuo atveju. Ši savybė naudojama šviesos detektoriui (šiuo atveju infraraudonųjų spindulių arba IR) gaminti. IR fotodiodas yra prijungtas priešingu poliškumu (vadinamas atvirkštiniu poslinkiu) su teigiamu 5V ant „Arduino“kaiščio, prijungto prie neigiamo fotodiodo laido, o teigiamas laidas yra prijungtas per bendrą laidą kartu su IR šviesos diodu prie žemės.

Jei nėra IR šviesos, IR fotodiodas blokuoja elektros energiją, todėl „Arduino“kaištis su vidiniu traukos rezistoriumi yra AUKŠTOS būsenos. Kai IR fotodiodas aptinka IR šviesą, jis leidžia tekėti elektros energijai, įžemindamas kaištį ir sukeldamas fotodiodo kaiščio HIGH vertę žemyn link žemės, todėl „Arduino“gali aptikti krintantį kraštą.

Šis „Arduino“kaiščio būsenos pakeitimas naudojamas eskizui apsisukimams skaičiuoti.

Aliuminio juostos juostelė ant tvirtinimo veržlės atspindi infraraudonąją spinduliuotę nuo visada įjungto IR šviesos diodo atgal į IR fotodiodą kiekvieną kartą, kai ji sukasi pro jutiklį.

34 žingsnis: „Arduino“eskizo techninės pastabos

„Arduino“eskizas valdo OLED ekraną ir vienu metu reaguoja į IR LED/IR fotodiodo jutiklį.

„Eskizas“inicijuoja OLED ekraną visame I2C (integralios grandinės) protokole. Šis protokolas leidžia keliems ekranams/jutikliams dalytis ryšiu ir gali skaityti ar rašyti į tam tikrą prijungtą įrenginį, naudojant mažiausiai laidų (4). Šis ryšys sumažina jungčių skaičių tarp „Arduino“ir OLED ekrano.

Tada jis įjungia infraraudonųjų spindulių šviesos diodą, nustatydamas, kad kaištis AUKŠTAS, tiekiantis 5V, reikalingą šviesos diodui.

Jis prideda pertraukimo funkciją prie kaiščio, kuris iškviečiamas, kai aptinka kaiščio būsenos pasikeitimą. Šiuo atveju funkcija inkrementRevolution () iškviečiama kaskart, kai 2 kaištyje aptinkamas krintantis kraštas.

Pertraukimo funkcija daro tai, ką numato, ji nutraukia viską, kas šiuo metu daroma, vykdo funkciją ir tada tęsia veiksmą tiksliai ten, kur buvo nutraukta. Nutraukimo funkcijos turėtų būti kuo trumpesnės, šiuo atveju jis tik prideda vieną prie skaitiklio kintamojo. Mažasis „Arduino Nano“veikia 16Mhz greičiu - 16 milijonų ciklų per sekundę - pakankamai greitai, kad galėtų sustabdyti 30 000 aps./min., Tai yra tik 500 apsisukimų per sekundę.

Funkcija „Loop“() yra pagrindinė bet kurio „Arduino“eskizo veiksmo funkcija. Jis nuolat ir vėl vadinamas, kol „Arduino“turi galią. Jis gauna dabartinį laiką, patikrina, ar praėjo nurodytas intervalas (1/4 sekundės = 250 milisekundžių). Jei taip, ji iškviečia funkciją updateDisplay (), kad būtų rodoma nauja RPM vertė.

Ciklo funkcija taip pat pritemdys ekraną po 1 minutės ir išjungs ekraną po 2 minučių - visiškai sukonfigūruota pagal kodą.

Funkcijos updateDisplay () iškviečia funkciją calcRpm (). Ši funkcija apskaičiuoja apsisukimų skaičių, kai pertraukimo funkcija nuolat didėja, ir apskaičiuoja RPM, nustatydamas apsisukimų dažnį per laiko intervalą ir ekstrapoliuodamas apsisukimų per minutę skaičių.

Jis rodo skaitinę vertę ir naudoja tam tikrą vidurinės mokyklos trigerį, kad nupieštų analoginį ratuką, o indikatoriaus svirtis atspindėtų tas pačias vertes.

Eskizo viršuje esančias konstantas galima keisti, jei norite gauti RPM ratuką su skirtingomis pagrindinėmis ir mažosiomis reikšmėmis.

Taip pat galima keisti atnaujinimo intervalą ir vidutinį intervalą.

Rekomenduojamas: