Turinys:

„Jenkins Job“šviesoforai: 8 žingsniai (su nuotraukomis)
„Jenkins Job“šviesoforai: 8 žingsniai (su nuotraukomis)

Video: „Jenkins Job“šviesoforai: 8 žingsniai (su nuotraukomis)

Video: „Jenkins Job“šviesoforai: 8 žingsniai (su nuotraukomis)
Video: Traffic light jerking off 2024, Lapkritis
Anonim
Jenkins darbo šviesoforai
Jenkins darbo šviesoforai

Programinės įrangos inžinerijoje nuolatinė integracija yra praktika, kai kelis kartus per dieną sujungiamos visos kūrėjo darbo kopijos į bendrą pagrindinę liniją. Kai kurios geriausios praktikos, kaip tai pasiekti, yra šios:

  • visi kiekvieną dieną įsipareigoja laikytis pradinio lygio,
  • automatizuoti konstrukciją,
  • kiekvienas gali pamatyti naujausių versijų rezultatus.
  • … Ir daugelis kitų.

Norint įvykdyti tik šiuos 3 punktus, svarbu kuo greičiau pranešti apie kūrimo būseną.

Šis projektas padeda tai pasiekti sukuriant mini asmeninius šviesoforus, rodančius esamą statinio būseną. Aš sukūriau 2 šviesoforų rinkinius, kurie yra integruoti į „Jenkins“automatikos serverį, kurį „NodeMCU“periodiškai traukia per „WiFi“.

1 žingsnis: medžiagos ir įrankiai

Medžiagos, kurias naudojau:

  • „NodeMCU“(naudojau v3) („BangGood.com“)
  • „Duetboard“jungiamieji kabeliai nuo vyrų iki moterų (BangGood.com)
  • 2 šviesos diodų rinkiniai: raudona, geltona, žalia (BangGood.com)
  • 2 3 rezistorių rinkiniai (450Ω, 500Ω, 22Ω)
  • 2 plonos, bet ilgos prototipinės PCB plokštės (BangGood.com)
  • „microUSB“kabelis kaip maitinimo šaltinis
  • Kažkokia dėžutė (vieną naudojau elektriniams aukštos įtampos komponentams. Radau daug įvairių formų ir pigiai vietinėje „pasidaryk pats“mažmenininkų parduotuvėje)
  • 2 rašikliai arba 2 stori 0,5-1 cm vidinio skersmens vamzdžiai; ir (arba) 2 stori gėrimų šiaudeliai

Reikalingi įrankiai:

  • Aštrus peilis (pvz., Naudingas peilis kilimui pjaustyti)
  • Sukamasis įrankis
  • Karštas klijų pistoletas
  • Litavimo stotis
  • Replės, įstrižainės replės/šoniniai pjaustytuvai
  • Atsuktuvas
  • Storo popieriaus gabalas
  • Dvipusė lipni juosta
  • Tu

2 žingsnis: šviesoforai

Šviesoforas
Šviesoforas
Šviesoforas
Šviesoforas
Šviesoforas
Šviesoforas

Šviesoforų statybai naudojame 20x80 mm prototipų plokštę. Lituoti šviesos diodus, kad jie būtų išdėstyti linijoje. Aš naudoju šias rezistorių vertes:

  • raudona: 510Ω
  • geltona: 470Ω
  • žalia: 22Ω

Reikšmės yra daug didesnės nei rekomenduojama (maksimali 20 mA srovė vienam šviesos diodui), tačiau eksperimentuojant su skirtingomis reikšmėmis, šviesa nėra per ryški ir taip pat visos 3 yra panašaus intensyvumo. Atminkite, kad „NodeMCU“įtampa yra 3,3 V.

