Talaan ng mga Nilalaman:

Jenkins Traffic Traffic Light: 8 Hakbang (na may Mga Larawan)
Jenkins Traffic Traffic Light: 8 Hakbang (na may Mga Larawan)

Video: Jenkins Traffic Traffic Light: 8 Hakbang (na may Mga Larawan)

Video: Jenkins Traffic Traffic Light: 8 Hakbang (na may Mga Larawan)
Video: A Brief History of the Nissan Z 2024, Nobyembre
Anonim
Mga ilaw sa trapiko ni Jenkins
Mga ilaw sa trapiko ni Jenkins

Sa software engineering, ang tuluy-tuloy na pagsasama ay ang pagsasanay ng pagsasama ng lahat ng mga gumaganang kopya ng developer sa isang ibinahaging mainline nang maraming beses sa isang araw. Ang ilan sa mga pinakamahusay na kasanayan upang makamit iyon ay:

  • lahat ay pumupunta sa baseline araw-araw,
  • i-automate ang pagbuo,
  • makikita ng lahat ang mga resulta ng pinakabagong build.
  • …at marami pang iba.

Upang matupad lamang ang 3 puntos na ito sa itaas, mahalagang maabisuhan tungkol sa katayuan ng pagbuo nang pinakamabilis hangga't maaari.

Tumutulong ang proyektong ito upang makamit iyon sa pamamagitan ng paglikha ng isang mini, personal na ilaw ng trapiko na nagsasaad ng kasalukuyang katayuan sa pagbuo. Nagtayo ako ng 2 mga hanay ng mga ilaw ng trapiko na isinama sa Jenkins automation server na kung saan ay hinila ng NodeMCU pana-panahon sa pamamagitan ng WiFi.

Hakbang 1: Mga Materyales at Tool

Mga materyal na ginamit ko:

  • NodeMCU (Gumamit ako ng v3) (BangGood.com)
  • Mga kable ng jumper ng tinapay sa Babae na tinapay, (BangGood.com)
  • 2 hanay ng mga LED: pula, dilaw, berde (BangGood.com)
  • 2 set ng 3 resistors (450Ω, 500Ω, 22Ω)
  • 2 manipis ngunit mahabang prototype PCB boards (BangGood.com)
  • microUSB cable bilang isang supply ng kuryente
  • Ilang kahon (Gumamit ako ng isa para sa mga sangkap na de koryente ng boltahe. Nakakita ako ng maraming iba't ibang mga hugis at murang sa aking lokal na tindahan ng tingi ng DIY)
  • 2 panulat o 2 makapal na tubo na 0.5-1cm panloob na lapad; at / o 2 makapal na inuming dayami

Kailangan ng mga tool:

  • Matalim na kutsilyo (hal. Utility kutsilyo para sa paggupit ng karpet)
  • Rotary tool
  • Mainit na glue GUN
  • Istasyon ng paghihinang
  • Mga pllier, diagonal pliers / tagaputol ng gilid
  • Screwdriver
  • Piraso ng makapal na papel
  • Dalawang panig na malagkit na tape
  • Ikaw

Hakbang 2: Mga Ilaw ng Trapiko

Ilaw trapiko
Ilaw trapiko
Ilaw trapiko
Ilaw trapiko
Ilaw trapiko
Ilaw trapiko

Upang makabuo ng mga ilaw trapiko, gumagamit kami ng prototyping board na 20x80mm. Mga panghinang na LED upang nakaposisyon ang mga ito sa isang linya. Ginamit ko ang mga halagang resistor na ito:

  • pula: 510Ω
  • dilaw: 470Ω
  • berde: 22Ω

Ang mga halaga ay higit na mas mataas kaysa sa inirekumenda (20mA max kasalukuyang bawat LED), ngunit ang pag-eksperimento sa iba't ibang mga halaga, ang ilaw ay hindi masyadong maliwanag at lahat din ng 3 ay may katulad na tindi. Mangyaring tandaan na ang boltahe ay 3.3V para sa NodeMCU.

Ang mga kable ay diretso pasulong, ikonekta lamang (solder) cathode ng bawat LED na may risistor at pagkatapos ay maghinang sa male na nagtatapos ng jumper cable. Sa isang bahagi ng pisara ay nais ko lamang ang mga elemento ng LED nang walang anumang iba pang mga "popping up" na mga bahagi tulad ng risistor binti, wire at iba pa. Iyon ang dahilan kung bakit gumamit ako ng isang "pamamaraan" na kung saan ay isang uri ng SMD na gumagamit ng mga bahagi ng PCB.

Iniwan namin ito ng ganito sa ngayon; ang takip ng ilaw ay tapos na sa paglaon.

Hakbang 3: Kahon - Pangunahin

Kahon - Pangunahin
Kahon - Pangunahin
Kahon - Pangunahin
Kahon - Pangunahin
Kahon - Pangunahin
Kahon - Pangunahin

Kailangan naming i-embed ang aming NodeMCU sa ilalim ng kahon. Ang kahon ay nangangailangan ng isang butas para sa microUSB port upang mapalakas namin ang pangunahing yunit. Sinukat ko ang posisyong butas at drill ko lang ito.

Pagkatapos ay ikinabit ko ang mga plastic spacer gamit ang mga turnilyo sa nodemcu. Naglagay ako ng ilang pandikit sa bawat sulok ng kahon at inilagay ko rito ang buong konstruksyon. Matapos itong lumamig, inalis ko ang NodeMCU at naglagay ng dagdag na mainit na pandikit sa paligid ng mga spacer na sigurado akong perpektong nakaposisyon para sa NodeMCU. Kaysa dito, walang gumagalaw sa loob ng kahon at madali nating mailalakip ang microUSB port nang hindi inililipat ang mga bagay sa loob.

Hakbang 4: Box - Lid

Box - Lid
Box - Lid
Box - Lid
Box - Lid
Box - Lid
Box - Lid
Box - Lid
Box - Lid

Una kong sinubukan na gumamit ng isang inuming dayami bilang poste para sa aking mga ilaw trapiko ngunit pagkatapos ng ilang pagsubok, nalaman ko na masyadong manipis ang plastik at kung nais kong gumamit ng isang mainit na pandikit upang ikabit ito, napakalambot lamang at nagbago pa ang hugis nito Kaya't napagpasyahan kong gumamit ng mas mahirap - panulat. Pinili ko ang ilang mga murang transparent pens, na pinutol ko sa nais na haba at naglagay ng 4 na mga kable (1 nang paisa-isa) mula sa mga ilaw ng trapiko sa pamamagitan ng tubo.

Nag-drill ako ng mga butas sa isang gitnang linya ng takip ayon sa diameter ng panulat. Pagkatapos ay naka-embed ako ng mga panulat sa loob ng mga butas at inilagay ko ito sa ibabang bahagi ng takip na sinusubukang panatilihing tuwid ang mga poste.

Naglagay din ako ng isang mainit na pandikit sa tuktok ng poste upang ilakip ang mga board ng ilaw ng trapiko sa mga poste.

Hakbang 5: Pagtitipon

Pagtitipon
Pagtitipon
Pagtitipon
Pagtitipon

Nakakonekta ako sa mga wire sa NodeMCU (pinout):

Kaliwang ilaw ng trapiko:

  • pula sa D2 (GPIO4)
  • dilaw sa D3 (GPIO0)
  • berde sa D4 (GPIO2)
  • ground to GND (Pinili ko lang ang isa sa GND pin ng NodeMCU)

Ilaw ng ilaw ng trapiko:

  • pula sa D5 (GPIO14)
  • dilaw sa D6 (GPIO12)
  • berde hanggang D7 (GPIO13)
  • ground sa GND (Pinili ko lamang ang isa sa GND pin ng NodeMCU)

… at sinara ko ang takip. Ang mga wire na pinili ko ay medyo mahaba kaya't may kaunting problema ako sa paglalagay ng lahat sa loob ng maliit na kahon, ngunit sa paanuman nagawa ko ito.

Hakbang 6: Cover ng Mga ilaw

Cover ng Mga ilaw
Cover ng Mga ilaw
Cover ng Mga ilaw
Cover ng Mga ilaw
Cover ng Mga ilaw
Cover ng Mga ilaw
Cover ng Mga ilaw
Cover ng Mga ilaw

Hindi ko makita ang anumang handa na solusyon bilang mga takip ng ilaw - ilang uri ng mga kahon mula sa mga candies o higit pa. Kaya't napagpasyahan kong itayo ang mga ito sa pamamagitan ng kamay sa pamamagitan lamang ng paggupit ng isang kahon mula sa isang papel.

Ang laki ng kahon na pinili ko ay: 20mm x 15mm x 85mm.

Pinutol ko ang mga butas upang maputol ko ang isang uri ng "mga bituin" sa mga tamang lugar kung saan nakaposisyon ang mga LED. Idinikit ko ang mga ito gamit ang dobleng panig na malagkit na tape.

Upang masakop ang mga transparent na poste, Maaari kang gumamit ng ilang permanenteng marker, nontransparent scotch tape,… Gumamit ako ng mga itim na inuming dayami na pinagputol-putol ko mula sa dulo hanggang dulo. Pagkatapos ay tinakpan ko ang mga poste.

Mas masaya ako sa pangwakas na resulta.

Hakbang 7: Software

Maraming mga diskarte upang ipahiwatig ang kasalukuyang estado ng pagbuo. Ipinatupad ko ang gayong pag-uugali:

Ang pula o berde na ilaw ay nag-iilaw kapag ang pagbuo ay nabigo o dumadaan nang naaayon. Ang dilaw na ilaw ay kumikislap sa tuwing may tawag sa HTTP at konting nakabukas kapag ang isang plano ay kasalukuyang nagtatayo.

Madali mong mababago ang pagpapatupad alinsunod sa Iyong mga pangangailangan - subukang mag-eksperimento at suriin kung ano ang akma sa Iyo at / o Iyong koponan.

Kailangan mong i-set up ang code bago i-upload ito sa Iyong NodeMCU. Kailangan mong itakda ang max 2 WiFis.

Gayundin kailangan mong itakda ang iyong token ng gumagamit. Upang makakuha ng API token, mag-click sa Iyong pangalan ng gumagamit sa kanang itaas sa Jenkins, pagkatapos ay ang Configuration. Maaari kang makahanap ng isang pindutang "Ipakita ang API token". Upang mabuo ang pangunahing halaga ng pagpapatotoo, lumikha ng isang string gamit ang pattern:

USER_NAME: API_TOKEN

at pagkatapos ay i-encode ito gamit ang Base64. Hal. para sa itaas na pekeng string, Dapat kang makakuha ng halaga ng Base64:

VVNFUl9OQU1FOkFQSV9UT0tFTg ==

Kailangan mo ring itakda ang iyong Jenkins host, port at 2 mga landas ng mga trabaho.

Matapos ang pag-set up at pag-upload ng sketch - Handa ka nang gamitin ang Iyong mga ilaw ng trapiko.

Magagamit din ang code sa GitHub.

Hakbang 8: Huling Mga Salita

Upang mapagana ang aparato, ikonekta lamang ang aparato sa anumang USB socket. Gumagamit ito ng koneksyon sa WiFi upang ma-access ang Internet kaya't ang anumang gumaganang USB socket ay OK - alinman sa computer port o charger. Pagkatapos ng pag-boot up at pagkonekta sa WiFi, magsisimulang ipakita ang Iyong mga ilaw ng trapiko sa kasalukuyang katayuan sa pagbuo.

Nakita kong kapaki-pakinabang ang mga ilaw ng trapiko na ito. Nakatayo sila sa tabi ng aking mga monitor sa opisina at tuwing may ilaw na pulang ilaw - napapansin ko agad ito. Hindi ko kailangang mag-aksaya ng oras upang suriin nang direkta ang mga katayuan sa pagbuo sa Jenkins.

Ang isang pagpapabuti ay maaaring magawa sa pamamagitan ng paggamit ng ilang mga laruang ilaw ng trapiko sa halip na pagbuo ng isa sa aking sarili mula sa simula (basura?).

Inaasahan kong Makahanap ka ng ilang inspirasyon upang mabuo ang Iyong sariling isinama na ilaw ng trapiko ng Jenkins.

Inirerekumendang: