Satura rādītājs:
- 1. darbība: nepieciešamās detaļas
- 2. darbība: kastes izveide
- 3. darbība: Arduino iestatīšana
- 4. solis: programmatūra - XCTU
- 5. solis: programmatūra - Arduino skice
- 6. darbība: programmatūra - darbvirsmas lietojumprogramma
- 7. solis: pirmais starts
- 8. solis. Secinājums
- 9. solis: pielikums
Video: Veidot mašīnu vērotāju: 9 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Šī projekta sākumpunkts bija darbs pie konkrēta projekta, lai uzzinātu dažas lietas par mikrokontrolleru plates.
Sākotnējā ideja bija izveidot fizisku objektu, kas varētu uzraudzīt nepārtrauktas integrācijas sistēmu (VSTS | Azure DevOps) un ziņot par programmatūras būves kļūmēm. IT nodaļas drošības apsvērumu dēļ man tika atteikts pieslēgt "nestandarta" ierīci tieši uzņēmuma tīklam.
Es beidzu ar arhitektūru, kas parādīta iepriekšējā attēlā. Izpildes darbplūsmu var apkopot šādi:
Windows darbvirsmas lietojumprogramma skenē (velk) VSTS būvējuma definīcijas. Tas analizē būvēšanas rezultātus un pēc tam nosūta komandu uz fizisko ierīci, kas izpilda nelielu animētu secību, pirms tiek parādīts sarkans vai zaļš karogs.
1. darbība: nepieciešamās detaļas
Šajā sarakstā ir apkopoti visi nepieciešamie elementi:
- 1 Arduino UNO R3 (https://store.arduino.cc/usa/arduino-uno-rev3).
- 1 Paplašināšanas vairogs (https://www.dfrobot.com/wiki/index.php/IO_Expansion_Shield_for_Arduino_V7_SKU:DFR0265).
- 2 XBee S1 moduļi (https://www.adafruit.com/product/128).
- 1 XBee explorer dongle (https://www.sparkfun.com/products/11697).
- 2 nepārtraukti servomotori 5VDC ar stiprinājuma piederumiem (https://www.parallax.com/sites/default/files/downloads/900-00008-Continuous-Rotation-Servo-Documentation-v2.2.pdf).
- 1 9VDC barošanas avots.
- 3 gaismas diodes.
- 3 rezistori 220 omi.
- izvelkama termo piedurkne.
- 1 spiedpoga.
- 10KΩ vilkšanas rezistors pacelšanai.
- 100nF kondensators.
- elektriskie vadi.
- sloksnes dēlis (pogas uzstādīšanai)
- 5 mm koks (50 x 50 cm).
- koka nūjas kvadrātveida sekcija 5x5 mm (1m).
- kartons.
- 10 X skrūve 2 mm diametrā.
- 4 skrūves 5 mm diametrā.
- spēcīgs magnēts.
- pagrieziena modulis. Es atkārtoti izmantoju mirgojošas gaismas iekšējo kustīgo daļu. vari likt ko gribi. Jums vienkārši būs jārūpējas par to, lai divas kustīgās daļas varētu brīvi pārvietoties, nepieskaroties kopā.
2. darbība: kastes izveide
Patiesībā jums var būt jebkuras formas kastīte. Galvenais, kas jādomā pirms darba uzsākšanas, ir tas, kur atradīsies kustīgās daļas un jānodrošina, lai tās varētu brīvi pārvietoties, nepieskaroties kopā. Vēl viens jautājums ir tas, kur jūs ievietojat ierīci? Es beidzu ar magnētu (spēcīgu), lai to pielīmētu pie jebkura metāla atbalsta. ja vēlaties izveidot to pašu lodziņu, varat izpildīt norādījumus failā box_drawings.pdf.
Tādā gadījumā jums vienkārši jāizgriež visi dažādi gabali, jāizveido caurumi servomotoriem, gaismas diodēm, pogai un skrūvēm un visbeidzot jāpielīmē visas detaļas. Kad tas ir sauss, nedaudz slīpējiet un nedaudz krāsojiet.
Abi karogi ir izgatavoti, izmantojot sarkanu un zaļu kartonu. Lai piestiprinātu karoga mastu uz servomotoriem, varat izmantot komplektācijā iekļautās stiprinājuma detaļas, pērkot tās.
3. darbība: Arduino iestatīšana
Ar Arduino pagarinātāju saistītie priekšmeti ir:
- D2 PIN: spiedpoga.
- D4 PIN: gaismas diode, kas norāda, ka sistēma ir ieslēgta.
- D5 PIN: gaismas diode, kas norāda, ka mēs veicam ciklu.
- D6 PIN: gaismas diode, kas norāda, ka ierīce ir saņēmusi jaunu ziņojumu.
- D9 PIN: PWM impulsa signāls servomotorei, kas apstrādā žiroskopu.
- D10 PIN: PWM impulsa signāls servomotorei, kas apstrādā karodziņu.
- XBee ligzda: viens ZigBee modulis.
Iepriekš redzamā shēma parāda, kā visi vienumi ir savienoti ar plāksni.
Gaismas diodēm rezistors un vadi ir tieši metināti uz tā (rūpējieties par polaritāti). Pēc tam viss tiek iepakots kādā termoizvelkamā uzmavā.
Spiedpogai visas detaļas (poga, rezistors un kondensators) ir tieši metinātas uz nelielas satelīta lentes. Pēc tam sloksnes plāksne tiek tieši piestiprināta ar divām skrūvēm (2 mm)
Servomotori darbojas ar 5 V jaudu, tāpēc tos var savienot tieši ar Arduino. Ja izmantojat tos, kuriem ir augstāks spriegums (12V), barošanas avotam būs jāpievieno vēl viens slānis.
XBee moduļiem, kad tie ir konfigurēti sarunai kopā (sk. Nākamo sadaļu), tos var pieslēgt kontaktligzdām tieši.
Piezīmes: Gaismas diodes un spiedpoga varēja būt tieši savienotas ar Arduino tapām, jo tā var iekšēji ieviest nepieciešamos vērtspapīrus. Es vienkārši darīju veco ceļu, jo šis aspekts man nebija ļoti skaidrs.
4. solis: programmatūra - XCTU
Kā minēts iepriekš, abām XBee ierīcēm jābūt konfigurētām, lai runātu kopā. Lai to izdarītu, jums jāizmanto DIGI speciālā X-CTU programmatūra. Šī konfigurācijas darbība jāveic tikai vienu reizi. lūdzu, izpildiet xbee_configuration.pdf failā aprakstīto procedūru.
Kad konfigurācija ir pabeigta, katru moduli var savienot ar ligzdu. Viens uz USB/sērijas pārveidotāja un viens uz Arduino paplašinājuma plates.
USB/sērijas pārveidotājs automātiski jāatpazīst logos 10. Ja tas tā nav, iespējams, draiveris būs jāinstalē manuāli
Piezīme:
XBee moduļu izmantošana pamata sērijas sakaru veikšanai ir nedaudz pārspīlēta. Laikā, kad sāku projektu, man neizdevās atrast vienkāršas seriālās sakaru ierīces, kuras būtu ērti lietojamas operētājsistēmā Windows 10 (draivera problēmas). Tā bija arī iespēja uzzināt dažas lietas par vietni
5. solis: programmatūra - Arduino skice
Lai programmētu Arduino, mēs izmantojam IDE, kas pieejams no oficiālās vietnes.
Programmas loģika ir diezgan vienkārša, tā vienkārši noklausās tāfeles noklusējuma seriālo portu ar atsevišķiem burtiem (“a”, “b”,…). Ja saņemtā rakstzīme atbilst zināmai komandai, tad apakšfunkcija atskaņo atbilstošo secību.
Divas galvenās noderīgās komandas ir veiksmes animācija (“a”) un kļūdu animācija (“b”).
Lai varētu nedaudz vairāk spēlēt (vai atkļūdot) ar lodziņu, ir dažas papildu komandas, kuras var izpildīt. Viņi ir:
- “O”: piespiediet IESLĒGT gaismas diode
- “P”: piespiest IESLĒGT gaismas diodei
- “Q”: piespiest iedegties jaunā ziņojuma gaismas diodei
- “R”: piespiediet jaunā ziņojuma gaismas diodei izslēgties
- “S”: piespiest cikla gaismas diodei iedegties
- “T”: piespiediet cikla LED izslēgt
- “U”: aktivizējiet žiroskopa servomotoru
- “V”: aktivizējiet karoga servomotoru.
Papildus sērijveida komandai ir apakšrutīns (handlePushButton), kas tiek aktivizēts, nospiežot ierīces pogu. Tādā gadījumā kļūdu vai panākumu animācija tiek atskaņota automātiski. Šī funkcija ļauj pārbaudīt, vai fiziskā ierīce ir pareizi uzstādīta.
Arduino skices kods ir vienā failā bsldevice.ino. To var augšupielādēt tieši, izmantojot IDE.
6. darbība: programmatūra - darbvirsmas lietojumprogramma
Darbvirsmas lietojumprogrammas mērķis ir uzraudzīt Microsoft Azure DevOps (iepriekš VSTS) vietni un noteikt, vai būvējuma definīcija ir veiksmīga vai kļūdaina. Katru reizi, kad būvniecība ir pabeigta, darbvirsmas lietojumprogramma nosaka būves statusu un nosūta atbilstošo komandu (“a” vai “b”) uz seriālo portu (COMx).
Pēc lietojumprogrammas palaišanas pirmā darbība ir izvēlēties pareizo portu, kuram ir pievienots ZigBee modulis. Lai noteiktu portu, varat izmantot Windows ierīču pārvaldnieku (sadaļā Porti (sadaļa COM un LPT)). Savienojums ar Azure DevOps tiek veikts automātiski, startējot, izmantojot pašreizējā lietotāja akreditācijas datus. Jebkuru iepriekš definētu komandu varat nosūtīt arī manuāli, izmantojot kombinēto lodziņu labajā pusē.
Visi avoti ir ģenerēti, izmantojot Visual Studio 2017 profesionālo izdevumu. Tas prasa. NET Framework 4.6.1. Šī Framework versija ir vēlama, lai atvieglotu savienojumu/autentifikāciju ar VSTS vietni.
izmantot:
- lejupielādējiet arhīvu bslwatcher_sources.zip.
- Izvelciet to savā diskā.
- Plašāku informāciju par būvēšanu lasiet failā how_to_build.txt.
7. solis: pirmais starts
Uzsākot lodziņu, jāņem vērā divas galvenās lietas:
1- Sistēma pati nevar zināt, kur ir karogi. Sistēma pieņem, ka palaišanas laikā zaļais karogs ir uz augšu.
2- Ieslēdzot Arduino dēli, nekas nedrīkst kustēties. Tā kā mēs izmantojām nepārtrauktus servos, skices failā nulles pozīcija pēc noklusējuma ir iestatīta uz 90. Ja servomotors sāk griezties vai rada troksni. iespējams, nāksies no jauna definēt tā nulles pozīciju. Lai to izdarītu, vienkārši noregulējiet potenciometru mazajā caurumā servomotora sānos.
www.arduino.cc/en/Reference/ServoWrite
cmra.rec.ri.cmu.edu/content/electronics/boe…
8. solis. Secinājums
Šī mazā ierīce fiziski ziņos par jūsu nepārtrauktās integrācijas sistēmas statusu.
Tā kā "inteliģence" ir darbvirsmas lietojumprogrammā, varat izmantot lodziņu, lai uzraudzītu jebkuru citu programmatūru vai procesu (pastu, temperatūras sensoru …). Jums vienkārši jāpiekļūst citai API un jāizlemj, kas ir “labs” vai “slikts”. Ja neizmantojat sarkanās un zaļās konvencijas krāsas, varat pat mainīt "ziņojuma" nozīmi.
Uzlabojumus varētu ieviest arī pašā kastē:
- Izmantojiet akumulatoru.
- Izmantojiet citu saziņas protokolu.
- Pievienojiet sensorus, lai uzzinātu, kurš karogs atrodas augšpusē.
Ceru, ka šis projekts jums šķita interesants.
Paldies, ka izlasījāt līdz šejienei.
9. solis: pielikums
Dažas saites, kas izmantotas šī projekta izveidošanai:
Arduino vietne:
DIGI vietne:
XCTU programmatūra:
Daļa no citiem izmantotās informācijas:
arduino.stackexchange.com/questions/1321/se…
stackoverflow.com/questions/10399400/best-w…
www.mon-club-elec.fr/pmwiki_reference_ardui… (franču valodā)
jeromeabel.net/
MSDN vietne kopumā:
docs.microsoft.com/en-us/dotnet/framework/…
Ieteicams:
Kāpēc veidot robotu kāzām?: 9 soļi
Kāpēc veidot robotu kāzām?: Man vienmēr patika robotika, un man bija sapnis izveidot robotu. Kāpēc gan to nedarīt manas dzīves svarīgākajā dienā? Saskaroties ar steigu, kas ir gatavošanās kāzām, es uzbūvēju robotu, kas gredzenus nogādātu ejā. Ikviens, kurš
DIY ar akumulatoru darbināms Bluetooth skaļrunis // Kā veidot - kokapstrāde: 14 soļi (ar attēliem)
DIY ar akumulatoru darbināms Bluetooth skaļrunis // Kā būvēt-Kokapstrāde: Es uzbūvēju šo uzlādējamo, ar baterijām darbināmo, pārnēsājamo Bluetooth skaļruni, izmantojot Parts Express C-Note skaļruņu komplektu un to KAB pastiprinātāja plāksni (saites uz visām zemāk esošajām daļām). Šī bija mana pirmā skaļruņu būve, un es esmu patiesi pārsteigts, cik lieliski
[HASS.IO] Sāciet veidot savu viedo māju bez kodēšanas - mazāk par 100 ASV dolāriem: 6 soļi
[HASS.IO] Sāciet veidot savu viedo māju bez kodēšanas par mazāk nekā 100 ASV dolāriem: pēdējā laikā es ķēros pie mājas un veiksmīgi padarīju savu māju mazāk "idiotisku". Tāpēc es dalīšos, kā izveidot gudras mājas sistēmu ar zemu cenu, augstu saderību, kas darbotos nemanāmi un stabili
DJi F450 Quadcopter Kā veidot? Mājas celtniecība: 7 soļi (ar attēliem)
DJi F450 Quadcopter Kā veidot? Mājās uzbūvēts: Šis bija mājās uzbūvēts bezpilota lidaparāts, kuru vadīja hobiju karalis 6 kanālu raidītājs un uztvērējs un Kk2.1.5 lidojuma kontrolieris, parasti šim nolūkam tika izmantoti 1000KV diapazona bezsuku motori, bet savam projektam es esmu izmantojis 1400KV motorus, lai nodrošinātu vislabāko sniegumu
Kā veidot gaisa muskuļus!: 4 soļi (ar attēliem)
Kā izveidot gaisa muskuļus !: Man bija jāizveido daži izpildmehānismi animatronikas projektam, pie kura strādāju. Gaisa muskuļi ir ļoti spēcīgi izpildmehānismi, kas darbojas ļoti līdzīgi cilvēka muskuļiem, un tiem ir fenomenāla spēka un svara attiecība- tie var iedarboties līdz 400 t