Alışverişlerinizi Robotistan’dan Yapın

Faydalı içerikler oluşturarak size yardımcı olmak istiyoruz. Aynı zamanda hızlı teslimat ve müşteri memnuniyetini ön planda tutarak malzeme satışı yapıyoruz. Alışverişlerini robotistan.com‘dan yaparak sen de bize yardımcı olabilirsin 🙂

Raspberry Pi 3 İle LED Yakmak – GPIO Pinlerinin Kullanımı #5

Bu içerik 11 Ocak 2017 Tarihinde Raspberry Pi 3 Uyumlu Olacak Şekilde Güncellenmiştir. Güncellenen kısımları daha kolay şekilde görebilmeniz için farklı renkte (lacivert) yazdık. Güncelliğini yitiren kısımların ise üzerini çizdik. Keyifle oku, bol bol üret!

 

Raspberry Pi Dersleri serimizde kullanacağımız malzemelerin tamamına sizler için hazırladığımız setler ile kolayca sahip olabilirsiniz. Raspberry Pi’ye Uzaktan Bağlantı Yöntemleri (VNC,SSH,TTL) #4 dersimize kadar olan malzemeler için Kombo Kit, Raspberry Pi 3 Röle Kartı İle Alarm Devresi Yapımı #11 dersimize kadar olan malzemeler için Süper Başlangıç Seti, tüm derslerdeki malzemeler için Proje Seti tercih edebilirsiniz.

 

Merhaba arkadaşlar. Bu yazımızda Raspbery Pi’mizin GPIO pinlerini kullanmayı öğreneceğiz.

 

 

Gereken malzemeler:

 

 

Projedeki Malzemeler Bu Sette. Şimdi İncele >

 

Raspberry Pi’deki GPIO konektöründe farklı işlevlere sahip pinler bulunmaktadır:

 

  • Genel amaçlı giriş/çıkış için kullanabileceğimiz GPIO pinleri
  • I2C haberleşme portu (GPIO02 ve GPIO03 pinleri)
  • SPI haberleşme portu (GPIO10, GIPO09 ve GPIO11 pinleri)
  • UART seri haberleşme portu (GPIO14 ve GPIO15 pinleri)

 

Bu pinlerin yerlerini görebilmemiz için şu şekilde bir diyagram mevcuttur:

 

Raspberry Pi GPIO Header

 

Raspberry Pi’mizin tüm haberleşme yeteneklerini kullanabilmemiz için raspi-config programını kullanarak I2C, SPI ve Device Tree özelliklerini aktifleştirmemiz gereklidir. Bu özellikleri açmak için 1 numaralı dersimize bakabilirsiniz.

 

GPIO pinlerini kullanabilmemiz için python-dev ve python-rpi.gpio isimli paketlerin sistemde kurulu olması gereklidir. Raspbian’ın güncel sürümlerinde gerekli tüm paketler yüklü gelmektedir.

 

sudo apt-get updatesudo apt-get install python-dev python-rpi.gpio

 

Komutları ile paketleri sisteme yüklüyoruz. Yükleme işlemi bitince boş bir dosya açıp, aşağıdaki kodu kaydettikten sonra dosyayı blink.py ismiyle kaydediyoruz.

 

import RPi.GPIO as GPIOimport time# blinking functiondef blink(pin): GPIO.output(pin,GPIO.HIGH) time.sleep(1) GPIO.output(pin,GPIO.LOW) time.sleep(1) return# to use Raspberry Pi board pin numbersGPIO.setmode(GPIO.BOARD)# set up GPIO output channelGPIO.setup(11, GPIO.OUT)# blink GPIO17 50 timesfor i in range(0,50): blink(11)GPIO.cleanup()

 

Kodların satır satır detaylı açıklaması için aşağıdaki videoyu izleyebilirsiniz:

 

 

Kaydettiğimiz kodu

 

sudo python blink.py

 

Komutuyla çalıştırıyoruz. Raspbian’ın güncel sürümünde Python komutlarından önce sudo yazmamıza gerek yoktur.

 

Devre şemamız:

 

 

Burada dikkat etmemiz gereken nokta, GPIO17 isimli pinin, 11 numaralı pinde olmasıdır. 17 numaralı pin ile (3.3V) karıştırmamamız gerekir.

 

Yorumları Görüntüle

  • Iyi geceler. Raspberry ye merak sardım öncelikle şunu öğrenmek isterim. Yazılımı harici bir ekran yardımı ile yazdık ve yükledik. Sonra devreyi çalıştırmak için ekrandan komut vermeden çalışmaz mi bu devre. Yani sadece raspberry ve led olacak enerjiyi verince led yakıp söndürecek .

  • Merhaba,
    Verdiğiniz bilgiler için teşekkür edim.
    Rappberry ile daha önce yazdığımız bir programı 60 dk araklıklarla çalıştırmak istiyorum. Bunun için ne yapmam gerekiyor?

    • Merhabalar. Linux işletim sistemlerinde

      watch -n sure programadi

      komutu ile istediğiniz sürede (saniye cinsinden) programlarınızı tekrar çalıştırmanız mümkündür.

  • iyi çalışmalar. bir kaç sorum olacak. raspbery gpıo pinleri ile yapmak istediğim bir konu var. yardım edermisiniz. bir manina anakartından gelen 24 volt enerjiyi 5 volta düşürerek pinlerden birine girmek ve bu sinyali raspberry aldığı zaman ekrana bir görüntü gelmesini, enerji kesildiği an ise bir ses çalıp sesin bitiminde stabil konuma gelmesini istiyorum. bir kaç ayrı makina var, ve hangi makinadan voltaj gelir ise voltaj kesilene kadar makinanın resmini. voltaj kesildiği anda makinanın ismini sesli söyleyip durmasını, herhangi bir makinadan voltaj gelene kadar başka bir işlem yapmasına gerek yok.

  • Merhabalar.GPIO pinlerine bağlayacağımız bir butonun klavyedeki enter tuşu işlevini görmesi mümkün müdür?

  • boş bir dosya açılır deniyor. bu işlem raspberry pi 3 ve python 3 de nasıl yapılıyor. ayrıntıya girmemişsiniz.

  • Öncelikle emeğiniz ve çalışmalarınız için teşekkür ederim elinize sağlık.Sorum şu ; Raspberry pi 3 de tam 26 tane GPIO pini bulunmakta , bunların tamamı digital I/O olarak kullanılabilir mi? Cevabınız için şimdiden teşekkürler

    • Merhabalar. Raspberry Pi'de yer alan GPIO pinleri, bahsettiğiniz gibi I/O olarak kullanılabilmektedir. Fakat I2C, SPI ve UART gibi haberleşmeye ayrılmış özel pinler bulunmaktadır. Bu haberleşme pinlerinin yerleri malesef değiştirilemez.

      • Yani bu bahsettiğiniz I2C , SPI ve UART yazan pinler Digital I/O olarak kullanılamaz. Doğru mudur?

        • Örnekle anlatmak gerekirse, bir röleyi GPIO14 (UART TX) pinine de bağlayabilir, GPIO23 pinine de bağlayabilirsiniz. Fakat UART TX pininin yeri değiştirilemez.

  • merhaba.raspi3 üm var.gpio kontrolu yapmak istiyorum.terminal üzerinden python kodlari ile pini aciyorum fakat voltaj gelmiyor.elimde multimetre olmadigi icin bende webgpio yukledim.python kodunu yazip enterladiktandan donra durum degisiyor webgpioda yani kod calisiyor sorun yok algiliyor sistem onu fakat voltaj gelmiyor.pin durumu açikken kucuk motorun bir icini + pine digerini topraga deydirdigim an lojik 1 den, lojik 0 oluyor webgpioda.surekli gelen +3 ve +5 volt pinlerinde sikinti yok denemek icin direk bagladim calisiyor yabanci forumlara gruplara heryere sordum cozum bulamadim sizcr tekniki bir arizami?nasil cozebilirim?

    • Eğer fiziksel bir arıza olsaydı webgpio ile de çalışmazdı. Sizin yaşadığınız sorun yazılımsal kaynaklı görünüyor. Yazdığınız kod ile ilgili bir sorun olabilir veya kullanıcı yetkilerinizden kaynaklı olabilir. Ayrıca ne kadar küçük boyutlu olursa olsun, herhangi bir motoru doğrudan GPIO pinlerine bağlamak kartınıza hasar verebilir.

  • Merhaba,
    Baska bir cihaz var. Bunun bir tusunun kablosunu uzattim. Gpoi ile bu tusa basmak istiyorum. Ayni mantikta m yapmaliyim

    • Anladığım kadarıyla yapmak istediğiniz işlem başka bir cihazın butonunu Raspberry Pi'nin GPIO pinleri ile kontrol etmek. Bu işlem için Raspberry Pi'nin GPIO pinlerine bir röle veya transistör devresi bağlayabilir ve butonunu kontrol edeceğiniz cihazın bağlantısını bu devre üzerinden yapabilirsiniz.

En Son İçerik

Arduino’nun Korkulu Rüyası: ESP8266

Herkese merhabalar! Daha önce hiç kablosuz internet bağlantısı ile proje yaptınız mı? IoT projelerine ilginiz var mı? Sizi bu yazımızda…

3 gün Önce

Arduino ve C# ile LCD Ekrana Yazı Gönderme – 7. Ders

Sonraki Ders > < Önceki Ders Arkadaşlar merhaba, bu dersimizde C# ile hazırlayacağımız form uygulaması üzerinden Arduino'ya bağlı LCD ekranımızı…

3 hafta Önce

3D Printer Yapımı – 553TL’ye Kendi 3D Yazıcını Yap

Herkese merhabalar! Bu yazımızda üç boyutlu yapımı için hangi adımları uygulamak gerekiyor, 3D yazıcı yapımı için gerekli olan malzemelerden ve…

4 hafta Önce

Arduino ile Nabız Ölçer

Herkese merhabalar, bu yazımızda medikal sensörlerden biri olan Pulse nabız sensörünü kullanarak nabız verisini okumayı ve elde ettiğimiz sonucu Nokia…

2 ay Önce

Lipo Pil Nedir? Çeşitleri ile Kapsamlı Lipo Batarya Rehberi

Birçok RC araçta ve robot projelerinde kullanılan Li-Po batarya çeşitlerini, güvenli kullanım ve şarj yöntemlerini bu videomuzu izleyerek öğrenebilirsiniz.

2 ay Önce

Arduino ve C# Haberleşmesi: Bluetooth ile Servo Motor Kontrolü – 6. Ders

Sonraki Ders > < Önceki Ders Arkadaşlar merhaba, bu derste hazırladığımız arayüz üzerinden seri haberleşmeyi kullanarak servo motor kontrolünü göreceğiz.…

2 ay Önce