ブログを検索

2025/10/24

クルマに付けてる第一電波の電動アンテナ基台 K9000 がアンテナ寝たままで起きなくなった💦

幸いなことに起きたまま寝なくなるんじゃなく寝たまま起きないので車庫入れは大丈夫

いつもの無線屋さんで相談したらソッコーで基台の殻割って直してもらえた

どうやら接点が腐食して接触不良だったらしく軽く磨いて接点復活剤をスプレーして直ったとのこと

よくある症状って言ってたけどワタクシのようなシロートには手に負えなかった💦


2025/03/17

違法無線局?不法無線局?が大量発生

 ヨゴデでは毎年冬になると違法局だか不法局がVHF帯に大量発生します

暖冬で雪が少ない年は発生しませんでしたが今年は雪が多かったので発生しています

使う周波数は、気にかけているのか分かりませんが通常の音声通話の周波数でなく広帯域データの周波数で多数の局が音声通話しています

で、そうなるとAPRSは壊滅的な影響を受けます

特にワタクシのような安モノ受信機(RTL-SDR V3)だと隣接する周波数も聞こえてしまう(イコール、デコードしてしまう)状態なので144.68MHzで音声通話されると144.66MHz(1200bps)はまったくデコードできなくなってしまいます。

そこで無いアタマを使って、もちろんお金も無いのでなんとなく数年かけてダラダラ考えていたところ、ようやくひらめきました

調べてみると、男性の話し声は85Hzから180Hzの高さ、1200bpsのパケットはAFSK変調で1200Hzと2200Hzを使って0/1を表現しているらしいので音声成分の(音声)周波数をカットすればいいんじゃないだろうか、と思いました

soxコマンドで受信音声データに対して300Hzのハイパスフィルタを試したところ、完全ではありませんがかなりいい感じに音声局の影響を抑えることができました

定量的な実験はしていませんが144.68MHzで通話されていてもほとんどの場合デコードできるようになりました

変更前の起動スクリプトの内容
rtl_fm -M fm -f 144.66M -s 24000 - | direwolf -c direwolf1200.conf -d u -r 24000 -D 1 -t 0 -B 1200

変更後の起動スクリプトの内容(赤字部分を追加)

rtl_fm -M fm -f 144.66M -s 24000 - | sox -t raw -r 24000 -b 8 -e unsigned-integer -c 1 - -t raw - highpass 300 | direwolf -c direwolf1200.conf -d u -r 24000 -D 1 -t 0 -B 1200

パラメータを煮詰めればより良い結果が出るかもしれませんが、雪の多い冬だけの対策なのでこれでヨシとしました

あ、これはAFSKの1200bpsの場合のハナシでGMSKの 9600bpsでは実験していません


2024/09/16

MySQL で SELECT into outfile 出来なくてハマった件

 Windows上の MySQL で SELECT into outfile でテーブルの内容を CSVファイルにエクスポートしようとしてハマったので残しておく

環境
Windows10 Pro バージョン 1809
MySQL 8.4.0

という環境で

SELECT * FROM table1
into outfile 'C:/Users/User/Downloads/file.csv' CHARACTER SET SJIS fields terminated by ',' enclosed by '"' escaped by '"' lines terminated by '\r\n';

としてダウンロードフォルダに file.csv を作りたかったが下記エラーになる

General error: 1 Can't create/write to file 'C:\Users\User\Downloads\file.csv' (OS errno 13- Permission denied)

my.ini に

secure-file-priv="C:/Users/User/Downloads"

を記述してあり
SELECT @@global.secure_file_priv;
で確認すると C:\Users\User\Downloads\ になっているので MySQL の設定はOKそう

C:/Users/User/Downloads フォルダのプロパティで セキュリティタブ選択 → 編集 → 追加 → 
「選択するオブジェクト名を入力してください」というテキストボックスに
NETWORK SERVICE と入力 → OKボタン押下
セキュリティタブ選択直後のウインドウに戻ったら NETWORK SERVISE 行を選択し、書き込みの許可にチェックを入れ OKボタン押下
これで解決した。つまり MySQL はネットワークを介してファイルを生成するぽく!? Windowsのセキュリティ設定不足がエラー原因だった
日本語の対処情報は見つけられなかったのでレアケースなのかな???
それともワタクシは検索が下手なのかな???
ともあれ解決したのでOK

2024/09/13

地理院地図上にピン立てしてみた

 仕事で地図上に複数のピンを立てる必要が出てやってみたことのメモ

不特定多数の人に見てもらうサイトを作っていて、「市区町村」を選ぶとそこを中心にした地図を表示し、あらかじめ登録していた5000件ほどの場所をピン表示することになった。この地図は別タブで開く

有料のAPIは使わず無料でやれることが条件

サーバサイドから見ると、フロントから市区町村がPOSTされてくるので該当する役所の緯度経度を求めてそれを中心にした地図を表示、地図にはあらかじめピンを登録しておく。みたいなイメージ

まず思いつくのが Googleマップでピンを立てることだが、手動で複数のピンを立ててみて公開することは出来たものの、5000件の場所を手動では登録したくないのでアップロードで登録しようとしてみたらレイヤー毎に2000件という制限があるようで面倒になって断念

次に Googleマップでピンを立てる別サービスを探して2つほど見つかったが既に廃止されているサービスもあって、継続して使っていけるか不安になって断念

地理院地図に複数ピンを立てるのは簡単のようなのでやってみたら本当に簡単だった。表示時に中心緯度経度も指定できたのでこの手順をメモとして残しておく

まずはピン立てする元データのCSVファイルを用意する

中身はこんな感じのワタクシオリジナルのフォーマットだがある程度自動認識してくれるようで 緯度,経度 が含まれているCSVファイルならフォーマットや項目は自由で良いようだ

ちなみにファイル名は何でもよいが文字コードはs-jis

コード,市区町村,緯度,経度,URL
1000,北海道,43.064325,141.346878,https://www.pref.hokkaido.lg.jp/
1100,札幌市,43.062061,141.354432,https://www.city.sapporo.jp/
1101,札幌市 中央区,43.061434,141.353649,http://www.city.sapporo.jp/chuo/
1102,札幌市 北区,43.090693,141.340882,http://www.city.sapporo.jp/kitaku/

地理院地図上にCSVファイルをドロップする

自動でCSV内の「緯度」「経度」列を認識するので「上記の内容で読込開始」ボタン押下

地図にピンが表示されるので、地図中心位置をいい感じに手動調整する

地図のズームレベルをいい感じに手動調整する 横手市湯沢市レベルだとズーム12くらい!?秋田市盛岡市レベルだとズーム10くらい!?

