1. 概要
「Windows」でも同様のことが可能か、やってみます。
やっているうちにわかったのですが、当初、コマンドプロンプトであろうが「x64 Native Tools Command Prompt for VS 2019」であろうが、そんなに違いはないかと。
コマンドプロンプトでやっていたのですが、ここから先の、「colcon」やら「ros2」のコマンドは。
「x64 Native Tools Command Prompt for VS 2019」からで実行しないと、動作しないことがわかりました。
なので、本ページで、コマンド実行の箇所は、「x64 Native Tools Command Prompt for VS 2019」で操作します。
かつ、「x64 Native Tools Command Prompt for VS 2019」をひらく都度。
call C:\ros2_jazzy\local_setup.bat
を実行します。
2. ワークスペース作成
ワークスペース名を、「colcon_ws」として、まずワークスペースのエリアを確保します。
mkdir C:\colcon_ws\src
3. パッケージ作成
「mypackage」という名前のパッケージを作成します。
cd C:\colcon_ws\src
ros2 pkg create mypackage
下記のような出力がありまして・・・。
going to create a new package
package name: mypackage
destination directory: C:\colcon_ws\src
package format: 3
version: 0.0.0
description: TODO: Package description
maintainer: ['hogehoge <hogehoge@todo.todo>']
licenses: ['TODO: License declaration']
build type: ament_cmake
dependencies: []
creating folder .\mypackage
creating .\mypackage\package.xml
creating source and include folder
creating folder .\mypackage\src
creating folder .\mypackage\include\mypackage
creating .\mypackage\CMakeLists.txt
[WARNING]: Unknown license 'TODO: License declaration'. This has been set in the package.xml, but no LICENSE file has been created.
It is recommended to use one of the ament license identifiers:
Apache-2.0
BSL-1.0
BSD-2.0
BSD-2-Clause
BSD-3-Clause
GPL-3.0-only
LGPL-3.0-only
MIT
MIT-0
「Ubuntu」と同じ構成のディレクトリ・ファイルが作成されました。
ソースコードを作成します。
これは、前ページと同じものを作成しますが・・・。
「CMakefile.txt」の先頭行のみ。
cmake_minimum_required(VERSION 3.10)
にしておきます。
「Windows」では、不要なワーニングが表示されてしまうからです。
4. ビルド
ビルドします。
cd C:\colcon_ws
colcon build --packages-select mypackage
うまくいけば、下記のような表示なるはず。
(時間は、まちまち。後ろにやなワーニングが表示されますが、省略)
Starting >>> mypackage
[Processing: mypackage][mypackage:build - 30.1s]
Finished <<< mypackage [42.5s]
Summary: 1 package finished [42.8s]
5. 実行
作成したものを実行します。
2つの「x64 Native Tools Command Prompt for VS 2019」で実行します。
開いて、それぞれで。
call C:\colcon_ws\install\setup.bat
を実行後。
「Subscriber」側。
ros2 run mypackage composition_subscriber
「Publisher」側。
ros2 run mypackage composition_publisher
実行時に、「Windows セキュリティ」のダイアログが表示されますが、許可します
「Subscriber」側の表示。
[INFO] [1732868452.471512538] [subscriber_node]: Subscriber: 'Hello, world! 0'
[INFO] [1732868452.969242249] [subscriber_node]: Subscriber: 'Hello, world! 1'
[INFO] [1732868453.465351847] [subscriber_node]: Subscriber: 'Hello, world! 2'
[INFO] [1732868453.966899584] [subscriber_node]: Subscriber: 'Hello, world! 3'
[INFO] [1732868454.468686238] [subscriber_node]: Subscriber: 'Hello, world! 4'
[INFO] [1732868454.967533737] [subscriber_node]: Subscriber: 'Hello, world! 5'
「Publisher」側の表示。
[INFO] [1732868452.467683305] [publisher_node]: Publisher: 'Hello, world! 0'
[INFO] [1732868452.966664863] [publisher_node]: Publisher: 'Hello, world! 1'
[INFO] [1732868453.463301435] [publisher_node]: Publisher: 'Hello, world! 2'
[INFO] [1732868453.963718499] [publisher_node]: Publisher: 'Hello, world! 3'
[INFO] [1732868454.466485590] [publisher_node]: Publisher: 'Hello, world! 4'
[INFO] [1732868454.963764438] [publisher_node]: Publisher: 'Hello, world! 5'
止めるときは、Ctrl+C で止めます。