Kazalo:

Strojni nadzor stroja: 9 korakov
Strojni nadzor stroja: 9 korakov

Video: Strojni nadzor stroja: 9 korakov

Video: Strojni nadzor stroja: 9 korakov
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, November
Anonim
Zgradite Strojni opazovalec
Zgradite Strojni opazovalec
Zgradite Strojni opazovalec
Zgradite Strojni opazovalec

Izhodišče tega projekta je bilo delo na konkretnem projektu, da bi se naučili nekaj o ploščah mikro krmilnikov.

Prvotna zamisel je bila ustvariti fizični objekt, ki bi lahko spremljal sistem za neprekinjeno integracijo (VSTS | Azure DevOps) in poročal o napakah pri izdelavi programske opreme. Zaradi varnostnih vprašanj oddelka za informacijsko tehnologijo sem zavrnil povezavo "nestandardne" naprave neposredno v omrežje podjetja.

Končal sem z arhitekturo, prikazano na zgornji sliki. Potek izvajanja lahko povzamemo tako:

Namizna aplikacija Windows skenira (potegne) definicije gradnje VSTS. Analizira rezultate izdelave in nato pošlje ukaz fizični napravi, ki izvede malo animirano zaporedje, preden prikaže rdečo ali zeleno zastavico.

Korak: Potrebni deli

