ブログを検索

ラベル 無線 の投稿を表示しています。 すべての投稿を表示
ラベル 無線 の投稿を表示しています。 すべての投稿を表示

2024/07/13

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

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

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回がこのタイミングになった。結構な頻度でロストしていた 汗

受信プログラム
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/500mAh)の裏面
左側の銅色の部分は銅箔テープでベタグランド
銅箔テープに囲まれた中にあるのはDCDCモジュールとショットキーダイオード
中心に横たわっているのがスーパーキャパシタ(5.4V 25F)
スーパーキャパシタの上に張り付けているのは電圧センサ
で右下にLRA1です
ちなみにベタベタ貼っている黄色いセロハンテープ状のものは中国製カプトンテープもどきです
「もどき」ですが半田コテをあてても大丈夫な耐熱性があって何より安いので重宝しています
セロハンテープ感覚で消費できます
これで重量154g

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

LRA1が停止する原因というかトリガはキャパシタ電圧が
DCDCモジュールの動作下限2.0Vを切って電源供給が止まることなので、余裕をもって自分からDeepに移行すれば夜間も間欠動作や数十分の連続動作が可能と思います
いまはこんな状況


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追記
湯沢市への通勤で雨の中、南方向でビーコンを出しました。
仮設アンテナは北に向かって開けている置き方なので南方向はダメだろうと思っていましたが意外と拾いました。たまたまコンディションによるもの?



2022/12/27

JB64 走行中クルマのバッテリー電圧が低くなる(正常)

 車(ジムニーJB64)の電圧が低くなるときがあることに気付きました。

画像はシガーソケットの電圧ですがバッテリーから直接電源をとっているFTM-300Dでも同じ数字になります。通常は14.8Vなので2.3Vも低くなります。


一旦低くなるとエンジンの回転数を上げてみても低いままです。数十分後に見ると14.8Vに戻っています。
12.5Vの状態で無線機が aprsのビーコンを送信すると10V台まで下がります。計測していませんがこれだけ電圧が低いと送信出力が低くなっていることが想像できます。

調べてみるとどうやらイマドキのクルマには「充電制御システム」というのがつけられていて燃費向上のために発電をコントロールしているぽいです。

対策として以前購入してあった 12V→13.8V 18A コンバータ

を使うことにします。
アマゾンのレビューでは無線機にノイズが入るとの記述がありましたがV/U帯では大丈夫かもしれないので入れてみようと思います

メモ:
入力線色:(+)赤、(-)黒
出力線色:(+)黄、(-)黒

2022/11/30

LoRa 端末 LRA1 でレピータ計画 その2

 IOT用のソーラー電源の実験結果をつらつら追記していきます。あとで別のカタチでまとめようと思います。

ソーラーパネルとスーパーキャパシタの電源単体で太陽の光にあてて11月末の秋田県で12時から3時間充電しました。おそらく満充電まで行っていないと思われます

充電前の電圧を測り忘れましたが充電後5.23Vになったので無負荷で自己放電していく様子を観察してみます

■0.2F 5.5Vスーパーキャパシタ仕様
11/28 朝7時の積雪0cm 12時~15時くらいまで晴れていたので屋外の地面に平置きで充電。その後室温約5~10度の部屋にうつ伏せで保管
11/28 19時 5.23V
11/29  7時 4.90V
11/29 19時 4.73V
■24時間で 0.5V くらい降下してます
11/30  7時 4.45V
11/30 19時 4.29V
■24時間で0.44V降下ん?電圧が下がる速度が鈍ってきた!? 
12/1     7時 4.14V
12/1   19時 4.02V
■24時間で 0.27V 降下
12/2   積雪17cm   7時 3.93V
12/2    19時 3.84V
■24時間で 0.18V 降下
12/3   積雪17cm  7時 3.75V
12/3    19時 3.67V
■24時間で 0.17V 降下
12/4    積雪0cm 7時 3.53V
以上で0.2F 5.5Vスーパーキャパシタ仕様の実験終了

この電源で 昇降圧DC/DCコンバータを使って 3.3V に変換してLRA1を動かそうと思っています。
使用予定のDCDCコンバータは電圧が2.5Vに下がるまで使えることになっているので7日間は動作可能な電圧を維持できるかも
そう考えると踏ん張っていると思います。無負荷ですけどね

