Բովանդակություն:

Enենկինսի աշխատանքի լուսացույցներ. 8 քայլ (նկարներով)
Enենկինսի աշխատանքի լուսացույցներ. 8 քայլ (նկարներով)

Video: Enենկինսի աշխատանքի լուսացույցներ. 8 քայլ (նկարներով)

Video: Enենկինսի աշխատանքի լուսացույցներ. 8 քայլ (նկարներով)
Video: Hellfire (Directors Commentary) 2024, Հուլիսի
Anonim
Jenkins Job Traffic Lights
Jenkins Job Traffic Lights

Softwareրագրային ապահովման ճարտարագիտության մեջ շարունակական ինտեգրումը մշակողի բոլոր աշխատանքային պատճեններն օրական մի քանի անգամ միացնելու պրակտիկա է: Դրան հասնելու լավագույն փորձերից են.

  • բոլորն ամեն օր կատարում են ելակետը,
  • ավտոմատացնել շինարարությունը,
  • բոլորը կարող են տեսնել վերջին կառուցումների արդյունքները:
  • … Եվ շատ ուրիշներ:

Վերոնշյալ ընդամենը 3 կետերը կատարելու համար կարևոր է հնարավորինս արագ տեղեկացվել կառուցման կարգավիճակի մասին:

Այս նախագիծը օգնում է դրան հասնել ՝ ստեղծելով մինի, անձնական լուսացույցներ, ինչը ցույց է տալիս ներկայիս կառուցման կարգավիճակը: Ես կառուցել եմ լուսացույցների 2 հավաքածու, որոնք ինտեգրված են Jenkins ավտոմատացման սերվերին, որը պարբերաբար քաշվում է NodeMCU- ի միջոցով WiFi- ի միջոցով:

Քայլ 1: Նյութեր և գործիքներ

Օգտագործված նյութեր.

  • NodeMCU (ես օգտագործել եմ v3) (BangGood.com)
  • Արականից իգական տախտակի ցատկող մալուխներ, (BangGood.com)
  • LED- ների 2 հավաքածու ՝ կարմիր, դեղին, կանաչ (BangGood.com)
  • 3 դիմադրության 2 հավաքածու (450Ω, 500Ω, 22Ω)
  • 2 բարակ, բայց երկար PCB տախտակի նախատիպ (BangGood.com)
  • microUSB մալուխը որպես սնուցման աղբյուր
  • Ինչ -որ տուփ (ես օգտագործել եմ մեկը էլեկտրական բարձրավոլտ բաղադրիչների համար: Ես գտա շատ տարբեր ձևեր և էժան իմ տեղական DIY մանրածախ խանութում)
  • 2 գրիչ կամ 2 հաստ խողովակ 0.5-1 սմ ներքին տրամագծով; և/կամ 2 հաստ խմիչքի ծղոտ

Անհրաժեշտ գործիքներ.

  • Սուր դանակ (օրինակ ՝ գորգ կտրելու համար օգտակար դանակ)
  • Պտտվող գործիք
  • Տաք սոսինձ ատրճանակ
  • Sոդման կայան
  • Տափակաբերան աքցան, անկյունագծային տափակաբերան աքցան/կողային կտրիչներ
  • Պտուտակահան
  • Հաստ թղթի կտոր
  • Երկկողմանի սոսինձ ժապավեն
  • Դու

Քայլ 2: Լուսացույցներ

Լուսաֆորներ
Լուսաֆորներ
Լուսաֆորներ
Լուսաֆորներ
Լուսաֆորներ
Լուսաֆորներ

Լուսացույցեր կառուցելու համար մենք օգտագործում ենք նախատիպի տախտակ 20x80 մմ: LEDոդեք LED- ները, որպեսզի դրանք տեղադրվեն գծի մեջ: Ես օգտագործել եմ այս դիմադրության արժեքները.

  • կարմիր: 510Ω
  • դեղին ՝ 470Ω
  • կանաչ: 22Ω

Արժեքները շատ ավելի բարձր են, քան առաջարկվում է (20 մԱ առավելագույն հոսանք մեկ LED- ի համար), բայց փորձարկելով տարբեր արժեքներ, լույսը չափազանց պայծառ չէ, ինչպես նաև երեքն էլ ունեն նույն ինտենսիվությունը: Խնդրում ենք նկատի ունենալ, որ NodeMCU- ի համար լարումը 3.3 Վ է:

Հաղորդալարն ուղիղ առաջ է, պարզապես միացրեք (կպցրեք) յուրաքանչյուր LED- ի կաթոդը դիմադրիչով, այնուհետև զոդեք մալուխի արական վերջավորությանը: Գրատախտակի մի կողմում ես ուզում էի միայն LED տարրեր, առանց որևէ այլ մասերի, ինչպիսիք են դիմադրության ոտքերը, լարերը և այլն: Ահա թե ինչու ես օգտագործել եմ «տեխնիկա», որը մի տեսակ SMD է ՝ օգտագործելով PCB բաղադրիչները:

Առայժմ թողնում ենք այսպես. լույսերի ծածկը ավելի ուշ կկատարվի:

Քայլ 3. Տուփ - Հիմնական

Տուփ - Հիմնական
Տուփ - Հիմնական
Տուփ - Հիմնական
Տուփ - Հիմնական
Տուփ - Հիմնական
Տուփ - Հիմնական

Մենք պետք է մեր NodeMCU- ն ներդնենք տուփի ներքևում: Տուփին անհրաժեշտ է անցք microUSB պորտի համար, որպեսզի մենք կարողանանք սնուցել հիմնական միավորը: Ես չափավոր կերպով չափեցի անցքի դիրքը, և ես պարզապես այն փորեցի:

Հետո պտուտակներով պլաստմասսայե անջատիչները կցեցի նոդեմկուին: Տուփի յուրաքանչյուր անկյունում ես մի քիչ սոսինձ դրեցի և ամբողջ շինությունը դրեցի դրա վրա: Այն սառչելուց հետո ես պտուտակեցի NodeMCU- ն և մի քանի լրացուցիչ տաք սոսինձ դրեցի անջատիչների շուրջը, որոնք վստահ էի, որ կատարյալ տեղադրված էին NodeMCU- ի համար: Շնորհիվ այս ամենի, տուփի ներսում ոչինչ չի տատանվում, և մենք կարող ենք հեշտությամբ ամրացնել microUSB նավահանգիստը ՝ առանց իրերը ներս տեղափոխելու:

Քայլ 4: Տուփ - կափարիչ

Տուփ - կափարիչ
Տուփ - կափարիչ
Տուփ - կափարիչ
Տուփ - կափարիչ
Տուփ - կափարիչ
Տուփ - կափարիչ
Տուփ - կափարիչ
Տուփ - կափարիչ

Սկզբում ես փորձեցի օգտագործել լուսադիոդների համար նախատեսված ձողերը, բայց որոշ փորձարկումներից հետո պարզեցի, որ պլաստմասսան չափազանց բարակ է, և երբ ուզում էի տաք սոսինձ օգտագործել այն ամրացնելու համար, այն պարզապես փափուկ դարձավ և նույնիսկ փոխվեց: դրա ձևը: Այսպիսով, ես որոշեցի օգտագործել ավելի դժվար բան `գրիչներ: Ես ընտրել եմ մի քանի էժան թափանցիկ գրիչներ, որոնք ես կտրել եմ ցանկալի երկարությամբ և 4 մալուխ (մեկական անգամ) լուսացույցներից հանել խողովակի միջով:

Կափարիչի միջին գծում անցքեր եմ փորել `ըստ գրիչի տրամագծի: Հետո ես գրիչներ տեղադրեցի անցքերի ներսում և դրանք տաք սոսնձեցի կափարիչի ներքևի մասում ՝ փորձելով ձողերը ուղիղ պահել:

Ես նաև տաք սոսինձ դրեցի ձողի վերևում `լուսացույցների տախտակները սյուներին ամրացնելու համար:

Քայլ 5: Հավաքում

Հավաքում
Հավաքում
Հավաքում
Հավաքում

Ես լարերը միացրեցի NodeMCU- ին (pinout).

Ձախ լուսացույց.

  • կարմիրից մինչև D2 (GPIO4)
  • դեղինից մինչև D3 (GPIO0)
  • կանաչից մինչև D4 (GPIO2)
  • գետնին GND (ես պարզապես ընտրեցի NodeMCU- ի GND կապից մեկը)

Ուղիղ լուսացույց.

  • կարմիրից մինչև D5 (GPIO14)
  • դեղինից մինչև D6 (GPIO12)
  • կանաչից մինչև D7 (GPIO13)
  • հիմք դեպի GND (ես պարզապես ընտրեցի NodeMCU- ի GND կապից մեկը)

… Եվ ես փակեցի կափարիչը: Իմ ընտրած լարերը բավականին երկար էին, այնպես որ ես փոքր խնդիրներ ունեի դրանք բոլորը փոքր տուփի մեջ դնելու հետ, բայց ինչ -որ կերպ դա ինձ հաջողվեց:

Քայլ 6: Լույսերի ծածկոց

Լույսերի ծածկոց
Լույսերի ծածկոց
Լույսերի ծածկոց
Լույսերի ծածկոց
Լույսերի ծածկոց
Լույսերի ծածկոց
Լույսերի ծածկոց
Լույսերի ծածկոց

Ես չկարողացա գտնել որևէ պատրաստ լուծում ՝ որպես լուսատուների ծածկոցներ ՝ կոնֆետներից ինչ -որ տուփեր և այլն: Այսպիսով, ես որոշեցի դրանք ձեռքով կառուցել `պարզապես մի տուփ թղթից կտրելով:

Իմ ընտրած տուփի չափսերն էին ՝ 20 մմ x 15 մմ x 85 մմ:

Ես կտրեցի անցքերը այնպես, որ ես մի տեսակ «աստղեր» կտրեցի համապատասխան վայրերում, որտեղ LED- ները տեղադրված էին: Ես դրանք սոսնձեցի երկկողմանի սոսինձ ժապավենով:

Թափանցիկ բևեռները ծածկելու համար կարող եք օգտագործել որոշ մշտական նշիչ, ոչ թափանցիկ սկոտչե ժապավեն,… Ես օգտագործել եմ սև խմիչքների ծղոտներ, որոնք կտրել եմ ծայրից ծայր: Հետո ծածկեցի ձողերը:

Ես ավելի քան ուրախ էի վերջնական արդյունքի համար:

Քայլ 7:.րագրակազմ

Կան բազմաթիվ մոտեցումներ `ներկայիս կառուցման վիճակը նշելու համար: Ես վարեցի նման վարքագիծ.

Կարմիր կամ կանաչ լույսը վառվում է, երբ կառուցվածքը խափանում է կամ անցնում համապատասխանաբար: Դեղին լույսը թարթում է ամեն անգամ, երբ կատարվում է HTTP զանգ և անընդհատ միանում է, երբ պլանը ներկայումս կառուցվում է:

Դուք կարող եք հեշտությամբ փոխել կատարումը ՝ ըստ Ձեր կարիքների. Փորձեք փորձարկել և ստուգել, թե ինչն է համապատասխանում Ձեզ և/կամ Ձեր թիմին:

Նախքան ձեր NodeMCU- ում բեռնելը, դուք պետք է կարգավորեք կոդը: Դուք պետք է սահմանեք առավելագույնը 2 WiFis:

Նաև պետք է սահմանեք ձեր օգտվողի նշանը: API նշանը ստանալու համար կտտացրեք Jenkins- ի վերևի աջ մասում գտնվող Ձեր օգտվողի անվան վրա, այնուհետև ՝ կազմաձևման: Կարող եք գտնել «Showույց տալ API նշանը» կոճակը: Ստեղծելու համար նույնականացման հիմնական արժեքը, ստեղծեք տող ՝ օգտագործելով օրինակը.

USER_NAME ՝ API_TOKEN

և այն կոդավորեք ՝ օգտագործելով Base64- ը: Օրինակ ՝ վերը նշված կեղծ տողի համար դուք պետք է ստանաք Base64 արժեքը.

VVNFUl9OQU1FOkFQSV9UT0tFTg ==

Դուք նաև պետք է սահմանեք ձեր Jenkins հյուրընկալողի, նավահանգստի և 2 աշխատատեղերի ուղիներ:

Այս կարգավորումից և ուրվագիծը վերբեռնելուց հետո - Դուք պատրաստ եք օգտագործել ձեր լուսացույցները:

Կոդը հասանելի է նաև GitHub- ում:

Քայլ 8: Վերջին բառեր

Սարքը միացնելու համար պարզապես միացրեք սարքը ցանկացած USB վարդակից: Այն օգտագործում է WiFi միացում ՝ ինտերնետ մուտք գործելու համար, այնպես որ ցանկացած աշխատող USB վարդակից կարգին է ՝ կամ համակարգչի միացում, կամ լիցքավորիչ: Գործարկումից և WiFi- ին միանալուց հետո ձեր լուսացույցները կսկսեն ցույց տալ ընթացիկ կառուցման կարգավիճակը:

Ես գտնում եմ, որ այս լուսացույցները շատ օգտակար են: Նրանք կանգնած են գրասենյակում գտնվող իմ մոնիտորների կողքին և երբ կարմիր լույս է վառվում, ես դա անմիջապես նկատում եմ: Ինձ պետք չէ ժամանակ կորցնել ՝ անմիջապես enենկինսի վրա կառուցման կարգավիճակները ստուգելու համար:

Մեկ բարելավում կարելի է անել ՝ օգտագործելով լուսացույցի խաղալիք ՝ զրոյից ինքնուրույն կառուցելու փոխարեն (աղբ):

Հուսով եմ, որ դուք որոշակի ոգեշնչում կգտնեք ՝ կառուցելու ձեր սեփական Jenkins ինտեգրված լուսացույցերը:

Խորհուրդ ենք տալիս: