JF1DIR業務日誌(はてなblog版)

アマチュア無線局JF1DIRのアクティビティをつづっています。

関西ハムシンポジウム参加

更新が遅くなりましたが、例年通り関西ハムシンポジウムに参加してきました。去年までは知り合いの局達とジャンクブースを開いていたのですが、今年は一点だけ委託販売させてもらうことにしました。

さて、会場に到着してすぐにJA3RLの公開運用の予約を済ませ、ジャンクブース会場でおなじみ各局とアイボール。今回当局が持ち出した品はアルインコのSW電源DM-330MV、なんと新品です。定価の半額以下の値をつけたところ午前中に売れたようです。ありがとうございます。
JA3RLの公開運用では7MHzのCWに20分ほどオンエアしました。コンディションが良くクラスタにスポットされたようで、全国から強い信号の猛パイルを浴びました。交信各局TKS!
午後からは神戸VEチームによるFCC試験の試験監督のお手伝いに参加しました。スコアシートのマークシートをスキャナで読み取り自動的に採点するというハイテクを導入しており驚きました(規則により採点は人間(VE3名)でも行います)。すばらしくハイスコアでOne Day Extraが一名、General合格が二名でした。めでたし。

今回も慌ただしくゆっくりとアイボールやブース回りができなく残念でしたが、大変盛況で楽しかったです。
今回の戦利品はアンテナのムック本、古いハム雑誌、テフロン同軸ケーブルなどなど。

各局アイボールありがとうございました。

FT-817からIFを取り出しSDRで復調

受信機の中間周波数(以下IF)を取り出し、別の受信機で復調させることで、もとの受信機にはないフィルター特性や様々なモードで復調できることがあります。中間周波数が比較的低い周波数ならば、PCのサウンドボードに入力してPC上で復調することも可能となりました。一昔前に流行ったDRM放送の復調もその一つでしょう。
子の受信機にSDRを用いると、活用範囲はさらに広がり、フィルタを通す前の広い帯域のまま信号を扱って、ウォーターフォール表示させたり、録音したり、CWやRTTYを一括で復号するすることが可能となります。
今回はFT-817からIFを外部へ取り出して、その信号をSDRで復調させることをやってみました。目的はズバリ、SDR単独ではできなかったV/UHF帯でCW Skimmerを動かすことです。

まず、FT-817からIFを取り出すことについてですが、ここのページを参考にしました。68MHzのクリスタルフィルタの手前でタップを取る方法で、信号強度も申し分なく、工作もやりやすいでしょう。とは言っても、かなり細かい作業なので慎重に。
リグの外へ取り出すためにはSMA型レセプタクルをリグの背面に取り付けました。ここの部分はアルミシャーシの厚さが異様に厚いので工作に難儀しました。レセプタクルのネジの呼び長さに余裕のあるものにしましょう(苦笑)。


FT-817/857/897のIFは68.33MHzであるため、手持ちのSDRのQS1RPerseusでは受信できません。そこでHF帯へのダウンコンバートを作ってみました。手元にちょうど40MHzの京セラ製クリスタルオシレーターがあったので、これでミキシングすると28.33MHzとハムバンドに入る周波数になり大変具合がいい。ザクっと作ってみました。

40MHzのオシレーターはロジック回路のクロック用なので下図のようにハーモニック成分がたんまりなので、一段だけBPFを入れておきました。ほとんど気休めです。また出力が+18dBmとかなり大きいので10dBのパッドを入れてあります(一般にDBMに必要以上に大きな信号を入れると歪みます)。

TDKのDBMでミキシングし、変換ロスした分を補うために2SK241によるアンプを入れて同調負荷としました。ソースとアースの間にVRを入れてゲインを調整するようにしました。FCZコイルのコアを調整すると40MHzのLoと加算側(108.33MHz)を-16dBくらい抑圧させることができ(下図)ました。FT-817のアンテナ端子に入れるレベルとコンバーターの出力レベルが合うようにゲイン調整して完成としました。

FT-817のIF-Outとコンバーターを接続し、Perseusにワッチさせると28.33MHz付近で受信することができます。FT-817で選択しているバンドのフロントエンドのBPFの範囲内であればPerseusで復調させることができます。オフセットの計算がややこしいのですが、これは仕方ありません(汗)。
CW Skimmerによる復調も当然ながら可能で、430MHzでダミーロード送信したCWの信号を68.33MHzのIF経由で28.33MHzへ変換されて問題なく解読されました。