氷点下ではどうなんだろうかと思い、
秋月電子で購入したのは VINATech社 VEC5R4505QG-H のようでデータシートを探してみましたが温度特性を見つけることが出来ませんでした。
ただ一般的にはスーパーキャパシタの1F以上の容量のものは耐寒性能が良いとの記述をDigi-Keyサイトで読みました。

スーパーキャパシタの放電時間(運転可能時間)の計算式を同じくDigi-Keyサイトで見つけました。
t(sec) = C(F) * ( (Vmax - Vmin) / Imax)

t(sec) = スーパーキャパシタが回路に電力を十分供給できる時間(秒単位)
C(F)   = 静電容量(ファラド単位)
Vmax   = 放電初期時間のコンデンサの電圧
Vmin   = コンデンサが回路への給電に不十分になる前に放電できる最小電圧
Imax   = 回路の最大(最悪ケース)電流消費(アンペア単位)

とのことなのでこれを今回の LRA1 レピータシステムにあてはめると
1115sec ≒ 5F * ( (5.4V - 2.5V) / 0.013A)
↑ LRA1が全力で送信し続けたと仮定して0.013A。受信時は 0.010A

1115秒 ≒ 18.5分だからなんか勝手に想像していたのと桁が違う 汗

391sec ≒ 5F * ( (5.4V - 2.5V) / 0.037A)
↑ LRA1が全力で送信し続けたと仮定して0.037A。受信時は 0.013A

391秒 ≒ 6.5分

無知なので1~2時間くらい動かせると想像してました 笑

ということでたとえば3時間動かしたいのであれば49Fくらいの容量が必要そうです
こんなのを4個使えばいいのかも → 電気二重層コンデンサー50F2.7V
2160円 = 540円 * 4個
結構なお値段です

これなら6時間駆動 → 電気二重層コンデンサー100F2.7V
3520円 = 880円 * 4個
高いから無理
でもこの容量で重さが80g(20g * 4個)なのは魅力があります
ワタクシのペイロード数百グラムのヘナチョコドローンでも安心です

冬のボーナスが出るまで資金がないのでまずは 5Fの容量でスーパーキャパシタがどんなものかテストしていきます

2022/12/4 積雪0cm 10:00 5F 5.4Vのスーパーキャパシタに乗せ変えました
みぞれが降る中、2階屋内東向きの窓際に放置

■5F 5.4Vスーパーキャパシタ仕様
12/4 10時 35mV これが充電前電圧
12/4 16時 1.11V 
いくらか充電されてるびっくり!太陽がどこか分からないみぞれの日なのに
一時間あたり0.179V( (1.11-0.035) / 6時間 ) 電圧が上昇
屋外で早朝から日没までだともう少し充電されるかも
空充電からのスタートの場合、日が差さない日が数日続いても2~3日で最低ラインの2.5Vに到達できるかもしれない
満充電で運用を開始した場合2.5Vまで下がったら運用は終わってそこから継ぎ足し充電なので晴れの日が来るまで途切れ途切れで運用が続くのかも
なるほどこうなるとカットオフ電圧監視機能付きのモデルがいいのかもしれないな

ちなみに夕方外が真っ暗になった後
12/4 17時 0.91V と電圧が下がって来た
1時間で0.2V低下。24時間だと4.8V低下かも?
こうなると見通しは若干暗めになって自己放電による運用時間の再計算が必要そう
まずは満充電にして自己放電の様子を見たいけど、よごでのこの季節にまとまった日照は期待できない・・・
実験を進めるために手っ取り早く安定化電源で充電しようかな

12/5 11時 アマゾンで 2.7V500Fを2個使った 5.4V250F のスーパーキャパシタモジュール(バランス回路付) を2つ注文しました。お値段 4,958円(2,479円×2) でした。耐久性やら容量とか耐圧の数字の信憑性はかなり怪しいものの 250Fでこのお値段はちょっと実験用途だと魅力的。深セン市からの発送のようで年内に届くか微妙みたいです。まあ製品自体微妙というか怪しいですが・・・
縦73mm 横65mm 厚さ36mm 重さ157g これが2個なので大きいが重さは2個合計314g

2個並べて置くと置き方によって
1. 縦73mm 横65mm 厚さ72mm (約7センチ角のキューブ状)
2. 縦73mm 横130mm 厚さ36mm (横長)
3. 縦146mm 横65mm 厚さ36mm (縦長)
というバリエーションになるが、構造からするとアタマを上にしたほうが良さそうなので 1 が良いのかもしれないと思ったが雪が積もりやすいので上の面積が少なくなるよう 3にする
あとノイズ発生源になると思うのでシールドした上で LRA1 とは距離をおいて下に付ける。
下記、簡易図解(横から見た図)

 |