↑ このズームレベルや中心位置が後で表示する際の初期値として再現されるので調整するのだ

地理院地図で画面上部「共有」→ 「</>」 クリック → 「上記のHTMLを保存」ボタン押下で、テキストボックスに表示されたHTMLをファイル出力すればピン立てした状態で地図を保存できる

「※HTML は一時的なものとしてご利用ください。作図情報は、作図機能を使ってファイルに保存することをおすすめします。」とあるがJavaAcriptの処理が重くてブラウザが応答しなくなった。ピンの数が多すぎなのかな!?

あとはこのHTMLファイルをブラウザにドロップすればいつでもピン立て済みの地理院地図を表示できる

なお、HTMLファイルの中をテキストエディタで見てみると

var vURL_Site = "/index_pm.html?postmessage=1#

で始まる行がある

実際には

var vURL_Site = "/index_pm.html?postmessage=1#10/39.166271/140.62088/&base=std&ls=std&disp=1&vs=c1g1j0h0k0l0u0t0z0r0s0m0f1";

のようになっていて

var vURL_Site = "/index_pm.html?postmessage=1#

に続いている部分を書き換えて変更することで表示を微調整することが可能

水色部分の数字は地図のズームレベルで数字が大きいほど拡大表示する(最大値18)

黄色部分は地図の中心を指定する緯度(世界測地系)

緑色部分は  〃                        経度

実際にサイトで使用する場合、これらの値をサーバサイドで指定された市区町村によって書き換えて表示するようにした


2024/07/13

iGate JL7TUS-15 に受信プリアンプ入れた

 実験で運用している APRS JL7TUS-15 (144.66MHz 1200bpsのみ) に受信プリアンプを入れました。

JL7TUS-15 の運用場所は JL7TUS-10 と同じ部屋でアンテナを3メートルほど離しています。

受信プリアンプは COSMOWAVE の LNA-BPF144C というものです。

運用中の JL7TUS-10 1200bps で効果があることを確認して使っているのと同じものです。

かなり前に買っていたプリアンプなんですが、適当な電源がなくて放置していました。

昨日の夕方、ハードオフでジャンクACアダプタ(6V 500mA)を330円で買ってきたので開放電圧を測ってみたら 5.85V でプリアンプが要求する 6V~15V に届かない 汗

でも繋いでみました。さて効果あるかな?

本日はこれから北上市にクルマで移動するのでプリアンプの効果が楽しみです

2024/06/21

LRA1 BASIC で気になったことや処理速度実験

 気になったのでメモ

「その1」はプログラムの書き方によっては受信データロストに繋がるという件

気付いた都度追記していく

その1 知らずにデータをロストしていた orz

下記プログラムで150行目で Stat=10のときがある。
タイミングでそうなるということは別の考え方をするとStatを確認したら速やかにStat=0をセットしないとデータをロストする確率が高まる。しかもロストしていることに気付かない。ここは行数をケチったりコードの見た目を綺麗にするのは考えないようにする

発生頻度

送信側は5分毎送信。受信側は RECV 0 で常に受信待ち受け、100msec毎受信データ有無を確認している状態
1時間で12回受信のうち4回がこのタイミングになった。結構な頻度でロストしていた 汗
尚、送信側と受信側は5メートルの距離で見通しできる場所に置いている

受信プログラム
10 RxStop:Stat=0
20 Recv 0
100 Do
110   If Stat=10 Then
120     Stat=0
130     Print Rxd
140   Else
150     ' ここでstat=10のときがある
160     If Stat!=0 Then
170       Print "Error Stat=";Stat
180     EndIf
190     Stat=0
200   EndIf
210   Delay 100
999 Loop

なので下記のように 190行目削除。160行目~170行目修正と追加
10 RxStop:Stat=0
20 Recv 0
100 Do
110   If Stat=10 Then
120     Stat=0
130     Print Rxd
140   Else
150     ' ここでstat=10のときがある
160     If Stat!=0 && Stat!=10 Then
165       S=Stat:Stat=0
170       Print "Error Stat=";S
180     EndIf
190     Stat=0
200   EndIf
210   Delay 100
999 Loop

その2 ループ方法やコメント有無の処理速度への影響


BASICインタプリタ全盛の1980年代前半にやってたような簡易テストをしました。
ワタクシ当時は中学~高校生 遠い目
下記コードで簡易的に試した結果をまとめると

・ループ方法は For Next が一番速い Step有無は影響なし。ただし無限ループとしての Do Loop や Goto は不明。exit条件のIf文を入れるとFor Nextより遅い事だけ判った
・コメント行があると遅くなる
・コメント行はコメント文字列が長いと遅くなる
・I=I+1 より I++ のインクリメントが速い
・マルチステートメントは遅くなる
・ラベル名が長いと遅くなる
問題点を挙げてるわけじゃなくBASICプログラム書くときの目安としてテキトーに実験してみた
プログラムエリアの消費量との兼ね合いがあると思うのでマルチステートメントは使うところは使う
分かりやすさとの兼ね合いでラベル名も最低限の長さはとる
結論は実験結果を参考にしつつもそもそも処理速度は求めていないので書きやすいように書けばいいだけかな

■For Next これが基準 所要時間19秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 For I=0 To 100000 Step 1
140   I=I+1
150   J=J+1
160   'NOP
170 Next
180 Print "20"; Datetime (Clock);".";Milisec

■Step省略 効果なし 所要時間19秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 For I=0 To 100000
140   I=I+1
150   J=J+1
160   'NOP
170 Next
180 Print "20"; Datetime (Clock);".";Milisec

■インクリメント 効果あり 所要時間14秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 For I=0 To 100000
140   I++
150   J++
160   'NOP
170 Next
180 Print "20"; Datetime (Clock);".";Milisec

■コメント行増 逆効果あり 所要時間45秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 For I=0 To 100000
140   I++
150   J++
160   'NOP
161   'NOP
162   'NOP
163   'NOP
164   'NOP
165   'NOP
166   'NOP
167   'NOP
168   'NOP
169   'NOP
170 Next
180 Print "20"; Datetime (Clock);".";Milisec

■すべてのコメント削除 効果あり 所要時間11秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 For I=0 To 100000
140   I++
150   J++
170 Next
180 Print "20"; Datetime (Clock);".";Milisec

■コメント1件 「■インクリメント 効果あり」の再掲 所要時間15秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 For I=0 To 100000
140   I++
150   J++
160   'NOP
170 Next
180 Print "20"; Datetime (Clock);".";Milisec

■コメント長増 逆効果あり 所要時間19秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 For I=0 To 100000
140   I++
150   J++
160   'NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOP
170 Next
180 Print "20"; Datetime (Clock);".";Milisec

■マルチステートメント 逆効果あり 所要時間18秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 For I=0 To 100000
140   I++:J++
160   'NOP
170 Next
180 Print "20"; Datetime (Clock);".";Milisec

■For Next から While Loopへ変更 逆効果あり 所要時間38秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 While (I<=100000)
140   I++:J++
160   'NOP
170 Loop
180 Print "20"; Datetime (Clock);".";Milisec

■while LoopからDO~LOOP WHILE へ変更 逆効果あり 所要時間52秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 Do
140   I++:J++
160   'NOP
170 Loop While (I<=100000)
180 Print "20"; Datetime (Clock);".";Milisec

■ForからDo If exitへ変更  逆効果あり 所要時間45
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 Do
135   If I=100000 then exit endif
140   I++:J++
160   'NOP
170 Loop
180 Print "20"; Datetime (Clock);".";Milisec

■Do If exit から goto If End へ変更  逆効果あり 所要時間61秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 _looppoint
135   If I=100000 then Print "20"; Datetime (Clock);".";Milisec::End endif
140   I++:J++
160   'NOP
170 Goto _looppoint
180 Print "20"; Datetime (Clock);".";Milisec

■ラベル文字列長増  逆効果あり 所要時間147秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 _looppoint_looppoint_looppoint_looppoint_looppoint_looppoint_looppoint_looppoint_looppoint_looppoint
135   If I=100000 then Print "20"; Datetime (Clock);".";Milisec::End endif
140   I++:J++
160   'NOP
170 Goto _looppoint_looppoint_looppoint_looppoint_looppoint_looppoint_looppoint_looppoint_looppoint_looppoint
180 Print "20"; Datetime (Clock);".";Milisec

■ラベル文字列長短 効果あり 所要時間53秒
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 _l
135   If I=100000 then Print "20"; Datetime (Clock);".";Milisec::End endif
140   I++:J++
160   'NOP
170 Goto _l
180 Print "20"; Datetime (Clock);".";Milisec


おまけ実験 ループの中で For Next が一番速いなら・・・
■For Nextで無限ループ
100 Print "20"; Datetime (Clock);".";Milisec
110 RxStop
120 I=0:J=0
130 For I=1 To 2
140   I=1
170 Next
180 Print "20"; Datetime (Clock);".";Milisec




2024/06/18

[TIPS] LoRa 端末 LRA1 日の出までの秒数計算

注意:これは「超」簡易計算です。ここで算出した日の出までの秒数は数分のズレがあります

 ある地点の日の出、日の入りの時間を月毎に取得したので表っぽくしておく
カッコ内は0:00からの経過秒数 

日付  日の出       日の入
---- ----------- ------------
 1/1 6:54(24840) 16:29(59340)
 2/1 6:42(24120) 17:01(61260)
 3/1 6:07(22020) 17:34(63240)
 4/1 5:19(19140) 18:05(65100)
 5/1 4:36(16560) 18:35(66900)
 6/1 4:09(14940) 19:03(68580)
 7/1 4:11(15060) 19:13(69180)
 8/1 4:34(16440) 18:54(68040)
 9/1 5:03(18180) 18:12(65520)
10/1 5:31(19860) 17:24(62640)
11/1 6:02(21720) 16:40(60000)
12/1 6:35(23700) 16:19(58740)

LRA1のインタラクティブモードで
? datetime(clock)
24/06/18 09:14:35
OK
と返ってくる

「LRA1_ソフトウェアリファレンスマニュアル」によると
TOINT(文字列 [、[オフセット] [、[文字数]]])   文字列中の指定部分を数値に変換
とのこと

左記の ’24/06/18 09:14:35’ の中の '06' と '18' を「整数として」抜き出す
? toint(datetime(clock), 3,2)
6
? toint(datetime(clock), 6,2)
18
それぞれ整数で取れる

'09:14:35' の '09' '14' '35'を「整数として」抜き出して本日0時からの経過秒数算出
? toint(datetime(clock),9,2)*3600 + toint(datetime(clock),12,2)*60 + toint(datetime(clock),15,2)
33275
OK

ここまでを踏まえて BASICで書いてみる

10 Gosub _until_sunrise_time
20 If I>0 Then
21   '算出値取得した 
22   '日の出までSleepしたり日の出から晴れるのが分かっている場合は少し早く稼働したり
30   Print "until_sunrise_time ";I
40 Else
41   ' エラーだろう
50   Print "NOP ";I
60 EndIf
999 End


10000 ' 次の日の出までの秒数Iを返却する 0はエラー 変数IJN使用
10002 ' 毎月1日~9日  :1日の日の出時刻までの秒数算出
10003 ' 毎月10日~20日:(今月1日と次月1日の中間時刻までの秒数算出
10004 ' 毎月21以降    :翌月1日の日の出時刻までの秒数算出
10010 _until_sunrise_time
10020   N=ToInt( Datetime (Clock),3,2)
10040   '0時から現在までの経過秒数
10050   I=ToInt( Datetime (Clock),9,2)*3600+ToInt( Datetime (Clock),12,2)*60+ToInt( Datetime (Clock),15,2)
10060   ' 下記  ToInt( Datetime (Clock),6,2)<10 Then は上旬 Elseif ToInt( Datetime (Clock),6,2)>20 Then は下旬 Elseは中旬
10070   If N=1 Then If ToInt( Datetime (Clock),6,2)<10 Then J=24840 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=24120 Else J=24480 EndIf
10080   ElseIf N=2 Then If ToInt( Datetime (Clock),6,2)<10 Then J=24120 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=22020 Else J=23070 EndIf
10090   ElseIf N=3 Then If ToInt( Datetime (Clock),6,2)<10 Then J=22020 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=19140 Else J=20580 EndIf
10100   ElseIf N=4 Then If ToInt( Datetime (Clock),6,2)<10 Then J=19140 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=16560 Else J=17850 EndIf
10110   ElseIf N=5 Then If ToInt( Datetime (Clock),6,2)<10 Then J=16560 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=14940 Else J=15750 EndIf
10120   ElseIf N=6 Then If ToInt( Datetime (Clock),6,2)<10 Then J=14940 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=15060 Else J=15000 EndIf
10130   ElseIf N=7 Then If ToInt( Datetime (Clock),6,2)<10 Then J=15060 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=16440 Else J=15750 EndIf
10140   ElseIf N=8 Then If ToInt( Datetime (Clock),6,2)<10 Then J=16440 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=18180 Else J=17310 EndIf
10150   ElseIf N=9 Then If ToInt( Datetime (Clock),6,2)<10 Then J=18180 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=19860 Else J=19020 EndIf
10160   ElseIf N=10 Then If ToInt( Datetime (Clock),6,2)<10 Then J=19860 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=21720 Else J=20790 EndIf
10170   ElseIf N=11 Then If ToInt( Datetime (Clock),6,2)<10 Then J=21720 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=23700 Else J=22710 EndIf
10180   ElseIf N=12 Then If ToInt( Datetime (Clock),6,2)<10 Then J=23700 ElseIf ToInt( Datetime (Clock),6,2)>20 Then J=24840 Else J=24270 EndIf
10190   Else
10200     I=0:Return
10210   EndIf
10220   '下記 I>28800 Then I=J+(86400-I) は0時前の場合の補正
10230   If I>28800 Then I=J+(86400-I) Else I=J-I EndIf
19999 Return


テストが足りないかもしれません。流用する際は十分検証してください
そもそもClock値はズレ進んでしまうのでこんな大雑把な計算にしました

2024/06/17

[TIPS] LoRa 端末 LRA1 時刻設定(リモート側)

 リモート局LRA1はスタンドアロンで動くのでラズパイや外部マイコンからの時刻設定は出来ない
GPSも無い、RTCバックアップも無い
という状況で基地局LRA1から時刻をLora通信で受け取って自身にセットしてみた

最初に決めごととして通信先頭が"002" だったら時刻設定コマンド、その場合続いて Clock値が入ってくるとした場合


■基地局LRA1

10  Send "002";Clock
20 End

■リモート局LRA1

10 Recv 5000
20 If Stat=10 Then
30   If ToInt(Rxd(8))=48&&ToInt(Rxd(9))=48&&ToInt(Rxd(10))=50 Then
40     Gosub _calc_clock:Clock=B
50   Endif
60 Endif
70 Stat=0
80 Print "20";DATETIME(Clock)
999 End

30000 _calc_clock
30010 B=((Chr(ToInt(Rxd(11))))*100000000)
30020 B=B+((Chr(ToInt(Rxd(12))))*10000000)
30030 B=B+((Chr(ToInt(Rxd(13))))*1000000)
30040 B=B+((Chr(ToInt(Rxd(14))))*100000)
30050 B=B+((Chr(ToInt(Rxd(15))))*10000)
30060 B=B+((Chr(ToInt(Rxd(16))))*1000)
30070 B=B+((Chr(ToInt(Rxd(17))))*100)
30080 B=B+((Chr(ToInt(Rxd(18))))*10)
30090 B=B+(Chr(ToInt(Rxd(19))))
39999 Return

こんな感じで基地局LRA1から貰ったClock値をリモート局LRA1でセットする

これで Clock値がズレていく件は優先度が低くなって一旦保留にできそう

基地局LRA1でラズパイからClock値をセットするのはこちら

以上


2024/06/16

【無線機発作】FTM-500Dほしい病を発症した

 見てしまった・・・

先日、無線屋さんに来てさらっとFTM-500Dを購入した方がいました

知ってる方なんですが、目の前でセットアップを始めたのを食い入るように見ているとワタクシのFTM-300D がおもちゃに思えたったのでした ← ここはAdhocでワタクシの第3言語岩手弁

それから3週間経ち、給料が入ったので今から FTM-500D を買いに無線屋さんに行ってきます

お値段は5マンスウセンエンだっけか!?

ワタクシ出力何ワットまでだしていいんだっけ?3アマだから200Wくらい?

以前にも増してだいぶアタマが弱ってきているように感じつつ詳細な購入仕様を考えながら行ってきます


数時間後、


買ってきました

FTM-300 に比べると見た感じも操作した感じも高級感があります

残念ながら FTM-500 の200W機はありませんでしたのでしかたなく50W機です

更に残念なことは、機能や性能は(ワタクシの使い方では)いま使っている FTM-300 とあまり変わらないことです

後日、軽トラに設置しようと思います

増設申請中なのでセットアップは後でやることにします

ほしくてたまらなくなって買ってきたら放置とか

2024/06/15

【諦めて別の方法に】LRA1でClock値から日の出日の入り時刻を導いてみようとした

はじめにお断りしておきます
「Clock値から日の出日の入り時刻を導いてみよう」というのは諦めて別の方法を採りましたっていう話です


ソーラーパネルとスーパーキャパシタを使った電源で、夜間できるだけ多くの時間LRA1を動かしたいときがある「かも」しれない
例えば田植え前の田んぼに水を入れ始めて数週間は夜間の水量の推移を知りたい、早朝、それを参考に行動計画を立てるのだ
とかあるかも。田んぼやってないですが

「バッテリー容量増やす」というのはできないです
LRA1含むソーラーバッテリーシステム一式で200g以内の重さが絶対条件なのです。現在の試作機の重量は160gくらい。これに防水ケースなどの重さが加わります
リモート局LRA1なので外部マイコンでやる、というのは考えないです

日の出まであと何分かがわかればどれだけ電力消費していいか参考にできると思う。現在のバッテリー電圧と日の入りまでの時間から間欠運転時間の調整もできる

そこでLRA1のBASICで日の出日の入り時刻をClock値から求めてみる

ちなみに日の出少し前や日の入り後しばらくは空が明るいけど、実験しててわかったのは空が明るいだけたとソーラーパネルの電圧として有効な数字(1.8V以上)は出ない
まあ、使っているソーラーパネルの特性なんですけどね
2枚セットで税込1299円のソーラーパネル 笑 

日の出日の入り時刻の計算方法を調べてみたら結構な量のコードになることが分かった 汗
知りたい都度計算していたら計算機資源の無駄なので表で持てばいいやに着地
その表を探してみたらちょっと情報が少ない。。。いや日の出日の入りを検索できるサイトはたくさん有るんですが、欲しいのはピンポイントで標高を考慮して日の出日の入りを見れるサイト

すばらしい機能です

知りたい日付を入力して地図で設置予定の山の中をピンポイントで指定すると

2024年06月15日の日の出・日の入り(標高333m)
日の出 04:07 南中時刻 11:39 日の入り 19:10

のように表示してくれます。これはすごい

ブラウザの「開発者ツール」でPOST値などチラ見してみるとどうやら
https://www.tsukuba.co.jp/sun-gis/json.php?latlng=39.321052031997944%2C140.5691993236542&ymd=2024-06-15
のように緯度経度と日付を指定してブラウザのURL入力欄に入れるとJSONでレスポンスを返してくれる親切設計
↑ 緯度経度は適当な場所を指しています。設置予定場所ではありません

