【ntpsec】geminiさんに聞いてみよう

監視カメラを運用しているので、そこで動かしているZoneMinderにはできるだけ正確な時計を与えてやらないといけない。

Raspberry Pi 4には、USB接続のGPSを接続していて、それをgpsd経由でntpsecにデータを渡してやり、GPSから時刻データを得るようにしている。

サーバー負荷に応じて、GPSから得た時刻データを調整するのだが、見ているウチに「あれ、進めるんだっけ?遅らせるんだっけ?」と混乱してくるので、AIのgeminiさんに丸投げ(^^:

ntpq -pn の結果から判断すると、適切な time1 の設定値は 0.077(またはより正確には 0.077251)となります。
計算の根拠
NTPにおける offset(オフセット)の単位はミリ秒(ms)です。
現在の設定(time1 0.106)において、基準となる公的機関の NICT(日本の標準時サーバー)と、お使いの GPS(SHM(0))の間で以下のズレが生じています。
    • SHM(0) のオフセット: +5.7048 ms (システム時間より 5.7ms 進んでいる)
    • NICT のオフセット: -23.0438 ms (システム時間より 23.0ms 遅れている)

GPS(SHM)を正確な NICT の時刻に一致させるためには、両者の差分である 28.7486 ms5.7048 - (-23.0438))だけ GPS の時間を遅らせる(マイナスする)必要があります。
    • 現在の設定値: 0.106
    • 必要な修正量: -0.0287486
    • 新しい設定値: 0.106 - 0.0287486 = 0.0772514

修正後の設定例
/etc/ntp.conf の該当箇所を以下のように書き換えてください。

この設定値は、USB接続のGPSからデータを取ってくるのに、遅延が発生するので、設定値によって、遅延分の時刻を先に進ませるという趣旨のパラメータ。

なので、設定値を増やすと時計が進むし、少なくすると時計が遅れるという仕組み。

ntpqコマンドで状態を見ると、基準となっているのが、Raspberry Pi 4のシステム時計で、それよりもGPSやNTPサーバーの時刻が進んでいたら正の値で、遅れていると負の値になる。

GPSの値と、基準とするNTPサーバーの値を見ていると、プラスだったりマイナスだったりするので、混乱してくるのだ(笑)

geminiさんに丸投げは楽でいいね 🙂

TP-LINK Tapo C545D ZoneMinderに設定

通常の監視範囲だと死角になっている玄関を自動で追尾してくれる。追尾後、動態検知をしなくなると元の位置へ戻る。

カメラが動くとモーター作動音がするので、敷地に入ってきた柿どろぼうさんは結構ビビるに違いない(笑)

TP-LINK Tapo C545Dはデュアルレンズで、ZoneMinderのモニタ設定は広角とズームでそれぞれ1つずつ設定する必要がある。

広角が常時録画で、ズームはカメラが動態検知して追跡するので、動態検知録画に設定してある。次に挙げるのは弄ったとこだけ。

・C545D(wide)
【general】
Source Type: [remote]
Function: [mocord] ※1
Reference Image Blend: [12.5% (Outdoor)]
【source】
Protocol: [RTSP]
Method: [RTP/RTSP]
Host: [アカウント:パスワード@カメラIPアドレス ※2
Port: [554]
Path: [/stream2] ※3
Capture Resolution (pixels): [640][368] ※4
Use RTSP Response Media URL:☑
【Storage】
Save JPEGs: [disabled] ※5
Video Writer: [encode]
OutputCodec: [h264]
Encoder:[libx264]

※注
1. 常時録画
2. Tapoアプリで作成したアカウント
3. 高画質は /stream1
4. ディスク容量節約で640×368
5. 映像で確認するので、画像は保存しない

・C545D(zoom)
【general】
Source Type: [remote]
Function: [modect] ※1
Reference Image Blend: [12.5% (Outdoor)]
【source】
Protocol: [RTSP]
Method: [RTP/RTSP]
Host: [アカウント:パスワード@カメラIPアドレス ※2
Port: [554]
Path: [/stream7] ※3
Capture Resolution (pixels): [640][368] ※4
Use RTSP Response Media URL:☑
【ONVIF】
ONVIF_URL: [カメラIPアドレス:2020]
Username: [アカウント] ※2
Password: [パスワード] ※2
【Storage】
Save JPEGs: [disabled] ※5
Video Writer: [encode]
OutputCodec: [h264]
Encoder:[libx264]
【control】
Controllable: ☑
Control Type: [ONVIF_camera]
Control Device: [profile_2]
Control Address: アカウント:パスワード@カメラIPアドレス:2020 ※2

※注
1. 動態検知のみ録画
2. Tapoアプリで作成したアカウント
3. 高画質は /stream6
4. ディスク容量節約で640×368
5. 映像で確認するので、画像は保存しない

ZoneMinderでONVIFにより、カメラのpan/tiltは制御できるが、Tapoアプリのzoomはソフトウェア処理なので対応していない。

使った感想としては、ZoneMinderは、検知設定を詰めてないと、動態検知では録画できてない場合があるので、常時録画にしてあるが、Tapo C545Dは割と動態検知がよくできている。

カメラの追尾は車などでは追尾しないが、自転車や歩行者など人と認識できるものは割とすぐ追尾状態になる。従って、ズームカメラが動く時=録画すべき時なので、ZoneMinder側の検知設定を煮詰める必要がない。

夜間は赤外線カメラに切り替わるので、前のRaspberry Pi3 + Webカメラよりはハッキリ見える。

Tapoアプリだと、ライト点灯や音声通話が可能なので、夜間の侵入者への威嚇にも使える。

なんかもう一台欲しくなった(笑)

TP-Link Tapo C545Dこうにう

今まで使ってたCloudEdgeの格安監視カメラが両面テープが剥がれて落下して壊れたので新しいカメラをこうにう。

https://www.amazon.co.jp/dp/B0G1M1PWKM

これで、13,813円って安いよなあ。
KIOXIAの512GBのmicroSDXC 12,800円も買ったけど、値段が変わらん(笑)

TP-LINKのTapoシリーズはバッテリー内蔵型を除いて、RTSP、ONVIFで外部ソフトと連携できる。

この手のカメラって、音声通話ができるので、置き配できない宅配便が家に届いて、母親が呼び鈴で出ない時に、「少々お待ちください」と配達員に言いつつ、家に電話掛けて、寝ている母親を起こすって使い方ができる。

前のカメラは外部ソフトとの連携ができなかったけど、TP-LINKのTapoシリーズだとZoneMinderというソフトと連携できるだろうから、今動かしてるRaspberry Pi3のwebカメラ停めて、このカメラと代替してもいいな。

そもそも、Raspberry Pi3も機材揃えるのに1万くらい掛かってて、加えてPTZ機能が無いのに、このカメラだと動く物を追尾するとかできるらしいから、防犯効果が格段に高いし、値段もそんなに変わらないとなると、もうRaspberry Pi3で、ネットカメラ作る必要も無くなるな。

上に付いてるカメラが広角で、PTZカメラが特定方向に向いてる時に、他の監視範囲が見えないという問題を解決してるのもいい。

金曜に到着するらしいので、週末はカメラのセットアップだな。

Microsoft Teamsのクソっぷりに呆れ返る

電車乗り過ごして、会社へ連絡するのにTeamsのチャット使ってるけど、スマホ版で「いますぐ会議」って押すと画面上何も変化なし。

暫くすると、ぴんこぴんこ音がするので、スマホの通知見ても何も無し。

恐らく、こんなクソな事をやらかすのはMicrosoft以外に無いだろうと、チャットを見てみると、「タップして音声通話に復帰」なんて通知バーが出ている。

アプリでチャット開くまで、何で音が鳴ってるのかも分からないし、「いますぐ会議」ってやったらPC版みたいにビデオ会議にならずに、勝手に音声通話を始めてしまう。

どう見てもロクにスキルも無い外注の下請けがやっつけで作った感が強いな。
Skypeの方がもっと使い勝手が良かった。良いソフトを駆逐して、自社のクソアプリを押し付けてくるMicrosoftはもう死んでくれ。

コロンビーナゲットだぜ

サブアカウントの方の火力が乏しいので、何としてもコロンビーナを引きたかったが、8000くらいあった原石を費やして、出たのがすり抜けディシア 🙁

某動画(ちりねこ)でパワースポットと言われる場所に行き、祈願やったところ、無事10連でコロンビーナゲット。

メインアカウントの方でも、ナド・クライで祈願引くといい結果が出る傾向があるので、パワースポットってマジで存在するな。

【原神】サブアカ

さすが上様。

マルチのイベントこなす為にサブアカを頑張ってレベル上げしてるけど、そういや仔竜に上様の名前をつけたんだった(笑)

非課金でやってるので、ほぼ配布キャラのみでかなりキツいけど、マーヴィカ復刻ガチャでようやく引けて、かなり楽になった。

冒険ランク突破・二が時間切れでクリアできなかったけど、マーヴィカ育てたらいけそうな予感。

【原神】トワリン秒殺……

前は散々苦労して倒してたのに、今だと秒殺だよ。

本来なら、足に何度かダメージ与えて、龍がダウンしたら、首をよじ登って攻撃当ててゲージを削るってのがセオリーなんだけど、チャスカが居たらスキルで飛行して、当てるだけ。

なんか申し訳なくなるわ。

XSERVER API DDNSモドキIPv6対応

家のサーバーのIPv6のIPアドレスをDNSに登録した。
DNSに問い合わせれば、家のサーバーのIPv6アドレスが分かる。

IPv6のアドレスは、半固定だからIPv4みたいに変わってしまう事を余り考慮しなくて良いという認識だったが、家のルーターのIPv6のフィルター見てみると、IPv6のアドレスが変わっていた。

端末のIPv6アドレスはルーターの再起動などで変わってしまうので、その度にルーターの設定を変更しないといけないが、そういう面倒を避けるには、メーカー曰く、プロバイダに固定IPなどの契約をしてくださいとの事。

でもまあ、IPv6で接続不能になっていても、IPv4で家のルーターに接続して設定変更すれば、一応、IPv6で通信できるようになるから、プロバイダに固定IPの課金はしない 🙂

XSERVER は IPv4環境なので、IPv4のIPアドレスしか返さないから、KAGOYA VPSの irc.noizumi.orgに接続する。

irc.noizumi.org は当初25GBしかディスク容量が無かったので、できるだけ最少構成にすべく、PHPはインストールせずに、apache2のCGIモジュールを有効にし、CGIでpythonスクリプトにより、IPアドレスを返すようにしている。

apacheのログ

ちゃんとIPv4とIPv6でアクセスできている。