\CAPTION\ |
\CAPTION\ |
現状で、
この項準備中。
あとは、普通にシリアルポート用のプログラムを書くだけで、通信速度設定でB500000を指定するのみです。
以下、動作を確認したプログラムをご参考までおいておきます。
sickcomif.ccは、LMS200と通信するために開発したC++のクラスです。
sickmap.ccは右図のように、画面にリアルタイムに検出値を表示します。
sickcomif.cc は3年ほど前に勢いで作ったこともあって、すでにわからなくなっている部分もあり、お問い合わせや拡張にはお答えできない可能性が大です。が、ご自分で適当に書き換えて使う分にはいっこうにかまいません。
蛇足:制御専用機なのでrootでログインして、そのまま作業しています。気にしないでください:-)
最低限のテレグラムコマンドしか実装していませんが、一応、データの検出はできます。
ただし、かなりいい加減&動けばいいやなので、通信がちゃんとつながらない場合があります(おそらく、ハンドシェークでなにかミスがある)。
gcc -o sickdump sickdump.cc
でコンパイルしてください。
ただし、コンパイルにはEGGX / ProCALLが必要です。また力任せに書くため、PCにもそれなりにスペックが必要です(Xが速ければいい)。
EGGX付属のコンパイルスクリプト egg は C言語プログラムのコンパイル用なので、それを修正して作ったeg++を用いて、
eg++ -o sickmap sickmap.cc
でコンパイルして使います。
以上は、自作の変換基板、秋月部品でつくった回路ともに動作を確認しています。
なお、通信ポートの設定については、SickLMSIF::SetComSpeed(int baud,int local) をご覧ください。シリアルポートの使い方の例にはなるかと思われます。