Sadržaj:

Nadzor stroja za izgradnju: 9 koraka
Nadzor stroja za izgradnju: 9 koraka

Video: Nadzor stroja za izgradnju: 9 koraka

Video: Nadzor stroja za izgradnju: 9 koraka
Video: Как проверить генератор. За 3 минуты, БЕЗ ПРИБОРОВ и умений. 2024, Studeni
Anonim
Napravite Strojni nadzornik
Napravite Strojni nadzornik
Napravite Strojni nadzornik
Napravite Strojni nadzornik

Početna točka za ovaj projekt bio je rad na konkretnom projektu kako bi se naučilo nekoliko stvari o pločama mikrokontrolera.

Početna ideja bila je stvoriti fizički objekt koji bi mogao nadzirati sustav kontinuirane integracije (VSTS | Azure DevOps) i prijavljivati greške pri izgradnji softvera. Zbog sigurnosnih razloga IT odjela, odbijeno mi je povezivanje "nestandardnog" uređaja izravno na poslovnu mrežu.

Završio sam s arhitekturom prikazanom na gornjoj slici. Tijek izvođenja može se sažeti na sljedeći način:

Windows desktop aplikacija skenira (povuče) VSTS Build Definicije. On analizira rezultate gradnje, a zatim šalje naredbu fizičkom uređaju koji izvršava malo animirani slijed prije nego što prikaže crvenu ili zelenu zastavicu.

Korak 1: Potrebni dijelovi

