Bu site emekli olmuştur. Arşiv amaçlı olarak BT AKADEMİ sponsorluğunda yayın hayatına devam etmektedir.




C#nedir?com
 
YAZAR HAKKINDA
Tanıl Ergin
Tanıl Ergin
http://www.csharpnedir.com/
İletişme geçmek için tıklayın.
21 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: akilli bagimsiz donanim donanimdan esnekligi katmani kullanilan merkezi olmasi sistemi sistemi sisteminin soyutlama yazilim yazilimin Yazılım Müh. Tanıl Ergin
 
YAZI HAKKINDA
Türü : Makale
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 : İleri
Kategori : Yazılım Müh.
Yayınlanma Tarihi : 16.2.2005
Okunma Sayısı : 30006
Yorum Sayısı : 0     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Ş
Silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
Makale Gönder Bende Yazmak İstiyorum
.net TV RSSBlogroll
Turhal Temizer
Conda install environment.yml Package 21.11.2024
Turhal Temizer
Mac OS/X Removing CUDA 21.11.2024
Burak Selim Şenyurt
Rust ile ECS Yaklaşımını Anlamak 21.11.2024
Burak Selim Şenyurt
Birlikte Rust Öğrenelim Serisi 21.11.2024
  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
Akıllı Evler, Yapay Zekanın Günlük Yaşantımızdaki Kullanımı - 3
 
Kapat
Sayfayı Yazdır Sık Kullanılanlara Ekle Arkadaşıma Gönder MySpace Del.Ico.Us Digg Facebook Google Mixx Reddit StumbleUpon
Yazı dizimizin üçüncü bölümünde, anlatmış olduğumuz akıllı evler için, ’nasıl bir yazılım sistemi kullanılmalıdır?’ sorusuna cevap vereceğiz.

Yapay zekanın önemli uygulamaları arasında olan zeki evler, dış dünyadaki değişikliklere tepki verebilen, yaşayanların davranışlarından ne zaman ne yapacağını bilen evlerdir. Zeki evlerin birçok tanımı yapılmasına karşın, buradaki zeki ev tanımı, öğrenebilen ve otomatik olarak eylemlerde bulunabilen bir evdir.

Zeki Ev Yazılımlarının Özellikleri

Zeki evler, yazılım sistemleri sayesinde zeki ev olarak nitelendirilmektedirler. Bu yüzden yazılım sisteminin kolay geliştirilebilir olması çok öenmlidir. Zeki ev sistemleri, çok fazla değişikliğe uğrayabilecek sistemler olduğundan (yeni sensor kullanımı, eve yeni özellik eklenmesi, bir özelliğin çıkarılması, ...) yazılım sisteminin değişiliklere açık yani kolay uyum sağlayabilen bir yapıda olması gereklidir.

Yazılım sistemin aynı zamanda donanım bağımsız olması gerkemektedir. Böylelikle yazılım mekanizmalarında yapılan değişiklikler üst seviyede kalır. Aynı zamanda bir kez hazırlanan yazılım, farklı farklı donanımlarla kullanılabilecektir. Zeki ev uygulamalarında kullanılan donanımlar da çok farklılık gösterebileceğinden, donanımdan bağımsız bir yazılım çok önemlidir.

Akıllı Ev Sistemlerindeki Yazılımların Genel Özellikleri:

1. Gerçek zamanlı çalışabilme
2. Esnek
3. Hızlı yazılım geliştirebilme
4. Kolayca ve hızlıca yeni özellikler ekleyebilme, çıkarabilme, değiştirebilme
5. Kolayca yapay zeka kısımlarını, algoritmalarını değiştirebilme, yeni yapay zeka gerçekleştirimlerini ekleyebilme.
6. Donanım bağımsız
7. Çok sayıda sensor çeşidiyle çalışabilme


Zeki Ev Yazılım Çerçevesi

Önceki bölümlerde değinilen özelliklere sahip bir yazılım sistemi için, çok katmanlı bir mimari ve nesneye dayalı bir programlama dili tercih edilmelidir.
Yazılımın çok katmanlı yapılması, donanım ve yazılımın birbirinden ayrılmasını sağlayacaktır. Bu sayede, yazılım sistemi, altta çalışan donanımdan bağımsız bir şekilde değiştirilebilecektir.

