Arduino ile Bilgisayar Arasında USB Yoluyla İletişim Kurmak ve Bilgisayar ile Motor Hızı Kontrol Uygulaması

Arduino UnoGeçenlerde ebay'den bir Arduino Uno almıştım. Yavaş yavaş bu platformu öğreniyorum. Uzun zamandır, devrelerimden aldığım verileri bilgisayarda görebilmeliyim diye düşünüyordum. Bu işi en kolay nasıl yapabilirim diye düşünürken işin sırrının seri iletişimde saklı olduğunu farkettim.

Birkaç gün önce ebay'den, seri iletişim için mutlaka işime yarayacağını düşündüğüm USB to Serial RS232 diye bir eleman aldım. Dün bu aleti kurcalarken ilk defa bilgisayar ile devrem arasında iletişim kurdum. Bugün ise Arduino ile bilgisayarım arasında iletişim kurmak için bu alete gerek olmadığını öğrendim. Zaten elimizdeki Arduino ve USB kablosu ile bu iletişim sağlanıyormuş(Yeniyim bu konularda. Şimdi kendime diyorum be adam yazdığın kodu Arduino'ya aktarıren TX ve RX ledleri yanıyor,demek ki seri iletişebiliyormuş sadece USB kablosu ile:) )

Arduino MotorNeyse, hikaye kısmını geçelim. Daha önce Arduino ile ilgili bir anlatımın olduğu dökümanda Motor kontrolü uygulaması vardı. Aynı devreyi tekrar kurdum. Fakat bu sefer bilgisayar ile kontrol edeceğiz. Yandaki şekilde de göreceğiniz üzere çok basit bir devremiz var. Ben 5V yerine 9V'luk bir pil kullanıyorum(12V Motor ile).

 

 

Arduino'yu bilgisayarınıza bağladıktan sonra, derleyiciyi açarak aşağıdaki kodları yazalım.

  1. span style="color: #808080; font-style: italic;">//Seri yoldan gelen veri
  2. //İlk durumda motorun çalışma hızı
  3. // Seri iletişim ayarı - iletişimi aktifleştir ve hızını ayarla
  4. analogWrite(9,motorSpeed); //Motorumuzu çalıştır
  5. //Program boyunca çalışan döngü
  6. //Eğer seri bilgi gelmişse
  7. inByte = Serial.read(); //O bilgiyi oku ve inByte değişkenine ata
  8. Serial.write("Alinan karakter:"); //Bilgisayara seri olarak 'Alınan Karakter:' yazısı gönder
  9. //Bilgisayara seri olarak inByte değişkenindeki değeri onluk tabanda gönder(bildiğiniz 10)
  10. //'w' harfi int olarak 119'a karşılık geliyor, yani klavyeden 'w' değeri gönderilmişse
  11. //Motor hızı 10 arttırıldığında 25 5'i aşmayacak ise
  12. motorSpeed+=10; //Motor hızını 10 arttır
  13. analogWrite(9,motorSpeed); //9.Pinde motor hızımız kadar PWM uygula
  14. //'s' harfi int olarak 115'e karşılık geliyor, yani klavyeden 's' değeri gönderilmişse
  15. //Motor hızı 10 azaltığında 0'dan düşük bir duruma gelmeyecek ise
  16. motorSpeed-=10; //Motor hızını 10 azalt
  17. analogWrite(9,motorSpeed); //9.Pinde motor hızımız kadar PWM uygula
  18. }
  19. }
  20. }

Eğer tüm adımları doğru şekilde yaptıysanız, motorunuz dönmeye başlayacaktır. Şimdi kodumuzu yazığımız Arduino Compiler'ımız açıkken CTRL+Shift+M yaparak Serial Monitor'ü açalım. (Tools Menüsü altından da ulaşabilirsiniz).

Arduino Serial Monitorw yazıp send tuşuna bastığınızda moturunuzun hızlandığını, s yazdığınızda ise yavaşladığını gözlemleyeceksiniz.

Tek tek yapmak canınızı sıkıyor ise, wwwwww.. yazarak bir anda hızlandırabilirsiniz:)

NOT: Küçük harf olan w girmelisiniz, W girerseniz değişim gözlenmez.

* Programda Serial.begin() ile belirttiğiniz sayı ile Serial Monitor içinde sağ altta yer alan baud rate'in aynı olmasına dikkat edin

 

Arduino ile Bilgisayar Arasında USB Yoluyla İletişim Kurmak ve Bilgisayar ile Motor Hızı Kontrol Uygulaması” üzerine 5 düşünce

  1. sule

    Motorun uçlarını nasıl bağlayacağız birini 9 a bağladık ama öbür ucunu nere bağlayacağımızı bilmiyoruz yardım ederseniz seviniriz.

    Yanıtla

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir