問題タブ [ros]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xml - ROS と SMACH の統合
私は現在、QT を使用して、別の QT GUI から送信された ROS メッセージから受信した XML 文字列に基づいて変更される GUI を開発しています。これは正常に動作していますが、ROS と SMACH を使用して、SMACH ステート マシンの状態に基づいて異なる XML 文字列を GUI に送信するノードを作成する必要があります。
私は SMACH の経験がなく、ROS パブリッシャーとサブスクライバーを SMACH ステート マシンと統合する方法の良い例を見つけることができませんでした。
例や助けをいただければ幸いです。
c++ - Twist を使用して移動する TurtleBot ROS
TurtleBot 用にプログラミングしようとしていますが、ロボット用のチュートリアルが大幅に不足しており、機能する独自の C++ を作成できませんでした。キーを押したときにロボットを動かすためだけに、別のロボットのチュートリアルを使用しようとしています。
ソース チュートリアルはここにあります: 、発行トピックを "/cmd_vel" に変更しただけです。
コードは正しくコンパイルされて実行されますが、コマンドが発行されてもタートルボットは動きません。理由はありますか?
追加情報:
Turtlebot に付属のラップトップを使用しているときに、メッセージが送信されていないように見えます (または配信されていません)。別の端末には、次のものがあります。
と
情報あり:
エコーの出力はまったくありません。
ros - 機能に影響を与えずに ROS フォルダのパスを変更するにはどうすればよいですか?
ROS フォルダの場所を変更したいと思います。
現在のディレクトリは次のとおりです: root/opt/ros
しかし、それを移動 (切り取り、貼り付け) しただけでは、ROS は機能しません。
どうすればデスクトップに移動できますか (ROS はまだ動作しています)?
(私は ROS Diamondback を持っています)
robotics - Robot OperatingSystemROSブック
ROSアーキテクチャの基本を学ぶための本が必要です。誰かが紹介のための良い本を知っていますか?
よろしくお願いします...
c++ - free(): ベクトルの無効なポインタc++
私の問題はstd:vector<vec4i> ( p_lines and filt_lines)
、関数の最後で割り当てを解除できない関数で作成されることです。そのためfree(): invalid pointer
、コードの実行中にエラーが発生します。場合によっては、セグメンテーション違反エラーが発生しますが、gdb でソースをトレースできませんでした。この関数の目的は、画像のエッジを見つけ、そこの交点を見つけることです。ほとんどの線が交差している領域では、長方形が溺れています。写真はROSビデオフィードから来ています。
gdb でデバッグするのに疲れました。無効なポインター アドレスはp_lines
ベクターの先頭アドレスです。gdb フレームは、関数の las } を指します。free(): 無効なポインター エラーを解決するにはどうすればよいですか。gdb からのエラー メッセージ:
p_lines の出力は (_M_start = 0x80cc482 is equal with free(): ip :0x080cc482):
タイプミスを修正した後、いくつかのテストを作り直しif (countP>0)
、最後に を追加しました。無効なポインター操作が表示されるフレームが見つかりました。img には 12 個の p_lines と 2 個の filt_lines がありますが、countP=0 (したがって、2 つの線は img サイズの外で交差します)。gdb は、 _M_start = 0x80d4e70 の開始アドレスを呼び出した後HoughLinesP()
、クラッシュ後に0x080d4e71に表示され、関数 gdb フレームでは p_lines の開始アドレスが_M_start = 0x80d4e71であることを示しました。何のフラック?ベクトルの開始アドレスが1ビットで変わる可能性があるのはどうしてですか?p_lines
free(): i.p.
p_lines
最後に、ビットの変化が発生する正確な瞬間を見つけました。
したがって、この場合のサイズfilt_lines
は 2 です。ビット シフトfor
は、1 行目と 2 行目がチェックされた後に表示され、 j=1 および j<2の場合にジャンプします。なんで?:/ このエラーを解決してください。どうも
ogre - OSXへのROSGroovyのインストールが失敗する-rvizとOGRE
ROSGroovyをmacosxにインストールしようとすると、http://www.ros.org/wiki/groovy/Installation/OSX/Homebrew/Sourceチュートリアルに従って、次のようになります。
[60%]CXXオブジェクトの構築src/ rviz / CMakeFiles / rviz.dir/moc_widget_geometry_change_detector.cxx.oCXXオブジェクトの構築src/rviz / CMakeFiles / rviz.dir / moc_selection_panel.cxx.o [61%]CXXオブジェクトの構築src/ rviz /CMakeFiles/rviz.dir/moc_tool_properties_panel.cxx.oリンクCXX共有ライブラリ/Users/mllofriu/ros_catkin_ws/devel_isolated/rviz/lib/librviz.dylibld:-lOgreMain clangのライブラリが見つかりません:エラー:リンカーコマンドが終了コードで失敗しました1(-vを使用して呼び出しを確認)make [2]:*[/Users/mllofriu/ros_catkin_ws/devel_isolated/rviz/lib/librviz.dylib]エラー1make[1]:[src / rviz / CMakeFiles / rviz.dir / all]エラー2make: **[all]エラー2
<==パッケージ'rviz'の処理に失敗しました:コマンド'/opt/ros/groovy/env_cached.sh make -j4'がゼロ以外の終了ステータスを返しました2コマンドが失敗し、終了しました。
OgreMainはOSXには存在しないようです。この問題を回避するにはどうすればよいですか?
opencv - opencvクラス「cvKalman」が認識されない
問題があります。ROSでは、openCvを使用してカメラフィードを処理します。今、私はcvKalmanを実装しようとしましたが、このタイプは認識されませんが、opencvの例はうまく機能します。
何が欠けているのですか、なぜこのタイプが認識されないのですか?
これがROSノードへの私のインクルードです:
python - グローバル変数の代わりに内部クラスを使用する
グローバル変数の代わりにクラスを使用して状態を保持しようとしています。例として、オブジェクト inner は変数 Outer.x を参照したいと考えています (以下の例を参照)。
独自のクラス入力 ( ros_smach )を必要とするライブラリがあるため、これを行っています。
みんなありがとう