MovingBaseでフィールド測定するために、回路を組んで、無線化しました。シリアル接続部が5か所もあって、間違い易いので、RX-TXを間違っても交換して確認できるように圧着コネクタで接続しました。
無線モジュールは、WIFIがESP Wroom32 DevkitとXbeeです。
※2020年12月追記 2021年版に新たな無線システム構築してます。Xbeeは卒業しました。
●結線仕様
デバイス | SimpleRTK2B | SimpleRTK2Blite | ESP-Wroom32 Dev | Xbee ZB-S2C Router |
役割 | MovingBaseモードでのRoverとなる | MovingBaseモードでのBaseとなる | WIFIポケットルーター経由でNTRIP Casterにインターネット接続して基準局からのRTCM3データを受信して、Baseに配信 | MovingBaseの結果をRoverから受信してロガー側XbeeCoordinatorへ送信 |
電源 | メイン電源: バッテリーからの入力はXbee用USBマイクロからいれる。3.3VOUTとGNDから各デバイスへ供給 |
UART2のコネクタから3.3VとGND入力
|
SimpleRTK2Bの 3.3VOUTからESP32の3.3Vピンへ入力GNDも同様 |
ESP32の3.3VとGNDから入力 |
Base-Rover間 接続 115200bps |
UART2-TX<= | <=UART1-TX 【RTCM3】 |
× | × |
UART2-TX=> 【RTCM3】 |
=>UART1-TX | × | × | |
Rover-ロガー間 接続 115200bps |
UART1-TX=> 【UBX+NMEA+RTCM3】 |
× | × | =>Xbee RX |
UART1-RX<= | × | × | <=Xbee TX 【-】 |
|
NTRIP Caster データ 通信WIFI受信 RTCM3送信RTK2go.com JP_BIZSTATION様 |
× | UART2TX=> 【-】 |
=>Serial2RX IO017 |
× |
× | UART2RX<= | <=Serial2TX 【RTCM3】 IO016 |
× |
●個別配線
①Xbee-SimpleRTK2B (Rover)接続
Xbeeと接続するUART1を使うためには、IOREFに3.3Vをいれる。
IOREFは、1.8v~5Vまで使用するIFモジュールの通信電圧
に合わせることができる
私は、3.3V固定なので、3.3V出力端子とIOREFをはんだ付けしました。オレンジ線
UART1のTX1、RX1にL型ピンをはんだ付けして、MOLEXの圧着コネクタで接続するうにしました、ここから基板裏面のXbeeのRXTXへ接続します。
裏面のXbeeの1番ピンに3.3V、2番ピンTXにSimpleRTK2BのRX1(使ってない)3番ピンRXにSimpleRTK2BのTX1を接続します。
10番ピンはGNDです。
➁MovingBaseーRover間接続
ArduSimple社の推奨構成は、SimpleRTK2Bボード上にSimpleRTK2Blite1を差し込む2階建て仕様になってますが、アンテナ線が動くと、liteのコネクタがずれて接触不良になるリスクがあるため、私は、2階建て構造はやめました。そのため、新たにSimpleRT2BのUART2とSimpleRTK2liteのUART1との結線を作成しました。
写真左がBase用のXbeeコネクタです。秋月のXbee用2.54mmピッチ変換基板を流用してます。 電源は、5Vを3.3Vにする3端子がついてますが、3.3Vしか使わないので3端子の3.3V出力端子にSimpleRTK2BのUART2の3.3Vをいれてます。TX-TX,RX-RXで結線します。
このピンヘッダをRoverのSimpleRTK2BのUART2の1番から10番に刺す
●NTRIPデータ通信結線
ESp-Wroom32 DEVkitの
Serial2(RX:IO16、TX:IO17)を使ってます。
ESP32からTX-RXだけ2ピンでSimpleRTK2Blite UART2へ結線
ESP32 TX-SimpleRTK2BliteのUART2のRX
ESP32 RX-SimpleRTK2BliteのUART2のTX
間違ったら左右交換すればいいだけなので、気楽です。
●設定ファイルとプログラムは全部コピペで簡単
設定ファイルは、前回記事で解説した通りArdusimple社の推奨設定ファイルを使ってます。ESP Wroom32 Dev kitのNTRIP Caster受信プログラムもトラ技
10月号別冊4章で解説記事で使っているものをコピペさせていただきました。ESP-Wroom32でWIFI受信します。サンプルプログラムをそのままコピーして、ポケットWIFIのSSID名とパスワードと接続するNTRIP CasterのIPと名称をプログラム内に書き込みます。
とりあえず、ArduinoIDEソースをのせておきます。
特徴は、NTRIPデータをUSBへも出力してるので、チェックできる点です。ライブラリーが必要ですので、M5Stack記事と同じですのでそちらの記事を参考にしてください。
#include <NTRIPClient.h>
/* void setup() { Serial.println(“Requesting SourceTable.”); Serial.println(“Requesting MountPoint’s Raw data”); } void loop() { } |
●動作確認
①USBシリアルをRoverであるSimpleRTK2BのPower+GPS USBマイクロへいれてXbeeCordinatorが受信しているかXCTU を使って確認
データは受信できるみたいです。
本日1月25日夕方からRTK2go.comサーバーが不通になっていて、
RTK実験ができないので明日以降外にでて、MovingBase実験してみます。