google-site-verification: google3bd66dd162ef54c7.html
fc2ブログ

Arduinoで作るパルスジェネレーターの改良(ソフト入れ替え)

 前回の記事でvabenecosi さんが作られた高精度版のパルスジェネレーターのソフトの動作確認が完了しましたが、今回はこれを以前私が作ったハードに組み込みます。

 まずは回路図から、

▼高精度版パルスジェネレーターの回路図(クリックで別窓に拡大)
Arduinoで作ったパルスジェネレーターの回路図
 これは、vabenecosi さんが 簡易パルスジェネレータの製作(ハード編) で公開されている修正内容を私の回路図に反映させたものです。(水魚堂さんのBsch3V用のファイルも置いておきます。回路図(bsch3v用ファイル)

【変更点】
 1) Timer1を使うために、出力ピンとロータリーエンコーダーのピンアサインを変更
 2) 周波数調整用にTC1追加、C3容量変更(22→10pF)
 3) R6、C7追加

▼基板
基板
 トリマコンデンサの調整ネジがGND側になるように取り付けます。

▼配線面
配線面
 青色の線が今回修正した部分です。

▼基板を本体へ取り付け
取付完了
 ファームはv4r7を入れました。

▼周波数調整穴
周波数調整穴
 ケースの底に穴を開けてトリマコンデンサが調整できるようにしました。freq.ADJ.と書いておくと、なんだかかっこいいです。

 なお、トリマの調整範囲を調べると、パルス幅100μsに設定した状態で下記の結果でした。
 TC1最大 : 100.0008μs ( +8ppm)
 TC1最小 : 99.9898μs ( -102ppm)
 調整可能な範囲がマイナス気味なので、C3の容量をもう少し大きくしておいた方が良かったかも知れません。なおこの結果は私が使った部品と配線方法に強く依存しているはずなので、参考程度にお考え下さい。また、前の記事で「あちゃんでいい」のを使って大きな誤差が出ていましたが、その時とは違う水晶発振子を使っています。

▼精度確認の様子
周波数微調整と精度確認
 パルス幅10msに設定してユニバーサルカウンタで精度を確認している様子です。 

 測定に使ったユニバーサルカウンタ(アドバンテスト TR5822)は上に乗っているルビジウムオシレーターで校正しています。またこのルビジウムはGPSと比較して誤差を補正しているので測定の確度は大丈夫だと思います。

◆まとめ
 以前私が作った物は、ジッタが大きくてパルスジェネレーターとしてははなはだ頼りない物だったのですが、今回 vabenecosi さんが作られたソフトに入れ替えることで、見違えるように高精度のパルスジェネレーターに変身しました。すばらしいソフトを公開してくださっている vabenecosi さんに感謝します。

 改良版のソフトを使うことでパルスの周波数は500kHzまで出せるようになりました。このあたりの周波数の信号が出せると、受信機のマーカーとして使うことが出来ます。ちなみに旧ソフトでは12.5kHzが限界、しかもジッタまみれです。
 出力端子にアンテナ代わりにミノムシクリップの線でもつないでおいて、受信機で受信すれば正確な周波数間隔でキャリアを確認出来て面白いです。変調かけるともっと面白そうですが、遊びすぎでしょうね。
関連記事

コメントの投稿

管理者にだけ表示を許可する

良かったです

こんばんは。

ゼロが沢山並んでいて安心しました。

早く暖かい季節になって欲しいですが、そうなるとまた調整が必要ですね。そのためにケースに穴をあけてあるのですね。

当方はエンコーダをぐるぐる回してLCDの表示やオシロの信号波形を見ているだけでどういう訳か嬉しくなってきますし、ついつい改造、改良のアイデアにも耽ってしまいます。これはなかなか楽しめますね。

re:良かったです

vabenecosiさん、おはようございます。

素晴らしいプログラムを書いていただいてありがとうございます。設定値と測定結果がぴったり一致しているのは、気持ちが良いです。

本文中に書き忘れたのですが、電源入れた直後に最後の写真の状態の測定を行うと10.000016msと出ます。安物の水晶なのでこんなものでしょうね。
あと、周期の値を減少させる時の値の変化も確認しました。
32.776, 32.772, 32.768, 32.767, 32.766 と値が変わっていてすばらしい!

No title

いつも拝見させていただいてますが、私にはソフト等レベルが高すぎるんですね、でもおもしろいです
そこで、低レベルな質問です

基板の裏側の配線ですが、短く混み合っていて大変みたいですが
これってジュンフロン線ってやつですか(間違ってたらごめんなさい)

この線は切らずに半田ごてでそのまま被服を溶かしながら半田付けできると、なにかで観ましたがそうなんでしょうか

私は、いつもニッパで切ってやってるので、大変です。

低レベル屋さん今晩は

皮むきしないで、はんだコテの熱で被覆を縮ませてはんだ付けする人もいますが、私は0.8mmくらいストリッパーで皮むきし、予備半田して後ではんだ付けしてます。

ちなみに、写真の透明なのが銀メッキのFEP線、赤と青はスズメッキのETFE線です。
銀メッキの線は予備半田無しで使えるので便利なのですが、透明な線しか無くて配線が見づらいのでもっぱら、青色のETFE線を使ってます。

ちなみにジュンフロンというのは潤工社のフッ素系絶縁材の総称で、PFE, FEP, ETFEなどいろいろあります。

パルスジェネレータを試してみました

タイマー2から基準クロックとなる方形波を出して、それをタイマー1のT1入力に入れるという方法で、作ってみました。
http://igarage.cocolog-nifty.com/blog/2022/08/post-ab8b48.html

パルスジェネレータを試してみました

そちらの記事拝見しました。使い易そうですね。
うちのこのパルジェネは今でも時々使ってますが、周波数を一気に上げたい時にデューティーの制限に引っ掛かって周波数の上昇が止まるので不便なんですよね。デューティ50%設定で脱出出来るのですが、、

パルスジェネレータを試してみました

あれから・・・ (スケッチはまだ上げてません)
「duty holdモード」を追加。
「←カーソル長押しでduty 50%設定」はこれまでどおりにして、「→カーソル長押しでデューティ比固定モード」になるようにしました。
この操作時のデューティ比を記憶。
周期設定で全体の周期(周波数)を変えても、デューティ比が同じになるようにPWMパルス幅を計算して設定します。
デューティ50%の方形波のまま周期を変えられるのでなかなか便利。
周期設定からパルス幅設定にモードを変えて、パルス幅を変更した時はデューティ固定モードを解除するようにしました。

それとデューティが100%、0%になって出力がH/Lに張り付いた時は、「Hi  Lo」を表示。

電池運用を目指しますんで、Bat Lowチェックも。

http://igarage.cocolog-nifty.com/blog/2022/08/post-720618.html

re:パルスジェネレータを試してみました

記事拝見しました。デューティー固定があると周波数を大きく変える時に便利ですよね。
あと、16MHzクロックモード作ると刻みが半端になっちゃうのはどうするんだろうと思ったのですが、上の方のケタの値を設定する時は違和感感じないようになってるんですね。

そんなことで、UNOで作るパルジェネの完成形になってきましたね、流石です。

ちょっと手直し

ちょっと手直ししました。
「SW2長押し」による「duty 50%設定」。
この時も「duty hold」状態になるようにしました。
http://igarage.cocolog-nifty.com/blog/2022/08/post-c07c42.html
「パルスジェネレータを作ってみた:箱に入れた」にスケッチを
追記しています。

re:ちょっと手直し

連絡ありがとうございます

現在こちらのパルジェネの改造がほぼ終わったところで、
https://twitter.com/radiopench1/status/1565624469586313216?s=20&t=iQlP2WGXJ1slRh__fPS6zg
早速ファームを P-Gen16c1に書き換えて調子よく動いてる感じです。

後日記事にまとめる予定ですが凄く使い易くなってます。あと、コードの書き方も勉強になります。
カレンダー
11 | 2023/12 | 01
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31 - - - - - -
プロフィール

ラジオペンチ

Author:ラジオペンチ
電子工作を中心としたブログです。たまに近所(東京都稲城市)の話題など。60過ぎて視力や器用さの衰えを感じつつ日々挑戦!
コメントを入れる時にメールアドレスの記入は不要です。なお、非公開コメントは受け付けていません。
記事の内容のご利用は読者の自己責任でお願いします。

記事が気に入ったらクリックを!
最新記事
カテゴリ
最新コメント
リンク
FC2カウンター
検索フォーム
月別アーカイブ
RSSリンクの表示
QRコード
QRコード