ROS
実際のところ $ ros2 run xacro xacro src/robot_description/urdf/robot_arm.urdf.xacro > /tmp/check.urdf $ check_urdf /tmp/check.urdf robot name is: robot ---------- Successfully Parsed XML --------------- root Link: world has 1 child(ren) ch…
実際のところ $ sudo apt install ros-humble-joint-state-publisher-gui実行すると、rvizと一緒にこんなのがでる 参考もと ROS Package: joint_state_publisher
実際のところ Tiryoh氏の作っているこのイメージ、NoVNCが入っているのでブラウザを立ち上げる必要がなくてお得 $ docker run -p 6080:80 --shm-size=512m tiryoh/ros2-desktop-vnc:humblehttp://127.0.0.1:6080/ にアクセスすると、デスクトップ画面がでる …
実際のところ 前提 Ubuntu 22.04 LTS ROS1 noetic on Docker AgileX Tracerの環境構築済み ROS 2 humble 作業ディレクトリは "~/dev_ws" ROS 1側の用意 $ roscoreターゲットであるtracerのノードを起動 $ roslaunch tracer_bringup tracer_robot_base.launch…
実際のところ 前提 Ubuntu 22.04 LTS ROS1 noetic on Docker ROS 2 humble 作業ディレクトリは "~/dev_ws" 構築 $ cd ~/dev_ws/src $ colcon build --symlink-install --packages-select ros1_bridge --cmake-force-configure環境に反映 $ source ~/dev_ws/i…
実際のところ Dockerfile 以下のような内容をownnoetic.dockerfileとして保存 # Ubuntu 20.04 LTSをベースイメージとして使用 FROM ubuntu:20.04 # 環境変数を設定 ENV DEBIAN_FRONTEND=noninteractive # ROS Noeticのインストール RUN apt-get update && ap…
そりゃそうだろうという話ですが、なぜか詰まったため 実際のところ ROS 2 humbleのcolconでビルドしたlaunchファイルはinstallディレクトリのものがコールされます。 srcにも同じものがあるので、たとえばlaunchファイルが直下のconfigファイルを参照してい…
実際のところ サービスを有効化し、力覚センサーを有効化する 設定ファイル $ cd ~/dev_ws/install/xarm_api/share/xarm_api/config/ $ vim xarm_params.yaml最終的に、falseになっている以下の行をtrueにして有効化。 ft_sensor_enable: true ... get_ft_se…
実際のところ depthがmoduleなのに対して、rgbはcamera。 私はこれで数日潰しました。 ros2 launch realsense2_camera rs_launch.py enable_color:=true enable_depth:=true depth_module.profile:=848x480x15 rgb_camera.profile:=848x480x15 pointcloud.en…
Systemdでプログラムを初期起動させる際、周辺デバイス(たとえばLANとか)の立ち上げが遅くてアプリが起動できないといったケースがあります。 まぁ、疎通するまでリトライするとかすればいいのかもしれませんが。今回は、Systemdのタイマーユニットを使っ…
今回はROS 1のお話。 実際のところ ターゲットがFloat32型をとるとした場合 直接 $ rosservice call /service_name \-12.4とやると、 "no such option: -1" といった塩梅で怒られます。 要するにマイナスでなくオプションとされてるわけです。そこで、バック…
実際のところ UFactory Lite6用ノード Joystick用ノード JoystickでUFactory Lite6を動かすpythonアプリ の三つを起動する例を考えます。 from launch_ros.actions import Node from launch.actions import DeclareLaunchArgument, ExecuteProcess from laun…
実際のところ "remap"に変更元と変更後を記述することで使用可能 ros2 run joy_linux joy_linux_node --ros-args --remap joy:=/lefthand
実際のところ rclpyでやる せっかくVelもあるので xarm_ros2/xarm_msgs/srv/MoveVelocity.srv at humble · xArm-Developer/xarm_ros2 · GitHub import rclpy from rclpy.node import Node from xarm_msgs.srv import SetInt16ById,SetInt16, MoveVelocity fr…
実際のところ 導入 $ sudo apt install ros-$ROS_DISTRO-joy*一緒に導入されるteleop_toolsはこれのこと GitHub - ros-teleop/teleop_tools: A set of generic teleoperation tools for any robot. つかう デバイス名の確認 $ lsusb ... Bus 001 Device 004:…
実際のところ ROS2標準メッセージのPointを購読し、 その値を内部の変数"recent_value"に格納するようなケースを考えます import rclpy from rclpy.node import Node from geometry_msgs.msg import Point # グローバル変数 global_value = None class Point…
このエラー対応は、恐らく近い将来本体にマージされます。 実際のところ ROS2 humble用のプロジェクトでもROSBOARDを使ってみようとしたところ、以下のようなエラーが。 [INFO] [XXX.YYY] [rosboard_node]: Subscribing to /camera/camera/color/camera_info…
すでにあるトピックを購読、加工して再配布というような処理を考えます。 今回はD435の値を一定の書式にしてmsgとして配布する方法を試してみました。 実際のところ 前提 Ubuntu 22 LTS Jupyter スクリプト import rclpy from rclpy.node import Node from s…
実際のところ import rclpy from rclpy.node import Node import time class MyTimerNode(Node): def __init__(self): super().__init__('my_timer_node') self.timer = self.create_timer(1.0, self.timer_callback) # 1秒ごとにコールバック self.count = …
shuzo-kino.hateblo.jp のシリーズ 実際のところ 前提条件 Ubuntu 22 LTS Jupyter Notebook から rclpy を読み出す実験 その1:環境構築 - Bye Bye Mooreの手順を実装済み librealsense2のROS2用環境を構築済み スクリプト import rclpy from rclpy.node im…
実際のところ スクリプト #include <behaviortree_cpp_v3/behavior_tree.h> #include <behaviortree_cpp_v3/bt_factory.h> #include <rclcpp/rclcpp.hpp> #include <xarm_msgs/srv/set_int16.hpp> #include <xarm_msgs/srv/set_int16_by_id.hpp> #include <xarm_msgs/srv/move_cartesian.hpp> #include <iostream> #include <string> u…</string></iostream></xarm_msgs/srv/move_cartesian.hpp></xarm_msgs/srv/set_int16_by_id.hpp></xarm_msgs/srv/set_int16.hpp></rclcpp/rclcpp.hpp></behaviortree_cpp_v3/bt_factory.h></behaviortree_cpp_v3/behavior_tree.h>
実際のところ Fallback => 一個でも成功すればSuccess。色々試してどれかがOKならいいというケース。 Sequence => 一個でも失敗すればFailure。順序事に実行する事が大切なケース。 script #include <behaviortree_cpp_v3/behavior_tree.h> #include <behaviortree_cpp_v3/bt_factory.h> #include <iostream> #include <string> using namespace BT; // </string></iostream></behaviortree_cpp_v3/bt_factory.h></behaviortree_cpp_v3/behavior_tree.h>…
実際のところ #include <behaviortree_cpp_v3/behavior_tree.h> #include <behaviortree_cpp_v3/bt_factory.h> #include <iostream> #include <string> using namespace BT; // Example of custom SyncActionNode (synchronous action) // without ports. class ApproachObject : public BT::SyncActionNode { public: ApproachOb…</string></iostream></behaviortree_cpp_v3/bt_factory.h></behaviortree_cpp_v3/behavior_tree.h>
実際のところ パッケージの導入 $ sudo apt update $ sudo apt install ros-$ROS_DISTRO-behaviortree-cpp-v3 ROS2パッケージの作成 作業ディレクトリは"|/dev_ws"とし、サブディレクトリsrcもあるとします。 $ cd ~/dev_ws/src $ ros2 pkg create --build-t…
design.ros2.orgROS 2のデザイン哲学をまとめたサイトです。 オリジンROSが抱えていた問題をあげつつ、それに対しどういう思想で今のアーキテクチャを採用したかについて、解説されています。
通常の開発ではUbuntu機を使っているのですが、のっぴきならない事情でWindows機でも検証が必要になりました。 別件で仲間内の企業さんがWindows機でやってたので、多分できるのだとは思っていましたが……。 実際のところ 前提 Chocolately最新版 手順 $ mkdi…
実際のところ $ ros2 topic hz /turtle1/pose average rate: 62.481 min: 0.015s max: 0.017s std dev: 0.00050s window: 64 average rate: 62.487 min: 0.015s max: 0.017s std dev: 0.00050s window: 127 average rate: 62.493 min: 0.015s max: 0.017s st…
rqt_graphはROSノードの可視化ツールの一つで、 ROSノードがどのように連携しているか確認したり、 そもそも関係性が適切か確認したりできます。 実際のところ 起動確認 ros-humble-desktopをぶち込んでいれば、素で入っているので $ rqt_graphとやると、空…
実際のところ $ gazebo --verbose「beer」を選択すると、モデルがでてきます 左クリックで配置です とりあえず、こんな調子で並べてみます 「Ctrl + S」で保存してみます。 参考もと Gazebo : Tutorial : Gazebo Components Gazebo : Tutorial : Building a …
ROS2とPythonで作って学ぶAIロボット入門 (KS理工学専門書)作者:出村公成,萩原良信,升谷保博,タンジェフリートゥチュアン講談社Amazon