Raspberry Pi

Raspi Hakkında Herşey

Python Dili

Python Dili Hakkında Herşey

Python İle OpenCV

Python Dili ile OpenCV Kullanımı

Internet Of Things

IoT Hakkında Herşey

Bina ve Ev Otomasyonu

Ev ve Bina Kontrolü Hakkında Herşey

10 Nisan 2016 Pazar

PYTHON DERSLERİ (DERS:4) MATEMATİKSEL İŞLEMLER VE AÇIKLAMA



Matematiksel İfadeler




  İşlem


    İşlem İfadesi


             Örnek


Toplama


         +


>>>4+4
8

Çıkarma

          -

>>>12-5
7

Çarpma

         *

>>>5*3
15

Bölme

         /

>>>12/5
2.4

Tam Sayı Bölme

         //

>>>12//5
2

Bölümden Kalan

        %

>>>12%5
2

Kuvvet Alma

        **

>>>2**3
8


Örneğin Dikdörtgenin Alanını Hesaplayalım


>>> uzunkenar = 12
>>>kisakenar = 6
>>>alan=uzunkenar*kisakenar
>>>print(alan)
72



Burada print(alan) yerine;


>>>print(‘Dikdortgenin Alani:’,alan)


yazarsak sonuç;


Dikdortgenin Alani: 72


Olarak gözükür.


Cümle İşlemleri

Cümle işlemleri; Toplama(+) ve Çarpma(*)dır.

Toplama işlemine örnek verirsek;


>>>’python ’+’python’
'python python'




>>>’20’+’16’
'2016'



Çarpma işlemine örnek verirsek;


>>>3*’Python’
‘PythonPythonPython’




Açıklamalar

Pythonda açıklamalar # karakteri ile başlar. # karakteri ile başlayan tüm satırlar python tarafında yorum(açıklama) olarak algılanır.

Örneğin;


>>> # 2 ile 3 toplayalım
>>> 2*3
6





5 Nisan 2016 Salı

PYTHON DERSLERİ (DERS:3)TİPLER VE DEĞİŞKENLER




Tipler

1)str : ingilizce string kelimesini kısaltmasıdır.Cümle,harf, kelime olduğunu gösterir.

2)int : ingilizce integer kelimesinin kısaltmasıdır. Tam sayı olduğunu gösterir.

3)float : float ondalık sayıların tipidir.

Python'da değerlerin hangi türden olduğunu öğrenmek için type() işlevini kullanabilirsiniz.

Bunun için öncelikle Python IDLE'yi açalım.Yeni dosya açmamıza gerek kalmadan gelen ekrana yazıp ENTER tuşuna basalım.




>>> type(“Hello World”)
<class ‘str’>



>>> type(2016)
<class ‘int’>




>>> type(2.016)
<class ‘float’>




En çok hata yapılan konulardan biri sayı ile cümleyi karıştırmaktır.

Örnek verecek olursak;




>>> type(2.016)
<class ‘float’>
>>>type(“2.016")
< class ‘str’>


Görüldüğü üzere tırnak içerisine alınmayan sayı float(ondalık sayı),tırnak içerisine alınan sayı ise str(kelime), olarak algılandı.

Bunları ekrana yazdırırsak;



>>> print(“2.016”)
2.016
>>>print(2.016)
2.016


İki yazımında aynı olduğunu arada bir fark olmadığını görürüz.

print() komutu birçok tipteki değerleri aynı anda ekrana yazdırabilir.Fakat bunun için değişik tiplerdeki değerler arasına virgül konulmalıdır.

Örneğin bir str değeri ile bir float değerini aynı anda ekrana yazdıralım;



>>> print(“pi sayısının değeri :”, 3.14)
pi sayısının değeri :  3.14



Değişkenler

Değişken; bir değer taşıyan isimdir. Python'da diğer programlama dilleri gibi değişkeni önceden tanımlamanız gerekmez.
Değişkene değer atamak için, atama ifadesi olan eşit(=)  sembolünü kullanmalıyız.

Örnek verecek olursak;



>>> birim=”litre”
>>>fiyat=54
>>>pi=3.14


Burada birim değişkenine litre(string),fiyat değişkenine 54(integer), pi değişkenine 3.14(float) değerlerini atadık.

Değişkeni ekranda görmek için değişkenin adını yazıp Enter tuşuna basıyoruz.



>>> birim=”litre”
>>> birim
“litre”


burda değişkenin içindeki değerin string olduğunu görüyoruz.

Eğer değişkeni ekrana yazdırmak istersem;



>>> birim=”litre”
>>>print(birim)
birim



PYTHON DERSLERİ (DERS:2) PYTHON KURULUMU VE HELLO WORLD



Biz derslerimizde windows işletim sisteminde şimdilik Python 3'ü kullanacağız. İleri ki derslerde ise Python 2'yede geçiş yapacağız.

Öncelikle Python 3'ü bilgisayarımıza kuralım.

1)Python Kurulumu

Python 3'ü Buradan indirebilirsiniz. indirdiğiniz Setup dosyasını kolaylık açısından "C:" klasörüne kurmanızı tavsiye ederim.

                  


Install dedikten bir süre sonra Python 3'ü bilgisayarınıza yüklemiş olacaksınız.

2) İlk Program " Hello World"

"Hello World" Programımızı yazmadan önce Python'u kafamızda daha net oturtturabilmemiz için diğer dillerde nasıl yazıldığını görelim...

C++  ile “Hello World

#include<iostream>

Using namespace std;

İnt main()

{
   cout  <<”Hello Word” <<  endl;
   return 0;
}

  



Pascal ile “Hello Word

program hello_world

begin
    
    writeln(‘Hello World’);
end



  


Java ile “Hello Word

class jhello
{
     public static void main(String args[ ])
     {
      System.out.println(“Hello World”);
      }
}


Şimdi Gelelim Pythonda ilk Programımızı yazmaya;
Öncelikle Python IDLE'yi çalıştırıyoruz.

                 


Açılan IDLE'den File>New File seçiyoruz ve açılan yeni dosyamıza Python kodumuzu yazıyoruz.



Print(“Hello World”)



Run>Run Module seçtiğimiz zaman öncelikle dosyamızı kaydetmemizi istiyor dosyamızı kaydettikten sonra IDLE'de "Hello World" yazısını görebilirsiniz...

1 Nisan 2016 Cuma

PYTHON DERSLERİ (DERS:1) PYTHON NEDİR?

Python Nedir?


Python bir programlama dilidir. Hemde pek çok dile kıyasla öğrenilmesi daha kolay bir dildir. Bu yüzden,eğer daha önce hiç programlama deneyiminiz olamamışsa programlama hayatınıza Pythonla başlamayı tercih edebilirsiniz.

Geliştirilmeye 1990 yılında Guido van Rossum tarafından Amsterdam'da başlanmıştır. Adını sanılanın aksine bir yılandan değil Guido van Rossum’un çok sevdiği, Monty Python adlı altı kişilik bir İngiliz komedi grubunun Monty Python’s Flying Circus adlı gösterisinden almıştır. Günümüzde Python Yazılım Vakfı çevresinde toplanan gönüllülerin çabalarıyla sürdürülmektedir.


Neden Python Öğrenmeliyim?

Python programlama dilinin iki önemli avantajı vardır. Birincisi yazımdaki sadeliği,ikincisi ki bu en önemli özelliğidir. C,C++ gibi dillerin aksine derlenmeye gerek duymadan çalışmasıdır. Bu derleme işlemi olmadığı için oldukça hızlı çalışır ve oldukça hızlı program geliştirilebilir.

Pythonun basit söz dizimi sayesinde başka bir programcının yazdığı programı basitçe okuyup anlamanızı sağlar.
Bu özellikleri sayesinde Python dünya çapındaki kuruluşlar ve ülkemizdeki kuruluşlardada ihtiyaç haline gelmiştir. 

Farklı Python Sürümleri

Eğer daha önce Python programlama dili ile ilgili araştırma yaptıysanız, şu anda piyasada iki farklı Python serisinin olduğu dikkatinizi çekmiş olmalı. 13.03.2016 tarihi itibariyle piyasada olan en yeni Python sürümleri Python 2.7.11 ve Python 3.5.1‘dir.
Eğer bir Python sürümü 2 sayısı ile başlıyorsa (mesela 2.7.11), o sürüm Python 2.x serisine aittir. Yok eğer bir Python sürümü 3 sayısı ile başlıyorsa (mesela 3.5.1), o sürüm Python 3.x serisine aittir.
Peki neden piyasada iki farklı Python sürümü var ve bu bizim için ne anlama geliyor?
Python programlama dili 1990 yılından bu yana geliştirilen bir dil. Bu süre içinde pek çok Python programı yazıldı ve insanların kullanımına sunuldu. Şu anda piyasada Python’ın 2.x serisinden bir sürümle yazılmış pek çok program bulunuyor. 3.x serisi ise ancak son yıllarda yaygınlık kazanmaya başladı.

Python3, Python2’ye göre hem çok daha güçlüdür, hem de Python2’nin hatalarından arındırılmıştır. Python3’teki büyük değişikliklerden ötürü, Python2 ile yazılmış bir program Python3 altında çalışmayacaktır. Aynı durum bunun tersi için de geçerlidir. Yani Python3 kullanarak yazdığınız bir program Python2 altında çalışmaz.
Dediğimiz gibi, piyasada Python2 ile yazılmış çok sayıda program var. İşte bu sebeple Python geliştiricileri uzun bir süre daha Python2’yi geliştirmeye devam edecek. Elbette geliştiriciler bir yandan da Python3 üzerinde çalışmayı ve bu yeni seriyi geliştirmeyi sürdürecek.
Farklı Python serilerinin var olmasından ötürü, Python ile program yazarken hangi seriye ait sürümlerden birini kullandığınızı bilmeniz, yazacağınız programın kaderi açısından büyük önem taşır.

Peki Hangisini Öğrenmeliyim?


şu anda piyasada iki farklı Python serisi var: Python3 ve Python2. Peki acaba hangi seriye ait bir sürümü öğrenmelisiniz?

Aslında bu iyi bir soru değildir. Yapacağınız projeye kullanacağınız Python modüllerine göre Python 2 serisini veya Python 3 serisini tercih etmelisiniz. Ama Python’a yeni başlayacaksanız Python 3 ile başlamanız daha mantıklı olacaktır.Nedeni ise 2’ye göre daha sade bir yazımı bulunmaktadır. Fakat dezavantajı ise bazı modüllerin hala Python 3’e entegre edilmemesidir.Hangisini kullanacağınız Pythonu öğrendikten,modüllerini bildikten sonra şekillenecektir.

19 Mart 2016 Cumartesi

RASPBERRY PI DERSLERİ (DERS:3) KONFİGÜRASYON AYARLARI

Raspberry'mizi tam olarak kullanmaya başlamadan önce iyi bir konfigürasyon ayarı gereklidir.

Öncelikle Raspberry'mizi çalıştıralım. İşletim sistemimiz açıldıktan sonra Terminale girelim.




Karşımıza gelen terminal ekranına;

sudo raspi-config 

Yazıyoruz.Karşımıza gelen ekran şu şekilde olacaktır.





Konfigürasyon Ayarları Şu Şekilde yapılmalıdır.

  1. Expand Filesystem: Raspbian imajını SD kartımıza yazdığımızda sadece imajın kapladığı alan kadarlık kısmı kullanabiliyoruz. Kartın tamamını kullanmak için bu seçeğeni seçiyoruz. Bir sonraki açılışta dosya sistemi SD kartın tamamını kaplayacak şekilde yeniden yapılandırılmış oluyor.
  2. Change User Password: Bu seçeneği kullanarak varsayılan kullanıcı olan pi kullanıcısının şifresiniz değiştirebilirsiniz. Şifre değişimi yaparsanız bir sonraki ayar olan “Enable Boot to Desktop/Scratch” seçeneği çalışmaz.
  3. Enable Boot to Desktop/Scratch:Bu menüden “Desktop Log in as user ‘pi’ at the graphical desktop” seçerek, Raspberry Pi’mizin doğrudan masaüstüne açılmasını sağlıyoruz.
  4. Internationalisation Options: Bu menüye girdikten sonra "Change Locate" ayarına girip tr_TR.UTF-8 UTF-8 seçin ve Raspberry'nizi Türkçe yapın."Change Timezone"  ayaraına girip  Europe/Istanbul seçerek doğru zaman dilimine geçebilirsiniz."Change Keyboard Layout" ayarına gidip ayarlar Türkçe Q klavye için sırasıyla; Generic 105-Key (Intl) PC, Other, Turkish, Turkish, The default for the keyboad layout, No compose key, Yes şeklinde olmalıdır.
  5. Enable Camera: Kamera modülü kullanmayacaksanız aktif etmenize gerek yok.
  6. Add to Rastrack: Dünya üzerindeki Raspberry Pi kullanıcıların birbirini harita üzerinden bulmasını sağlayan http://rastrack.co.uk sitesine üyeliğiniz varsa, bu seçenek üzerinden ayarlarınızı yapabilirsiniz.
  7. Overclock: Raspberry Pi’nizi normal hızından daha yüksek hızlara çıkartmak için overclock ayarları bu menüde yer almaktadır. Stabil kullanım için bu ayarları değiştirmemenizi öneriyorum.
  8. Advanced Options:
  • Overscan: Kullandığınız ekranda siyah boşluklar varsa bu özelliği kapatarak düzeltebilirsiniz.
  • Hostname: Raspberry Pi’mizin yerel ağda kullanacağı ismi buradan değiştirebilirsiniz. Varsayılan olarak raspberrypi ismi kullanılmaktadır.
  • Memory Split: Grafik işlemcisinin sistem belleğinin ne kadarını kullanacağını buradan değiştirebilirsiniz. Varsayılan ayarı değiştirmemenizi öneririm.
  • SSH:Bu özelliği açarak SSH sunucusu ile raspberry'nize uzaktan erişim sağlayabiliriz.Açmanızı öneririm.
  • Device Tree: Device Tree özelliğini buradan açıp kapatabiliyoruz. Açık kalmasında fayda var.
  • SPI: GPIO üzerinden SPI arabirimiyle haberleşecek sensör vb. çevre birimi kullanmak için SPI arayüzünü aktif hale getirmemiz gereklidir.
  • I2C: GPIO üzerinden I2C arabirimiyle haberleşecek sensör LCD vs. çevre birimi kullanmak için I2C arayüzünü aktif hale getirmemiz gereklidir. Açık kalmasını öneririm.
  • SerialRaspberry Pi’nin GPIO pinlerinde bulunan UART fonksiyonu üzerinden terminal bağlantısını açıp kapatır. Açık kalmasını öneririm.
  • Audio: Ses çıkışını HDMI üzerinden veya kart üzerindeki 3.5 mm stereo çıkışa yönlendirmek için bu ayarı kullanmalısınız.Tavsiyem Auto modunda kalmasıdır.
  • Update: raspi-config yazılımını en güncel sürüme yükseltir. Çalışması için internet bağlantısı gereklidir.
