0Lが故障エラーで、0Mが不調エラーです。 応答ステータスが0L(故障)の場合、IIコマンドのSTATはError エラー番号 応答ステータスが0M(不調)の場合、IIコマンドのSTATはUnstable エラー番号 と表示されます。 ※エラー番号は、弊社HPからダウンロードできるURM-40LC-EW ユーザーズマニュアル PNP出力のP42 7.3 エラーコード表の表1を確認してください。 その他にもエラーコードはございまして、弊社HPからダウンロードできるURM/UGM通信仕様書のP18 5.3.1 共通 ステータスコード に内容が記載されているため、一読お願いいたします。
In Connection_information, if the character string stored in argv is "-e", it is judged as an ether type sensor, and if it is "-s", it is judged as a serial type sensor. Therefore, argc and argv are required.
Do you mean SCIP_library.cs? This sample gets the distance value from the sensor. Multi-echo and intensity cannot be obtained.
Hi Where did you find SCIP2.dll? SCIP2.dll is not an official library of Hokuyo Automatic CO., LTD ,so we cannot be supported. .NET DLL does not support ND commands.
Hi. The multi-echo is a function that can acquire distance data from two or more laser beams that have returned on the same step angle. When a laser hits a transparent object such as glass, rain, or fog, or a translucent object, two types of lasers, a laser that reflects on the transparent object and a laser that transmits it and reflects on an object in the back, may return to the sensor. By using the multi-echo button of UrgBenriPlus, you can reduce troubles by distinguishing objects with close...
800以上、900未満の間の値を新たに配列に組み込みたいとのことなので、 先ず新たにList型をnewしたものを定義する必要があります。 例:List<int> new_d = new List<int>(); その後、 if (distances[j] < 900 && distances[j] > 800)の中に、下記のように記述すればdistances[j]を新たに配列に組み込むことができると思います。 new_d.Add(j); 配列型に変換したい場合は新たに配列型を宣言し、.ToArray()を使用すればいいと思います(下記例参照)。 例: int[] array; array = new_d.ToArray(); UrgNetworkで提供しているUrgLibraryなどのライブラリやアプリケーションの仕様や不具合等に関する質問はお受けしますが、それらに直接関係のない内容については、申し訳ありませんがこれ以上対応致しかねます。 プログラミングの初歩的な質問に関しては下記URLなどの掲示板を利用してみてください。 https://teratail.com/tags/C%23 ...
800以上、900未満の間の値を新たに配列に組み込みたいとのことなので、 先ず新たにList型をnewしたものを定義する必要があります。 例:List<long> new_d = new List<long>(); その後、 if (distances[j] < 900 && distances[j] > 800)の中に、下記のように記述すればdistances[j]を新たに配列に組み込むことができると思います。</long></long> new_d.Add(j); 配列型に変換したい場合は新たに配列型を宣言し、.ToArray()を使用すればいいと思います(下記例参照)。 例: int[] array; array = new_d.ToArray(); UrgNetworkで提供しているUrgLibraryなどのライブラリやアプリケーションの仕様や不具合等に関する質問はお受けしますが、それらに直接関係のない内容については、申し訳ありませんがこれ以上対応致しかねます。 プログラミングの初歩的な質問に関しては下記URLなどの掲示板を利用してみてください。 https://teratail.com/tags/C%23...
25スキャン毎にデータを出力したいと仮定すると、while文を使用すればいいと思います。カウント変数を別で用意し、1をプラスしていく。カウント変数が25になったら表示し、カウント変数を0にする。という風に書けばいいと思います。
xの表記が分かりにくいのでthetaと表記の仕方を変えるのをお勧めします。 ※xがラジアンの角度と考えます。 その場合、θは下記URLの式により https://sourceforge.net/p/urgnetwork/wiki/detect_sample_jp/ theta = ((2 * Math.PI) / 1024 ) * ( (j + start_step) - 384)+ (Math.PI / 2); と求めることができます。
今の状態だとdistancesに角度xを足したものを表示しています。 別々に表示させたい場合は、 Console.WriteLine("distance: " + distances[j].ToString() + "degree:" + x); という風にすればいいと思います。
お持ちのセンサの角度分解能(弊社HPでご確認ください。URL:https://www.hokuyo-aut.co.jp/search/)×67(diatances[88]~distances[155]の間のステップ数)をしていただくことで、角度を求めることができます。
distances[0]: distances[1]: distances[2]: ・ ・ ・ のように表示させたい場合は、"d[" + j + "] : "という風に記述すればいいと思います。
はい、そうです。Console.WriteLine()の;(セミコロン)が抜けているので、そこだけご注意ください。
特定番目を表示させたい場合は、distance[100]のように表示させたい番目を指定してください。 0~100まで連続で表示させたい場合は、for文を使用すればいいと思います。
はい、そうです。
ステップ角の範囲を下記で初期化している場合、distance[100]には0から数えて100番目(1から数えた場合は101番目)ステップの値が格納されます。 start_step = 0 end_step = 760
distance[100]は100step目の距離値が格納されています。 例) ステップ角の範囲を下記で初期化している場合、distance[100]には0~760の100step目(0から数えて100番目)の値が格納されます。 start_step = 0 end_step = 760
センサの防水カバーはございません。 防水モデルのセンサ(IP67)は以下の機種です。 ・YVT-35LX ・UTM-30LX-EW/FEW ・URM-40LC-EW ・UXM-30LX-EW ・UXM-30LXH-EWA ・UXM-30LAH-EHA/EWA ・UXM-30LN-PW/PW02