これで今まではできなかったV/UHF帯Skimmingも可能となりました。特に、衛星通信で信号を見失ったときに便利そうです。なおFT-817は当然のこと、コンバーターとPerseusも軽量小型なので移動先でも手軽に使えますね。

オーバーヘッド型スキャナSV600導入

2年前に裁断機とオートフィーダ付きスキャナScanSnap iX500を導入し、快適な自炊生活を送ってきました。2年使い続けてiX500は素晴らしいパフォーマンスを示しておりますが、本を裁断し破壊することがスキャンを可能にする条件になるので、どうしてもスキャンできない本があります。例えば図書館から借りてきた本など。コピー機型のスキャナを使う手もありますが、同じScanSnapシリーズのオーバーヘッド型スキャナSV600を導入することにしました。お値段はiX500よりも高いです。

予想以上にサイズが大きく、正直置き場所に困ります(汗)。
SV600の最大の特徴は本を見開いた状態でスキャンし、ページの端を自動的に認識しページサイズに切り取りPDF化してくるというもの。早速試してみました。
ブックプレッサーという透明なプラスチック板で本を押さえてなるべく平面にし、スキャンすると、このように自動的に本のエッジを画像認識して、文字の歪みなどを補正しPDF化してくれます。うまくエッジ検出してくれた例。

しかし、画像認識に失敗することも多々あり、後で手動で本のエッジを指定していく作業を強いられ、これが結構時間がかかります。自動認識をうまくしてくれるやりかたがあるのかもしれません。

ページをめくると自動的にスキャンを継続する機能なども付いており、なかなか便利です。
さほど出番はないと思いますが、破壊できず、どうしてもスキャンして手元においておきたい本に出会ったときに活躍しそうです。

QSOパーティ参加

毎年恒例、年始のQSOパーティに参加しました。普段はご無沙汰の方もこの日だけは出てくる方が多いようで、ユニーク局を増やすのには絶好のチャンスなのでできるだけ多くQSOするようにしています。とはいっても貴重な正月休みなので、無線に没頭するのは昼間だけにしています。

初日の2日は主に短波電信/RTTYを運用しました。ちょっと寝坊して11時頃スタートしました。condxが相変わらず不良で14時過ぎには7MHzでも近距離がスキップしてしまいましたが、15時から3.5MHzが全国的にオープンしてたくさんQSOできました。夜は運用せず、V/UHFは次の日にとっておきました。

二日目の3日は暖かくWXも良好なので、大山の中腹、標高約600m(伊勢原市)へ移動して50〜1200MHzを運用しました。CWも少し運用しましたが、あまり呼ばれずほとんどが電話になりました。特に50MHzと430MHzは一度CQを出すと全く途切れることなく呼ばれ続けてしまいました。年始のご挨拶とOP名の交換などがあるのでコンテストスタイルのような短時間でQSOが済ませられず、さすがにくたびれました。16時過ぎると寒くなってきたしPCのバッテリーがなくなってきたので呼ばれて続けるのを断ち切って運用終了。トータル489QSOとなりました。

Turbo HAMLOGを使って過去のQSO状況を確認しながら交信していていました。すると割りと全バンド通じて初めてのQSOの方が多いようでした。特に430MHz FMではJH1やJI1コールの最近始めた or 復活した方が多いようで大変うれしく思いました。ざっと計算してみると83QSO、すなわち17%が1st QSOであり、ここ最近、コンテストを中心で運用していたせいか今回のNYPはかなり新鮮でした(汗)。

たくさんのQSOありがとうございました。今年もよろしくお願いします。

あけましておめでとうございます

新年あけましておめでとうございます。今年もよろしくお願いします。

月並みですが、自宅から見える富士山です。自分のマンションの壁に遮られて東京方面に向けられないのですが、V/UHFに出るときは富士山にビームを向けてます。サテライトでは富士山反射のせいでモービルのQRMがひどくて困るんですけど^^;

明日・明後日のNYPには各バンド・モードに出没する予定なのでよろしくお願いします。

2016年の十大ニュース

JF1DIRの今年の十大ニュース

さて十個もあるんでしょうか・・・

●初の海外移動運用成功
ようやく休暇をもぎ取り3月末にT8へ行ってきました。condx急低下する手前ギリギリだったのか、全世界から良く呼ばれました。全部で約5,000QSOと成功したのではと思います。


FCC試験受験し1day Extra取得
TecとGenの勉強しかしなくて無謀にもExtraを受験し1day Extraを無事(ギリギリで)合格。今思うと無謀でした。AF7YGのコールを取得。早く米国領で運用したいでござる。