Na naslednjem seznamu so povzeti vsi potrebni elementi:

  • 1 Arduino UNO R3 (https://store.arduino.cc/usa/arduino-uno-rev3).
  • 1 Raztezni ščit (https://www.dfrobot.com/wiki/index.php/IO_Expansion_Shield_for_Arduino_V7_SKU:DFR0265).
  • 2 modula XBee S1 (https://www.adafruit.com/product/128).
  • 1 ključ za raziskovalce XBee (https://www.sparkfun.com/products/11697).
  • 2 neprekinjena servo motorja 5VDC z dodatki za pritrditev (https://www.parallax.com/sites/default/files/downloads/900-00008-Continuous-Rotation-Servo-Documentation-v2.2.pdf).
  • 1 9VDC napajalnik.
  • 3 LED.
  • 3 upori 220 Ohm.
  • termo zložljiv tulec.
  • 1 gumb.
  • 10KΩ vlečni upor za dvig.
  • 100nF kondenzator.
  • električne žice.
  • trak (za pritrditev gumba)
  • 5 mm les (50 x 50 cm).
  • lesena palica kvadratnega prereza 5x5 mm (1m).
  • kartona.
  • 10 X vijak premera 2 mm.
  • 4 vijak s premerom 5 mm.
  • močan magnet.
  • obračalni modul. Ponovno sem uporabil notranji gibljivi del utripajoče luči. lahko daš kar hočeš. Paziti morate le, da se lahko dva mobilna dela prosto gibljeta, ne da bi se dotikala skupaj.

2. korak: Izdelava škatle

Gradnja škatle
Gradnja škatle

Pravzaprav lahko imate škatlo kakršne koli oblike, ki jo želite. Pred začetkom je treba razmisliti o tem, kje bodo gibljivi deli in zagotoviti, da se lahko prosto gibljejo, ne da bi se morali dotikati skupaj. Druga točka je, kam boste postavili napravo? Končal sem z magnetom (močnim), da bi ga prilepil na kakršno koli kovinsko oporo. če želite sestaviti isto polje, lahko sledite navodilom v datoteki box_drawings.pdf.

V tem primeru morate samo izrezati vse različne kose, narediti luknje za servomotorje, LED, gumb in vijake ter na koncu zlepiti vse dele. Ko se posuši, malo brušenja in nekaj barve.

Obe zastavi sta narejeni iz rdečega in zelenega kartona. Za pritrditev droga zastavice na servomotorje lahko uporabite njihove pritrdilne dele, ko jih kupite.

Korak: Namestitev Arduina

Namestitev Arduina
Namestitev Arduina

Elementi, povezani z razširitveno ploščo Arduino, so:

  • PIN D2: potisni gumb.
  • PIN D4: LED, ki označuje, da je sistem VKLOPLJEN.
  • PIN D5: LED, ki pove, da izvajamo cikel.
  • PIN D6: LED, ki sporoča, da je naprava prejela novo sporočilo.
  • PIN D9: impulzni signal PWM za servomotor, ki upravlja žiroskop.
  • PIN D10: impulzni signal PWM za servomotor, ki upravlja zastavo.
  • Vtičnica XBee: en modul ZigBee.

Zgornja shema prikazuje, kako so vsi elementi povezani s ploščo.

Pri LED diodah so upor in žice neposredno varjeni nanj (pazite na polarnost). Nato je vse zapakirano v neko termo zložljivo pušo.

Za potisni gumb so vsi deli (gumb, upor in kondenzator) varjeni neposredno na majhno satelitsko ploščo. Nato se trak neposredno pritrdi z dvema vijakoma (2 mm)

Servomotorji delujejo z močjo 5V, zato jih je mogoče priključiti neposredno na Arduino. Če uporabljate tiste z višjo napetostjo (12V), boste morali za napajanje dodati še en sloj.

Za module XBee, ko so konfigurirani za pogovor skupaj (glejte naslednji razdelek), jih je mogoče priključiti neposredno na vtičnice.

Opombe: LED diode in potisni gumb bi lahko bili neposredno povezani z zatiči Arduino, saj lahko interno izvedejo potrebne vrednostne papirje. Ravno sem naredil po starem, saj mi ta vidik ni bil zelo jasen.

4. korak: Programska oprema - XCTU

Programska oprema - XCTU
Programska oprema - XCTU

Kot je navedeno zgoraj, morata biti dve napravi XBee konfigurirani za pogovor. Če želite to narediti, morate uporabiti namensko programsko opremo X-CTU podjetja DIGI. Ta konfiguracijski korak morate narediti le enkrat. sledite postopku, opisanemu v datoteki xbee_configuration.pdf.

Ko je konfiguracija končana, lahko povežete vsak modul v vtičnico. Enega na pretvorniku USB/Serial in enega na razširitveni plošči Arduino.

Windows 10 mora samodejno prepoznati pretvornik USB/zaporedni. Če ni, boste morda morali ročno namestiti gonilnik

Opomba:

Uporaba modulov XBee za osnovno serijsko komunikacijo je nekoliko pretirano. Ko sem začel s projektom, mi ni uspelo najti preprostih serijskih komunikacijskih naprav, ki bi jih bilo mogoče enostavno uporabiti v sistemu Windows 10 (težave z gonilniki). To je bila tudi priložnost, da se naučite nekaj o

5. korak: Programska oprema - Arduino Sketch

Programska oprema - Arduino Sketch
Programska oprema - Arduino Sketch

Za programiranje Arduina uporabljamo IDE, ki je dostopen z uradne spletne strani.

Logika programa je precej preprosta, saj samo posluša na privzetih serijskih vratih plošče posamezne črke ('a', 'b', …). Če se prejeti znak ujema z znanim ukazom, potem podfunkcija predvaja ustrezno zaporedje.

Dva glavna uporabna ukaza sta animacija uspeha ('a') in animacija napake ('b').

Če se želite malo več igrati (ali odpravljati napake) s škatlo, je mogoče izvesti nekaj dodatnih ukazov. So:

  • "O": LED za vklop mora biti vklopljen
  • 'P': izklopite LED za vklop
  • ‘Q’: LED za novo sporočilo prisilite, da sveti
  • ‘R’: izklopite LED za novo sporočilo
  • ‘S’: sveti LED cikla, da sveti
  • 'T': izklopite LED cikla
  • "U": aktivirajte servomotor žiroskopa
  • „V“: aktivirajte servomotor zastave.

Poleg serijskega ukaza obstaja še podprogram (handlePushButton), ki se aktivira, ko pritisnete gumb na napravi. V tem primeru se animacija napake ali uspeha samodejno predvaja. Ta funkcija omogoča preverjanje, ali je bila fizična naprava pravilno nameščena.

Koda skice Arduino je v eni datoteki bsldevice.ino. Lahko ga naložite neposredno z IDE.

6. korak: Programska oprema - namizna aplikacija

Programska oprema - namizna aplikacija
Programska oprema - namizna aplikacija

Namen namizne aplikacije je spremljanje spletnega mesta Microsoft Azure DevOps (prej VSTS) in ugotavljanje, ali je definicija gradnje uspešna ali pomotoma. Vsakič, ko je gradnja končana, namizna aplikacija določi stanje gradnje in pošlje ustrezen ukaz ('a' ali 'b') na serijska vrata (COMx).

Po zagonu aplikacije je prvo dejanje izbira pravih vrat com, na katera je priključen modul ZigBee. Za določitev vrat lahko uporabite upravitelja naprav Windows (v razdelku Vrata (razdelek COM & LPT)). Povezava z Azure DevOps se samodejno izvede ob zagonu z uporabo poverilnic trenutnega uporabnika. Vsak vnaprej določen ukaz lahko tudi ročno pošljete s kombiniranim poljem na desni.

Vsi viri so ustvarjeni s strokovno izdajo Visual Studio 2017. Zahteva. NET Framework 4.6.1. Ta različica Framework je zaželena, da olajša povezavo/preverjanje pristnosti s spletnim mestom VSTS.

uporabiti:

  • prenesite arhiv bslwatcher_sources.zip.
  • Izvlecite ga na disk.
  • Za podrobnosti o gradnji preberite datoteko how_to_build.txt.

7. korak: Prvi začetek

Pri zagonu škatle morate upoštevati dve glavni stvari:

1- Sistem ne more sam vedeti, kje so zastavice. Sistem predvideva, da je ob zagonu zelena zastavica.

2- Pri vklopu plošče Arduino se nič ne sme premakniti. Ker smo uporabljali neprekinjene servomotorje, je ničelni položaj privzeto nastavljen na 90 v datoteki skice. Če se servomotor začne obračati ali hrupiti. Morda boste morali znova določiti njegov ničelni položaj. Če želite to narediti, samo nastavite potenciometer v majhni luknji na strani servomotorja.

www.arduino.cc/en/Reference/ServoWrite

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

8. korak: Zaključek

Ta majhna naprava bo fizično poročala o stanju vašega sistema za neprekinjeno integracijo.

Ker je "inteligenca" v namizni aplikaciji, lahko polje uporabite za spremljanje katere koli druge programske opreme ali procesa (pošta, temperaturni senzor …). Imeti morate le dostop do drugega API -ja in se odločiti, kaj je "dobro" ali kaj "slabo". Če ne uporabljate rdeče in zelene konvencionalne barve, lahko celo spremenite pomen "sporočila".

Izboljšave bi lahko prinesli tudi v samo polje:

  • Uporabite baterijo.
  • Uporabite drug komunikacijski protokol.
  • Dodajte senzorje, če želite vedeti, katera zastavica je na vrhu.

Upam, da vam je bil ta projekt zanimiv.

Hvala za branje do tukaj.

9. korak: Priloga

Nekatere povezave, uporabljene za ustvarjanje tega projekta:

Spletno mesto Arduino:

Spletno mesto DIGI:

Programska oprema XCTU:

Nekaj podatkov, uporabljenih od drugih:

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

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

www.mon-club-elec.fr/pmwiki_reference_ardui… (v francoščini)

jeromeabel.net/

Splošno spletno mesto MSDN:

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

Priporočena: