Bu uygulamayı Mblock programında yapacağımız. Kodlara geçmeden önce devremizde gerecek malzeme listesi:
Programın kodlarını indirmek için TIKLAYINIZ
1-Arduino Uno
2-BreadBoard
3-2 adet LED(Kırmızı ve Yeşil)
4- 4 adet Direnç
5-Jumper Kablolar
6- 2 adet buton
7- 2 adet Servo Motor
8- 1 adet I2C LCD Modül
7- 2 adet Servo Motor
8- 1 adet I2C LCD Modül
Malzemelere ihtiyacımız var.
bir önceki örneğimizde 1 adet servo motor kullanarak Mblock İle Otopark Yapımı 1 yapmıştık.
bir önceki örneğimizde 1 adet servo motor kullanarak Mblock İle Otopark Yapımı 1 yapmıştık.
Breadboard'muza eklediğimiz Yeşil Ledimizin uzun bacağına 220 ohm'luk dirençleri ekliyoruz. Direnclerin bir bacağından jumper kablo ile ardunio uno malzememizdeki 9 nolu dijital pine bağlantı kuruyoruz. Ledlerin kısa bacağını ise yine jumper kablo ile Ardunio Uno'da GND(negatif)ucuna bağlıyoruz. Diğer kırmızı ledimizi ise aynı yolla bağlantısını oluşturup 10 nolu dijital pine bağlıyoruz. Ben iki bacaklı buton kullandım. Eğer 4 bacaklı buton varsa elinizde butonu breadboard'umuzda E-F hizasında bir yere takın. Çünkü, butonun paralel ayakları devrenizin iyi çalışmasını engelleyebilir. Butonun bir ayağına direnç bağlayalım direnç bağladığımız ayağın hizasına jumper kablo ile 11 nolu dijital pine diğer butonu ise 12 nolu dijital pine bağladım. Direnclerin diğer ayağından gnd'ye bir kablo çektim. Butonların boşta kalan diğer ayağından ise arduino kartımızın 5V kısmına bağladım. Servo motorda 3 adet uç var. Ortadaki Kırmızı uç 5V, Kahveringi uç GND, Turuncu ucu ise 5 nolu dijital pine bağladım.Diğer servo motorumunda bağlantısını aynı şekilde yaptım. Turuncu kabloyu ucu ise 6 nolu dijital pine bağladım I2C LCD modulünün 4 adet ucu var. VCC'yi arduino unodaki 5V, GND ucunu yine GND'ye, SCL ucunu Arduino uno'daki SCL ucuna, SDA ucunu ise SDA uçlarına bağladım.(Bu uçlar 13 nolu dijital pinden sonra gelen uçlardır)Devre şeması aşağıda yer almaktadır.
Şimdi gelelim kod kısmına;
Öncelikle I2C modülü kullanabilmemiz için Mblock programına uzantılar menüsünden uzantıları yönet kısmına tıklayıp Hasan Karadağ'ın yazdığı I2C LCD modül kütüphanesini yüklememiz lazım. Bu modülle ilgili yazılmış başka kütüphaneleride yükleyebilirsiniz. Mblock programında Robotlar menüsünden Arduino programı başlangıç kodunu ekliyoruz. Sonra başlangıçta ledlerimizin sönmesi için ledlerimizi düşük yapıyoruz. Kullanacağımız lcd modülünün tanımlamasını yapıyoruz. Sonra otoparkımızdaki araçların sayısını tutacak bir veri oluşturuyoruz. Bunun ismini araç sayısı koyuyoruz ve başlangıçta bu veri 0 oluyor. Yani otoparkımızda hiç araç olmadığını farzediyoruz. Kontrol menüsünden sürekli tekrarla kodunu ekledikten sonra iç kısmına butonlarımıza basılıp basılmadığını kontrol etmemiz için eğer ise kodunu kullanacağım. Eğer, 11 nolu sayısal pine bağladığımız buton basılı ise 1 değeri gönderir. Bunu işlemler menüsündeki eşittir kodunu alıp, bir tarafına 11 nolu sayılan pinden gelen değeri okuyup alacak diğer tarafa ise 1 yazıyoruz. Bu buton otoparkımızın bariyerini kaldıracak servo motor olduğu için butona basıldığında ayrıca eğer otoparkımızdaki araç sayısı 4'ten küçükse(otoparkımızın kapasitesini 4 kabul ediyoruz. Bu sayıyı istediğiniz gibi artırabilirsiniz) araç sayısını 1 artırıyoruz yeşil ledimizi yakıyoruz ve servo motorun açısını 90 derece yaparak bariyeri kaldırıyoruz bu esnada ekrana yaz kodu ile araç sayısındaki değişkenin o esnadaki değerini ekrana yazıyoruz. 5 saniye bekledikten sonra servo motorun açısını 0 derece yapıp bariyeri kapatıyoruz ve yeşil ledi söndürüyoruz. Diğer kontrolümüz ise eğer içerdeki araç sayısı 4 ise(yani otopark doludur) lcd ekrana otopark doludur yazacak sonra ekrana araç sayısı yazacak fakat servo motor hareket etmeyecek. Otoparktan çıkarken bariyeri açmak için kullandığımız buton 12 nolu sayısal pin bize 1 değerini döndürüyorsa yani buton basıl ise iki tane kontrolümüz olacak 1. kontrolümüz otoparktaki araç sayısı 0 dan büyük mü? eğer büyükse bariyer 90 derece olup açılacak yeşil led sönecek 10 nolu sayısal pin yüksek olarak yanacak ve içerde kalan araç sayısı 1 azalarak ekrana yazılacak ve 3 saniye sonra Servo motorun açısını 0 yaparak kapıyı kapatmış olacağız. Diğer kontrolümüz ise içerdeki araç sayısı 0 ise çıkış kapısını açmaya gerek yok. içerdeki araç sayısını lcd'ye 0 olarak yazdırıyoruz.
Bu kodları çalıştırabilmemiz için arduino kartımızın ve devremizin bilgisayara usb kablosu ile bağladıktan sonra önce Bağlan menüsünden Seri portu seçiyoruz, oradan arduino kartımızın bağlı olduğu bağlantı noktasını seçelim.Kartlar menüsünden Arduino Uno(veya hangi kartı kullanıyorsanız onu seçin) Seçtikten sonra, Düzenle menüsünden Arduino kipini seçin ve Arduinoya yükle butonuna basarak, yazdığımız kodları arduino kartımıza göndermiş yüklemiş oluruz. Böylece programımız çalışmaya hazır bir hal alır.
Mblock ile Akıllı Otopark Yapımı-1 İçin TIKLAYINIZ
Mblock ile Akıllı Otopark Yapımı-3 İçin TIKLAYINIZ
Benzer Konular:
Tüm Mblock İle Arduino Örnekleri İçin TIKLAYINIZ
(Tüm Mblock ile Arduino Örneklerine tıkladıktan sonra açılan sayfanın en altındaki "Diğer Yayınlara" tıklayarak diğer sayfadaki Mblock ile Arduino örneklerinede ulaşabilirsiniz)
Yorumlar
Yorum Gönder