Laidai yra tiesūs į priekį, tiesiog prijunkite (lituokite) kiekvieno šviesos diodo katodą prie rezistoriaus ir tada lituokite prie trumpiklio kabelio. Vienoje plokštės pusėje norėjau tik LED elementų be jokių kitų „iššokančių“dalių, tokių kaip rezistoriaus kojelės, laidai ir pan. Štai kodėl aš naudojau „techniką“, kuri yra tam tikras SMD, naudojant PCB komponentus.

Kol kas paliekame taip; žibintų gaubtas bus padarytas vėliau.

3 žingsnis: dėžutė - pagrindinis

Dėžutė - pagrindinis
Dėžutė - pagrindinis
Dėžutė - pagrindinis
Dėžutė - pagrindinis
Dėžutė - pagrindinis
Dėžutė - pagrindinis

Turime įterpti „NodeMCU“į dėžutės apačią. Dėžėje reikia skylės „microUSB“prievadui, kad galėtume įjungti pagrindinį įrenginį. Apytiksliai išmatavau skylės padėtį ir ją tiesiog išgręžiau.

Tada prie nodemcu pritvirtinau plastikinius tarpiklius varžtais. Aš įdėjau šiek tiek klijų į kiekvieną dėžutės kampą ir uždėjau ant jo visą konstrukciją. Kai jis atvės, atsukau „NodeMCU“ir aplink tarpiklius uždėjau šiek tiek papildomų karštų klijų, kurie, mano įsitikinimu, buvo idealiai pritaikyti „NodeMCU“. Negana to, dėžutės viduje niekas nesvyra ir mes galime lengvai prijungti „microUSB“prievadą, neperkeliant daiktų į vidų.

4 žingsnis: dėžutė - dangtis

Dėžutė - dangtelis
Dėžutė - dangtelis
Dėžutė - dangtelis
Dėžutė - dangtelis
Dėžutė - dangtelis
Dėžutė - dangtelis
Dėžutė - dangtelis
Dėžutė - dangtelis

Pirmiausia bandžiau naudoti gėrimų šiaudelius kaip stulpą savo šviesoforuose, tačiau po tam tikrų bandymų sužinojau, kad plastikas yra per plonas ir kai norėjau jį pritvirtinti karštais klijais, jis tapo labai minkštas ir netgi pasikeitė jos forma. Taigi nusprendžiau naudoti kažką sunkesnio - rašiklius. Aš pasirinkau keletą pigių skaidrių rašiklių, kuriuos nukirpau norimo ilgio ir per vamzdį perkišu 4 kabelius (po 1) nuo šviesoforų.

Aš išgręžiau skyles vidurinėje dangčio linijoje pagal rašiklio skersmenį. Tada į skylutes įterpiau rašiklius ir karštuoju būdu priklijavau juos apatinėje dangčio pusėje, stengdamasis, kad poliai būtų tiesūs.

Taip pat ant stulpo uždėjau šiek tiek karštų klijų, kad šviesoforų lentos būtų pritvirtintos prie stulpų.

5 žingsnis: Surinkimas

Surinkimas
Surinkimas
Surinkimas
Surinkimas

Prijungiau laidus prie „NodeMCU“(pinout):

Kairysis šviesoforas:

  • nuo raudonos iki D2 (GPIO4)
  • geltona iki D3 (GPIO0)
  • nuo žalios iki D4 (GPIO2)
  • įžemintas iki GND (aš ką tik pasirinkau vieną iš „NodeMCU“GND kaiščio)

GERAS šviesoforas:

  • nuo raudonos iki D5 (GPIO14)
  • geltona iki D6 (GPIO12)
  • žalia iki D7 (GPIO13)
  • įžemintas iki GND (tik pasirinkau vieną iš „NodeMCU“GND kaiščio)

… ir uždariau dangtį. Pasirinkti laidai buvo gana ilgi, todėl turėjau šiek tiek problemų juos visus įdėti į mažą dėžutę, bet kažkaip man pavyko tai padaryti.

6 žingsnis: Šviesos gaubtas

Šviesos gaubtas
Šviesos gaubtas
Šviesos gaubtas
Šviesos gaubtas
Šviesos gaubtas
Šviesos gaubtas
Šviesos gaubtas
Šviesos gaubtas

Neradau jokių paruoštų sprendimų kaip žibintų dangteliai - kažkokios dėžutės iš saldainių ar pan. Taigi nusprendžiau juos statyti rankomis, tiesiog nupjaudamas dėžutę iš popieriaus.

Dėžutės, kurią pasirinkau, dydis buvo: 20mm x 15mm x 85mm.

Aš išpjoviau skyles taip, kad nukirpčiau tam tikras „žvaigždes“tinkamose vietose, kur buvo šviesos diodai. Aš juos klijavau naudodami dvipusę lipnią juostą.

Norėdami uždengti skaidrius stulpus, galite naudoti tam tikrą nuolatinį žymeklį, neskaidrią lipnią juostelę,… Aš naudoju juodus gėrimų šiaudelius, kuriuos perpjoviau nuo galo iki galo. Tada aš uždengiau polius.

Džiaugiausi galutiniu rezultatu.

7 žingsnis: programinė įranga

Yra daug būdų, kaip nurodyti esamą kūrimo būseną. Aš įgyvendinau tokį elgesį:

Raudona arba žalia lemputė užsidega, kai konstrukcija nesiseka arba atitinkamai praeina. Geltona lemputė mirksi kiekvieną kartą, kai skambinama HTTP, ir nuolat įjungiama, kai šiuo metu kuriamas planas.

Galite lengvai pakeisti įgyvendinimą pagal savo poreikius - pabandykite eksperimentuoti ir patikrinkite, kas tinka jums ir (arba) jūsų komandai.

Prieš įkeldami kodą į „NodeMCU“, turite jį nustatyti. Turite nustatyti ne daugiau kaip 2 „WiFis“.

Taip pat turite nustatyti savo vartotojo žetoną. Norėdami gauti API prieigos raktą, „Jenkins“viršuje dešinėje spustelėkite „Jūsų vartotojo vardas“, tada „Configuration“. Galite rasti mygtuką „Rodyti API prieigos raktą“. Norėdami sukurti pagrindinę autentifikavimo vertę, sukurkite eilutę naudodami šabloną:

USER_NAME: API_TOKEN

ir tada koduokite jį naudodami „Base64“. Pvz. Norėdami gauti aukščiau pateiktą suklastotą eilutę, turėtumėte gauti „Base64“vertę:

VVNFUl9OQU1FOkFQSV9UT0tFTg ==

Taip pat turite nustatyti savo „Jenkins“prieglobos, prievado ir 2 darbų kelius.

Po šio nustatymo ir eskizo įkėlimo - esate pasiruošę naudoti šviesoforus.

Kodą taip pat galima rasti „GitHub“.

8 žingsnis: Paskutiniai žodžiai

Norėdami įjungti įrenginį, tiesiog prijunkite įrenginį prie bet kurio USB lizdo. Prieigai prie interneto naudojama „WiFi“jungtis, todėl bet koks veikiantis USB lizdas yra tinkamas - arba kompiuterio prievadas, arba įkroviklis. Po įkrovos ir prisijungimo prie „WiFi“jūsų šviesoforai pradės rodyti esamą kūrimo būseną.

Manau, kad šie šviesoforai yra labai naudingi. Jie stovi šalia mano monitorių biure ir, kai užsidega raudona lemputė, iškart pastebiu. Man nereikia gaišti laiko, kad patikrintų kūrimo būsenas tiesiai „Jenkins“.

Vienas patobulinimas galėtų būti padarytas naudojant šviesoforo žaislą, o ne statant jį nuo nulio (šiukšlės?).

Tikiuosi, kad rasite įkvėpimo kurti savo „Jenkins“integruotus šviesoforus.

Rekomenduojamas: