2 BOYUTTA YÜZEYE YAKIN METAL VE METAL OLMAYAN CİSİMLERİN YER TESPİTİ

Benzer belgeler
12. SINIF KONU ANLATIMLI

12. SINIF KONU ANLATIMLI

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

GÜNEŞİN ELEKTROMANYETİK SPEKTRUMU

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

Yıldızlara gidemeyiz; sadece onlardan gelen ışınımı teleskopların yardımıyla gözleyebilir ve çözümleyebiliriz.

Elektromanyetik Radyasyon (Enerji) Nedir?

Elektromanyetik Dalgalar. Test 1 in Çözümleri

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

KMB405 Kimya Mühendisliği Laboratuvarı I IŞINIMLA ISI İLETİMİ. Bursa Teknik Üniversitesi DBMMF Kimya Mühendisliği Bölümü 1

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


ALTERNATİF AKIMIN TEMEL ESASLARI

Fotovoltaik Teknoloji

SES DALGALARı Dalgalar genel olarak, mekanik ve elektromanyetik dalgalar olmak üzere iki ana gruba ayrılır. Elektromanyetik dalgalar, yayılmak için bi

Antenler, Türleri ve Kullanım Yerleri

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

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

ALTERNATİF AKIMIN TANIMI

ALETLİ ANALİZ YÖNTEMLERİ

SINIF İÇİ UYGULAMA KODLARI

C#.Net & Linq (Language Integrated Query)

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

2. Işık Dalgalarında Kutuplanma:

İNTERNET TABANLI PROGRAMLAMA

YAKLAŞIM SENSÖRLERİ (PROXIMITY) Endüktif, Kapasitif ve Optik Yaklaşım Sensörleri

Elektromanyetik Dalgalar. Test 1 in Çözümleri

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

Sensörler. Yrd.Doç.Dr. İlker ÜNAL

Şekil-1. Doğru ve Alternatif Akım dalga şekilleri

İNTERNET TABANLI PROGRAMLAMA- 3.ders

Elektromanyetik Işıma Electromagnetic Radiation (EMR)

YTÜ Makine Mühendisliği Bölümü Termodinamik ve Isı Tekniği Anabilim Dalı Özel Laboratuvar Dersi Radyasyon (Işınım) Isı Transferi Deneyi Çalışma Notu

MADDE VE IŞIK saydam maddeler yarı saydam maddeler saydam olmayan

EĞİTİM-ÖĞRETİM YILI 12 SINIF FİZİK DERSİ DESTEKLEME VE YETİŞTİRME KURSU KAZANIMLARI VE TESTLERİ

Elektromanyetik Dalga Teorisi Ders-3

T.C. NİĞDE ÖMER HALİSDEMİR ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ EĞİTİM ÖĞRETİM YILI LİSANS BİTİRME TEZİ

Büyük Patlama ve Evrenin Oluşumu. Test 1 in Çözümleri

Security Geçiş Sistemleri. Döner Kapılar. Kayar Kapılar. 90 Derece Kapılar METAXDOOR MS30/HRM. Hastane Kapıları. Hermetik Kayar Kapı

Enerji Verimliliği ve İndüksiyon Ocaklarının Değerlendirilmesi. Yrd. Doç. Dr. Halil Murat Ünver Kırıkkale Üniversitesi

Elektromanyetik Dalgalar. Test 1 in Çözümleri. 4. Gözlemci kaynağa yaklaştığına göre; c bağıntısını yazabiliriz. f g

Alternatif Akım Devre Analizi

ELEKTROMANYETİK DALGALAR

yeni_uye_kayit.ascx UserControl sayfamızda, kaydedilmek istenen üye eğer daha önce veritabanımızda kayıtlı ise bunu buldurup kullanıcıyı uyaralı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.

ÖĞRENME ALANI : FİZİKSEL OLAYLAR ÜNİTE 5 : IŞIK

Görsel Programlama (Visual Programming)

21. ÜNİTE FREKANS-GÜÇ KATSAYISI VE DEVİR SAYISININ ÖLÇÜLMESİ

DOĞRUSAL YANGIN ALGILAMA SĐSTEMLERĐ

Toplam

Harici Fotoelektrik etki ve Planck sabiti deney seti

ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ Elektrik ve Elektronik Ölçmeler Laboratuvarı Deney Adı: Sensörler. Deney 5: Sensörler. Deneyin Amacı: A.

Online Elektronik Devre Simülasyonu 123D Circuits

İNTERNET TABANLI PROGRAMLAMA

İletken Düzlemler Üstüne Yerleştirilmiş Antenler

KUTUPLANMA (Polarizasyon) Düzlem elektromanyetik dalgaların kutuplanması

Sensörler. Yrd.Doç.Dr. İlker ÜNAL

Gama ışını görüntüleme: X ışını görüntüleme:

TOBB Ekonomi ve Teknoloji Üniversitesi. chem.libretexts.org

ELASTİK DALGA YAYINIMI

ÖDEVLERİ SİSTEME YÜKLEME USULLERİ

DALGALAR. Dalgalar titreşim doğrultusuna ve Taşıdığı enerjiye göre aşağıdaki şekilde sınıflandırılır.

GÖRÜNTÜ İŞLEME - (7.Hafta) KENAR BELİRLEME ALGORİTMALARI

GİRİŞ. Faylar ve Kıvrımlar. Volkanlar

Prof. Dr. Niyazi MERİÇ Ankara Üniversitesi Nükleer Bilimler Enstitüsü

TEKNOLOJİNİN BİLİMSEL İLKELERİ. Öğr. Gör. Adem ÇALIŞKAN

TİTREŞİM VE DALGALAR BÖLÜM PERİYODİK HAREKET

T.C. MİLLÎ EĞİTİM BAKANLIĞI ÖLÇME, DEĞERLENDİRME VE SINAV HİZMETLERİ GENEL MÜDÜRLÜĞÜ SINIF DEĞERLENDİRME SINAVI

ELEKTRONLAR ve ATOMLAR

Giyilebilir Teknolojiler ve Solar Enerjili Şapka Uygulaması

6. DENEY Alternatif Akım Kaynağı ve Osiloskop Cihazlarının Kullanımı

Görsel Programlama (Visual Programming) 2.Hafta

DENEYLERDE KULLANILACAK LABORATUVAR EKİPMANLARI

Radyasyon ve Elektromanyetik Spektrum

A A A A A A A A A A A

1.CİHAZ ÖLÇÜLERİ 1.RÖLE KARTI VE ÖLÇÜLERİ

Security Geçiş Sistemleri. Döner Kapılar. Kayar Kapılar. 90 Derece Kapılar METAXDOOR MS30/HRC. Hastane Kapıları. Poliklinik Oda Kapıları

FİZİK-II DERSİ LABORATUVARI ( FL 2 5 )

SİSMİK PROSPEKSİYON DERS-1 (GİRİŞ) DOÇ.DR. HÜSEYİN TUR

KMU MÜHENDİSLİK FAKÜLTESİ ELEKTRİK ELEKTRONİK MÜHENDİSLİĞİ ELETRONİK LABORATUVARI DENEY 1 OSİLOSKOP KULLANIMI

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

Mobil ve Kablosuz Ağlar (Mobile and Wireless Networks)

Sensörler. Yrd.Doç.Dr. İlker ÜNAL

2: MALZEME ÖZELLİKLERİ

10. SINIF KONU ANLATIMLI. 3. ÜNİTE: DALGALAR 3. Konu SES DALGALARI ETKİNLİK ve TEST ÇÖZÜMLERİ

ZM-2H2080 İki Faz Step. Motor Sürücüsü. Özet

MIRA INFRA NANO ENDÜSTRİYEL

Işığın izlediği yol : Işık bir doğru boyunca km/saniye lik bir hızla yol alır.

DA DEVRE. Ege Üniversitesi Ege MYO Mekatronik Programı ANALIZI

Suya atılan küçük bir taşın su yüzeyinde oluşturduğu hareketler dalga hareketine örnek olarak verilebilir. Su yüzeyinde oluşan dalgalar suyun alt

C# ÖRNEKLERİ.

UBT Foton Algılayıcıları Ara Sınav Cevap Anahtarı Tarih: 22 Nisan 2015 Süre: 90 dk. İsim:

string yenisaatdeger; string yenidakikadeger; string yenisaniyedeger;

Manyetostatik algılayıcılar Manyetostatik algılayıcılar DC manyetik alan ölçüm prensibine göre çalışırlar. Bu tip algılayıcılar Manyetik endüktif

1. AMAÇ Işınımla ısı transferi olayının tanıtılması, Stefan-Boltzman kanunun ve ters kare kanunun gösterilmesi.

SPEKTROSKOPİ ENSTRÜMANTAL ANALİZ. Elektromanyetik radyasyon (ışıma)

ORM 7420 USING SATELLITE IMAGES IN FOREST RESOURCE PLANNING

RADYASYON FİZİĞİ 2. Prof. Dr. Kıvanç Kamburoğlu

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

FIRAT ÜNİVERSİTESİ Elektrik Elektronik Mühendisliği Antenler ve Mikrodalga Tekniği

Transkript:

2 BOYUTTA YÜZEYE YAKIN METAL VE METAL OLMAYAN CİSİMLERİN YER TESPİTİ 2017 LİSANS TEZİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ Adem ALCAN Selim GÖL

2 Boyutta Yüzeye Yakın Metal ve Metal Olmayan Cisimlerin Yer Tespiti Adem ALCAN Selim GÖL Karabük Üniversitesi Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği Bölümünde Lisans Tezi Olarak Hazırlanmıştır KARABÜK Mayıs 2017 ii

Adem ALCAN, Selim GÖL tarafından hazırlanan 2 Boyutta Yüzeye Yakın Metal ve Metal Olmayan Cisimlerin Yer Tespiti başlıklı bu tezin Lisans Tezi olarak uygun olduğunu onaylarım..../.../201... Prof.Dr. Bahattin TÜRETKEN...... Tez Danışmanı, Karabük Üniversitesi Elektrik-Elektronik Mühendisliği Bölümü Doç.Dr. Mustafa AKTAŞ...... Karabük Üniversitesi Elektrik-Elektronik Mühendisliği Bölümü Yrd.Doç. Hüseyin DEMİREL...... Karabük Üniversitesi Elektrik-Elektronik Mühendisliği Bölümü iii

Bu tezdeki tüm bilgilerin akademik kurallara ve etik ilkelere uygun olarak elde edildiğini ve sunulduğunu; ayrıca bu kuralların ve ilkelerin gerektirdiği şekilde, bu çalışmadan kaynaklanmayan bütün atıfları yaptığımı beyan ederim. Adem ALCAN - Selim GÖL iv

Lisans Tezi 2 Boyutta Yüzeye Yakın Metal ve Metal Olmayan Cisimlerin Yer Tespiti Adem ALCAN Selim GÖL Karabük Üniversitesi Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği Bölümü Tez Danışmanı: Prof. Dr. Bahattin TÜRETKKEN Mayıs 2017, 79 sayfa Anahtar Kelimeler : 2D tarama, Metal, Elektromanyetik, Elektromanyetik Dalga v 1

TEŞEKKÜR Bu tez çalışmamızda yardımlarından dolayı, her zaman anlayışlı olan ve tez konumuzun danışmanlığını yapan Prof.Dr.Bahattin TÜRETKEN hocamıza, bilgi alışverişi yaptığımız diğer hocalarımıza, bize her türlü maddi ve manevi desteği veren arkadaşlarımıza ve ailelerimize teşekkürlerimizi sunarız. 2 vi

İÇİNDEKİLER Sayfa TEŞEKKÜR... vi 2 1. GİRİŞ... 1 1.1 Ellektromanyetik Dalga... 3 1.2 Elektromanyetik Dalgaların Üretilmesi... 7 1.3 Elektromanyetik Dalga Çeşitleri... 8 1.3.1 Gama Işınları... 8 1.3.2 X Işınları... 9 1.3.3 Ultraviyole Işınlar... 10 1.3.4 Kızılötesi Işınlar... 11 1.3.5 Görünür Işık... 11 1.3.6 Mor Ve Ötesi Işınları... 12 1.3.7 MİKRODALGALAR... 12 1.3.8 Radyo Dalgaları... 13 1.4 Elektromanyetik Dalgaların Özellikleri... 13 1.5 Alan Tarama Aygıtları Ve Çalışma Teorileri... 14 1.6 Çalışması Yapılacak Sistem İşlevi Ve Gereksinimleri... 16 1.6.1 Endüktif Sensör... 17 2 DONANIM VE YAZILIM... 19 2.1 Mekanik Yapı... 19 2.2 Yazılımsal Yapı... 24 2.2.1 C# Kodları... 24 2.2.2 Arduino Kodları... 33 3 PROJENİN GELİŞTİRİLMESİ... 45 3

4 YÖNETİM PANELİ EKRANI... 51 4.1 Panel Kullanımı... 51 5 TESTLER VE SONUÇ... 53 5.1.1 Çalışma Aşamaları... 67 6 ÖZGEÇMİŞ... 72 4 viii

2. 1. GİRİŞ Özet Bu tezin amacı zemine hiçbir temasta bulunmadan zeminin altındaki metallerin konumsal tespitini yapmak. Uygulanan bu sistemde bizim için alan ölçülerinde esnekliği ön planda tutmak. Bu proje için çalışma planı Tablo 1.1 de gösterilmektedir. Projenin Detayları Tasarım çalışması Ürün siparişleri Yazılım çalışması Malzeme temini (diğer) Malzeme testleri Montaj Yazılım yükleme Test Aşaması Teslim ve Sunum 1. Hafta EKİM 2. Hafta 3. Hafta 4. Hafta 1. Hafta KASIM 2. Hafta 3. Hafta 4. Hafta 1. Hafta ARALIK 2. Hafta 3. Hafta 4. Hafta 1. Hafta OCAK 2. Hafta 3. Hafta 4. Hafta ŞU BA T 1. Hafta 1

MART 2. Hafta 3. Hafta 4. Hafta 1. Hafta 2. Hafta 3. Hafta 4. Hafta NİSAN MAYIS 1. Hafta 2. Hafta 3. Hafta 4. Hafta 1. Hafta 2. Hafta 3. Hafta 4. Hafta 2

Elektromanyetik nedir Elektromanyetizmaya alakası bulunan ve bununla ilgili olup Fransızca kökenli bir terim olan Elektromanyetik bir fizik terimidir. Farklı alanların içerisinde de bulunan elektromanyetik Kimyada mıknatıslık ve elektrik olaylarını kapsar. 1865 yılında fizikçi James Maxvell in ışık hızına yakın bir hızda hareket eden ses dalgalarının gitmesini sağlayan elektromanyetik dalgaların yani radyo dalgalarını keşfetmiştir. Alman bilim adamı olan Hertz ise Maxwell in bu tezini geliştirerek ve deneyler yaparak ispatladı. 1.1 Ellektromanyetik Dalga Elektromanyetik Dalga Elektromanyetik dalgalar bir birine dik düzlemdeki birlikte değişen elektrik ve manyetik alanlardan meydana gelir. Uzay ortamında değişen bu alanlar ise manyetik alanları meydana getirir. Herhangi bir ortam içerisindeki elektrik alanı değiştirmek için yüklü cisimleri ivmelendirerek hareket ettirmek gerekir. Hareket eden bu yükler elektromanyetik dalga yayarlar. Elektromanyetik iki temel bileşene sahiptir. Bunlar Elektrik alan(e) ve Manyetik Alan(B) bileşenleridir. Bu iki bileşen birbirine diktir ve elektromanyetik dalganın yayılma yönü ise bu iki bileşene diktir. 3

Şekil 1.1 Birim yüke etki eden kuvvete elektrik alan denir. Bu kuvvet yönü, + yükten yüke doğrudur. Elektrik alanların yönleri yönlü oklarla gösterilir. Diğer bir değişle elektrik alan çizgileri potansiyeli yüksek olan bölgeden düşük potansiye doğrudur. Manyetik alan ise herhangi bir noktada v hızıyla hareket eden q yükünde F kuvvetini meydana getiren bir alan vektörüdür. Aşağıdaki şekildede gösterildiği gibi x doğrultusunda hareket eden bir elektromanyetik dalganın 3 boyutlu şekli gösterilmektedir. Şekil 1.2 Elektromanyetik dalganın 3 boyutlu hareketi. 4

Şekil 1.3 Elektromanyetik dalganın 1 boyutlu görünümü. Elektromanyetik dalganın yayılma yönü sağ el kuralı ile bulunmaktadır. Sinüzoidal dalganın bir noktasından başlamak üzere yine aynı noktaya varıncaya kadar geçen süreye periyot (T) denir. Birim zamandaki (1 sn.) periyot sayısına ise frekans (f) denir. f= 1/T dir. Frekans birimi Hertz (Hz) dir. 1 KHz = 1.000 Hz 1 MHz = 1.000.000 Hz 1 GHz = 1.000.000.000 Hz dir. Elektromanyetik dalgalar ışık hızı (c= 300.000 km/sn. = 161.800 NM/sn.) ile yayılır. Bir elektromanyetik dalganın bir periyodunda kat edilen yol, dalga boyunu (λ) verir. NOT: Lamda (λ) ışığın dalga boyu gösterim simgesi. Birimi metredir (m). c = λ.f ve λ = c/f dir. Düşük frekanslı olan elektromanyetik dalgalar, uzun dalga boyuna sahiptirler büyük frekanslı dalgalar ise daha kısa dalga boyuna sahiptirler. Elektromanyetik dalgalar taşıdıkları enerji, frekansları ve dalga boylarına göre sınıflandırılır. Frekans değerleri sınıflandırıldığında farklı olan ışınlar sıralandığında elektromanyetik spektrum elde edilir. Tüm bu ışın skalasında düşük enerjili radyo dalgalarından yüksek 5

enerjili dalgalara kadar olan bu skalaya elektromanyetik spektrum denir ve bu skalada bilindiği kadarıyla radyo dalgalarıyla başlayıp gama dalgalarında biter. Şekil 1.4 Elektromanyetik dalga spektrumu 6

1.2 Elektromanyetik Dalgaların Üretilmesi Elektromanyetik Dalgaların Üretilmesi Elektromanyetik dalgaların dalga boylarına bağlı olarak elektromanyetik dalga üretecinin yapısı da değişir. Şekil 1.5 te görüldüğü gibi kısa dalga yayını yapan elektromanyetik sinyal üreteci ω=1/ LC frekansı ile titreşen bir LC devresini göstermektedir. Şekil 1.5 Elektromanyetik Dalga Üreteci Sistem dipol antenin çıkışı olan iki kolunun uçlarında elektrik yüklerinin salınımı işlemini yapar ve bu salının sonucunda belirli bir düzende yayılan elektromanyetik alan çizgilerinin yayılımı şekil 1.6 da görünmektedir. Şekil 1.6 Elektromanyetik Alan Çizgilerinin Yayılımı 7

1.3 Elektromanyetik Dalga Çeşitleri Elektromanyetik Dalga Çeşitleri Elektromanyetik dalgalar dalga boylarına (λ) göre gruplandırılır. Sinyalin iki tepe noktası arasındaki uzaklığa verilen isime dalga boyu(λ) denir. Elektromanyetik dalga çeşitleri; Şekil 1.7 Elektromanyetik Spektrum 1.3.1 Gama Işınları Gama Işınları En güçlü enerjiye sahip dalgalar olarak bilinirler. Skalada en kısa dalga boyuna(λ) sahip dalgalar olmasına rağmen en büyük foton enerjisi ve en yükse frekanslara sahiplerdir. Doğal ve yapay radyoaktif maddelerin çekirlerlerinde oluşan reaksiyon sonucunda açığa çıkarlar. Herhangi bir madde içerisinden geçitiklerinde o maddenin atomları ve molekülleri dışında bulunan elektronların tamamına çarparlar ve bunun sonucunda iyonlaşma meydana gelir. Gama ışınarının taşıdıkları enerji miktarı çok yüksel olduğundan dolayı canlılar üzerinde yüksek miktarda zararlı etki oluştururlar. Bu ışında doğru kullanılmadığında aksi taktirde faydadan çok zarara sebebiyet verirler. 8

Şekil 1.8 Gama Işınları Çok daha küçük dalga boyunave çok yüksek enerji sahiptirler. Atomların bozulması sonucunda meydana gelirler. Dalga boyları 10 pikometreden küçüktür. 1.3.2 X Işınları X Işınları Çok yüksek hızlarda elektronların herhangi bir metal hedefe gönderilerek durdurulması sonucunda ortaya çıkarlar. Katot üzerinden hızlandırılan elektronların anota çarparak durması sonucu meydana gelirler. X ışınları yüksek enerjiye ve küçük dalga boyuna sahiptirler.10 nanometre ile 10 pikometre arasında dalga boyuna sahiptirler Şekil 1.9 X-Işınları 9

1.3.3 Ultraviyole Işınlar Ultraviyole ışınları Ultraviyole ışınları gözle görülmezler. 10 ile 380 nanometre aralığında bir dalga boyuna sahiptirler. Bu ışınların ana kaynağı güneştir. Elektrik ve kaynak arkları sırasında da oluşurlar. Güneşten dünyaya gelen ışın miktarları aşağıdaki durumlara bağlıdır; Koruyucu ozon tabakasına Bulut durumuna Mevsime Günün saatine Enleme Deniz seviyesinden yüksekliği Şekil 1.10 Ultraviyole Işınları Ultraviyoler ışınları yansıyarakta etkili olabilir. Su, kar veya kumdan yansıyan bu ışınlar kolaylıkla engellenebilir. 10

1.3.4 Kızılötesi Işınlar Kızıl Ötesi Işınlar Dalga boyları 1-7 mm 10-7m arasındadır. Isıya sahip cisimler tarafından yayılırlar. Elektromanyetik dalgalar arasında görebildiğimiz tek ışınlardır. Farklı renklerde kendini gösterir. Bu renklerin tümü bir araya geldiğinda dalga boylarının toplamı bize görünür ışık oluşturur. 1.3.5 Görünür Işık Görünür Işık Şekil 1.11 Kızıl Ötesi Işınlar Dalga boyları 4x10 14 Hz ile 7x10 14 Hz arasındadır. İnsan gözünün algıladığı ışıktır. Bunlar çok sıcak cisimlerden yayılır. (Kırmızı, sarı, yesil, mavi, mor gibi) Şekil 1.12 Görünür Işık 11

1.3.6 Mor Ve Ötesi Işınları Mor Ötesi Işınlar Bunların kaynağı genelde güneştir. Dalga boyları 4 10 7m 6 10 10m arasındadır. Yeryüzüne az miktarda ulaşırlar. Güneş çarpmasının sebebi bu ışınlardır. Şekil 1.13 Mor Ötesi Işınlar 1.3.7 MİKRODALGALAR Mikrodalgalar Dalga boyları 0,1-100cm ve frekansları 0,3-300 giga hertz (GHz) olan elektromanyetik dalgalardır. Bazı elektronik cihazlar tarafından üretilebilirler. Işık, yağmur ve toz içerisinden kolayca geçebildikleri için uzaydan dünyayı görüntüleme amacı ile kullanılırlar. Şekil 1.14 Mikrodalgalar 12

1.3.8 Radyo Dalgaları Radyo Dalgaları Anten üzerindeki yüklerin hareketlendirilmesi (ivmelenmesi) ile meydana gelirler. Dünyanın iyonosfer tabakası tarafından yansıtılan bu dalgalar bazı cisimlerin içerisinden rahatca geçebilirler. Titreşen devrelerin bulunduğu elektronik cihazlar tarafından üretilirler. Dalga boyları 0,3m 1 km arasında değişen bu dalgalar taşıyıcı sinyal olarak kullanılırlar. 1.4 Elektromanyetik Dalgaların Özellikleri Elektromanyetik Dalgaların Özellikleri Yüklü cisimlerin ivmeli hareketleri sonucu meydana gelirler. Kendini meydana getiren, elektrik ve manyetik alanları birbirine diktir. Işık hızıyla yayılırlar. Yüksüzdürler. Yüksüz oldukları için elektrik ve manyetik alandan etkilenmezler. Enerjileri E=h ν formülü ile hesaplanır. Hızları farklı ortamlara geçtiklerinde değişir. Soğurulabilirler; soğuran cisimler ısınır. Enine dalgalardır. Kendini meydana getiren elektrik ve manyetik alanları aynı fazdadır. E = B.c dir. (c; ışık hızıdır.) Yansıma, kırılma, kırınım ve girişim yapabilirler. Boşlukta yayılabilirler. 13

1.5 Alan Tarama Aygıtları Ve Çalışma Teorileri Günümüzde bu alanda geliştirilen bir takım pratik ve kullanışlı cihazlar vardır ve bunlara genel olarak ALAN TARAMA cihazları denmektedir. Bu cihazlar özellikle geniş arazilerde ve çok derinde veya yüzeye yakın olabilecek bazı metal veya boşlukların tespitinde kullanılan yardımcı cihazlardır. Prensip olarak bı cihazlar, statik enerjiyi kullanıcısından alıp hareket kabiliyeti olan mekanik bir sistemle hedefin yaydığı frekansları algılayarak konum belirtir. Herhangi bir zemin içinde bulunan cisim ve minerallerin çokluğu ya da yoğunluğu tarama cihazının kararsız davranmasına sebep olabilir. Bu kararsız davranışları, tespit edilen bir hedefin kesin olarak konumunun belirlenememesine yol açabilir. Kullanıcının aradığı kesin ve kararlı sinyallerdir. Alan Taramada en doğru ve hızlı sonucu almak, temel teori ve buna bağlı prensibi değişikliğe uğratmadan, statik enerjiyi kullanarak mümkün olabilmektedir. Yer altında bulunan metal kütlenin uzun süre bulunduğu yerde hiç açılmadan duruyor olması, metal kütlenin etrafında manyetik bir alan oluşturacaktır. Bu Manyetik Alan, cismin toprak altında kalma süresi uzadıkça daha da genişleyerek büyüyecektir. Manyetik alanın, metal etkisi nedeniyle metal objeleri daha büyük veya daha derinden tespit edilmesine hem sebep hem de yardımcı olacaktır. Aşağıda olası bir aramada, Alan Tarama ile yapılabilecek yer tespiti ve hedefin ebat ve yaklaşık derinliğinin hesaplanması görülmektedir 14

Şekil 1.15 Şekil 1.15 te görülen hedef burada metal bir objedir ve 45 derecelik açılar ile tüm yönlere enerji frekansını yaymaktadır. Yüzeye ulaşan bu frekanslar dik bir açıya kavuşur ve yaklaşık 100-180 cm kadar daha yükselebilirler. Daha sonra bu frekanslar, kuzeye doğru yönelme eğilimindedir. Şekil 1.16 Şekil 1.16 da olası bir hedefin yeryüzüne ulaşan frekanslarının düzlem olarak etki alanını görmektesiniz. Alan Tarama cihazı ile bu etki alanının içinde bulunmak, cihazın hedef kaynağına doğru yönelmesine sebep olacaktır. 15

1.6 Çalışması Yapılacak Sistem İşlevi Ve Gereksinimleri Herhangi bir cismin istenilen yerde olup olmadığını belirleyen elektronik bir algılayıcı tipidir. Bu tip algılayıcılar ürettikleri sinyal sayısaldır ve 1(evet), 0 (hayır) çıkışı verirler. Cisimlerin temassız biçimde algılanması, hareketli parçalara sahip olmaması ve arızalarının az olmasından dolayı risk içeren alanlarda kullanılması sebebiyle endüstride en çok karşılaşılan algılayıcılardır. Endüstride en çok karşılaşılan temassız algılayıcı çeşitleri aşağıda listelenmiştir.; Endüktif Kapasitif Manyetik Optik (ışık bariyeri, yansıma algılayıcıları) Ultrasonik Elektromanyetik dalgalarla tarama sistemi temel alınarak kısıtlı bütçeyle oluşturulan bu projede kullanılacak malzeme tipi olarak yaklaşım sensörleri tercih edilmiştir. Bilgi gönderici olarak kullanılan Endüktif sensördür. 16

1.6.1 Endüktif Sensör Resim 2.16 Endüktif sensör Çalışma Prensibi Endüktif sensörler bobin, LC osilatör, tetikleyici ve çıkış katından oluşmaktadır. Sensöre uygulanan besleme gerilimi sonucunda osilatör salınıma başlar ve yüksek frekanslı bir elektromanyetik alan oluşturur. Osilatör bobini tarafından üretilen ve her hangi bir yöne yönelmeden bobin eksenine simetrik biçimlenen manyetik alana ferrit çekirdek sayesinde istenen doğrultuda yön verilir. Bobin ve çekirdek ayrıca metal ekranla çevrildiği takdirde manyetik alan tamamen sensörün ön kısmına hapsedilir ve böylece sensöre gömülebilir montaj özelliği eklenmiş olur. Osilatör tarafından üretilen bu manyetik alan içine giren iletken malzemeler algılama yüzeyine yakınlıklarıyla orantılı olarak bobindeki akımı değiştirirler. Değişen bu akım tetikleyiciyi aktifler ve çıkış katını anahtarlar. Şekil 1.15 Endüktif sensörün Çalışması 17

Sistemde kullanılacak endüktif sensörün bağlantı şeması Resim 1.1 18

2 DONANIM VE YAZILIM 2.1 Mekanik Yapı Mekanik Yapı Makine X ve Y eksenleri arasındaki belirlenmiş bir alanı tarayacağından dolayı bu hareketleri kontrol etmek için milleri üzerinde bilyeli lineer rulmanlar kullanılmakta. X ekseni için 10mm Y ekseni için 2 adet 8mm mil kullanılmıştır. Hareket miller üzeride alanı tarayacak elektronik komponenti taşıması için tasarlanan birde parça bulunmakta. X ekseni üzerinde 40 cm Y ekseni üzerinde 40 cm alanı taraması için gelirilen bu hareketli parçaları kontrol etmek için 3 adet step motor kullanmıştır. Kutu ve kutu üzerinde miller, hareket eden ve milleri sabitleyen parçaların çizimleri aşağıdadir Resim 2.1 Kutu Tasarıımı 19

Aşağıdaki resimde de görüldüğü gibi 10 cm derinliğe sahip 40x40 genişliğe sahip bir kutu tasarladık. Şekil 2.1 Kutu Uzunlukları Aşağıda mekanik sistem için gerekli parçaların çizimlerinin ekrar görüntüleri bulunmaktadır Resim 2.2 Yan Kenar Taşıyıcı 20

Resim 2.3 Yatay eksen 8mm Mil Tutucu Resim 2.4 40x40x10 Taranacak Kutu Tasarımı 21

Resim 2.5 Dikey Eksen 10 mm Mil Tutucu Resim 2.6 Lineer Rulman Hareketli parçaların simülasyonunu çizim porgramı üzeriden gerçekleştirdik. 22

Resim 2.7 Kutu Animasyon Resim 2.8 Kablo Taşıyıcı 23

2.2 Yazılımsal Yapı 2.2.1 C# Kodları Aşağıdaki kodların yanı sıra programın tasarımının yapılıp tasarım ekranı üzerindeki bölgelere kodların bağlantısı yapılmıştır. Yapılan sistemin iletişim yolu olarak seri port kullanılarak büyük bir oranda veri kaybı önlenmiştir. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO.Ports; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace TezDesktop public partial class Form1 : Form int _x = 0, _y = 0; bool exist = false; bool ready = false; Bitmap bitmap; private const int width = 600, height = 600; private const int u_width = 12, u_height = 12; private const int bosluk = 0; private const int mavi = 1; private const int kirmizi = 2; List<Coordinates> kordinatlar = new List<Coordinates>(); Coordinates kordinat; string port = ""; List<string> foundedtext = new List<string>(); private Bitmap blue get Bitmap bitmap = new Bitmap(u_width, u_height); Pen mypen = new Pen(Color.Black); using (Graphics gfx = Graphics.FromImage(bitmap)) 24

using (SolidBrush brush = new SolidBrush(Color.FromArgb(46, 118, 234))) gfx.fillrectangle(brush, 0, 0, u_width, u_height); gfx.drawrectangle(mypen, 0, 0, u_width, u_height); return bitmap; private Bitmap red get Bitmap bitmap = new Bitmap(u_width, u_height); Pen mypen = new Pen(Color.Black); using (Graphics gfx = Graphics.FromImage(bitmap)) using (SolidBrush brush = new SolidBrush(Color.FromArgb(216, 95, 90))) gfx.fillrectangle(brush, 0, 0, u_width, u_height); u_height); gfx.drawrectangle(mypen, 0, 0, u_width, return bitmap; private Bitmap clear get Bitmap bitmap = new Bitmap(u_width, u_height); Pen mypen = new Pen(Color.Black); using (Graphics gfx = Graphics.FromImage(bitmap)) using (SolidBrush brush = new SolidBrush(Color.FromArgb(255, 255, 255))) gfx.fillrectangle(brush, 0, 0, u_width, u_height); u_height); gfx.drawrectangle(mypen, 0, 0, u_width, 25

return bitmap; public Form1() InitializeComponent(); timer1.enabled = false; timer1.interval = 100; timer1.tick += Timer1_Tick; timer2.enabled = false; timer2.interval = 9000; timer2.tick += Timer2_Tick; bitmap = new Bitmap(width, height); ClearUI(); private void Timer2_Tick(object sender, EventArgs e) listbox1.items.clear(); foreach (var box in foundedtext) listbox1.items.add(box); private void Timer1_Tick(object sender, EventArgs e) label2.text = "X : " + (_x == -1? 0 : _x + 1) + " Y : " + (_y + 1); if (_x!= -1) UpdateCoordinates(); private void button1_click(object sender, EventArgs e) picturebox4.hide(); for (int i = 0; i < 20; i++) if (!serialport1.isopen) try serialport1.portname = "COM" + i; serialport1.open(); if (serialport1.isopen) 26

button6.enabled = true; timer1.enabled = true; timer2.enabled = true; port = serialport1.portname; serialport1.baudrate = 9600; serialport1.datareceived += SerialPort1_DataReceived; labelport.text = " Connected with " + port + " Port"; labelport2.text = " Connected with " + port + " Port"; catch private void SerialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e) try var gelen = serialport1.readexisting(); switch (gelen[0]) case 'x': _x++; if (gelen[1] == '-') exist = false; else exist = true; break; case '-': if (gelen[1] == 'x') _x--; else _y--; if (gelen[2] == '-') exist = false; else exist = true; break; case 'y': _y++; if (_y == 50) serialport1.write("p"); 27

catch if (gelen[1] == '-') exist = false; else exist = true; break; case '1': exist = true; break; case '0': exist = false; break; case 'o': if (gelen[1] == 'k') port = ((SerialPort)sender).PortName; break; private void button1_click_1(object sender, EventArgs e) labelport.text = " Disconnect "; labelport2.text = " Disconnect"; if (serialport1.isopen) serialport1.close(); private void button2_click(object sender, EventArgs e) if (_x!= 49) if (serialport1.isopen) serialport1.write("a"); label4.text = "One step forward in X direction"; label5.text = " "; private void button3_click(object sender, EventArgs e) if (_x!= 0) if (serialport1.isopen) 28

serialport1.write("b"); label4.text = " One step back in X direction"; label5.text = " "; private void button4_click(object sender, EventArgs e) if (_y!= 50) if (serialport1.isopen) serialport1.write("c"); label5.text = " One step forward in Y direction"; label4.text = " "; private void button5_click(object sender, EventArgs e) if (_y!= 0) if (serialport1.isopen) serialport1.write("d"); label5.text = "One step back in Y direction"; label4.text = " "; private void start_click(object sender, EventArgs e) if (serialport1.isopen) serialport1.write("s"); label4.text = " "; label5.text = " "; private void pause_click(object sender, EventArgs e) pause.text = "Resume"; if (serialport1.isopen) serialport1.write("p"); private void button6_click(object sender, EventArgs e) if (serialport1.isopen) 29

serialport1.write("r"); _x = -1; _y = 0; bitmap = new Bitmap(width, height); kordinatlar = new List<Coordinates>(); ClearUI(); label4.text = " "; label5.text = " "; start.enabled = true; pause.enabled = true; cancel.enabled = true; button2.enabled = true; button3.enabled = true; button4.enabled = true; button5.enabled = true; private void Form1_Load(object sender, EventArgs e) button6.enabled = false; start.enabled = false; pause.enabled = false; button2.enabled = false; button3.enabled = false; button4.enabled = false; button5.enabled = false; private void Form1_FormClosing(object sender, FormClosingEventArgs e) if (serialport1.isopen) serialport1.close(); private void cancel_click(object sender, EventArgs e) if (serialport1.isopen) serialport1.write("o"); private void groupbox3_enter(object sender, EventArgs e) 30

private void groupbox1_enter(object sender, EventArgs e) private void abouttoolstripmenuitem_click(object sender, EventArgs e) MessageBox.Show( "Bu program 2016-2017 öğretim yılı "+"\n" + "Engineering Design dersi kapsamındaki çalışmalar sonucunda " + "\n" + "Adem ALCAN tarafından yapılmıştır."); private void exittoolstripmenuitem_click(object sender, EventArgs e) Application.Exit(); private void disconnecttoolstripmenuitem_click(object sender, EventArgs e) labelport.text = " Disconnect "; labelport2.text = " Disconnect"; if (serialport1.isopen) serialport1.close(); private void connecttoolstripmenuitem_click(object sender, EventArgs e) for (int i = 0; i < 20; i++) if (!serialport1.isopen) try serialport1.portname = "COM" + i; serialport1.open(); if (serialport1.isopen) button6.enabled = true; timer1.enabled = true; timer2.enabled = true; port = serialport1.portname; 31

SerialPort1_DataReceived; port + " Port"; port + " Port"; catch serialport1.baudrate = 9600; serialport1.datareceived += labelport.text = " Connected with " + labelport2.text = " Connected with " + private void rsttoolstripmenuitem_click(object sender, EventArgs e) if (serialport1.isopen) serialport1.write("r"); _x = -1; _y = 0; bitmap = new Bitmap(width, height); kordinatlar = new List<Coordinates>(); ClearUI(); label4.text = " "; label5.text = " "; start.enabled = true; pause.enabled = true; cancel.enabled = true; button2.enabled = true; button3.enabled = true; button4.enabled = true; button5.enabled = true; private void UpdateCoordinates() kordinat = new Coordinates() x = _x * u_width, y = _y * u_height, exist = exist, current = true ; foreach (var coordinate in kordinatlar) if (coordinate.current) coordinate.current = false; 32

kordinatlar.add(kordinat); foreach (var coordinate in kordinatlar) using (Graphics g = Graphics.FromImage(bitmap)) if (coordinate.exist) g.drawimage(red, coordinate.x, coordinate.y, u_width, u_height); if (coordinate.current) foundedtext.add("\n" + "x: " + ((coordinate.x / u_width) + 1 ) + " y: " + ((coordinate.y / u_height) + 1)); else g.drawimage(blue, coordinate.x, coordinate.y, u_width, u_height); if (coordinate.current) g.drawstring("0", x.font, new SolidBrush(Color.FromArgb(255, 255, 255)), coordinate.x + 1, coordinate.y + 1); picturebox1.image = bitmap; private void ClearUI() using (Graphics g = Graphics.FromImage(bitmap)) for (int i = 0; i < 50; i++) for (int j = 0; j < 50; j++) g.drawimage(clear, i * u_width, j * u_height, u_width, u_height); 2.2.2 Arduino Kodları #define X_STEP_PIN 54 #define X_DIR_PIN 55 #define X_ENABLE_PIN 38 33

#define X_MIN_PIN 3 #define X_MAX_PIN 2 #define Y_STEP_PIN 60 #define Y_DIR_PIN 61 #define Y_ENABLE_PIN 56 #define Y_MIN_PIN 14 #define Y_MAX_PIN 15 #define Z_STEP_PIN 46 #define Z_DIR_PIN 48 #define Z_ENABLE_PIN 62 #define Z_MIN_PIN 18 #define Z_MAX_PIN 19 #define LED_PIN 13 #define FAN_PIN 9 char giris; int stpx_min=0; int stpy_min=0; int stpx_max=0; int stpy_max=0; int x_r_button = 0; int y_r_button = 0; 34

void sola_git(int n); void saga_git(int n); void ileri(int n); void geri(int n); void geri_git_reset(int n); void sola_git_reset(int n); bool calisiyormu = true; bool y_calisiyormu = true; bool x_calisiyormu = true; int sol = 0; int sag = 0; int ileri_read = 0; void setup() Serial.begin(9600); pinmode(x_min_pin, INPUT); pinmode(y_min_pin, INPUT); pinmode(y_max_pin, INPUT); pinmode(led_pin, OUTPUT); pinmode(x_step_pin pinmode(x_dir_pin, OUTPUT);, OUTPUT); pinmode(x_enable_pin, OUTPUT); pinmode(y_step_pin pinmode(y_dir_pin, OUTPUT);, OUTPUT); pinmode(y_enable_pin, OUTPUT); pinmode(z_step_pin, OUTPUT); 35

pinmode(z_dir_pin, OUTPUT); pinmode(z_enable_pin, OUTPUT); digitalwrite(x_enable_pin, LOW); digitalwrite(y_enable_pin, LOW); digitalwrite(z_enable_pin, LOW); void loop () if(serial.avalable()) giris= (char) Serial.read(); switch (giris) case 'r': calisiyormu = true; x_calisiyormu = true; y_calisiyormu = true; if(calisyormu && x_calisyormu) sola_git_reset(10000); giris = ""; digitalwrite(x_enable_pin, LOW); if(calisyormu && y_calisyormu) geri_git_reset(10000); giris = ""; digitalwrite(x_enable_pin, LOW); Serial.write('r'); break; case 's': calisiyormu = true; 36

x_calisiyormu = true; y_calisiyormu = true; for ( int j=0;j<27;j++) sag = 0; sol = 0; if(calisiyormu) sola_git(7000); giris = ""; digitalwrite(x_enable_pin, LOW); if(calisiyormu) ileri(140); if(calisiyormu) saga_git(7000); giris = ""; digitalwrite(x_enable_pin, LOW); if(calisiyormu) ileri(140); giris = ""; ileri_read = 0; digitalwrite(x_enable_pin, HIGH); digitalwrite(y_enable_pin, HIGH); digitalwrite(z_enable_pin, HIGH); case 'a': sola_git(140); giris = ""; 37

digitalwrite(x_enable_pin, LOW); break; case 'b': saga_git(140); giris = ""; digitalwrite(x_enable_pin, LOW); break; case 'c': ileri(140); giris = ""; digitalwrite(y_enable_pin, LOW); break; case 'd': geri(140); giris = ""; digitalwrite(y_enable_pin, LOW); break; case 'g': if(digitalread(y_max_pin) == 0) Serial.write("1"); else Serial.write("0"); break; case 't': Serial.write("ok"); 38

break; void sola_git(int n) for(int i=0 ; i< n ; i++ ) if(serial.available()) giris= (char) Serial.read(); if(giris == 'p') calisiyormu = false; break; digitalwrite(x_dir_pin, LOW); digitalwrite(x_step_pin, LOW); delay(1); digitalwrite(x_step_pin, HIGH); if(i%140 == 0) if(digitalread(y_max_pin) == 0) Serial.println("x+"); else Serial.println("x-"); //Serial.println("x"); void ileri(int n) 39

for(int i=0 ; i< n ; i++) if(serial.available()) giris= (char) Serial.read(); if(giris == 'p' digitalread(x_max_pin) == 0) calisiyormu = false; break; digitalwrite(y_dir_pin, HIGH); digitalwrite(y_step_pin, HIGH); digitalwrite(z_dir_pin, HIGH); digitalwrite(z_step_pin, HIGH); delay(1); digitalwrite(y_step_pin, LOW); digitalwrite(z_step_pin, LOW); digitalwrite(y_enable_pin, LOW); digitalwrite(z_enable_pin, LOW); if(digitalread(y_max_pin) == 0) Serial.println("y+"); else Serial.println("y-"); void saga_git(int n) for(int i=0 ; i<n ; i++ ) if(serial.available()) giris= (char) Serial.read(); 40

if(giris == 'p') calisiyormu = false; break; digitalwrite(x_dir_pin, HIGH); digitalwrite(x_step_pin, HIGH); delay(1); digitalwrite(x_step_pin, LOW); if(i%140 == 0) //Serial.println("-x"); if(digitalread(y_max_pin) == 0) Serial.println("-x+"); else Serial.println("-x-"); //Serial.println("-x"); void geri(int n) for(int i=0 ; i< n ; i++) if(serial.available()) giris= (char) Serial.read(); if(giris == 'p') calisiyormu = false; break; 41

digitalwrite(y_dir_pin, LOW); digitalwrite(y_step_pin, HIGH); digitalwrite( Z_DIR_PIN, LOW); digitalwrite(z_step_pin, HIGH); delay(1); digitalwrite(y_step_pin, LOW); digitalwrite(z_step_pin, LOW); giris = ""; digitalwrite(y_enable_pin, LOW); digitalwrite(z_enable_pin, LOW); if(i%140 == 0) if(digitalread(y_max_pin) == 0) Serial.println("-y+"); else Serial.println("-y-"); void geri_git_reset(int n) for(int i=0 ; i< n ; i++) if(serial.available()) giris= (char) Serial.read(); if(giris == 'p') calisiyormu = false; 42

break; x_r_button = digitalread(14); if(x_r_button == 0) x_calisiyormu = false; break; digitalwrite(y_dir_pin, LOW); digitalwrite(y_step_pin, HIGH); digitalwrite( Z_DIR_PIN, LOW); digitalwrite(z_step_pin, HIGH); delay(1); digitalwrite(y_step_pin, LOW); digitalwrite(z_step_pin, LOW); giris = ""; digitalwrite(y_enable_pin, LOW); digitalwrite(z_enable_pin, LOW); void sola_git_reset(int n) for(int i=0 ; i< n ; i++ ) if(serial.available()) giris= (char) Serial.read(); if(giris == 'p') calisiyormu = false; 43

break; x_r_button = digitalread(3); if(x_r_button == 0) x_calisiyormu = false; break; digitalwrite(x_dir_pin, HIGH); digitalwrite(x_step_pin, HIGH); delay(1); digitalwrite(x_step_pin, LOW); 44

3 PROJENİN GELİŞTİRİLMESİ Yapacağımız sistemin genel amacı kurulduğu bölgedeki zeminin altında bulunan metallerin konumlarının tespit edilmesi. Her metal için ayrı konumlar belirlenmesi ve bütün alan üzerindeki taramayı yazacağımız bir paket programla görselleştirerek kullanıcıya sunulması. Programda metallerin konumlarını belirlememiz için zeminde konumsal bir çalışma yaparak koordinat sistemini oluşturmaya çalışacağız. Zemine özel oluşturacağımız bu koordinat sistemi üzerinde cihazımıza bağlı step motorlar eşliğinde iki boyutta tarama gerçekleştirmek. Motorların adım sayıları ve adım süreleri göz önüne alınarak uygulanacağı zemine özel koordinat sistemi geliştirilmektedir. Tarama işleminin gerçekleştirileceği paket program görseli aşağıdaki gibidir. Resim 2.8 İlk Oluşturulan Tarama Ekranı 45

Resim 2.9 Bağlantı Programın içeriğindeki ilk kutucukta bulunan Connect butonu sistemin seri haberleşme(usb) portunu kullanarak pc ile sürücü kartı arasındaki bağlantıyı sağlamaya yarar. Disconnect butonu ise bağlantıyı kesmek amacı ile kullanılacaktır. Manual Control sekmesi devrede kullanılan motorların X ve Y koordinatları üzerinde istenilen bölgeler arası bağımsız kontrol yapmasını sağlar Resim 2.10 Manuel kontrol Resim 2.11 Otomatik Tarama Automatic Control sekmesinin amacı start butonuna basıldığında sistemi sıfır konumuna alarak tarama yapması, pause butonu herhangi bir olağan dışı durumda sistemin son konumunda durdurulması, stop butonuna basıldığında ise sistemi kapatmasını sağlamaktır. 46

Status Status sekmesi ise sistemdeki motorları konumunu anlık olarak göstermesi için yapılması planlanmaktadır. Resim 2.12 Durum Ekranı Yukarıdaki açıklanan ilk sistemde tarama ekranının daha kolay yönetilmesi ve sistemin bazı bağlantı ve ayarları kendi kendine yapması için yeni çalışmalara ihtiyaç duyuldu. Örneğin bağlan butonuna basıldığında bilgisayara donanımsal olarak sadece bir cihazın bağlı olması gerekmekteydi. Herhangi başka bir cihaz (yazıcı, tarayıcı, vs..) bağlı olduğunda program kendini kapatıyordu ve tarama verilerini kaybediyorduk 47

Resim 2.13 Mart 2017 Ekran Görseli Yeniden yazılım geliştirmesine gittiğimiz izleme ekranındaki tarama bölgesinin küçük olduğunu farkettik. Tarama ekranı genişleterek yeni arayüz tasarımını gerçekleştirerek tarayacağımız cismin yakın bir görsel çıkartarak şeklinin belirlenmesini sağladık 48

Resim 2.14 Nisan 2017 Yazılım Geliştime Sonrası Ekran Görseli Nisan ayında tamamlanan Resim 2.14 deki yönetim ekranında tarama sırasında üzerinde bulunduğumuz yerin anlık ekrana yansıdığını sistemin bunu otomatik yaptını farkederek manıel kontrol bölgesindeki Check butonunun iptal ederek yeniden tasarladık. 49

Resim 2.15 deki en son tasarlanan yönetim panelinin son hali görülmektedir. Program kontrol butonlarını aktif hale getirebilmek için bağlantı sağlandıktan sonra tarama başlığının bilinmeyen son durumu için tarama işlemi yapılmalıdır. Resim 2.15 Yönetim Paneli 50

4 YÖNETİM PANELİ EKRANI 4.1 Panel Kullanımı Proje yönetim panelinin genel olarak görünümü Resim 4.1 deki gibidir. Izgara şeklinde bölünmüş bölge tarama alanında gelen sinyalleri işlemek ve alan üzerindeki konumunu belirlemek için tasarlanmıştır. Resim 4.1 51

Resim 4.2 de görülen kısım cihaz ile bilgisayar arasındaki bağlantıyı yapmak ve okuyucu sensörü son kaldığı durumu resetlemek için kullanılır. Sisteme reset komutu gönderdiğimiz durumda otomatik kontrol butonları aktif hale gelmemektedir. Resim 4.2 Otomatik Tarama Start butonu otomatik taramayı başlatır. Pause butonu hata veya herhangi bir problemde sistemi durdurur. Resim 4.3 Manuel Tarama Resim 4.3 de tarama bölgesinde manuel olarak konum değiştirebilir ve belirlediğimiz konumdaki taramayı gerçekleştirir. Resim 4.4 de görülen sonuç ekranında tarama sırasında her 10 sn de bir taranan verilerin konumsal noktalarını X ve Y cinsinden listeler. Resim 4.4 Veri Listeleme Resim 4.5 deki bölgede tarama sensörünün anlık olarak hangi konumda olduğunu gösterir. Resim 4.5 Anlık Konum 52

5 TESTLER VE SONUÇ Yaptığımız sistemdeki test sonuçları aşağıdaki gibi görünmektedir. Resim 5.1 Test 1 Geliştirmelerden sonra ilk yapılan testte cisimlerin koordinatlarını belirlerken sonuç kısmına alınacak verilerin zamanlamasa yapıldı. Her 10 saniyede kendini yenileyen sonuç kısmı sistemde veri kaybı yaratmakta ve çözüm olarak verilerin gönderilme süreleri test edilerek sisteme girildi. 53

Resim 5.2 Test 2 2. Testte ayarlanan veri gönderim sürecleriyle ilgili zaman denemeleri yapılırken çıkan sonuçlardan birisi. 54

Resim 5.3 Test 3 Resim 5.4Test 4 55

Resim 5.5Test 5 Resim 5.6Test 6 56

Resim 5.7 Test 7 Resim 5.8 Test 8 57

Resim 5.9 Test 9 Resim 5.10 Test 10 58

Resim 5.11 Test 11 Resim 5.12 Test 12 59

Resim 5.13 Test 13 Resim 5.14 Test 14 60

Resim 5.15 Test 15 Resim 5.15.1 Test 15 61

Resim 5.16 Test 16 Resim 5.16.1 Test 16 62

Resim 5.17 Test 17 Resim 5.17.1 Test 17 63

Resim 5.18 Test 18 Resim 5.18.1 Test 18 64

Resim 5.19 Test 19 Resim 5.19.1 Test 19 65

Resim 5.20 Test 20 Resim 5.20.1 Test 20 66

5.1.1 Çalışma Aşamaları Resim 5.1.1 İlk Kurulum Resim 5.1.2 Malzemeler için Tutucu Parça Çıktıları 67

Resim 5.1.3 İlk Kurulumdan Sonra Yazılım Denemeleri Resim 5.1.4 Endüktif Sensör Denemeleri 68

Resim 5.1.5 Sensör Mesafesi Algılama Testi Resim 5.1.6 Sensörün Çalıştırılması 69

Resim 5.17 Sensörün Çalıştırılması Resim 5.1.8 Sensörün Çalıştırılması 70

Resim 5.1.9 Arduino ve Ramps Resim 5.1.10 Güç Kaynağı 71

6 ÖZGEÇMİŞ KAYNAKÇA 1. Kızıötesi İşleme ve Anali Merkezi, Caltech / JPL 2. Polar, Pixie, ABD Ulusal Havacılık ve Uzay Dairesi 3. NASA Science & Missionscience, NASA 4. Elektromanyetik teorinin temelleri / Aktaş, Şahin ; Şahin Aktaş 5. C# Programlama Kılavuzu / Wright, Charles 6. Programming C# / Liberty, Jesse 7. Solidworks Solidcam /Ali Naci Bıçakçı 8. Arduino Hızlı & Kolay Kitabı - Volkan Kanat 9. Projeler İle Arduıno / Erdal DELEBE 72