●VE業も始める
受験した横浜VEチームの後押しですぐにVEになることにしました。受験生とした参加した次のセッションでは監督として参加したことになります。今現在でSession Countsが4になりました。


●10万QSO突破
開局以来総交信数が10万を超えることができました。10万超えたらちょっとペースダウンしました。最近はコンテスト中心の運用スタイルになってしまいました。


●FDで富士山移動運用で入賞
涼しい富士山5合目でFDに参加しV/UHFだけの運用でしたが、なんとかQRP部門で入賞できました。真夜中になると露が激しく外では運用できず宿に戻って寝ていました。なかなか快適でしたので来年も。


●今年は電信電話部門に注力
いままでは割りと電信部門での参加が多かったのですが、更なる高み?を目指すため電信電話、できればマルチバンド部門に顔を出すことにしました。ロケの選択、アンテナの設営、バンド・モードチェンジのタイミング把握等々、総合的なコンテスト力が試されるのは言うまでもありません。今年は東京コンテストの都外電話部門マルチにエントリーし3位取れました。関東UHFでは副賞もらえずでしたが4位入賞。ハムフェアで表彰されました。埼玉コンテストでは県外U/Vで4位。どれもなかなかレベルが高いです。


●地元のクラブ局でオール神奈川コンテストにM/M参加
出来たばかりの地元の非常通信クラブJQ1ZQQの仲間でオール神奈川コンテストにM/M参加してみました。CW運用できるOP確保とロケの面でV/Uがかなり苦戦しましたが、なんとか戦い抜き4位に入れました。茅ヶ崎にこんなコンテスト局があるのか?と周囲をビックリさせたみたい(汗)。以後お手柔らかにお願いしますm(_ _)m


●オール千葉コンテストにM/M参加
10月のオール千葉コンテストにコンテスタグループJO1YYPの一員として千葉県内某シャックから運用しました。今年も7MHzを担当しましたが、シングルオペでも一位取れるくらい頑張ったつもりです。そろそろ結果が出るはずなのですが・・・各局と力を合わせてコンテストに参加できるというのは素晴らしいことですね。


●IC-7300導入
久々に買って良かった満足しているリグに出会いました。最初はソフトウエアのバグで不満が募りましたが、ファームアップで無事直っています。この精細なスペアナを見ちゃうと他のリグがボロっちく感じてしまいます。IC-7610にも期待しちゃいます。


CQ出版社の単行本執筆
ご縁がありCQ誌増刊の「HF交信入門マニュアル」と単行本「アマチュア無線 コンテスト・オペレーション・ガイド」の一部原稿を執筆させて頂きました。来年は重版がかかりますように・・・・


なんとか十個書けました。さて、今日時点の2016年のQSO実績は以下のとおりです(T88IRの運用も含みます)。

開局以来のトータルは、

になりました。各局QSOありがとうございます。
Condx低下に伴いアクティビティが落ちると思いますが、来年もよろしくお願いします。

バッテリーの充放電特性の測定

久々に運用でないネタです^^;
移動運用などでバッテリーを使用していると、バッテリーの調子や寿命が気になるところです。バッテリーが完全にダメになっているときは、満充電時放電直後の電圧がおかしかったり(瞬時に電圧が低下する)やいつまで経っても満充電されないなどの症状が出るので判明しやすいのですが、そうでないときはなかなか分かりません。シールドバッテリーだと電解液の様子がまるで分かりません。バッテリーの診断方法はいろいろあるようですが、充放電特性を計測してみるのが基本だと思いますので、やってみました。

任意の電流値でバッテリーを定電流放電させて、バッテリーの端子間電圧の時間経過を測定すればよいということです。定電流負荷は電子負荷を使えば簡単です。自作の電子負荷装置を活用してみました。電圧の測定はなんでも良いのですが、手持ちのDMM(Keithley 2000)をシリアル通信によってロギングすることにしました。プログラミングもせっかくなのでLinux上のpythonでやってみます。Linuxでシリアル通信は初めての試みなので、備忘録代わりに設定から書いてみます^^;

まずはシリアル通信の設定方法。使用しているPCには当然RS-232Cポートがないので、USBシリアル変換アダプターを用意しました。バッファロのBSUSRC06という型番のもので、FTDIのFT232RLが使われています。他のものでも動くと思います。PCに挿してdmesgコマンドを使うとどこのポートに割り当てられたかわかります。