Kullanılan programlama dilinin nesneye dayalı olması ise, yazılımın modüler olmasını sağlayacak ve esnekliği arttıracaktır. Genel olarak düşünecek olursak, akıllı ev mimarimizde şu parçalar olmalıdır:

En altta, ev içine yerleştirilecek olan donanım, daha sonra bu sensorleri kullanacak olan bir yazılım sistemi, son olarak da yazılımın alttaki donanımdan bağımsız olarak çalışmasını sağlayacak, başka evlere kolay adapte edilebilecek, web arayüzünü, pc simulasyonunu da akıllı evde çalışır gibi çalıştırabilmeyi sağlayacak çok iyi tanımlanmış bir donanım soyutlama katmanı olmalıdır.



Bu sistemden de görülebileceği gibi, alttaki donanım ne olursa olsun, üst tarafta tasarlanacak yazılım sistemi, sadece donanım soyutlama katmanı değiştirilerek kullanılabilecektir. Bu yapı öncelikle esnekliği arttıracaktır. Alt taraftan gelen mesajlar, yazılım sisteminde işlenecek, ve donanımda gerekli fonksiyonlar cagırılacaktır.

Bu tip bir yazılım sisteminde, geliştirmek için bir simulatör de yapmak çok kolay olacaktır çünkü donanım katmanı yerine alt tarafı, alt taraftan
gelen mesajları simukle eden basit bir bilgisayar programı yazılabilecektir. Yazılım sisteminin esnekliği bu şekilde sağlanmış olacaktır.

Yazılım Çerçevesi Detayları



Yazılım çerçevesi, bir akıllı ev sisteminde olması gereken birinmler dikkate alınarak modül yapısında yapılmıştır. Bu modüllerin her biri, evde belirli bir hizmeti yerine getirecektir. Modüllerin haberleşmesi Uygulama Yönetim Modülü tarafından, merkezi bir yapı tarafından sağlanmaktadır. Bu sayede esnek bir yazılım çerçevesi, oluşturulmaktadır çünkü istenilen modül, daha önce yaratılmış olan modülleri etkilemeden, merkezi yapıda yapılacak olan bir kaç küçük değişiklikle eklenebilecektir. yazılım çerçevesinin donanım soyutlama katmanı ile haberleşmesi, Mesaj Dağıtım Merkezi adı verilen yapı sayesinde olmaktadır.

Mesaj Dağıtım Merkezi, donanımdaki sensorlerden (veya simulatorden) gelen mesajları algılayıp, yazılımın anlayaıp işleyebileceği bir hale getiren bir tür mesaj dönüştürücüdür. Daha sonra bu dönüştürülen mesaj, Uygulama Yönetim Modül’e gelecek, ve bu yönetici, mesajı bağmısız olarak çalışan modüllere geçirecektir.

Birbirinden bağımsız olarak çalışan bu modüllerde bulan mesaj haritaları taranacak, eğer bu mesaja karşılık yapılacak bir iş o listede bulunursa modül tarafından bu işlem gerçekleştirilecektir. Aksi takdirde mesaj işlenmeden atılacakatır. Mesajın karşılığı listede varsa, modül Donanım Soyutlama Katmanı aracılığıyla donanımdaki gerekli işlemleri yapacak fonksiyonları çalıştıracaktır.

Yukarıdaki şekilde de görüldüğü gibi, Donanım Soyutlama Katmanı sayesinde, alt tarafta çalışmakta olan gerçek bir donanım, web arayüzlü bir yazılım, geliştirme aşamasında kullanılan bir ev simulasyon yazılımı olabilecektir. Sistem, özsellikle geliştirme aşamasını hızlandıracaktır çünkü bilgisayardaki simulasyon sayesinde, donanım detayları ile uğraşmadan yazılım sistemine odaklanmak, yazılım sistemindeki öğrenme, çıkarsama gibi yapay zeka modülleri ve algoritmaları üzerinde bağımsız olarak çalışmak mümkün olacaktır.


Makale:
Akıllı Evler, Yapay Zekanın Günlük Yaşantımızdaki Kullanımı - 3 Yazılım Mühendisliği Tanıl Ergin
  • Yazılan Yorumlar
  • Yorum Yaz
Bu konu hakkında yayınlanan yorum bulunmamaktadır.
"Yorum Yaz" tabını kullanarak sizde yorumlarınızı yazabilirsiniz.
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