seslİ komutlarla araÇ kontrolÜeee.ktu.edu.tr/bitirme.dosyalar/bitirme_projeler_archive... ·...

59
T.C. KARADENİZ TEKNİK ÜNİVERSİTESİ Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği Bölümü SESLİ KOMUTLARLA ARAÇ KONTROLÜ 243455 Doğan Can SAMUK 228418 Havva ÖZKAYA Yrd. Doç. Dr. Yusuf SEVİM Mayıs, 2014 TRABZON

Upload: others

Post on 27-Jan-2021

11 views

Category:

Documents


0 download

TRANSCRIPT

  • T.C.

    KARADENİZ TEKNİK ÜNİVERSİTESİ

    Mühendislik Fakültesi

    Elektrik-Elektronik Mühendisliği Bölümü

    SESLİ KOMUTLARLA ARAÇ

    KONTROLÜ

    243455 Doğan Can SAMUK

    228418 Havva ÖZKAYA

    Yrd. Doç. Dr. Yusuf SEVİM

    Mayıs, 2014

    TRABZON

  • T.C.

    KARADENİZ TEKNİK ÜNİVERSİTESİ

    Mühendislik Fakültesi

    Elektrik-Elektronik Mühendisliği Bölümü

    SESLİ KOMUTLARLA ARAÇ

    KONTROLÜ

    243455 Doğan Can SAMUK

    228418 Havva ÖZKAYA

    Yrd. Doç. Dr. Yusuf SEVİM

    Mayıs, 2014

    TRABZON

  • BİTİRME PROJESİ ONAY FORMU

    243455 Doğan Can SAMUK ve 228418 Havva ÖZKAYA tarafından Yrd. Doç. Dr.

    Yusuf SEVİM yönetiminde hazırlanan “SESLİ KOMUTLARLA ARAÇ KONTROLÜ”

    başlıklı lisans tasarım projesi tarafımızdan incelenmiş, kapsamı ve niteliği açısından bir

    Lisans Bitirme Projesi olarak kabul edilmiştir.

    Danışman : Yrd. Doç. Dr. Yusuf SEVİM ……………………………...

    Jüri Üyesi 1 : Doç. Dr. Ayten ATASOY ………………………….......

    Jüri Üyesi 2 : Yrd. Doç. Dr. Gökçe HACIOĞLU ………………………….......

    Prof. Dr. İsmail H. ALTAŞ

    Bölüm Başkanı

  • iii

    ÖNSÖZ

    Bu bitirme projesi Karadeniz Teknik Üniversitesi, Mühendislik Fakültesi, Elektrik-

    Elektronik Mühendisliği Bölümü lisans programı dahilinde yapılmıştır. Proje dışardan

    verilecek sesli komutlarla hareket edebilen robot aracı esas almaktadır.

    Mezun olduktan sonra mühendislik hayatımızda bize referans olabilecek bu çalışma,

    lisans eğitimimiz boyunca almış olduğumuz temel bilgilerin yanı sıra daha önce yapmış

    olduğumuz ödev ve projelerde kazanılan deneyimlerin kullanılması suretiyle

    gerçekleşmiştir.

    Bitirme çalışması boyunca desteğini gördüğümüz danışman hocamız Sayın Yrd.

    Doç. Dr. Yusuf SEVİM'e teşekkürlerimizi sunarız. Ayrıca bize değerli vakitlerini ayırıp,

    projenin gerçekleşmesine katkı sağlayan Yrd. Doç. Dr. Orhan KESEMEN, Öğr. Gör.

    Oğuzhan ÇAKIR'a da yardımlarından ötürü teşekkür ederiz. Son olarak bu çalışmayı

    destekleyen Karadeniz Teknik Üniversitesi Elektrik-Elektronik Mühendisliği Bölüm

    Başkanlığına içten teşekkürlerimizi sunarız.

    Ayrıca eğitim hayatımız boyunca desteklerini üzerimizden esirgemeyen ailelerimize

    de teşekkürlerimizi sunmayı borç biliriz.

    Doğan Can SAMUK

    Havva ÖZKAYA

    Mayıs, 2014

  • iv

    İÇİNDEKİLER

    Sayfa No

    BİTİRME PROJESİ ONAY FORMU ii

    ÖNSÖZ iii

    İÇİNDEKİLER iv

    ÖZET vi

    ŞEKİLLER DİZİNİ vii

    ÇİZELGELER DİZİNİ ix

    SEMBOLLER VE KISALTMALAR x

    1. GİRİŞ 1

    1.1. Literatür Araştırması 2

    1.1.1. Ses Komut Tanıma ile Gezgin Araç Kontrolü 2

    1.1.2. Seri Port ile Haberleşebilen Uzaktan Kumandalı Kameralı Araç 3

    1.1.3. Ses Kontrollü Web Tarayıcı 3

    1.1.4. RF Modüllerle Kontrol Edilen Paletli Keşif Aracı 3

    1.1.5. PIC ve Step Motorla Sürülen Bir Mobil Robotun Uzaktan Kamera 4

    Sistemi ile Kontrolü

    1.1.6. Sesli Komutlar ile Araç Kontrolü 4

    1.2. Çalışma Takvimi 5

    2. TEORİK ALTYAPI 7

    2.1. Sistemin Blok Diyagramı 7

    2.2. Tasarım 8

    2.3. Robot Araç Yapımında Kullanılacak Yöntemler 8

    2.3.1. Haberleşme Devresi 9

    2.3.1.1. RS232 Bağlantı Kablosu 9

    2.3.1.2. MAX232 Sürücü 10

    2.3.1.3. Dönüştürücü PIC 10

    2.3.1.4. RF Verici 10

    2.3.2. Kumanda Devresi 11

    2.3.2.1. PIC16F877A Mikro Denetleyici 12

    2.3.2.2. Motor Sürücü Entegresi 14

    2.3.2.3. RF Alıcı 16

    2.3.2.4. DC Motorlar 17

    2.3.2.5. DC Güç Kaynağı 17

    2.3.2.6. LM7805 Gerilim Regülatörü 18

    2.4. Ses Tanıma 18

    2.4.1. Ses Sinyalinin Bilgisayar Ortamına Alınması 21

    2.4.2. Ses Sinyalinin Enerjisinin Hesaplanması 21

    2.4.3. Ses Sinyalinin Başlangıcını Tespit Etme 22

    2.4.4. Ses Sinyalinin Bitişini Bulma 22

    2.4.5. Çerçeveleme 22

    2.4.6. Pencereleme 22

    2.4.7. Fast Fourier Transform 23

    2.4.8. Mel Filtre Bankası 24

    2.4.9. Ayrık Cosinüs Dönüşümü 25

  • v

    2.4.10. MFCC Katsayılarının Bulunması 25

    2.4.11. K-Nearest Neighbors Algoritması 26

    3. SİMÜLASYON ÇALIŞMALARI 28

    3.1. Haberleşme Devresi Simülasyonu 28

    3.2. Kumanda Devresi Simülasyonu 29

    3.3. Aracın Sağa ve Sola Dönmesi İçin Kullanılacak Yöntem 30

    4. DENEYSEL ÇALIŞMALAR 31

    4.1. Yazılımların Açıklanması 31

    4.2. Devrelerin Gerçeklenmesi 33

    5. SONUÇLAR 37

    6. YORUMLAR VE DEĞERLENDİRME 38

    KAYNAKLAR 39

    EKLER 40

    EK-1 IEEE ETİK KURALLARI 40

    EK-2 DİSİPLİNLER ARASI ÇALIŞMA 43

    EK-3 STANDARTLAR VE KISITLAR FORMU 45

    EK-4 PIC16F87XA DATA SHEETS 47

    ÖZGEÇMİŞLER 48

  • vi

    ÖZET

    Günümüzde hızla gelişen teknoloji ile birlikte robot kullanımına ihtiyaç artmıştır.

    Kullanım alanları çeşitlilik gösteren robotlardan sanayi dalında, endüstriyel

    uygulamalarda, askeri sahalarda, güvenlik sistemlerinde ve daha birçok alanda

    faydalanılmaktadır.

    Yapılan çalışmada sesle kontrol edilebilen bir robot araç tasarlanmıştır. Sesle

    kontrol sayesinde robotla direkt iletişim imkânı sağlanarak, yapılacak uygulamalarda

    daha hızlı kontrol edilmesi sağlanır. Proje iki kısımdan oluşmaktadır. İlk kısımda PIC

    yardımıyla kontrol edilebilen robot araç tasarlanmıştır. Yapılan yazılımla birlikte robot

    aracın hareket alanları belirlenmiştir. İkinci kısım ise ses tanıma bölümünden

    oluşmaktadır. MATLAB programı yardımıyla KNN (K-Nearest Neighbors) algoritması

    kullanılarak ses tanıma kısmı gerçeklenmiştir. Ses tanıma kısmı tamamlandıktan sonra

    yazılımın robot araçla haberleşmesi yapılıp aracın sesle kontrolü sağlanmıştır.

  • vii

    ŞEKİLLER DİZİNİ

    Sayfa No

    Şekil 2.1 : Sistemin genel blok diyagramı ............... 7

    Şekil 2.2 : Haberleşme devresi bağlantı diyagramı ............... 9

    Şekil 2.3 : RS232 kablosunun şematik gösterimi ............... 10

    Şekil 2.4 : RF vericinin şematik gösterimi ............... 11

    Şekil 2.5 : Kumanda devresi bağlantı diyagramı ............... 12

    Şekil 2.6 : PIC16F877A pin diyagramı ............... 13

    Şekil 2.7 : Motor sürücü entegresinin şematik gösterimi ............... 15

    Şekil 2.8 : RF alıcının şematik gösterimi ............... 16

    Şekil 2.9 : Güç kaynağı bağlantıları ............... 17

    Şekil 2.10 : LM7805 şematik gösterimi ............... 18

    Şekil 2.11 : Özellik çıkarımları blok diyagramı ............... 19

    Şekil 2.12 : Ses tanıma yazılımının algoritması ............... 20

    Şekil 2.13 : İleri sözcüğünün ham hali ............... 21

    Şekil 2.14 : Birinci ileri komutunun dalga şekli ............... 23

    Şekil 2.15 : İkinci ileri komutunun dalga şekli ............... 23

    Şekil 2.16 : Birinci ileri komutunun fourier dönüşümü ............... 24

    Şekil 2.17 : İkinci ileri komutunun fourier dönüşümü ............... 24

    Şekil 2.18 : Mel filtresi uygulanmış işaret ............... 25

    Şekil 2.19 : MFCC katsayıları ............... 26

    Şekil 3.1 : Haberleşme devresinin simülasyonu ............... 28

    Şekil 3.2 : Kumanda devresinin simülasyonu ............... 29

    Şekil 4.1 : PIC C Compiler programı başlangıç ekranı ............... 31

    Şekil 4.2 : Klavyeden kontrol için ara yüz ekranı ............... 32

    Şekil 4.3 : Haberleşme devresi PCB çizimi ............... 33

    Şekil 4.4 : Gerçeklenen haberleşme devresinin fotoğrafı ............... 34

    Şekil 4.5 : Kumanda devresi PCB çizimi ............... 34

  • viii

    Şekil 4.6 : Gerçklenen kumanda devresinin fotoğrafı ............... 35

    Şekil 4.7 : Robot aracın gerçeklenmiş hali ............... 36

  • ix

    ÇİZELGELER DİZİNİ

    Sayfa No

    Çizelge 1.1 : İş Kısımları-Zaman çalışma takvimi .......... 5

    Çizelge 2.1 : PIC16F877A mikro denetleyicisinin temel özellikleri .......... 14

    Çizelge 3.1 : Motor hareket durumları .......... 30

    Çizelge E2.1 : Malzeme/Teçhizat-Maliyet Çizelgesi .......... 43

  • x

    SEMBOLLER VE KISALTMALAR

    A Amper

    mAh miliAmper saat

    V Volt

    DC Direct Current (Doğru Akım)

    kHz kiloHertz

    kB kiloByte

    RF Radio Frequency (Radyo Frekansı)

    RS232 Recommendend Standart 232

    PCB Printed Circuit Board (Baskı Devre)

    PIC Peripheral Interface Controller (Çevresel Ünite Denetleme Arabirimi)

    RAM Random Access Memory (Rastgele Erişilebilir Bellek)

    PWM Pulse Width Modulation (Darbe Genişlik Modülasyonu)

    UART Universal Asynchronous Receiver/Transmitter (Evrensel Asenkron

    Alıcı/Verici)

    I2C Inter-Integrated Circuit

    I/O Input/Output (Giriş/Çıkış)

    ºC Celsius

    MIPS Million of Instructions Per Second

    ADC Analog to Digital Converter (Analog Dijital Çevirici)

    LED Light Emitting Diode (Işık Yayan Diyot)

    Li-Po Lithium Polymer

    FFT Fast Fourier Transform

    MFCC Mel Frequency Cepstral Coefficient

    KNN K-Nearest Neighbors

  • 1. GİRİŞ

    Yapılan projede sesle kontrol edilebilen robot araç tasarlanmıştır. Tasarım

    aşamasında ilk olarak robot projeleri hakkında genel bilgiler toplanmıştır. Daha önce

    yapılmış robot projeleri çalışmalarında genelde bilgisayarda oluşturulan kumanda

    devresi yardımıyla robotun kontrolü sağlanabilmekteydi. Yapılan bu projelere nazaran

    sesle kontrol sayesinde çeşitli amaçlarla kullanılan robotların, bilgisayar başında

    klavyeden kontrolü yerine sesle kontrolü sağlanabilecek ve bu şekilde robotlarla yapılan

    çalışmaların daha pratik ve daha hızlı bir şekilde yürütülmesine olanak sağlanmış

    olacaktır.

    Projeyi ana hatlarıyla iki kısma ayırabiliriz. İlk kısımda bilgisayar yardımıyla

    uzaktan kontrol edilebilen araç tasarlanacaktır. İkinci kısımda yazılım ile birlikte ses

    tanıma işlemi yapılacaktır. Ses tanıma kısmı tamamlandıktan sonra yazılımın robot

    aracın kontrolünde kullanılacak yazılımla haberleşmesi sağlanarak aracı sesle kontrol

    etme imkânı gerçekleşmiş olacaktır.

    Projenin ilk kısmında, aracın yapımı aşamasında kumanda devresi ve haberleşme

    devresi olarak başlıca iki devre mevcuttur. Kumanda devresinde bulunan

    mikrodenetleyici ve motor sürücü entegreleri yardımıyla, yapılacak yazılımla birlikte

    aracın sağa, sola, ileri ve geri hareketi sağlanacaktır. Mikrodenetleyici olarak microchip

    firmasının üretmiş olduğu PIC16F877A seçilmiştir. Bu tercihin nedenleri daha sonra

    ayrı başlık altında ele alınacaktır. Bu kısımda yapılacak yazılımda C programlama dili

    kullanılarak PIC’in programlanması amaçlanmıştır. Haberleşme devresinde ise

    kullanılacak RF (Radyo Frekansı) alıcı verici modül sayesinde, alıcı kumanda

    devresinde ve verici bilgisayara bağlı olacak şekilde robot araçla uzaktan iletişim

    imkânı sağlanabilecektir. Bu uzaklık kullanılacak RF modülünün özelliklerine göre

    artıp azalabilir. Yapacağımız projede hedeflenen kullanacağımız RF alıcı verici

    modülüyle yirmi metreye kadar sorunsuz haberleşme sağlanabilmesidir. Bilgisayardan

    verilerin alınması seri port yardımıyla RS232 bağlantı kablosu yardımıyla

    gerçekleştirilmiştir. Haberleşme devresinin diğer elemanları ise MAX232 sürücü ve

    verileri dönüştürmede kullanılan PIC16F877A'dır.

    İkinci kısımda ise ses işleme konusunda yapılan çalışmalar hakkında bilgi

    toplanmıştır. Yapılan araştırmalar neticesinde yazılım kısmının, MATLAB programı

  • 2

    yardımıyla ve KNN yöntemi kullanılarak gerçekleştirilmesine karar verilmiştir. KNN

    metodunun tercih edilmesinin nedeni bu metodun karmaşık problemlerdeki başarı

    oranının yüksek olması ve konuşma sinyallerinin KNN algoritmasında kullanılan

    yöntemlere uygun olmasıdır. Bu konuda daha detaylı bilgi ve çalışma yapacak olanlar

    için kaynakları tavsiye edilebilir. Yapılacak yazılımda robot aracın hareket yönleri göz

    önüne alınarak verilecek komutlar buna göre seçilecektir. İkinci kısımda yapılacak bu

    yazılımla birlikte robot aracın klavyeden tuşlar yerine verilecek sesli komutlarla kontrol

    edilmesi sağlanacaktır.

    Sonuçta projede hedeflenen insan hayatını kolaylaştıran ve birçok uygulamada

    kullanılan robotların, verilecek sesli komutlarla kontrolü sağlanarak bunlar üzerinde

    insanların hâkimiyet olanağının artırılması ve robotlarla yapılan uygulamaların daha

    pratik, hızlı bir şekilde gerçekleştirilmesidir. Sesli komutlarla kontrol edilebilen araç

    sayesinde robota hâkimiyet olanağımız artacağından zamandan kazanç sağlanabilir Bu

    sayede zehirli gaz sızıntısı, yangın, deprem gibi durumlarda girilmesi güvenli olmayan

    yerlerde sesle kontrol edilebilen araç sayesinde bölgenin keşfi daha hızlı sağlanıp can

    kaybı en aza indirilebilecektir.

    1.1. Literatür Araştırması

    Günümüzde robotların, sanayi dalından endüstriyel uygulamalara, askeri alanlardan

    güvenlik sistemlerine kadar pek çok uygulama alanı vardır. Hal böyle olunca da robot

    alanında yapılan çalışmalar gittikçe artmaktadır. Ayrıca konuşma tanıma uygulamasının

    da insan hayatını kolaylaştırma açısından önemi büyük olduğundan, bu konu literatürde

    geniş bir yer tutmaktadır.

    Bugüne kadar uzaktan kontrol edilen araç ve sesli komut tanıma ile ilgili yapılan

    uygulamalar aşağıda verilmiştir.

    1.1.1. Ses Komut Tanıma ile Gezgin Araç Kontrolü

    - ‘Ses Komut Tanıma ile Gezgin Araç Kontrolü’ başlıklı çalışma konferans

    bildirimi olarak yayınlanmıştır. Bu çalışmada ses tanıma kısmının

    gerçeklenmesinde Ortak Vektör Yaklaşımı metodu kullanılmıştır. Bu yöntemde

    kişiye bağımlı sesli komut tanıma tercih edilmiştir. Ses işleme kısmı MATLAB

  • 3

    programında yazılmıştır. Aracın kontrolünde kullanılacak sesli komutlar ileri,

    geri, sağa dön, sola dön ve dur şeklindedir [1]. Bizim yapacağımız projede de bu

    komutlar aynıdır. Ancak MATLAB ile yapılan yazılımda yöntem olarak KNN

    algoritması (K-Nearest Neighbors) kullanılması tercih edilmiştir.

    1.1.2. Seri Port ile Haberleşebilen Uzaktan Kumandalı Kameralı Araç

    - ‘Seri Port ile Haberleşebilen Uzaktan Kumandalı Kameralı Araç’ başlıklı

    çalışma lisans tezi olarak yapılmıştır. Bu çalışmada RF yardımıyla bilgisayar

    tarafından uzaktan kumanda edilebilen araç tasarlanmıştır. Tasarlanan aracın

    üzerinde kamera ve karanlık ortamların aydınlatılmasını sağlamak için LED

    bulunmaktadır [2]. Kendi projemizde yapacak olduğumuz araç için bu çalışmada

    aracın tasarımında kullanılan yöntemlerden faydalanılmıştır. Proje de kontrol

    için mikro denetleyici olarak bizim de kendi projemizde kullanacak olduğumuz

    PIC seçilmiştir. Bizim projemizden farklı olarak kontrol kısmı bilgisayar

    tarafından klavyeden yapılmaktadır.

    1.1.3. Ses Kontrollü Web Tarayıcı

    - ‘Ses Kontrollü Web Tarayıcı’ başlıklı makalede H. Çakır ve B. Okutan sesli

    komutlarla kullanılabilen web tarayıcısı tasarlamıştır. Belirlenen web

    adreslerinin açılması, bu çalışmada sesli komutlar yardımıyla yapılmaktadır.

    Yazılım kısmı ise bizim projemizden farklı olmakla birlikte C# programlama

    dilinde yapılmıştır [3]. Kendi projemiz için yapacak olduğumuz ses tanıma

    yazılımında bu çalışmada kullanılan yöntemler örnek olarak alınmıştır.

    1.1.4. RF Modüllerle Kontrol Edilen Paletli Keşif Aracı

    - ‘RF Modüllerle Kontrol Edilen Paletli Keşif Aracı’ adlı makalede Ş. Yüksel, G.

    Ekincioğlu, İ. Develi, K. Tunçer, E. Zabun uzaktan kontrol edilebilen ve görüntü

    işleyebilen paletli araç tasarlamıştır. Görüntü işleme için servo motorlar ile

    kontrol edilebilen kamera kullanılmıştır. Ayrıca araçta sensörler kullanılarak

    önünde ve arkasındaki cisimleri algılayıp yön değiştirebilme kabiliyeti vardır.

  • 4

    Bu projede aracın kontrolü için diğer projelerden farklı olarak ARDUNO UNO

    işlemci kullanılmıştır [4].

    1.1.5. PIC ve Step Motorla Sürülen Bir Mobil Robotun Uzaktan Kamera

    Sistemi ile Kontrolü

    - ‘PIC ve Step Motorla Sürülen Bir Mobil Robotun Uzaktan Kamera Sistemi ile

    Kontrolü’ başlıklı lisans tezinde RF sinyalleri kullanılarak üzerinde kamera

    bulunan aracın uzaktan kontrolü yapılmıştır. Aracın kontrolü için PIC mikro

    denetleyici kullanılmıştır. Kullanılan kamera yardımıyla alınan görüntülerin

    bilgisayar ortamına aktarımı yapılmıştır [5].

    1.1.6. Sesli Komutlar İle Araç Kontrolü

    - 'Sesli Komutlar İle Araç Kontrolü' başlıklı lisans tezi bizim projemizle birebir

    örtüşmekle birlikte bazı noktalarda bu iki proje birbirinden ayrılmaktadır. Araca

    verilecek komutlar ve ses tanımada kullanılan metodlar aynı iken, haberleşme

    için kullanılan yöntem ve ses tanımada kullanılan programlama dili bu lisans

    tezinde farklılık göstermektedir. Aracın haberleşmesi işlemci sunucu mimarisi

    ile Ethernet üzerinden yapılırken, ses tanımada yazılan kodlar için C

    programlama dili tercih edilmiştir [6].

  • 5

    1.2. Çalışma Takvimi

    Yapılan projenin gerçekleme aşamasında izlenen basamaklar aşağıda verilen Tablo

    1.1'e göre yapılmıştır.

    Çizelge 1.1. İş Kısımları-Zaman çalışma takvimi

    İş Kısımları Eylül Ekim Kasım Aralık Ocak Şubat Mart Nisan Mayıs

    1. İş kısmı X

    2. İş kısmı X

    3. İş kısmı X

    4. İş kısmı X

    5. İş kısmı X

    6. İş kısmı X

    7. İş kısmı X

    8. İş kısmı X

    9. İş kısmı X

    10. İş kısmı X

    11. İş kısmı X

    12. İş kısmı X

    13. İş kısmı X

    14. İş kısmı X

  • 6

    Yapılacak olan iş kısımlarının ayrıntılı olarak ele alınması:

    1. İş kısmı : Proje Konusunun Belirlenmesi

    2. İş kısmı : Proje Hakkında Genel Bilgilerin Toplanması

    3. İş kısmı : Literatürde Bulunan Benzer Çalışmaların İncelenmesi

    4. İş kısmı : Projede Kullanılacak Yöntemlerin Belirlenmesi

    5. İş kısmı : KNN Metodunun İncelenmesi

    6. İş kısmı : PIC Mikroişlemcisinin Tanınması ve Kullanılacak İşlemcinin Seçimi

    7. İş kısmı : Gerçeklenecek Devrelerin Simülasyonunun Yapılması

    8. İş kısmı : Tasarım Projesinin Yazılması ve Teslimi

    9. İş kısmı : Gerekli Malzemelerin Temin Edilmesi

    10. İş kısmı : Gerekli Yazılımların Oluşturulmaya Başlanması

    11. İş kısmı : Devrelerin Gerçeklenmesi ve Test Edilmesi

    12. İş kısmı : Baskı Devrelerinin Çizimi ve Oluşturulması

    13. İş kısmı : Ses Tanıma Yazılımının Projeye Eklenmesi

    14. İş kısmı : Bitirme Tezinin Yazılması ve Teslim Edilmesi

  • 2. TEORİK ALTYAPI

    Bu kısımda ilk olarak tasarlanması planlanan sistemin blok diyagramı verilecektir.

    Daha sonra yazılacak programlarda kullanılan yöntemler ve gerçeklenen devrelerde

    kullanılan elemanların görevleri hakkında bilgiler sıralanacaktır. Sistemin

    gerçeklenmesinde kullanılacak yöntemler bu kısımda ana hatlarıyla ele alınacaktır.

    2.1. Sistemin Blok Diyagramı

    Sistemin genel akış diyagramı aşağıda verilmiştir. Yapılacak yazılımlar ve

    tasarlanacak devrelerde kullanılacak yöntemler Şekil 2.1'de verilen blok diyagramı göz

    önüne alınarak yapılacaktır.

    Şekil 2.1. Sistemin genel blok diyagramı

    Mikrofondan

    Sesin

    Alınması

    PC

    PIC

    RF Alıcı

    RF Verici

    PIC

    DC Motor

    Motor

    Sürücü

    Devresi

    MATLAB

    Ses Tanıma

    Yazılımı

  • 8

    Sistemin genel olarak çalışmasını özetleyecek olursak mikrofon yardımıyla alınan

    ses bilgisayarda yazılan ses tanıma yazılımı içerisinde karşılaştırma işleminden geçer.

    Bu karşılaştırma sonunda bilgisayardan gelen veri RS232 kablo yardımıyla PIC’e

    aktarılır. PIC dönüştürme işlemini yaparak bilgileri vericiye ulaştırır. RF verici, alıcıyla

    iletişime geçerek kendisine gelen bilgileri alıcısına aktarır. PIC alıcıdan aldığı bilgiler

    doğrultunda bir çıkış sinyali üreterek motor sürücü entegreye komut verir. Motor sürücü

    entegre ise PIC’ten gelen komutlara göre DC motorların çalışma durumunu belirlemiş

    olur.

    2.2 Tasarım

    Tasarım aşaması ses tanıma ve robot araç tasarımı olarak iki kısma ayrılmaktadır. Bu

    kısımda ses tanıma kısmında kullanılacak metotlar ve robot aracın yapımında

    gerçeklenecek devreler hakkında bilgiler verilecektir.

    2.3. Robot Araç Yapımında Kullanılacak Yöntemler

    Tasarlanacak olan robot aracın kontrolü PIC mikro denetleyici yardımıyla

    yapılacaktır. Aracın uzaktan kontrol edilmesi istendiği için RF modüllerden

    yararlanılacaktır. Bu modül alıcı ve verici elemanlar sayesinde uzaktan kontrol

    gerektiren uygulamalarda kullanılır. Tasarlayacağımız robot araçta kullanılacak RF

    modül ile aracın yirmi metre uzaklığa kadar kontrolünün sağlanabilmesi amaçlanmıştır.

    Aracın kontrolü için kullanılacak PIC ‘ in yazılımı C programlama dilinde olacaktır.

    Yazılımda esas alınan klavyeden tuşlar yardımıyla robot aracın “sağ” , “sol” , “ileri” ,

    “geri” ve dur komutlarına uygun hareketinin sağlanmasıdır. Bu hareketlerin

    sağlanabilmesi için yapılacak yazılımda aracın mekanik kısmında bulunan DC

    motorların yön kontrolü ve çalışma süreleri ayarlanacaktır.

    Yapılacak olan robot araçta haberleşme devresi ve kumanda devresi olmak üzere iki

    ayrı devre mevcuttur [4].

  • 9

    2.3.1. Haberleşme Devresi

    Haberleşme devresi bilgisayarda yapılan yazılımla birlikte, kontrol devresinde

    bulunan PIC ile haberleşmeyi sağlamak için gereklidir. Haberleşme devresinde

    kullanılacak elemanlar ve bunların görevleri aşağıda anlatılacaktır. Bu devrenin kabaca

    bağlantı şeması Şekil 2.2'de verilmiştir.

    Şekil 2.2. Haberleşme devresi bağlantı diyagramı

    Haberleşme Devresi Elemanları:

    - RS232 Bağlantı Kablosu

    - MAX232 Sürücüsü

    - PIC

    - RF Verici

    2.3.1.1. RS232 Bağlantı Kablosu

    Bilgisayarlardaki seri portlarda kullanılan, devredeki diğer elemanlara gönderilen

    bilginin iletilmesini, elemanlardan gelecek bilginin alınmasını sağlayan konektördür.

    Bilgi gönderimi ve alımı asenkron olarak yapılır. 12 Volt ile çalışır.

    Şekil 2.3'ten de görüldüğü gibi RS232 kablonun 9 ucu mevcuttur. Seri porttan

    haberleşmek için 3 ve 5 nolu uçların kullanılması yeterlidir. 3 nolu uç veri iletimini

    sağlarken 5 nolu uç toprağa bağlanır.

    PC RS232 MAX232 Verici PIC

  • 10

    1 2 3 4 5

    6 7 8 9

    Şekil 2.3. RS232 kablosunun şematik gösterimi

    2.3.1.2. MAX232 Sürücü

    Gerilim seviyesinin ayarlanmasına yarar. RS232 bağlantı kablosu 12 Volt ile

    çalıştığından kullanılan bu sürücü ile birlikte gerilim seviyesi mikroişlemcinin çalıştığı

    5 Volt olarak ayarlanır. Bu entegre bilgisayarın portundan gelen verileri kullanılacak

    vericinin çalışması için uygun şekle dönüştürerek bir bakıma tampon görevi

    görmektedir.

    2.3.1.3. Dönüştürücü PIC

    Haberleşme devresinde kullanılan PIC bilgisayardan RS232 kablo yardımıyla gelen

    verileri 4 bit olarak dönüştürerek RF vericinin anlayacağı şekilde kodlar. Bu şekilde

    bilgisayardan alınan verilerin kullanılmasına olanak sağlanır. Yani burada kullanılan

    PIC bir nevi ara eleman görevi görmektedir.

    2.3.1.4. RF Verici

    Bu verici sayesinde kumanda devresinde bulunan alıcı ile haberleşme sağlanarak

    bilgisayarda yapılan yazılımın PIC’ le haberleşmesi sağlanmış olur. RF verici modülü

    olarak TX433 tercih edilmiştir. Bu verici modül sayesinde kapalı alanda yirmi metreye

    kadar sorunsuz haberleşme sağlanabilmektedir. Şekil 2.4'te RF vericinin şematik

    gösterimi verilmiştir.

  • 11

    2

    1 3

    4

    Şekil 2.4. RF vericinin şematik gösterimi

    2.3.2. Kumanda Devresi

    Kumanda devresinde temel amaç kullanılacak mikro denetleyici yardımıyla DC

    motorların yönlerinin kontrol edilmesidir. Kumanda devresi mikro denetleyici ile

    birlikte yapılacak kontrolde gerekli diğer elemanları ve sinyaller aracılığıyla

    bilgisayardan gelen bilgilerin alınmasını sağlayan alıcı modülü içerir.

    Kumanda Devresi Elemanları:

    - PIC Mikro denetleyici

    - Motor Sürücü Entegresi

    - 7805 Gerilim Regülâtörü

    - RF Alıcı

    - DC Motorlar

    - DC Güç Kaynağı

    - Çeşitli değerlerde Direnç ve Kondansatörler

    Kumanda devresinde kullanılacak olan PIC mikro denetleyici sistemin çalışması için

    olmazsa olmaz elemanıdır. Bu yüzden kullanılacak elemanların tanıtımında PIC mikro

    GND

    ANT DATA

    TX433

    VCC

  • 12

    denetleyicisi ayrıntılı olarak aşağıda ele alınacaktır. Kumanda devresinin kabaca

    bağlantı şeması Şekil 2.5'te verilmiştir.

    Şekil 2.5. Kumanda devresi bağlantı diyagramı

    2.3.2.1. PIC16F877A Mikro Denetleyici

    Kumanda devresinde kullanılacak olan PIC devrenin beyin görevi gören ana

    elemanıdır. Konumu itibariyle alıcıdan aldığı bilgiler doğrultusunda çıkış sinyali

    üreterek motor sürücü entegreler yardımıyla DC motorların kontrol edilmesinde

    kullanılacaktır. Alıcıya gelen bilgiler ise bilgisayarda yapılacak olan programlama

    yardımıyla verici tarafından iletilecektir. Ayrıca haberleşme devresinde de dönüştürücü

    PIC kullanılmıştır. Bu sayede bilgisayardan gelen veriler RF vericinin algılayacağı ve

    işlem yapabileceği şekle dönüştürülmüştür.

    Kolay programlanabilmesi nedeniyle PIC'ler günümüzde birçok uygulamada

    kullanılmaktadır. Aydınlatma devreleri, sanayide kullanılan robot kolu uygulamaları,

    uzaktan kontrol edilebilen robot araç yapımı bunların bazılarıdır. Fiyatları, hızları,

    bellek kapasiteleri ve işlevleri bakımından günümüzde kullanılan birçok farklı PIC tipi

    mevcuttur. Microchip firması tarafından üretilen bu PIC’ler kelime boylarına ve yazılan

    komutların uzunluğuna göre dört grupta toplanır. Bir mikro denetleyici kendi

    içerisindeki veri alış-verişini kaç bit ile yapıyorsa bu bit sayısına kelime boyu denir.

    PIC’lerin RAM belleği 8 bit uzunluğunda olmasına rağmen belleklerine yazılan

    komutlar 12-14-16 bit kelime boyu uzunluğunda olabilir [7].

    Devremizde özellikleri itibariyle kullanılmaya uygun olan PIC16F877A mikro

    denetleyici kullanılacaktır.

    Alıcı PIC Sürücü

    Entegresi

    DC

    Motorlar

  • 13

    Şekil 2.6. PIC16F877A pin diyagramı [8]

    Şekil 2.6’da PIC16F877A mikro denetleyicisinin bacak bağlantıları gösterilmiştir.

    İsimlendirilmesinde kullanılan “F” harfi FLASH belleğe sahip olmasından

    kaynaklanmaktadır. Bu bellek tipine EEPROM bellek tipi de denir. Bu bellek sayesinde

    clock girişine uygulanan enerji kesilse bile program bellekte saklanır, silinmez. Clock

    girişine tekrar enerji verildiğinde ise program kaldığı yerden devam eder [7].

    Şekilde görüldüğü gibi 40 adet pini mevcuttur. Giriş çıkış pinleri olarak 33 adet pini

    kullanılabilir. Giriş pinlerinden alınan verilere göre PIC içerisindeki çalışan program

    değerlendirme yaparak çıkış pinlerinden gerekli sinyalleri üretir.

    Çok az enerji harcaması ve düşük maliyetleri nedeniyle özellikle fazla kontrol

    gerektirmeyen uygulamalarda tercih edilirler. Çıkış sinyalinin akımı devrede kontrol

    edilecek olan DC motorları sürmede yetersiz olduğundan bu akımı yükseltecek olan

    motor sürücü entegresiyle birlikte kullanılacaktır.

    Tablo 2.1.'de PIC16F877A mikro denenetleyicisinin temel özellikleri verilmiştir.

  • 14

    Çizelge 2.1. PIC16F877A mikro denetleyicisinin temel özellikleri [8]

    Değişken İsmi Değeri

    Bellek Tipi Flash

    İşlemci Hızı (MIPS) 5

    Program Hafızası (KB) 14

    RAM Hafızası (Bytes) 368

    Data EEPROM (Bytes) 256

    Çalışma Sıcaklığı ( ) -40, +125

    Karşılaştırıcı 2

    ADC 8 ch, 10-bit

    Zamanlayıcılar 2x8-bit, 1x16-bit

    Çalışma Gerilimi (V) 2.2 - 5.5

    Dijital İletişim Çevre Birimleri 1-UART, 1-A/E/USART, 1-SPI, 1-I2C1-

    MSSP (SPI/I2C)

    PWM Çevre Birimleri 2 CCP

    Pin Sayısı 40

    Kumanda devresinde kullanılan diğer yardımcı elemanlar ve görevleri aşağıda

    verilmiştir.

    2.3.2.2. Motor Sürücü Entegresi

    Mikro denetleyicinin gönderdiği çıkış sinyalinin akımı DC motorları kontrol etmede

    yetersiz olduğundan motor sürücü entegreleri kullanılır. Bunlar mikro denetleyiciden

    gelen sinyalleri kuvvetlendirerek DC motorların sürülmesini sağlar. Çalıştırılabilmesi

    için EnableA ve EnableB uçlarının enerjilendirilmesi gerekmektedir. SensA ve SensB

    uçlarına direnç bağlayarak motorun çektiği akım azaltılabilir ve böylece motorların

    dönüş hızının da ayarlanması mümkün olabilir. Motor sürücü entegreleri dört giriş ve

    dört çıkış ucundan oluşmaktadır. Bu özellikleri nedeniyle iki tane DC motorun kontrol

    edilmesine olanak sağlar.

  • 15

    Projede motor sürücü entegresi olarak L298D entegresi kullanılmıştır. Bu entegrenin

    içerisinde 2 adet H-köprüsü bulunmaktadır. 2 ampere kadar akım taşıyabildiğinden

    küçük güçlü DC motorların kontrolünde rahatlıkla kullanılabilir. Aşağıda Şekil 2.7'de

    motor sürücü entegresinin şematik gösterimi verilmiştir.

    9 4

    5

    7

    10 2

    12 3

    6 13

    11 14

    1

    15

    3

    Şekil 2.7. Motor sürücü entegresinin şematik gösterimi

    Şekil 2.7'den de görüldüğü gibi 15 adet bacağı mevcuttur. Bacakların görevleri

    aşağıda veilmiştir [9].

    Input1 ve Input2 : Bunlar birinci H-köpüsünün girişine bağlıdırlar. +5 volt gerilim ile

    çalışırlar. Motorun ileri veya geri yönde dönmesi Input 1'e 5V, Input2'ye 0V veya

    Input1'e 0V, Input2'ye 5V uygulayarak sağlanır. İki girişe uygulanan voltajın değeri

    aynı ise motor dönmez.

    Input3 ve Input4 : Bu bacaklar ikinci H-köprüsünün girişinde kullanılırlar. Çalışma

    prensipleri Input1 ve Input2 ile aynıdır.

    Output1 ve Output2 : Birinci H-köprüsünün çıkış uçlarıdır. Bu uçlar motorun + ve -

    uçlarına bağlanır. Bağlı oldukları girişlerin durumuna göre motor hareket eder.

    IN1 VCC VS

    IN2

    IN3 OUT1

    IN4 OUT2

    ENABLEA OUT3

    ENABLEB OUT4

    SENSA

    SENSB GND

  • 16

    Output13 ve Output14 : Bu bacaklar ise ikinci H-köprüsünün çıkış uçlarıdır. Bu uçlar

    kullanılacak diğer motorun + ve - uçlarına bağlanır. Bağlı oldukları girişlerin durumuna

    göre motor hareket eder.

    EnableA ve EnableB : Motor sürücü entegresinde bulunan H-köprülerini

    etkinleştirmek için bu uçlar +5V ile enerjilendirilir.

    SensingA ve SensingB : Bu uçlar direkt toprağa bağlanabileceği gibi direnç üzerinden

    de toprağa bağlanabilir.

    VS : Motorların çalışması için gerekli olan gerilim bu uçtan verilir. DC güç kaynağının

    verdiği gerilimde salınımlar varsa bu uçla toprak arasına ayrıca kapasite bağlanabilir.

    VSS : Motor sürücü entegrenin çalışabilmesi için bu uç +5V ile beslenir.

    GND : Bu uç direkt toprağa bağlanır.

    2.3.2.3. RF Alıcı

    Bilgisayara bağlı verici tarafından gönderilen bilgileri alarak PIC’ e aktarır. Bu

    sayede PIC alıcı tarafından alınan bilgileri kullanarak gerekli kontrol işaretlerini üretir.

    RF alıcı modül olarak RX433 tercih edilmiştir. Şekil 2.8'de RF alıcı biriminin şematik

    gösterimi verilmiştir.

    4 5

    6

    1

    7

    2 3 8

    Şekil 2.8. RF alıcının şematik gösterimi

    VCC1 VCC2

    DATA1

    ANT

    DATA2

    RX433

    GND1 GND2 GND3

  • 17

    2.3.2.4. DC Motorlar

    Bunlar devrenin mekanik kısmında bulunan ve aracın sağa, sola, ileri, geri hareket

    etmesini sağlayan elemanlardır. Bu motorların en önemli özellikleri yüksek tork, düşük

    dönme hızıdır. Yüksek tork aracın bir engelle karşılaşması durumunda engeli aşmasına

    yardım ederken, düşük hız ise aracın savrulmasını önler ve stabil hareket etmesini

    sağlar.

    2.3.2.5. DC Güç Kaynağı

    DC motorların çalışması için gerekli enerjiyi sağlamada kullanılır. DC güç kaynağı

    olarak kumanda devresinde 7.4V 2250 mAh Li-Po pil kullanılacaktır. Bu piller şarj

    edilebilir olmaları ve yüksek çıkış akımına sahip olmaları nedeniyle robot araç

    uygulamalarında sıkça kullanılırlar. Örneğin 1A ile çalışan motor yaklaşık 2.25 saat

    çalıştırılabilir. Ayrıca ağırlıklarının da diğer bataryalara nazaran daha az olması

    avantajlarındandır. Kumanda devresindeki PIC ve motor sürücü entegresinin enerjisi 9V

    pil ile sağlanır. Haberleşme devresindeki PIC'in enerjisi ise bilgisayardan gelen

    gerilimin MAX232 sürücüsü ile +5V'a çevrilmesiyle sağlanır. Şekil 2.9'da bu

    bağlantılar gösterilmiştir.

    Şekil 2.9. Güç kaynağı bağlantıları

    Motor

    Sürücü

    DC

    Motorlar

    Li-Po

    Batarya PIC

    16F877A

    9V Pil

  • 18

    2.3.2.6. LM7805 Gerilim Regülâtörü

    PIC ile yapılan uygulamalarda genelde küçük hacimli olmaları ve değişik giriş

    gerilimi için çıkış geriliminin ayarlanması nedeniyle çokça kullanılırlar. Bu regülâtör

    pozitif gerilim regülâtörü kategorisinde yer alır. Son iki rakamı çıkış gerilimi olan

    +5V’u temsil eder. Devredeki görevi gerilimi sınırlamaktır. DC güç kaynağından alınan

    gerilimi mikro denetleyicinin çalışması için gerekli olan 5 Volta sınırlar. Şekil 2.10'da

    LM7805 gerilim regülatörünün şematik çizimi gösterilmiştir. Burada 1 nolu uç giriş, 2

    nolu uç toprak 3 nolu uç ise çıkıştır.

    1 3

    2

    Şekil 2.10. LM7805 şematik gösterimi

    2.4. Ses Tanıma

    Günümüzde ses tanıma ile yapılan uygulamalara ilgi gün geçtikçe artmaktadır. Ses

    tanıma ile ilgili yapılan çalışmalar elli yılı aşkın bir süreye dayanmaktadır. Ancak ses

    tanımanın içinde barındırdığı disiplinlerden dolayı yapılan çalışmalar halen arzu edilen

    seviyede sonuç verebilecek nitelikte değildir [10]. İlk zamanlarda yapılan çalışmalar

    daha çok makine veya robotu konuşturmak amaçlı olmasına rağmen daha sonraki

    çalışmalar gelişen teknolojiye paralel olarak makine ve robotların ses ile kontrol

    edilmesi şeklinde olmuştur. Kullandığımız bilgisayarların insan sesini algılama, tanıma

    gibi işlemleri yapabilmesi sesle yapılacak kontrollerde büyük avantajlar sağlamaktadır.

    Genel olarak ses tanıma sistemlerinde gerçekleştirilen aşamalar sesin kaydedilmesi,

    kaydedilen sesin işlenmesi, yazılım yardımıyla karşılaştırma işleminin yapılması ve

    tanınan sesle yapılacak uygulamanın gerçekleşmesi şeklindedir [3]. Yapacağımız

    78XX

    VCC OUT

    GND

  • 19

    projede kullanılacak yöntem de bilgisayar ortamında ses tanıma işleminin

    gerçekleşmesidir.

    Ses dalgaları farklı frekans değerine sahip sinüs dalgalarından oluşur. Dolayısıyla ses

    sinyali analog sinyaldir. Bilgisayar ortamında analog sinyalle işlem yapmak zordur. Bu

    yüzden analog sinyali örnekleyerek dijital sinyale çevirmemiz gerekir. Elde ettiğimiz bu

    örneklerin karşılaştırma amaçlı kullanılabilmesi için ses sinyalini bazı ön işlemlerden

    geçirmemiz gerekir [11].

    Şekil 2.11’de dijital sinyale çevirdiğimiz ses sinyalinin özelliklerinin nasıl çıkarıldığı

    ile ilgili blok diyagramı görülmektedir. Özellik çıkartımı, mikrofon yardımıyla

    bilgisayara alınan ses sinyalinin işlenerek gezgin araca verilecek olan sağ, sol, dur, ileri

    ve geri komutlarının karakteristik özelliklerini belirlemek amacıyla yapılmıştır. Ses

    sinyalinin özelliklerinin çıkartımı ile ilgili bir çok yöntem vardır. Biz bu projede MFCC

    (Mel Frequency Cepstral Coefficient) katsayılarını kullandık.

    Ses

    Şekil 2.11. Özellik çıkarımları blok diyagramı

    Ses tanıma yazılımı yapılırken ilk önce araca verilecek olan komutlardan oluşan bir

    veritabanı hazırlanır. Araca komut verildiği zaman söylenen kelimeyle veritabanında

    olan kelimeler karşılaştırılır. Söylenen komutun diğer komutlara ne kadar benzediği

    hesaplanır. Eğer oran küçükse araca verdiğimiz komut veritabanındaki komutlardan biri

    değildir. Eğer hesaplanan değer büyükse verdiğimiz komut benzeme oranı yüksek olan

    kelimedir. Bulunan bu kelimeyle aracın hareketi istenilen yönde gerçekleştirilir [11].

    Yaptığımız ses tanıma yazılımını algoritması Şekil 2.12’de görüldüğü gibidir.

    Çerçeveleme Pencereleme FFT Mel Filtre

    Bankası

    Logaritma Kepstrum

    Katsayıları

    Ayrık Cosinüs

    Dönüşümü

    KNN

    Metoduna Giriş

  • 20

    Şekil 2.12. Ses tanıma yazılımının algoritması

    Başla

    Ses sinyalini

    al ve örnekle

    Sesin

    enerjisini

    hesapla

    Sesin

    başlangıcını

    bul

    Sesin bitişini

    bul

    Çerçeveleme

    Pencereleme

    FFT

    DCT

    Kepstrum

    katsayıları

    1

    1

    Veritabanında

    ki kelimelerle

    karşılaştır

    Kelime

    benziyor

    mu?

    Evet

    Hayır

    Araca

    uygula

    KNN'e giriş

  • 21

    2.4.1. Ses Sinyalinin Bilgisayar Ortamına Alınması

    Mikrofon yardımı ile bilgisayar ortamına alınan ses sinyali ses kartına iletilir. Ses,

    ses kartından kullanılmak üzere belleğe aktarılır.

    Bilgisayar digital sinyaller üzerinden işlem yapar. Ses sinyali analog sinyaldir.

    Bilgisayar ortamında ses sinyali üzerinde işlem yapabilmemiz için digital sinyale

    çevirmemiz gerekir. Bu dönüştürme işlemini yapabilmek için ses sinyalini

    örneklememiz gerekir. Örnekleme, sinyali eşit aralıklara bölerek işlem yapmaktır.

    Örneğin ileri sözcüğünün herhangi bir işlem uygulanmamış ham hali şekil 2.13’deki

    gibidir.

    Şekil 2.13. İleri sözcüğünün ham hali

    2.4.2. Ses Sinyalinin Enerjisinin Hesaplanması

    Bilgisayar ortamına alınan ses sinyali gürültü sinyallerini de içerisinde bulundurur.

    Gürültü sinyalleri ses sinyali olarak algılanabilir. Bu yüzden ses sinyalinin nerede

    başlayıp nerede bittiğini anlamak için enerjisi hesaplanır. Böylece gürültülü olan,

    konuşma olmayan kısımlar işlemlere tabi tutulmaz [3]. Bu çalışmada kullanılan teknik

    root mean square dır. Root mean square, ses dalgasının her noktasında aldığı değerlerin

    kareleri toplamına eşittir.

  • 22

    2.4.3. Ses Sinyalinin Başlangıcını Tespit Etme

    Ses sinyalinin başladığını anlamamız için belirli bir eşik seviyesi belirlememiz

    gerekir. Belirlenen eşik seviyesini aştığında ve belirli bir süre bu eşik seviyesinde

    kaldığında konuşmacı tarafından söylenen kelimenin başlangıcı bulunmuştur [3].

    2.4.4. Ses Sinyalinin Bitişini Bulma

    Ses sinyalinin bittiğini anlamak için enerji seviyelerine bakarız. Belirli bir enerji

    seviyesinin altına düştüğünde ve bir süre bu enerji seviyesinde devam ederse konuşma

    sona ermiştir [3].

    2.4.5. Çerçeveleme

    Ses verisinin hepsini aynı anda değerlendirmek yerine ses sinyalini çerçevelere

    bölerek işlem yapmak daha doğrudur. Çünkü ses sinyalinin içerisinde konuşmanın

    olmadığı kısımlar da bulunmaktadır ve bu anlamsız kısımlar konuşmanın olduğu

    kısımları maskelemektedir [12].

    2.4.6. Pencereleme

    Bir önceki adımda çerçevelenmiş ses sinyalinin başındaki ve sonundaki süreksizliğin

    giderilmesi için ses sinyaline pencereleme işlemi uygulanır. Böylece söylenen

    kelimenin orta kısmı önem kazanırken baş ve son kısımları önemini kaybeder. Bu

    sayede ses sinyalindeki bozulma giderilmiş olur [13].

    Ayrıca çerçevelenmiş ses sinyaline fourier dönüşümü uygulayabilmek için de

    pencereleme işlemi yapılır. Alınan ses sinyalinin hepsini aynı anda işleyemeyiz. Bu

    nedenle ses işaretini parçalara böleriz. Ses işaretini parçalara bölerek fourier

    dönüşümünü de kolaylıkla hesaplayabiliriz [11].

    Pencereleme aralığını belirlerken şu üç faktöre dikkat etmemiz gerekir [11].

    Seçilen pencere aralığında sesin özellikleri değişmemelidir.

    Pencerenin boyu ilerleyen adımlarda elde edilecek olan kepstrum katsayılarının

    oluşması için uygun aralıkta seçilmelidir.

  • 23

    Art arda gelen pencereler sesin bazı kısımlarını atlayacak kadar kısa

    olmamalıdır.

    Biz çalışmamızda Hamming penceresini kullandık. Bu sayede pencerelediğimiz ses

    sinyalinin karakteristiğini belirleyen katsayıları hesapladık [12].

    2.4.7. Fast Fourier Transform

    Hızlı Fourier Dönüşümü olarak geçen bu yöntem ses sinyalini oluştuğu frekanslara

    ayırırarak zaman domeninde değil frekans domeninde işlememizi sağlar. FFT ile

    pencerelenmiş işaretin her bir noktadaki genlik değeri hesaplanır [11].

    İnsan aynı sözcüğü tekrar söylese bile oluşan ses sinyali aynı olmayabilir. [11].

    Örneğin ileri komutunu ilk söylediğimizde oluşan görüntü ile ikinci söylediğimizde

    oluşan görüntü aynı değildir. Şekil 14 ve 15’te görüldüğü gibi ileri komutunu ilk

    söylediğimizde ve ikinci kez söylediğimizde oluşan görüntüler farklı olur.

    Şekil 2.14. Birinci ileri komutunun dalga şekli

    Şekil 2.15. İkinci ileri komutunun dalga şekli

  • 24

    İleri sözcüğünü ifade eden bu iki sinyale bakıldığında birbirlerine benzerler fakat

    birebir aynı değildirler. Ancak sinyalleri fourier dönüşümü yardımıyla gürültüden

    arındırıp benzerliklerini artırabiliriz.

    Şekil 2.16. Birinci ileri komutunun fourier dönüşümü

    Şekil 2.17. İkinci ileri komutunun fourier dönüşümü

    Şekil 16 ve 17’ye baktığımızda sinyallerin fourier dönüşümü alındığında birbirine

    daha çok benzediğini görürüz.

    2.4.8. Mel Filtre Bankası

    Sesin filtreleme işleminin yapıldığı bu banka üçgen dalgaların bir araya gelmesinden

    oluşur. Bunların yapısı bant geçiren filtrenin karakteristiğine benzemektedir. Elde

    edilecek kepstrum katsayısı kadar üçgen kullanılır. Bant genişlikleri sabittir. 1 Khz in

  • 25

    altında lineer, 1 Khz in üstünde logaritmik olarak artmaktadır. Şekil 2.18’de ileri

    kelimesinin sinyaline uygulanmış mel filtre bankası görülmektedir. Frekans ile mel

    frekansı arasındaki ilişki aşağıdaki eşitlikte verilmiştir.

    Şekil 2.18. Mel filtresi uygulanmış işaret

    Mel filtre bankasından geçirilen işaretin logaritması alınır ve ayrık cosinüs

    dönüşümü yapılmak üzere hazır hale getirilir.

    2.4.9. Ayrık Cosinüs Dönüşümü

    MFCC katsayılarını elde etmek için mel filtre bankasının çıkışındaki işarete ayrık

    cosinüs dönüşümü uygulamamız gerekir. Ayrık cosinüs dönüşümüyle frekans

    domeninden tekrar zaman domenine geçeriz. Frekans domeninden zaman domenine ters

    fourier dönüşümüyle de geçilebilir. Fakat işaretin imajiner kısmını kullanmıyoruz. Bu

    nedenle ters fourier dönüşümü yerine ayrık cosinüs dönüşümünü kullanmayı tercih

    ettik.

    2.4.10. MFCC Katsayılarının Bulunması

    MFCC katsayılarının bulunması için sırasıyla şu aşamaları gerçekleştirdik.

    1. Ses sinyalinin Fourier dönüşümü alınır.

  • 26

    2. Fourier dönüşümünün çıkışındaki işaret mel filtre bankasından geçirilir.

    3. Logaritması alınır.

    4. Logaritması alınan işaretin ayrık cosinüs dönüşümü hesaplanır.

    Bu aşamaların sonucunda elde edilen katsayıları KNN metodunda giriş katsayıları

    olarak kullandık. Şekil 2.19’da ileri kelimesinin verilen adımlardan geçirilmesinden

    sonra MFCC katsayıları görülmektedir.

    Şekil 2.19. MFCC katsayıları

    2.4.11. K-Nearest Neighbors (K-En Yakın Komşu) Algoritması

    Gelişen teknolojiyle birlikte ses tanıma ile ilgili çalışmalar artmaktadır. Ses tanıma

    yapabilmek için kullanılabilecek birçok yöntem vardır. Bu yöntemlerden kullanışlı olan

    yöntem k-en yakın komşu algoritması yöntemidir. KNN algoritması bir çeşit

    sınıflandırıcıdır. Bu yöntemle verilerin daha önceden veritabanında olan verilere olan

    benzerliği hesaplanır, en yakın k verisi ortalamasına ve belirlenen eşik değerine göre

    verileri sınıflara yerleştirir [14]. İki örnek arasındaki yakınlık derecesi aşağıda verilen

    formül yardımıyla hesaplanır.

  • 27

    Bu yöntemde model kurulmasına gerek yoktur. Eğitim verisi içerisinde bulunan

    bütün örneklerle karşılaştırma işlemi yapılır. Uygulaması ve anlaşılması basit

    olduğundan dolayı bu yöntem tercih edilendir. Ancak eğitim için kullanılacak örnek

    sayısı arttıkça bu örnekleri saklamak için çok fazla hafızaya ihtiyaç duyulmaktadır.

    Projede kaydedilen seslerin MFCC katsayılarını çıkarılmış ve dışarıdan girilecek sesin

    MFCC katsayısı bu kaydedilen seslerle KNN algoritması yardımıyla karşılaştırılarak en

    yakın sesle eşleşmesi sağlanmıştır.

  • 3. SİMÜLASYON ÇALIŞMALARI

    Bu kısımda devrelerin gerçeklenmesi için yapılan deneysel çalışmalar, simülasyonlar

    ve yazılımlar hakkında bilgiler verilecektir.

    3.1. Haberleşme Devresi Simülasyonu

    Şekil 3.1'de haberleşme devresinin proteus çizimi verilmiştir. Yapılan bu simülasyon

    sayesinde devrenin çalışması hakkında ön bilgilerin elde edilmesi amaçlanmıştır.

    Haberleşme devresinin simülasyonunda PIC16F877A, RF verici, MAX232 Sürücü ve

    RS232 kablo kullanılmıştır. Devrenin çalışmasını RS232 kablo yardımıyla gelen

    verilerin PIC'in içinde gerekli işlemlerden geçerek RF vericiye ulaştırılması şeklinde

    özetleyebiliriz. RF verici ise kendisine gelen bilgileri alıcısına ulaştırır.

    Şekil 3.1. Haberleşme devresinin simülasyonu

  • 29

    3.2. Kumanda Devresi Simülasyonu

    Yapılan olan projede kontrolü gerçekleştirilecek motorların Proteus programı

    yardımıyla simülasyonu yapılmıştır. Burada amaç gerçeklenecek devre hakkında bu

    simülasyon yardımıyla ön bilgilerin edinilmesi ve gerçekleme aşamasında simülasyon

    sonuçlarından faydalanılarak sistemin tasarlanmasıdır.

    Motor devresinin simülasyonunda PIC16F877A, motor sürücü entegresi, butonlar

    ve LED diyotlar kullanılmıştır. Kullanılan motor sürücü entegresi 4 giriş ve 4 çıkışa

    sahiptir. Bu sayede 2 girişi sağdaki motoru, diğer 2 girişi ise soldaki motoru kontrol

    etmek üzere 2 adet DC motorun sürülmesi mümkündür. Motor sürücü entegresinin

    çalıştırılabilmesi için EnableA ve EnableB uçlarının enerjilendirilmesi gereklidir.

    Entegrenin giriş uçlarına koyulan LED’ler yardımıyla hangi motorun ne yönde

    döndüğünü görmek mümkündür. Motorlar ileri yönde dönüyorsa kırmızı LED, geri

    yönde dönüyorsa sarı LED yanmaktadır. Şekil 3.2'de kumanda devresinin Proteus

    simülasyonu verilmiştir.

    Şekil 3.2. Kumanda devresinin simülasyonu

  • 30

    Devrenin çalışmasını özetleyecek olursak ilk önce PIC mikro denetleyicinin

    çalışması için gerekli olan kristal bağlantıları yapılmıştır. Daha sonra C programlama

    dilinde yazılmış olan programın HEX uzantılı dosyası PIC’in içine yüklenerek

    simülasyon yardımıyla program çalıştırılmıştır. PIC’in çıkış sinyalinin güçlendirilmesi

    için motor sürücü entegre kullanılmıştır. Motor sürücü entegrenin İnput1 ve İnput2

    girişi sağdaki motorun, İnput3 ve İnput4 girişi soldaki motorun çalışması için

    kullanılmıştır. Sağdaki motorun çalışmasını ele alacak olursak motorun sol ucuna

    Output1 sağ ucuna ise Output2 çıkışları bağlanmıştır. Output1 İnput1’den gelen,

    Output2 ise İnput2’den gelen sinyalleri çıkışa aktarır. Bu durumda olası çalışma

    durumlarını Tablo 3.1'de verilmiştir.

    Çizelge 3.1. Motor Hareket Durumları

    İnput1 İnput2 Motor Durumu

    Lojik 1 Lojik 1 Motor dönmez

    Lojik 1 Lojik 0 Motor ileri yönde döner.

    Lojik 0 Lojik 1 Motor geri yönde döner.

    Lojik 0 Lojik 0 Motor dönmez.

    Burada lojik 1 olarak +5V lojik 0 olarak 0V kastedilmektedir. Aynı durumlar soldaki

    motor içinde geçerlidir. Motorların kontrolü için ileri, geri, sağ, sol ve dur butonları

    kullanılmıştır.

    3.3. Aracın Sağa ve Sola Dönmesi İçin Kullanılacak Yöntem

    Aracın hareket edeceği yöne göre sağdaki veya soldaki motorun durdurulmasıyla

    yön değiştirme işleminin gerçekleşmesi amaçlanmıştır. Buna göre soldaki motorun

    belirli bir süre ile durdurulup sağdaki motorun hareketinin devam etmesiyle sola dönüş,

    sağdaki motorun belirli bir süre ile durdurulup soldaki motorun hareketine devam

    etmesiyle de sağa dönüş gerçekleşecektir. Bu süre aracın gerçeklenmesinden sonra sağa

    ve sola dönüş kabiliyeti gözlenerek değişebilir. Belirlenen bu süre sonunda durdurulan

    motorun hareketine kaldığı yerden devam etmesi sağlanarak aracın hareketinin

    devamlılığı amaçlanmıştır.

  • 4. DENEYSEL ÇALIŞMALAR

    Bu kısımda yapılan yazılımlar ve gerçeklenen devreler hakkında bilgiler verilecektir.

    Yazılım olarak aracın kontrolünde kullanılan mikro denetleyici ve ses tanıma kısmında

    yapılan yazılım ele alınacaktır. Devre kısmında ise gerçeklenen haberleşme ve kumanda

    devresi hakkında bilgiler verilecektir.

    4.1. Yazılımların Açıklanması

    İlk olarak robot araçta bulunan DC motorların kontrolü için kullanılan PIC16F877A

    mikro denetleyicisinin yazılımı yapılmıştır. Yazılım için PIC C Compiler programı

    kullanılmıştır. Bu yazılımla birlikte robot aracın klavye yardımıyla seri porttan

    gönderilecek komutlarla hareket etmesi amaçlanmıştır. Programda yapılan yazılımla

    birlikte aracın 'w' tuşu ile ileri, 'a' tuşu ile sola, 's' tuşu ile geri, 'd' tuşu ile sağa, 'c' tuşu

    ile de durma işlemi gerçekleştirilmiştir. Klavyeden kontrol için kodların yazıldığı PIC C

    Compiler programı açılır. Programın başlangıç ekranı Şekil 4.1'deki gibidir.

    Şekil 4.1. PIC C Compiler programı başlangıç ekranı

  • 32

    İlk olarak araç çubuğundan 'Tools' menüsü seçilir. Bu menünün altında açılan

    seçeneklerden 'Serial Port Monitor' sekmesine tıklanarak burada kullanılacak COM

    noktası ve bununla ilgili seçenekler işaretlenir ve 'OK' butonuna basılarak bilgi

    gönderme ekranı açılır. Şekil 4.2'de bilgi gönderme ekranı görülmektedir. Burada aracın

    hareketi için kullanılacak olan 'w', 'a', 's', 'd', 'c', tuşlarıyla klavyeden kontrolü

    gerçekleştirilmektedir. Bu tuşlar sırasıyla ileri, geri, sağ, sol, dur eylemlerinin

    gerçekleştirilmesini sağlar. Bu alana yazılacak olan harf RS232 kablo yardımıyla seri

    porttan PIC'e gönderilir ve PIC'in içinde yazılan programa göre aracın hareketi

    sağlanmış olur.

    Şekil 4.2. Klavyeden kontrol için ara yüz ekranı

    Daha sonra ses tanıma yazılımında araç için 5 adet komut belirlenmiştir. Her bir

    komut için 5 farklı ses kaydı alınarak 25 adet veriye sahip bir veri tabanı

    oluşturulmuştur. Oluşturulan bu veri tabanındaki sesler programın eğitilmesi için

    kullanılacaktır. Ses tanıma yazılımı için MATLAB programı ve KNN algoritması

    kullanılmıştır. Bu algoritma ile birlikte dışarıdan girilen sesin MFCC katsayıları ile veri

  • 33

    tabanındaki seslerin MFCC katsayıları karşlaştırılarak en yakın olan sınıfa atanması

    sağlanmıştır. Robot araçla haberleşmesi için ise örneğin, program ileri komutunu

    algıladığı anda MATLAB ile seri porttan 'w' bilgisi gönderilerek aracın ileri yönde

    hareketi sağlanmıştır. Benzer şekilde diğer komutlar için de seri porttan bilgi gönderimi

    yapılarak aracın sesli komutlarla birlikte hareket etmesi amaçlanmıştır.

    4.2. Devrelerin Gerçeklenmesi

    Robot araç tasarımı aşamasında gerçeklenecek olan haberleşme ve kumanda devresi

    ilk olarak breadbord üzerinde denenmiş ve olumlu sonuçlar vermesinin ardından baskı

    devre üzerine aktarılmıştır. Baskı devrenin tercih edilmesinin nedeni daha güvenli

    olmasının yanında estetik bakımdan da projeye katkı sağlamasıdır. Baskı devre

    çizimleri Ares programı yardımıyla yapılmıştır. Gerçekleştirilen haberleşme devresinin

    PCB çizimi Şekil 4.3'te gösterilmiştir.

    Şekil 4.3. Haberleşme devresi PCB çizimi

    Baskı devre çizimi yapıldıktan sonra gerçeklenen haberleşme devresinin fotoğrafı

    Şekil 4.4'te gösterilmiştir.

  • 34

    Şekil 4.4. Gerçeklenen haberleşme devresinin fotoğrafı

    Bu devre bilgisayardan gelen verinin PIC16F877A yardımıyla RF vericiyle

    bağlantısının gerçekleşmesini sağlar. Ayrıca devrede bulunan LED'ler yardımıyla

    devrenin sağlıklı çalışıp çalışmadığını test etmek mümkündür. Kumanda devresinin

    PCB çizimi Şekil 4.5'te verilmiştir.

    Şekil 4.5. Kumanda devresi PCB çizimi

  • 35

    Baskı devre çizimi yapıldıktan sonra gerçeklenen kumanda devresinin fotoğrafı Şekil

    4.6'da gösterilmiştir.

    Şekil 4.6. Gerçeklenen kumanda devresinin fotoğrafı

    Tasarlanan bu devre yardımıyla RF Alıcı ile alınan bilgi mikro denetleyiciye iletilir

    ve mikro denetleyici de gelen bilgi doğrultusunda motor sürücü entegresine gerekli

    sinyalleri üretmesi için komut verir. Motor sürücü entegresi yardımıyla araçta bulunan

    motorların çalışması sağlanır. Devrede bulunan LED'ler yardımıyla haberleşme ve

    kumanda devresinin senkron şekilde çalışıp çalışmadığını gözlemlemek mümkündür.

    Tasarlanan robot aracın son hali Şekil 4.7'de gösterilmektedir.

  • 36

    Şekil 4.7. Robot aracın gerçeklenmiş hali

  • 5. SONUÇLAR

    'Sesli Komutlarla Araç Kontrolü' projesi kapsamında verilen sesli komutlara göre

    hareket edebilen robot araç tasarlanmıştır. Ayrıca aracın sesli komutların dışında

    klavyeden atanan belirli tuşlar sayesinde manüel olarak da kontrolü mümkündür. Bu

    projede veri aktarımı ve kontrol işlemlerini gerçekleştirmek amacıyla PIC16F877A

    işlemcisi kullanılmış, sesli komutların algılanması ise MATLAB programı yardımıyla

    Yapay Sinir Ağları yöntemi kullanılarak gerçekleşmiştir. Aracın uzaktan haberleşmesi

    için RF modüllerinden faydalanılmıştır. Bilgisayara takılan RS232 kablo yardımıyla seri

    porttan haberleşme işlemi yapılarak bilgilerin PIC'e ulaşması sağlanmıştır.

    Hedeflenenler doğrultusunda başarılı bir şekilde gerçekleştirilen bu proje askeri

    uygulamalarda bölge keşiflerinde, endüstriyel uygulamalarda kullanılan robotların

    kontrolünde kullanılabilir. Ayrıca aracın üzerinde kamera sistemi kurularak insanların

    erişemeyeceği yerlerde, tasarlanan bu araç yardımıyla bölge hakkında bilgi edinilebilir.

    Zehirli gaz sızıntısı, deprem, yangın gibi durumlarda kullanılacak ses kontrollü robot

    araç yardımıyla bölge hakkında daha hızlı bilgi toplanıp can ve mal kaybı en aza

    indirilebilir.

    Proje geliştirilmeye açık olması nedeniyle de gelecekte bu alanda yapılacak projeler

    için önem arz etmektedir. Tasarlanan araca birçok yeni özellik eklenip uygulama

    alanları genişletilebilir. Örneğin araca verilecek sesli komut sayısı artırılarak daha

    kapsamlı kontrol olanağı sağlanabilir veya aracın uzaktan kumanda edilmesinde

    kullanılan RF modülün kapasitesi artırılarak daha uzak mesafelerden araç kontrol

    edilebilir. Aracın üzerine konulacak sensörler yardımıyla önünde engel bulunması

    durumunda hareketini durdurması da geliştirilebilir bir yön olarak düşünülebilir.

    Sonuç olarak hazırlanan çalışma çizelgesine paralel gidilerek istenilen sonuca

    ulaşıldığı söylenebilir.

  • 6.YORUMLAR VE DEĞERLENDİRME

    Bu çalışmada sesle kontrol edilebilen bir robot araç tasarımı yapılmıştır. Tasarlanan

    sistemde kullanılan devrelerin simülasyonları yapılmış ve bunlar gerçeklenecek

    devrelerde referans olarak kullanılmıştır. Tasarlanan aracın kontrol yazılımı C

    programlama dili ile ses tanıma yazılımı ise MATLAB programı yardımıyla

    gerçekleştirilmiştir. Gerçekleştirilen bu proje bu alanda çalışma yapacak olanlar için

    fikir verme açısından önemlidir. Bununla birlikte projenin geliştirilmesi ile ilgili olarak

    aşağıdaki maddeler dikkate alınabilir.

    Projede kullanılan RF modülün yerine verici gücü daha yüksek bir RF modül

    kullanılarak haberleşme ve kontrol mesafesi artırılabilir.

    Tasarlanan aracın üzerine kablosuz olarak görüntü aktarabilen kamera

    yerleştirilerek aracın bulunduğu noktanın bilgisi bilgisayar tarafından

    gözlenebilir.

    Aracın üzerinde kullanılacak sensörler yardımıyla komut gelmesine rağmen

    hareketsiz kalması sağlanarak zarar görmesi engellenebilir.

    Araçta kullanılan Li-Po pil 7.4V, 2.25Ah'lik güce sahiptir. Kullanılan pilin gücü

    artırılarak aracın çalışma süresi artırılabilir.

    Araca verilen komutların sayısı beştir. Bu komutların sayısı artırılarak daha

    kapsamlı kontrolü sağlanabilir.

  • KAYNAKLAR

    [1]. R. Edizkan, B.Tiryaki, T. Büyükcan, İ. Uzun, “Ses Komut Tanıma ile Gezgin

    Araç Kontrolü” , IX. Akademik Bilişim Konferansı Bildirileri, Dumlupınar

    Üniversitesi, Kütahya, 31 Ocak-2 Şubat 2007.

    [2]. İ. Çavuşoğlu, F. Kırmızı, “Seri Port ile Haberleşebilen Uzaktan Kumandalı

    Kameralı Araç”, Bitirme Tezi, Yıldız Teknik Üniversitesi, Elektrik Elektronik

    Mühendisliği Bölümü, İstanbul, Haziran 2007.

    [3]. H. Çakır, B. Okutan, “Ses Kontrollü Web Tarayıcı”, Bilişim Teknolojileri

    Dergisi Cilt:4 Sayı: 1, Ocak 2011.

    [4]. Ş. Yüksel, G. Ekincioğlu, İ. Develi, K. Tunçer, E. Zabun, “RF Modüllerle

    Kontrol Edilen Paletli Keşif Aracı Tasarımı”, TMMOB EMO Ankara Şubesi

    Haber Bülteni, Sayı: 2013.1, 2013.

    [5]. İ. Çayıroğlu, M. Şimşir, “PIC ve Step Motorla Sürülen Bir Mobil Robotun

    Uzaktan Kamera Sistemi ile Kontrolü” , Erciyes Üniversitesi Fen Bilimleri

    Enstitüsü Dergisi, Sayı: 24, 2008.

    [6]. İ.Boztepe, "Sesli Komutlar İle Araç Kontrolü", Karadeniz Teknik Üniversitesi,

    Bilgisayar Mühendisliği Bölümü Ana Bilim Dalı, Trabzon, Haziran 2013.

    [7]. Altınbaşak O., Mikrodenetleyiciler ve PIC Programlama, İstanbul Altaş

    Yayıncılık, 2007.

    [8]. “PIC16F87XA Data Sheet”, Microchip, 2009.

    [9]. A. A. Varsak, F. Ünal, S.Yılmaz, B. Amanmyradov, "Gözcü Robotunun

    Elektromekanik Tasarımı ve Prototip Üretimi", Karadeniz Teknik Üniversitesi,

    Elektrik Elektronik Mühendisliği Bölümü, Trabzon, Haziran 2013.

    [10]. N. İkizler, İ.H. Çavdar, “Çapraz İlişki Yöntemi Kullanarak Konuşmacı Bağımlı

    Türkçe Ayrık Hece Tanıma Sisteminin Gerçeklenmesi”, IEEE, SUI 2001

    Kurultayı, Cilt II Gazi Mağosa, 2001.

    [11]. H. İ. Bülbül, A. Karacı, "Bilgisayar Ortamında Sesli Komutları Tanıma",

    Kastamonu Eğitim Dergisi, Cilt:15, No:1, Sayfa 45-62, Mart 2007.

    [12]. İ.Barış, M.Erdamar, E. Sümer, H. Erdem, "Ses İşaretlerinin Yapay Sinir Ağları

    ile Tanınması ve Kontrol İşlemleri İçin Uygulanması", Başkent Üniversitesi,

    Elektronik Mühendisliği Bölümü, Ankara.

    [13]. G.Dede "Yapay Sinir Ağları ile Konuşma Tanıma", Yüksek Lisans Tezi, Ankara

    Üniversitesi, Elektronik Mühendisliği Ana Bilim Dalı, Ankara, 2008

    [14]. İ.Soğukpınar, S. Çalışkan, "K-Means ve K-En Yakın Komşu Yöntemleri ile

    Ağlarda Nüfuz Tespiti, Gebze Yüksek Teknoloji Enstitüsü, Bilgisayar

    Mühendisliği Bölümü

  • 40

    EKLER

    EK-1 IEEE ETİK KURALLARI

    IEEE üyeleri olarak bizler bütün dünya üzerinde teknolojilerimizin hayat

    standartlarını etkilemesindeki önemin farkındayız. Mesleğimize karşı şahsi

    sorumluluğumuzu kabul ederek, hizmet ettiğimiz toplumlara ve üyelerine en yüksek

    etik ve mesleki davranışta bulunmayı söz verdiğimizi ve aşağıdaki etik kuralları kabul

    ettiğimizi ifade ederiz.

    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; hataları 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 ayrı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;

  • 41

    10. Meslektaşlara ve yardımcı personele mesleki gelişimlerinde yardımcı olmak ve

    onları desteklemek.

    IEEE CODE OF ETHICS

    We, the members of the IEEE, in recognition of the importance of our Technologies

    in affecting the quality of life throughout the world, and in accepting a personal

    obligation to our profession, its members and the communities we serve, do hereby

    commit ourselves to the highest ethical and Professional conduct and agree:

    1. To accept responsibility in making engineering decisions consistent with the

    safety, health and welfare of the public, and to disclose promptly factors that

    might endanger the public or the environment;

    2. To avoid real or perceived conflicts of interest whenever possible, and to

    disclose the to affected parties when they do exist;

    3. To be honest and realistic in stating claims or estimates based on available data;

    4. To reject bribery in all its forms;

    5. To improve the understanding of technology, its appropriate application, and

    potential consequences;

    6. To maintain and improve our technical competence and undertake technological

    tasks for others only if qualified by training or experience, or after full

    disclosure of pertinent limitations;

    7. To seek, accept, and offer honest criticism of technical work, to acknowledge

    and correct errors, and to credit properly the contributions of others;

    8. To treat fairly all persons regardless of such factors as race, religion, gender,

    disability, age, or national origin;

    9. To avoid injuring others, their property, reputation, or employment by false or

    mlicious action;

    10. To asist colleagues and co-workers in their Professional deveploment and to

    support them in following this code of ethics.

  • 42

    MÜHENDİSLER İÇİN ETİK KURALLARI

    Etik Kuralları İle İlgili Faydalı Web Siteleri

    IEEE Code Of Ethics

    http://www.ieee.org/about/corporate/governance/p7‐8.html

    NSPE Code Of Ethics for Engineers

    http://www.nspe.org/resources/ethics/code-ethics

    American Society of Civil Engineers, UC Berkeley Chapter

    http://courses.cs.vt.edu/professionalism/WorldCodes/ASCE.html

    Engineering Ethics BY DENISE NGUYEN

    http://sites.tufts.edu/eeseniordesignhandbook/2013/engineering‐ethics‐2/

    Code of Ethics of Professional Engineers Ontario

    http://www.engineering.uottawa.ca/en/regulations

    Bir kitap:

    What Every Engineer Should Know About Ethics

    Yazar : Kenneth K. Humphreys

    CRC Press

    EMO – Elektrik Mühendisleri Odası

    Etik Kütüphanesi

    http://www.emo.org.tr/genel/bizden_detay.php?kod=50871&tipi=46&sube=0#.U1Q

    fyVV_tjs

    http://www.ieee.org/about/corporate/governance/p7‐8.htmlhttp://www.nspe.org/resources/ethics/code-ethicshttp://courses.cs.vt.edu/professionalism/WorldCodes/ASCE.htmlhttp://sites.tufts.edu/eeseniordesignhandbook/2013/engineering‐ethics‐2/http://www.engineering.uottawa.ca/en/regulationshttp://www.emo.org.tr/genel/bizden_detay.php?kod=50871&tipi=46&sube=0#.U1QfyVV_tjshttp://www.emo.org.tr/genel/bizden_detay.php?kod=50871&tipi=46&sube=0#.U1QfyVV_tjs

  • 43

    EK-2 DİSİPLİNLER ARASI ÇALIŞMA

    Projede kullanılacak materyaller konusunda tasarlanan aracın mekanik kısmı

    dışarıdan sipariş yoluyla gerçekleştirilmiştir. Bulunulan yörede, projedeki bazı

    elemanların mevcut olmaması nedeniyle internet odaklı alışveriş sitelerinden sipariş

    verilerek bu elemanlar tedarik edilmiştir. Aşağıda verilen Tablo X'te projede kullanılan

    ana elemanlar ve bunların maliyetleri belirtilmiştir.

    Çizelge E2.1. Malzeme/Teçhizat-Maliyet Çizelgesi

    Projenin hayata geçirilmesi hususunda ise projede konusu olan fakat daha önce

    eğitim hayatında karşılaşılmamış sorunlar için farklı bölümden hoca ve öğrencilerle

    ortak çalışmalar yapılarak projenin gerçeklenmesi amaçlanmıştır. Öyle ki; bitirme

    çalışmasının ikinci kısmı olarak adlandırdığımız ses işleme ve tanıma kısmı,

    üniversitemizin Fen Fakültesi, İstatistik ve Bilgisayar Bilimleri Bölümü'nde Sayın Yrd.

    Malzeme/Teçhizat Adet Maliyet(TL)

    Aracın Mekanik Kısmı 1 63

    RF Modül 1 15

    RS232 USB Kablo 1 40

    PIC16F877A 2 20

    Motor Sürücü Entegre 1 10

    MAX232 Sürücü 1 1.55

    7805 Regülâtörü 1 0.50

    Batarya ve Şarj Aleti 1 93

    Pil 2 12

    Diğer Malzemeler 15 60

    Toplam 25 315.05

  • 44

    Doç. Dr. Orhan KESEMEN hocamızın vermiş olduğu SEC 426 Yapay Sinir Ağları

    isimle derste anlatılan konularla paralel gidilerek gerçekleştirilmiştir. Derslerin büyük

    bir çoğunluğuna katılım sağlanarak anlatılan bilgilerden faydalanılıp, konu ayrıntılı

    olarak öğrenilmiş ve bu bilgiler ışığında tezin yazımı kolaylaşmıştır. Bu bağlamda

    bölümde bulunan öğrencilerle ortak çalışmalar yapılmış ve hocamızın denetiminde bu

    kısmın gerçeklenmesine olanak sağlanmıştır. Böylece yapılan çalışmalar doğrultusunda

    bilgisayarda programlama ile olan bilgiler tazelenmiş ve bu bilgilere yenileri eklenerek

    projeye katkı sağlanmıştır.

    Ayrıca ihtiyaç duyulması halinde bölümümüz öğretim elemanlarının da yardımına

    başvurarak projenin devamlılığı sağlanmıştır.

  • 45

    EK-3 STANDARTLAR VE KISITLAR FORMU

    Bitirme Projesinin hazırlanmasında Standartlar ve Kısıtlarla ilgili olarak, aşağıdaki

    soruları cevaplayınız.

    1. Projenizin tasarım boyutu nedir? Açıklayınız.

    Yapılacak projede araç modellenir, gerekli donanım bir araya getirilerek sistem

    kurulur. Matlab programıyla yapılacak olan ses işleme yazılımı ile tasarlanan

    aracın sesli komutlarla hareket etmesi sağlanır.

    2. Projenizde bir mühendislik probleminin kendiniz formüle edip, çözdünüz mü?

    Kendimize ait olan bir çözüm veya üretilen formül bulunmamaktadır. Daha

    önce yapılan çalışmalar ve kullanılan formüller üzerine uygulama yapılmıştır.

    3. Önceki derslerde edindiğiniz hangi bilgi ve becerileri kullandınız?

    Yapılacak olan projede Sinyaller ve Sistemler, Elektrik Makineleri, Endüstriyel

    Elektronik, Mikroişlemciler ve Sayısal Elektronik derslerinde öğrendiğimiz pek

    çok bilgiden faydalanılmıştır.

    4. Kullandığınız veya dikkate aldığınız mühendislik standartları nelerdir?

    IEEE, TS EN ISO 9001, TS 18001, TS ISO IEC 20000-1, IQNET SR 10, TS

    EN ISO 14001 ve ANSI C standartlarına uygun olarak üretim yapılmaktadır.

    5. Kullandığınız veya dikkate aldığınız gerçekçi kısıtlar nelerdir?

    a-) Ekonomi:

    Yapılacak projede minimum maliyet sağlanmaya çalışılmıştır.

    b-) Çevre Sorunları:

    TS EN ISO 14001 standardına bağlı kalınmıştır.

    c-) Sürdürülebilirlik:

    Günümüzde hızla gelişen teknoloji ile birlikte robot kullanımına ihtiyaç

    artmıştır. Robotlar günlük hayatta insan yaşamını kolaylaştırıcı bir etkiye

    sahiptir. Sanayi dalında, endüstriyel uygulamalarda, güvenlik sistemleri gibi

    birçok alanda kullanıldığı için geliştirilebilir ve kullanımları

    yaygınlaştırılabilir.

  • 46

    d-) Üretilebilirlik:

    Piyasada var olan malzemeler yardımıyla farklı alanlarda kullanılmak üzere

    üretilebilir.

    e-) Etik:

    Etik kurallarına dikkat edilerek proje tasarlanmıştır.

    f-) Sağlık:

    TS 18001 standardı göz önünde bulundurularak sağlıklı bir çalışma ortamı

    hazırlanmıştır.

    g-) Güvenlik:

    TS 18001 standardına bağlı kalınmıştır.

    h-) Sosyal ve Politik Sorunlar:

    IQNET SR 10 standardına bağlı kalınmıştır.

  • 47

    EK-4 PIC16F87XA DATA SHEETS

  • 48

    ÖZGEÇMİŞLER

    Doğan Can SAMUK

    Doğan Can SAMUK 01.05.1991 tarihinde Trabzon'da doğdu. İlk ortaokul ve lise

    öğrenimini Trabzon'da tamamladı. 2010 yılında başlayan lisans eğitimi ise Karadeniz

    Teknik Üniversitesi Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği

    Bölümü'nde devam etmektedir.

    Havva ÖZKAYA

    Havva ÖZKAYA 19.08.1990 tarihinde Üsküdar’da doğdu. İlk ortaokul ve lise

    öğrenimini Kocaeli’de tamamladı. 2009 yılında başlayan lisans eğitimi ise Karadeniz

    Teknik Üniversitesi Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği

    Bölümü’nde devam etmektedir.