C18 Diliyle Robot Programlama – Servo Motor Kullanma

Bu projede amaç bir servo motorunu çalıştıracak şekilde mikrodenetleyiciyi programlamak. Aslında yapacağımız çalışmada toplamda 7 servo motoru sürebilecek kapasitede bir program yazmış olacağız.

Servonun ne olduğundan biraz bahsedelim. Servo bir mil etrafında dönebilen motorlu bir yapıdır. Bu yapı kameralarda, robotik aksamların hareket ettirilmesinde (kol, bacak, kafa) kullanılır. Temelde aldığı sinyale göre döner, böylece servoya bağlı cihazın yönü değişir.

Aşağıda örnek bir servo motoru ve bu motora bağlı parça görünmektedir;

Bir tane servoyu sürmek için yapılması gereken işlem timer 0’ı yaklaşık her 20 milisaniyede bir belli bir duty(gecikme – lojik 1’de kalma süresi) zamanı kadar lojik1’de tutmak. Servo aldığı lojik1 sinyalinin süresine göre dönme işlemi gerçekleştirecek. Bu sinyal çok uzun verilirse servo tamamen bir yöne döner ve zorlanır, eğer bu sinyal lojik sıfır olarak kalırsa bu sefer servo tamamen ters yöne döner ve yine zorlanır. Bu zamanlamayı öyle bir ayarlamalıyız ki ne çok fazla, ne de çok az voltaj vermeliyiz. Benim hesaplarıma göre yaklaşık 20 milisaniyede bir 3 milisaniyeden küçük bir duty değeriyle işlem yaptığımızda servo normale yakın çalışıyor. Bu değerlerle kendi işlemlerinizi yapmak için oynayabilirsiniz.

Okumaya devam et

C18 Diliyle Robot Programlama – RS232 Seri Haberleşme (USART)

Bu yazıda amaç bilgisayar ile deneme kartımızı seri şekilde haberleştirmek olacak. Bilgisayarlarla haberleşmek için seri iletişim, paralel iletişim gibi yöntemler vardır. Paralel iletişimde her bir bilgi için bir data hattı vardır, tüm bilgiler aynı anda bu veri yollarından gönderilir. Bu nedenle paralel iletişim seri iletişime göre daha hızlıdır fakat mesafe uzayınca çok maliyetli olmaktadır.

Seri haberleşmede bilgiler tek bir hat üzerinden gönderilip alınır. Hızı paralel iletişime göre yavaş fakat daha ucuzdur. Senkron ve Asenkron olmak üzere 2 adet seri haberleşme yöntemi vardır.

Senkron seri iletişimde gönderilen ve alınan veriler aynı anda aktarılır, yani verici ve alıcı taraf eşzamanlı çalışır. Bu eşzamanlılığı sağlamak için iki devre arasında bir clock sinyali hattı bulunur. Bu nedenle asenkron iletişime göre daha hızlıdır. Asenkron seri iletişimde sadece veri hattı bulunur, alıcı ve verici taraf farklı zamanlarda data gönderebilir.     Eşzamanlı olmadığı için iletilen her verinin başında ve sonunda start-stop bitleri bulunur. Ayrıca her veriyle beraber hata kontrolü için gönderilen parity biti vardır.

Okumaya devam et