Tartalomjegyzék:

Gépfigyelő felépítése: 9 lépés
Gépfigyelő felépítése: 9 lépés

Videó: Gépfigyelő felépítése: 9 lépés

Videó: Gépfigyelő felépítése: 9 lépés
Videó: Стильная Мужская Стрижка 2023 Пошагово дома | Уроки стрижек Евы Лорман | Как стричь Мужские стрижки 2024, November
Anonim
Build Machine Watcher
Build Machine Watcher
Build Machine Watcher
Build Machine Watcher

Ennek a projektnek a kiindulópontja egy konkrét projekt kidolgozása volt, hogy megtudjon néhány dolgot a mikrovezérlő táblákról.

Az eredeti ötlet egy fizikai objektum létrehozása volt, amely képes figyelni a folyamatos integrációs rendszert (VSTS | Azure DevOps), és jelentheti a szoftver -építési hibákat. Az informatikai részleg biztonsági aggályai miatt nem voltam hajlandó "nem szabványos" eszközt közvetlenül a vállalati hálózathoz csatlakoztatni.

Végül a fenti képen látható architektúrával végeztem. A végrehajtási munkafolyamat a következőképpen foglalható össze:

Egy Windows asztali alkalmazás ellenőrzi (húzza) a VSTS Build definícióit. Elemzi az összeállítás eredményeit, majd parancsot küld a fizikai eszköznek, amely végrehajt egy kis animált sorozatot, mielőtt megjelenítené a piros vagy a zöld zászlót.

1. lépés: Szükséges alkatrészek

