Dtmf arama ve ses kaydı dinletmek

Başlatan pehlivanson, 29 Temmuz 2021, 00:52:36

pehlivanson

Arkadaşlar bir Dtmf devresi yaptım ve arama yapıyorum. Karşı taraf telefonu açtığında bir ses kaydını dinletmek istiyorum. Fakat karşı tarafın telefonu açtığını nasıl anlayabilirim. Ona göre ses kayıt devresini tetikliycem ve sesi dinleticem. Telefon hattında nasıl bir değişiklik oluyor acaba.

ete

Hiç bir bilgi vermeden (Şema vs) bilgi alman mümkün değil maalesef.
Bu konularda genelde uygulanan sistem hat kapalı iken hat kontrol noktasından Lojik 0 veya Lojik 1 alınması şeklindedir. Dolayısıyla hat açıldığında kapalı olan lojik durumun tersi yakalanır ve hattın açıldığı anlaşılır. Sen nasıl bir devre kullanıyorsun bilemiyoruz. Devreni incele denemeler yap. Hattın ucunu manuel olarak kontrol et. Hat kapalı iken ne bilgi alıyorsun not et. Hat açıldığında ne bilgi alıyorsun kayıt et ve bu iki durumun farklılığına görede programına gereken kodları ekle.

Ete

pehlivanson

Ete hocam. Henüz devreye yeni başladım. O yüzden net bir çalışma yok paylaşabileceğim. Düşüncem hazır bir ses modülü kullanıcam. Burdaki ses kaydını mikrodenetleyici epromundaki numarayı dtmf ile aramak ve karşıdaki kişi telefonunu açınca ( bunu bir şekilde anlam gerekiyor bilmediğimde bu zaten) ses kayıt devresini tetiklemek.
Burada Ete hocamın bahsettiği hat kontrol noktası nedir anlayamadım. Telefona karşı taraf cevap verince yani alo deyince lojik bir bilgi veren devre varmı acaba.

alisumer

sabit hat kullanılıyor ise hatta çalma esnasında ve karşı taraf cevap verdiğinde gerilim değişimi olur çalarken yüksek voltaj uygulanır oradan anlayabilirsin ama cep telefonu yada gsm modul kullanıyorsan karşıdan gelen çalma sesinin kesilmesi kontrol edilebilir tabi yükseltmen gerekicek sinyali sadece dtmf kullanacaksan yani ses sinyalleri dışında bir seri bağlantın yok ise maalesef başka bir kontrol yöntemi yok bildiğim kadarıyla 8870 ile çalıştım bir ara yeni bir kontrolcu yoksa piyasada onunla yapabileceğin bu
Hep meraktan

pehlivanson

#4
Alisumer hocam aramayı ben yapıyorum karşı taraf değil. Pstn hattı manuel olarak arama yaparken yani karşı taraf çalarken ve karşı tataf cevap verince ölçtüm ikisindede 8v okuyorum. Yani adamın telefona alo dediği durumu algılıycak birşey tespit edemedim.
1. Ahizeyi kaldırmadan okuduğum gerilim 48v
2. Ahizeyi kaldırınca yani çevir sesini duyunca okuduğum gerilim 8V
3. Kariı tarafın telefonu çalarken benim hattımda okuduğum gerilimde 8 V
4. Karşı taraf telefonu açınca benim haytımda yine 8 V var.
Ben 4. Adıma geçildiğini nasıl algılarım bir türlü bulamadım. Acaba cevap verilince Dc üzerine bir sinyal felanmı biniyorki

ete

Aşağıdaki linkte yer alan çalışmayı okursanız ihtiyacınız olan her türlü bilgi mevcut.

Ete

https://studylibtr.com/doc/653345/fatih-%C3%B6zcan

pehlivanson


alisumer

Arama yapınca karşı tarafın çalma sesi gelir ya ahizeden onu kastetmiştim Ama şimdi düşünd0m de telefonlarda görüşmenin başladığını tespit eden bir entegre devre var ama o dtmf entegresi değil bahsettiğim gibi mi tespit ediyor onu da bilmiyorum ben sadece çözüm olabilecek bir veri çalma sesi diye paylaştım
Hep meraktan

ete

Burada sorgulanan telefonda ON_HOOK (telefon kapalı) OFF_HOOK (Telefon açıldı) işlemleri, bunun üzerine yoğunlaşmak gerekiyor. Şimdiye kadar gördüğüm ve benimde yapmış olduğum DTMF sistemlerinde zil sesi takip edilerek bittiğinde araya belirli bir gecikme koyup daha sonra telefonun açıldığı varsayılıyor. Elbette bu varsayımın bir çok sebebi var. Başta da telefonun açıldığının tespitinin çok zor olması. Zira telefon araması için sen hattı açmak zorundasın bu hat voltajını 8V ta düşürüyor. Karşı taraf bu konumda telefonu açsa bile hat voltajı değişmiyor. Sanki hat voltajı değilde hat empedansı üzeerinden telefonun açıldığını anlıyorlar gibi geliyor bana. Biraz araştırma yaptım ama artık normal hatlarda neredeyse devre dışı buda bilgi sağlamada sorun yaratıyor. Hattın yada telefonun açıldığını algılayan entegreler olduğunu biliyorum ama fiyatlarının yüksek olduğunuda biliyorum. Sebebi işin zorluğu olsa gerek.

Ete

pehlivanson

Ete hocam biraz bilgi topladım. Telefonun çevir tonu- meşgul tonu - hat dolu tonu- karşı taraf açtı (Receivet off hook) tonu gibi farklı frekanslar hatta santral tarafından basılıyormuş. Bu tonları algılama işine call progress detect işlemi deniyor. Bu frekansların çoğunu algılayan entegreler var ama yurdışında. Benim merak ettiğim bu frekansları bir devre yaparak yakalayamazmıyız acaba


ete

#10
Verdiğin tabloya bakarak bunu yapamayız demem daha doğru olur. Yada imkansıza yakın yapılması zor demek belki daha doğru olur.
Bu sinyallerin dalga şekillerini görebilsek belkide fikrimizi değiştirebiliriz. Tek frekansı test etmek her zaman kolaydır. Ama birden fazla frekansı ve kimin ne zaman geleceğini bilmeden ve yine sinyal şeklinide bilmeden konuşmak benim açımdan çok zor .
Üstelik şunuda unutma sen telefo açıyorsun hat açık ve karşı tarafın telefon ahizesini kaldırdığını tespit etmek istiyorsun. Asıl sorun burada işte. Bu işlemde bir sinyal falan yollandığını sanmıyorum. Yada yollanıyor kulak bunu duymuyor. Bu nedenle bu işlem sandığından çok daha zor.
Ete

onurinci

goertzel algoritmaları yada FFT Fast Forrier Transform, FIR Filter Basic yada Proton örneği hiç görmedim.

genelde Interpreter kullanmayan Assembler dilinde yazılmış örnekler var.30 yıl santral Telekom alt yapısında çalışmış arkadaşıma sordum,aboneye bekle,hat sinyali yada meşgul tonu yollanır,diğer PSTN tonlar santral ile diğer santral arasındadır,son kullanıcı özel bir talep olmadıkça buna ulaşamaz,talep ancak resmi kurumlar tarafından yapılır diye cevap verdi..
bir derginin PSTN hakkındaki makalesini ekliyorum,konu hakkında pek bir bilgim yok ,anladığım kadarı ile yazılım ile tonları dedekte ediyor..

Serk@n

Kendi bilgim dairesinde bunun için size önerebileceğim tek şey goertzel algoritmasıdır. Çünkü denemelerim sonucunda sadece bu yöntemle istediğiniz işleme benzer bir işlem yapabildim. Benim yaptığım işlem hattaki çevir sesini kontrol edip, eğer çevir sesi varsa numarayı çevirmek, yoksa uyarı vermekti.

Yani hattı bir analog girişten dinleyebilir, belirli zaman aralıklarında numuneler alıp hattın durumunu tahlil edebilirsiniz.

Bunun için iki aşama var: Devre ve yazılım.

Devre şeması için ilk dikkat edilecek husus dinleme sadece telefon hattı açıkken kullanılmalıdır. Yoksa ring voltajı MCU.yu bozacaktır. Bunun için role gibi bir elemana ihtiyacınız var.

İkinci husus burada değişken doğru gerilim bulunur. Gelen sinyalı bir köprü diyotla almanız gerekir ki sinyalin + periyotta değişen ucu belli olsun.

Üçüncü husus bu sinyali köprü diyotlardan sonra bir kondansatörle filitreleyip AC akıma çevirmeli daha sonra iki gerilim bölücü dirençle sinyali tekrar değişken doğru gerilime çevirmelisiniz. Bunun sebebi değişken doğru gerilimin orta noktasını belirli bir voltaj seviyesinde tutmaktır.

Yazılım için 5 aşamalı kontrolü var. Ön bilgi için bu linkteki yazıya bakabilirsiniz.

https://etepic.com/index.php/topic,4430.msg41480.html#msg41480

Tabiki sizin durum burada yazılanlardan biraz farklı. Siz numara çevrildikten sonra santralin verdiği  kesik kesik çalan arama sinyalini takip etmelisiniz. Arama sesi kesildiği gibi karşı taraf telefonu açtı diyebilirsiniz. Veya yeterli bir süre ses kesilmediyse "cevap vermedi" şeklinde bir değerlendirme yapabilirsiniz. Tabi bunun formül değerleri farklı olacaktır.

Bu yöntemi denemek isterseniz buradan daha ayrıntılı mesajlaşarak devam edebiliriz.

İyi çalışmalar.
Bildiklerimize göre hareket edersek bilmediklerimizi de öğrenebiliriz.

Powered by EzPortal