ÖNSÖZ
Bir zamanlar bilgisayarlar sadece bilgisayarcılar tarafından kullanılırdı. Ancak 1995 yılında Windows 95 işletim sistemi piyasaya çıktığı andan itibaren bu kural değişti ve herkes bilgisayar kullanmaya başladı. Yaklaşık 10 yıl sonra Arduino geliştirme kartının piyasaya çıkmasıyla bu seferde bu kural elektronikçiler için değişti. Yani Arduino ile elektronik devre projeleri sadece elektronikçiler tarafından değil toplumun her kesimi tarafından ister hobi amaçlı ister profesyonel olarak Arduino ile projeler geliştirebilir. Arduino’nun analog ve dijital pinleri sayesinde analog ve dijital sinyalleri işlemek mümkündür. Arduino’ya bağlanan sensörler vasıtasıyla ortam etkileşimli giriş sinyalleri elde edip bu sinyalleri incelemek ve bu sinyaller ile algoritmalar kurarak çıkış sinyalleri üretmek mümkündür. Bu sayede çeşitli robotlar ve elektronik sistemler tasarlanabilir. Kısacası Arduino ile robotik, dron, otomasyon sistemleri, akıllı sistemler, uzaktan kumandalı araçlar, giyilebilir teknoloji projeleri ve sayısız birçok proje yapılabilir. Bilimsel ve eğitsel amaçla yazılan bu özgün kitapta Arduino geliştirme kartının kullanımı pratik uygulamalarla birlikte anlatılmıştır. Birinci bölümde Arduino geliştirme kartıyla birlikte kullanılan temel devre elemanları, sensörler ve modüllerden kısaca bahsedilmiştir. İkinci bölümde Arduino geliştirme kartı ve özellikleri hakkında bilgi verilmiştir. Üçüncü bölümde Arduino’nu programlamak için en çok kullanılan komutlar ve kodlar hakkında uygulamalı bir şekilde bilgi verilmiştir. Dördüncü bölümde Arduino kullanılarak temel pratik devre tasarımları işlem basamakları şeklinde anlatılmıştır. Bu kapsamda uygulamaların daha kolay anlaşılması için bol bol şekil kullanılmıştır. Son bölümde ise en çok kullanılan Arduino projeleri deneysel bir şekilde aşama aşama anlatılmıştır. Bu kitabı başından sonuna kadar okuyan ve uygulamaları yapan birisi Arduino hakkında epeyce bir tecrübe kazanır ve kendi başına temel Arduino projelerini tasarlayıp gerçekleştirebilir.
Bu eseri ortaya çıkarırken her zaman yanımda olan, desteklerini esirgemeyen aileme ve öğrencilerime teşekkür ederim. Ayrıca önerilerim doğrultusunda lisans tezi olarak bu kitapta da faydalanmış olduğum Arduino deney setini tasarlayıp gerçekleştiren öğrencilerim Havva Nur PALA, İrem DİRANCI ve Meltem DİLEK öğrencilerime de emeklerinden dolayı teşekkür ederim.
İÇİNDEKİLER
1. TEMEL ELEMANLAR VE MODÜLLER
1.1. GÜÇ KAYNAĞI ...................................................................... 2
1.2. BREADBOARD ....................................................................... 3
1.3. BAĞLANTI KABLOLARI ............................................................. 3
1.4. DİRENÇLER .......................................................................... 4
1.5. KONDANSATÖRLER ................................................................ 7
1.6. BOBİNLER ........................................................................... 7
1.7. TRANSFORMATÖRLER ............................................................. 8
1.8. DİYOTLAR ........................................................................... 8
1.9. TRANSİSTÖRLER................................................................... 14
1.10. PUSH BUTTON ................................................................... 14
1.11. ULTRASONİK SENSÖR (HC-SR04) .............................................. 15
1.12. BUZZER ........................................................................... 15
1.13. ENTEGRE (74HC595) ............................................................ 15
1.14. MOTORLAR ....................................................................... 16
1.15. LCD EKRAN (2x16)............................................................... 18
1.16. HAREKET SENSÖRÜ .............................................................. 19
1.17. MANYETİK SENSÖR .............................................................. 19
1.18. GAZ SENSÖRÜ (MQ-2) ........................................................... 20
1.19. RTC MODÜLÜ .................................................................... 20
1.20. NEM ÖLÇER ....................................................................... 21
1.21. KY-039 PARMAK NABIZ ÖLÇER ................................................. 21
1.22. RÖLE .............................................................................. 22
1.23. GYRO SENSÖR .................................................................... 22
1.24. RFID KARTI ....................................................................... 23
1.25. YAĞMUR SENSÖRÜ .............................................................. 23
2. ARDUINO GELİŞTİRME KARTI
2.1. ARDUINO NEDİR ................................................................... 26
2.2. ARDUINONUN GENEL ÖZELLİKLERİ ............................................. 27
2.3. ARDUINO KARTI ÇEŞİTLERİ ...................................................... 27
2.4. ARDUINO UNO KARTI ............................................................. 28
2.5. ARDUINO PROGRAMININ YÜKLENMESİ .......................................... 30
3. ARDUINO PROGRAMLAMA
3.1. GİRİŞ ............................................................................... 38
3.2. PROGRAM YAPISI .................................................................. 40
3.3. KONTROL YAPISI .................................................................. 45
3.4. SÖZ DİZİMİ ......................................................................... 51
3.5. ARİTMETİK OPERATÖRLER ....................................................... 52
3.6. KARŞILAŞTIRMA OPERATÖRLERİ ................................................ 54
3.7. BOOLEAN OPERATÖRLERİ........................................................ 55
3.8. BİRLEŞİK OPERATÖRLER ......................................................... 56
3.9. BİTSEL OPERATÖRLER ............................................................ 57
3.10. SABİTLER ......................................................................... 60
3.11. DEĞİŞKENLER VE VERİ TİPLERİ ................................................ 62
3.12. DEĞİŞKEN KAPSAMLARI ......................................................... 66
3.13. DİJİTAL GİRİŞLER / GİRİŞLER .................................................. 68
3.14. ANALOG GİRİŞLER / ÇIKIŞLAR ................................................. 69
3.15. GECİKMELER ..................................................................... 72
3.16. MATEMATİKSEL VE TRİGONOMETRİK İŞLEVLER .............................. 74
3.18. KARAKTERLER ................................................................... 76
3.19. SERİ HABERLEŞME ............................................................... 81
3.20. INTERRUPTLAR (KESMELER) ................................................... 83
3.21. RANDOM (RASTGELE) SAYILAR ................................................. 85
3.22. GELİŞMİŞ GİRİŞLER / ÇIKIŞLAR ................................................. 86
3.23. KÜTÜPHANELER ................................................................. 89
3.24. HABERLEŞME PROTOKOLLERİ .................................................. 92
4. ARDUINO İLE PRATİK DEVRE TASARIMLARI
4.1. LED’İN YANIP SÖNMESİ ........................................................... 98
4.2. TRAFİK LAMBASI .................................................................. 99
4.3. 10 KANALLI YÜRÜYEN IŞIK ..................................................... 101
4.4. DÖRT LED’Lİ FLAŞÖR ........................................................... 102
4.5. KARA ŞİMŞEK DEVRESİ .......................................................... 104
4.6. DC MOTOR HIZ KONTROL DEVRESİ ........................................... 107
4.7. LED’Lİ ELEKTRONİK ZAR ....................................................... 110
4.8. SERVO MOTOR KONTROL DEVRESİ ............................................ 111
4.9. YANGIN ALARM DEVRESİ ....................................................... 113
4.10. BASİT PARK SENSÖRÜ DEVRESİ .............................................. 115
4.11. LDR İLE KONTROL DEVRESİ .................................................. 117
5. ARDUINO DENEYLERİ
5.1. LED YAKIP SÖNDÜRMEK ........................................................ 120
5.2. BUTON İLE LED YAKMAK ....................................................... 123
5.3. POTANSİYOMETRE İLE LED PARLAKLIĞINI AYARLAMA ...................... 125
5.4. KARA ŞİMŞEK UYGULAMASI .................................................... 128
5.5. LDR İLE LED KONTROLÜ ....................................................... 131
5.6. RGB LED KONTROLÜ ........................................................... 134
5.7. 7-SEGMENT DISPLAY KULLANIMI .............................................. 137
5.8. IR KUMANDA İLE LED KONTROLÜ ............................................. 141
5.9. LDR İLE IŞIK ALGILAMA ......................................................... 145
5.10. VU METRE UYGULAMASI ...................................................... 148
5.11. RÖLE KONTROLLÜ LED YAKMA .............................................. 152
5.12. NTC İLE SICAKLIK ÖLÇÜMÜ ................................................... 155
5.13. ULTRASONİK SENSÖR KULLANIMI ............................................ 159
5.14. YAĞMUR SENSÖRÜ KULLANIMI ............................................... 163
5.15. ULTRASONİK SENSÖR İLE DİJİTAL MESAFE ÖLÇER......................... 166
5.16. PIR HAREKET SENSÖRÜ KULLANIMI ......................................... 170
5.17. DİJİTAL SAAT KULLANIMI ..................................................... 174
5.18. TOPRAK NEM ÖLÇER KULLANIMI ............................................ 179
5.19. GAZ SENSÖRÜ KULLANIMI .................................................... 183
5.20. MANYETİK ALAN DEDEKTÖRÜ KULLANIMI .................................. 186
5.21. NABIZ ÖLÇER UYGULAMASI .................................................. 190
5.22. BUTON İLE STEP MOTOR KONTROLÜ ....................................... 194
5.23. STEP MOTOR SÜRME .......................................................... 198
5.24. POTANSİYOMETRE İLE SERVO MOTOR KONTROLÜ ........................ 201
5.25. BUTON İLE SERVO MOTOR KONTROLÜ ..................................... 204
5.26. JOYSTICK İLE SERVO MOTOR KONTROLÜ .................................. 207
5.27. DC MOTOR İLERİ-GERİ MOTOR KONTROLÜ ................................. 210
5.28. JOYSTICK İLE STEP MOTOR KONTROLÜ .................................... 214
5.29. ARDUINO RFID OTOMATİK KAPI KONTROLÜ ................................ 218
5.30. DC MOTOR HIZ KONTROLÜ ................................................... 222
KAYNAKLAR ..................................................................225