ÜNÜ
2209
ÜNİVERSİTE ÖĞRENCİLERİ YURT İÇİ / YURT DIŞI ARAŞTIRMA
PROJELERİ DESTEKLEME PROGRAMI
SONUÇ RAPORU
PROJE BAŞLIĞI: ÜÇ BOYUTLU İVME SENSÖRÜ İLE TRAFİK KAZALARINI BİLDİRME SİSTEMİ
PROJE YÜRÜTÜCÜSÜNÜN ADI: Ali Kemal SARUHAN
DANIŞMANININ ADI: Prof. Dr. Akif KUTLU
GENEL BİLGİLER
PROJENİN KONUSU Trafik Kazası Bildirme Sistemi
PROJE YÜRÜTÜCÜSÜNÜN ADI Ali Kemal SARUHAN
DANIŞMANIN ADI Prof. Dr. Akif KUTLU
PROJE BAŞLANGIÇ VE BİTİŞ TARİHLERİ
01.09.2011-30.06.2012
1. Giriş
Ülkemizin öncelikli problemleri arasında yerini halen korumakta olan trafik kazalarının
ve trafik kazaları sonucu ölümlerin azaltılması, araçlarda kullanılan iletişim
teknolojileri sayesinde mümkün olabilir. Klasik olarak kaza olduğunda: Kazayı,
kazazede kendisi veya kazayı gören seyirci bildirir. Fakat kazazede durumunu
bildiremeyecek kadar kötü olabilir, seyirci geçmeyebilir veya kaza mahalli
bildirilemeyebilir. Bu durumun etkisini azaltmak için kaza tespiti ve kazanın
konumunun belirlenmesi ile en yakın ilkyardım ekiplerinin kaza yerine yönlendirilmesi
sağlanabilir. Bu proje ile kazaların anında bildirimin iyileştirilmesi ve acil servisin
tepkisinin hızlandırılmasını sağlayacak yeni bir iletişim sistemi tasarlanması
hedeflenmektedir. Bu sayede kaza sonucu meydana gelen ölümleri ve yaralanmaları
en aza indirmeye çalışarak trafik kazalarının toplumsal ve mali yükünün azaltılması
hedeflenmektedir. Projemizde araç koordinat verilerinin SMS (Short Message
Service) aracılığı ile merkeze iletilmesi ve herhangi bir internet bağlantısına gerek
duyulamadan koordinat belirleme işleminin gerçekleştirilmesini amaçladık. Ek olarak
SMS ile alınan koordinat bilgileri Google Earth haritasını kullanan bir kullanıcı
arayüzünde gösterilerek projemize görsel bir fonksiyon kazandırdık.
2. Rapor dönemlerinde yapılan çalışmalar
2.1. I. Dönem Çalışmaları
2.1.1. Sistemin Sınıflandırılması
Bu bölümde, projemiz “Üç Eksenli İvme Sensörü ile Trafik Kazalarını Bildirme
Sistemi”ni sınıflandırarak daha kolay anlaşılmasını sağlayarak sistemin tasarım
aşamaları belirlenecektir (Şekil 1).
Şekil 1. Sistemin Sınıflandırılması
Sistem temel olarak iki kısımdan oluşmaktadır. Birinci kısım araçlara monte edilen
“kaza tespit sistemi” ve ikinci kısım ise acil merkezlerde kaza sonuçlarının
değerleneceği “kaza izleme programı”dır.
Kaza tespit sistemi, sensörlerden gelen verileri değerlendirerek kaza tespit eden ve
tespit edilen kazaları konum bilgisi ile acil merkeze bildiren bir sistemdir. Sistem
temel olarak haberleşme ünitesi, konum belirleme ünitesi ve kontrol ünitelerinden
meydana gelmektedir.
Konumlandırma ünitesi, kaza mahallinin konumunu belirlemek için kullanılmakla
beraber, GPS teknolojisi kullanılmıştır. Haberleşme ünitesi ise sistemin
haberleşmesini sağlayan birimdir ve GSM teknolojisi kullanılmıştır. Projemizde bu iki
üniteyi beraber barındıran GM862-GPS modülü kullanılmıştır. Biz iki ünite için kısaca
haberleşme ünitesi ismini kullanacağız.
Kaza izleme programı acil merkeze SMS ile gelen kaza bilgisini ve konumu
görüntülemek için tasarlanmıştır. Temelde iki kısımdan oluşur. İlki SMS’leri alan
modem ve ikincisi ise SMS’lerdeki bilgileri okuyarak konumları görüntüleyecek
yazılımdır.
Sistemi meydana getiren ünitelerin tasarımı ve gerçeklenmesinde aşağıdaki
yöntemler kullanılmıştır.
2.1.2. GM862-GPS modülünün RSTERM programı testi
Projemizde haberleşme Telit GM862 modülünü barındıran Smart GM862 boardını
kullandık (Şekil 2). Smart GM862 boardında GM862 modülüne ek olarak bir adet
UART USB çıkışı, bir adet GPS anten, bir adet GSM anten bulunmaktadır.
Modülümüzün işlevlerini öğrenebilmek için GSM modemlerin konfigürasyonu ve
testleri esnasında kullanabilecek kullanışlı bir program olan RSTERM arayüz
programını kullandık. Modül üzerinde bulunan UART USB çıkışı kullanılarak
bilgisayar ile modül arasında bağlantı kurduk. Bu şekilde bağlantı kurarak modülün
çalışmasını gözlemledik (Şekil 3).
Şekil 2. Smart GM862 Board
Şekil 3. RSTERM Arayüz Programı ile Test
2.1.3. Kontrol Ünitesi Donanım Tasarımı
Kontrol ünitesinin görevi sensörden gelen bilgileri değerlendirerek kaza olup
olmadığına karar vermek, GM862 Modülü ile haberleşerek GPS’den kaza mahalli
koordinatlarını almak ve bu bilgileri SMS olarak gerekli merkeze iletmektir.
Araca monte edilecek kontrol ünitesinin donanımı Proteus programında
tasarlanmıştır. Tasarlanan devrenin simülasyonu Proteus ISIS programı i le yapılmış
(Şekil 4), PCB kart tasarımı ve modeli ise Proteus ARES programıyla elde edilmiştir
(Şekil 5). Devre besleme katı, uart haberleşme katı, mikroişlemci katı ve sensör
haberleşme katından oluşmaktadır. Devrenin gerçeklenmiş hali Şekil 6’da verilmiştir.
Şekil 4. Kontrol Ünitesinin Donanımı Proteus Çıktısı
Şekil 5. Proteus ARES Baskı Devre Çizimi
Şekil 6. Kontrol Ünitesi Donanımı
2.2 II. Dönem Çalışmaları
2.2.1. Kontrol Kartı Yazılımı Geliştirme
Kontrol ünitesindeki PIC 16F877 mikroişlemcisinin gerekli işlemlerini yapabilmesi için
kullanılacak yazılım CCS C dili seçilmiştir. C dili hem insan diline olan yakınlığı hem
de makine diline daha az kayıpla çevrilebilme özelliğinden dolayı tercih edilmiştir.
CCS C Compiler, PIC ürünleri için mevcut olan C derleyicileri içinde, PIC ürünlerinin
bir çoğunu destekleyen, ANSI C uyumlu, esnek ve kolay bir şekilde mikrodenetleyici
programlanmasına izin veren, birçok iletişim protokolü ve çevresel ürünler için hazır
kütüphane dosyaları (kontrol fonksiyonları) içeren CCS (Custom Computer Services
Inc.) firması ürünüdür.
Geliştirilen mikroişlemci yazılımının yerine getirdiği temel görevler aşağıda verilmiştir.
Bu yazılımın akış şeması ve SMS yollama algoritması akış şeması Tablo 1’de
verilmiştir.
Seri kanaldan AT komutlarını göndererek modül ile haberleşmek,
Sensörlerden değer okumak
Alınan sensör değerlerini yorumlamak,
Modülden konum bilgisini almak,
Alınan konum bilgisini SMS yoluyla merkeze göndermek,
Merkezden gelen uyarıları LCD’de görüntülemek.
Yazılımın genel yapısına bakıldığında, PIC mikroişlemci ana programda sonsuz bir
döngü içinde sürekli olarak “sensör okuma”, AT komutunu göndermekte ve modül
seri portundan gelen cevabı dinlemektedir. Yazılım okunan sensör değerlerini
yorumlayarak, kaza olup olmadığına karar verir. Eğer kaza tespit edilirse aldığı
koordinat bilgilerini SMS yoluyla yine modül üzerinden merkeze iletir. Bu aşamalar
devre üzerindeki LCD’de gösterir.
Tablo 1. Yazılım ve SMS Yollama Algoritması Akış Şeması.
2.2.2. Kaza İzleme Programı Yazılımı
Merkez tarafında son kullanıcı ile gerçeklenen kaza konumu belirleme sistemi
arasında bir köprü görevi gören kullanıcı arayüzü Microsoft Visual Studio .NET
platformunun bir üyesi Visual C# ortamında geliştirilmiştir. Merkezde sisteme hakim
olan son kullanıcılar bu arayüz aracılığı ile sisteme koordinat isteği, uyarı mesajı vb.
direktifler göndererek araç takip surecini kontrol ederler.
Geliştirilen arayüz yazılımının yerine getirdiği temel görevler:
Kullanıcı arayüzü ile Google Earth programını entegre bir şekilde çalıştırmak,
SMS almak,
Alınan SMS’ten konum bilgisini çekmek,
Konum bilgisinin işlemek,
İşlenen konum bilgisini Google Earth için anlamlı hale getirmek(KML
oluşturmak)
Araç konumunu Google Earth haritası üzerinde göstermek,
Yazılımın genel yapısına bakıldığında program kodunun modül i le seri haberleşme,
API fonksiyonlarını içeren .dll kütüphanelerinin kullanımı ve basit arayüz
fonksiyonlarının yerine getirilmesinden ibaret olduğu görülür.
Bilgisayar ile modül arasındaki iletişim aynen araç tarafında olduğu gibi seri kanal
üzerinden AT komutlarının gönderi lmesi ile sağlanmıştır. Bu aşamada araç kaza
yaptığında modül bu kazanın olduğu konumu saptayıp merkeze SMS yoluyla
iletilmesi sağlanır. SMS yolu ile gelen koordinat bilgisi de yazılan algoritmayla
filtrelenip paralel, meridyen gibi gerekli bilgiler SMS text mesajından ayıklanır.
Google Earth programının oluşturulan arayüz üzerinde çalıştırılması, ayıklanan
anlamlı verilerin anlamlı hale getirilmesi ve bu verilerin Google Earth üzerinde
gösterilmesi amacıyla API kullanılmıştır:
Google Earth COM API: Google Earth’un normal kullanıcılara sunduğu belli bir
koordinata gitme, koordinat işaretleme, noktaya yakınlaşma, noktaya isim verme
vb tüm özelliklerin yazılımsal olarak uygulanmasına, kontrol edilmesine yarayan
API’dir. Earthlib.dll kütüphanesinin projeye eklenmesiyle bu API’nin fonksiyonları
kullanıma hazır hale gelir.
Google Earth KML API: Alınan koordinat bilgilerinin Google Earth için anlamlı
hale getirilip, Google Earth programının okuyabileceği .KML uzantılı dosyaların
oluşturulmasında kullanılan API’dir.
Win32 API: Google Earth programının tasarlanan arayüz üzerinde çalıştırılmasını
sağlayan fonksiyonlar bütünüdür. Normal kullanıcının Google Earth ikonu üzerine
çift tıklayarak gerçekleştirdiği açma işlemini, kapama işlemini ve aktif Google
Earth ekranını form üzerine alma gibi fonksiyonları yazılımcıya sunar.
Google ve Microsoft tüm bu API’ lerin uygulama geliştiriciler tarafından kullanılmasına
ücretsiz olarak izin verir ve bu API’leri içeren kütüphaneleri internette yayınlar.
Yukarıda da belirtildiği gibi bu kütüphaneler indirilip projelere dahil edilerek istenen
fonksiyonlar yazılımcının amaçları doğrultusunda kullanılabilir. Tasarlanan arayüz
resimleri Şekil 7 ve Şekil 8’de görülebilir.
Şekil 7. Arayüz Genel Görünümü
Şekil 8. Alınan Koordinat Bilgisinin Gösterilme
3. Sonuç
Teknolojinin gelişimi temelde insana verilen değerin bir göstergesidir. Bu gerçekten
yola çıkarak gelişen dünyamızda bu amaca yönelik çalışmaların aslında amacına
yeterince ulaşamadığı da kabul edilmesi gereken bir gerçektir. Projemiz kapsamında
gerçekleştirilen bu çalışmada, GPS ve GPRS teknolojileri mikrodenetleyici
aracılığı ile internetten bağımsız olarak, araç kaza yaptığı anda bulunduğu
koordinantları tespit ederek acil yardım servisine (112) bildirme sistemi ortaya
konmuştur.
Donanımsal olarak GPS ve GPRS modüller içeren modüler bir kart ile mikroişlemci
bulunan kontrol amaçlı bir kartın tasarımları gerçekleştirilmiştir. Markadan ve
modelden bağımsız olması için GPS modül kullanımında uluslararası standard
haberleşme protokolleri tercih edilmiştir. GPRS modül için bağlantı ve kontrol
komutları küçük farklar gösterdiğinden markadan bağımsız modüllerin kullanılması
durumunda ek bir konfigrasyon gerekmektedir. Kontrol kartı mikroişlemcisi için
hazırlanan gömülü yazılım, GPS ve GPRS modüllerin kontrolünü ve 112 merkez
bilgisayarı ile arasındaki haberleşmeyi gerçekleştirmektedir.
Gerçekleştirilen bu proje ile birbirinden bağımsız sistemlerin yararlı amaçlar
için entegre bir şekilde kullanılması öğrenilmiştir. GPS sistemi hakkında detaylı
bilgiler edinilerek etkin bir şekilde kullanılmıştır. Modül kontrolünde ihtiyaç
duyulan AT komut yapısı öğrenilerek bu yolla merkez ve araç tarafında
modül kontrolü gerçekleştirilmiştir. Araç tarafındaki mikroişlemci yazılımında CCS
dili kullanılarak C dili ile mikroişlemci programlama konusunda deneyim kazanılmıştır.
Merkez tarafı fonksiyonlarının yerine getirilmesinde C# dili kullanılarak nesnel
programlama bilgisi geliştirilmiştir. C# kodlama ortamı olarak son yılların en
popüler platformlarından biri olan Microsoft Visual Studio .NET ortamı
kullanılarak .NET ortamında yazılım geliştirme tecrübesi kazanılmıştır. Arayüz
geliştirmede üçün parti uygulama yazılımları olarak bilinen API’ler ve bu API’leri
içeren kütüphaneler kullanılarak API kullanımı hakkında detaylı bilgi edini lmiştir.
Proje öneri raporunda belirtilen başarı kıstasların büyük bir kısmı anlamıyla yerine
getirilerek, araç kaza yaptığı anda bulunduğu koordinatları tespit ederek acil yardım
servisine (112) bildirme sistemi ortaya konmuştur (Şekil 9). Fakat, projede
kullanılması planlanan 3-Boyutlu ivme sensörü , projede tercih edilen ivme
sensörünün projede kullanılan oyuncak araba ile yeteri kadar hıza erişerek
ivmelenme elde edememesinden ve kullanılan mikroişlemcinin oluşacak olan
ivmelenmenin senkron hızı ile eşit hızda olmamasından dolayı ivme sensörü yerine
darbe sensörü tercih edilmiştir.
Şekil 9. Proje Çıktısı, Kaza Olduğunda Kendiliğinden Haber Veren Araba
Bunlara ek olarak gelecek çalışmalarda eklenebilecek uygulamalar ile elde
edilebilecekleri şöyle sıralanabilir.
1. Mikroişlemci seçiminde CAN( Car Area Network) çevre birimi olan bir mikro
işlemci seçilerek yapılan sistem yeni model otomobillere entegrasyonu
sağlanabilir.
2. Seçilen mikroişlemcinin çalışma frekansı ve band genişliği arttırılarak ivme
sensörünün kullanılması sağlanabilir.
3. Mikroişlemci ve kullanılan sensörlerin iyileştirilmesi ile beraber oluşacak
ivmelenmeye yaralanma riskinin daha netleştirilmesi sağlanabilir.
4. Veri transferi çift yönlü olarak gerçekleştirilerek gönderilen koordinatların yanı sıra
olay yeri ses kaydını da göndererek acil yardım servisi tarafından daha net bilgi
elde edilmesi sağlanabilir.
5. Modülün GPS özelliğini kullanarak araç içerisine her an için aracın anlık
konumunu harita üzerinde gösteren bir panel eklenmesi sağlanabilir.
PROJE YÜRÜTÜCÜSÜNÜN
ADI – SOYADI - İMZA
DANIŞMANIN
ADI – SOYADI - İMZA
Tarih
Ali Kemal SARUHAN Prof. Dr. Akif KUTLU