Агуулгын хүснэгт:

Arduino 101: Техникийн залуугийн курс: 4 алхам
Arduino 101: Техникийн залуугийн курс: 4 алхам

Видео: Arduino 101: Техникийн залуугийн курс: 4 алхам

Видео: Arduino 101: Техникийн залуугийн курс: 4 алхам
Видео: Хичээл 1-2 : програмчлалыг энгийнээр зүйрлэвэл ... 2024, Долдугаар сарын
Anonim
Arduino 101: Техникийн залуугийн курс
Arduino 101: Техникийн залуугийн курс

Ардуиногийн ертөнцөд шумбахыг хүсч буй олон хүмүүс, ялангуяа шинэхэн хүмүүс энэ болон бусад нийтлэлүүд/зааварчилгаа (би үүнийг тогтмол нийтлэх гэж байгаа) хэрэгтэй болно гэж найдаж байна.

Энэ нь ердийн Copy-&-Paste хичээлүүд шиг биш байх болно. Үүнээс хамаагүй илүү байх болно.

Сайн байна уу! Би Роман, би PHP -ийн дунд түвшний хөгжүүлэгч.

Энэ нь өмнөх түүхийг авах болно, тиймээс хэрэв та дараагийн алхам руу орохыг хүсвэл доошоо гүйлгэж Шаардлага руу орно уу.

Би 10 настай байхдаа програмчилж эхэлсэн. мөн энэ нь надад үнэхээр том нөлөө үзүүлсэн. Энэ нь үнэхээр сонирхолтой байсан тул би итгэж чадахгүй байв. Түүнээс гадна, миний үеийн залуус тийм ч олон ур чадвараа сургууль дээрээ харуулж чадаагүй. Хичээлийн хүрээнд информатик, хичээл, програмчлалыг сурч эхлэхээс өмнө байсан.

Тиймээс би хүмүүст туслахыг л хүссэн юм. Тэдний амьдралыг хөнгөвчлөх, зарим арга хэрэгслээр хангах нь тэдэнд ердийн дэглэмийг зөрчиж, зарим асуудлыг шийдвэрлэхэд туслах болно. Тэгээд 2 жилийн өмнө би нэмэлт болгон Arduino -ийг гаргаж ирсэн.

Дараа нь би ямар нэгэн курс хийж, ийм зүйл бүтээхээр шийдсэн. Хожим нь би Youtube дээр видеог хийх болно, тэндээс та төгс тохирохын тулд хэрхэн яаж тохируулах, хэрхэн хийхийг харах боломжтой болно.

Гэхдээ энд та надаас кодын талаар илүү ихийг олж мэдэх болно. Кодыг зөв зохистой зохион байгуулах нь програмчлалын зарчим гэж юу вэ, яагаад чухал вэ? Бидний хийж буй бүх зүйл бол инженерчлэл юм. Мөн алдаа гаргах газар байхгүй. Тиймээс, тодорхой уншаарай, хэрэв танд ямар нэгэн асуулт байвал тайлбар дээр бичээрэй.

Алхам 1: Шаардлагатай програм хангамжийг суулгах/шаардлагатай тоног төхөөрөмжийг авах

Хөгжлийн процессыг эхлүүлэхийн тулд танд дараахь зүйлс хэрэгтэй болно.

Програм хангамж

- Visual Studio код

- Платформ. IO

Техник хангамж

- Arduino самбаруудын нэг (Mega 2560, Nano, Leonardo, гэх мэт)

- Талхны самбар

-Dupont утас (Эрэгтэй-Эр)

- Янз бүрийн нэрлэсэн эсэргүүцэл

- RGB LED

- Дэлгэц гэх мэт

Алхам 2: Програмчлалын зарчим

Хэрэв та үр ашигтай, ойлгомжтой код бичихийг хүсч байвал програмчлалын зарчмуудын талаар илүү ихийг мэдэх хэрэгтэй. Төслийнхөө жишээн дээр бид дараах зарчмуудыг баримтлах болно.

- ХАТУУ

- Хуурай (өөрийгөө давтах хэрэггүй)

- KISS (Үүнийг маш энгийн байлгаарай)

- YAGNI (танд хэрэггүй болно)

SOLID гэж юу вэ?

SOLID -ийг дараах байдлаар хөрвүүлж болно.

- [S] Нэг хариуцлага

- [O] Нээлттэй хаалттай зарчим (Ангилал эсвэл обьектуудыг сунгах боломжтой боловч өөрчлөх боломжтой)

