tekerlekli sandalyeyi sesle yönetmek

Başlatan paradox, 16 Aralık 2006, 15:01:40

paradox

arkadaşlar bir projem var tekerlekli sandalyeye kullanıcı tarafından çeşitli komutlar verilerek hareket etmesi sağlanacak.

olay şu komutlar önce kayıt yapılacak sonra söylendiğinde uygulanacak.örneğin ileri geri gibi.sorunum şu mikrofondan gelen sesi adc ile pice anlatcağım sanırım bu büyük bir sorun.ileri kelimesi uzun bir bit dizisi oluşturur.ayrıca ileri ve geri arasında bir harflik fark var bunun için picin kayıt sırasında bekleme süresi ileriye göre olmalı.yoksa ilerinin bazı bitleri dikkate alınmaz.

nerden başlamalıyım.benzer uygulama yapan varmı.picbasicle yapmayı düşünüyorum.assemblyde olur fakat basic daha kolay geliyo şuanda.süre çok önemli  değil.olursada aseembly eklerim.

pic basicdeki eksiklerimi gideriyorum şuanda.adan zye güzel bir proje olsun istiyorum önerilerinizi bekliyorum şimdiden teşekkürler...

Ersin

DSP ile yapman gerekiyo pic bunu pek kaldirmaz.Birde en onemlisi cok dikkat etmen lazim burda insan sagligi soz kousu.Ileri komutunu verdikten sonra, dur komutunu algilamaz ( veya tam tersi ) ise neler olabilecegini tahmin edebilirsin.

paradox

ona dikkat edeceğim.o tür ince ayarlar sonradan geliştirilirken eklenebilir.pic neden bunu kaldırmaz onu anlamadım.

XX_CİHAN_XX

Alıntı yapılan: "paradox"ona dikkat edeceğim.o tür ince ayarlar sonradan geliştirilirken eklenebilir.pic neden bunu kaldırmaz onu anlamadım.
Gereken hassasiyet ce ses analizi için yüksek hız gerekiyor.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

paradox

XX_CİHAN_XX ;

dsp hakkında bilgim yok yeterli mi sizce o.okulda bi hocama sordum 6802 mikroişlemcisi ile yapabilirsin dedi.onunla nasıl oluyo yanlış hatırlamıyosam 1mhz ile çalışıyo.

peki şöyle soruyum hangi mikrodenetleyiciyi önerirsiniz.

aslında mikrodenetleyiciden çok devre tasarımı önemli.mikrofondan ses kaydı yapmak sanırım oldukça zor olur.düşüncesi olan varmı

YARGICH

Yüksek hızın gerekmesinin tek sebebi, analog olarak hızlı okuması değil. Sesi çok farklı şekillerde analiz etmesi gerekecek. Bunun içinde çok baba bir yazılıma ihtiyacın var. Karşıdan karşıya geçeceği zaman ortamdaki seslerden dolayı kullanıcının sesini ayrıt edemeyip dur komutunu algılamayazsa @swordman'in de dediği gibi çok kötü şeyler olabilir. Yapmak istediğin şey çok güzel, çok yararlı bir şey ama kaş yapayım derken göz çıkarmak çok kötü olur. Yalnız ben olmayacağına inanmıyorum. Bu bi şekilde yapılacak. Belki sen belki bi başkası. Çalışmanın, olup olmayacağını görmenin kimseye zararı olmaz. Onu yapmasan bile ses analizini becerebilirsen senin için çok iyi olur.
Uçurtmalar, rüzgarın kuvvetiyle değil, rüzgara karşı koydukları direnç ile yükselirler.

YARGICH

Mikrofondan gelen analog sinyali dijital ortamda kayıt etmen zor değil. Hatta yeni bir girişi daha önce kaydettiğinle karşılaştırman da zor değil. Yanlız ses analizi çok kompleks bir yapıdadır. Senin ses sinyali üstündeki gürültüleri temizleyip, komutun, kaydedilen ile hangi oranda doğru olduğunu da karşılaştırman gerekecek. Aradaki hata payının da herhangi bir yerde oluşmaması gerekiyor. Bu imza analizi gibi birşeydir. Herkesin imzasında bazı önemli kırılmalar vardır. Eğer taklit imzalarda da o kırılmalara rastlanmazsa imza geçersiz sayılır. Yani ses komutunda nerenin gerçekten hatalı sayılabileceği, nerenin ise sayılamayacağına karar vermek çok önemlidir. Sesin pic ile algılanmasından çok ses analizine yönelmeni tavsiye ediyorum.

İyi çalışmalar.
Uçurtmalar, rüzgarın kuvvetiyle değil, rüzgara karşı koydukları direnç ile yükselirler.

paradox

YARGICH ;

söylediklerine katılıyorum fakat bunu farklı çözümler getirerek halledebliriz sanırım.en azından ben sessiz bir ortamda kontrol etmesini sağlarsam bir başkası da buna katkıda bulunabilir.

mikrofon olayına gelince en azından sesle istediğimizi mikroişlemciye yaptırabilirsek büyük bir sorun ordan kalkar ve geliştirilir.

yani şuan en büyük sorunum o uzun bit dizisini 8 bit halinda mikroişlemciye nasıl anlatacağım.çok uçuk durumlarda hocamdan yardım alabilirim fakat bu sorunu kendim halletmem lazım.

bu işle uğraşarak bayağı bir yol katedeceğimi düşünüyorum...

Gerok

@paradox

Arkaşaım HM2007  yi biraz incele belki işine yarar.
Biraz araştırırsan PBP ile yapılmış bir projeyede rastlamıştım geçmişte.
Mum başka bir mumu yakmakla ışığından birşey kaybetmez...

paradox

entegre vs sorun değil bi mantığını çözsem ona göre entegre bulunur.

şimdi ileri demek bir saniye sürse bu uzun bi bit dizisi oluşturur bunu adc ile dijitale nasıl çevircez.yani 8 bit olarak nasıl işliycez.mikroişlemci mantığı ile yaklaşırsak bi adrese 8 bit sığıyo.upuzun bitlerden 8 bit nasıl olcak???

XX_CİHAN_XX

Alıntı yapılan: "paradox"entegre vs sorun değil bi mantığını çözsem ona göre entegre bulunur.

şimdi ileri demek bir saniye sürse bu uzun bi bit dizisi oluşturur bunu adc ile dijitale nasıl çevircez.yani 8 bit olarak nasıl işliycez.mikroişlemci mantığı ile yaklaşırsak bi adrese 8 bit sığıyo.upuzun bitlerden 8 bit nasıl olcak???
ses verilerini 8 er 8 er kayıt yapıcaksın.örneğin merhaba kelimesinin ses verisi 40byte.belleğin 1,2,3,4,5 nolu hücrelerine bu verileri byte olarak kayıt yapıcaksın.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

paradox

hocam bir harf 1 byte değilmiydi.merhaba da7 byte yapar.ayrıca bi adres 8 bit bu 7 byteı 7 adreste saklarız.ben öyle düşünmüştüm.

ya mikrofona kullanıcının 3 defa aynı kelimeyi girmesi gerekiyo en azından doğru bir sonuç alalım diye.bu üç kelimenin de ortalamasını almak lazım.çok zor bir olay bu ya...mikrofonla adc çevrimi yapan oldumu

XX_CİHAN_XX

her harf için bir byte olabilecek diye bir zorunluluk yok.bazı insanlar hızlı konusur bazı insanlar yavaş konusur.dolayısıyla her merhaba keslimesi aynı uzunlukta olmaz.3 defa kelime tekrarlandı diyelim bence bunların ortalamasını alarak karar vermek dış ortamdan gelen seslerden etkilenmeye çok müsait bir yontem olur.Ayrıca burada filtreleme yapman gerek.Bir kalibrasyon menusu olusturmalısın.Kullanıcı kendı ses tonuyla vermesı gerken komutları tekrarlayacak.o komutları bir yere kaydet.
o ses tonunun sevıyesıe gore bır fıltre programı yazmalısın daha yuksek ve alcak tonları eleyen bır program.Boylece dıs ortamlardan gelen seslere duyarlılı azalır ve daha guvenlı olur.ortalama olma yerıne kısının kalıbrasyon kaydı ıle verdıgı komutu bırebır karsılastırarak(tabı hata paylarını goz onune alarak)işlem yapmanı tavsıye ederım.
Kolay gelsın.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

Ziya

Harf harf tanıtamazsın. Vurgularda iş karışır. Kelime kelime karşılaştıracaksın. Önce kaydettiğin kelimeleri filtreleyeceksin. Kelimenin doğal frekansını çıkartacaksın. Bunları hafızaya aktaracaksın. Örnekleme frekansını en düşük seviyede tutman gerekir. Sonra girilen kelimeleri filtreleyip kaydettiklerinle karşılaştıracaksın. Karşılaştırma da en çok benzeyen kaydı söylenen kelime olarak kaydedeceksin. Filtreleme için yanlış hatırlamıyorsam FFT kullanılıyor. Picler için yazılmış FFT algoritmaları piclistte vardı diye hatırlıyorum.

Siemens s35 cep telefonum vardı ve sesli kaydettiğim telefon numaralarına kolayca erişebiliyordum. İsmi söyleyince hemen 1 sn geçmeden tanıdığı sesi benim daha önce kaydettiğim şekilde tekrarlıyordu. İtiraz etmezsem (1-2 sn) numarayı çeviriyordu. 7-8 kişiyi sesli kaydetmiştim ve hiç hata yapmadan söylediğim isimleri buluyordu.
Bu günden sonra hiç kimse sarayda, divanda, meclislerde ve seyranda Türk dilinden başka dil kullanmaya. (13 Mayıs 1277) Karamanoğlu Mehmet Bey

paradox

arkadaşlar bu filtreleme olayını bende düşündüm ama mikrofonda gelen bilgiyi ne tür bi devreyle filtrelelyebilirim.süzgeçler konusunda çok fazla bilgim yok.aslında varda nerde ne kullanılır onu bilmiyorum hiç kullanmadım.hazır entegremi kullansam acaba.