pinewell's farmer blog 農業と電子工作、ソフトウェア、バイク、車

2020年3月7日

ngrok

Filed under: GNSS — pinewell @ 11:29 AM

ngrokとは. 簡単にいうと、ローカルPC上で稼働しているネットワーク(TCP)サービスを外部公開できるサービス」だそうだ。
これを使うとグローバルIPが貰えないMVNOでも外部からアクセス出来そうだ。

2020年3月5日

自前基準局の作製

Filed under: GNSS — pinewell @ 11:18 PM

ZED-F9Pを用いた安価なRTK基準局の作製 その9

前回まででインターネット環境が整った自宅などを基準局とすることができるようになりました。(自宅ルーターのポート解放とかDDNSとかは端折ってますが。)
ここからはインターネット環境の無い場所での基準局の構築です。
実際のところ牛舎の屋根の上とか、倉庫の屋根の上など自宅にインターネット環境があっても敷地内にはLANケーブルの敷設が難しい場所もあるでしょう。
Wifiを使っても良いのですがここではMVNOを使った通信を行います。

アンテナ設置状況
D型の屋根に設置
まだ専用ケースが無くてダイソーのプラケース

・LTEルーターについて
NECから PA-HT100LNという製品が2017年の8月に発売されています。
半年前に購入した時は12,000円ぐらいだったし即入荷だったのですが、現在は最安値で13,140円しかも在庫は無しで2月22日に注文したら入荷予定が5月2日〜5月29日。即納できそうな処は15,000円を越えてきます。
RasPi3以降のWifiは高性能/電源キビシメで夏場の発熱が怖くて、どうしても有線で繋ぎたいので、代替機を模索中です。
いっそのことL-02Cでraspiから直接LTE通信してしまおうかとも。

・MVNO SIMについて
自宅からsshで繋いで管理をする都合上、グローバルIPが貰えるSIMが必要でした。調べると某ショッピングセンター系のドコモType2プランが最適です。
月1Gプランで480円。通信速度が低速時でも200kbpsなのでRTCMデータのみなら問題はありません。シリアルの通信が115.2kbpsなのですから。
1日24時間で約250MBのデータ送信を行っています。250*30=7500ひと月で8Gくらいのデータをアップロードしてますが今のところ上手くいってます。
問題があるとするならば一人5回線の制限です。とうとう妻の名前を借りることになりました。
他に低速(常時250kbps)でもつなぎ放題なMVNOがあります。某カメラ店で販売しています。
これでもテストを行っていますが通信速度的には問題ないのですがグローバルIPがもらえないので却下です。
その他2社ほど試してみた結果の結論です。

・ルーターに求める機能について
有線接続ができること。
ポート解放ができること。
DHCPサーバー機能でMACアドレスで指定ができること。
必須ではないが無線LANのアクセスポイントとなること。これができると現場でPCからWifi接続、raspiの設定変更が出来る。

この据置きルーターは使えなかった。

上記のLTEルーターはルーターとしての機能(DHCPサーバーのMACアドレス指定、ポート解放)が出来無いものだったのでゴミとなった。Amazonでも売ってますね。コメントが微妙。技適ってなに?商品です。

自前基準局の作製

Filed under: GNSS — pinewell @ 9:35 PM

ZED-F9Pを用いた安価なRTK基準局の作製 その8

RaspberryPiの設定
Raspbianをセットアップ。
sshを使えるように。/boot/ に touch ssh
基本的な設定(raspi-configによるupdate、パスワード変更など。)
GPIOのUART(シリアルポート)を使えるように。
raspi-configにて
[5 Interfacing Options]-[P6 Serial]を選択。
Would you like a login shell to be accessible over serial?に<No>。
Would you like the serial port hardware to be enabled?に<Yes>。


RTKLIBのダウンロード、unzip。
RTKLIBのstr2strだけコンパイル。
$ cd {解凍dir}/app/str2str/gcc
$ make
終わるまで待つ。
/usr/bin/にstr2strをコピー。
$sudo cp str2str /usr/bin/
接続確認
$sudo str2str -in serial://ttyAMA0:115200 -out ntrips://:{PASS}@xxx.xxx.xxx.xxx:2101/KAYANO
これで繋がるならRaspi起動後に実行されるようにrc.localの設定。
exit 0 の前の行に
/usr/bin/str2str -in serial://ttyAMA0:115200 -out ntrips://:{PASS}@xxx.xxx.xxx.xxx:2101/KAYANO

str2strでシリアルから受信、NtripCasterに接続できている様子。
Reserved MountPtsから接続されるとグリーンに変る。
解析が済むとRTCM3viewerで送信されている状況がわかる。

