Tag

Arduino

Browsing

Bir önceki yazımda, nRF24L01 modülünü nasıl daha kolay kullanırız ve nasıl toplu veri göndeririz onu anlatmıştım. O yazıyı yazarken aklıma, daha önce Bluetooth ile kontrol ettiğimiz aracımızı acaba nRF24L01 ve Joystick kullanarak kontrol etsem nasıl olur fikri geldi. Aracım şase olarak zaten elimin altında duruyordu. O yüzden aracı nasıl yaptığımı bu yazıda anlatmayacağım. Aracın yapımına ve kodlara L298N Motor Sürücü Entegresi Kullanımı yazımdan ulaşabilirsiniz. Ben sadece aracın bağlı olduğu Arduino’ya bir adet modül ekledim. Diğer tarafta ise yine bir Arduino ve bir Joystick Shield kullandım. Joystick shield’in buton pinleri arka tarafında yazıyor, bu yüzden direk onları tanımlayarak başladım, ardından verilerini okuma işlemini gerçekleştirdim. Son olarak bu verileri göndereceğim dizi içerisine atarak gönderme işlemini yaptım. Alıcı tarafında ise yapılan tek değişiklik…

Arduino ile kablosuz haberleşme üzerine çalışmalar yapıyorum ve bir projemde her hangi bir ağa bağlanmadan, sadece 2 cihaz arasında (2 Arduino) haberleşmeyi sağlamam gerekti ve bunun için en uygun modülün nRF24l01 olduğuna karar verdim. Ama yaşadığım başka bir sıkıntı vardı, göndermem gereken verileri sadece karakter olarak gönderebiliyordum. Bu sorunu çözmek için uzun araştırmalar yaptım. Ama modülün kendi örnekleri ve modül hakkında yazılan blog yazıları hem göndermem gereken mesajı bir ‘integer’ dizi olarak göndermiyor, hem de karmaşık yollar ile çözüme gitmeye çalışıyor ve bu benim işime yaramıyordu. O yüzden, okuması ve kullanması oldukça basit ve tek seferde birden fazla veriyi – tipi (int, float…) önemli değil – bir dizi halinde göndererek 2 modül arasında haberleşmeyi sağlayabileceğimiz bir hale getirdim. Modülleri, alıcı…

Daha önce L298N entegresinin nasıl kullanıldığını ve Arduino ve Android cihaz kullanarak arabamızı nasıl kontrol edeceğimize dair yazılar yazmıştım. Bu yazımda ise o projeleri biraz daha geliştirip herkesin hemen ve kolaylıkla kullanabileceği bir kütüphane yazdım ve paylaşmak istiyorum. Kütüphane kullanmamızın avantajları ve dezavantajları olabilir. Avantajlarından bazıları, fonksiyonları tek tek elimizle yazmak yerine hazır olarak ulaşılabilir bir şekilde elde ederiz. Dökümantasyonlarını inceleyerek hangi fonksiyonların ne işe yaradığını öğrenebiliriz. Dezavantajları ise kullandığımız programda sadece bir fonksiyonu kullanmak varken, kütüphaneyi dahil ederek tüm fonksiyonları dosyamıza çağırmış oluruz ve bu da fazladan boyuta yol açar. Kullanmaya Başlayalım Benim bu kütüphaneyi yazmamdaki amaç, sadece motor pinlerinin girilmesi ile harekete hazır bir arabamızın olmasıdır. Bunun için kütüphanemizi dahil ettikten sonra bir Araba nesnesi oluşturmamız gerekiyor. Daha…

Burdan – Eskişehir – kalkıp otostopla İzmir’e giderek, İzmir Yüksek Teknoloji Enstitüsü (İYTE)’de düzenlenen Roboleague yarışmasına Rob Stark ekibi olarak katılarak robot yapmaya çalıştık. (Bir sonraki yazımda İzmir otostobu maceramızı okuyabilirsiniz.) Katıldığımız kategori “Tasarla, Yap, Yarıştır” kategorisiydi. Bu kategoride, size verilen parçalarla tasarımlar yaparak, size verilen parkur ve görevleri tamamlamanız gerekiyor. Bizim kategorimiz 24 saat sürüyordu. Sizi 24 saat boyunca ekibinizle birlikte bir sınıfta tutuyorlar ve projenize odaklı çalışıyorsunuz. Giriş çıkış serbest, eğer rahat bir yer bulabilirseniz uyumak serbest, hiçbir koşul yok, tek yapmanız gereken o robotu bitirmek. Ama keşke burda yazdığım kadar kolay olsaydı. Daha önce yıllardır gelen ekipler tasarım için verilen K’nex malzemeleri ile çatır çatır bir şeyler yapmaya başladılar, hatta yanımızdaki ekip yarım saatte arabanın taslağını bitirdi…

Arduino üzerine 1-2 çalışma yapmıştım ve artık kablosuz haberleşme üzerine farklı şeyler yapmaya çalışıyorum. Bunun içinde en büyük yardımcım ESP8266 modülü oluyor. Ama Arduino kullanırken şöyle bir sıkıntı çekiyorum. Uno’nun ve Nano’nun hafızaları bazı şeyler için küçük geliyor ve Mega’nın da boyutu yaptığım işler için büyük geliyor. Bunun için hem boyut hem hafızadan kazanç, hem de ESP8266 bağlantısındaki kablo kalabalığından kurtulmak için NodeMCU’ya geçiş yaptım ve projelerimde onu da kullanmaya çalışıyorum. Bu yazımda DHT11 Sıcaklık ve Nem sensörünün kullanımı hakkında bilgi vereceğim. Sensörün özelliği, havanın sıcaklığını ve nemini ölçerek bize ulaştırıyor. Bu verileri belirli aralıklarla yaparak daha net bilgiye ulaşmamıza yardımcı oluyor. Github sayfama eklediğim repo’da sensörün kullanımına ait detayları anlatmaya çalıştım. Gerekli olan kütüphane dosyası için ve kodu indirmek…

Bir önceki yazımda yazmış olduğum MIT: App Inventor ile geliştirdiğim bir Android uygulaması ile Arduino kullanarak hazırlamış olduğum arabamı kontrol etmeyi başardım. Yazının içerisinde arabanın çalışma mantığından ve yazılım kısmından elimden geldiğince ayrıntılı olarak bahsetmeye çalışacağım. Arabamız, ileri, geri, sağ, sol, durma, sağ sinyal, sol sinyal, dörtlü yakma ve korna özelliklerine sahip. Bu özelliklerin hepsini bluetooth ile telefonumuz üzerinden kontrol edebiliyoruz. Daha önceki yazımda sadece entegre olarak elinizde bulunan L288N sürücüsünü nasıl kullanacağınızı anlatmıştım. 2 tekeri Eskişehir’de unuttuğum için şuan fotoğraf ve video ekleyemiyorum. Ama en kısa sürede ekleyeceğim. Kullandığım komponentler: Arduino Uno HC-06 Bluetooth modülü L298N Motor Sürücüsü 4 adet DC Motor Harici Güç Kaynağı (Pil) Led’ler Jumper kablolar İlk olarak aracımızın devre şeması ile başlayalım. Benim oluşturduğum aracın…

Artık elektroniğe biraz daha yönelmemden dolayı bazı şeylere ihtiyacım oldu. Bunlar arasında – özellikle kablosuz haberleşme için – mobil uygulamalar da yer alıyordu. Şuan sıfırdan bir Android uygulama yazma için bilgim olmadığı için hazır olarak uygulama oluşturmama yardımcı olacak araçlar arayışına girdim. MIT: App Inventor ile karşılaştım. Önce, App Inventor hakkında internetteki yorumları okuyunca biraz şaşırdım ve çok basit olduğunu düşündüm. Çünkü o yorumlar arasında, “Çocuklar bile yapabilir. Sürükle-bırak ile istediğiniz uygulamayı yazabiliyorsunuz. Hiç kod bilginiz olmasına gerek yok.” gibi yorumlar görmüştüm. Bu aslında bende hem merak uyandırdı hem de uygulamadan uzaklaştırdı ama merakım daha ağır bastı ve araştırıp öğrenmeye karar verdim. Yorumlarda bahsedildiği gibi sürükle bırak yöntemiyle uygulamanızı tasarlayıp programlıyorsunuz. Ama öyle hiç programlama bilmeden de yapılabilecek bir şey…

Daha önceki yazılarımda bir araba projem olduğundan bahsetmiştim. Bu yazımda ise araba projemde kullandığım motor sürücü entegresinin nasıl kullanılacağını anlatacağım. Bunu anlatma sebebim tamamen Türkçe kaynak eksikliğinden kaynaklanıyor. Ben kullanmak için uzun süre uğraştım ve sonunda entegreyi çözmeyi başardım. İlk olarak entegreden biraz bahsetmek istiyorum. Motor sürücü entegreleri, çeşitli bağlantılarını gerçekleştirerek motorunuzu kodlar yardımıyla kontrol etmenize yarayan entegrelerdir. Ben ilk olarak L293D modelini denedim ama ondan istediğim verimi alamadım o yüzden L298N modeli ile yoluma devam ediyorum. İçerisinde çift H köprüsü barındıran bu model ile aynı anda 2 motoru kontrol edebiliyorsunuz ve bu size çok avantaj sağlıyor. Entegremiz 8 uzun ve 7 kısa olmak üzere 15 bacaktan oluşuyor. İnternet üzerinde bulduğum çok güzel bir resim ile anlatımıma devam edeceğim. Kaynak:…