Sljedeći popis sažima sve potrebne stavke:

  • 1 Arduino UNO R3 (https://store.arduino.cc/usa/arduino-uno-rev3).
  • 1 Ekspanzijski štit (https://www.dfrobot.com/wiki/index.php/IO_Expansion_Shield_for_Arduino_V7_SKU:DFR0265).
  • 2 XBee S1 modula (https://www.adafruit.com/product/128).
  • 1 XBee explorer ključ (https://www.sparkfun.com/products/11697).
  • 2 kontinuirana servo motora 5VDC s priborom za pričvršćivanje (https://www.parallax.com/sites/default/files/downloads/900-00008-Continuous-Rotation-Servo-Documentation-v2.2.pdf).
  • 1 9VDC napajanje.
  • 3 LED diode.
  • 3 otpornika 220 ohma.
  • termo uvlačivi rukav.
  • 1 gumb.
  • 10KΩ otpor za povlačenje.
  • 100nF kondenzator.
  • električne žice.
  • strip-board (za ugradnju gumba)
  • Drvo 5 mm (50 x 50 cm).
  • drveni štap kvadratnog presjeka 5x5 mm (1m).
  • karton.
  • 10 X vijak promjera 2 mm.
  • 4 vijka promjera 5 mm.
  • snažan magnet.
  • modul za okretanje. Ponovno sam upotrijebio unutarnji pokretni dio trepćućeg svjetla. možeš staviti što god želiš. Morat ćete samo paziti da se 2 mobilna dijela mogu slobodno kretati bez dodirivanja.

Korak 2: Izgradnja kutije

Izgradnja kutije
Izgradnja kutije

Zapravo možete imati kutiju bilo kojeg oblika koji želite. Glavne stvari o kojima morate razmisliti prije početka su mjesta na kojima će se nalaziti pokretni dijelovi i osigurati njihovo slobodno kretanje bez dodirivanja. Još jedna stvar je gdje ćete staviti uređaj? Završio sam s magnetom (jakim) kako bih ga zalijepio za bilo koju metalnu podlogu. ako želite izgraditi isti okvir, možete slijediti upute u datoteci box_drawings.pdf.

U tom slučaju samo morate izrezati sve različite komade, napraviti rupe za servomotore, LED diode, gumb i vijke te na kraju zalijepiti sve dijelove. Kad se osuši, malo brušenja i malo boje.

Dvije zastave izrađene su od crvenog i zelenog kartona. Za pričvršćivanje jarbola zastavice na servomotore možete koristiti priložene dijelove za montažu kada ih kupujete.

Korak 3: Postavljanje Arduina

Arduino postavljanje
Arduino postavljanje

Stavke povezane na Arduino produžnu ploču su:

  • D2 PIN: pritisni gumb.
  • D4 PIN: LED lampica koja signalizira da je sustav UKLJUČEN.
  • D5 PIN: LED lampica koja govori da izvršavamo ciklus.
  • D6 PIN: LED lampica koja govori da je uređaj primio novu poruku.
  • D9 PIN: PWM impulsni signal za servomotor koji upravlja žiroskopom.
  • D10 PIN: PWM impulsni signal za servomotor koji rukuje zastavicom.
  • XBee utičnica: jedan ZigBee modul.

Gornja shema prikazuje kako su sve stavke spojene na ploču.

Za LED diode, otpornik i žice su izravno zavareni na njega (vodite računa o polaritetu). Zatim se sve pakira u neki termo uvlačivi rukav.

Za tipku, svi dijelovi (gumb, otpornik i kondenzator) izravno su zavareni na maloj satelitskoj traci. Pločica se zatim izravno učvršćuje s dva vijka (2 mm)

Servo motori rade s snagom od 5 V pa se stoga mogu spojiti izravno na Arduino. Ako koristite one s većim naponom (12V), morat ćete dodati još jedan sloj za napajanje.

Za XBee module, nakon što su konfigurirani da razgovaraju zajedno (vidi sljedeći odjeljak), mogu se priključiti izravno u utičnice.

Napomene: LED diode i gumb za pritiskanje mogli su biti izravno spojeni na Arduino pinove jer mogu interno implementirati potrebne vrijednosne papire. Učinio sam na stari način jer mi ovaj aspekt nije bio baš jasan.

Korak 4: Softver - XCTU

Softver - XCTU
Softver - XCTU

Kao što je gore spomenuto, dva XBee uređaja moraju biti konfigurirana za zajednički razgovor. Da biste to učinili, morate koristiti namjenski softver X-CTU tvrtke DIGI. Ovaj korak konfiguracije morate napraviti samo jednom. slijedite postupak opisan u datoteci xbee_configuration.pdf.

Nakon što je konfiguracija dovršena, svaki modul možete spojiti na njihovu utičnicu. Jedan na USB/serijskom pretvaraču i jedan na Arduino produžnoj ploči.

Windows 10. USB/serijski pretvarač trebao bi automatski prepoznati Windows 10. Ako nije, možda ćete morati ručno instalirati upravljački program

Bilješka:

Korištenje XBee modula za obavljanje osnovne serijske komunikacije pomalo je pretjerano. U vrijeme kada sam započeo projekt nisam uspio pronaći jednostavne serijske komunikacijske uređaje koji bi se lako mogli koristiti u sustavu Windows 10 (problemi s upravljačkim programima). Bila je to i prilika da naučite nekoliko stvari o

Korak 5: Softver - Arduino skica

Softver - Arduino Sketch
Softver - Arduino Sketch

Za programiranje Arduina koristimo IDE dostupan sa službene web stranice.

Logika programa je prilično jednostavna, samo sluša na zadanim serijskim priključcima ploče pojedina slova ('a', 'b', …). Ako se primljeni znak podudara s poznatom naredbom, tada podfunkcija reproducira odgovarajući slijed.

Dvije glavne korisne naredbe su animacija uspjeha ('a') i animacija pogreške ('b').

Da biste se mogli igrati (ili otklanjati pogreške) još malo s kutijom, postoje neke dodatne naredbe koje se mogu izvršiti. Oni su:

  • ‘O’: prisilite ON LED da svijetli
  • ‘P’: prisilite LED za uključivanje da se isključi
  • ‘Q’: prisilite LED za novu poruku da svijetli
  • ‘R’: prisilite LED za novu poruku da se isključi
  • ‘S’: prisilite LED LED ciklusa da svijetli
  • ‘T’: prisilite LED za ciklus da se isključi
  • ‘U’: aktiviranje servomotora žiroskopa
  • ‘V’: aktiviranje servomotora zastave.

Osim serijske naredbe, postoji i potprogram (handlePushButton) koji se aktivira pritiskom tipke na uređaju. U tom slučaju automatski se reproducira pogreška ili animacija uspjeha. Ova značajka omogućuje provjeru je li fizički uređaj ispravno montiran.

Kod Arduino skice nalazi se u jednoj datoteci bsldevice.ino. Možete ga učitati izravno pomoću IDE -a.

Korak 6: Softver - Desktop aplikacija

Softver - Desktop aplikacija
Softver - Desktop aplikacija

Svrha aplikacije za stolno računalo je nadziranje Microsoft Azure DevOps (prethodno VSTS) web stranice i otkrivanje je li definicija izrade uspješna ili greškom. Svaki put kada je izgradnja dovršena, stolna aplikacija određuje status izrade i šalje odgovarajuću naredbu ('a' ili 'b') na serijski port (COMx).

Nakon pokretanja aplikacije prva radnja je odabir pravog com porta na koji je povezan ZigBee modul. Za određivanje ulaza možete koristiti Windows Device Manager (u odjeljku Ports (odjeljak COM & LPT)). Povezivanje s Azure DevOps -om vrši se automatski pri pokretanju pomoću vjerodajnica trenutnog korisnika. Također možete ručno poslati bilo koju unaprijed definiranu naredbu pomoću kombiniranog okvira s desne strane.

Svi izvori generirani su s profesionalnim izdanjem Visual Studio 2017. Zahtijeva. NET Framework 4.6.1. Ova verzija Framework -a poželjna je radi olakšavanja povezivanja/provjere autentičnosti s VSTS web stranicom.

koristiti:

  • preuzmite arhivu bslwatcher_sources.zip.
  • Raspakirajte ga na svoj disk.
  • Za detalje o izgradnji pročitajte datoteku how_to_build.txt.

Korak 7: Prvi početak

Dvije su glavne stvari koje morate imati na umu pri pokretanju kutije:

1- Ne postoji način da sustav sam zna gdje su zastavice. Sustav pretpostavlja da je pri pokretanju zelena zastavica podignuta.

2- Prilikom uključivanja Arduino ploče ništa se ne smije pomaknuti. Kako smo koristili kontinuirane servo pogone, nulta pozicija je zadano postavljena na 90 u datoteci skice. Ako se servomotor počne okretati ili stvarati buku. možda ćete morati ponovno definirati nulti položaj. Da biste to učinili, samo namjestite potenciometar unutar male rupe sa strane servomotora.

www.arduino.cc/en/Reference/ServoWrite

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

Korak 8: Zaključak

Ovaj mali uređaj fizički će izvijestiti o statusu vašeg sustava za kontinuiranu integraciju.

Budući da je "inteligencija" u stolnoj aplikaciji, možete koristiti okvir za nadzor bilo kojeg drugog softvera ili procesa (pošta, temperaturni senzor …). Vi samo trebate imati pristup drugom API -ju i odlučiti što je "dobro", a što "loše". Ako ne koristite crvene i zelene konvencionalne boje, čak možete promijeniti značenje "poruke".

Poboljšanja bi se također mogla unijeti u samu kutiju:

  • Koristite bateriju.
  • Koristite drugi komunikacijski protokol.
  • Dodajte senzore kako biste znali koja je zastava pri vrhu.

Nadam se da vam je ovaj projekt bio zanimljiv.

Hvala što ste pročitali do ovdje.

Korak 9: Prilog

Neke od veza koje su korištene za izradu ovog projekta:

Arduino web mjesto:

DIGI web stranica:

XCTU softver:

Neki podaci korišteni od drugih:

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

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

www.mon-club-elec.fr/pmwiki_reference_ardui… (na francuskom)

jeromeabel.net/

MSDN web mjesto općenito:

docs.microsoft.com/hr-hr/dotnet/framework/…

Preporučeni: