Turinys:
- 1 žingsnis: reikalingos dalys
- 2 žingsnis: pastatykite dėžutę
- 3 žingsnis: „Arduino“sąranka
- 4 žingsnis: programinė įranga - XCTU
- 5 veiksmas: programinė įranga - „Arduino Sketch“
- 6 veiksmas: programinė įranga - darbalaukio programa
- 7 žingsnis: Pirmasis paleidimas
- 8 žingsnis: Išvada
- 9 žingsnis: Priedas
Video: Sukurkite mašinos stebėtoją: 9 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:47
Šio projekto pradinis taškas buvo dirbti prie konkretaus projekto ir sužinoti keletą dalykų apie mikrovaldiklių plokštes.
Pradinė idėja buvo sukurti fizinį objektą, kuris galėtų stebėti nuolatinės integracijos sistemą (VSTS | Azure DevOps) ir pranešti apie programinės įrangos kūrimo gedimus. Dėl IT skyriaus saugumo problemų man buvo atsisakyta tiesiogiai prijungti „nestandartinį“įrenginį prie įmonės tinklo.
Aš baigiau architektūra, parodyta aukščiau esančiame paveikslėlyje. Vykdymo darbo eigą galima apibendrinti taip:
„Windows“darbalaukio programa nuskaito (traukia) VSTS kūrimo apibrėžtis. Jis analizuoja kūrimo rezultatus ir tada siunčia komandą fiziniam įrenginiui, kuris vykdo šiek tiek animacinę seką prieš parodydamas raudoną arba žalią vėliavą.
1 žingsnis: reikalingos dalys
Šiame sąraše apibendrinami visi reikalingi elementai:
- 1 „Arduino UNO R3“(https://store.arduino.cc/usa/arduino-uno-rev3).
- 1 išplėtimo skydas (https://www.dfrobot.com/wiki/index.php/IO_Expansion_Shield_for_Arduino_V7_SKU:DFR0265).
- 2 „XBee S1“moduliai (https://www.adafruit.com/product/128).
- 1 „XBee explorer“raktas (https://www.sparkfun.com/products/11697).
- 2 nuolatiniai 5VDC servo varikliai su tvirtinimo priedais (https://www.parallax.com/sites/default/files/downloads/900-00008-Continuous-Rotation-Servo-Documentation-v2.2.pdf).
- 1 9VDC maitinimo šaltinis.
- 3 šviesos diodai.
- 3 rezistoriai 220 omų.
- ištraukiama termo rankovė.
- 1 paspaudimo mygtukas.
- 10KΩ traukos rezistorius traukimui.
- 100nF kondensatorius.
- elektros laidai.
- juostelės lenta (mygtuko tvirtinimui)
- 5 mm medžio (50 x 50 cm).
- medinė lazdelė kvadratinė sekcija 5x5 mm (1m).
- kartonas.
- 10 x 2 mm skersmens varžtas.
- 4 varžtai 5 mm skersmens.
- stiprus magnetas.
- tekinimo modulis. Aš pakartotinai panaudojau mirksinčios šviesos vidinę judančią dalį. galite dėti ką tik norite. Jums tereikia pasirūpinti, kad dvi judančios dalys galėtų laisvai judėti, nesiliesdamos.
2 žingsnis: pastatykite dėžutę
Tiesą sakant, galite turėti bet kokios formos dėžutę. Pagrindiniai dalykai, apie kuriuos reikia pagalvoti prieš pradedant, yra judančių dalių vieta ir užtikrinimas, kad jos galėtų laisvai judėti, nesiliesdamos. Kitas dalykas yra tai, kur ketinate įdėti įrenginį? Galų gale turėjau magnetą (stiprų), kad galėčiau jį pritvirtinti prie bet kokios metalinės atramos. jei norite sukurti tą patį langelį, galite laikytis failo box_drawings.pdf nurodymų.
Tokiu atveju jums tereikia nupjauti visas skirtingas dalis, padaryti skyles servovarikliams, šviesos diodams, mygtukui ir varžtams ir galiausiai suklijuoti visas dalis. Kai jis išdžius, šiek tiek šlifuokite ir šiek tiek spalvos.
Abi vėliavos buvo pagamintos naudojant raudoną ir žalią kartoną. Norėdami pritvirtinti vėliavos stiebą ant variklių, galite naudoti pirkimo metu pateiktas tvirtinimo dalis.
3 žingsnis: „Arduino“sąranka
Prie „Arduino“prailginimo plokštės prijungti elementai yra šie:
- D2 PIN: mygtukas.
- D4 PIN: šviesos diodas, rodantis, kad sistema įjungta.
- D5 PIN: šviesos diodas, rodantis, kad vykdome ciklą.
- D6 PIN: šviesos diodas, rodantis, kad prietaisas gavo naują pranešimą.
- D9 PIN: PWM pulso signalas, skirtas servo varikliui, valdančiam giroskopą.
- D10 PIN: PWM pulso signalas, skirtas servovarikliui, valdančiam vėliavą.
- „XBee“lizdas: vienas „ZigBee“modulis.
Aukščiau pateikta schema rodo, kaip visi elementai yra prijungti prie plokštės.
Šviesos diodams rezistorius ir laidai yra tiesiogiai suvirinti ant jo (pasirūpinkite poliškumu). Tada viskas supakuojama į termo ištraukiamą rankovę.
Spausdami mygtuką visos dalys (mygtukas, rezistorius ir kondensatorius) yra tiesiogiai suvirintos ant mažos palydovinės juostos plokštės. Tada juostinė plokštė tiesiogiai pritvirtinama dviem varžtais (2 mm)
Servo varikliai veikia su 5 V galia, todėl jie gali būti tiesiogiai prijungti prie „Arduino“. Jei naudojate aukštesnės įtampos (12 V) įtampą, turėsite pridėti kitą maitinimo sluoksnį.
Kai „XBee“moduliai yra sukonfigūruoti kalbėti kartu (žr. Kitą skyrių), juos galima tiesiogiai prijungti prie lizdų.
Pastabos: šviesos diodai ir mygtukas galėjo būti tiesiogiai prijungti prie „Arduino“kaiščių, nes jie gali įdiegti reikalingus vertybinius popierius. Aš tiesiog padariau seną būdą, nes šis aspektas man nebuvo labai aiškus.
4 žingsnis: programinė įranga - XCTU
Kaip minėta aukščiau, abu „XBee“įrenginiai turi būti sukonfigūruoti kalbėti kartu. Norėdami tai padaryti, turite naudoti specialią X-CTU programinę įrangą iš DIGI. Šį konfigūracijos veiksmą turite atlikti tik vieną kartą. atlikite xbee_configuration.pdf faile aprašytą procedūrą.
Baigę konfigūraciją, kiekvieną modulį galite prijungti prie lizdo. Vienas USB/serijos keitiklyje ir vienas „Arduino“plėtinio plokštėje.
USB/serijos keitiklis turėtų būti automatiškai atpažįstamas „Windows 10.“. Jei ne, gali tekti tvarkyklę įdiegti rankiniu būdu
Pastaba:
„XBee“modulių naudojimas pagrindiniam nuosekliam ryšiui palaikyti yra šiek tiek perdėtas. Kai pradėjau projektą, man nepavyko rasti paprastų serijinio ryšio įrenginių, kuriuos būtų galima lengvai naudoti „Windows 10“(tvarkyklės problemos). Tai taip pat buvo proga sužinoti keletą dalykų apie
5 veiksmas: programinė įranga - „Arduino Sketch“
Norėdami programuoti „Arduino“, naudojame IDE, pasiekiamą iš oficialios svetainės.
Programos logika yra gana paprasta, ji tiesiog klausosi numatytojo plokštės nuoseklaus prievado, kad gautų atskiras raides („a“, „b“, …). Jei gautas simbolis atitinka žinomą komandą, tada papildoma funkcija paleidžia atitinkamą seką.
2 pagrindinės naudingos komandos yra sėkmės animacija („a“) ir klaidų animacija („b“).
Kad būtų galima šiek tiek daugiau žaisti (arba derinti) su langeliu, yra keletas papildomų komandų, kurias galima vykdyti. Jie yra:
- „O“: priversti ĮJUNGTI šviesos diodą
- „P“: priversti ĮJUNGTI šviesos diodą išjungti
- „Q“: priversti įjungti naujo pranešimo šviesos diodą
- „R“: priversti išjungti naujo pranešimo šviesos diodą
- „S“: priversti įjungti ciklo šviesos diodą
- „T“: priversti ciklo šviesos diodą išjungti
- „U“: įjunkite giroskopo variklį
- „V“: įjunkite vėliavos variklį.
Be serijinės komandos, yra papildoma rutina (handlePushButton), kuri suaktyvinama paspaudus įrenginio mygtuką. Tokiu atveju klaidos ar sėkmės animacija paleidžiama automatiškai. Ši funkcija leidžia patikrinti, ar fizinis įrenginys sumontuotas teisingai.
„Arduino“eskizo kodas yra viename faile bsldevice.ino. Galite jį įkelti tiesiogiai naudodami IDE.
6 veiksmas: programinė įranga - darbalaukio programa
Stalinio kompiuterio programos tikslas yra stebėti „Microsoft Azure DevOps“(anksčiau VSTS) svetainę ir nustatyti, ar kūrimo apibrėžimas yra sėkmingas, ar yra klaida. Kiekvieną kartą, kai baigiamas kurti, darbalaukio programa nustato sąrankos būseną ir siunčia atitinkamą komandą („a“arba „b“) į nuoseklųjį prievadą (COMx).
Paleidus programą, pirmiausia reikia pasirinkti tinkamą kom portą, prie kurio prijungtas „ZigBee“modulis. Norėdami nustatyti prievadą, galite naudoti „Windows“įrenginių tvarkytuvę (skiltyje „Uostai“(COM ir LPT skyrius)). Ryšys su „Azure DevOps“atliekamas automatiškai paleidžiant, naudojant dabartinio vartotojo kredencialus. Bet kurią iš anksto nustatytą komandą taip pat galite siųsti rankiniu būdu, naudodami dešinėje esantį kombinuotąjį laukelį.
Visi šaltiniai sukurti naudojant „Visual Studio 2017“profesionalų leidimą. Tam reikia. NET Framework 4.6.1. Šią „Framework“versiją pageidautina palengvinti prisijungimui/autentifikavimui prie VSTS svetainės.
naudoti:
- atsisiųskite archyvą bslwatcher_sources.zip.
- Ištraukite jį į diską.
- Jei reikia išsamios informacijos apie kūrimą, skaitykite failą how_to_build.txt.
7 žingsnis: Pirmasis paleidimas
Pradėdami dėžutę, turite atsižvelgti į du pagrindinius dalykus:
1- Sistema negali pati žinoti, kur yra vėliavos. Sistema daro prielaidą, kad paleidžiant žalia vėliava yra iškelta.
2- Įjungus „Arduino“plokštę, niekas neturėtų judėti. Kadangi mes naudojome nuolatines servo sistemas, eskizo faile pagal numatytuosius nustatymus nulinė padėtis nustatyta 90. Jei servovariklis pradeda suktis ar kelti triukšmą. gali tekti iš naujo nustatyti jo nulinę padėtį. Norėdami tai padaryti, tiesiog sureguliuokite potenciometrą mažoje skylėje, esančioje variklio šone.
www.arduino.cc/en/Reference/ServoWrite
cmra.rec.ri.cmu.edu/content/electronics/boe…
8 žingsnis: Išvada
Šis mažas įrenginys fiziškai praneš apie jūsų nuolatinės integracijos sistemos būseną.
Kadangi „intelektas“yra darbalaukio programoje, galite naudoti dėžutę, kad galėtumėte stebėti bet kokią kitą programinę įrangą ar procesą (paštą, temperatūros jutiklį …). Jums tereikia turėti prieigą prie kitos API ir nuspręsti, kas yra „gerai“ar „blogai“. Jei nenaudojate raudonos ir žalios spalvos, galite net pakeisti „pranešimo“reikšmę.
Patobulinimai taip pat gali būti pateikti pačioje dėžutėje:
- Naudokite bateriją.
- Naudokite kitą ryšio protokolą.
- Pridėkite jutiklius, kad žinotumėte, kuri vėliava yra viršuje.
Tikimės, kad šis projektas jums buvo įdomus.
Ačiū, kad perskaitėte iki čia.
9 žingsnis: Priedas
Kai kurios nuorodos, naudojamos kuriant šį projektą:
„Arduino“svetainė:
DIGI svetainė:
XCTU programinė įranga:
Kai kuri informacija naudojama iš kitų:
arduino.stackexchange.com/questions/1321/se…
stackoverflow.com/questions/10399400/best-w…
www.mon-club-elec.fr/pmwiki_reference_ardui… (prancūzų kalba)
jeromeabel.net/
MSDN svetainė apskritai:
docs.microsoft.com/en-us/dotnet/framework/…
Rekomenduojamas:
EHX B9 vargonų mašinos modifikavimas: 5 žingsniai (su nuotraukomis)
EHX B9 vargonų mašinų modifikavimas: (ehx B9) - Kai buvau mažas berniukas, mane sužavėjo neįtikėtinas muzikos instrumentas: Peterio Van Woodo Godwino vargonai -gitara (pastatyta Italijoje, Sisme)! Manau, kad Petras atstovavo gitaristų armijai, gimusiai analogiškoje juros epochoje, kuri atrodė
DEZINFIKACIJOS MAŠINOS simuliacija naudojant TINKERCAD: 6 žingsniai
DEZINFIKACIJOS MAŠINOS SIMULIAVIMAS NAUDOJANT „TINKERCAD“: Šiame nesuvokiamame straipsnyje mes pažiūrėsime, kaip imituoti dezinfekavimo mašiną, „Kontaktai mažiau“Automatinis dezinfekavimo įrenginys yra dezinfekavimo mašina, nes mes nenaudojame rankų mašinai valdyti, o artumo infraraudonųjų spindulių jutiklis
Robotikos mašinos projektas: 6 žingsniai
Robotikos mašinų projektas: Šiuo metu robotai dabar naudojami gamybos procesams paspartinti, įskaitant jų naudojimą surinkimo linijose, automatizavimą ir dar daugiau. Kad priprastume prie inžinerijos srities ir prisitaikytume prie veikiančio darbo kūrimo
MODERNAS PASIŪLYMO MAŠINOS GUI, NAUDOJANT RASPBERRY PI SU DJANGO: 4 žingsniai
MODERNIOS PARDAVIMO MAŠINOS GUI, NAUDOJANT RASPBERRY PI SU DJANGO: Ar galime sukurti modernią GUI, naudodamiesi automatinėmis interneto kalbomis? Atsakymas į aukščiau pateiktą klausimą yra „taip“. Mes galime juos naudoti pardavimo automatams, naudojantiems kiosko režimą. Šią idėją aš jau pritaikiau savo esamam projektui ir ji veikia gerai, ir mes išbandome
Sukurkite ir sukurkite EKG grandinę: 6 žingsniai
Sukurkite ir sukurkite EKG grandinę: elektrokardiograma (EKG) rodo bendrą elgesį, paprastai žmogaus širdyje. Stebėdami širdies įtampą laikui bėgant, gydytojai gali susidaryti bendrą paciento sveikatos pojūtį, nes atsiranda daug kvėpavimo ir širdies problemų