Arduino CW解読器動きました。 [アマチュア無線]
JE7JCXです。
親友のところへ部品と工具を借りに行ってきました。
スケッチは海外で公開しているところからダウンロードし、I2C接続に書き換え20文字4行仕様にし、バラックで配線したらあっさり動きました。
【使った電気部品】
・コンデンサ2個→これは狙いの容量がなかったので、直列2個使いで狙いの容量を作ったため。
あれば1個でOK。
・抵抗3本
・LED1個
だけです。
真面目にやろうとすると、その他にジャックやらケースやら基板、それを止める足などが必要になりますが。
でもあまりに簡単で笑っちゃいましたけど。
これから、ケース加工、蛇の目基板配線、電源のとり方を考えて、などなど。
本当の完成まではもう数日かかるでしょうか。
デコードの方は、コールサインだけデコードしてくれれば、あとはあまり期待していません。
でもUNOじゃあ、RAMの容量的に少し厳しいという記事も見かけたので、先程MEGAをポチったのに。 (T_T)
もうすこしがんばりましょう!
LCDを動かすために、プログラムのソースの先頭の方しか見てませんでしたが、途中に ///////////////////////////////////////////////////////////
// The sampling frq will be 8928 on a 16 mhz //
// without any prescaler etc //
// because we need the tone in the center of the bins //
// you can set the tone to 496, 558, 744 or 992 //
// then n the number of samples which give the bandwidth //
// can be (8928 / tone) * 1 or 2 or 3 or 4 etc //
// init is 8928/558 = 16 *4 = 64 samples //
// try to take n = 96 or 128 ;o) //
// 48 will give you a bandwidth around 186 hz //
// 64 will give you a bandwidth around 140 hz //
// 96 will give you a bandwidth around 94 hz //
// 128 will give you a bandwidth around 70 hz //
// BUT remember that high n take a lot of time //
// so you have to find the compromice - i use 48 // ///////////////////////////////////////////////////////////
途中略
//////////////////////////////
// Noise Blanker time which //
// shall be computed so //
// this is initial //
////////////////////////////
//int nbtime = 6; //
// ms noise blanker//
親友のところへ部品と工具を借りに行ってきました。
スケッチは海外で公開しているところからダウンロードし、I2C接続に書き換え20文字4行仕様にし、バラックで配線したらあっさり動きました。
【使った電気部品】
・コンデンサ2個→これは狙いの容量がなかったので、直列2個使いで狙いの容量を作ったため。
あれば1個でOK。
・抵抗3本
・LED1個
だけです。
真面目にやろうとすると、その他にジャックやらケースやら基板、それを止める足などが必要になりますが。
でもあまりに簡単で笑っちゃいましたけど。
これから、ケース加工、蛇の目基板配線、電源のとり方を考えて、などなど。
本当の完成まではもう数日かかるでしょうか。
デコードの方は、コールサインだけデコードしてくれれば、あとはあまり期待していません。
でもUNOじゃあ、RAMの容量的に少し厳しいという記事も見かけたので、先程MEGAをポチったのに。 (T_T)
もうすこしがんばりましょう!
LCDを動かすために、プログラムのソースの先頭の方しか見てませんでしたが、途中に ///////////////////////////////////////////////////////////
// The sampling frq will be 8928 on a 16 mhz //
// without any prescaler etc //
// because we need the tone in the center of the bins //
// you can set the tone to 496, 558, 744 or 992 //
// then n the number of samples which give the bandwidth //
// can be (8928 / tone) * 1 or 2 or 3 or 4 etc //
// init is 8928/558 = 16 *4 = 64 samples //
// try to take n = 96 or 128 ;o) //
// 48 will give you a bandwidth around 186 hz //
// 64 will give you a bandwidth around 140 hz //
// 96 will give you a bandwidth around 94 hz //
// 128 will give you a bandwidth around 70 hz //
// BUT remember that high n take a lot of time //
// so you have to find the compromice - i use 48 // ///////////////////////////////////////////////////////////
途中略
//////////////////////////////
// Noise Blanker time which //
// shall be computed so //
// this is initial //
////////////////////////////
//int nbtime = 6; //
// ms noise blanker//
と書いていますね。
これは、サンプリング周波数と、トーンと、バンドワイズ、ノイズ除去時間をModifyしなければならないとあります。
まぁ、これはハードに関係ないので、完成した後でもチューニングできるのでいいとして、ほんとうは前段にDSP組んで、ノイズを減らして純粋なCWのトーンだけ流し込めば、解読率が上がるんでしょうね。
素人考えですが。
満足なデコードをさせるには簡単にいかないような気がします。
※忘れてました。前段のDSPで混信やらノイズ減らして〜って、無線機がやる仕事だった。 (笑)
一応部屋にある無線機は、DSP機ばっかりだし。
あんまりパイルアップに参加することも呼ばれることもないので、フィルターの帯域狭くはしたくないのですが。。。
これ1冊でできる!Arduinoではじめる電子工作 超入門 改訂第3版
- 作者: 福田 和宏
- 出版社/メーカー: ソーテック社
- 発売日: 2018/06/16
- メディア: 単行本
コメント 0