• Buradasın

    Arduino ile Gömülü Sistemlerde Haberleşme Protokolleri Eğitimi

    youtube.com/watch?v=0Bz6vVQEMsw

    Yapay zekadan makale özeti

    • Bu video, Sivas Cumhuriyet Üniversitesi Mühendislik Fakültesi Bilgisayar Bölümü öğrencisi Oğuzhan Vural'ın "Gömülü Sistemler" dersinin ödev sunumunu içeren teknik bir eğitim içeriğidir.
    • Video, UART, SPI ve I2C haberleşme protokollerinin çalışma prensiplerini, avantajlarını ve dezavantajlarını detaylı şekilde anlatmaktadır. İçerik, Tinkercad üzerinde görsellerle desteklenen teorik bilgilerle başlayıp, Arduino ile pratik uygulamalara geçmektedir. Özellikle iki Arduino arasında potansiyometre değerleri üzerinden servo ve DC motorların kontrolü ve LED kontrolü için bu protokollerin nasıl kullanılacağı gösterilmektedir.
    • Videoda her protokol için Arduino kodları detaylı olarak açıklanmakta, seri haberleşme protokolünün nasıl uygulandığı ve gelen verilerin nasıl işlendiği gösterilmektedir. Proje, bir Arduino'dan gelen hız ve açı değerlerinin diğer Arduino'ya aktarılması ve bu değerlerin LED ve motorların kontrolü için kullanılması üzerine kurulmuştur.
    00:02Giriş ve Ödev Tanıtımı
    • Öğrenci Oğuzhan Vural, Sivas Cumhuriyet Üniversitesi Mühendislik Fakültesi Bilgisayar Bölümü'nde Gömülü Sistemler dersinin ödev sunumunu yapacak.
    • Ödev 5, UART, SPI ve I²C protokolleri hakkında konu anlatımı ve örnek projeler sunmayı amaçlıyor.
    00:59UART Protokolü
    • UART, bilgisayar ve mikrokontroller veya mikrokontroller ve çevre bilimleri arasında haberleşmeyi sağlayan evrensel bir haberleşme protokolüdür.
    • UART, seri iletişim için özel bir donanım olup, veri iletimi için sadece RX (alıcı) ve TX (gönderici) pinlerinden çıkan iki kablo kullanır.
    • UART, asenkron bir protokol olup, veri iletimi için başlangıç biti, data bitleri, eşlik biti ve bitiş biti kullanır.
    03:14Eşlik Biti ve UART Avantajları
    • Eşlik biti, verilerin bitlerinin toplamı çift veya tek sayı olacak şekilde tamamlamak için kullanılır ve hata kontrolü için kullanılır.
    • UART'ın avantajları arasında seri standart eşitliklerini kullanarak hata denetimi, değişken veri paketi ve veri iletimi için sadece iki kablo kullanma özelliği bulunmaktadır.
    • UART'ın dezavantajları arasında çoklu bağımlı yapılandırmaları desteklemediği ve hızları sabitlenmeli olduğu yerlerde farklı olamaması bulunmaktadır.
    04:57SPI Protokolü
    • SPI (Serial Peripheral Interface), MISO, MOSI, SCL ve SS olarak bilinen dört dörtvirgüllü tam çift yönlü iletişim protokolüdür.
    • SPI sadece çoklu slave destekler, çoklu master desteklemez ve slave'lar slave select sinyal tarafından seçilir.
    • SPI protokolünde CLK (seri saat), SS (slave select), MOSI (master out slave in), MISO (master in slave out), CPOL (saat polaritesi) ve CPHA (saat fazı) terimleri kullanılır.
    06:21SPI Yapılandırması ve Modları
    • SPI temelde master-slave yapılandırmasıyla verileri master cihazından kaydırılmasına izin verir ve aynı zamanda slave'den master'a kaydırılabilir.
    • SPI dört olası saat ayarlarda karşılık gelen dört moda (Mode 0, 1, 2, 3) sahiptir.
    • Çoklu slave yapılandırmasında, master cihaz ilgili aygıtın bağımlı seçim hattını düşük mantı ayarlayarak ortak veri ve veri hatlarını paylaşan bireysel cihazlardan veri yazabilir veya veri isteyebilir.
    08:36SPI Avantajları ve Dezavantajları
    • SPI'ın avantajları arasında verilerin kesintisiz aktarılması, herhangi bir sayıda bit gönderilebilir veya alınabilir, hızlı ve az güç tüketimi bulunmaktadır.
    • SPI'ın dezavantajları arasında çoklu master seri protokolünün yapısının bulunmaması, daha fazla kabloya ihtiyaç duyması, her byte'ten sonra onay bite alınmaması ve uzun mesafeler için kullanılamaması bulunmaktadır.
    09:30I²C Protokolü
    • I²C (Inter-Integrated Circuit), Philips şirketi tarafından tasarlanan uzun mesafede seri veri aktarım izin vermek için tasarlanmış bir iletişim protokolüdür.
    • I²C, akıllı telefon, televizyon ve dizüstü bilgisayarlar gibi elektronik cihazlarda yaygın olarak kullanılan güç yönetimi çiftlerini, bellek cihazlarını ve giriş cihazlarını kontrol etmek için kullanılır.
    • I²C, tek tel üzerinden iletişim kurabilen, master-slave tarzında senkron iletişimdir ve hem master hem de slave tarafından üretilen paylaşılan saati kullanır.
    11:42IP Adresleme ve UART Protokolünün Avantajları ve Dezavantajları
    • IP adresleme kullanıldığında birden fazla ana bilgisayardan kontrol edilebilir ve benzersiz adres sağlar.
    • UART protokolünün avantajları: sadece iki kablo kullanımı, çoklu master ve çoklu desteklemesi, verinin doğru aktarıp aktarılmadığının kontrolü, saat uzatma özelliği ve verimli aktarım için daha az maliyetlidir.
    • UART protokolünün dezavantajları: yavaş çalışır, fazla güç tüketir, gürültüye daha az duyarlıdır, ekstra yük oluşturur ve verilerin çerçeve boyutu 8 bit ile sınırlıdır.
    13:17Tinkercad Üzerindeki UART Protokolü Uygulaması
    • Uygulamada iki Arduino kullanılmış, birinci Arduino'da iki potansiyometre bulunuyor.
    • Potansiyometrenin değerleri UART protokolü ile ikinci Arduino'ya gönderiliyor ve ikinci Arduino'da bir dizisi motor, bir servo motor ve iki LED bulunuyor.
    • LED'ler, kırmızı ışık geri hareketi, sarı ışık ileri hareketi gösteriyor.
    14:21Simülasyon Çalışması
    • Simülasyonda potansiyometrelerin değerlerine göre servo motor açıya göre hareket ediyor ve DC motor hızını gösteriyor.
    • Sol taraftaki potansiyometre açıyı, sağ taraftaki potansiyometre hızı gösteriyor.
    • Potansiyometre değerlerine göre LED'ler yanıp sönen ve motorların hızı değişen bir simülasyon çalışması yapılıyor.
    16:24Arduino Kodları
    • Birinci Arduino'da potansiyometre değerleri 0-2255 ve 0-180 aralığına yeniden ölçeklendirilerek ikinci Arduino'ya gönderiliyor.
    • İkinci Arduino'da gelen değerler integer tipine çevrilerek hız ve açı değişkenlerine atanıyor.
    • Servo motorun bağlı olduğu pin ayarlanıyor ve LED'lerin durumları açı değeriye göre kontrol ediliyor.
    20:51I2C Haberleşme Uygulaması
    • I2C haberleşme uygulamasında devre ve çalışma mantığı benzer şekilde çalışıyor.
    • I2C haberleşmesi için Wire kütüphanesi kullanılıyor ve 0x11 adresi üzerinden iletişim başlatılıyor.
    • Potansiyometre değerleri 0-255 aralığına yeniden ölçeklendirilerek ikinci Arduino'ya gönderiliyor.
    23:52Arduino İletişim Projesi
    • İki Arduino arasında iki LED ve iki motor bağlantısı yapılmış, servo motor için 12 kütüphanesi ve Wire kütüphanesi eklendi.
    • Potansiyometre değerlerini almak için integer hız, açı ve byte dizisi tanımlandı.
    • Setup kısmında seri haberleşme başlatıldı, servo motorların bağlı olduğu pinler ayarlandı ve gerekli output kodları yapıldı.
    24:38İletişim Kodları
    • Wire.begin(11) ile 11 adresi üzerinden haberleşme yapıldı.
    • Wire.onRequest metodu, bir Arduino'dan diğerine veri gönderirken kullanıldı.
    • Wire.onReceive metodu, bir Arduino'dan diğerine veri alırken kullanıldı.
    25:10Veri İşleme ve Motor Kontrolü
    • Void receiveEvent fonksiyonunda okunan byte sayısını tutan bir sayaç değişkeni tanımlandı.
    • Gelen veriler değer dizisine aktarıldı ve LED'ler kontrol edildi.
    • Okunan dizinin ilk elemanı integer tipine çevrilerek hız değişkenine aktarıldı.
    26:18Motor Kontrolü ve Projenin Sonuçları
    • DC motora gelen hız değerine göre analogWrite ile bir hız verildi.
    • Servo motoruna gelen açı değerine göre myServo.write ile açı ayarlandı.
    • Bir Arduino'da iki potansiyometre kullanılarak açı ve hız belirlenerek, diğer Arduino'da iki DC motor ve bir servo motor çalıştırıldı.
    27:13Projenin Sonuçları
    • Servo açısı 90'dan büyükse kırmızı LED, 90'dan küçükse mavi LED yakıldı.
    • Proje aynı devre üzerinde I2C ve UART haberleşme protokolleriyle uygulanarak tamamlandı.
    • Ödev tamamlandı ve izleyicilere teşekkür edildi.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor