BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ



Benzer belgeler
Arduino nedir? Arduino donanım ve yazılımın kolayca kullanılmasına dayalı bir açık kaynak elektronik platformdur.

PROJE RAPORU. Proje adı: Pedalmatik 1 Giriş 2 Yöntem 3 Bulgular 6 Sonuç ve tartışma 7 Öneriler 7 Kaynakça 7

DOKUMANLAR

Endüstri 4.0 ve Nesnelerin Interneti

Arduino Temel Bilgiler

Melih Hilmi ULUDAĞ. Yazılım Mühendisi Mekatronik Mühendisi. a aittir.

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ BÖLÜMÜ ELEKTRONİK SİSTEMLER LABORATUVARI 1

BİLGİSAYAR BİLİMİ DERSİ (KUR-2)

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJESİ

4-Deney seti modüler yapıya sahiptir ve kabin içerisine tek bir board halinde monte edilmiştir.

İletişim Protokolleri (Communication Protocols)

Erzurum Teknik Üniversitesi RobETÜ Kulübü Robot Eğitimleri. ARDUİNO EĞİTİMLERİ I Arş. Gör. Nurullah Gülmüş

IR Modülü. Kart Özellikleri Çalısma Frekansı: 38KHz Mesafe: 6 Metre Çalısma Voltajı: 3.3-5V Kart Boyutları: 20 mm x 20 mm

Yedi Karat Kullanım Klavuzu. Yedi Karat nedir? Neden Karat?

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJESİ

Arduino Uno ile Hc-Sr04 ve Lcd Ekran Kullanarak Mesafe Ölçmek

İçİndekİler. 1. Bölüm - Mİkro Denetleyİcİ Nedİr? 2. Bölüm - MİkroDenetleyİcİlerİ Anlamak

1. Ders Giriş. Mikroişlemcili Sistem Uygulamaları

Mikroişlemci Nedir? Mikrodenetleyici Nedir? Mikroişlemci iç yapısı Ders Giriş. Mikroişlemcili Sistem Uygulamaları

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJESİ

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

YILDIZ TEKNIK ÜNİVERSİTESİ ELEKTRİK - ELEKTRONİK FAKULTESİ ELEKLTRONİK VE HABERLEŞME MÜHENDİSLİĞİ BÖLÜMÜ

Adres Yolu (Address Bus) Bellek Birimi. Veri Yolu (Databus) Kontrol Yolu (Control bus) Şekil xxx. Mikrodenetleyici genel blok şeması

MEHMET AKİF ERSOY ÜNİVERSİTESİ EĞİTİM FAKÜLTESİ BİLGİSAYAR VE ÖĞRETİM TEKNOLOJİ- LERİ ÖĞRETMENLİĞİ PROJENIN ADI

EEM 419-Mikroişlemciler Güz 2017

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

BÖLÜM Mikrodenetleyicisine Giriş

ALİ ÇETİNKAYA Tuğba SARAY DERS DANIŞMANI PROF. DR. MEHMET BAYRAK

ARDUINO PROGRAMLAMA. Yrd.Doç.Dr. Bülent ÇOBANOĞLU

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJE ÇALIŞMASI

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

EasyPic 6 Deney Seti Tanıtımı

Doç. Dr. Cüneyt BAYILMIŞ

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJESİ ÇALIŞMASI

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

Mikroişlemciler. Microchip PIC

ÇİZGİ İZLEYEN ROBOTU YAPIMI

PIC Programlama. Devrim Çamoğlu

Fırat Üniversitesi DENEY NO: 5 GÖMÜLÜ SİSTEM PROGRAMLAMA

1. PROGRAMLAMA. PDF created with pdffactory Pro trial version

Operatör panelleri FED

DERS 5 PIC 16F84 PROGRAMLAMA İÇERİK. PIC 16F84 bacak bağlantıları PIC 16F84 bellek yapısı Program belleği RAM bellek Değişken kullanımı Komutlar

Haftalık Ders Saati Okul Eğitimi Süresi

KARABÜK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ PROJE : SUMO ROBOTU PROJE RAPORU

EEM 419-Mikroişlemciler Güz 2016

DCAS NGP operatör panel

Servo Motor ile 2-Eksenli Robot Kolunun Kontrolü

ARDUİNO TEKNOLOJİSİ KULLANILARAK TARLA İÇİN RADYASYON KAPI KONTROLÜ TASARIMI RADIATION DOOR CONTROL DESIGN USING ARDUINO TECHNOLOGY FOR TARLA