毎日の日の出時間はいらないので今年12か月分、毎月1日と15日のデータを入手しました
大変助かりますありがとうございます

ブログタイトルの「Clock値から日の出日の入り時刻を導いてみよう」は、やりませんでしたが欲しいデータを入手できました
ちなみに年によって日の出日の入り時刻に大きな差は無いとのことで同じデータを毎年使っていけるようです



LRA1ソーラーパネル電源実験中

 ソーラーパネルとスーパーキャパシタを繋いだ電源を実験中なんですが
使っているキャパシタは5.4V 25Fで容量は大きいのか小さいのかわかりません
キャパシタとして考えるととてつもなく大容量なんですが、蓄電池的に考えると 5.4V 18.75mAh!?なのでものすごく小さいです
ソーラーパネルとLRA1
ひどい結線ですが
ベースに見える黒い四角の板はソーラーパネル(2.5W5V/500mA)の裏面
左側の銅色の部分は銅箔テープでベタグランド
銅箔テープに囲まれた中にあるのはDCDCモジュールとショットキーダイオード
銅箔テープの右に横たわっているのがスーパーキャパシタ(5.4V 25F)
スーパーキャパシタの上に張り付けているのは電圧センサ
で右下にLora通信用LRA1です
ちなみにベタベタ貼っている黄色いセロハンテープ状のものは中国製カプトンテープもどきです
「もどき」ですが半田コテをあてても大丈夫な耐熱性があって何より安いので重宝しています
セロハンテープ感覚で消費できます
これで全体重量154g

これを南に向けて垂直に立てかけておくと今の季節(6月中旬)だと朝5時過ぎにLRA1が起動します。夕方20時過ぎにDCDCモジュールの動作下限2.0Vを切ってLRA1は停止します
晴れや薄曇りであればです。天気が悪く暗い日は10時くらいにLRA1が起動して夕方17時過ぎに停止します
充放電状況を観察する実験中なのでLRA1は起動できる間は起動したままで5分毎にキャパシタの電圧を送信しています

LRA1が停止するのはキャパシタ電圧が
DCDCモジュールの動作下限2.0Vを切って電源供給が止まることなので、余裕をもって2.5Vくらいで自分からDeep Sleepに移行すれば夜間も合計数分ほど間欠動作が可能と思います
いまはこんな状況


2024/06/13

【復旧済】 アメダスデータ取得が止まっていたので復旧させた

 自動で横手市のアメダスデータをチラ見してsqlite3のデータベースファイルに蓄積しているんですが

$ ls -l measure.db
-rw-r--r-- 1 pi pi 44851200  4月  6 08:00 measure.db
4月6日 08:00 を最後にデータを取得出来ていないことに気付いた
取得するスクリプトを手動で実行してみると
database disk image is malformed
と出る

sqlite3のデータベースファイルが論理的に壊れているぽい

再度確認してみると
$ sqlite3 measure.db  "PRAGMA integrity_check"
Error: database disk image is malformed
やっぱり壊れている

$ ls -l measure.*
-rw-r--r-- 1 pi pi 44851200  4月  6 08:00 measure.db
44MBytesか、ずいぶん大きくなったな 汗

下記で修復
$ sqlite3 measure.db ".recover" | sqlite3  temp.db
このくらいのサイズのデータベースファイルだと60秒かかった


修復して出来た temp.db ファイルを正規のファイル名に変更して復旧した
$ mv temp.db measure.db

$ ls -l measure.*
-rw-r--r-- 1 pi pi 31346688  6月 13 08:46 measure.db

作り直しでサイズが小さくなった

以上

2024/06/05

[TIPS] LoRa 端末 LRA1 時刻設定

 LoRa 端末 LRA1 は独自の BASIC言語でプログラムが書けて、電源さえ付ければ単体でプログラムの通り動作するんで助かっていますというかまだ運用していないので助かりたい、という段階

で、プログラムを書いていろいろ実験しつつ、ひとつ困ったことがありました
それは時刻というか日時設定です
電源が入ってからカウントアップするクロックはあるものの、電源が入るたびに0スタートになります。
そう、RTCの電源バックアップが無いのです。

じゃあ電源バックアップするかRTCを後付けするか考えると微小ながら電力を喰うのでNoです
GPSモジュール付けて時刻取得するか?もっと電力を喰うのでNoです

で、考えてみました


BASICで Print DATETIME(Clock)
のように DATETIMEコマンドを文字列中で使用したとき Clock変数は
「2020/1/1 00:00:00」からの経過秒数
で扱われるとのことなので

現在unixtimeから「2020/1/1 00:00:00」の unixtime 1577804400 を引けば Clock値がでます
Clock変数は LRA1のコマンドで Clock=1 のように設定できるので
ラズパイとLRA1をUART接続し、ラズパイから下記シェルコマンドを入力してLRA1のClockを設定

× uxtime1=$(date '+%s');uxtime2=$(($uxtime1-1577804400));echo -e "Clock=${uxtime2}\n" >/dev/ttyS0

〇 uxtime1=$(date '+%s');uxtime2=$(($uxtime1-1577804400));echo -e "Clock=${uxtime2}\r\n" >/dev/ttyS0

# 「/dev/ttyS0」部分は環境によっては「/dev/ttyAMA0」とか他のものになっているかも

この時 LRA1に UARTでコンソール接続していると device busy みたいな感じのエラーになるので注意が必要


Clockが設定できたらあとは LRA1のBASICプログラムで
Print "20";DATETIME(Clock)
とかすれば
2024/06/05 10:25:17
のように表示されてめでたし

あ、これはラズパイ接続している基地局LRA1のハナシで
リモートLRA1 はスタンドアロンなのでClock値をセットするとしたら別のやり方になります
それはこれから実験してみます

と思ったけど厳密な時刻を求めないのなら基地局が受信したときの日時をデータ発生日時として使えば良いのでリモートLRA1 の時刻合わせは要らないかな?

PS. 2024/06/11 に気がついたが、Clockを設定しても1日で10分以上ズレ進む。こんなものなのかな?個体差?ま、基地局側は毎日時刻合わせすればいいか

2024/06/13 また気付いた。時刻がズレていくのはリモート局LRA1だけみたい
10分で4、5秒くらい進む
1日あたり720秒(12分)か

Delay や Sleep に入る前や後で待機時間のようなものがあるんだろうか?
いやリモート局のClockは進んでいくんだから待機時間じゃない。何だろうか???
LRA1ファームウェアは基地局とリモート局で同じもの
>ver
i2-ele LRA1
Ver 1.26.f+
OK

いろいろ試して切り分けしたいけど
いま動かしてる2台のLRA1はソーラーバッテリーシステムの実験で使用中だから止めたくない
切り分けのため3台目のLRA1を開封する時が来たか・・・汗

■基地局側LRA1 BASICプログラム(Clockズレない)
  1 RxStop
 10 Recv 0
100 _LOOPSTART:
200   If Stat=10 Then
210     Print "20"; Datetime (Clock);" From:";Rxdw(2);" RSSI:";Rssi;" ";Rxd
220     Stat=0
230   Else
240     If Stat!=0 Then
250       Print "20"; Datetime (Clock);" Error! stat:";Stat
260       Stat=0
270     EndIf
280   EndIf
400   Delay 100
999 Goto _LOOPSTART

■リモート局LRA1 BASICプログラム(Clockズレる)
110 SpiBaud=0
120  ^=""
999 RxStop
1000 Do
1010   For I=1 To 5 Step 1
1020     C=Adc(10)
1030     If I=1 Then V=C EndIf
1040     If I=2 Then W=C EndIf
1050     If I=3 Then X=C EndIf
1060     If I=4 Then Y=C EndIf
1070     If I=5 Then Z=C EndIf
1080     Gosub _wait
1090   Next
1100   ^="Clock=";Clock;" ";V/250;".";Form("D02",((V-((V/250)*250))*100)/250);" ";W/250;".";Form("D02",((W-((W/250)*250))*100)/250);" ";
1110   ^=^;X/250;".";Form("D02",((X-((X/250)*250))*100)/250);" ";Y/250;".";Form("D02",((Y-((Y/250)*250))*100)/250);" ";Z/250;".";Form("D02",((Z-((Z/250)*250))*100)/250)
1120   Print "20"; Datetime (Clock);" Send Data=";^
1130   Send ^:^=""
9999 Loop
10000 _wait
10010   Sleep 20
10020   Delay 20000
10030   Sleep 20
19999 Return

■リモート局LRA1 10010行から10030行をこうしてみた
10010   'Sleep 20
10020   Delay 60000:' Delay 20000
10030   'Sleep 20
↑ 上記やったが変わらずClockズレる(ズレ進む量も同じ)
となると Sleep は原因ではなさそう
Delayも基地局側で使っているので問題ないだろう
Adc? あ、もしかして文字変数 ^(キャレット)の使い方だろうか?

■文字変数 ^ キャレットの使い方を間違っているかもしれず、キャレットを使わないよう 1100行目から1130行目をこうして ↓ みた
1100
1110
1120   Print "20"; Datetime (Clock);" Send Data=";Z/250;".";Form("D02",((Z-((Z/250)*250))*100)/250)
1130   Send Z/250;".";Form("D02",((Z-((Z/250)*250))*100)/250)
↑ 上記やったらClockズレなくなった
と思ったけどズレ進む量が小さくなっただけで4時間で39秒進んだ
1日あたり234秒(3分54秒)か
これくらいなら普通なんだろうか!?

Clockがズレ進むのは主に文字変数 ^ キャレットの使い方がマズイようなので何がマズイのか調べよう







2024/05/19

[成功] LoRa 端末 LRA1 現場と自宅間で疎通確認

 ソーラー発電の自立電源で動作するリモート局LRA1がなんとか動き出したので設置場所として目を付けていた現場へ疎通確認のテストに行きました。
地理院地図で現場と自宅の地形断面を調べると完全見通しです。
現場は自宅方面が下り急斜面になっていて920MHzという周波数のハイトパターン(っていうんですかね???)を考えるとリモート局の給電部地上高が多少低くてもフレネルゾーンは十分な環境になりそうです。
もっとも、冬は5メートル以上積雪がある場所だと思うので5メートルより上になるよう設置する必要がありますが・・・


このリモート局LRA1はテストのためバッテリーである 25F/5.4Vスーパーキャパシタの電圧を5分毎に送信します。

# もう少し詳しくいうと1分毎に計測した電圧を5分に1回、5件分を1データとして送信します。また、この数字を見てバッテリーが充電中なのか放電しているのかリモート局LRA1自身が判定したりしています

送受信に関するLoRaパラメータはすべてデフォルト値で以下の通りです
変調方式       : LoRa
送信出力       : 13 (dBm)
拡散率(SF)     : 10
帯域幅(BW)     : 125kHz
符号化率(CR)   : 4/5
チャンネル(CH) : 36= 送受信周波数(FRQ) : 923000kHz
ただ、送信出力に関しては電源電圧が3.6V時のようで!?ワタクシのリモート局LRA1は3.35V供給のため設定値より低い出力かもしれません(憶測)

基地局LRA1は自宅2階西側の窓際に設置しました。窓ガラスは開けていて網戸越しの受信です。シリアル接続でラズパイに繋がっていて携帯電話網経由のsshでラズパイにリモートログインすれば受信状況をリアルタイムに確認できます。


リモート局の現場は自宅から西方向直線距離 16.8Km地点の山の中、標高327m地点で冬期封鎖以外は車で行けます
(ちなみに基地局LRA1を置いている自宅の標高は57m)

現場に着いて付近を見渡すと背の低い松の木があったので地上高1.5メートルくらいの枝にリモート局LRA1を置いてみました

普通であればもっと障害物からアンテナを離すとか考えるんですが、本番設置も針葉樹の葉っぱがある枝を想定しているのでこれでOKです。


数分後、現場で自宅のラズパイにログインしていたiPad miniのssh画面に基地局LRA1が受信した旨表示されました!
その後も5分毎にRSSI -125 !!で安定して受信できました
# 途中欠測しているのはリモート局LRA1が風で煽られて枝から落下したためです 汗
1行1受信でRSSIに続いて起動からの経過秒数,4分前の電圧ADC値,3分前,2分前,1分前,現在の電圧ADC値という送信データにしています
使った安物の電圧センサはテスタで実測したところADC値を250で割ったものが電圧値になるようでした。0Vから6Vまで測ってみたところ電圧に対してADC値は直線的な値になりました。例えばADC値500は2.0VでADC値1000は4.0V。これは電圧センサに3.3Vを加えた場合で他の電圧では試していません


こんな設置環境で16.8Kmという距離を疎通確認できたので今後の作業は安心して取り組めそうです
なぜならば基板むき出しで屋外設置できないのでまだまだ製作が続くのでした


2024/04/03

iGateダウン orz

2024年4月1日12時頃、自宅iGate JL7TUS-10 がダウンし現在もダウン中・・・

正確にいうとiGateは動いているんですが、プロパイダのサービス終了でインターネット接続が出来なくなっております

インターネット接続の復旧予定は4月28日夕方なのでそれまで秋田県南iGateは存在しません・・・

そういえばはじめてEメールアカウントを貰ったのが35年ほど前でしたのでネット接続を失うのも35年振りです。遠い目 笑


追記

4/6 新しく契約したプロパイダからモバイルWifiとやらが送られてきたので iGateは仮復旧しましたが「モバイルWifi」というだけあって有線LAN接続できず iGateは片肺運転中です

4/26 プロパイダから送られてきたモバイルWifiが基地局と繋がらなくなってiGateは再びダウン中・・・ケータイも基地局と繋がらない 謎

5/1朝7時 回線変更に伴う設定変更でゴタゴタしましたがようやく完全復旧しました

2023/07/01

i-Gate JL7TUS-10 の暑さ対策

2020年10月から運用している i-Gate JL7TUS-10 ですが、毎年夏になると悩むのが機器の放熱対策です。

ここ秋田県でも i-Gateにとって最初の夏にラズパイ3B+が熱の影響でダウンというかハングアップしたので大きめのヒートシンクと小さなCPUファン(3.3V駆動)で凌いできました。

ヒートシンクはいいとしてラズパイ用のCPUファンは直径が小さく高回転気味なので長持ちしないような気がして出来れば動かしたくないという気持ちがあります。さらにその気持ちを大きくしているのが通電中にあやしく光るLEDです。気持ち悪い虹色のグラデーションで光ります

要件としては下記を満足したいのですがなかなか構想がまとまりませんでした。
0.エアコンや扇風機、CPUファン等の可動部品は使わない
1.通年置きっぱなし
2.24時間運転
現在設置している「エアコンの無い閉め切った木造2階の部屋」よりは機器にとって良い環境にしないと実現困難そうです。

そんなことを「あーでもない、こーでもない」と2年間もテキトーに模索していましたが何かをトリガに発想の転換というやつが起こりました

エアコンや扇風機を使わずに一番温度が安定して雨風をしのげる環境は「屋外設置の百葉箱」の中!?

「百葉箱」について調べてみるとワタクシの知っている「すき間が沢山ある白い木の箱で足が長いヤツ」は高い!数万から数十万円もするじゃないですか!びっくりです!

もっと調べると、昔の百葉箱に入れていた温度計や湿度計などの観測機器は現在では小さなセンサーになっているので百葉箱自体も小型化していてラジエーションシールド(Radiation Shield)っていうものを使うらしいことが分かりました

確かにアメダスの説明でもそれっぽいモノになっている(下記はどっかのページからパクお借りしました)

最低限必要な大きさで一番安いラジエーションシールドを注文しました。

実は一度自作したんですが、材料が紙皿と竹串でワタクシの幼稚な工作との相乗効果で柔軟すぎる構造のものが出来、梅雨時期とも重なって触れていなくても日に日にカタチが崩れていき3日後には崩壊しておりました。無風の部屋の中で湿度だけで崩壊 笑

でも雨風よけと適度な通風環境で実用になりそうという感触を得れたので製品の購入に至りました。

これから工作に入ります



2023/05/15

自宅で複数i-Gateの受信実験

 自宅屋根のペンキ塗りのため受信専用 i-Gateのアンテナを降ろして低いところに置いた仮設アンテナで運用しています。

当然、受信状況は悪くなったんですが、思っていたよりは広範囲(半径5~10キロくらい?)を受信しているようです。

仮設アンテナは2階北側エアコン室外機に取り付けたので雨風の影響が少なく、高所恐怖症のワタクシは気が楽です。

このままでも良いんじゃないかな?と思いましたが、受信エリア内でも不感地帯が多くあるように感じているので何とか出来ないか考えました。

2mでビーコンを送受信していて常々感じていたんですが、ビーコンを出す場所が数十センチズレると受信したりしなかったりするんですね。前から無線をやっているOM諸氏にとっては当たり前のことなのかもしれませんが最近始めたワタクシは不思議に思っておりました。

i-Gateのアンテナをもうひとつ数十センチズレたところにも設置するとどうなるの?と思い先輩方に聞いてみますと、アンテナが干渉しあって不感地帯が出るよ、とのこと。

ならば干渉しないようにもう少し離れたところに置いてみます。

ダイバーシティアンテナというやつがこれを何とかする技術らしいですが、調べても難しくて作れません。ですのでワタクシにも出来る実験として i-Gate のセットを複数用意してみました。

「運用 i-Gate」   :アンテナ NR-780R   受信機 RTL-SDR V3 direwolf1.6 ラズパイ3B+
                                                                 受信機 RTL-SDR V3 direwolf1.6
「実験 i-Gate2」 :アンテナ DP-NR22L 受信機 RTL-SDR V3 direwolf1.6 ラズパイ2B
「実験 i-Gate2」 :アンテナ 自作2エレ八木 受信機 RTL-SDR V3 direwolf1.6

「実験 i-Gate2」のアンテナと受信機は2つとも2階室内の床上に置いている状態ですが、受信感度はともかく動作することだけは確認できました。

当然屋外アンテナの運用 i-Gateが一番良く受信するんですが、興味深いことに 運用i-Gateが受信しないビーコンを「実験 i-Gate2」が室内アンテナで受信することがあります。

直接波じゃない電波を拾っているからなんでしょうか???それとも受信機やラズパイの動きにムラのようなものがある???

多々疑問があるのでこの実験はしばらく続きます。


2023/05/05

JL7TUS-10 サービスエリア一時縮小

 来週から予定されている自宅屋根のペンキ塗りのため I-Gate JL7TUS-10 用のアンテナ(DP-NR22L)を撤去して短いもの(NR-780R)を別の場所に仮設しました。
※ 2023/05/05 16:00仮設に切替えました

撤去したアンテナは2階屋根頂点から1m上に給電点がありましたが、仮設のものは2階エアコン室外機横に設置しました。
アマゾンで買ってあった4個入りアイボルト付きネオジム磁石(直径42mm)を1個使ってパイプ用のモービル基台を室外機にくっつけただけですが結構強力に張り付いていて壁際ということもあって安心感があります。
ただ設置方法からして受信能力は大幅ダウンしていると思います。まあもともとショボかったんですけどね

仮設期間は5月5日から1週間の予定ですが、天気次第で復旧は遅れるかもしれません

なお、ペンキ塗りは高所恐怖症のワタクシが出来るはずもなく、専門業者さんが施行します。

仮設のアンテナは目を凝らして見ないと存在が分かりませんが下記のように2階北側のエアコン室外機の横に設置しました


しばらく受信状況を観察していると、いままで受信していた「三種町」と「由利本荘」のデジピータの信号を受信しなくなっています。ヘッダーさえデコードしないのでギリギリダメとかではなく全くダメぽい
大仙市のデジピータからの信号は綺麗に受信していたのにデコードに失敗することが多くなっている

2023/05/06追記
北上市に行く用事があったので東方向だけですがビーコンを出してきました。
全然ダメというわけではなさそうに感じました。というより予想していたよりは受信感度が良さそうで驚きました

2023/05/07追記
大仙市に行く用事があったので西と北方向でビーコンを出してきました。肌感ではカバーエリアが赤丸の範囲内くらいに感じました。
今までの半分程度のカバーエリアになっているようです。
2023/05/08追記
湯沢市への通勤で雨の中、南方向でビーコンを出しました。
仮設アンテナは北に向かって開けている置き方なので南方向はダメだろうと思っていましたが意外と拾いました。たまたまコンディションによるもの?



2023/04/01

鉱山に行っている間に X68000Z が届いていました

本日は岩手県遠野市の堂場鉱山跡に行ってきました。
地質情報総合センターの昭和29年(1954年)の資料「5萬分の1地質図幅説明書 人首(秋田―第43号)」を読んだ限りでは1000 年ほど前から採金されたといわれているようで最後の稼行は昭和23年8月。それからまもなく休山し現在(昭和29年)に至っていると書かれていました。
いまは令和5年なので最後の稼行から75年経っています。

坑口は発見できませんでしたが早春の絶妙なタイミングということもあり雪も藪もなく鉱山施設跡と思われる鉄筋コンクリートの基礎部分と、掘り出したものと思われる石くずの小さな群を何箇所か見ることができました。

ここは現在、林業が行われているようで手入れの行き届いた林の中の林道を歩いていけました。
林道を歩いて登ってみると林業の作業車が登って行きやすいように作られている道のように感じましたので昔の鉱山作業道は別のところを通っていたように思いました。
山の起伏を見ながら想像するとおそらく現在の舗装道林道入り口付近から南東方向に山の斜面を登るような作業道だったのかな?


ここでは方解石とおぼしき石を1個だけサンプルとして持ってきました

帰宅途中で宅配便の荷物が営業所に到着した旨のメールが着信したのでヤマト運輸 湯沢営業所へ引き取りに行きました。
昨年12月3日に応募していた X68000Z が到着していました。
本体サイズはミニのはずなのに箱は横60センチほどと想像していたより大きいです。
たぶんキーボードがフルサイズだからなんでしょうね

拾ってきた石の簡易鑑別とダイポールアンテナの引き回しや LoRaレピータのプログラム書きと設置とかいろいろあるのでもったいないですが開封は後日です
やることの優先度が興味の強さ順とズレているんですが、ワタクシの住んでいる秋田県内陸県南では雪が無いときにしか進められないことがありますのでこの時期にだけ進められることを優先します




2023/03/03

突然 イカ(烏賊)について語る

自分の中で最近(なぜか)イカについて盛り上がってきているので忘れないようメモしておく

30年くらい経つだろうか。

かなり前から「イカ」が好きで今でも好きです。

好きというのは鑑賞したり釣ったりではなく食べると美味しいので好きなのです。

毎日のように食す訳ではありませんが、何かのイベントをトリガにして食べます。

例えば、新幹線で出張に行くとき東京駅で乗り換えるタイミングで駅構内の回転ずし店でイカとイカとイカとイカを食した後、締めにイカを食します。
この時、一切迷いがないので入店から会計完了まで5分以内です

あとは今も月イチくらいで行くココイチでは必ず「イカサラダ」を注文します。
ココイチのイカサラダはイカリングとエンペラが入っているイカのから揚げ乗せサラダです。

実はサラダは不要なんですが、イカを食すために「イカサラダ」を注文します。

ついでなのでサラダも食べますが「今度からトッピングのイカにしよう」と思いつつ「イカサラダ」を注文して30年以上経ちます。

はじめてココイチに行ったのは30年以上前で社会人1年目のときでした。会社の先輩に車で連れていってもらったのがココイチとの出会いでした。たしか青葉台店だったような!?

その後も年に数回の頻度でココイチに行きました。その当時は「ココイチに行きたい」とか「ココイチのカレー食べたい」という感じではなく、ファミレスのひとつとしての位置付けで他のファミレスと同じ程度の利用でした。

そんなある日、ワタクシのココイチ熱が高まる出来事がありました。

半年くらいの長期出張で名古屋のホテルに滞在していた時、東海地方の方には申し訳ないんですが、食事が口に合わず食べ物に苦労していました。いやワタクシの舌が東北仕様なもので口に合わないと感じただけで多くの方にとって美味しいハズなんですけどね 汗

休日やることもなく「大須」の電気街をブラブラ歩いてて、あるココイチの前を通ったときにハッと気付きました

「あれ?ついさっきもココイチあったな」

と思って振り返ると通り過ぎたばかりのココイチがあった。

へ~こんなこともあるんだな~珍しいな~と思いながら10メートル先の交差点で信号待ちしていると別のココイチが視界に入った 汗

「名古屋ではコンビニよりココイチのほうが多いのか???」と思いつつ視界の先にある店に入ってみるとワタクシの知っているココイチとは明らかに違う、まるで喫茶店のような間取りにオドオド戸惑ったワタクシ 笑

ですが、間取りに激しい違和感を感じながらも食したカレーはまさにココイチのカレーであり食べ物に苦労していたワタクシにはこれまで食したココイチカレーより数倍おいしく※感じられました。※当社比

ここでワタクシの脳の不揮発性の部分に「ココイチ サイコー」と刻まれたのでした

あ、ココイチで話が逸れました。イカの話でした。

「イカが好き」というと「イカソーメン」とか「イカ刺」も好きだと思われがちですが寿司を除いてイカの「刺身系」はあまり好きではありません。

好きだの嫌いだの勝手に書き散らしましたがワタクシが作れるものといえば第3世代言語のコンピュータプログラムくらいで料理は作れません。でもイカリングとイカの姿焼きは一度は作ってみたい憧れの料理なのです。これが言いたかった。長い 笑

以上

クルマに付けてる第一電波の電動アンテナ基台 K9000 がアンテナ寝たままで起きなくなった💦 幸いなことに起きたまま寝なくなるんじゃなく寝たまま起きないので車庫入れは大丈夫 いつもの無線屋さんで相談したらソッコーで基台の殻割って直してもらえた どうやら接点が腐食して接触不良だっ...