KARADENĠZ TEKNĠK ÜNĠVERSĠTESĠ MÜHENDĠSLĠK FAKÜLTESĠ BĠLGĠSAYAR MÜHENDĠSLĠĞĠ BÖLÜMÜ CAFE ARDUINO PROJESĠ TASARIM PROJESĠ SÜMEYRA AKSEKĠ KÜBRA DEMĠRKOL

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

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

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

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

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

HSancak Nesne Tabanlı Programlama I Ders Notları

Hızlı ve Kolay Arduıno. Volkan Kanat

Karabük Üniversitesi, Mühendislik Fakültesi... WEB TEKNOLOJİLERİ

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

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

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

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

ARDUINO NEXTION UYGULAMASI. Bu makale, Arduino UNO kartı ile Nextion HMI ekranlarının nasıl kontrol edildiğini anlatmaktadır.

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

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

Bilgisayar Programcılığı. Görsel Programlama-I. Öğr. Gör. Cansu AYVAZ GÜVEN

İNTERNET TABANLI PROGRAMLAMA

T.C. NECMETTĠN ERBAKAN ÜNĠVERSĠTESĠ Mühendislik ve Mimarlık Fakültesi. Elektrik-Elektronik Mühendisliği Bölümü BĠTĠRME ÖDEVĠNĠN ADI BİTİRME PROJESİ

C# Console Uygulamaları ifelse Yapıları 2

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

GENETİK ALGORİTMA GEZGİN SATICI ÖDEVİ

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

EEM 419-Mikroişlemciler Güz 2017

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

MEKANİZMA TEKNİĞİ (7. Hafta)

KARADENĠZ TEKNĠK ÜNĠVERSĠTESĠ MÜHENDĠSLĠK FAKÜLTESĠ BĠLGĠSAYAR MÜHENDĠSLĠĞĠ BÖLÜMÜ RENKLERĠ AYIRT EDEN ROBOT KOL TASARIMI TASARIM PROJESĠ

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

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

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

Lambda İfadeleri (Lambda Expressions)

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

TUŞ TAKIMI (KEYPAD) UYGULAMALARI

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

if (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

KRİPTOANALİZ DERSİ FİNAL ÖDEVİ. PSO ile TRANSPOSITION CIPHER ÇÖZÜMÜ

1. Diyot Çeşitleri ve Yapıları 1.1 Giriş 1.2 Zener Diyotlar 1.3 Işık Yayan Diyotlar (LED) 1.4 Fotodiyotlar. Konunun Özeti

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

Elektronik-I Laboratuvarı 1. Deney Raporu. Figure 1: Diyot

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

C#(Sharp) Programlama Dili

ELK101 - ELEKTRİK ELEKTRONİK MÜHENDİSLİĞİNE GİRİŞ

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

İNTERNET TABANLI PROGRAMLAMA- 3.ders

Karşılaştırma İşlemleri ve Koşullu İfadeler

1- KULLANILACAK DEVRE ELEMANLARININ TANITILMASI

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu.

VTIY DERS-4 YARDIMCI NOTLARI -2018

DENEY 1 DİYOT KARAKTERİSTİKLERİ

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

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

Masa üstünde vt34.mdb dosyası var, onu projemize eklemek için, App_Data ya sağ tıkla Add Existing Item vt34.mdb adlı dosyayı seç Add

HSancak Nesne Tabanlı Programlama I Ders Notları

void setup() fonksiyonu: Bu fonksiyon program ilk açıldığında bir kere çalışır ve gerekli kalibrasyon, setup komutlarını buraya yazarız.

PROGRAMLAMAYA GİRİŞ DERS 2

Hazırlayan: Tugay ARSLAN

ALGORİTMA VE PROGRAMLAMA I

YZM 2105 Nesneye Yönelik Programlama

SAKARYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ GÖMÜLÜ SİSTEMLER DENEY FÖYÜ

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

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

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

Paralel ve Seri İletişim. Asenkron/Senkron İletişim. Şekil 2: İletişim Modları

Görsel Programlama (Visual Programming)

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ Published by Juan Soulié

Akış Kontrol Mekanizmaları

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

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak: Published by Juan Soulié

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

Nesne Yönelimli Programlama

C#.Net & Linq (Language Integrated Query)

KARABÜK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ MEKATRONİK PROJE UYGULAMASI

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

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

D İ Z İ L E R A R R A Y S

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

DY-45 OSĐLOSKOP KĐTĐ. Kullanma Kılavuzu

web-sitesi : satış : teknik destek : tel : IM-SMO20 Ultrasonik Mesafe Sensörü Özellikler

DENEY-2. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

1. PROGRAMLAMA. PDF created with pdffactory Pro trial version

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır

Q-scout ne işe yarar?

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ÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI

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

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.

1.CİHAZ ÖLÇÜLERİ 2.CİHAZ BAĞLANTI ŞEMASI

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

Mikroişlemciler (EE 208) Ders Detayları

Ders 8: Metotlar. barisgokce.com

7. Port Programlama. mikroc Dili ile Mikrodenetleyici Programlama Ders Notları -42- Şekil 2.1. Atmega16 mikrodenetleyici pin şeması

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

T.C. NİĞDE ÜNİVERSİTESİ MÜHENDİSLİK-MİMARLIK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ. Uzaktan Kumanda Edilen Lamba Dimmer inin Gerçekleştirilmesi

Transkript:

KARADENĠZ TEKNĠK ÜNĠVERSĠTESĠ MÜHENDĠSLĠK FAKÜLTESĠ BĠLGĠSAYAR MÜHENDĠSLĠĞĠ BÖLÜMÜ CAFE ARDUINO PROJESĠ TASARIM PROJESĠ SÜMEYRA AKSEKĠ KÜBRA DEMĠRKOL 2015-2016 GÜZ DÖNEMĠ KARADENĠZ TEKNĠK ÜNĠVERSĠTESĠ MÜHENDĠSLĠK FAKÜLTESĠ BĠLGĠSAYAR MÜHENDĠSLĠĞĠ BÖLÜMÜ

CAFE ARDUINO PROJESĠ TASARIM PROJESĠ SÜMEYRA AKSEKĠ KÜBRA DEMĠRKOL Bu projenin teslim edilmesi ve sunulması tarafımca uygundur. DanıĢman : Ad SOYAD : YRD.DOÇ.DR.HÜSEYĠN PEHLĠVAN 2015-2016 GÜZ DÖNEMĠ

IEEE Etik Kuralları IEEE Code of Ethics Mesleğime karşı şahsi sorumluluğumu kabul ederek, hizmet ettiğim toplumlara ve üyelerine en yüksek etik ve mesleki davranışta bulunmaya söz verdiğimi ve aşağıdaki etik kurallarını kabul ettiğimi ifade ederim: 1. Kamu güvenliği, sağlığı ve refahı ile uyumlu kararlar vermenin sorumluluğunu kabul etmek ve kamu veya çevreyi tehdit edebilecek faktörleri derhal açıklamak; 2. Mümkün olabilecek çıkar çatışması, ister gerçekten var olması isterse sadece algı olması, durumlarından kaçınmak. Çıkar çatışması olması durumunda, etkilenen taraflara durumu bildirmek; 3. Mevcut verilere dayalı tahminlerde ve fikir beyan etmelerde gerçekçi ve dürüst olmak; 4. Her türlü rüşveti reddetmek; 5. Mütenasip uygulamalarını ve muhtemel sonuçlarını gözeterek teknoloji anlayışını geliştirmek; 6. Teknik yeterliliklerimizi sürdürmek ve geliştirmek, yeterli eğitim veya tecrübe olması veya işin zorluk sınırları ifade edilmesi durumunda ancak başkaları için teknolojik sorumlulukları üstlenmek; 7. Teknik bir çalışma hakkında yansız bir eleştiri için uğraşmak, eleştiriyi kabul etmek ve eleştiriyi yapmak; hatları kabul etmek ve düzeltmek; diğer katkı sunanların emeklerini ifade etmek; 8. Bütün kişilere adilane davranmak; ırk, din, cinsiyet, yaş, milliyet, cinsi tercih, cinsiyet kimliği, veya cinsiyet ifadesi üzerinden ayırımcılık yapma durumuna girişmemek; 9. Yanlış veya kötü amaçlı eylemler sonucu kimsenin yaralanması, mülklerinin zarar görmesi, itibarlarının veya istihdamlarının zedelenmesi durumlarının oluşmasından kaçınmak; 10. Meslektaşlara ve yardımcı personele mesleki gelişimlerinde yardımcı olmak ve onları desteklemek. IEEE Yönetim Kurulu tarafından Ağustos 1990 da onaylanmıştır. II

ÖNSÖZ Projenin seçilmesiyle günümüzdeki büyük çaplı cafe ve restoranlarda iş yükünü azaltmak amaçlanmıştır. Böylelikle sosyal ortamlarda kargaşalığı azaltma yönünde örnek teşkil edilebilir. Umarız bu proje ileriki yaşamda hayat standartlarını yükseltip başka projelere de kaynak olacaktır. En başta bölüm hocalarımızdan Yrd. Doç. Dr. Hüseyin Pehlivan a, ve proje boyunca bizi yalnız bırakmayan ve her türlü destekte bulunan Hasan Uslu ve Kemal Ak a teşekkürü bir borç biliriz. SÜMEYRA AKSEKİ KÜBRA DEMİRKOL Trabzon 2015 III

ĠÇĠNDEKĠLER Sayfa No IEEE ETİK KURALLARI II ÖNSÖZ III İÇİNDEKİLER IV ÖZET V 1. GENEL BİLGİLER 1 1.1. Giriş 1 1.2. 1.3. 2. YAPILAN ÇALIŞMALAR 2.1. 2.2. 2.3. 3. SONUÇLAR 4. ÖNERİLER 5. KAYNAKLAR 6. EKLER (varsa) STANDARTLAR ve KISITLAR FORMU IV

ÖZET Yapılan projede arduino ile bir cafedeki masaların dolu veya boş olup olmama durumları kontrol edilmiştir. Projede kırmızı ve yeşil LED, IR Sensor, Arduino UNO ve bağlantı malzemeleri temin edilip kullanılmıştır. Projenin yapılması için C# dili ve arduino programlanması hakkında yeterli bilgi toplanmıştır. C# ile arduino arasında port üzerinden seri haberleşme sağlanmıştır. Böylelikle gerekli kodlar ile birlikte proje çalışabilir hale gelmiştir. Daha sonra tasarım aşamasına geçilmiştir ve kodların donanıma aktarımı sağlanmıştır. Gerekli tüm işlemler yapıldıktan ve koşullar sağlandıktan sonra son kontroller yapılmış ve proje tamamlanmıştır. V

VI

1 1. GENEL BĠLGĠLER 1.1. GiriĢ Tasarlanan bu projede ; cafe ve restoranlarda oturma düzeni ve siparişlerin zaman kaybı yaşamadan hızlı bir şekilde görevlilere ve müşterilere hizmeti için kullanılması hedeflenmiştir.bu düzeni sağlayabilmek için de insanların masalara oturmalarıyla IR SENSÖR lerinin devreye girip insanı algılaması sağlanmıştır. Böylelikle dolu ve boş masaların hızlı fark edilmesi sağlanmış ve ekrana yansıtılarak insanların gereksiz zaman harcaması önlenmiştir. Ayrıca alan içerisine giren insanların zaman kaybetmeden de oturabilmeleri için masalar üzerine KIRMIZI ve YEŞİL LED sistemi döşenip, müşterilerin en yakın boş masalara bu LED ışıkları sayesinde yönlendirilmesi sağlanmıştır. Tasarlanmış olan bu proje ile birlikte; cafe, restoran gibi işletmelerde müşterilerin etkin şekilde masaları kullanmaları sağlanmıştır. Ve bu alanlarda çalışacak olan fazla eleman ihtiyacı da azaltılması hedeflenmiştir. Masalara 5 adet buton konulmuş ve menüdeki ürünler bu butonlarla aktifleştirilerek görevli ekranına aktarılmıştır.görevlinin uzaktan müdahalesi de sağlanmış olup siparişlerin hızlı ve etkin bir şekilde müşteriye sunulmuştur. Ve hesap açma kapama işlemleri yapılabilmektedir. Aynı zamanda müşterilerin giriş çıkış bilgileri de sistem tarafından kayıt altına alınmış, ücretlendirilmesi yapılmıştır. Bu işlemler ile birlikte bu alanların konforu ve koordinasyonu maximum seviyeye çıkarılmıştır. 1.2 Kullanılan Malzemeler LED: LED ("Light Emitting Diode", Işık Yayan Diyot), yarı iletken, diyot temelli, ışık yayan bir elektronik devre elemanıdır. LED ler yarı iletken malzemelerdir. Ana maddeleri silikondur. Üzerinden akım geçtiğinde foton açığa çıkararak ışık verirler. Farklı açılarda ışık verecek şekilde üretilmektedirler. LED lerin gerilim-akım grafikleri üstündür. Uygun çalışma noktasındayken LED in üzerindeki küçük bir gerilim değişimi büyük bir akım değişimine neden olur. Yüksek akım nedeniyle bozulmaması için LED lere seri bir akım sınırlama direnci bağlanır. Böylece hassas olmayan gerilim aralıklarında LED in bozulması engellenir. LED ler tıpkı bir Zener diyot gibi üzerinde sabit bir gerilim düşürür. Kullandığımız kırmızı LED 2,20 Volt, Yeşil LED 3,30 Volt dur. IR SENSOR:

2 Pasif kızılötesi sensör, görüş alanına giren nesnelerden yayılan kızılötesi ışık miktarını ölçen elektronik sensör. TCP/IP üzerinden lojik değer taşır. Her dedektör için ayrı ayrı kablo ihtiyacını ortadan kaldırır. Analog lojik sinyallerinin birbirlerini etkilemelerini de önler. Panel kısmında herhangi bir donanım gerektirmez. BUTON: Buton, iterek üzerine basıldığında, makine veya yazılımlarda ki bir sürecin başlamasını ve kontrolünü sağlayan basit bir geçiş mekanizmasıdır. Butonlar tipik olarak genellikle sert plastik veya metal malzemeden imal edilir. Yüzeyi insan eline uygun şekilde dizayn edilmiş olup, genellikle basılacak bölümü düz bir yapıya sahiptir. Butonların pek çok çeşidi olsa dahi (doğal olarak) itme ve uygulanan bu kuvvet karşısında tepki veren yay sisteminden oluşur. Butona uygulanan her kuvvet önceden belirlenmiş bir sürecin çalışmasını sağlar. JUMPER KABLO: Jumper kablo, 2 veya daha fazla yolların bağlantını sağlayan kablolardır.

3 1.3 Arduino Hakkında Bilgi Arduino, bir G/Ç kartı ve Processing/Wiring dilinin bir uygulamasını içeren geliştirme ortamından oluşan bir fiziksel programlama platformudur. Arduino kartlarının donanımında bir adet Atmel AVR mikrodenetleyici ve programlama ve diğer devrelere baplantı için gerekli yan elemanlar bulunur. Her arduino kartında en azından bir 5 voltluk regüle entegresi ve bir 16 MHz kristal osilatör vardır. Arduino kartlarında programlama için harici bir programlayıcıya ihtiyaç duyulmaz, çünkü karttaki mikrodenetleyiciye önceden bir bootloader programı yazılıdır. Arduino UNO platformunun görsel tanıtımı: Arduino Programlama Dili : Arduino temel olarak processing programlama diline dayanıyor. Processing, resim, animasyon ve etkileşim yöntemleri geliştirilebilecek açık kaynak bir programlama dili ve

4 ortamıdır. Arduino kütüphaneleri birçok işlemi donanım seviyesine inmeden yani kaydediciler üzerinde işlem yapmaya gerek kalmadan yapmayı sağlar. Söz dizimi olarak C, C++,Java dillerine benzer. Satır sonlarında noktalı virgül bulunur. Bloklar süslü parantezlerle tanımlanır. Yorum satırların için özel alanlar oluşturulabilir. Programda main() fonksiyonu yerine setup () ve loop () bulunuyor. Setup bir kerelik, loop ise sürekli çalışan işlemler için kullanılıyor. Delay () fonksiyonu ile gecikmeler oluşturuluyor. Bütün işlemleri veri tipleri üzerinde gerçekleştiriyoruz. Verileri tutan belleklere değişken isimleri vererek kullanıyoruz. Değişken isimleri Türkçe karakter içermeyen, rakamlarla başlamayan ve büyük küçük harf duyarlı olmalıdır. Tam sayı tipleri: int, long tur. Kayar noktalı tipler: float, double dır. Karakterler: char, string 2.YAPILAN ÇALIġMALAR 2.1.Arduino Ġle Buton, Led ve Sensörün EtkinleĢtirilmesi Arduino da öncelikle led yakılması denendi. Led breadboard üzerine yerleştirildi ve resimde görüldüğü üzere porta bağlandı. Daha sonra gerekli kodlar arduiona ya yazıldı. Sonraki aşamalarda ise aynı şekilde butonun ve sensörün çalışma mantığı araştırılıp gerekli kodlarla deneme çalışmaları yapıldı. Arduino ile Led Bağlantısı:

5 Arduino ile Buton Bağlantısı: Arduino ile IR Sensör Bağlantısı:

6 2.2.C# Ġle Arduino Arasındaki Seri HaberleĢmenin Yapılması Arduinoda yaptığımız işlemleri bilgisayarda görütntüleyebilmek için port üzerinden seri haberleşmeyi C#da sağlamamız gerekmetedir. Bunun için gerekl, işlemleri C# a gerekli kütüphaneler eklendi ve VISUAL STUDIO 2013 üzerinde kodlamalar yapıldı. Yapılan kodlamalar: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO.Ports; using System.Windows; ile kütüphaneler tanıtıldı. SP.PortName = "COM4"; SP.BaudRate = 9600; SP.Open(); SP.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler); ile de seri port bağlantısı ve veri alımı sağlandı. 2.3.Cihazın EtkinleĢtirilmesi:

C#da bir form oluşturuldu ve butonların burada işleveri tanıtıldı. Her bir işlev için ayrı paneller oluşturularak isimlendirildi ve kontrol komutu adlı fonksiyon açılarak orada komutlar switch-case lerle alındı: private void KomutIsle(object o, EventArgs e) { RxString = RxString.Replace("\r", ""); if (RxString.IndexOf('.') <= -1) return; string[] tmp = RxString.Split('.'); string masakodu = tmp[0]; string komut = tmp[1]; switch (komut) { case "0": // masa boş table1.backgroundimage = ((System.Drawing.Image)(Properties.Resources.table_green)); break; case "1": // masa dolu table1.backgroundimage = ((System.Drawing.Image)(Properties.Resources.table_red)); break; case "P1": // ürün 1 if (!SiparisTamam) { pnlorder.show(); sm1++; SiparisToplamlariniYaz(); SiparisVeriliyor = true; } break; case "P2": // ürün 2 if (!SiparisTamam) { pnlorder.show(); sm2++; SiparisToplamlariniYaz(); SiparisVeriliyor = true; } break; case "P3": // ürün 3 if (!SiparisTamam) { pnlorder.show(); sm3++; SiparisToplamlariniYaz(); SiparisVeriliyor = true; } break; case "SipTamam": // sipariş onayı if (SiparisVeriliyor) 7

8 { btnok.show(); SiparisTamam = true; SiparisVeriliyor = false; } break; case "SipIptal": // sipariş iptali if (!SiparisTamam && SiparisVeriliyor) { btnok.hide(); pnlorder.hide(); SiparisVeriliyor = false; sm1 = 0; sm2 = 0; sm3 = 0; } break; default: MessageBox.Show("Tanınmayan komut: " + komut, "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; } } 3.SONUÇLAR: Tüm bu yapılan işlem ve kodlamalar sonucunda sensör devreye girdiğinde yeşil led sönüp kırmızı led yanar ve aynı zamanda görevli ekranında o masanın durumu belli olur. Butonlar devreye girdiğinde ise yine aynı ekranda masanın siparişi ve hesap tutarı görünmektedir. Siparişler alındıktan sonra görevli siparişleri teslim ettiğini belitmek amacıyla OK butonuna basar ve tüm işlemler hesaba eklenir ve toplam tutar hesap kapatılana kadar ekranda izlenir. İstenildiği taktirde görevli hesabı kapatabilir ve led de dahil olmak üzere her şey sıfırlanır. 4. ÖNERĠLER: Bu projede farklı olarak: Butonlar yerine Display kullanılabilirdi ama çok maliyetli olduğu için maalesef gerçekleştirilemedi. Bilgisayar ile ARDUINO arasındaki bağlantı kablo yerine Bluetooth la da yapılabilirdi. IR SENSOR ünden başka; ağırlık,ultrosonik sensörler de kullanılabilirdi. 5. KAYNAKLAR: a) Ġnternet Kaynakları: 1.http://arduinoturkiye.com/arduino-c-net-haberlesmesi Arduino-C# 12. 03 Mart 2015.

9 2. https://msdn.microsoft.com/trtr/library/system.io.ports.serialport.datareceived(v=vs.110).aspx SerialPort.DataReceived. 4 Nisan 2014 3. https://www.arduino.cc/en/guide/homepage Arduino 4. http://www.kodumundunyasi.net/gomulu-sistemler/arduino-c-haberlesmesi-1.html Ardiuno-C# serial port librariy 14 Kasım 2014 5. http://arduinoturkiye.com/arduino-temel-baglantilar-arduino-basic-connections/ Temel elemanları etkinleştirme 28 Temmuz 2015 6. http://www.instructables.com/id/how-to-use-a-push-button-switch-with-arduino/ Buton-led kullanımı 25 Temmuz 2013 STANDARTLAR ve KISITLAR FORMU

10 Projenin hazırlanmasında uyulan standart ve kısıtlarla ilgili olarak, aşağıdaki soruları cevaplayınız. 1. Projenizin tasarım boyutu nedir? (Yeni bir proje midir? Var olan bir projenin tekrarı mıdır? Bir projenin parçası mıdır? Sizin tasarımınız proje toplamının yüzde olarak ne kadarını oluşturmaktadır?) 2. Projenizde bir mühendislik problemini kendiniz formüle edip, çözdünüz mü? Açıklayınız. Hayır 3. Önceki derslerde edindiğiniz hangi bilgi ve becerileri kullandınız? Algoritma,Lablar ve Sayısal tasarım derslerinden öğrendiklerimizi kullanıldı. 4. Kullandığınız veya dikkate aldığınız mühendislik standartları nelerdir? (Proje konunuzla ilgili olarak kullandığınız ve kullanılması gereken standartları burada kod ve isimleri ile sıralayınız). IEEE 5. Kullandığınız veya dikkate aldığınız gerçekçi kısıtlar nelerdir? Lütfen boşlukları uygun yanıtlarla doldurunuz. a) Ekonomi Maliyeti düşük ürünlerin kullanmasına dikkat edildi. b) Çevre sorunları: Doğada kolay kaybolmayan maddelerin kullanılmasına sebep oldu. c) Sürdürülebilirlik:

11 Sürdürülebilr ve geliştirilebilir. d) Üretilebilirlik: Üretimi kolay ve maliyeti uygun. e) Etik: Etik olmayan bir duurm söz konusu değildir. f) Sağlık: Sağlık açısından bir problem oluşturacak herhangi bir olayla karşılaşılmadı. g) Güvenlik: Güvenlikle alakalı bir problem oluşturmadı. h) Sosyal ve politik sorunlar: Sosyal ve politik içerikle alakalı problemlere yol açacak bir proje olduğu düşünülmemektedir.