Az alábbi lista összefoglalja az összes szükséges elemet:

  • 1 Arduino UNO R3 (https://store.arduino.cc/usa/arduino-uno-rev3).
  • 1 Bővítési pajzs (https://www.dfrobot.com/wiki/index.php/IO_Expansion_Shield_for_Arduino_V7_SKU:DFR0265).
  • 2 XBee S1 modul (https://www.adafruit.com/product/128).
  • 1 XBee explorer dongle (https://www.sparkfun.com/products/11697).
  • 2 folyamatos szervomotor 5VDC rögzítő tartozékokkal (https://www.parallax.com/sites/default/files/downloads/900-00008-Continuous-Rotation-Servo-Documentation-v2.2.pdf).
  • 1 9VDC tápegység.
  • 3 LED.
  • 3 ellenállás 220 Ohm.
  • visszahúzható hőhüvely.
  • 1 nyomógomb.
  • 10KΩ húzóellenállás a felhúzáshoz.
  • 100nF kondenzátor.
  • elektromos vezetékek.
  • szalagdeszka (a gomb rögzítéséhez)
  • 5 mm -es fa (50 x 50 cm).
  • fapálca négyzetmetszetű 5x5 mm (1m).
  • karton.
  • 10 x 2 mm átmérőjű csavar.
  • 4 csavar 5 mm átmérőjű.
  • erős mágnes.
  • esztergáló modul. Újra felhasználtam a villogó lámpa belső mozgó részét. bármit feltehetsz. Csak arra kell vigyáznia, hogy a 2 mobil rész szabadon mozoghasson anélkül, hogy összeérne.

2. lépés: A doboz felépítése

A doboz építése
A doboz építése

Valójában bármilyen formájú doboza lehet. A fő dolgokat, amelyeket az indulás előtt át kell gondolni, hogy hol lesznek a mozgó alkatrészek, és biztosítani kell, hogy szabadon mozoghassanak anélkül, hogy összeérnének. A másik kérdés az, hogy hová helyezi a készüléket? Végül egy mágnest (erőset) kaptam, hogy bármilyen fém tartóhoz rögzítsem. ha ugyanazt a dobozt szeretné felépíteni, kövesse a box_drawings.pdf fájl utasításait.

Ebben az esetben csak le kell vágnia az összes különböző darabot, lyukakat kell készíteni a szervomotorokhoz, a LED -ekhez, a gombhoz és a csavarokhoz, és végül össze kell ragasztani az összes alkatrészt. Miután megszáradt, egy kis csiszolás és némi szín.

A két zászló vörös és zöld kartonból készült. A szervomotorok zászlaoszlopának rögzítéséhez használhatja a vásárláskor mellékelt rögzítőelemeket.

Lépés: Az Arduino beállítása

Arduino beállítás
Arduino beállítás

Az Arduino bővítőkártyához csatlakoztatott elemek a következők:

  • D2 PIN: a nyomógomb.
  • D4 PIN: a LED azt jelzi, hogy a rendszer BE van kapcsolva.
  • D5 PIN: a LED azt jelzi, hogy végrehajtunk egy ciklust.
  • D6 PIN: a LED jelzi, hogy a készülék új üzenetet kapott.
  • D9 PIN: a PWM impulzusjel a giroszkópot kezelő szervomotorhoz.
  • D10 PIN: a zászlót kezelő szervomotor PWM impulzusjele.
  • XBee Socket: egy ZigBee modul.

A fenti vázlat azt mutatja, hogy az összes elem hogyan kapcsolódik a táblához.

A LED -ek esetében az ellenállás és a vezetékek közvetlenül rá vannak hegesztve (ügyeljen a polaritásra). Ezután mindent egy hőre visszahúzható hüvelybe csomagolnak.

A nyomógombhoz az összes alkatrészt (gombot, ellenállást és kondenzátort) közvetlenül hegesztik egy kis műholdas szalaglemezen. A szalaglemezt ezután közvetlenül rögzítik két csavarral (2 mm)

A szervomotorok 5 V -os árammal működnek, így közvetlenül csatlakoztathatók az Arduino -hoz. Ha nagyobb feszültségű (12 V) feszültséget használ, akkor egy másik réteget kell hozzáadnia a tápegységhez.

Az XBee modulok esetében, ha úgy vannak konfigurálva, hogy együtt beszéljenek (lásd a következő részt), közvetlenül csatlakoztathatók az aljzatokhoz.

Megjegyzések: A LED -eket és a nyomógombot közvetlenül az Arduino csapokhoz lehetett csatlakoztatni, mivel belsőleg megvalósíthatja a szükséges biztosítékokat. Csak a régit csináltam, mivel ez a szempont nem volt egyértelmű számomra.

4. lépés: Szoftver - XCTU

Szoftver - XCTU
Szoftver - XCTU

Amint fentebb említettük, a két XBee eszközt úgy kell konfigurálni, hogy együtt beszéljenek. Ehhez a DIGI dedikált X-CTU szoftverét kell használnia. Ezt a konfigurációs lépést csak egyszer kell elvégeznie. kérjük, kövesse az xbee_configuration.pdf fájlban leírt eljárást.

A konfigurálás befejezése után minden modult csatlakoztathat az aljzathoz. Az egyik az USB/soros átalakítón, a másik az Arduino bővítőlapon.

A Windows 10 automatikusan felismeri az USB/soros átalakítót. Ha nem, előfordulhat, hogy manuálisan kell telepítenie az illesztőprogramot

Jegyzet:

Az XBee modulok használata alapvető soros kommunikációhoz kissé túlzás. A projekt elindításakor nem sikerült egyszerű soros kommunikációs eszközöket találnom, amelyek könnyen használhatók a Windows 10 rendszeren (illesztőprogram -problémák). Lehetőség volt arra is, hogy néhány dolgot megtudjunk a https://www.zigbee.org webhelyről

5. lépés: Szoftver - Arduino Sketch

Szoftver - Arduino Sketch
Szoftver - Arduino Sketch

Az Arduino programozásához a hivatalos weboldalról elérhető IDE -t használjuk.

A program logikája meglehetősen egyszerű, csak hallgatja a kártya alapértelmezett soros portját egyetlen betűért („a”, „b”,…). Ha a kapott karakter egyezik egy ismert paranccsal, akkor egy alfunkció játssza le a megfelelő sorozatot.

A 2 fő hasznos parancs a sikeranimáció („a”) és a hibaanimáció („b”).

Ahhoz, hogy egy kicsit többet játszhasson (vagy hibakereshessen) a dobozzal, néhány extra parancs is végrehajtható. Ők:

  • „O”: az ON LED bekapcsolása
  • „P”: kényszerítse ki az ON LED -et
  • „Q”: kényszerítse az Új üzenet LED világítását
  • „R”: kényszerítse ki az Új üzenet LED -et
  • „S”: kényszerítse a Cycle LED -et világítani
  • „T”: kényszerítse a Ciklus LED -et KI kapcsolásra
  • „U”: aktiválja a giroszkóp szervomotorját
  • „V”: aktiválja a zászló szervomotorját.

A soros parancs mellett van egy alrutin (handlePushButton), amely akkor aktiválódik, amikor megnyomja a gombot a készüléken. Ebben az esetben a hiba vagy siker animáció automatikusan lejátszásra kerül. Ez a funkció lehetővé teszi annak ellenőrzését, hogy a fizikai eszköz helyesen van -e felszerelve.

Az Arduino vázlat kódja a bsldevice.ino egyetlen fájlban található. Az IDE segítségével közvetlenül feltöltheti.

6. lépés: Szoftver - asztali alkalmazás

Szoftver - asztali alkalmazás
Szoftver - asztali alkalmazás

Az asztali alkalmazás célja a Microsoft Azure DevOps (korábban VSTS) webhely figyelése, és annak felderítése, hogy a Build Definition sikeres vagy hibás. Minden egyes befejezéskor az asztali alkalmazás meghatározza a build állapotát, és elküldi a megfelelő parancsot („a” vagy „b”) a soros portra (COMx).

Az alkalmazás elindítása után az első lépés a megfelelő komport kiválasztása, amelyre a ZigBee modul csatlakozik. A port meghatározásához használja a Windows Eszközkezelőt (a Portok alatt (COM és LPT szakasz)). A kapcsolat az Azure DevOps rendszerrel automatikusan történik az indításkor az aktuális felhasználó hitelesítő adatainak használatával. Bármely előre definiált parancsot manuálisan is elküldhet a jobb oldali kombinált mező használatával.

Minden forrás a Visual Studio 2017 professzionális kiadásával készült. Ehhez. NET Framework 4.6.1 szükséges. A Framework ezen verziója előnyösebb a VSTS webhelyhez való csatlakozás/hitelesítés megkönnyítése érdekében.

használni:

  • töltse le az archívumot bslwatcher_sources.zip.
  • Bontsa ki a lemezen.
  • Olvassa el a how_to_build.txt fájlt a felépítés részleteiért.

7. lépés: Első indítás

A doboz indításakor két fő dolgot kell szem előtt tartani:

1- A rendszer semmilyen módon nem tudja, hogy a zászlók hol vannak. A rendszer azt feltételezi, hogy az indításkor a zöld zászló fent van.

2- Az Arduino tábla bekapcsolásakor semmi sem mozdulhat. Mivel folyamatos szervókat használtunk, a nulla pozíció alapértelmezés szerint 90 -re van állítva a vázlatfájlban. Ha a szervomotor forogni kezd vagy zajt ad ki. előfordulhat, hogy újra meg kell határoznia a nulla pozícióját. Ehhez csak hangolja be a potenciométert a szervomotor oldalán található kis lyukon belül.

www.arduino.cc/en/Reference/ServoWrite

cmra.rec.ri.cmu.edu/content/electronics/boe…

8. lépés: Következtetés

Ez a kis eszköz fizikailag fogja jelenteni a folyamatos integrációs rendszer állapotát.

Mivel az "intelligencia" az asztali alkalmazásban található, a doboz segítségével bármilyen más szoftvert vagy folyamatot (levél, hőmérséklet -érzékelő …) figyelhet. Csak hozzá kell férnie egy másik API -hoz, és el kell döntenie, hogy mi a „jó” vagy mi a „rossz”. Ha nem használ piros és zöld konvencionális színeket, akkor akár megváltoztathatja az "üzenet" jelentését.

A dobozon is lehetne javítani:

  • Használjon akkumulátort.
  • Használjon másik kommunikációs protokollt.
  • Adjon hozzá érzékelőket, hogy megtudja, melyik zászló van a tetején.

Remélem, érdekesnek találta ezt a projektet.

Köszönöm, hogy idáig elolvastad.

9. lépés: Melléklet

Néhány link a projekt létrehozásához:

Az Arduino webhelye:

A DIGI webhelye:

XCTU szoftver:

Néhány információ másoktól:

arduino.stackexchange.com/questions/1321/se…

stackoverflow.com/questions/10399400/best-w…

www.mon-club-elec.fr/pmwiki_reference_ardui… (franciául)

jeromeabel.net/

Az MSDN webhely általában:

docs.microsoft.com/en-us/dotnet/framework/…

Ajánlott: