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

Arduino 101: Դասընթաց տեխնիկայից. 4 քայլ
Arduino 101: Դասընթաց տեխնիկայից. 4 քայլ

Video: Arduino 101: Դասընթաց տեխնիկայից. 4 քայլ

Video: Arduino 101: Դասընթաց տեխնիկայից. 4 քայլ
Video: How to Make a Mini Robot bug 2024, Հուլիսի
Anonim
Arduino 101: Դասընթաց տեխնիկական տղայից
Arduino 101: Դասընթաց տեխնիկական տղայից

Հուսով եմ, որ շատ մարդիկ, հատկապես նորեկները, ովքեր ցանկանում են սուզվել Արդուինոյի աշխարհում, այս և իմ մյուս հոդվածները/հրահանգները (որոնք ես պարբերաբար տեղադրելու եմ) օգտակար կիմանան:

Սա նման չէր սովորական Պատճենահանման և տեղադրման դասերին: Դա շատ ավելին կլիներ, քան.

Ողջու՜յն! Ես հռոմեացի եմ և միջին PHP ծրագրավորող եմ:

Սա որոշակի նախապատմություն կստանա, այնպես որ, եթե ցանկանում եք գնալ հաջորդ քայլին, պարզապես ոլորեք ներքև դեպի Պահանջները:

Ես ծրագրավորում եմ սկսել 10 տարեկանից: և դա իսկապես մեծ ազդեցություն թողեց ինձ վրա: Քանի որ դա այդքան հետաքրքիր էր, ես չէի հավատում: Բացի այդ, իմ տարիքի շատ տղաներ չեն կարողացել նման հմտություններ դրսևորել դպրոցում: Դեռևս այն ժամանակ, երբ մենք սկսել էինք ինֆորմատիկա, որպես առարկա և ծրագրավորում սովորել դասընթացի ընթացքում:

Այսպիսով, ես պարզապես ուզում էի օգնել մարդկանց: Նրանց կյանքը հեշտացնելու և որոշ գործիքներ տրամադրելու համար, ինչը կօգնի նրանց դուրս գալ առօրյայից և լուծել ինչ -որ խնդիրներ: Եվ 2 տարի առաջ ես հանդես եկա Arduino- ով, որպես հավելում:

Հետո, ես որոշեցի գնալ ինչ -որ դասընթացով և ստեղծել այնպիսի բաներ, ինչպիսին այս մեկն է: Ավելի ուշ, ես տեսանյութեր եմ պատրաստելու Youtube- ում, որտեղ դուք կկարողանաք տեսնել, թե ինչպես կարգավորել և անել ամեն ինչ, որպեսզի կատարյալ համընկնի:

Բայց այստեղ, դուք ինձանից ավելի շատ կստանաք կոդի կարևորության մասին: Թեժ է ճիշտ կառուցել կոդը, որոնք են ծրագրավորման սկզբունքները և ինչու են դրանք կարևոր: Այն ամենը, ինչ մենք անում ենք, ճարտարագիտություն է: Եվ սխալվելու տեղ չկա: Այսպիսով, կարդացեք հստակ և եթե որոշ հարցեր կգտնեք, պարզապես դրեք դրանք մեկնաբանությունների մեջ:

Քայլ 1: Տեղադրեք անհրաժեշտ ծրագրակազմ/Ստացեք անհրաժեշտ սարքավորում

Մշակման գործընթացը սկսելու համար ձեզ հարկավոր է.

Ծրագրային ապահովում

- Visual Studio կոդ

- Platform. IO

Սարքավորումներ

- Arduino տախտակներից մեկը (Mega 2560, Nano, Leonardo և այլն)

- Breadboard

-Dupont լարեր (տղամարդ-տղամարդ)

- տարբեր անվանական դիմադրիչներ

- RGB լուսարձակներ

- Disուցադրություններ և այլն

Քայլ 2. mingրագրավորման սկզբունքներ

Եթե ցանկանում եք գրել արդյունավետ և հասկանալի ծածկագիր, ապա պետք է ավելին իմանալ ծրագրավորման սկզբունքների մասին: Մեր նախագծերի օրինակներում մենք հետևելու ենք հետևյալ սկզբունքներին.

- ԿՈOLՅՐ

- ՉՈՐ (Մի կրկնիր ինքդ քեզ)

- KISS (Պահիր դա այնքան պարզ)

- ՅԱԳՆԻ (Դուք դրա կարիքը չեք ունենա)

Ի՞նչ են SOLID- ը:

SOLID- ը կարող է արտագրվել հետևյալ կերպ.

- [S] Մեկ պատասխանատվություն (Յուրաքանչյուր դաս պատասխանատու է մի տեսակի համար)

- [O] Բաց-փակ սկզբունք (դասերը կամ առարկաները բաց են երկարաձգման, բայց փոփոխման համար)

- [L] Լիսկովի փոխարինում (դասերը և առարկաները կարող են փոխարինվել իրենց ենթատեսակներով ՝ առանց վնասների)

- [I] Ինտերֆեյսի տարանջատում (Ավելի լավ է ունենալ ավելի մասնագիտացված ինտերֆեյսեր ՝ մեկ ունիվերսալ ունենալու փոխարեն)

- [D] Կախվածության հակադարձում (դասերը պետք է կառուցվեն վերացությունների վրա)

Ի՞նչ են DRY- ը:

ՉՈՐԵԼ նշանակում է Մի կրկնիր ինքդ քեզ: Այսպիսով, երբ դուք ինչ -որ լուծում եք տալիս և տեսնում եք, որ կան որոշ նույն մեթոդներ. Պարզապես ստեղծեք օգնական դաս այդ մեթոդներով (նույնիսկ հնարավոր է ստատիկորեն զանգահարել) `հնարավորինս պարզ պահելու համար: Բայց այս մեկն այլ պատմություն է:

Ի՞նչ են KISS- ը:

KISS- ը հանդես է գալիս Keep It So Simple- ի համար: Դա նշանակում է, որ ձեր բոլոր լուծումները պետք է ունենան հնարավորինս քիչ տող կոդ, բայց նաև չբարդացնեն ամբողջ դասարանը:

Ի՞նչ են YAGNI- ն:

YAGNI- ն հանդես է գալիս You Are Not Gonna Need it- ի օգտին: Դա նշանակում է, որ դուք պետք է կառուցեք դասեր և ֆունկցիոնալություն այդ կերպ, թե ինչից է այն կամ հիմնականում օգտագործվելու: Որովհետև եթե դա չլիներ, ապա ապահով կերպով հեռացրեք, քանի որ դրա կարիքը չունեք: Պարզ.

Փորձեք հնարավորինս մաքուր պահել ձեր ծածկագիրը:

Քայլ 3: Նախագծեր

Այս քայլը կպարունակի և շարունակվելու է, քանի որ օրինակներով և գրադարաններով նախագծերի շնորհիվ Դուք կկարողանաք պատառաքաղել և օգտագործել:

Բացի այդ, ես կփորձեմ ընդլայնում ստեղծել VS Code- ի համար, որպեսզի կարողանաք ներբեռնել անհրաժեշտ ֆայլերը ձեր նախագծում:

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

  • Պարզ LED լամպերի վերահսկում
  • LED- ի + պոտենցիոմետր (պոտենցիոմետրի արժեքների դինամիկ քարտեզավորում LED- ների հաշվին)
  • Պարզ եղանակային կայան (v1; Խոնավություն + ջերմաստիճան)
  • Ընդլայնված եղանակային կայան ՝ LCD 1602 (v2)
  • Ընդլայնված եղանակային կայան v2 + կարգավորումներ (v3)
  • Ընդլայնված եղանակային կայան v3 + IR (ինֆրակարմիր հեռակառավարման վահանակ) displayուցադրման համար (v4)
  • Ընդլայնված եղանակային կայան v4 + Showingույց տալ վիճակը LED- ով (v5)
  • Պարզ RFID ընթերցող (v1)
  • Ընդլայնված RFID Reader v1 w/ Տվյալների ցուցադրում LCD 1602 և 0.91 'OLED էկրանով (I2C) (v2)
  • Ընդլայնված RFID Reader v2 w/ Relay Control (v3)
  • Պարզ մեկ SIM քարտ (v1)
  • Ընդլայնված մեկ SIM կայան ՝ 0.91 'OLED էկրանով (v2)
  • Ընդլայնված երկ SIM քարտ ՝ 0.91 'OLED էկրանով (v1)
  • Ընդլայնված Dual-SIM Station v1 առանց SMS ուղարկելու
  • Վաճառող մեքենա
  • Պարզ RGB Strip WS8212b Control (v1)
  • Advanced RGB Strip WS8212b Control v1 w/ Colors + Brightness control (Potentiometer + Buttons) (v2)
  • Ընդլայնված RGB Strip WS8212b Control v1 IRVending մեքենայով

Բոլոր նախագծերն ու գրադարանները հասանելի կլինեն GitHub- ում:

Քայլ 4. Հրապարակվող առաջիկա նախագծերը

20 մարտի 7-8- Պարզ LED լամպերի կառավարում- LED- ներ + պոտենցիոմետր (պոտենցիոմետրի արժեքների դինամիկ քարտեզագրում LED- ների հաշվին)

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