Turinys:

„DigiLevel“- skaitmeninis lygis su dviem ašimis: 13 žingsnių (su nuotraukomis)
„DigiLevel“- skaitmeninis lygis su dviem ašimis: 13 žingsnių (su nuotraukomis)

Video: „DigiLevel“- skaitmeninis lygis su dviem ašimis: 13 žingsnių (su nuotraukomis)

Video: „DigiLevel“- skaitmeninis lygis su dviem ašimis: 13 žingsnių (su nuotraukomis)
Video: Цифровой электронный уровень Laserliner DigiLevel Plus 2024, Liepa
Anonim
„DigiLevel“- skaitmeninis lygis su dviem ašimis
„DigiLevel“- skaitmeninis lygis su dviem ašimis
„DigiLevel“- skaitmeninis lygis su dviem ašimis
„DigiLevel“- skaitmeninis lygis su dviem ašimis

Šios pamokos įkvėpimas yra „pasidaryk pats“skaitmeninis gulsčiukas, kurį čia randa „GreatScottLab“. Man patiko šis dizainas, bet norėjau didesnio ekrano su labiau grafine sąsaja. Taip pat norėjau geresnių korpuso elektronikos montavimo galimybių. Galiausiai aš panaudojau šį projektą tobulindamas savo 3D dizaino įgūdžius (naudodamas „Fusion 360“) ir tyrinėdamas naujus elektroninius komponentus.

„DigiLevel“suteiks grįžtamąjį ryšį, ar paviršius yra lygus-tiek išilgai x ašies (horizontali), tiek y ašies (vertikaliai). Rodomi laipsniai nuo lygio, taip pat grafinis vaizdas 2 ašių diagramoje. Be to, rodomas akumuliatoriaus įkrovos lygis ir rodoma dabartinė temperatūra Farenheito arba Celsijaus laipsniais (kaip pranešė akselerometro lustas). Tai minimalus girdimas grįžtamasis ryšys - pradinis tonas, skirtas patikrinti galią, o paskui dvigubas tonas kiekvieną kartą, kai lygis perkeliamas iš ne lygios padėties į lygią padėtį.

Pateikiau išsamias instrukcijas, kaip galite sukurti šį skaitmeninį lygį, tačiau nedvejodami išplėskite ir pakeiskite savo dizainą, kaip ir „pasidaryk pats“skaitmeninį gulsčiuką.

1 žingsnis: medžiagos

Medžiagos
Medžiagos