İÇİNDEKİLER VII İÇİNDEKİLER 1 ARDUINONUN TEMELLERİ 1

Hacettepe Robot Topluluğu

KULLANIM KILAVUZU PIC ULAK. USB PIC Programlayıcı 3.3V ve 5V Güç Kaynağ Seri USB Dönüştürücü Bağlantı Portları

INTEL TABANLI ÇÖZÜMLERLE BİLİMSEL EĞİTİME GÜÇ KATMA FIRSATI

PSoC 1 ile Elektronik Uygulamaları için Deney Seti Tasarımı ve Gerçekleştirilmesi

T.C. KARABÜK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ

ANDROID AÇIK AKSESUAR API & AKSESUAR GELİŞTİRME. Dr. Fatma Cemile Serçe

PIC MİKRODENETLEYİCİLER İÇİN. mikrobasic DERLEYİCİSİ

ANA KART NEDİR? ANA KART (MAIN BOARD) ANA KARTIN GÖREVİ

ANA KARTLAR ANA KARTLAR VE KASALAR

ANAKART (MOTHERBOARD)

Clever made! Ev otomasyonu için etkin çözüm. Merkezi,taşınabilir ve güvenli. Birlikte daha kolay.

İçindekiler FPGA GELİŞTİRME KARTI ENERJİ BESLEMESİ:... 5 ENERJİ SİSTEMİ ŞEMASI:... 5 FPGA GELİŞTİRME KARTINA PROGRAM YÜKLEME:... 6

PIC PROG/DEKA PRO-2, Microchip mikro denetleyici ailesinde PIC16 ve PIC18 serisinin

Deneyler artık çok KOLAY!

Mikroişlemciler ve Programlama Dersi- ARDUINO. Sensörler ve Analog-Digital Çeviriciler İle Çalışma

Örnek. int analogpin = 3; int val = 0; void setup() { Serial.begin(9600); } void loop() { val = analogread(analogpin); Serial.

BESLEME KARTI RF ALICI KARTI

İÇİNDEKİLER 1. KLAVYE KLAVYE RB KLAVYE RBHIGH DİSPLAY... 31

2. Malzemeler: Bu bölümde size verilecek malzemeler anlatılacaktır ve montaj yaparken dikkat etmeniz gereken hususlar belirtilecektir.

Mikroişlemciler ve Mikrodenetleyiciler

Web Üzerinden Labview Kullanarak Altı Eksenli Robot Kolu Kontrolü

KONTROL VE OTOMASYON KULÜBÜ

PIC 16F877A ile DA MOTOR KONTROLLÜ ROBOT UYGULAMASI DC MOTOR CONTROLLED ROBOT APPLICATION WITH USING PIC 16F877A

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJESİ

ELGELDEN KAÇAN ROBOT PROJESi KULLANILAN MALZEMELER ; ARDUİNO MEGA MİKROİŞLEMCİ 3 ADET MZ 80 SENSÖR 1 ADET L298N MOTOR SÜRÜCÜ KARTI 2 ADET TEKERLEK 1

NES DC.DRV.200 Tanıtım Dokümanı

1- KULLANILACAK DEVRE ELEMANLARININ TANITILMASI

B.Ç. / E.B. MİKROİŞLEMCİLER

UniGSM Arduino SHIELD (UniGSM-A) KURULUM ve KULLANIM KİTAPÇIĞI

GİRDİALIMI. Sistemin işleyişinde gereksinim duyulan verilerin sisteme girişinin yapılabilmesi için öncelikle toplanmaları gerekmektedir.

Mikroişlemciler (EE 208) Ders Detayları

Bilgisayar ile Dijital Devrelerin Haberleşmesi. FT232R ve MAX232 Entegreleri. Çalışma Raporu

IOT NEDİR? Bölüm 1. Internet of Things ekosistemi altında donanım, programlama, veri tabanı, veri analizi gibi alt yapılar yer almaktadır.

Fatih Üniversitesi. İstanbul. Haziran Bu eğitim dokümanlarının hazırlanmasında SIEMENS ve TEKO eğitim dokümanlarından faydalanılmıştır.

Proje Teslimi: güz yarıyılı ikinci ders haftasında teslim edilecektir.

EXOCompact. Kolay programlanabilir kontrol paneli

DHT11 SICAKLIK VE NEM SENSÖRÜ ĐLE BĐLGĐSAYAR DESTEKLĐ ÖLÇÜM VE KONTROL DEVRESĐNĐN ĐMALATI VE DENEYSEL OLARAK ĐNCELENMESĐ

DC motorların sürülmesi ve sürücü devreleri

DELTA PLC EĞİTİM SETİ KİTAPÇIĞI

Online Elektronik Devre Simülasyonu 123D Circuits

PROJE SAHİBİ: ÖZCAN PİŞGİN

1. Direnç 2. Akım 3. Gerilim 4. Kapasitans 5. Endüktans 6. Frekans

(Random-Access Memory)

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

BLUETOOTH KUMANDA KONSOLU ĐLE KONTROL EDĐLEN ROBOT KOLLU PALETLĐ MOBĐL ARAŞTIRMA ROBOTU

RTU300 SERİSİ DONANIM KILAVUZU

ATB100. ATB100 GPRS / GPS Tabanlı Filo Yönetim Terminali. Bilgi Dokümanı. 1

Q-P 50 B KULLANIM KILAVUZU

Yarım toplayıcının fonksiyonelliği ile 4 x 2 bit ROM hafıza(çok küçük bir hafıza) programlandığının bir örneğini düşünelim:

IOT DONANIM ALT YAPISI

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJESİ ÇALIŞMASI WİRELESS LI GAMEPAD İLE ARAÇ KONTROLÜ GAMZE GEDİKLİ AHMET TEMÜR

Transkript:

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJESİ ÇALIŞMASI PİC PROGRAMLAMA İLE BASİT UÇAK OYUNU MEHMET HALİT İNAN BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BAHAR 2014

KARADENİZ TEKNİK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ TASARIM PROJESİ ÇALIŞMASI PİC PROGRAMLAMA İLE BASİT UÇAK OYUNU MEHMET HALİT İNAN 229152 DANIŞMAN: OGR. GOR. ÖMER ÇAKIR BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BAHAR 2014

ÖNSÖZ Bu çalışma Karadeniz Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü bahar dönemi Tasarım Projesi olarak oluşturulmuştur. Bu projede yazılım ve donanım bilgilerinin birlikte kullanıldığı basit bir uçak oyunu ele alınmaktadır. Proje seçimi ve yönlendirmeleri ile yardımcı olan danışman hocam Ogrt. Görevlisi Ömer ÇAKIR ve eğitim hayatım boyunca her şartta beni destekleyen aileme teşekkürlerimi sunarım. Mehmet Halit İNAN I

İÇİNDEKİLER Sayfa No ÖNSÖZ... I İÇİNDEKİLER... II ÖZET...III SEMBOLLER VE KISALTMALAR... IV 1. GİRİŞ... 1 2. STANDART VE KISITLAR... 2 3. BENZER ÇALIŞMALAR... 2 4.1 NEDEN ARDUİNO... 3 4.2 ARDUİNO ÇEŞİTLERİ... 3 4.2.1 ARDUİNO UNO... 3 4.2.2 ARDUİNO UNO GİRİŞ PİNLERİ... 4 4.2.3 ARDUİNO MEGA 2560... 5 4.3 ARDUİNO BİLEŞENLERİ... 6 4.4 ARDUİNO İDE... 7 4.5 PROJE TASARIMI... 8 5. OYUN ÖZELLİKLERİ... 9 6. DEVRE ŞEMASI VE TASARIM...11 7. SONUCLAR...12 KAYNAKLAR...13 II

ÖZET Arduino gibi programlanması ve proje hazırlanması gayet kolay olan ürünler ile birlikte birçok akıllı sistem ve oyun geliştirilmiştir. Bilgisayar ortamında simülasyon programları ile bu gelişim hızlanmıştır. Bilgisayarın simülasyon amaçlı kullanılmasıyla birlikte hem zaman açısından hem de maddi açıdan avantajlar sağlamaktadır. ISIS ın etkileşimli simülasyon özellikleri arasında mikrokontrol simülasyonu da yer almaktadır. Arduino açık kaynak kodlu bir mikroişlemci ve bu mikroişlemciyi programlamak üzere eklenmiş yazılım paketinden oluşmaktadır. Bilgisayara USB ile bağlantı yapılıp kolayca programlamak mümkündür. Bu projede Arduino kullanarak basit bir uçak oyunu programlanmış ve LCD üzerinden görüntü alınmıştır. III

SEMBOLLER VE KISALTMALAR DC V USB PIC Direct current Doğru akım Volt Gerilim Universal serial bus Evrensel seri veriyolu Peripheral ınterface controller - Çevrebirim arayüz denetleyicisi IV

1 1.GİRİŞ Kolay kullanılabilir ve esnek bir donanım/yazılım mimarisine sahip, açık kaynaklı elektronik geliştirme kartıdır. Kartların devre tasarımları tamamen açıktır ve isteyen üretebilir. Arduino anahtarları, sensörleri, motorları ve diğer fiziksel çıkışları kontrol etmek ve etkileşimli nesneler geliştirmek için kullanılabilir. Arduino projeleri tek başına geliştirebilir ya da bilgisayar üzerinde çalışan yazılımlara bağlanabilir. Arduino bir mikroişlemci değildir. Arduino mikroişlemciler için kolaylaştırıcı bir geliştirme ortamı sunar, - Programlama için USB seri bağlantısı - Entegre LED - Girdi/Çıktı pinleri - Güç girişi C bilgisi ile USB üzerinden direkt olarak mikrodenetleyicimizi programlayabiliyoruz ve gerçek zamanlı uygulamalar çalıştırabiliyoruz. Programlama yaparken java üzerine yazılmış güzel, sade bir o kadarda akıllı bir editör tasarlanmıştır bu editörün içerisinde birçok kütüphane mevcuttur ve bu editör geliştiricileri tarafından sürekli güncel tutulması sebebiyle gün geçtikçe daha kullanışlı ve fonksiyonel hale getirildiği görülüyor. Arduino günümüzde bütün dünyada oldukça popüler durumdadır. İnternette yapacağımız bir arama ile yüzlerce Arduino projesi bulabiliriz. Ayrıca geliştiricilerin katkısı ile Arduino kod tabanı oldukça genişlemiş durumdadır. Birçok donanım için kütüphaneler bulunmaktadır. Arduinonun birçok çeşidi bulunmaktadır, uygulamanızın büyüklüğü veya küçüklüğüne göre bu çeşitlerden herhangi birini seçebiliriz. Uzun bir araştırma sürecine girdiğinizde karşınıza çok fazla çeşidinin çıktığını göreceksiniz ve halen daha bu kartlar yenilenmekte ve geliştirilmektedir. Fiziksel ortam için birçok mikrokontrolör vemikrokontrolör platformu mevcuttur. Birçogu aynı fonksiyona sahiptir. Fakat hepsinin programlanması oldukça zordur. Arduino ise programlamayı oldukça kolay hale getirir. Ögrenciler ve amatörler için büyük avantajlar saglar.

2 2. STANDARTLAR VE KISITLAR Bu oyun projemde yazılım donanıma göre daha ağır basmaktadır. Bu da projenin tasarım boyutunu küçültmektedir. Herhangi bir mühendislik problemi çözülmemiştir. Yazılım konusunda daha önceden gördüğümüz C programlama işimi oldukça kolaylaştırmıştır. Kullandığım donanım malzemelerini tanımak, kullanmak ve devre elemanı olarak yerleştirmek Elektrik, Elektronik derslerinde öğrendiğimiz konulardır. Proje tasarımı anlaşılabilir olup, şekillerle ve resimlerle desteklenerek projeyi tasarlamak isteyen biri için kolaylık sağlanmıştır. Buda projenin gelişmesine olumlu bir katkı olarak gösterilebilir. Proje malzemeleri için piyasa araştırması yapıp en uygun fiyata bulmaya özen gösterdim. Yurt dışından sipariş çok daha uygun fiyatlara olsa da yeterli zaman olmadığı için yurt içi satın alım yaptım. Kullanılan donanım malzemeleri piyasada kolaylıkla bulunabilir olup, isteyen herkes ulaşabilir. Malzeme piyasa değerleri düşünüldüğünde bu oyun için fazla maliyet çıkmaktadır. Buda üretim açısından olumsuz bir durumdur. Arduino hem adaptör hem de usb bağlantısı ile güç alabilmektedir. Buda tasarım aşamasında pil kullanım mecburiyetini ortadan kaldırıyor. 3. BENZER ÇALIŞMALAR Araştırma yaptığımda Arduino ile sayısız oyun yapıldığını gördüm. Arduino nun kolay programlanabilir ve anlaşılabilir olmasının sonucudur. Benzer ve çok daha gelişmiş oyunlar yapmak programcının hayal gücüyle orantılıdır. Boyut ve ekran özellikleri geliştirilerek görünüm olarak çok daha üst düzey projeler ortaya çıkarılabilir. Bunun birçok örneğine rastlayabiliriz.

3 4. ÖNERİLEN YÖNTEM 4.1 Neden Arduino - Ucuz olması: Arduino diger platformlarla karşılaştığında daha ucuzdur. Ayrıca kendiniz yapabilirsiniz. - Çapraz platform olması: Arduino Linux,Windows ve MacOs ta çalışabilir. Çogu mikrokontrolör sistemi Windows'la sınırlıdır. - Basit ve Açık Programlama Ortamı: Arduino yazılımı yeni başlayanlar için oldukça kolay bir ortam sunar. - Açık Kaynak olması: En önemli sebeptir. Gereksiz bir çok yazılıma para vermekten kurtarır ve devamlı gelişebilen bir ortam sunar. 4.2 Arduino Çeşitleri 4.2.1 Arduino UNO Arduino Uno ATMEGA 328 temelli bir board'dur. 14 tane dijital giriş/çıkış (G/Ç) (6 tanesi PWM için kullanılabilir) pinine sahiptir.6 tane analog giriş ve 16 Mhz seramik resonator'e bulunmaktadır. USB bağlantısı sayesinde kolayca yazdığınız kodu yükleyip çalıştırabilirsiniz. Aynı zamanda USB bağlantısını güç içinde kullanabilirsiniz. Ya da üzerinde bulunan Güç girişi ile bir güç kaynağına bağlayabilirsiniz. Bir adette ICSP bağlantısı bulunmaktadır.

4 Şekil 1. Arduino Uno 4.2.2 Arduino Uno Giriş Pinleri Mikrokontroller - ATMEGA 328 Çalışma Voltajı - 5V Giriş Voltaji - (7-12V) Giriş Voltajı - (limit) 6-20V Dijital G/Ç - 14 Analog Girişler - 6 DC akım - 40mA 3.3V pin için DC akım - 50mA Flash Hafıza - 32KB SRAM - 1KB EEPROM - 1KB Saat Hızı - 16MHz

5 4.2.3 Arduino Mega 2560 Arduino Mega, Atmega 2560 mikrodenetleyicisi kullanılarak oluşturulmuştur. Datasheet ineburadan ulaşabilirsiniz. Üründe 4 tane UART, 54 tane Dijital giriş/çıkış, 16 Analog giriş/çıkış, 16 Mhz Osilatör bulunmaktadır. Genel Özellikleri aşağıda yer almaktadır. Microcontroller Operating Voltage ATmega2560 5V Input Voltage (recommended) 7-12V Input Voltage (limits) 6-20V Digital I/O Pins 54 (of which 14 provide PWM output) Analog Input Pins 16 DC Current per I/O Pin DC Current for 3.3V Pin 40 ma 50 ma SRAM EEPROM 8 KB 4 KB Clock Speed 16 MHz Şekil 2. Arduino Mega 2560 [1]

6 Arduino Mega hafıza ve pin sayısından dolayı daha büyük projeler için ideal bir boarddur.uno'nun yetmedigi projeler için kullanılabilir. Mega,Uno için tasarlanmış bir çok shield ile uyumludur. 4.3 Arduino nun Bileşenleri Arduino temel olarak bir mikrodenetleyici programlamak için gerekli bileşenleri kullanımını oldukça kolaylaştırmış olan bir platformdur. Arduino platformunu oluşturan bileşenler; Arduino platformunda kullanılan temel bileşenlere bakacak olursak, bunlar: - Arduino Geliştirme Ortamı (IDE) - Arduino Bootloader (Optiboot) - Arduino Kütüphaneleri - AVRDude (Arduino üzerindeki mikrodenetleyici programlayan yazılım) - Derleyici (AVR-GCC) Arduino geliştirme ortamı Processing adlı dilin ortamına dayanıyor ve görünüş olarak da ona çok benziyor. Eğer Java biliyorsanız Arduino ortamı üzerinde istediğiniz değişiklikleri yapabilirsiniz. Normalde bir mikrodenetleyiciyi programlamak için kullandığımız ürüne yönelik geliştirilmiş olan programlayıcıları kullanmamız gerekir. Bunun bir alternatifi de seri haberleşme üzerinden mikrodenetleyiciyi programlamamızdır. Tabi bunun için mikrodenetleyicimizin bir seri haberleşme modülüne sahip olması ve kendi program belleğini programlama özelliğine sahip olması gerekiyor. Bir de bu programlama işini yapacak ufak bir programcığa ihtiyaç var. İşte bu programcığa bootloader deniliyor. Mikrodenetleyici çalışmaya başladıktan hemen sonra programlamaya başlamak için gerekli verilerin gelmesini bekliyor. Bu veriler gelmediyse doğrudan mikrodenetleyiciye yüklenmiş programı koşturmaya başlıyor. göreceksiniz. 4.4 ArduinoIDE Programı Bu program ile Arduino ya yükleyeceğimiz yazılımları oluşturuyoruz. Program görüntüsü aşağıda yer almaktadır. Son derece basit bir arayüzü vardır.

7 Şekil 3. Arduino IDE setup() - Arduino taslağı başlatılırken çağırılan hazırlama fonksiyonudur. Değişkenleri ilklendirmek ve pinleri ayarlamak için kullanılır. loop() - setup() çağrısı sonlandıktan mikroişlemci sürekli (kapatılana veya resetlenene kadar) bu fonksiyonu çağırır.

8 4.5 Proje Tasarımı Projeyi ilk olarak ISIS programında tasarlayarak sonuçlarını gözlemledim. Tasarımın doğru çalıştığını gördükten sonra donanım malzemeleri üzerinde çalışmaya başladım. Şekil 4. Proje ISIS Tasarımı

9 Arduino IDI ile koşulan kodlar ISIS de denendiğinde oyunun çalıştığını görebildim. Şekil 5. Proje ISIS Üzerinde Çalıştırma 5. Oyun Özellikleri > Uçak < Düşman Uçak Duvar ) Mermi + Hız Artışı - Hız Azalış Extra can ( > ) Sembolü uçağı ifade eder. Hareket tuşlarıyla aşağı yukarı hareket ederek engellerden kaçmak gerekmektedir. Hız artış veya azaltma seçenekleri oyunun ilerleyen bölümlerinde karşımıza çıkacaktır. Düşman uçaklara ateş ederek yok edebiliriz. Ayrıca üç tane mermi ile duvarı da yok edebiliriz. Oyun içinde artı can alabilme seçeneği de mevcuttur.

