Bu yazımızda ilk Arduino layihəmizi- “Yanıb-Sönən LED işıq” sistemi hazırlayacağıq. Hazırlanmış layihə LED işıqları sizin təyin etdiyiniz zaman ərzində yandıracaq, daha sonra isə söndürəcək. Layihəyə keçid etməzdən əvvəl, əgər Arduino haqqında məlumatınız yoxdursa, aşağıdakı linkdən Arduino və onun imkanları haqqındakı məqaləmizi nəzərdən keçirməyiniz tövsiyyə olunur.
Link: https://www.edtech.az/blog/arduino-nedir-arduino-ile-ne-hazirlamaq-olar
Layihənin hazırlanması üçün tövsiyyə olunan resurslar:
Arduino Uno
Breadboard
LED işıq
Müqavimət -rezistor
Birləşdirici kabel
Sadə dövrənin qurulması
İlk növbədə Arduino lövhənizə nəzər yetirin. Lövhənin üzərində 13 rəqəmi ilə işarələnmiş rəqəmsal pin görəcəksiniz. Arduino mikrokontrollerinin üzərindəki 13 nömrəli rəqəmsal pin “built-in LED pin” i adlanır. Bu pinin Built-in LED pini adlandırılmasının əsas səbəbi heç bir əlavə tələb olmadan LED işıqları avtomatik yandırıb söndürə bilməsidir.
İstifadə edəcəyimiz LED işığı götürək. LED işığın uzun ayağı birləşdirici kabel vasitəsi ilə 13 nömrəli rəqəmsal pinə, nisbətən qısa olan ayağını isə GND pininə birləşdirək. Əgər arzu etsəniz LED işığı bir başa Arduino lövhəsinin üzərinə də yerləşdirə bilərsiniz. Başqa bir formada elementləri breadboard üzərində də yerləşdirməklə bənzər dövrəni qura bilərsiniz.
Dövrəni hazırladıqdan sonra, gəlin onu proqramlaşdırmağa çalışaq. Əgər kompüterinizdə Arduino proqramı quraşdırılıbsa, o zaman File bölməsindən Examples- Basics- Blink menyusunu seçin. Bu zaman aşağıdakı kimi kod sətirləri açılacaqdır.
Proqram nümunəsini açdıqdan sonra sizin qarşınıza şəkildəki koda bənzər kod sətrləri çıxacaqdır. Bu kod sətirlərini nəzərdən keçirək. // işarəsindən sonra və /* … */ işarələri arasında yazılan sətrlər şərh adlanır. Şərhlər proqramın axışını dəyişmir, lakin cari istifadəçiyə və ya proqramı daha sonra istifadə edəək şəxslərə qeydlər və məlumatlar təqdim etmək üçün istifadə edilir. Şərhlər sizin proqramınızı daha anlaşıqlı edir. Şərhlər sadəcə izahat xarakteri daşıdığı üçün gəlin əsas kod sətirlərini nəzərdən keçirək.
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}
Arduino void setup() hissəsində yazılan kodlar cəmi bir dəfə qurğu işə salındıqda, void loop () hissəsində yazılan kodlar isə qurğu enerji təminatı təkrar olunana və ya istifadəçi tərəfindən dayandırılana qədər icra edilir.
Void setup () hissəsində yazılmış pinMode (LED_BUILTIN, OUTPUT); - kod sətri göstərir ki LED işığın birləşdirildiyi built-in LED pini xaricetmə OUTPUT rejimində işləyəcəkdir.
digitalWrite(LED_BUILTIN, HIGH); -kod sətri 13 cü pinin dəyərini HIGH, 5V təyin edir. Bəzi proqramlarda HIGH sözü əvəzinə 1 rəqəmi də istifadə olunur. Bu yazılmış komanda nəticəsində LED işıq yanır və delay(1000) komandası onu 1000 millisaniyə yəni 1 saniyə müddətində yanılı saxlayır.
Daha sonra digitalWrite(LED_BUILTIN, LOW) komandası 13 cü pini LOW, 0 təyin edir. Nəticədə LED işıq sönür və delay(1000); 1000 millisaniyə- 1 saniyəyə bərabər zaman qədər gözləmə komandası ilə LED işıq sönülü halda saxlanılır. Yazılmış kod void loop () içərisində olduğuna görə proses Arduino güc mənbəyindən ayrılana kimi davam edə bilər.
Hazır proqramı ilk öncə Verify düyməsi ilə səhv olub olmadığını yoxlayırıq. Daha sonra Uplaod düyməsi ilə Arduino qurğusuna köçürürük. Bunun üçün proqram təminatında Tools hissəsində Arduino Board növünün Uno olduğundan və qoşulu portun seçili olduğundan əmin olun. USB vasitəsi ilə Arduino lövhənizi kompüterə birləşdirin və köçür düyməsi ilə hazırlanmış proqramı Arduino qurğunuza köçürün. Əgər dövrəmizi düzgün qurmuşuqsa və proqram təminatında problem yoxdursa LED işıq yanıb-sönməyə başlayacaq.
Bəzi layihələrdə iki və daha çox LED işıqlardan istifadə lazım gəlir. Arduino qurğusunun üzərində isə cəmi bir ədəd Built-in LED pin mövcuddur. Bu səbəblərdən də layihələrimzidə digər pinlərdən də istifadə etməliyik. Gəlin indi layihəmizdə kiçik dəyişiklik edək.
LED işığı13 Pinindən ayıraq və hər hansısa rəqəmsal Pin ə birləşdirək. Deyək ki, yeni istifadə edəcəyimiz pin Rəqəmsal Pin 8- dir. Proqramda “LED_BUILTIN” Pin adını 8 ilə əvəz edək.
Arduino qurğumuz 5V gərginliklə işləyir. Layihədə istifadə etdiyimiz LED işıqlar isə 20 milli Amper ilə çalışır. Əgər biz LED işığı bir başa Arduino pininə birləşdirsək bu zaman Arduino lövhəmiz və ya LED işığımız ziyan görə bilər. Bu səbəbdən dövrələrdə cərəyan şiddətini tənzimləmək üçün rezistordan istifadə edilir. Om qanununa əsasən hesablasaq:
R= U/J = 5/0.02 = 250 ohm dəyərində rezistor bizim dövrəmizi və LED işığımızı qoruyacaqdır.
Rezistoru aşağıdakı şəkildə verildiyi kimi dövrənizə əlavə edin və proqramınızda dəyişiklik etdikdən sonra proqramı yenidən Arduino qurğunuza köçürün.
Bu qayd ilə bir neçə LED işıqdan istifadə etməklə sistemlər hazırlaya bilərsiz. delay() komandasından istifadə etməklə LED işığın yanılı və sönülü qalacağı müddəti tənzimləyə bilərsiz.
Layihənin praktik olaraq icrası üçün Arduino setlərini aşağıdakı linklərdən əldə etmək olar:
Edtech AZ Arduino Başlanğıc Set
https://www.edtech.az/news/edtech-azerbaycan-arduino-baslanqic-set
Edtech AZ Arduino Pro Set
https://www.edtech.az/news/edtech-azerbaycan-arduino-pro-set
Əgər məqalə ilə tanış oldunuzsa aşağıdakı araşdırma sualları əsasında özünüz müstəqil araşdırma apara bilərsiz.
Arduino built-in LED pin i ilə LED yandıran zaman nə üçün əlavə resistor qoşmağa ehtiyac olmur?
Fərqli rəngdə olan LED işıqların rəqəmsal pinlər vasitəsi ilə qoşulması üçün istifadə olunan rezistorların müqaviməti fərqli olmalıdırmı?
Bir rəqəmsal pin üzərindən bir neçə LED işıq yandırmaq olarmı?
Sual və təkliflərinizi paylaşmaq üçün sosial media hesablarımıza müraciət edə bilərsiniz.