Tüm bu ayarları yaptıktan sonra kalıcı olması için Raspberry'nizi Reboot edin...


16 Mart 2016 Çarşamba

RASPBERRY PI DERSLERİ (DERS:2) RASPBERRY PI ÖZELLİKLERİ VE İŞLETİM SİSTEMİ KURULUMU

Biz bu derslerimizde Raspberry Pi 2 modelini Kullanacağız







Raspberry Pi 2 Özellikleri





Teknik Özellikler:
  • Broadcom BCM2836 ARMv7 Quad Core SOC (Dört Çekirdekli) 
  • 900 MHz İşlemci Hızı
  • 1 GB RAM
  • 10/100 Ethernet RJ45 jack
  • 4 x USB2.0 port
  • Video/Ses Çıkışı: HDMI ve 4-kutup 3.5mm konektör
  • microSD kart yuvası
  • 40 Pin GPIO
    • 27 x GPIO
    • UART
    • I2C
    • SPI - 2 CS ucu
    • 3.3V
    • 5V
    • Ground
Pin Diyagramı


Adaptör Seçimi

Bu aşamada kesin bir karar olmamkla birlikte raspberry pi 2 "5V 2A" bir adaptör ile stabil olarak çalışmaktadır ben telefonumun şarj aleti ile besledim.

İşletim Sistemi Kurulumu

Biz işletim sistemi olarak Raspbian(Debian) kuracağız.







Öncelikle Buradan Raspbian işletim sisteminin son sürümünü indiriyoruz. İndirilen dosya image dosyası yani ".img" formatındadır.

Daha sonra Buradan Win32 Disk Imager Adlı programı indirip kuruyoruz.

İşletim sistemini Micro SD karta kuracağımız için SD kart Adaptörüne takıp bilgisayarımıza bağlıyoruz.

Bilgisayara Taktığımız SD kartı ne olur ne olmaz Formatlayalım bunu için en stabil çalışan HP Format Toolsdur. Buradan indirebilirsiniz. Programı açabilmek için Yönetici olarak çalıştırmanız Gereklidir. File System Olarak "FAT32" Seçmeniz daha uygundur. "Start"a tıkladığınızda kısa bir süre içerisinde SD kartınız formatlanır ve içerisinde bütün yer alan bilgiler silinir.

Daha sonra Win32 Disk Imager'ı çalıştırıp sağ üst köşesinde yeralan "Device"dan SD kartımızın takılı olduğu birimi seçin ve indirdiğimiz image dosyasını bulunduğu yerden seçin."Write" diyerek kısa bir süre içerisinde işletim sistemimizi SD kartımıza yazmış oluyoruz.

Raspberry Pi Açılış

Enerjiyi verip çalıştırmadan önce gerekli bağlantıları bağlayıp çalıştırmanız daha iyi olur.

  1.  Micro SD kartı yuvasına takın.
  2. Klavyenizi bağlayın.
  3. Mouse'unuzu bağlayın
  4. Wifi adaptörünüz varsa USB'ye takın(Driver gerekmeden otomatik tanıyacaktır) yoksa routur'ınızdan Ethernet kablosu ile raspberry pi'nize internet verin.
  5. Ekran Bağlantısı yapın. HDMI kablosu ile televizyonunuza bağlayabilirsiniz.
Bu adımları tamamladıktan sonra raspberry'niz enerji vermeye hazır oldu.Enerji Raspberry'e verince Şu şekilde bir yükle işlemi ile karşılaşacaksınız;

 

Daha sonra işletim sisteminiz açılmış olacak ve masaüstü ekranınız şu şekilde gözükecektir;