Toliau pateikiamos medžiagos, naudojamos sudarant šį skaitmeninį lygį. Dauguma pirkimo nuorodų yra skirtos kelioms dalims, kurios paprastai yra pigesnės nei perkant atskirus komponentus. Pavyzdžiui, „TP4056“lustas tiekiamas su 10 vienetų už 9 USD (mažiau nei 1 USD/TP4056) arba jį galima nusipirkti atskirai už 5 USD.

  • TP4056 Li -Po akumuliatorių įkroviklis („Amazon“-
  • Akselerometras LSM9DS1 („Amazon“-
  • „Arduino Nano“(„Amazon“-
  • 128x64 OLED LCD ekranas („Amazon“-
  • Pjezo garsiakalbis („Amazon“-
  • 3,7 V Li -Po baterija („Amazon“-

    a.co/d/1v9n7uP)

  • M2 keptuvės galvutės savisriegiai varžtai - reikalingi 4 M2x4, 6 M2x6 ir 6 M2x8 varžtai („eBay“-
  • Slankiklis („Amazon“-

Išskyrus varžtus, pateiktos nuorodos pateks į „Amazon“. Tačiau beveik visas šias prekes galima įsigyti „eBay“arba tiesiogiai iš Kinijos su didele nuolaida. Tiesiog nepamirškite, kad užsakymas iš Kinijos gali užtrukti ilgą laiką (3-4 savaitės nėra neįprasta).

Taip pat atkreipkite dėmesį, kad daugeliui šių komponentų yra alternatyvų. Pvz., LSM9DS1 galite pakeisti kitu akselerometru (pvz., MPU-9205). Galite pakeisti „Arduino Nano“naudodami bet kurį „Arduino“suderinamą procesorių su tinkamais GPIO kaiščiais.

Visų pirma, „LSM9DS1“nusipirkau parduodant „Sparkfun“už mažiau nei 10 USD, tačiau paprastai jis yra brangesnis; MPU-9025 (https://a.co/d/g1yu2r1) siūlo panašias funkcijas už mažesnę kainą.

Jei atliksite pakeitimą, greičiausiai turėsite pakeisti korpusą (arba bent jau tai, kaip montuojate komponentą) ir greičiausiai turėsite modifikuoti programinę įrangą, kad prisijungtumėte prie alternatyvaus komponento. Aš neturiu tų modifikacijų - turėsite ištirti ir prireikus atnaujinti.

2 žingsnis: laidų schema

Elektros schema
Elektros schema

Elektros instaliacijos schema išsamiai aprašo, kaip įvairūs elektroniniai komponentai yra prijungti vienas prie kito. Raudonos linijos reiškia teigiamą įtampą, o juodos - žemę. Geltonos ir žalios linijos naudojamos duomenų signalams iš akselerometro ir į OLED LCD ekraną. Atlikdami šiuos veiksmus pamatysite, kaip šie komponentai yra prijungti.

3 žingsnis: padarykite dėklą

Padaryti bylą
Padaryti bylą
Padaryti bylą
Padaryti bylą

Jei turite 3D spausdintuvą, dėklą galima lengvai atspausdinti. STL failai, įtraukti į šią instrukciją. Jei neturite 3D spausdintuvo, galite įkelti STL failus į 3D spausdintuvų biurą (pvz., Šį) ir išspausdinti juos jums.

Aš atspausdinau savo be kraštų ar plausto (ir be atramų) ir 20% užpildo, bet jūs galite atspausdinti savo, tačiau esate įpratę spausdinti. Kiekvienas gabalas turi būti atspausdintas atskirai, klojamas plokščias. Jums gali tekti pasukti 45 laipsnių kampu, kad jis tilptų į spausdintuvo lovą. Manasis buvo atspausdintas naudojant „Monoprice Maker Select Plus“, kurio lovos dydis buvo 200 mm x 200 mm - kiekvienas gabalas buvo išspausdintas maždaug 12 valandų. Jei turite mažesnę lovą, ji gali netikti. Nerekomenduojama keisti mastelio, nes tada elektroninių komponentų tvirtinimo elementai nebus tinkamai pakeisti.

4 veiksmas: prijunkite komponentus prie „Breadboard“, kad patikrintumėte ryšį (neprivaloma)

Prijunkite komponentus prie „Breadboard“, kad patikrintumėte ryšį (neprivaloma)
Prijunkite komponentus prie „Breadboard“, kad patikrintumėte ryšį (neprivaloma)
Prijunkite komponentus prie „Breadboard“, kad patikrintumėte ryšį (neprivaloma)
Prijunkite komponentus prie „Breadboard“, kad patikrintumėte ryšį (neprivaloma)
Prijunkite komponentus prie „Breadboard“, kad patikrintumėte ryšį (neprivaloma)
Prijunkite komponentus prie „Breadboard“, kad patikrintumėte ryšį (neprivaloma)

Primygtinai rekomenduoju prijungti pagrindinius komponentus prie duonos lentos, kad būtų patikrintas jų ryšys prieš pradedant montuoti komponentus dėklo viduje. Galite atsisiųsti programinę įrangą į „Arduino Nano“(žr. Kitą veiksmą) ir patikrinti, ar OLED LCD ekranas yra tinkamai prijungtas ir veikia, ar akselerometras yra tinkamai prijungtas ir ar jis praneša savo duomenis „Arduino Nano“. Be to, tai gali būti naudojama norint patikrinti papildomo pjezo garsiakalbio veikimą.

Šiame etape neprijungiau akumuliatoriaus ir įkroviklio prie duonos lentos - jungiklis jungiamas akumuliatoriui valdyti, kai prijungiate jungiklį prie dėklo. Paskutinėje nuotraukoje parodyta, kaip tai atrodo prieš prijungimą.

5 veiksmas: atsisiųskite programinę įrangą į „Arduino Nano“

Programinė įranga įkeliama į „Arduino Nano“naudojant „Arduino IDE“. Tai galima padaryti bet kuriuo „DigiLevel“kūrimo metu, tačiau geriausia tai padaryti, kai komponentai buvo prijungti naudojant duonos lentą (žr. Ankstesnį žingsnį), kad patikrintumėte, ar tinkamai prijungti ir veikia elektros komponentai.

Programinei įrangai reikia įdiegti 2 bibliotekas. Pirmasis yra „U8g2“biblioteka (pagal oliverį) -ją galite įdiegti spustelėję „Arduino IDE“eskizas -> Įtraukti biblioteką -> Tvarkyti bibliotekas…. Ieškokite U8g2, tada spustelėkite Įdiegti. Antroji biblioteka yra „Sparkfun LSM9DS1“biblioteka. Čia galite gauti instrukcijas, kaip įdiegti biblioteką.

Po bibliotekos specifikacijų programinėje įrangoje yra sąrankos skyrius ir pagrindinė apdorojimo kilpa. Sąrankos skyriuje inicijuojamas akselerometras ir OLED LCD ekranas, o prieš rodant pagrindinį ekraną rodomas paleidimo ekranas. Jei prijungtas garsiakalbis, jis garsiakalbyje pasigirs vienas pyptelėjimas, rodantis įjungimo būseną.

Pagrindinė apdorojimo kilpa yra atsakinga už akselerometro nuskaitymą, x ir y kampų gavimą ir tada verčių rodymą kaip absoliučių skaičių rinkinį, taip pat vaizdinį grafike. Taip pat rodomas akselerometro temperatūros rodmuo (Farenheito arba Celsijaus laipsniais). Jei lygis anksčiau buvo ne lygis, grįžęs į lygį, garsiakalbis (jei prijungtas) duos du pyptelėjimus.

Galiausiai gaunama akumuliatoriaus įtampa dabartiniam akumuliatoriaus įkrovimo lygiui nustatyti ir parodyti. Nežinau, koks tikslus šis kodas, bet jis yra pakankamai tikslus, kad parodytų pilną bateriją ir laipsnišką akumuliatoriaus įkrovos sumažėjimą naudojimo metu.

6 veiksmas: pritvirtinkite ir prijunkite OLED ekraną ir pjezo garsiakalbį

Sumontuokite ir prijunkite OLED ekraną ir pjezo garsiakalbį
Sumontuokite ir prijunkite OLED ekraną ir pjezo garsiakalbį
Sumontuokite ir prijunkite OLED ekraną ir pjezo garsiakalbį
Sumontuokite ir prijunkite OLED ekraną ir pjezo garsiakalbį

1,3 colio OLED ekranas (128x64) pritvirtinamas prie viršutinės korpuso pusės, naudojant 4 savisriegius M2x4 panoraminius galvutes. Prieš montuodami siūlau prijungti laidus prie ekrano. Tai užtikrina, kad matysite kaiščių padėtį pažymėtos, kai jungiate laidus. Kai ekranas bus sumontuotas, nematysite kaiščių etikečių. Pastebėsite, kad galinėje ekrano pusėje pridėjau etiketę, kad galėčiau prisiminti kaiščio vertės (nes aš to nepadariau pirmą kartą ir neteisingai prijungiau …).

Garsiakalbis naudojamas trumpam tonui skleisti, kai įjungtas skaitmeninis lygis, siekiant patikrinti, ar baterija yra gera ir ar ji veikia. Jis taip pat skleidžia dvigubą toną, kai lygis perkeliamas iš ne lygios padėties į lygią padėtį. Tai yra garsinis grįžtamasis ryšys, kai nustatote lygį ar bet kokį lygį. Jis pritvirtinamas prie viršutinės korpuso pusės, naudojant 2 savisriegius M2x4 keptuvės galvutes. Jums nereikia garsiakalbio - „DigiLevel“veiks be jo puikiai, tačiau jums netrūks girdimų atsiliepimų.

7 veiksmas: pritvirtinkite ir prijunkite akumuliatorių, akumuliatoriaus įkroviklį ir jungiklį

Sumontuokite ir prijunkite akumuliatorių, akumuliatoriaus įkroviklį ir jungiklį
Sumontuokite ir prijunkite akumuliatorių, akumuliatoriaus įkroviklį ir jungiklį
Sumontuokite ir prijunkite akumuliatorių, akumuliatoriaus įkroviklį ir jungiklį
Sumontuokite ir prijunkite akumuliatorių, akumuliatoriaus įkroviklį ir jungiklį
Sumontuokite ir prijunkite akumuliatorių, akumuliatoriaus įkroviklį ir jungiklį
Sumontuokite ir prijunkite akumuliatorių, akumuliatoriaus įkroviklį ir jungiklį
Sumontuokite ir prijunkite akumuliatorių, akumuliatoriaus įkroviklį ir jungiklį
Sumontuokite ir prijunkite akumuliatorių, akumuliatoriaus įkroviklį ir jungiklį

Prieš jungdami prie akumuliatoriaus, jungiklį reikia pritvirtinti prie dėklo. Taip yra todėl, kad jei pirmiausia prijungsite laidą, negalėsite prijungti jungiklio jo neatjungę. Taigi pirmiausia sumontuokite jungiklį, tada sumontuokite iš anksto prijungtą TP4056 ir „Li-Po“akumuliatorių, tada prijunkite jungiklį.

TP4056 turi 4 laidų blokus: B+, B-, Out+, Out-. Norėsite prijungti akumuliatorių prie B+ (teigiamos įtampos) ir B- (įžeminimo) jungčių. Išvesties jungtis naudojama žemei, kuri pateks į „Arduino Nano“, o „Out+“yra prijungta prie vieno jungiklio kaiščio. Antrasis jungiklio kaištis prijungtas prie „Arduino Nano“VIN.

Mano litavimo darbas nėra pats geriausias - man patinka termiškai susitraukiančiais vamzdeliais uždengti ir izoliuoti lituotą jungtį. Pastebėsite, kad vienoje iš čia lituotų jungčių termiškai susitraukiantį vamzdelį paveikė litavimo karštis ir jis susitraukė, kol negalėjau jo perkelti.

8 žingsnis: pritvirtinkite ir prijunkite akselerometrą

Prijunkite ir prijunkite akselerometrą
Prijunkite ir prijunkite akselerometrą
Prijunkite ir prijunkite akselerometrą
Prijunkite ir prijunkite akselerometrą

Akselerometras (LSM9DS1) yra sumontuotas korpuso apatinės pusės viduryje. Laidai turi būti prijungti 4: VCC eina į „Arduino Nano“V5 kaištį; GND eina į žemę; SDA eina į „Arduino Nano“A5 kaištį; ir SCL eina į „Arduino Nano“A4 kaištį.

Laidams naudoju trumpiklius laidus su „Dupont“jungtimis, tačiau, jei norite, laidą galite lituoti tiesiai prie kaiščių. Jei laidus lituosite tiesiai prie kaiščių, greičiausiai norėsite tai padaryti prieš montuodami akselerometro lustą, kad būtų lengviau.

9 žingsnis: Užbaikite elektroniką prijungdami „Arduino Nano“

Užbaikite elektroniką prijungdami „Arduino Nano“
Užbaikite elektroniką prijungdami „Arduino Nano“
Užbaikite elektroniką prijungdami „Arduino Nano“
Užbaikite elektroniką prijungdami „Arduino Nano“
Užbaikite elektroniką prijungdami „Arduino Nano“
Užbaikite elektroniką prijungdami „Arduino Nano“

Galutinis laidų sujungimas atliekamas prijungus visus elektrinius komponentus prie „Arduino Nano“. Tai geriausia padaryti prieš montuojant „Arduino Nano“, kad USB prievadas būtų prieinamas kalibravimui ir bet kokiems kitiems paskutinės minutės programinės įrangos pakeitimams.

Pradėkite prijungdami jungiklį prie „Nano“. Teigiamas laidas (raudonas) eina nuo jungiklio iki „Nano“VIN kaiščio. Neigiamas akumuliatoriaus laidas (juodas) pateks į „Nano“GND kaištį. „Nano“yra du GND kaiščiai, o visi keturi elektros komponentai turi įžeminimo laidą. Aš nusprendžiau sujungti du pagrindus, esančius korpuso apačioje, į vieną laidą, prijungtą prie vieno iš GND kaiščių. Du pagrindus nuo korpuso viršaus sujungiau į vieną laidą, prijungtą prie kitų GND kaiščių.

Akselerometras (LSM9DS1) gali būti prijungtas prie „Nano“prijungus akselerometro VDD kaištį prie „Nano“3V3 kaiščio. Nejunkite to prie 5V kaiščio, kitaip sugadinsite akselerometro lustą. Prijunkite SDA prie „Nano“A4 kaiščio ir SCL prie „Nano“A5 kaiščio. GND kaištis eina į „Nano“GND kaištį (kartu su neigiamu akumuliatoriaus laidu).

Toliau OLED LCD ekraną galima prijungti prie „Nano“, prijungus ekrane esantį VCC kaištį prie „Nano“5 V kaiščio. Prijunkite SDA prie „Nano“D2 kaiščio ir SCL prie „Nano“D5 kaiščio.

Galiausiai garsiakalbį galima prijungti prijungus raudoną laidą (teigiamą) prie „Nano“D7 kaiščio. Juoda viela eina į GND kartu su OLED LCD ekrano GND.

10 žingsnis: kalibravimas

Atsisiuntus programinę įrangą ir prieš montuojant „Arduino Nano“, gali reikėti kalibruoti savo lygį. Įsitikinkite, kad akselerometro plokštė sumontuota. Sumontavus jį varžtais, turėtų būti lygi plokštė, tačiau jei dėl kokių nors priežasčių ji šiek tiek nukrypsta, kalibravimas užtikrins teisingą rodymą.

Apatinį dėklą padėkite ant paviršiaus, kuris, kaip žinoma, yra lygus (naudojant burbulo lygį ar kitas priemones). Perskaitykite rodomas X ir Y reikšmes. Jei nė vienas iš jų nėra lygus nuliui, turėsite atnaujinti programinę įrangą naudodami kalibravimo sumą. Tai daroma nustatant atitinkamą kintamąjį xCalibration arba yCalibration kintamąjį (kas rodoma).

// // Nustatykite šiuos kintamuosius su atitinkamomis pradinėmis reikšmėmis // bool displayF = true; // tiesa Farenheito, klaidinga Celsijaus int xCalibration = 0; // x ašies išlyginimo kalibravimo suma int yCalibration = 0; // kalibravimo suma y ašiai išlyginti ilgą irvCalibration = 1457; // vidinės etaloninės įtampos kalibravimo suma

Šiuo metu taip pat turėtumėte nustatyti atitinkamą „displayF“reikšmę, priklausomai nuo to, ar norite, kad temperatūra būtų rodoma Farenheito ar Celsijaus laipsniais.

Perkėlus programinę įrangą į „Nano“dabar turėtų būti rodomas 0/0 rodiklis ant žinomo lygio paviršiaus.

11 žingsnis: Sumontuokite „Arduino Nano“ir surinkite dėklą

Sumontuokite „Arduino Nano“ir surinkite dėklą
Sumontuokite „Arduino Nano“ir surinkite dėklą

Baigę kalibravimą, galite pritvirtinti „Arduino Nano“dėklą, ant bėgelių uždėję karštų klijų ir uždėję „Arduino Nano“ant šių bėgių, smeigtukais į viršų ir USB jungtimi į korpuso vidų.

Korpusą, kuriame yra visa elektronika, dabar galima surinkti sudėjus abi puses ir naudojant 4 savisriegius M2x8 keptuvės galvutes.

12 veiksmas: patikrinkite naujo skaitmeninio lygio veikimą

Patikrinkite naujo skaitmeninio lygio veikimą
Patikrinkite naujo skaitmeninio lygio veikimą

Įsitikinkite, kad „Li-Po“akumuliatorius yra įkrautas. Jei dėklas yra surinktas, įkrovimo šviesos diodų indikatoriai nebus tiesiogiai matomi. Jei norite patikrinti įkrovimo veikimą, tiesiogiai žiūrėdami į įkrovimo lemputes, turėsite atidaryti dėklą, tačiau turėtumėte matyti raudoną švytėjimą, rodantį, kad įkrovimas vyksta uždarius dėklą.

Įkrovę ir surinkę įjunkite skaitmeninį lygį ir patikrinkite jo veikimą. Jei jis neveikia, du tikėtini problemų taškai yra OLED LCD ekrano ir akselerometro laidai. Jei ekrane nieko nerodoma, pradėkite nuo OLED LCD laidų. Jei ekranas veikia, bet H ir V etiketės rodo 0, o temperatūra yra 0 (C) arba 32 (F), greičiausiai akselerometras nėra tinkamai prijungtas.

13 žingsnis: paskutinės mintys …

Šį skaitmeninį lygį (ir „Instructable“) sukūriau pirmiausia kaip mokymosi patirtį. Man buvo mažiau svarbu sukurti veikimo lygį, nes reikėjo ištirti įvairius komponentus ir jų galimybes, o tada sudėti juos taip, kad būtų pridėta pridėtinės vertės.

Kokius patobulinimus daryčiau? Yra keletas dalykų, kuriuos ketinu atnaujinti ateityje:

  • Atskleiskite „Arduino Nano“USB prievadą per korpusą, pakeisdami jo montavimo būdą. Tai leistų lengviau atnaujinti programinę įrangą (kuri bet kuriuo atveju turėtų būti reta).
  • 3D spausdinkite dėklą naudodami medžio giją. Aš eksperimentavau su „Hatchbox Wood“siūlais ir esu labai patenkintas gautais rezultatais. Manau, kad tai suteiktų geresnį bendrą „DigiLevel“vaizdą.
  • Atnaujinkite dizainą, kad galėtumėte naudoti MPU-9250 pagreičio matuoklį, kad sumažintumėte išlaidas ir nepažeistumėte funkcijos.

Tai pirmas mano pamokomas dalykas ir laukiu atsiliepimų. Nors bandžiau to išvengti, esu įsitikinęs, kad tai vis dar labiau orientuota į JAV - todėl atsiprašau už ne JAV.

Jei jums tai buvo įdomu, balsuokite už mane pirmojo autoriaus konkurse. Ačiū, kad perskaitėte iki galo!

Pirmą kartą autorius
Pirmą kartą autorius
Pirmą kartą autorius
Pirmą kartą autorius

Antras autorius pirmą kartą

Rekomenduojamas: