URG ライブラリ

URG ライブラリについて

URG 用ライブラリのサンプル実装で、Windows, Linux, Mac 対応です。ライセンスは LGPL になります。

C++ 実装は SDL に依存しています。SDL のインストールについては、以下のページをご覧下さい。

ご利用においては、「どのような環境でも動作する」ということは保証できませんので、あくまでサンプルとしてご利用下さい。また、実装の詳細はソースコードをご覧下さい。


API


URG ライブラリの使い方

Windows での URG ライブラリ利用

URG ライブラリは、Windows 用に lib ファイルを生成します。


Linux での URG ライブラリ利用

Ethernet で通信する方法

サンプル・アプリケーション

URG データの閲覧ツール で、Ethernet 通信の動作確認ができます。 Ethernet 通信と Serial 通信を切替えるには、メニューの "接続" から "Ethernet" を選択して下さい。

urg_viewer_ethernet_mode.png
Ethernet 通信の切替え

URG センサの初期 IP は 192.168.0.10 です。 センサに接続するには PC 側の IP アドレスを 192.168.0.X (例: 192.168.0.1) などに設定して UrgViewer の "接続" を押して下さい。

サンプル

URG ライブラリでの Ethernet サンプルについて説明します。(現状では C++ 版のみ Ethernet 通信に対応)
urg-X.X.X/samples/cpp_ethernet/ に Ethernet 通信のサンプルがあります。 これをコンパイルして実行することで、Ethernet 通信のセンサと通信できることが確認できます。 Ethernet 通信のサンプルをビルドするには SDL_net ライブラリが必要です。

Ethernet 通信を利用する場合の変更点

URG センサ用のクラスである UrgDevice は、通信用のオブジェクトを変更できます。 初期状態では Serial 通信を行うようになっていますので、これを Ethernet のものに変更すれば、Ethernet 通信ができるようになります。

  UrgDevice urg;
  TcpipSocket socket;
  if (! socket.connect("192.168.0.10", 10940)) {
      // !!! エラー処理
  }
  urg.setConnection(&socket);
  urg.loadParameter(); // UrgDevice::connect() を使わないため、手動でパラメータを読み出す

  // !!! 以降は、シリアル通信と同様の使い方 


 All Classes Namespaces Files Functions Variables Enumerations Enumerator