自前基準局の作製

Filed under: GNSS — pinewell @ 1:26 PM

ZED-F9Pを用いた安価なRTK基準局の作製 その7

NtripCater SNIPのインストール・設定
私はさくらのVPSを借りていますが自宅サーバーでも運用しています。
DDNSなどで名前解決、ポート開放などができれば自宅サーバーでも可能でしょう。
VPSを借りているのは複数台のRoverからのアクセスに耐えられる帯域を確保したいためです。
自宅サーバーのアップロードの帯域では不安で。
サーバーの能力的にはW1Gプランで十分かと。HDD容量も必要ありません。

SNIPをダウンロードしてインストールします。
・ユーザー登録が必要だったはず。
・サービスとしては動かず、ログインした状態で実行しつづけなければならない。
・LITEとしてレジストしなければ評価モードとして動作し1時間で切れる。
・LITEでレジストしてしまうとStream設定の編集・追加ができなくなる?
特に最後の部分が問題です。お金があるならばBASICを購入した方が良いです。

SNIP起動
最初の起動でいきなり配信がスタートしてしまいます。(「Auto Start」にチェックが入っている)
[Caster and Clients]タブを選択して [Disconnect]します。
[Caster IP:] 127.0.0.1 これはVPSならグローバルIPです。
[Cster Port:] 2101 特に問題なければ変えません。NtripのWellKnownPortはまだ無いようです。実質多くのアプリが2101がデフォルト値となっているようです。
Windowsのファイアウォールの設定で開放しておきます。
[User Accounts]ボタンで接続ユーザーの管理ができます。
ユーザーあたりの接続数も制限できます。
[Allow Annoymous Access for Users]のチェックを外すと匿名では接続できなくなります。
[Allow Use-SNIP.com access for quality monitoring]も外しておきます。

[Relay Streams]タブ
ここは5つの転送するストリームが登録されています。
全て不要なのでストリームを選択して右クリック [Remove] します。

[Pushed-In Streams]タブ
ここにRaspiから受信するストリームを設定します。
[Add]ボタンを押します。
[MountPt]-[Configure]ボタンでマウントポイントの詳細設定ができます。

右側から
[Mount Pt] 一意になる名称を設定します。
[City/Satte] 都道府県で良いかな。
[Contry] JP
[Data Format] RTCM 3.x(Auto)
[GNSS types] GPSとGLONASSにチェック
[Carrier] 周波の数です。ZED-F9Pは2周波なので2
[Msg Types] 空白でも作成してくれます。
[Location] おおよその値を入力しています。
[Access] 初期値のままで。
[Misc]空白です。
左側
[Password]このストリームにアップするためのパスワードです。
[Parse] チェックを入れます。送られてくるストリームを解析してくれる。
保存して [Caster and Clients]タブに戻り、[Connect]ボタンでNtripCasterとして受付待ちとなります。
その前に。
[Misc]ツールバーからの[Data File Settings]を開き、ログデータの設定をします。
容量の少ないVPSではログを貯めきれないので[Delete data files after ] 3 [Days].としてチェックをいれます。

[Help]-[Registration]
[Select the type of license below]のコンボボックスでLite(Free)を選択。
[Next]ボタンで名前とメールアドレスを入力して[Next]。
SNIP Legal Agreement を読んで [I agree to the terms of the license]に同意ができたらチェック。[Next]。
[Register]ボタンでLiteバージョンとして登録されます。
以降、ストリームの編集・削除?ができなくなります。
追加も個数を超えるとできなくなる?

自前基準局の作製

Filed under: GNSS — pinewell @ 10:11 AM

ZED-F9Pを用いた安価なRTK基地局の作製 その6

RaspberryPiとの接続

USBポートはPCとの接続用に空けています。
電源をRaspiから取っているので少し心配ですが半年以上の運用では現在のところ大丈夫。

3Dプリンタでケースを作りました。
夏場はファンが必要か?

2020年3月4日

自前基準局の作製

Filed under: GNSS — pinewell @ 11:50 PM

ZED-F9Pを用いた安価なRTK基準局の作製 その5

私が本を読んだりネットを探し回って調べた設定です。
間違っているもの、不要なものもあるかも知れません。あくまで使用は自己責任で。

基準局としてのZED-F9Pの設定(u-Center使用)
要点
使用するGNSSの設定
動作モードの設定
基準局の位置
出力するRTCM情報の設定
不要な情報の出力停止

使用するGNSSの設定
[Receiver]-[Action]-[Revert Config]で工場出荷状態。
[UBX]-[CFG]-[GNSS]でGPSとGLONASSのみEnableに。
[UBX]-[CFG]-[RATE]でMeasurementPeriod を1000から250に。

動作モード
[UBX]-[CFG]-[NAV5]の[Dynamic Model] を Stationary
[UBX]-[CFG]-[NMEA]の[High precision mode]にチェック

基準局の位置
[UBX]-[CFG]-[TMODE3]
Mode を 2-Fixed Modeに
Use Lat/Lon/Alt Positionにチェック
Lat/Long/Altを入力
Accuracyは何だろう?0.0000のまま。
[UBX]-[NAV]-[PVT]を右クリックしてEnableMassegeすると DataViewのFixModeが 3DからTIMEにかわり、緯度経度が設定した値になる。

出力するRTCM情報の設定
[UBX]-[CFG]-[MSG]
コンボボックスで
F5-05 RTCM3.3 1005 を選択 UART1とUART2とUSBのチェックボックスをON
RTCM3.3 1077
RTCM3.3 1087
RTCM3.3 1230
これらも同様に。
[UBX]-[CFG]-[PRT]
Target UART1で Protocol out に 5-RTCM3を設定
Baudrateに115200
Target UART2でも同様に。
Target USBでは Protocol out に 5-RTCM3を設定。
USBでRTCM3のみを選択するとu-Centerで表示させるためのデータも送られてこなくなるため全てのチャート表示が更新されなくなるので注意。

不要な情報の出力停止
[NMEA]を右クリックしてDisableMessage。
純粋にRTCM3メッセージのみが出力されている状態となる。
[View]ツールバーのPacketConsoleをみるとRTCM3メッセージが表示される。

[Receiver]-[Action]-[Save Config]する。
[Tool]-[Receiver Configuration]でZED-F9Pの設定をテキストファイルに書き出すことができる。
幾つかの基準局を設定する必要がある場合は設定を保存しておいてファイルから読み込んで位置情報だけを書き換えるってことが出来る。

2020年3月3日

自前基準局の作製

Filed under: GNSS — pinewell @ 11:53 PM

ZED-F9Pを用いた安価なRTK基地局の作製 その4

まず、問題となるのが基地局となる場所の正確な位置を測位することです。
と、いうのもRTKでの測位では基地局があるのが前提です。なので近くに利用できる基地局が無い場合に正確な測位には時間がかかります。最悪収束できない。
幸いにして私が基地局を設置するにあたりディーラーのNtripCasterが使えたので問題はなかったのです。

善意の基準局で運良く近くにあればよいのですが無い場合はどうしたら?
ディーラーに相談して借りるかかホクレンRTKを使えばできる。
どちらもタダってわけには行かないと思いますが…。

正確な座標の求め方
1.アンテナの設置
見通しの良い(オープンスカイ)な場所を選定。
ケーブル長は10m程度としておく。TNC-SMA、SMA-u.FLでZED-F9Pと接続。
2.PCにu-Centerをインストール
USB-C でZED-F9Pと接続するとCOMポートとして認識。
3.ZED-F9Pの設定
u-CenterにてCOMを選択して接続。
ツールバーから [Receiver]-[Action]-[Revert Config]で工場出荷状態。
この時点で衛星からのデータが正常に受信していることが別る。
COMポートのBaudrateを115200に。
[View]-[Message-View]で設定ツールを起動
[CFG]-[GNSS]で使用するGNSSの設定。GPS、BeiDou、GLONASSをEnableにしてSend。
[CFG]-[MSG]のMessageコンボボックスでUSBに出力するデータを指定。
[02-15 RXM-RAWX]のUSBにチェック Send。
[02-13 RXM-SFRBX]のUSBにチェック Send。
ツールバーから [Receiver]-[Action]-[Save Config]
これで測位に必要なu-bloxの生データがUSBに出力される。
Disconnect。u-Centerの終了。

u-Centerの設定画面

4.RTKLIBでの測位
rtknavi.exeをクリックして起動。
インプットストリームの設定。右上「I」をクリックして設定画面。
Roverにチェック Serial を選択。Optで通信速度115200。Format u-bloxを選択。
BaseStationにチェック、NTRIP Clientを選択。OptでNtripCasterのアドレス、ポート、マウントポイントなど設定。FormatでRTCM3など。
基地局によってはTransmit NMEA GPGGA Base Stationが必要な場合も。
これはクライアントの位置情報が必要な場合。疑似基地局を作成するディーラーのNtripCasterでは必要だった。ウソでない程度に緯度経度高度を入力。

「Options」ボタンでオプションメニュー。
Setting1タブ
[PostioningMode] Kinematic
[Frequences] L1+L2
使用衛星の[GPS][GLO][BeiDou]にチェック。
Setteing2
[Integer Ambiguityu Res] Fix and Hold、Fix and Hold、ONを選択
Positionsタブ
[BaseStation] RTCM AntennaPositionを選択

その他40db以上の感度のみ使うや15度以上の衛星を使うとかのオプションがあるが割愛。
「Start」ボタンでRTK測位開始。

動画を見てもらうとわかるが30秒かからずにFIXする。
基地局までの距離は数mというアドバンテージがありますが。
緯度/経度は43.xxxxxxxx と小数点以下8桁。
高度は小数点以下3桁。
FIX後は1~2cmの誤差。
ちなみにクルマに積んで計測してみたらFIX後は正確に位置を捕捉できていた。

自前基準局の作製

Filed under: GNSS — pinewell @ 5:08 PM

ZED-F9Pを用いた安価なRTK基準局の作製 その3

概念図

AgLeaderではディスプレイであるInCommand 1200にWifiが付けられる。
NtripCasterの設定はAgLeaderに行う。
その他の自動操舵システムでは、トラクターでデータをスマフォのアプリで受けて、parani SD-1000を通じてBluetooth-シリアル変換でRTCMデータを受け渡す。(こっちが主流か)

某ホクレンさんのRTK システムではスマフォに専用アプリ+paraniで使用。
NTRIPでは無くTCPのストリームとなっていてポートでユーザーを分けているようだ。
ホクレンRTKから切り替えて、自前基準局を使う場合は別途NtripClientアプリが必要。
メジャーなのは Lefebure NTRIP Client。

自前基準局の作成

Filed under: GNSS — pinewell @ 4:40 PM

ZED-F9Pを用いた安価なRTK基準局の作製 その2

必要な機材
・ublox ZED-F9P搭載GPSモジュール
私はswitch-scienceで入手できるモノを使用しています。
・RaspberryPi
最近の4とか3とかは高機能すぎて熱的に不安なので2を用いています。
・GNSSアンテナ
当初はTrimble AG25を使用して実験。現在はジオセンスで入手したりAmazonで購入できる中国製のモノを使用しています。
JCA228E、GGB0710、BT-147など。最低限GPS L1/L2 GLONASS L1/L2が受信できれば。
・ケーブル
GNSS用のケーブルは50Ω。TNC-SMAでもリバースのプラグがあるので注意。
SMA-u.FLもswitch-scienceのモジュールでは必要。
・据置きLTEルーター
Aterm PA-HT100LN-SW が良いのだが現在入手困難&高騰中。
・無停電電源装置UPS
RaspiとLTEルーターのみなので小さいので良い。
APC BR550S-JPを使用。

ソフトウェア
・SNIP
NtripCaster。Windowsが必須。
有償では8万円を超える。私は無償のLite版。
・RTKLIB
基準局候補の正確な位置を測位するのに使用。
NtripServerであるRaspiで使用。
更新が頻繁なrtkexplorerさんからダウンロードしたものを使用。
・u-Center
zed-f9pの各種設定を行うツール。
u-bloxのサイトからダウンロード。
・VPSサーバー
「さくらのVPS」にて石狩のWindowsサーバーを借りています。
W1Gプラン。

自前基準局の作成

Filed under: GNSS — pinewell @ 3:40 PM

ZED-F9Pを用いた安価なRTK基準局の作製 その1

昨今流行りの自動操舵システム。私はAgLeaderを2018年の秋から使用しているのだが、ディーラーの用意したNtripCasterが不安定な時があり、農作業を中断せざるをえない時があった。

ディーラーに言っても海外で管理しているサーバーであり復旧までどのくらいかかるかなど全くワカラナイ。

これじゃイカン、ということで自前で基準局・配信を行おうと思った次第。

下地として「トランジスタ技術 2018年1月号」を2018年9月に購入にいたり、M8P、M8Tを用いたRTK測位を行っていたことがある。
(畑の作付け面積を測るのに巻尺を持ち歩くのが嫌になっていた)

当初はM8Pを用いて実験をしていたのだが、いかんせん1周波の基準局では収束に時間がかかる。FIXが得られても木立の影に入ると復活するための再FIXまで相応に待たされ実用には至らなかった。

そんな中、2周波対応のZED-F9Pを入手したのが2019年6月中旬。
試行錯誤した上で実用になるものが出来上がったのが2019年9月。
ここにまとめる。

Older Posts »

Powered by WordPress