ITK2019ネットワーク(仮称)試験

 ADXL355使用によりPaspberryPiを使用したIT強震計っぽいものが安価に作成できる見通しがたつようになったものの、IT強震計が当初より志向していた「草の根型地震防災情報システム」を実現するめどはたっていませんでした。というか、声はあちこちで上がっていてもその当人はサーバコストを負担したくないという本音のためか、標準化を考慮したネットワークを構築する動きがありませんでした。誰も作ろうとしないので、RPi-ITK(ADXL355直結品だけでなく、win対応ロガー接続したものを含む)を用いて安価なネットワークを構築する実験環境を調達することにしました。WINシステムと改良ITKプログラム群を駆使し、OpenVPNとさくらVPSを組み合わせることで、685円/月の維持費のみ(各参加者のインターネット接続費用と電気代は別)で構築できる、充分な機能を有した観測ネットワーク構築手法の確立を目指します。VPN経由でうまくいくことはわかりきっているので、負荷試験と、下に並べたような表示環境(今のものはステーション用に作られていてスケーラビリティが良くない)の標準化を行っていきます。開発環境そのものを兼ねるので、たまに一部不具合が出ることはご容赦ください。

時間指定波形 スペクトル比(Javaアプレット併用) リアルタイム波形選択

※現在接続しているRPi-ITKには、たまにT強震計運用に切り替わるものがあります。列車に乗っているときしか起動しないし、回線が切れることもあるため、ADXL355のデータが途切れることになります。また、このときは(モバイルバッテリで駆動できない)青箱は置き去りにされるため、完全にデータが途切れます。このとき他のセンサの表示も止まるのは、winPrint.jsのバグです。
※ADXL355と他の廉価センサ(ITK-002=9万円くらい、model-2442=20万円くらい)の比較またはT強震計のリアルタイムデータが、http://itk.seism.jp/taka/itk0f.htmlで表示できます。

 構築開始したばかりなので、接続ステーションの変化や構成プログラムの改良に伴い、表示内容は変化します。なお、このサイトが既にさくらVPS上に構築されています。

 開発を進めるにあたり、次回のIT強震計研究会(3月20日)で参加者を募る予定です。RPi-ITKADXL355(または適当なwinロガー)は自腹で用意してください。ソフトウェアについては、即実行可能なSDイメージとして一括配布する予定です。なお、データの制限無し公開前提(制限技術は後から考える)でネットワークを組みます。

構成要素

VPS (virtual private server)

 事業者が用意したサーバ内に仮想マシンが用意され、それを利用できるサービス。レンタルサーバ(ホスティングサーバ)では1台のサーバを一般ユーザ権限で共有するのに対し、VPSでは仮想マシンに好きなOSをインストールでき、当然管理者権限を持つことができる。ここでは、さくらVPSを使用している。定額制。同様のサービスであるAmazon EC2は完全従量制のため避けた。

RPi-ITK(強震計)

 RaspberryPiにアナログデバイセズのADXL355を接続して構築した強震計。unixマシンとセンサ1つがセットになった構成という点で、IT強震計としては初期の試作機世代に近い。後になって提唱された、ITKセンサ(ネットワークデジタルセンサ)→ITKステーション(ローカルサーバ)→ITKサーバ(上位サーバ)という構成モデルに合っていないため、ITKネットワークの構成については再定義する必要がある。

ITKサーバ

 winデータを集約するストレージを持ったサーバ。ここでは、貧乏人構成(コストを最も低く抑えることに挑戦)のため、ローカルに設置してストレージをVPSに対してエクスポートしているが、資金潤沢ならVPS上に構築した方が信頼性は高い。

(a)ITKステーション

 デジタルセンサを複数ネットワーク接続したローカルサーバ。基本的に、観測対象の建物ごとに設置される。aが付いているものはaries_stationがインストールしてあるため、aLab製ITK-002やomron製IoLAM-01を接続できる。

RPi-ITKセンサ

 RaspberryPiにアナログデバイセズのADXL355を接続して構築したデジタルセンサ。winパケットを送出するだけのセンサにするには、RaspberryPiの演算能力に余裕がありすぎて電力効率が良くない。かといって計算をさせてしまうと、RPi-ITK(強震計)と違いがなくなってしまう。ITKステーションにもADXL355をつないだら、さらにわけが分からなくなる。旧ITKではステーションで集中的に行われていた演算を、各センサに分散する仕組みを考えるべきと思われる。

T強震計

 列車の振動計測用に適したものを作る予定。モバイルバッテリー駆動。T振動計とする方が名前としては正しい。ネタです。計測対象が別に列車に限らないことには、後から気づいた。

VPN (virtual private network)

 winの転送プロトコルは認証や暗号化とは無縁なため、なりすまし等の不正行為に対して脆弱である。もともと専用線や閉域網を使用する大学等の観測では問題にならなかった。やむをえずインターネットを経由する必要があるときには、ルータ間でトンネルするタイプのVPNがよく使われる。ここでは、設定が容易でVPSで実行できるOpenVPNを使用している。IPSecよりも設定が容易な代わりに、負荷は高いとのこと。トンネルできさえすれば良いので、将来もっといいものが出てきたら切り替えれば良い。

開発課題

イベント処理

 旧ITKでは、名大ナウキャストのために考えた判定を無理矢理流用して(単独)建物観測まで対応させたが、それ以上の発展(上位サーバとの連携)をそのままの状態で行うのは無理があった。新規に開発するため、現在このネットワークにはトリガ機能がまだ付加されていない。スタンドアロンで機能する自律トリガと、ネットワーク連携前提の連動トリガを独立して実装するのがいいように思う。トリガ方式の検討だけでなく、イベントデータの管理方法も、配布した後まで含めて考える必要がある。

連続波形収録ルール

 現在はとりあえず、旧ITKの旧ルールに基づき、/data/yyyymmdd/yymmddHH.MM というディレクトリ・ファイル構造で1分ファイルを蓄積している。データルートを/data固定から可変にするのは当然として、日ディレクトリの前に年ディレクトリをはさむ(.../yyyy/yyyymmdd/yymmddHH.MM)方が長期データ管理には適しているとも考えられる。そのあたりは、実際のWINシステムでどのように運用しているか情報を集めて検討する必要がある。

数値双方向通信

 今はとりあえずWINで連続波形を転送しているが、実際の強震計の運用ではイベント波形だけが必要で、連続波形は不要な場合が多い(特に廉価センサでは微動もはかれない)。ネットワークでやりとりされるのは、秒震度などの数値情報とトリガ情報だけでよい(名大ナウキャストで実施していたもの)。サーバでは、各強震計のトリガ情報を集約するだけでなく、ネットワーク全体としてのトリガ判定情報を付加して送り返す(一斉トリガ)。緊急地震速報などの外部トリガ情報も取り込めるようにする。

トンネル技術

 VPNはおおげさなので、実験ネットワークならともかく、大量に強震計を配置する段階になると不適切である。winのパケットや数値情報パケットは、TCPコネクションを張った上で、そこをトンネルするような仕組みを開発する。暗号化が必要な場合は、そのトンネルを暗号化する。また、このコネクションを用いて、イベントファイル回収などファイル交換も可能とする。

IT強震計類

 IT強震計(鷹野他 2004)を名乗るシステムは、発表前(遅くとも2002年)から開発が進められ、現在まで改良が続けられているため、いくつかの世代に分けることができる。

unix化前

 科研費(IT強震計を用いた草の根型地震防災情報システムに関する研究)予算で最初にOYOSIに発注されたものは、OSにWindowsを使用したものだった。2002年秋の時点で既にソフトウェア(名大の建物用?と共用)の外注が済んでおり、unix使用への方針変更に苦労した。ハードウェアに関しては方針変更後も無駄にせずに、サーバPCは後に建物IT強震計の試作&デモサーバに、センサとADユニットはIT強震計試験機に改造(100sps→400sps)の上転用した。

IT強震計試作機世代

 センサ(3成分)1台に処理部1台という普通の強震計の構成。特徴としては、処理部がunix動作でWebサーバとなっており、そこからPCでデータ取得ができること。データのフォーマットにはwinを使用しているが、(使い方が分からなかったため)unixなのにwinシステムそのものは使用していない。見た目はかなり異なるが、箱が違うだけで中身はほぼ同じ。

unix実証機

 IT強震計のunix化に理解が得られなかったために、実現が可能であることを示すために2002年11月に作成。MicroServerで秋月の加速度計キット(頑張って50sps程度)の出力を受けてwin変換して収録。表示はまだJavaアプレットで作っていなかったため、PostScriptを出力する名大のxyplot似のPerlライブラリをCGIに埋め込んでPDF変換して表示。それでも、ソフトウェア外注済のため了承を得られず。名大ナウキャストの地震計ではこの方法(unix搭載自作ソフトによるロガー)を使用することで地震学会秋期大会時の打合せで即決(OYOSIとしてはQ330を売りつけるつもりだったらしい)。

IT強震計試験機、名大ナウキャスト地震計

 名大ナウキャスト地震計用プログラムを試験しながら開発する途上で、2002年12月に未改造ADユニットの出力(100sps)を安定してwin変換できることを証明したことにより、IT強震計をunix化する了解をとりつけ、市販の機材と改造ADユニットを組み合わせて作成されたのがIT強震計試験機。使用OSはFreeBSDで、これは建物IT強震計まで基本的に継続。UPSは、FreeBSD用のソフトが用意されている三菱製を使用した。センサは、IT強震計試験機が静電容量型のAN-315、名大ナウキャスト地震計がフォースバランスのEpiSensorES-T。

ISR(名大ナウキャスト地震計量産機)

 名大ナウキャスト地震計で使用した、MicroPCとADユニットの基板を取り出し、UPSの代わりをする電源制御基板を新規に作成して、それらを一つの筐体におさめたもの。センサは外付けで、EpiSendor、FBA23、AN315が接続できた。どのセンサを接続しても、winファイル上での極性と方位のならびは統一される(当初はENUであったが、鷹野先生から気象庁に合わせて統一すべきとの指示があり、後に観測点設置済のものを含めてNEUに変更)。

IT強震計試作機

 ISRと同じ基板構成だが、可能な限り小さく組み上げ、センサ(AN315相当)も内蔵した作品。1台のみ存在。無理な小型化の代償として、整備性はかなり悪かった。機能としては、ADXL355を使用したRasPi-IT強震計(ITK2018)とほぼ同等。

ITK-Seneor使用型

 ISRの販売終了に伴い、名大ナウキャスト地震計の追加用に作成。MORBと組み合わせることで、ISR+AN315と同等になる。あくまで代用品なので、数は出なかった。デモ用に、PowerBookG4を使用する構成も作成した(北斗星波形は、これを使用して収録)。

建物(用)IT強震計

 ITK-Sensor(OYOSI MODEL-2442、通称"青箱")を使用することで、サーバに複数のセンサを接続し、建物観測を実現したシステム。ITK-Sensorは、1台20~30万円なので、従来よりも安価に建物観測が実現できるようになったらしい。配線に既設のLANを用いるため、工事費もかからないということになっているが、実際にはセンサを設置する場所(EPS等)にはLANが来ていないことが多いため、現実はそんなに甘くはなかった。それでも、太いアナログ信号のケーブルを建物中引き回すよりは、LANケーブルで済む方が楽なのは確か。東大地震研究所、東大生産技術研究所、横国大建築学棟、東大情報学環、東大情報基盤センター、横国大大学院工学研究棟に設置された。この構成によるデモンストレーションは、学会等で繰り返し行われた。

(旧)ITK

 2008年にIT強震計コンソーシアムが発足し、なんやかんやで、(建前上)コンソーシアムで標準化された仕様にしたがって認定を受けたもののみがIT強震計を名乗れることになったため、従来からの試作機系の直接的な延長のシステムは正真正銘のIT強震計とは異なる(足りない)ということで、とりあえずITKと呼称することになった。従来のシステムとは、win形式に変換した後のデータ・プロトコル・処理において互換性を有している。細かい要求変更により、ソースコード直書きで細かい変更が繰り返され、あるときまとめてそれらを設定ファイルに切り出すということをしていたため、設定ファイルとプログラムの対応がとれていないとちゃんと動作しない。以下のバージョン(年式)番号は、それを整理するために便宜的に付けた非公式なもの。震研直轄以外の配布は、セントラルおよびaLabからのみジオラマを用いた学会展示には、この世代のものを使用していた。内部処理では建物IT強震計をコピーしたためwinフォーマットを使用しているが、aLab独自プロトコルで接続するセンサ以外の使用は考えられていない。正規のIT強震計としては「1.標準化され仕様は公開される」「2.バージョンアップに際しては旧仕様を置き換えられる互換性を維持」「3.オンサイトワーニングに使える低遅延」(他にもあったかもしれない)を求められるが、3を満たせないため正規品が開発されるまでの短期間の代用品兼たたき台の環境となる予定であった。なお、「4.構造物被災判定機能を備える」というのは当初は入っていなかった。

ITK2008

 建物IT強震計をセントラル製のセンサで再構築したもの。機能に変化は無い。ITK-001は、ロットごとにチャネルならびと極性が変化していたので、その対応で細かいバージョンの違いが存在する。

ITK2010

 このバージョンまでは、納入先によってソースコードを書き換えていた。非公式にメール送信機能を実装した。

ITK2011

 設定をiniファイルに集約し、サイト毎にソースファイルの調整をする必要をなくした。また、スペクトル計算処理を実装し、結果的に微動計も同じファイルセットで使用できるようにした。scorpion開発開始に伴いITKの仕様強化(変更)が禁止とされ、基本的に更新ができなくなった。

ITK2012

 ペルーITKのためにメール送信機能を複数送信先設定出来るようにした。

WIN非互換

scorpion

 ITKに東大の震度速報システム(開発はクロックライク)へのインターフェースを付加するという名目で発注された。旧ITKまででプロトコルを転用していたwinでは1秒データをためてパケットとするために必ず発生する遅延を回避し、再送制御プロトコルを新規開発して接続信頼性を向上するという、意欲的な要求仕様であった。このインターフェースを、IT強震計の標準化案として提出させるつもりとのことだった。このため、この完成までは混乱を避けるため旧ITKの処理機能拡張は停止することとなった。サーバはFedraで、ステーションはOSX使用のITKステーションにプログラム追加する予定だった。通信プロトコル等を開示できないとのことで、震度速報システム接続には使えなかった。その影響で、DISANETのシステムもITK2012相当のままとなった。

aries

 構造物被災判定に特化したシステム。イベント判定などは、scorpionを流用しているとのこと。いろいろ非公開なので(鷹野先生の定義する)IT強震計に含めるかは微妙。IT強震計では互換性を重視することにしているが、ITKまで共通して装備していた波形表示機能とは互換性が無く、winシステムとの親和性もほぼ無いが、別途旧ITKのプログラムをインストールすればリアルタイムでデータを抽出してwinのパケットに変換することはできる。(旧ITKがIT強震計ではないので、互換性を持たせる必要はないという人もいる)

新ITK?

 改良を停止され、実質的に配布もできなくなっていたITK2012の問題点に対処するために作成開始。表示をJavaアプレット依存からJavaScript依存に更新することで、今後も安定して使用可能とした。更新禁止時に温めていたアイディアを盛り込んで徐々に更新中。ITK2012までとは別プログラムで構築するため、最終的に配布制限にはかからなくなる予定。

ariesITK(2017)

 ITK2012を波形表示JavaScriptに暫定的に対応させ、RaspberryPi上に構築したもの。RaspberryPi版のitk_server_2007_cuiが提供されないことによりaries_stationで代用しているため、ariesステーションの機能も持っている。ITKとariesの同居のために、かなり無理をした構成になっている。aries_stationがよく止まったままになるので、あきらめた。そもそも、2017年の時点では、ariesのRaspberryPi対応はまだ不十分であった。

aITK2018

 RaspberryPi用に最適化し、ITKベースとすることで安定化を図ったもの。ITK2012までのITKステーションを機能をそのまま維持しつつaries化できる。微妙に配布制限(特にariesライセンス所持者へのWINとwinPrint.js紹介自粛要請)があるため、実際には限られた人以外は使用不可。

RPi-aITK2018K

 楠先生の要望を反映して、いろいろな用途に設定拡張する前提で初期設定状態を再検討して構築されたaITK。IT強震計用のロガーとして売られていたものは全て接続可能という優れもの。このSDイメージと構成部品リスト、組立説明、設定説明をセットにして配布予定だったが、aLabが材料調達の受注拒否したため大幅遅延。。

RPi-aITK2018i

 RPi-aITK2018kがもたついている間にRaspbianがstretchベースからbusterベースに変化してしまったので、それに合わせて再構築したもの。あわせて、WINシステムのバージョンも3.0.6とした。

旧ITKステーションのRaspberryPiへの置き換え、およびariesへの追加は、RPi-aITKを使用すると容易に行えます。その件に関する質問は、ito@logvox.jpまで。

ITK2020

(何かと遅れているので、番号変更しました…)
 WINシステムベースに変更予定。aries_stationをインストールしないのでITK-002等は接続できず、実質的にセンサはADXL355専用。ただし、WINシステムを動かしているため、既存のwin出力ロガーを接続可能。起動プログラムの設定でステーション、サーバとしても使用できるスケーラビリティを実現予定。開発予定のネットワークのベースシステム。プログラムは全て置き換えられるため、配布制限は撤廃できる予定。ただし、旧ITKのプログラムは拡張が容易なため、リアルタイムFFTを容易に実装できてしまったため、これまで移植して完全に決別するのは次のバージョンにずれ込むかもしれない。なお、旧ITKで問題であった低遅延対応は、名大ナウキャストコンセプトを復活させればこの構成では解決可能。RaspberryPiを使用した構成が以下のような用途に使えると考えられる。



IT強震計 IT強震計研究会 IT強震計コンソーシアム 波形表示JavaScript