İleri Konular
Araçlar ve bileşenler
Kayalık Delphi 5 yazılmıştır Pro. Beri benim zayıf sinyal çözücü proje kod çok kullanılan geliştirme süreci oldukça kısa. Ben son 5 yıldır bu proje üzerinde ve çalışıyoruz şimdi çok tamamlanması yakın - ama bu yüzden o ben küçük projeler gibi başlangıç am bıktım MorseRunner ve Rocky, kod çözücü ;-) çalışmıyor için bir bahane olması
Ses I / O
Ses kartının WDM sürücüsü doğrudan Rocky ediyor. Bu, mümkün olan en düşük gecikme sağlar sorunları Windows K-Mikser, ilişkili bir dizi ortadan kaldırır ve pürüzsüz ses iki souncards arasındaki akışı sağlar. Ancak, WDM tabanlı yaklaşım da bazı dezavantajları vardır: 1) programı Windows'un eski sürümlerinde çalışmaz; 2) başlangıç programı yapamam ses kartı örnekleme oranları doğrudan sürücü tarafından desteklenen yalnızca, açılabilir K kuru-Mikser örnekleme yararlanın.
Band Kapsam
Çok fazlı FFT algoritması gösterilmiştir spektrum hesaplamak için kullanılır. Ekran görüntülerinden aşağıdaki standart FFT ve çok fazlı FFT arasındaki farkı gösterir: İkinci ve çok daha yüksek çözünürlüğe sahip ekstra spektral kaçak giriş yok.
Standart FFT
|
Çok fazlı FFT |
Sigara önce görüntülenir doğrusal güç spektrumu uygulanan filtreleme. Bu-gürültü oranı ve geçici zayıf sinyalleri açıkça görünür gürültü sinyali geliştirir. Filtre her zaman programa döndü, ancak geçici olarak kodunu ekran aşağıda sunulmuştur çekmek için onu devre dışı.
Filtre devre dışı
|
Filtre etkin |
Filtre sadece 1-st düzen kurar IIR filtredir:
FilteredSpectrum [i]: = FilteredSpectrum [i] * (1-Gain) + NewSpectrum [i] * Kazancı;
- Dışında elde olmayan bir genlik doğrusal fonksiyon:
Kazanç: = (1 - exp (- (0.2 * NewSpectrum [i ])));
Bu sigara nedeniyle-doğrusallık, zaman filtre sürekli gürültü yüksek ama güçlü sinyaller için sıfıra yakın.
Şelale Ekran
Ise spektrum ekran frekans yüksek çözünürlüğe sahip, şelale görüntüleme süresi yüksek çözünürlük için, böylece CW sinyalleri görsel olarak hıza kadar 40 WPM için de kopyalanabilir tasarlanmıştır. Kaç çağrı işareti, aşağıdaki ekran üzerinde okuyabilirim?
K7C sıklığı üzerine bir zincirleme kaza
Iki opsiyonel filtreler şelale ekran modunda mevcuttur. Filtreler etkin olabilir veya açılır Şelalesi Ekran düğmesi menüsünü kullanarak devre dışı.
Key-Filtre CW tuşuna tıklama kaldırır. Spektral çıkarma olarak uygulanır: anahtar tıklama güç yoğunluğu ve tahmin sinyal gücü spektrum çıkarılır. Filtre bazı de-noising etkisi vardır.
Key-Filtre devre dışı
|
Key-Filtre etkin |
Süper Çözünürlük filtre zaman olarak bilinen dönüşümü frekanslı yüzey yeniden parameterization dayanmaktadır.
Standart çözünürlük
|
Super çözünürlüğü |
Dan üçüncü FFT birim değiştirilmiş bir versiyonu DC-DSP Bileşen Paketi kayalık ve Hızlı Fourier Dönüşümü hesaplamak için kullanılır. Bu birimde hata bir çift sabit ve Delphi 5 ile uyumluluk için değiştirilmiş. Güncellenmiş biriminin kaynak kodu mevcuttur Programmer's Corner.
I / Q Dengeleme
I / Q Dengeleme Rocky tamamen otomatik ve herhangi bir laboratuvar ekipman gerektirmez, tüm yapmanız gereken programın ne zaman grup açık bir başlangıç. Kayalık sinyal jeneratörleri olarak grubun tüm güçlü istasyonlarını kullanacak!
Algoritması aşağıdaki gibi çalışır. Güç spektrumu bu gürültü üzerinde en az 30 dB olan sinyaller için taranır. Resmin her bir sinyal için, senkron algılama referans osilatör olarak temel sinyal kullanılarak yapılır. Senkron dedektör çok duyarlılık ve yüksek olduğunu bile gürültü altında görüntü sinyalini algılayabilir. J de sinyal-yelpazenin th bin için, syncronous dedektör normalleştirilmiş çıkış Z gibi hesaplanır:
Z = ComplexMul (ASpectrum [j], ASpectrum [FftSize-j])
PWR = Sqr (ASpectrum [j]. Re) + Sqr (ASpectrum [j]. Im) +
Sqr (ASpectrum [FftSize-j]. Re) + Sqr (ASpectrum [FftSize-j]. Im)
Z. Re = Z. Re / Pwr
Z. Im = Z. Im / Pwr
Z, ana sinyal açısından genlik ve görüntünün faz hakkında bilgi içeren karmaşık bir değerdir. Z zaman içinde programın ortalama ve frekans bir fonksiyonu olarak genlik ve faz hata hesaplar:
tmp = sqrt (1 - Sqr (2 * Z. Re))
Phase = Arcsin (2 * Z. Im / tmp)
Kazanç = tmp / (1 - 2 * Z. Re)
Ben bu denklemleri kullanarak elde var Maxima aracı.
Kayalık tarafından hata tahminler interpolates bir onlara polinom, montaj ve bir frekans alanı hata fonksiyonu, H [w] oluşturur:
H [w]. Re = Kazanç [i] * Cos (Faz [i])
H [w]. Im = Kazanç [i] * Sin (Faz [i])
Spektrum S "[w] giriş sinyalinin S düzeltilmiş spektrum elde aktarılır [w] aşağıdaki denklemler kullanarak:
S [w]. Re = S "[w]. Re + S '[-w]. Re
- (S '[w]. Im + S' [-w]. Im) * H [w]. Im
+ (S '[w]. Re - S' [-w]. Re) * H [w]. Re
S [w]. Im = S '[w]. Im - S' [-w]. Im
+ (S '[w]. Im + S' [-w]. Im) * H [w]. Re
+ (S '[w]. Re - S' [-w]. Re) * H [w]. Im
Profili tıklayın / IQ Dengesi menüde faz ve frekans vs genlik hata araziler görmek için. Bu gibi görünmelidir:
15 dk. başladıktan sonra
|
Ertesi gün
|
Ben SoftRock40 eski bir sürümü varsa, Johnson karşı mod olmadan bir. Yeni sürümleri muhtemelen daha küçük hatalar LO sinyal daha iyi zamanlama nedeniyle var.
Çoklu filtreleme
Kayalık içinde ana filtre bir klasik pencereli-basınç filtresi. Filtre sinyal bant genişliği beri 3 KHz aşarsa asla, daha düşük bir örnekleme oranında filtreleme yapmak mantıklı: Bu CPU döngüleri çok kaydeder. Yelpazenin İstenen segmenti baseband ve yeniden aşağı karıştırılır-6 KHz örneklenmiş, filtre, uygulandı ve süzülmüş sinyal istenilen ses üretmek için karmaşık bir sinusoid ile karıştırılır. , Yeniden örnekleme Karıştırma ve filtreleme frekans yapılmaktadır. Program 6 KHz örnekleme hızında çıkışı için ses kartı açmak için çalışır. Bu başarısız olursa, o kadar numunelerin sinyal örnekleme oranı ne olursa olsun ses kartı tarafından desteklenir.
Filtre parametreleri
Bant genişliği
Ana filtre bant genişliği 20 Hz ve 600 Hz arasında ayarlanabilir. Ne kullanmalıyım bant genişliği? Klasik, tüm donanım CW alıcıları, 500 Hz bant genişliği standardı: dar bir filtre zor band ve ayar üzerinde sinyal tam olarak istasyonları bulmak olur. Bu yazılım bir sınırlama değildir radyo tanımlanmış tüm istasyonları, hatta en zayıf olanlar, açıkça spektrum ve şelale ekranlarda görünür ve istasyona ayarlama kesin tek bir fare tıklaması ile gerçekleştirilebilir. Şimdi kolaylıkla çok dar filtreleri kullanabilirsiniz. CW bir sinyal için, beyaz gürültü SNR açısından en uygun bant genişliği 1,5 * WPM - 45 Hz bir 30 WPM örneğin bir. Ağır QRM altında, hatta dar filtreler kullanılmalıdır: ancak çok daha iyi sinyal-parazit oranı-gürültü oranı biraz daha düşük sinyal olacaktır.
Ne zaman Rocky içinde dar filtreler kullanmaya başladığınızda, Snap fonksiyonu takdir edeceklerdir. Bir 20 bir sinyal el at-Hz filtre Tuning bir kabus!
Şekil faktörü
Faktör de filtre bant genişliği oranında-60dB ve-6dB bir şekil. Biri yakın şekil faktörüne 1 daha iyi düşünebilirsiniz. Yanlış! Çok küçük şekil faktörleri ile Filtreler kaçınılmaz halka - kötü tasarım çünkü, ama Gibbs olgu nedeniyle. Zil ortadan kaldırmak için tek yol faktör şekil artırmaktır.
Şekil faktörü olarak filtre geçiş bant genişliği hesaplanan aşağıdaki şekilde ulaşabilirsiniz:
ShapeFactor = (TransitionBW Bandwidth + + TransitionBW) / Bant Genişliği.
Kayalık size, seçim bir şekil faktörü olarak 500 Hz bant genişliğinde sunulmaktadır birkaç önceden tanımlı geçiş bant genişliği seçmenizi sağlar. Bu özellik sadece deneme için eklendi. Günlük çalışma için, Otomatik seçeneğini seçin - bu, herhangi bir filtre bant genişliği de en uygun şekil faktörü korumak için Rocky söyler kullanın.
Egzersiz. 1,02 seçin filtre şekil faktörü devre dışı AGC ve 500 Hz bant genişliğini ayarlayın. Güçlü, yüksek-CW böylece kendi frekans filtre kesim frekansı yakınlarında sinyal hızda Dinle. , Ve yavaş yavaş sinyal sonunda kaybolur dışarı o ana sinyal önce ikinci bir kısmını başlar güçlü zil duyarsınız.
AGC
Kayalık içinde AGC algoritma çıkış sinyalinin optimum dinamik tutar. Bu farklı formu klasik AGC sistemleri dinamik aralığın üst ucunu bakımı sadece. 'Iki' AGC safhasında ve güçlü sinyaller ve operatör noktalar ve güçlü olanlardan bir çizgi arasında zayıf istasyonları duymak sağlar arasında doğru kazanç vardır taraflı gibi.
Algoritması giriş gürültü r.m.s. tahminleri Filtrelenmemiş sinyalinin spektrum, ve gelen (sinyal + gürültü) sinyali toplam zarf hesaplar. Bu iki değer giriş dinamik tanımlar. Üstel fonksiyonu ile istenilen çıkış dinamik aralığına AGC haritaları bu aralığı:
Out = MaxOut * (1 - exp (-in / Beta))
The AGC biriminin çıkış sinyali giriş sinyali bir ürün ve zamanın bir fonksiyonu olarak AGC sahip olmanızdır. Frekans alanında, bu giriş spektrumunun kıvrım ve kazanç fonksiyonunun spektrum eşdeğerdir. Bu nedenle, AGC sinyalinin spektral doruklarına için sidebands ekler - Bu etkiyi intermodülasyon olarak bilinir. Beri sidebands sadece kazanç spektrumunun kopyalarıdır, modülasyon bu kazanç fonksiyonu mümkün olduğu kadar dar olduğunu sağlanarak minimize edilebilir. Bu kurar sağlanır-kazanç filtreleme.
Kazanç filtre bir sürgülü asgari filtre Blackman FIR takip oluşur. Her iki filtre uzunluğu aynıdır, bu filtre kazanç ve anlık kazanç haritalama fonksiyonu hesaplanan aşmaz dolayısıyla kırpma sağlar oluşur asla.
S-Meter
S-Rocky içinde metrelik bir girişim eğer SDR yazılımı daha iyi bir donanım aygıtı davranışını taklit yapabilirsiniz görmektir. Analog S metre genellikle üstel bozunma ile pik dedektörü dayanmaktadır. S-Rocky içinde metre farklı çalışır: o, sinyal zarf sürgülü asgari algoritmayı kullanarak izler ile gerçek sinyal gücü görüntüler 0,3 s Resolution zaman içinde. Sonuç olarak, gösterge her nokta ve çizgi veya ses patlaması ve okuma değişiklikleri sadece sinyal gücü actually değişikliklere atlamaz.
Zarfın altında anlık güç Varyasyonlar S gösterilir-işaretçiyi etrafında beyaz noktalarla metre, her nokta 6 dB veya 1 S birimidir. The SSB modunda, bu nokta bakarak sinyal tepe faktörü tahmin edebilirsiniz; bir CW noktalar sinyal Morse elemanları ve aralarındaki boşluk arasındaki güç farkı göstermek (yani, gerçek SNR is).
CW Verici
Gibi karmaşık bir tuşlayarak zarf çarpımına sinusoid CW sinyal zaman etki alanında oluşturulur. Zarf nesil algoritması benim makalede açıklanan CW Şekillendirme DSP Yazılım, QEX Mayıs / Haziran 2006. Yükselişi ve düşüşü zarfın süresi 5 ms olan; algoritmayı bu anahtarlama sidebands fazla 100 dB (!) At + /-280Hz taşıyıcı gelen bastırılır sağlar. I spektrumunda / Q çıkış sinyali aşağıda gösterilmiştir:
SSB TX modunda devam çalışmasıdır. Konuşma öncesi işleme modülü test etmek için hazır, şu anda bir olarak kullanılabilir olmasıdır yalnız programı standı.
BPSK31 birimi
Alıcı
BPSK31 alıcıya giriş karmaşık bir sinyal baseband 3.000 Hz örneklenir. Bu, CW ve SSB filtreler kullanılır aynı sinyali olduğunu detayları için yukarıdaki Çoklu Filtreleme bakın. Alıcısı aşağıdaki modüllerden oluşur.
LO / Mikser karmaşık bir sinusoid tarafından giriş sinyali çarpar frekans hata iptal etmek. Başlangıç günü, LO frekansını sıfırdır.
LPF / Resampler kurar filtreleme gerçekleştiren ve altörnekleme. Filtreleme frekans yapılmaktadır. Filtre iki bant genişliği ayarları, 30 Hz ve 17 Hz vardır. Geniş filtre standart Blackman-basınç FIR, dar bir alan özel filtre asgari ISI, tasarlanmış için optimize edilmiş Scilab. Geniş filtre frekans yakalamak içindir. Bir kez frekans kilidi elde edilir, dar filtre in açıldığında
Altörnekleme de frekans alanında, kendi üzerine spektrum adlandırması tarafından yapılır. Çıkış örnekleme hızı 375 Hz olduğunu.
Frekans detektörü Bir önceki örnek karmaşık eşlenik tarafından mevcut ses örnek çarpar. Ürünün argüman frekans hata, örnekleme zaman aralığı radyan, ve büyüklüğü, sinyalin anlık güç olmasıdır.
Frekans izci bir 1-st sipariş Kalman filtredir. Onun girişleri, gözlem değeri ve varyans, argüman ve frekans detektörü çıkış büyüklüğü itibaren hesaplanır. Frekansı Kalman filtresi tarafından tahmin Etkisiz ve LO atanır.
Sybmol Zamanlama Tracker tahminler süresi ve zaman sembollerin ofset. BPSK sinyal anlık güç sürekli (fadings tabi), zaman zaman nulls meydana gelen zaman sinyali faz ters olmasıdır. Bu nulls sybmol sınırları gerçekleşen ve kosinüs şekli var. Sembolü izci kosinüsünü bir süre ile sinyal gücü karmaşık bir korelasyon hesaplar, sonucun faz zaman kosinüsünü kökeni gelen boş bir dengeleniyor. İkinci sırada Kalman filtresi zamanlama hatası izler ve sembolü geçiş süresi bir tahmin sağlar.
Sembol Sampler / Faz Düzeltici sembol izci dan örnek için sembol merkezlerinde veri zamanlaması bilgileri kullanır. DPSK demodülasyon iki başarılı örnekleri arasında faz farkı bilgisayar tarafından yapılır. İdeal sonucu ya 180 ° veya 0 ° olmalıdır. Eğer bu değerlerden farklı ise, bir Kalman filtresi hata izler ve çıkış onu çıkarır.
Varicode Decoder BITS tampondaki sembolü örnekleyici bir 00 kombinasyonu kadar alındığında önümüzdeki birikir, daha sonra masa arama ile bir karakter içine bit çözümler ve tampon döker.
Vericisi
The BPSK31 verici PSK Keyer ve karıştırıcı oluşur.
PSK Keyer iletilebilmesi için aldığı karakterler, kodlar onları Varicode tablosu kullanılarak ve baseband BPSK31 sinyal üretir. Ayrıca, başlangıç, sonrası eşkin gnerates ve nulls (varsa) boşta.
Mikser karmaşık bir sinusoid tarafından Baseband sinyal çarpar istenen frekans onu kaydırmaya.
BPSK31 hata düzeltme
The QPSK31 modu mesaj receiver de çözme doğruluğunu artıran bir hata düzeltme mekanizması vardır. Giriş mesaj verici özel bir şekilde ve kodlanmış olan iletilen sıra iki kez orijinal mesajı (50% artıklık) kadar bit olarak vardır. Bu fazlalık sonra dekoderi bulunan hataları düzeltmek için kullanılır.
BPSK31 modunda, herhangi bir kodlama yan iletimi de yapılır. The Varicode karakter kodlarına orijinal formunu iletilir ve alıcı basit tablo arama ile çözülür.
Tüm hata artıklık gerektiren algoritmalar düzeltilmesi beri, bir BPSK31 bu hata düzeltme imkansız olduğunu düşünebilirsiniz. Bu doğru değil. Orada 'bir miktar' doğal mesajları genellikle hams tarafından gönderilen fazlalık, bu karakter bazı kombinasyonlar diğerlerinden daha ofthen meydana gerçeğinden kaynaklanır. Ben (toplamda yaklaşık 130.000 karakter) hava kapalı BPSK31 iletilerin sayısını kaydedilmiş ve karakter çiftleri için artıklık bilgisayarlı. Benim için sürpriz, artıklık düzeyi% 30 üzerinde, fazla bir girişim düzeltmek için haklı göstermek için yeterli olduğunu bazı hatalar en azından.
Kayalık 3.2 BPSK31 hata düzeltme fonksiyonu karakter çifti istatistikleri temel alan içerir. Bu fonksiyon ve metin ekranın popup menüsünde kapatılabilir olabilir. Zaman hata düzeltme, sinyal ilk standart decoder, ve çözümlenmiş olan çıktıya metin Balck veya gri, sinyal kalitesine bağlı olarak yazılıdır etkindir. Eğer düzeltilmiş yaklaşık 1.5 saniye sonra bu metin hata çıkışı ile, ve karakter, kod çözücü düzeltilmesi, pembe kendi rengini değiştirmek değiştirilir.
Vektör Network Analyzer
Paul N2PK, bir yazar N2PK Vektör Network Analyzer (VNA), bu SoftRock RXTX karmaşık empedans, katsayısı ve cihaz anten terminallere bir VNA oluşturan tüm bileşenlerin başlangıç bağlı VSWR zaten radyo vardı yansımasını ölçmek için kullanılabilir keşfetmiştir. Onun denklemler bana gönderdi, ben Rocky onun rehberliği altında uygulanmaktadır.
Bu yazılımı kullanarak-VNA tanımlanmış, size anten parametreleri ölçmek ve gerçek zamanlı frekans vs kendi grafikleri görüntüleyebilirsiniz.
Paul mükemmel bir yazmıştır tutorial tha, VNA kalibrasyon ve ölçümler tüm yönlerini kapsayan ve SoftRock içinde küçük değişikliklerle açıklayan bir VNA çevirmek requred.
Screenshot Bodo DJ9CS tarafından:
80 m onun kısa dipol ile VSWR grafik
Copyright © 1998-2009 ifrit Software, Inc
|