Menü

Raspberry Pi ile Webcam Server Yapımı ve Arduino ile İnternet Üzerinden Servo Motor Kontrolü

7 Aralık 2017 - Arduino, Genel
Raspberry Pi ile Webcam Server Yapımı ve Arduino ile İnternet Üzerinden Servo Motor Kontrolü
2.3 (46.67%) 3 votes

Bu projede internet üzerinden Raspberry Pi aracılığı ile ücretsiz şekilde Webcam’den görüntü alacak ve ethernet modülü ile internete bağlı olan Arduino ile servo motor kontrolü yaparak kameramızı döndüreceğiz.

Projenin Amacı:

Ücretsiz bir şekilde evimize/işyerimize hareket kabiliyeti ve görüntü aktarımı olan bir güvenlik sistemi yapmak.Bunu da minimum maliyet ile yapmak.

Projenin Çalışma Sistemi:

Raspberry Pi üzerinde server oluşturup Webcam görüntüsünü oraya aktararak elimizdeki usb Webcam görüntüsünü erişilebilir hale getireceğiz.Ancak buna yalnızca yerel ağ üzerinden değil, internet üzerinden de bağlanmak için önce modeme bağlanıp sonra Rasppbery Pi’ın IP’sine bağlanarak anlık görüntüye ulaşacağız.Bunun içinde dynamic dns sistemini kullanacağız.Kullandığımız modem TP LINK TD-W9970.Modemimiz Dinamik DNS servisi içinde www.noip.com ile erişim sağlayabildiği için no-ip.com sitesini modemimize her zaman erişebilmek için aracı olarak kullanacağız.Modemimize sahip olduğumuz IP üzerinden de ulaşabiliriz ancak anlık bir internet kopması veya herhangi bir sebeple modemimizin yeniden başlaması durumunda IP adresimiz değişecek ve eski IP adresi işe yaramaz hale gelecektir.Bu noktada no-ip.com un 30 günlük ücretsiz dynamic dns servisini kullacağız.

Malzemeler :

Arduino Uno, Rasperry Pi (Model 2 veya üstü), En az 8 GB  Sd kart, Raspberry Pi adaptörü (5 V 1 Amper), Arduino Ethernet Shield (biz HR91105A modelini kullandık), jumper kablolar, ethernet kablosu, Usb Webcam.

Birinci Aşama: Raspberry Pi Kurulumu:

 

Raspberry Pi Sd kart üzerinden çalışan bir mini anakarttır.Linux tabanlı kendi ürettikleri işletim sistemi olan “Rasbian” ‘ı kullandık biz.

Kullanacağız sürümün adı RASBIAN STRETCH WITH DESKTOP, indirmek için TIKLAYIN

İndirdiğimiz .img uzantılı Rasbian işletim sistemi dosyasını Sd kartımıza yüklemek için Sd kartımızı bilgisayarımıza bağladıktan sonra Rufus isimli bir program kullanıyoruz. İndirmek için TIKLAYIN, Kurulum hakkında detaylı bilgiye ulaşmak için TIKLAYIN

Daha sonra gerekli besleme bağlantısı yapıldıktan sonra SD kartımızı yuvasına yerleştirip, ethernet kablosu ile modem bağlantısı yaptıktan sonra Raspberry Pİ ı çalıştırıyoruz.

Bu noktadan sonra yapacağımız Raspberry Pi yazılım yüklemeleri için varsa monitör, klavye, mouse kullanarak da yapabilirsiniz ancak biz uzak bağlantı ile bağlandık.

Modem üzerinden Raspberry’e bağlanmak için Putty isimli program kullanıyoruz.İndirmek için TIKLAYIN.

PUTTY programını kurduktan sonra açılan ekranda bir adres girmemiz isteniyor.Buraya Rasspbery’nin bağlı olduğu Ip adresini gireceğiz.Bunun için modem arayüzümüze bağlanıyoruz.Adres çubuğuna 192.168.1.1 yazdıp bağlandıktan sonra DHCP SUNUCU > İSTEMCİ LİSTESİ’nden Raspberry Pi’ımızın bağlı olduğu adresi görüyoruz:

 

 

Burada gördüğümüz gibi Raspberry için Ip adresimiz 192.168.1.100, bu adrese bağlanmak için Putty nin adres satırına 192.168.1.100 yazıp OPEN’a basıyoruz ve çıkan uyarıya evet diyoruz.

Ardından çıkan komut ekranında id için “pi”, şifre için ise “raspberry” yazarak sisteme giriş sağlıyoruz.

Daha sonra sırasıyla güncellemeleri indirip, kurup, gerekli yazılımları kurup ayarlamaları yaptıktan sonra Raspberry Pi Webcam Server olarak çalışmaya başlayacaktır.     Ayrıntılı bilgiler için TIKLAYINIZ.

