Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

【イベントログ】技術書典15に行ってきました

.

.

.

.

Gazebo Fortressとrviz2の

ROS

実際のところ ros2 run ros_ign_bridge parameter_bridge /lidar2@sensor_msgs/msg/LaserScan[ignition.msgs.LaserScan --ros-args -r /lidar2:=/laser_scan rviz2 「map」が初期値であるFixed Frameに「vehicle_blue/lidar_link/gpu_lidar」と書き換える左…

Gazebo Fortressで模擬ロボットを操縦してみる

ROS

Ignition Gazebo……あらためGazeboのLTS版であるGazebo Fortressの操作をしてみます。 実際のところ ”-v 4”はエラーの表示レベル設定で多めに表示するようなオプションです。 $ ign gazebo -v 4 -r visualize_lidar.sdfROS2を立ち上げてない状態でも、IGNに由…

ROS2 humbleにGazebo Fortressの環境を構築

ROS

貧弱な計算資源下でロボット開発をやっていた手前、Gazeboは高嶺の花でした そんな私も色々あって現環境にGazebo導入を試みるも……上手くいかず 技術調査を進めていくと、そもそも公式が「Classic gazebo」などと自ら旧式である事を宣っている始末。 最新リリ…

base環境で組んだROS2 humbleにrviz2を入れる

ROS

ros2-baseで作った環境に、rvizを入れる必要が出てきました。 前にも最小構成で入れたUbuntuにX serverを入れた莫迦な事をやったことがありましたね……。 実際のところ $ cd ~/dev_ws/src $ git clone https://github.com/ros2/rviz.git -b humble $ rosdep i…

YDLIDARシリーズで"Error, cannot retreive YDLidar health code: ffffffff"などと怒られる場合、baudrateがあってない可能性

ROS

ROS2 humbleでYDLIDAR X4を動かそうとしたところ、 ”Error, cannot retreive YDLidar health code: ffffffff" などとエラーが。 どうも、パラメータの一部を取得できていないようです。 実際のところ ためしにydlidar_ros2_driver/paramsをみると、launchフ…

ROS2 humbleでYDLIDAR X4をつかう

ROS

実際のところ SDK まず先にSDKを導入 今回Python用のインターフェイスは使わないので簡易的な方法で sudo apt install cmake pkg-configgit clone https://github.com/YDLIDAR/YDLidar-SDK.git mkdir -p YDLidar-SDK/build cd YDLidar-SDK/build cmake .. ma…

.

.

.

.

.

.

ROS2でrosboardをつかう

ROS

shuzo-kino.hateblo.jp でやった、ROSのtopicをブラウザで確認できるrosboardをROS2用にビルドしてみます 前回は簡易インストールだったので、今回はちゃんとビルドしてみます 実際のところ sudo pip3 install tornado simplejpeg$ cd ~/dev_ws/src $ git cl…

nodeのアプリをサーバー起動時に立ち上げ&毎日再起動

今回はnodeJSのアプリケーションをcrontabを使って自動起動&毎日再起動するようにしました 実際のところ サーバー起動時に立ち上げをしつつ、毎日午前一時に再起動……というか既存プロセスを棄てて新しいプロセスを立ち上げるように設定します $ crontab -e…

NodeJS express製のアプリのPOSTアクションでbodyがundefinedしか入らなくなった件

過去にNodeJS express製アプリのPOSTアクションを受け付ける処理を実装しました。 久しぶりに引っ張り出して動かしたところ……なぜかformからの内容がundefinedと空になって受け付けない事態に。 nodeJSなんて選択肢が無い時に使うもんで全く勉強が追いついて…

ROS2のlaunchファイルを用意する

実際のところ $ cd ~/dev_ws/src $ mkdir -p rpi_cpu_temp/launch $ touch rpi_cpu_temp/launch/cpu_temp_launch.py ROS1ではXMLだった気がしますが……ROS2からlaunchファイルはpython風の記法が使えるようになったそうで cpu_temp_launch.py from launch imp…

【読書メモ】アクチュエータ工学入門 「動き」と「力」を生み出す驚異のメカニズム (ブルーバックス)

アクチュエータ工学入門 「動き」と「力」を生み出す驚異のメカニズム (ブルーバックス)作者:鈴森康一講談社Amazon

.

.

rclpyでROS2 paramsを使ってみる

以前つくったcpu温度をtopicで配信するcpu_tempの応用として、 nodeの挙動にパラメータを与える「ROS2 params」の実験をしてみます 適切に使えばビミョーな値の変更で毎回ビルドを変更しなくてよくなります 実際のところ 前提 shuzo-kino.hateblo.jp をベー…

rclpyでRaspberry Pi 4BのCPU温度を積算するActionを実装する

動作状態や途中介入を実現できるActionもやってみる事にしました 簡単化のため、CPU温度を積み上げる様式にします 実際のところ actionのビルド $ cd ~/dev_ws $ ros2 pkg create --build-type ament_cmake cpu_temp_action_msgs $ mkdir cpu_temp_action_ms…

rclpyでttyUSB0を経由してM5stackにテキストを送り込むserviceを書く

段々内容が入り組んできましたが…… rclpyでttyUSB0を経由してM5stackにテキストを送り込むserviceを書いてみます これが出来たら、もうあとはカメラやサウンドデバイスみたいな事例しかないんでは 実際のところ サービス定義の作成 まずはサービスの定義ファ…

rclpyでROS2のtopicの挙動を標準実装のmsgをつかって書いてみる

前回の続きで、今度はtopicをやります データの垂れ流しに向いた形式で、3D可視化ツールのrvizやシミュレーション環境のgazeboなんかで状態の取得に使われています 今回は実装のお試しということで、Raspberry Pi 4BのCPU温度の積算を通知するようにしてみま…

rclpyでROS2のserviceの挙動と独自srvを書いてみる

serviceはtopicと違い送受信に確認がされるので確実に伝えたい情報に使います 自作serviceの事件のため、まずはRaspberry PI 4BのGPIOをオンオフするROS serviceをpython3で実装してみます 実際のところ 必要なパッケージのインストール: Raspberry Pi上でGP…

【読書メモ】対馬と海峡の中世史  日本史リブレット

対馬と海峡の中世史 (日本史リブレット)作者:佐伯 弘次山川出版社Amazon

【読書メモ】ChatGPT翻訳術 新AI時代の超英語スキルブック

ChatGPT翻訳術 新AI時代の超英語スキルブック作者:山田 優アルクAmazonチューニングしたLLMでTOEIC960点……CEFR C1水準なんて成果も出ているそう。 TOEIC960点レベルの機械翻訳サービスMirai Translatorにおいてテレワーク環境で安全・安心に利用可能なサービ…

ROS2 humble on RasPi4B で AgileX tracer mini を動かす その3:キーボードで操作する

ROS

実際のところ 準備 素の作業をしていれば入っているハズですが $ sudo apt install ros-$ROS_DISTRO-teleop-twist-keyboard 実行 $ ros2 run teleop_twist_keyboard teleop_twist_keyboardデフォでは speed 0.5 turn 1.0 と結構ラフに動くので、適宜調整しま…

ROS2 humble on RasPi4B で AgileX tracer mini を動かす その2:前進と旋回

ROS

実際のところ canを使えるようにする $ cd ~/dev_ws/src/ugv_sdk/scripts/ $ bash bringup_can2usb_500k.bash launch $ ros2 launch tracer_base tracer_mini_base.launch.py 動かす 自動車型のステアリング構造なので真横には移動できませんcmd_vekに与える…

ROS2 humble on RasPi4B で AgileX tracer mini を動かす その1:環境構築

ROS

実際のところ 必要なパッケージ類の追加 $ sudo apt-get update $ sudo apt-get install build-essential git cmake libasio-dev ビルド 以下、ROS2作業ディレクトリをdev_wsとしてやっていきます $ mkdir -p ~/dev_ws/src $ cd ~/dev_ws/src $ git clone ht…

xArmをpythonのsocket経由で操作する

実際のところ import socket # 接続先の情報 IP_ADDRESS = "192.168.1.168" PORT = 502 # 送信するModbusコマンド COMMAND = bytes([0x00, 0x01, 0x00, 0x02, 0x00, 0x01, 0x10]) def send_modbus_command(ip_address, port, command): # ソケットオブジェク…

rclpyでRealsense D435から点群をとってOpen3Dで描画

せっかく点群も取れるので、そちらも試してみることに 実際のところ $ pip install plotly $ pip install open3dimport numpy as np import rclpy from sensor_msgs.msg import PointCloud2 from sensor_msgs import point_cloud2 import plotly.express as …