Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, Beyza Nurbaşı tarafından sunulan gömülü sistemler dersinin beşinci ödevini içeren bir eğitim içeriğidir.
- Video iki ana bölümden oluşmaktadır. İlk bölümde seri haberleşme protokolleri (senkron ve asenkron) detaylı olarak açıklanmakta, UART ve I2C protokolleri tanıtılmaktadır. İkinci bölümde ise AY protokolü kullanılarak iki Arduino arasında seri haberleşme kurulumu adım adım gösterilmektedir. Eğitimde potansiyometre değerlerine göre motorların ve LED'lerin kontrolü yapılmakta, simülasyonla devrenin nasıl çalıştığı gösterilmekte ve Arduino kodları detaylı olarak açıklanmaktadır.
- Videoda ayrıca SB haberleşme protokolünün Tinkercad tarafından kabul edilmediği için yapılmadığı belirtilmektedir.
- 00:04Seri Haberleşme Protokolleri
- Gömülü sistemler dersinin beşinci ödevi, seri haberleşme protokolleri konusunu ele alıyor.
- Seri haberleşme için senkron ve asenkron protokoller kullanılır; senkron haberleşme için alıcı ve verici aynı saat üzerinde olmalıdır.
- Asenkron haberleşme belirli bir kloa gerektirmez, veri herhangi bir anda iletilebilir ve senkron haberleşmeye göre daha yavaş bir iletim sunar.
- 00:56UART ve USART Protokolleri
- UART, bilgisayar ve mikrokontroller veya mikrokontroller ve çevre birimleri arasında haberleşmeyi sağlayan, asenkron olarak çalışan bir protokoldür.
- USART hem senkron hem de asenkron olarak çalışabilen, UART'ın gelişmiş versiyonudur.
- UART, 5-9 bit arası data uzunluğuna sahip veriyi taşıyabilir, ancak genellikle 8 veya 9 bitlik kullanımlar tercih edilir.
- 01:43UART Haberleşme Yapısı
- UART haberleşmesi için baudrate (veri taşıma hızı) ayarlanması gerekir, bu verimin saniyede ne kadarlık byte taşıyacağını belirler.
- Haberleşme işlemi başlangıç bitinden sonra data bitleri (D0-D7), parity biti ve bitiş biti şeklinde gerçekleşir.
- Alıcı ve vericinin veri taşıma hızlarının aynı veya çok yakın olması, aktarım sırasında oluşabilecek hataları minimuma indirmeye yarar.
- 02:35USART Bağlantıları
- USART haberleşmesi için mikroişlemcinin pinleri kullanılır ve USB-TTL dönüştürücü veya RS-232 modülü ile bağlantı sağlanabilir.
- Bağlantıda RX ve TX pinleri çapraz şekilde, GND pinleri birbirine bağlanır.
- 03:10I2C Protokolü
- I2C protokolü, Philips firması tarafından oluşturulmuş, iki adet pin üzerinden iletişim kurmayı sağlayan bir yazılım protokolüdür.
- I2C sistemi olan entegreler bu protokol ile kullanılabilir, sistemi olmayanlar kullanılamaz.
- I2C protokolünde yöneticiye "master", yönetilen diğer parçalara "slave" denir ve dubleks olarak çalışır.
- 04:06I2C Bağlantı Noktaları
- I2C haberleşmesi için dört pin gereklidir: Serial Clock (SCL), Serial Data (SDA), Slave Select (SS) ve Master Output Slave Input (MOSI).
- SCL pin, haberleşme için kare dalga oluşturur ve saat sinyali master cihaz tarafından üretilir.
- MOSI pin, master'ın çıkış ve slave'in giriş olduğu veri yolunu oluşturur, SS pin ise master'ın slave cihazları seçmesine yarar.
- 04:48Devre Malzemeleri
- Devrede iki adet Arduino Uno, bir adet DC motor, bir adet servo motor, iki adet potansiyometre, iki adet direnç ve iki adet LED kullanılmıştır.
- Soldaki potansiyometre DC motorun yönünü, sağdaki potansiyometre ise servo motorun açısını belirler.
- Potansiyometrelerin sağa/sola çekilmesi, motorların yönünü ve LED'lerin yanıp sönmesini kontrol eder.
- 07:05Kod Açıklaması
- Potansiyometrelerin A0 ve A1 pinlerine bağlanması ve değerlerinin 0-1023 aralığından 0-180 dereceye dönüştürülmesi sağlanır.
- Birinci Arduino'da potansiyometre değerleri seri monitöre yazdırılır ve ikinci Arduino'da seri haberleşme üzerinden gelen değerler okunur.
- Gelen değerler servo motorun pozisyonunu ve DC motorun yönünü belirler, ayrıca LED'lerin yanıp sönmesini kontrol eder.
- 10:39Ay Protokolü Devresi ve Simülasyon
- Ay protokolü devresinde A4 ve A5 pinleri bağlanarak GND pinleri birbirine bağlandı.
- Potansiyometre sağ tarafa döndüğünde sağdaki LED yanıyor, sol tarafa döndüğünde soldaki LED yanıyor.
- Servo motor, potansiyometrenin konumuna göre döndürülebiliyor.
- 11:47Arduino Kodu ve Haberleşme
- Arduino kodunda seri haberleşme kütüphanesi ve Ay-C protokolü tanımlandı.
- Potansiyometreden gelen değerler 0 ile 1023 aralığından 0 ile 180 aralığına çevriliyor.
- Potansiyometre değerine göre 'A' veya 'B' karakteri haberleşme için gönderiliyor.
- 13:14İkinci Arduino ve Servo Motor
- İkinci Arduino'da servo motor ve Ay-C protokolü kütüphaneleri tanımlandı.
- Gelen haberleşme değerini okuyup seri monitöre yazdırıyor.
- Gelen değer 'A' ise bir LED yakılıp diğerini söndürüyor, 'B' ise tersi işlem yapılıyor.
- 14:33Simülasyon Sonuçları
- Simülasyonda potansiyometre sol tarafa döndüğünde sol LED yanıyor ve servo motor döndürülebiliyor.
- Potansiyometre sağ tarafa döndüğünde sağ LED yanıyor.
- SB haberleşmesi Tinkercad tarafından kabul edilmediği için çalıştırılmadı.