10 6. Devre Şeması Şekil 6. Devre Şeması LCD RS pini - digital pin 12 LCD Enable pini - digital pin 11 LCD D4 pini - digital pin 5 LCD D5 pini - digital pin 4 LCD D6 pini - digital pin 3 LCD D7 pini - digital pin 2 10K trimpot 1: çıkışı +5V ve toprak, - LCD pin 3 10K trimpot 2: çıkışı - +5V ve toprak, analog pin 0 Button: cıkısı - digital pin 6 ve +5V, 10K direnç - digital pin 6 toprak

11 Tasarım için gerekli donanım malzemeleri elime geçtikten sonra gerekli bağlantıları yaparak oyunun çalıştırılabilir ilk tasarımı ortaya çıktı. Şekil 7. Tasarım

12 7. SONUCLAR Bu proje ile Arduino çeşitleri, kurulumu ve kullanımı, programlanması gibi Arduino özelliklerini öğrenip neler yapılabileceğini görmüş oldum. Donanım bazında olan olaylara ilgi ve beceri yönünde artırıcı etkisi oldu. Programlama aracı olarak Arduino IDE kullanıldı. Kendi içerisindeki hazır örnekler ile öğrenmek ve uygulamak programlamayı daha da kolaylaştırdı. Yaptığım basit uçak oyunu projesi ile birlikte Arduino ile yapılabilecek oyunları ve ne kadar ilerletilebileceğini görmüş oldum. Tasarım projesi aldığımız donanım ağırlıklı derslerimizi proje üzerinde pratiğe dökmek açısından oldukça çok faydalı olmuştur ve ilk donanım projem olarak güzel bir başlangıç şansı vermiştir.

13 KAYNAKLAR [1] http://arduino.cc/en/main/arduinoboardmega2560güvenilirlikleri, Doktora Tezi, [2] http://arduinoturkiye.com/arduino-nedir-ve-ne-degildir/ [3] http://www.gurayyildirim.com.tr/arduino-ile-ilk-adim-baslangic-902.html [4] arduinoturkiye.com/arduino-uno/ [5] Taşdemir, Çoşkun, Arduino, İstanbul, Turkey, 5-2014