□ LRA1+アンテナ
 |
 |
 |
 |
 |
□ ソーラーパネル+スーパーキャパシタ

12/5 19時 4.15V 測った瞬間びっくりした!朝 0.91V の状態で東の窓際に無造作に置いた。今日は小雪混じりの曇だった。気温0度から2度のち0度
要は太陽が出ていなくてもとにかく日中だったらどっち向きの方角に置いてもそこそこ発電/充電するってことか!?なんだこりゃ面白いなあ

なんか自己放電量とか消費電流の削減はもちろん大事で実験しなければならないけどそんな細かいことはどうでもいいみたいなダイナミックな動作の予感がしてきた 笑
もしかするとキャパシタの種類というか型番によるところがあるのかもしれないと思いつつ本番用のアマゾンで買ったやつの到着を待ちながら5F 5.4Vで実験を継続しよう

どうやらスーパーキャパシタの使用開始時には「慣らし」が必要らしい
低電圧でゆっくり充電。放電したらちょっと電圧あげて充電・・・の繰り返しらしい。
そうすることで充放電の特性が安定するとのこと。安定するといっても良いほうに安定するかは別の話のようで悪いほうに安定するかも。本番用は中国製だし

12/6 アマゾンで買った 5.4V250F キャパシタが深セン市から発送されたと通知が来ていた。
12/6 7時 昨日と同様、東側の窓際に放置。7時時点では薄日が差していた。
「慣らし」のため数日かけて充放電を繰り返そうと思う
まあ何度も「観察」していればそれが「慣らし」になるんだろうとは思います
早く充放電を安定させるために週末に安定化電源で慣らし充電してみようかな

12/6 15時 昼まで使えていたケータイ(iPhone)がバッテリー0%表示になって充電出来なくなった。もちろん電源は入らない。昼はバッテリー100%だったのに・・・代替えのケータイを注文したが到着予定が分からずいつから使えるのか不明
ぜんぜん関係ないはずなんだけどまさかこのトラブルは今やってるバッテリーの充放電の実験が影響しているのか!?って疑うタイミングだ。
幸いdocomoメールだけは自宅PC限定だがSMS認証無しで使えて助かった

ただいま5F 5.4Vキャパシタで実験継続中・・・
12/6 19時  3.40V 経緯不明だけど自己放電?まだ安定していないのかも。でも十分使える電圧だ。薄日が差したのは朝30分くらいで本日くもりのち雪だった
12/7 7時 東側の窓際に放置。きょうは曇りのち雨の予報
12/7 10:30 SPI-2328V-020F 2つ注文した 2.8Vで出力ON 2.3Vで出力OFFのやつ
12/7 8時ちょうど気球DO3GU-9が青森県深浦沖でビーコンを出しながら東へ移動しているのに気づいた。TUS-10 もずっと受信していたが上位サーバに記録されたのは距離205Km地点の受信分だけだった
12/7 19時  3.86V きょうは曇りのち雨だった
12/8 16時  新しいケータイ(iPhone)が届いた
12/8 19時  4.72V きょうは曇りときどき雨だった
12/9 19時  4.82V きょうは曇りときどき晴れだったが昼からときどき晴れだったので東の窓際に置いてるソーラーパネルに恩恵は少なかったんだろうな
12/10 19時  4.79V きょうは曇りときどき雨だった
12/11 19時  5.13V きょうも曇りときどき雨だった

■ひとつ参考値が出たのでメモ
充電にかかる時間は t = C × V ÷ I だそうなので
250F 5.4V のスーパーキャパシタを 300mW 5.5V のソーラーパネルで充電した場合、
25000sec (416min ≒ 6.94hour) = 250F * 5.5V / 0.055A
となるっぽい
キャパシタは2組(2個一組を2組)使うから2倍の14時間近くかかるかも
これは晴天に充電0 から開始した場合
発電の 0.055A のうち LRA1 が 0.013A食うからもっとかかる

極小ソーラーパネルなのでそんなものかも
実際の運用は継ぎ足し運転だろうから天気が悪いと徐々に電圧が下がっていって2.5~2.3Vで停止するんだろう。その後天気次第で時々動いては止まるの繰り返しかな
これは深夜の省エネ運転機能が必須と確定。出来るだけ部品を増やしたくないけどリアルタイムクロックの RTCが必要だなということで秋月電子の RTC8564 を検討中

12/12 19時  5.11V きょうは曇りだった

そういえば超高高度のAPRSビーコンを出す気球は電源をどうしてるんだろう?
あれこそいろんな意味で軽い発電してるんじゃなかろか
日本ではやってないから海外情報だな
キーワード「High altitude balloon APRS solar」と入れて調べてみると複数のチームが同じソーラーパネルを採用している(いた!?)ようだ

説明によると
PowerFilm の 240mW 太陽電池 MPT4.8-75 2つ。これらの 2つのパネルは、地元の正午に最大の電力を得るためにまっすぐ上に傾けられます。バッテリがないため、6ボルトで 2.5ファラッドの容量を持つ 2つのウルトラキャパシタを使用して、送信機の動作中にエネルギーを蓄えます」
だそうです
ソーラーパネルのサイズは 94 x 73 (mm) で重量 1.98g すごく軽い!!
なんと日本のマルツで扱っていたが(お値段 1,842円くらい)ワタクシにはオーバースペックなので購入は見送った

12/13 19時  5.12V きょうは曇りときどき雨のち完全な雨
12/14 積雪0cm 19時  5.01V きょうは雨雪のち吹雪

すごいものを発見した!
補足説明のようなのが作者のブログにあった
当然技適は通してないけどほしい~
ダミーロードつけて自宅内で遊んでみたい

配送方法をチェックしたら南アフリカのショップだよ・・・勇気がいるな 笑

12/15 積雪11cm 19時  4.92V きょうは大雪

12/16 積雪48cm 10時 南アフリカのショップ Giga Technology さんに質問してみました
1.日本へ発送できる?
2.ラズパイ2m送信の商品は再入荷する?
ただいま返信待ち
12/16 15時 返事が来た。
日本に発送可能。何個欲しい?住所くれればDHLの送料見積もる

12/16 19時  4.83V きょうは大雪。おとといからもさもさ降ってる
12/17 積雪50cm 19時  5.44V 明るい曇のち曇り。満充電になった
12/18 積雪33cm 19時  5.17V 早朝から雪のち大雪

朝、出勤前に気がついた。東の窓際に置いてる 5F 5.4Vキャパシタのソーラーパネルだが網戸越しになってた。網戸を動かしたら少し明るくなった。いままで薄暗かったんだな。気付かなかった

12/19 積雪70cm 9時 南アフリカのショップ Giga Technology さんにこちらの住所と欲しいものを返信した。日本との時差が7時間らしいので現地はいま午前2時かな

12/19 12時 2.7V500Fを2個使った 5.4V250F のスーパーキャパシタモジュール(バランス回路付)が到着した。予定の到着日は21日~27日だったのでだいぶ早い到着だ
電圧はそれぞれ 8.4mV 9.2mV と完全放電の状態。新品だからあたり前だけど
2.7V500Fを2個使った 5.4V250F のスーパーキャパシタモジュール(バランス回路付)

5.4V250F のスーパーキャパシタモジュール

R6ナナメってる・・・表面実装の部品の場合リフローで正しい位置に自己整列するらしいからこれはSMDを手半田してるのか!?
キャパシタ電極のはんだ付けの状態も怪しいな
すごいなチャイナクオリティ 新品購入したら使う前に手直し必須 笑

12/19 19時  5.14V 雪
12/20 積雪76cm 19時  5.27V 曇り
12/21 積雪63cm 19時  5.19V 曇り
12/22 積雪54cm 19時  5.15V 曇り時々雨
12/23 積雪36cm 19時  5.18V もさもさ雪
12/24 積雪65cm 19時  5.15V 小雪のち曇り
12/25 積雪49cm 19時  5.19V 曇り時々湿雪
12/26 積雪49cm 19時  5.14V 曇り時々雨
12/27 積雪46cm 19時  5.19V 曇り時々雨
12/28 積雪42cm 19時  5.39V 曇りのち雨

2023/01/15 追記 12/28 夜、自宅2階階段から落下して緊急入院したためペンディング

2022/11/25

LoRa 端末 LRA1 でレピータ計画 その1

1年ほど前から構想妄想していた「LoRa端末 LRA1 の山中レピータ計画」、進んでいないようで実はちょこちょこやっていました。やっている割に目に見える進捗はありませんが・・・


まず設置場所ですが、「電波伝搬シミュレーション・ソフト Radio Mobile」を使って横手盆地周辺の山々に無線機を置いてみました。
その結果、三ツ森山の山頂付近(地理院地図によると標高339m地点)が良さそうだと決めました。
三ツ森山からの電波伝搬シミュレーション
地理院地図の機能を使って設置予定場所から自宅までの地形断面図を確認しました。920MHzの波長からすると完全見通しです。
三ツ森山と自宅間の地形断面図

標高339mの現場で地上高2mにレピータを仮設置して直線距離16.5Kmの自宅基地局との疎通を確認できました。これでレピータの設置場所として良いという確証を得ました。

と、設置場所は決めたもののその後、主に電源をどうしようか一年間ダラダラと試行錯誤していました。

要件:横手市の三ツ森山に24時間365日連続運転できるLRA1をベースにしたLoRaレピータを設置して運用したい。冬は積雪があり氷点下20度になることを想定

これは結論からいうと要件を満たすために必要なバッテリーやソーラーパネルといった電源が大掛かりになるということで諦めました。
LifePO4バッテリーや30Wソーラーパネル、チャージコントローラーなどを購入し自宅で実験しながら考えた末に諦めたので金銭的な損失が大きかったなーと後悔しました。これらは何かに流用しようと思います

その後数か月間、何度か設置予定の現場へ行ってレピータを設置する具体的な方法をイメージしようとしましたが当初考えていた「地面から数メートルの高さのポール上に設置」も無理と判断しました。
現場付近の地形を何度も見ているうちにやっと気がついたんですが、冬は雪が吹き溜まりになり、おそらく深さ5~10メートルの雪に埋もれるだろうと思いました。

なのでLRA1と電源一式を地面から10メートル以上に設置する必要があります。これはもうアンテナタワー並の高さです
10メートル以上のポールを用意するか現場の木に登るか、など考えましたが安定して設置できる10メートル以上のポールなど調べても行きあたることなく、高所恐怖症で木に登るのも不可能なので手持ちのドローンで木に乗せる案を選択です。

持っているドローンは鉱山跡の探索で使っているもので機体に付いているカメラで動画や静止画を撮影するだけの中型空撮機(クアッドロータードローン)です。
そのためカタログスペックにペイロードという項目はありませんが実験してみたところ無風なら800g程度のものをぶら下げて操作できることが分かりました。
800gは限界値なので風の影響や設置回収を何度も行うことを考えて半分の400g以内をLRA1と電源一式の重量目標としました。

要件を変更:横手市の三ツ森山に晴れまたは薄曇りの日中のみ運転できるLRA1をベースにしたLoRaレピータを設置して運用したい。冬は積雪があり氷点下20度になることを想定。総重量は400g以下

ニッケル水素充電池が比較的寒さに耐えられそうだったのでゴミ箱部品箱にあった小さなソーラーパネルで電源を試作しましたが重すぎて断念(実測820g)
これも作ってから諦めたので何かに流用しようと思います。どんどん無駄なもの予備部品が増えてきました。
ニッケル水素充電池そのものが重いので作る前に気がつくべきでした 笑

最近になってスーパーキャパシタというものの存在を知り調べてみると充電池に比べて容量は小さいものの充電速度が速く特に重量が軽いらしく目標の400gを余裕でクリアできそうです。
自宅で動かしてみたくなり手っ取り早く Cyack lab さんから IOT用のソーラー電源を購入してみました。もう当初の構想だった365日24時間運転などどこへやら、です 笑
今回購入したのは型番 SPI-0000V-020F で 300mWソーラーパネル 0.2F/5.5Vのスーパーキャパシタで キャパシタ電圧による電源出力制御なしのタイプです。氷点下20度まで運用できるようです。
お値段 1600円 送料200円ですのでなんとか気軽に試すことができます。
同時に秋月電子で 5.0F 5.4V のスーパーキャパシタを購入しました。
まずは 0.2F で動かしてデータを取ってから 5.0F に付け替えて試してみる予定です。

日が昇ったら動きはじめて、夜は指定電圧まで下がったら又は基地局からの指示で DEEP SLEEP。早朝 電圧を確認してあわよくば日の出前から動かす、みたいな運用を妄想しはじめました。「早朝 電圧を確認して」の部分は RTC が無いので無理ですけど 笑

到着した IOT用のソーラー電源 です。すがすがしいほどのピンボケです。老眼なので撮影時にまったく気がつきませんでした

IOT用のソーラー電源 の裏側です。縦に2個並んでいる丸い物体が 0.2F スーパーキャパシタ

秋月電子の 5.0F 5.4V のスーパーキャパシタも同じ日に到着しました。
これから実験していきます

ドローンについては、DID地区上空や構造物距離30m未満の飛行など国交省からの許可・承認をとっております(東空運航第12461号)

2022/09/18

i-Gate 受信エリア拡大実験 その2

 i-Gate の受信エリア拡大を目指して屋内で出来ることとしてまずは「受信プリアンプ挿入」を試みています。

前回 その1

受信プリアンプは 6V~15V を必要とするっぽいので 13.8Vにしよう、と思ってましたが丁度いい電源が見当たらず、006P にしようか単3 を4本にしようか考えながら小学生のときからお世話になっている佐々木ラジオに行きました。

で、購入したのがこれらです。


相変わらず佐々木ラジオ便利です!
10歳のときからエレキットとかでお世話になっているので、かれこれ45年!
初めてハンダゴテを購入したのもここでした。
よごでで電子工作する人はみんなお世話になったんじゃないかな。

かれこれ45年といっても TUS は30年ちょっとの間、秋田県外にいたので正味合計10年くらいかな

プリアンプが要求するのが最低6Vということで単一4本(6V)にしようと電池ケースを買ってきたんですが、よく考えると仮に1本あたり終止電圧1.2Vとすると5本必要
1.0Vなら6本か・・・

結局、せっかく買ってきた電池ケースはゴミ部品箱へIN 笑
最近このパターンばっかり 苦笑
しばらくの間、代替策を考えて・・・思い出した!
以前、移動運用してみようと入手していた LiFePO4バッテリーがありました!
AZバッテリーの IT9B-FP というやつでサイズは 150×65×92mm。重量が 700g でとっても軽いけどそもそも移動運用する体力が無いので車の運転席下に1年放置していたもの


1年前、13.8Vあった電圧が今でも 13.0Vある。車内放置という環境からして優秀かも。
追加で充電せずにそのまま使います


プリアンプをつないだのは 144.66MHz/1200bps のチューナー直前です。
高所恐怖症でアンテナ直下は無理なのでチューナー直前に入れました。
144.64MHz/9600bps は近場の秋田県南に i-Gate が 3局あるのでよしとして、1200bps はひとりでカバーしている都合上、1200bps のカバーエリアを広くしたかったのです。
さ、結線したのでテストに行ってこよう!

2022/09/18 17:00追記

テストのためぐるっと回ってきました。すばらしい!今までたまにしか拾わなかった西方向の東由利町付近がほぼカバーエリアになりました。北方向は角六(角館~六郷)で少し明瞭になった程度。東方向は山内で少し明瞭になりました。近距離がダメになるかもと思っていましたが大丈夫でした。
南方向は通勤で毎日通るので明日から様子を見てみます。

もしかすると単にコンディションが良かったのかもしれませんが少なくとも悪くなったところは無いようなので、プリアンプはバッテリーではない常時電源を真剣に検討します。後日 BPFを調整してみたいです

2022/09/11

i-Gate 受信エリア拡大実験 その1

i-Gate の受信エリア拡大を目指して屋内で出来ることを考えました。
高所恐怖症なのでアンテナの交換や位置変更は無理なのです。だから屋内作業です。

1. 受信プリアンプ挿入
2. アンテナと受信機一組追加(アンテナはベランダ設置で i-Gate受信早いモノ勝ち方式)
3. SDRドングルの高性能化
4. 闇 i-Gateを自然の山中へ放置(2.と受信場所が違うだけ)

順番にやっていきたいと思います。
まずは 1. 受信プリアンプ挿入です。
実は昨年アマゾンで広帯域受信プリアンプを購入して実験してみましたがうちの環境では逆効果になりました。近所の数軒のソーラー発電に起因すると思われるノイズが増幅されて本来の信号が抑圧を受けて感度低下してしまいました。安物の広帯域受信機と広帯域プリアンプの組み合わせでノイズまみれの環境で失敗です。

最近、ベンキョーしたら電波というやつはどうやらフィルタで通過周波数を制限できるということを今更知って購入したのがコスモウェーブさんの LNA-BPF144C です。
これは BPFと受信プリアンプの組み合わせとのことで期待感が高まります。
同梱の説明を読むと「必ずシールドされたケースに入れてください」とのことなので基板サイズを測ってから一番近い100均へサンダル履いて歩いていきました。


キャンドゥで良さそうなシールドケース(商品名:ブリキ携帯灰皿)を発見して購入。
税込み110円でサイズは 5.5×8×2cm


分解してみると下のようになっていました。右側はインナーとして入っているものです。とても立派なシールドケースです。
実物を入れてみると高さ(厚さ)が約1ミリ足りなくて断念・・・外寸ではイケると思いましたがあっさり諦めます。シールドされたコイル部分が干渉するだけなので内側から叩いて逃げ場を作ってやるか切り取って窓を付ければ良さそうですが、あまりに立派なケースなので別の使えるものに使います。
余談ですが、蓋を閉めた状態と開けた状態どちらも底と蓋は導通がありました。インナーを入れると、インナーと底、インナーと蓋も導通がありました。RF的にはどうなのか分かりませんが導通があることだけは確認できました。


そこで急遽、別の100均で買ってあったアルミパンチシートを使うことにしました。パンチシート自体に導通があることを確認してから手でコの字型にカタチを整えてキリでねじ止めの穴をあけて基板と合体します。
なぜグルっと囲まないかというと夏場にSDRドングルの放熱用に使っていたものを流用したため元々はもっと大きいサイズだったものがカットされており小さかったのです。
新しいのを 100均で買って来ればいいんでしょうが、今日はすでに1往復したので体力が残っていません。自分が1日に歩ける距離は平地で1Kmが目安です。鉱山跡探索は別腹のようで山道を10Kmくらい歩けるのが不思議です。
整えたはずのカタチは整っていないような気がしてきましたが気にせず進みます。


キリを使ってトリマー調整のための穴を上面に3ヶ所あけました。これで更に形がくずれました 笑


NanoVNAと接続して 100MHz~500MHz の S21 GAIN や S11 VSWR他、いろんなグラフを見てみましたがなんか想像していたグラフの形と全然違います。NanoVNA は校正してから使っているんですが・・・電源なしでも BPF の特性グラフが見れると思っていましたが違うようです。
これが皆さんがよく言ってる「スルー特性」ってやつなんでしょうかね。

ちなみに老眼なので NanoVNA の液晶画面は見ていません。小さすぎてまったく読めないからです。
NanoVNAと PC をUSBケーブルでつないで NanoVNA-Saver というソフトを使って PCで見ています。


もしかして電源入れないといけないのかな?
古い安定化電源を出してきました。持った瞬間「重い」汗
この電源、入手してから現在まで引っ越しを20回近く経験してきて更にそのうちの1回は6年間空調の無い閉め切った部屋に放置していたので動くのか心配です。
まずは電圧が出るか確認です。電源のスイッチを入れると電源本体から常時ジーーッという大きな音鳴きが出ていやな感じですが進めます。ホントに音鳴きか疑うレベル。もしかして漏電!?
なんとなく動いているようなのでこの後、出力を最低限必要な 6Vに調整しました。


結線して電源を投入すると赤い LED が点きました。
消費電流は 60mA と小さいので安定化電源の電流計はピクリともせず電流計が正常なのかは分かりません。


NanoVNA でスイープしながらグラフを見ていましたが、電源投入後みるみるグラフの形が変わって想像していたようなものになりました。NanoVNA のスイープに時間がかかるからなんでしょうけど見ていて面白いです。
写真には写っていませんがこの時点で筐体としてのテイをなすようアルミホイルで(笑)隙間を埋めました。これでもテイをなしていないような気がしますが進みます。


フィルターは初めて扱うんですが、こうして見るとバンド外の減衰特性が素晴らしいと思います。

で、グラフをよくよく見てみると 144MHz帯は想像していたとおりですが、430MHz帯は想像とちょっと違い、バンドの後半は増幅されているように見えます。

もしかするとトリマーで調整出来たりするのかもしれませんが、144.64MHz と 144.66MHz が良ければいいので一旦無視して進みます。

と、ここで運用するための電源が無いことに気付きました。
今、実験している安定化電源は音鳴きが異常なほど大きくてというか音鳴きじゃない異音?かもしれなくて連続しては使いたくありません。

ゴミ部品箱を漁りましたが出力が 5Vの ACアダプターしか出てきませんでした。必要なのは最低6V 最高15Vとのことです。15Vは上限ギリギリで怖いので 14V くらいにしましょうか。

14V? だったら近い13.8V なら良く聞く電圧です。必要な電流は60mAくらいらしいので充電用のACアダプターでもイケそうです。13.8V にしましょう。

と、ここまでやって外も部屋も暗くなり部品が見えなくなってきたので本日の作業はペンディングします。一人でいると部屋の明かりは点けないほうの人種なので仕方がありません。

次回は SDRドングルとアンテナの間に挿入して動かしてみたいと思います。

その2 へ続く

2022/08/20

[祝]無事ちゃんとしたアンテナが


 以前乗ってたクルマ JB23 の足回り全般とクラッチ、エアコンの故障で突然お別れして2週間の代車生活を経て先週 8月8日に新しい車 JB64 が来ました

でもアンテナと無線機は以前の車についたままで、代車と新しい車には屋根上に仮設の SMAコネクタの40センチくらいのホイップアンテナ(SRH771)をつけてこれまた仮設のハンディ機FT1XDをバッテリー運用していました

ビーコンは I-Gateから2Km圏内でしか届かない・・・

SMAコネクタのアンテナは屋根上に吸盤の基台?っぽいものに付けていて給電点は屋根上5センチくらいと空間的にはとても良さそうな設置方法だけど SMAのホイップアンテナってハンディ機に直接付けて顔を近づけた状態で最良の性能を発揮するようになっていると何かで読んだのでだぶんSWRや放射効率は良くなかったんだろう。測ってないけどね

無線機は悪くはないんだけど、いかんせんアンテナがショボすぎ・・・

でもビーコン出していないと窒息死する体質(笑)なので我慢してしょぼいビーコンを出し続けていました

今日、ようやく時間が取れたので以前の車から無線機とアンテナを移設しました!

無線機出力50W、Mコネクタのモービルアンテナ(COMET SB3)利得2.15db、基台はレインモールに付けた電動基台 K9000 でアンテナ給電点はクルマの屋根上4センチ。機材はすべて以前のクルマのままですが基台取り付け部の形状がルーフレールからレインモール(雨どい)に代わりましたのでその取り付け金具だけ変更しました。

さて、明日から TUS のビーコンの届く範囲が元通りになるかな


2022/08/21 追記
基台は、高さを少しでも稼ぐためにリヤハッチ上のレインモールに付けましたが、アンテナの長さと重さで加減速のときに基台根元がけっこう前後に振られるのに気付いて取り付け位置を変更しました。オーソドックスに横のレインモールです。これでアンテナ給電点はクルマの屋根と同じ高さになりました。走り回ってみたところ、以前よりビーコンを拾ってもらえないポイントが多々増えていました。とても残念


2022/08/27 追記
残念な状況を相談したところ実験的に基台を変更してみようということになり、マグネット基台を借用してルーフの真ん中あたりに変更してみました。給電点の高さはほぼ変わらず。その結果、同じアンテナ(COMET SB3)にも関わらず、より遠方からビーコンが届くようになってびっくり!


2022/08/28 追記
つまり、以前のクルマ JB23 のほうが電波の飛びが良いと感じたのは、ルーフレールに取り付けていて見た目アンテナ給電点がルーフの上5センチと高さが良かったんだと思っていましたがそうではなく、たまたまアンテナの立っている位置がルーフの上(かなり端っこですけど)に有ったから、ということなんでしょうか。
この結果、容量性のアース!?が影響しているかもしてないとの推測に基づいて電動基台のアースを取ってもらいました。アース線として使ったのはダイヤモンド MAT50マグネットアースシートに付いてくる予備の線です。自分は持っていませんけどさすが無線屋さん。ストックを使ってもらいました。
自分は不器用で出来ないのでやってもらいました。もちろんクルマのレインモールの塗装を一部削ってネジを食い込ませて施工してもらいました。
その後走り回ったところ、マグネット基台と同等の性能になったことを確認しました。これは以前のクルマの時よりかなり良さそうです!
ノンラジアルの 2m用アンテナといっても良さそうな位置にただ付ければ良いってもんじゃないんですね。勉強になりました!
よくわかりませんがなんとなく、モービルアンテナってまだ調整できるところがありそうなのでベンキョーしてみたいと思います





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

 Windows上の MySQL で SELECT into outfile で CSVファイルをエクスポートしようとしてハマったので残しておく 環境 Windows10 Pro バージョン 1809 MySQL 8.4.0 という環境で SELECT * FROM table1...