jf1dir@dir:~$ dmesg | grep 'USB' | tail
・
・
・
[ 6828.533327] usb 2-1.1: new full-speed USB device number 7 using ehci-pci
[ 6828.626947] usb 2-1.1: New USB device found, idVendor=0403, idProduct=6001
[ 6828.626955] usb 2-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 6828.626959] usb 2-1.1: Product: USB <-> Serial
[ 6828.627682] ftdi_sio 2-1.1:1.0: FTDI USB Serial Device converter detected
[ 6828.628132] usb 2-1.1: FTDI USB Serial Device converter now attached to ttyUSB0
jf1dir@dir:~$ 

ここでは/dev/ttyUSB0に割り当てられたことがわかります。ubuntuだけの問題なのか、このポートは読み書きの権限が一般ユーザーにありません。

jf1dir@dir:~$ ls -l /dev/ttyUSB0 
crw-rw---- 1 root dialout 188, 0 1229 20:40 /dev/ttyUSB0
jf1dir@dir:~$ 

この問題を回避する方法で一番簡単なのが、/etc/udev/rules.dの下に.rulesという拡張子のファイル(ファイル名はなんでもOK)に

KERNEL="ttyUSB*", MODE="0666"

と書いておけばOKです。sudo service udev restartで再起動してもう一度変換アダプターをPCに挿すと書き込みの権限がついた状態でポートが生成されているはずです。

次に、DMMのRS-232C端子にUSBシリアルアダプタを接続して動作チェック。WindowsならハイパーターミナルやTeratermに、Unixならばgtktermで接続し、SCPIコマンド":INIT"の後、":MEAS:VOLT:DC?"とすると電圧をワンショット測定し測定結果が表示されるはずです。SCPIコマンドはメーカーに関係なくほぼ共通です。詳しくはDMMのマニュアルを参照^^;

次にハードの設定。バッテリーの端子とDMMを接続します。今回はマルチプレクサも用意できたのでスキャナカードのch1にバッテリー端子間、ch2に電子負荷の電流値シャント端子を接続しておきました(電流値を電圧値としてセンス)。

DMMとの通信チェックがOKならば、次に、pythonのシリアル通信ライブラリのpySerialをpipを使ってインストールします。せっかくなのでpython3用にインストールしました^^;

ロギングプログラムのpython3ソードコードはこちら。測定停止はCTRL+Cで強制停止させてます^^;

import serial
import time
ser = serial.Serial(port = '/dev/ttyUSB0', baudrate = 9600, 
                    bytesize = serial.EIGHTBITS,
                    parity = serial.PARITY_NONE,
                    xonxoff = 0,
                    rtscts = 0,
                    timeout = 1)
start = time.time()
ser.write(b':INIT:CONT\r\n')
ser.write(b':SENS:VOLT:NPLC 1\r\n')
while True:
	time.sleep(10)
	ser.write(b':ROUT:CLOS (@1)\r\n')
	ser.write(b':MEAS:VOLT:DC?\r\n')
	v_value = float(ser.readline().decode('utf-8'))
	ser.write(b':ROUT:CLOS (@2)\r\n')
	ser.write(b':MEAS:VOLT:DC?\r\n')
	i_value = float(ser.readline().decode('utf-8')) / 0.0317
	elasped_time = float(time.time() - start) / 60.0
	print("T:%6.2f, V:%10.6f, I:%10.6f" % (elasped_time, v_value, i_value))
ser.close()

python3のpySerialでは送受信データはstr型ではなくbytes型なのでb'foobar'のようにbをつけて明示的にbytes型にしないとエラーが出ます。センス電圧を0.0317で割ると電流値が得られるのでそう指定しておきます。
サンプリング間隔はsleep文で10秒に設定したのですが、NPLC(積分時間)が1秒なので測定に各チャンネル1秒必要になります。従って、約12秒ほどのサンプリング間隔となっています。

プログラム開始とともに電子負荷をONにすると定電流放電が始まります。ログファイルをグラフ化するとこのような放電特性が得られます。

ここで例としてかなり使い古した10.8V(単セル3.6V)10Ahのリチウムイオン電池を3A(0.3C)の定電流で放電したときの放電特性を示しました。約90分で電圧が急降下していることがわかりますが、90分ではまだ4.5Ahです。従って、だいぶ古くなっていることがわかりました(汗)。丁寧に調べるには放電電流を変えて、放電停止(1セルあたり2.5Vくらい)まで放電して特性を調べるとよいようです。