İkinci Aşama: Raspberry Pi Webcam Server olarak kullanma

Sırasıyla girilecek kodlar :

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libmariadbclient18 libpq5 libavcodec57  libavformat57 libavutil55 libswscale4
sudo wget https://github.com/Motion-Project/motion/releases/download/release-4.0.1/pi_stretch_motion_4.0.1-1_armhf.deb

sudo dpkg -i pi_stretch_motion_4.0.1-1_armhf.deb

Optimizasyon Ayarları (İsteğe Bağlı)

sudo nano /etc/motion/motion.conf

Ardından bilgileri aşağıdaki gibi düzeltin ve ctrl + x yapıp ardından “y” tuşuna basıp enter yapın.

 daemon on

 stream_localhost off

 Note: Change the following two lines from on to off if you’re having issues with the stream freezing whenever motion occurs.

 output_pictures off

 ffmpeg_output_movies off

 Optional (Don’t include the text in brackets)

 stream_maxrate 100 (This will allow for real-time streaming but requires more bandwidth & resources)

 framerate 100 (This will allow for 100 frames to be captured per second allowing for smoother video)

 width 640 (This changes the width of the image displayed)

 height 480 (This changes the height of the image displayed)

sudo nano /etc/default/motion   

dosyasına gidin ve satırı aşağıdaki gibi değiştirip ctrl + x ardından y ve enter yapın.

start_motion_daemon=yes Ardından servisi çalıştırın:
sudo service motion start Bir sorun varsa aşağıdaki kod ile resetleyin:

sudo service motion restart

Artık Raspberry Pi Webcam Server olarak çalışıyor, adres çubuğuna raspberryIPadresiniz:8081 yazıp girdiğinizde USB Webcamden gelen anlık canlı görüntüyü video halinde görüyor olmanız gerekiyor.

 Üçüncü Aşama: Modeme İnternet Üzerinden Erişim

Bunun için noip.com a bağlanmamız gerekiyor ancak erişim yalnızca vpn üzerinden sağlanabiliyor, siteye bağlandıktan sonra üyelik hesabı oluşturup ücretsiz bir .ddns.net uzantılı hostname alıyoruz.

Artık hesabımıza tanımlı 30 gün ücretsiz süreli olan bir sunucu adımız var.Bu sunucuyu modemimize tanıtmak için modem arayüzünde Dinamik Dns bölümüne tıklıyoruz ve gerekli boşluklara üyelik bilgilerimizi ve sunucu adımızı yazıyor ve kaydet’e basıyoruz.

Artık modemimiz noip.com hesabımıza tanımlı, artık belirlediğimiz hostanme 30 gün süresince IP adresi değişse dahi modemimize bağlantımızı sağlayacak ve bu sayede Raspberry Pi ve Arduino ‘a bağlantımızı sağlayacak.

Dördüncü Aşama: Arduino ve Arduino Ethernet Shield Kurulumu

Arduino Uno için kullandığımız ethernet shield için ekstra kütüphane indirip kurmamız ve bağlantılarını doğru bir şekilde yapmamız gerekiyor. Ayrıntılı bilgi için TIKLAYIN,  Kütüphaneyi indirmek için TIKLAYIN,

Bağlantıları linkte gösterildiği gibi yapıyoruz ve ethernet modülümüz kullanıma hazır hale geliyor.

Ayrıca Servo Motor bağlantısı da şekildeki gibi olmalıdır: (servonun sinyal kablosu 9 numaralı dijital pine bağlı olmalıdır)

 

 

Bağlantılarımız bittikten sonra, Arduino için gerekli kaynak kodumuzu yüklüyoruz:

Kaynak kodu indirmek için TIKLAYINIZ

Kodumuzu derleyip Arduino’ya yükledikten ve bağlantıları doğru şekilde yaptıktan sonra webcam’in tabanını servo motorun aparatının üzerine herhangi bir şekilde monte ediyoruz ve son aşamaya geçiyoruz.

 

Beşinci Aşama:Raspberry Pi ve Arduino için Port Açma

Bu aşamada modem arayüzünden Raspberry Pi ve Arduino uzak bağlantısı için modemimizin iki portunu açmamız gerekiyor.Bunun için İletim > Sanal Sunucu > Yeni Ekle tıklayarak resimlerde görüldüğü gibi boşlukları doldurup kaydete tıklıyoruz.

İşimiz bittiği zaman görüntü şu şekilde olmalıdır:

PROJE BİTİMİ VE ÇALIŞMA VİDEOSU

Projemizin hazırlanması artık bitti, adresi çubuğuna internet olan heryerden sunucuadınız.ddns.net:8081 yazdığınız zaman Raspberry Pi’a ve sunucuadınız.ddns.net:80 yazdığınız zaman ise Arduino’ya bağlanabilirsiniz.

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.

Araç çubuğuna atla