- [L] Лисковын орлуулалт (Ангилал, Объектуудыг дэд төрлөөр нь гэмтээхгүйгээр сольж болно)

- [I] Интерфэйсийг тусгаарлах (Нэг универсал байхын оронд илүү нарийн мэргэжлийн интерфэйстэй байх нь дээр)

- [D] Хараат байдлын урвуу байдал (Ангийг хийсвэрлэл дээр үндэслэсэн байх ёстой)

DRY гэж юу вэ?

Хуурай гэдэг нь өөрийгөө битгий давт. Тиймээс, хэрэв та ямар нэгэн шийдэл гаргаж, ижил төстэй арга байдгийг олж мэдвэл аль болох энгийн байлгахын тулд эдгээр аргуудын тусламжтайгаар туслах анги хий (статикаар дуудах боломжтой ч гэсэн). Гэхдээ энэ бол өөр түүх юм.

KISS гэж юу вэ?

KISS нь "Үүнийг маш энгийн байлга" гэсэн утгатай. Энэ нь таны бүх шийдэл кодын аль болох бага мөртэй байх ёстой, гэхдээ бүхэл бүтэн ангиудыг хэтрүүлж болохгүй гэсэн үг юм.

YAGNI гэж юу вэ?

YAGNI нь танд хэрэггүй гэж дэмждэг. Энэ нь та анги, функцийг ийм байдлаар бүтээх ёстой гэсэн үг бөгөөд энэ бүхэн эсвэл ихэнх нь ашиглагдах болно. Учир нь хэрэв тийм биш байсан бол танд хэрэггүй гэж үзээд аюулгүйгээр арилгаарай. Энгийн.

Кодыг аль болох цэвэр байлгахыг хичээ.

Алхам 3: Төслүүд

Жишээнүүд болон номын сантай төслүүдийн ачаар та энэ алхамыг хийх бөгөөд үргэлжлүүлэх болно.

Нэмж дурдахад би VS кодын өргөтгөлийг бий болгохын тулд танд шаардлагатай libs -ийг өөрийн төсөлд татаж авах боломжтой болгохыг хичээх болно.

Холбоосгүй төслүүд хараахан хэрэгжиж амжаагүй байгаа бөгөөд ойрын ирээдүйд хийгдэх болно гэдгийг санаарай. Би чадах чинээгээрээ мэдээлэл өгөх заавар өгөхийг хичээж байна. Тэгээд дараа нь - Би видео бичлэг хийж, танд дагаж мөрдөх заавар болгон оруулах болно.

  • Энгийн LED чийдэнг хянах
  • LED + потенциометр (потенциометрийн утгыг LED тоонуудын динамик зураглал)
  • Энгийн цаг уурын станц (v1; Чийгшил + Температур)
  • Нарийвчилсан цаг агаарын станц w/ LCD 1602 (v2)
  • Нарийвчилсан цаг агаарын станц v2 + Тохиргоо (v3)
  • Нарийвчилсан цаг агаарын станц v3 + IR (хэт улаан туяаны алсын удирдлага) дэлгэцийн хяналт (v4)
  • Нарийвчилсан цаг агаарын станц v4 + LED -тэй байдлыг харуулав (v5)
  • Энгийн RFID уншигч (v1)
  • Нарийвчилсан RFID уншигч v1 w/ Өгөгдлийг LCD 1602 ба 0.91 'OLED дэлгэц (I2C) дээр харуулдаг (v2)
  • Дэвшилтэт RFID Reader v2 w/ Relay Control (v3)
  • Энгийн ганц SIM станц (v1)
  • Нарийвчилсан ганц SIM станц, 0.91 'OLED дэлгэцтэй (v2)
  • 0.91 'OLED дэлгэцтэй, хоёр SIM картын дэвшилтэт станц (v1)
  • Дэвшилтэт хос SIM станц v1, SMS илгээх
  • Автомат машин
  • Энгийн RGB Strip WS8212b хяналт (v1)
  • Нарийвчилсан RGB Strip WS8212b Control v1 w/ Color + Brightness control (Потенциометр + Товчнууд) (v2)
  • IRVending машинтай дэвшилтэт RGB Strip WS8212b Control v1

Бүх төсөл, номын санг GitHub дээр ашиглах боломжтой болно.

Алхам 4: Ирэх төслүүдээ нийтлэх болно

7-8 Гуравдугаар сар '20- Энгийн LED чийдэнг хянах- LED + потенциометр (потенциометрийн утгыг LED тоонуудын динамик зураглал)

Зөвлөмж болгож буй: