C#nedir?com
 
YAZAR HAKKINDA
Selman UZUN
Selman UZUN
http://www.birvesifir.net
İletişme geçmek için tıklayın.
2 Makalesi yayınlanmakta.
Yazar hakkında detaylı bilgi için tıklayın.
Yayınlanan diğer makaleleri için tıklayın.
İlgili etiketler: AForge AForge.NET C# Ekonomik Güvenlik Görüntü İşleme Hareket Algılama Modem ile Telefon Arama TAPI Visual Studio C# Web Kamerası Güvenlik Sistemi Kodlama Selman UZUN
 
YAZI HAKKINDA
Türü : Serbest Köşe (?)
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
Seviyesi : Başlangıç
Kategori : Kodlama
Yayınlanma Tarihi : 29.7.2010
Okunma Sayısı : 21010
Yorum Sayısı : 11     yorum yaz
Site İçi AramaSİTE İÇİ ARAMA
Üye Girişini AçÜye GİRİŞİ
Üye girişi için tıklayın.
Kullanıcı Adı
Şifre
 
Beni her zaman hatırla
Bir hafta boyunca kullanıcı bilgilerinizi kullanıcı çıkışı yapana kadar hatırlar. (Paylaşılan bilgisayarlarda önerilmez.)
 
Şifremi / Kullanıcı Adımı unuttum.
 
.net TV RSS Serbest KÖŞE (?)
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
emre TAŞ
XML - Deniz Kılınç
emre TAŞ
yazının devamı >
emre TAŞ
Decompiling and Reverse Engineering .Net Radyo
emre TAŞ
yazının devamı >
emre TAŞ
Masaüstü mü ? İnternet Mi? .Net Radyo
emre TAŞ
yazının devamı >
emre TAŞ
.Net Kavramları - .Net Radyo
emre TAŞ
yazının devamı >
emre TAŞ
Yeni Başlayanlar için - .Net Radyo
emre TAŞ
yazının devamı >
Makale Gönder Bende Yazmak İstiyorum
.net TV RSSBlogroll
Turhal Temizer 'in Blogu
Conda install environment.yml Package 19.8.2019
Turhal Temizer 'in Blogu
Mac OS/X Removing CUDA 19.8.2019
Burak Selim Şenyurt
Web API Tarafında Dapper Kullanımı 19.8.2019
Burak Selim Şenyurt
Socket-IO Yardımıyla RealTime Çalışan Bir Angular Uygulaması Geliştirmek 19.8.2019
  Diğer Herşey
Sponsorlar
BT Akademi
Medya Portakal
Video Hosting Sponsoru
Csharpnedir.com bir Ineta üyesidir
Uzman Abi
Her Yönüyle C# - Sefer Algan
Web Kameralı Basit Güvenlik Sistemi
 
Kapat
Sayfayı Yazdır Sık Kullanılanlara Ekle Arkadaşıma Gönder MySpace Del.Ico.Us Digg Facebook Google Mixx Reddit StumbleUpon

Merhaba,

        Bundan bir sene önce aklımda tasarlayıp yapmaya koyulduğum ve üç günlük bir çalışmamın ardından ortaya koyduğum Visual Studio C# temelli hem basit hem de ekonomik bir güvenlik sistemini sizlerle paylaşmak istedim. Çalışmamın temeli AForge.NET görüntü işleme Frameworküyle hareket algılamayı sağlayıp, TAPI sınıfını  kullanarak modem  aracılığı ile bilgisayardan mobil ve ev telefonlarını aramamızı sağlayan bir uygulamaya dayanmaktadır. Lafı çok uzatmadan programın çalışma biçiminden ve temel kod bileşenlerinden bahsedelim.

       Önceden de bahsettiğim gibi hazırladığım programın işlevi, web kamerası sayesinde dış ortamdaki hareketi algılayarak bilgisayarımızın modemiyle sisteme girdiğimiz telefon numarasına belirli aralıklarla çağrı göndermesine dayanmaktadır. Telefon numarasının sisteme saklanması için ekstradan bir veri tabanı oluşturmak yerine  sistem kayıt defterine yazdırmanın daha mantıklı olacağını düşündüğüm için çağrı gönderilecek  telefon numarasını sistem kayıt defterine kaydedecek gerekli kodları programa ekledim.  Telefon numarasının kaydı Anaform.cs dosyası içerisinde  TelefonNoKontrol() isimli bir fonksiyonla gerçekleştirmektedir. Bu fonksiyon, uygulama her  açıldığında sistemde çağrı gönderilecek bir telefon numarası olup olmadığını kontrol edip, duruma göre bizden çağrı numarası girişi yapılmasını ister. Telefon numarası girişinden sonra uygulama bizden sistemde tanımlı web kamerası ve modem aygıtlarının seçiminin yapılmasını istemektedir. Sistemde tanımlı web kamerası aygıtlarının listesini programa taşıyıp ve seçimi yapabilmek için Anaform.cs dosyası içerisinde try-ctach bloğu içerisinde hata denetimi yaptırıp, sistemde tanımlı web aygıtı varsa foreach döngüsüyle taratıp comboBox1.Items.Add(webcam.Name); koduyla comboBox1 elemanı listesine ekletebilme yoksa da  catch bloğunda "Video Aygıtı Bulunamadı." mesajını verebilme özelliği için gerekli kodları yazdım. Aynı durum sistemde tanımlı modem aygıtımız için de geçerlidir. Ana Form ilk yüklendiğinde modemle ilintili hat listesi  (Listline) sorgulanmakta ve duruma göre comboBox2.Items.Add(cl.LineName); koduyla modem aygıtları comboBox2 elemanımıza eklenmektedir. Web kamerası ve modem aygıtlarının seçiminden sonra bu aygıtların uygulama içinde kullanılabilir biçimde tanımlı olabilmesi için "Aygıtı Seç" butonuyla ilgili aygıtları aktif hale getirilmelidir. Aygıtı seçme olayını, Anaform.cs  dosyası içerisinde  button1_Click  olayıyla gerçekleştirdim. Aygıtları aktifleştirdikten sonra "Algıyı Aç"  butonuyla web kamerasının dış ortamdan aldığı görüntünün hareketlilik durumunu kontrol eden dedektör özelliğini aktifleştirebiliriz. Nesne ve hareketi algılama olayı Anaform.cs dosyası içerisinde DetectorSec() fonksiyonu ile gerçekleşmektedir. Fonksiyonun 0'dan 4'e kadar olan 5 parametresi bulunmaktadır. Bu parametrelerden 0, programın haraket algılma özelliğini inaktif etmeyi 1,2,3 ve 4 parametreleri ise haraket algılama referanslarını ifade etmektedir. Ortamdaki algılanacak cisimlerin ebatı ve hareket hasasiyetini en iyi şekilde kontrol eden hareket algılama referansı 4 olduğu için bunu tercih ettim. Dedektör tipinin seçimi Anaform.cs dosyası içerisinde button4_Click olayıyla tanımlanmıştır. Zaten button4_Click olayındaki kodu incelerseniz dtip sayısal değişkenine 4 değeri atanıp DetectorSec(dtip)  koduyla fonksiyon icra edilmiştir. Eğer hareket algılama duyarlılığının değişmesi istenirse Kamera_YeniFrame fonksiyonu içerisinde cDetector.MotionLevel özelliğini ondalıklı sayı değerleriyle arttırıp azaltabiliriz. Değer ile hasasiyet arasında ters orantı olduğu için değer ne kadar artarsa hareket duyarlılığı o kadar azalıyor.  İlgili  fonksiyondaki  cDetector.ObjectsCount özelliği ise aynı anda algılanacak nesne sayısını ifade ediyor. Mesela benim için sistemin alarm ve çağrı göndermesi için aynı anda sadece 1 nesnenin algılanması yeterli ise ilgili kod kısmından yazacağım kod cDetector.ObjectsCount >= 1 şeklinde olmalıdır.  

        Hareket algılandıktan sonra telefon çağrısının gerçekleşmesini sağlayacak fonksiyon ve merkezi ses düzeneğine ses alarmı gönderecek fonksiyonlar icra edilmektedir. Bu fonksiyonları Cagri.cs dosyası içerisinde  tanımladım. Cagri.cs dosyasında 2 adet timer kullanarak, tekrarla_Tick timeri ile çağrı aramasının 135 sn'lik acil durum süresi içerisinde 45'er sn arayla toplam 3 defa gerçekleşmesini sağldım. alarmtekrar_Tick timeri ile de alarmın 135'snlik süresi içerisinde 35 sn aralıklarla çalınmasını sağladım. Cagri.cs dosyası içerisinde aramayap() fonksiyonunu tanımlayarak çağrı aramalarını bu fonksiyon sayesinde gerçekleştirdim. Alarmın çalınmasını sağlayan fonksiyonu da alarmcal() fonksiyonu olarak belirledim. Yalnız programın alarm sesi verebilmesi için herhangi bir wav formatlı ses dosyasının yolunu programda kod düzeyinde belirtmek gerekiyor ben ses dosyasının adını alarm.wav olarak belirleyip dosyayı C sürücüsünün ana dizinie koydum program içerisinde de dosyasının yolunu string path = "C:\\alarm.wav";  koduyla belirledim.

        Programı yazarken Web kamerasından gelen görüntüyü yorumlamayı sağlayan ve bir tür görüntü işleme frameworku olan AForge.NET'i kullandım. Bilgisayardaki modem aracılığıyla telefon çağrısı yapabilmek için de TAPI sınıfını kullandım. Program içerisinde standart Visual C# elemanları dışında AForge.Net framework destekli KameraKutusu elemanını kendim tanımladım. Programın çalışması için işletim sisteminizde Framework 3.5'in yüklü olması gerekmektedir.

Programın açık kodlarına erişebilmek için TIKLAYINIZ

 

 

Makale:
Web Kameralı Basit Güvenlik Sistemi Kodlama Selman UZUN
  • Yazılan Yorumlar
  • Yorum Yaz
ŞUB
14
2014
Dostum asagidaki sana laf atani takma, cok güzel bir düsünce. Aradan uzun yillar gecmis ama simdi gördüm ve görür görmez hem tesekkür hemde tebrik etmek istedim. Basarilarinin devamini dilerim
NİS
10
2012
çağrı gönderliyor diyor ama orda takılıyor neden telefona nasıl çağrı gönderilcek biraz ayrıntılı bilgi verebilir misiniz?
AĞU
11
2011
çağrı gönderliyor diyor ama orda takılıyo 3.5 ta yüklü . problem ne olabilir bir de bu arama işini bilgisayar nasıl yapıyor. bi şebekeye bağlı olmadan?
OCA
9
2011
öncelikle emeğiniz için tesekkurler,ama programı çalıştırmayı başaramdım,henuz yenıyım prıgramda,dosyaları direk c# içine mi atacagım,yol gosterırsenınz sevınırım tesekkurler..
KAS
30
2010
çok güzel bir paylaşım eline sağlık yalnız kamera kutusu ile ilgili problem yaşıyorum yardımcı olabilecek varmı.componenti ekleyemedim :(
AĞU
12
2010
Fatih Bey, olumlu düşünceleriniz için teşekkür ederim. Çalışmayı yapmadan önce şöyle özelliklerde birşeyler yapıp ortaya koyabilir miyim mantığıyla hareket ederek yapmaya koyulduğum bir çalışma aslında. Dediğiniz gibi çok daha iyi geliştirilebilir bir sistem.. Ben yapabildiğim kadarını açık kodlarıyla paylaşmak istedim. Umarım faydalı olur.
AĞU
12
2010
Selman bey aksine sizi tebrik ediyorum böyle bir program kodladığınız ve tasarladığınız için burada ben şunu gördüm commentler harika böyle projeden ilham alarak çok daha iyisini ve yaratıcı bir fikirle çok daha farklısını yapabiliriz ben şunu derim sizin anlatmak istedikleriniz karşı tarafın anlayabildiği kadardır...
AĞU
7
2010
GUZEL AMA BU TARZ SİSTEMLERDEN COK VAR
AĞU
6
2010
güzel uygulama
AĞU
3
2010
Hazırladığım sistem AForge.Net Framework ve TAPI sınıfı kullanılarak hazırlanmış özgün bir çalışmadır. Sizin sisteminizden farklı ve bağımsız bir çalışma olduğunu kaynak kodlarına ve özelliklerine bakarak anlayabilirsiniz. Yalnız bunu anlamamak için sebepleriniz var çünkü siz bu işin ticaretini yapıyorsunuz ve ticari kaygılarınız var. Sizin burda bana bilgi hırsızlığı yapıyorsunuz gibi suçlamada bulunmanız eleştiri sınırını aşmaktadır. Lütfen üslubunuza ve takındığınız tavıra dikkat edin!
AĞU
1
2010
Hocam bana Bu Sistem Tanidik Geliyor Fikir Hirsizligina Girer!! http://www.sahibinden.com/ilan/hizmet-guvenlik-kamera-sistemleri-satisi-ve-servisi-super-guvenlik-yazlimi-cok-ucuza-hersey-hazir-sadece-39-90tl/detay? ben bunu cok onceden yapmistim.
Sayfalar : 1 
Yorum yazabilmek için üye girişi yapmalısınız. Üye girişi için tıklayın.
Üye değilseniz Üyel Ol linkine tıklayarak üyeliğinizi hemen başlatabilirisniz.
 
  • Bu Konuda Son 10
  • Eklenen Son 10
  • Bu Konuda Geçmiş 10
Bu Konuda Yazılmış Yazılmış 10 Makale Yükleniyor
Son Eklenen 10 Makale Yükleniyor
Bu Konuda Yazılmış Geçmiş Makaleler Yükleniyor