From c3405050fd34a4415b139c8bbc170cb10fe0271e Mon Sep 17 00:00:00 2001 From: mitsut Date: Tue, 10 Sep 2024 13:41:04 +0000 Subject: [PATCH] deploy: 9fa8ed73ee0d856d3cab7c3bc11c0560f67edf6f --- categories/index.html | 2 +- contact/index.html | 23 +- css/custom.css | 34 +- docs/aimat/index.html | 2 +- docs/background/index.html | 2 +- docs/concept/index.html | 2 +- docs/core/index.html | 2 +- docs/index.html | 2 +- docs/index.xml | 191 +- docs/roadmap/index.html | 2 +- docs/technical/index.html | 2 +- en/categories/index.html | 2 +- en/contact/index.html | 18 +- en/docs/aimat/index.html | 2 +- en/docs/background/index.html | 2 +- en/docs/concept/index.html | 2 +- en/docs/core/index.html | 2 +- en/docs/index.html | 2 +- en/docs/index.xml | 65 +- en/docs/roadmap/index.html | 4 +- en/docs/technical/index.html | 2 +- en/index.html | 2 +- en/index.xml | 276 +- en/page/2/index.html | 2 +- en/page/3/index.html | 2 +- en/prototypes/harmony-robot/index.html | 2 +- en/prototypes/index.html | 2 +- en/prototypes/index.xml | 75 +- en/prototypes/multi-robot/index.html | 2 +- en/prototypes/ros-robot/index.html | 2 +- en/prototypes/single-robot/index.html | 2 +- en/repositories/index.html | 2 +- en/tags/index.html | 2 +- getting-started/app-customize/index.html | 2 +- .../architecture-overview/index.html | 2 +- getting-started/env-customize/index.html | 2 +- getting-started/index.html | 2 +- getting-started/index.xml | 137 +- getting-started/robot-customize/index.html | 2 +- index.html | 4 +- index.xml | 2301 ++++++++++++++--- ja/sitemap.xml | 2 +- prototypes/harmony-robot/index.html | 2 +- prototypes/index.html | 2 +- prototypes/index.xml | 115 +- prototypes/multi-robot/index.html | 2 +- prototypes/ros-robot/index.html | 2 +- prototypes/single-robot/index.html | 2 +- repositories/index.html | 2 +- showcase/index.html | 2 +- .../10_wsl_install/index.html | 4 +- .../20_ruby_install_mac/index.html | 4 +- .../20_ruby_install_win_linux/index.html | 4 +- .../30_athrill2_install_arm/index.html | 9 +- .../30_athrill2_install_v850/index.html | 9 +- .../40_gcc_install_arm/index.html | 4 +- .../40_gcc_install_v850/index.html | 4 +- .../50_hakoniwa_ev3rt_install_arm/index.html | 4 +- .../50_hakoniwa_ev3rt_install_v850/index.html | 4 +- .../51_ev3rt_app_introduction_arm/index.html | 4 +- .../51_ev3rt_app_introduction_v850/index.html | 6 +- .../60_unity_install/index.html | 9 +- .../60_unity_install_v1.0/index.html | 21 +- .../60_unity_install_v2.0/index.html | 21 +- .../60_unity_install_v2.1/index.html | 21 +- .../61_unity_install_mmap/index.html | 12 +- .../61_unity_install_mmap_v2.0/index.html | 17 +- .../61_unity_install_udp/index.html | 5 +- .../61_unity_install_udp_v2.0/index.html | 5 +- single-robot-setup-detail/index.html | 2 +- single-robot-setup-detail/index.xml | 631 +++-- single-robot-setup-detail/page/2/index.html | 2 +- single-robot-setup-detail/page/3/index.html | 2 +- single-robot-setup-detail/page/4/index.html | 2 +- single-robot-setup-detail/page/5/index.html | 2 +- single-robot-setup/index.html | 2 +- single-robot-setup/index.xml | 95 +- single-robot-setup/page/2/index.html | 2 +- .../index.html | 2 +- .../index.html | 2 +- .../index.html | 2 +- .../index.html | 2 +- .../index.html | 2 +- .../single-robot-setup-index/index.html | 4 +- single-robot-usage/01_usage_arm/index.html | 11 +- .../01_usage_arm_v2.0/index.html | 11 +- single-robot-usage/01_usage_v2.1/index.html | 22 +- single-robot-usage/01_usage_v850/index.html | 9 +- .../01_usage_v850_v2.0/index.html | 9 +- .../02_changed_params/index.html | 12 +- .../02_changed_params_v2.0/index.html | 9 +- single-robot-usage/index.html | 2 +- single-robot-usage/index.xml | 392 ++- single-robot-usage/page/2/index.html | 2 +- .../single-robot-usage-index/index.html | 4 +- tags/index.html | 2 +- technical-links/index.html | 2 +- topics/index.html | 1 + tutorial/index.html | 2 +- update/index.html | 1 + 100 files changed, 3615 insertions(+), 1116 deletions(-) create mode 100644 topics/index.html create mode 100644 update/index.html diff --git a/categories/index.html b/categories/index.html index ffde5cf7..0fed2728 100644 --- a/categories/index.html +++ b/categories/index.html @@ -1 +1 @@ -Categories

Voice of TOPPERS Project Hakoniwa WG Developers

Our vision, news and ideas, and whatever feels important.
Follow us on Twitter

\ No newline at end of file +Categories

Voice of TOPPERS Project Hakoniwa WG Developers

Our vision, news and ideas, and whatever feels important.
Follow us on Twitter

\ No newline at end of file diff --git a/contact/index.html b/contact/index.html index f31c406b..e35427fb 100644 --- a/contact/index.html +++ b/contact/index.html @@ -1,4 +1,4 @@ -SNS・問合せ先

SNS・問合せ先

.

箱庭の活動への参画のお誘い

箱庭WGの狙いや趣旨にご賛同いただける方の参画をお待ちしています。 +箱庭WGのメンバに加入される場合は、原則としてTOPPERSプロジェクトへの入会もお願いしています。 また、TOPPERSプロジェクト会員向けの限定イベントの開催や、箱庭WG活動成果の早期公開なども検討しています。'>

SNS・問合せ先

.

箱庭の活動への参画のお誘い

箱庭WGの狙いや趣旨にご賛同いただける方の参画をお待ちしています。 Slack等での議論に参加したい方、活動内容へのご要望をお持ちの方、コア技術や各アセットの開発などに参加したい方、 箱庭WGの活動で期待される技術成果を活用したい方、製品開発に展開してみたい方、 ぜひともお声がけください。

Email: hakoniwa.toppers_at_gmail.com (_at_ を@ に置き換えてください)
@@ -22,16 +19,16 @@
 (一社)組込みシステム技術協会内
 TEL & FAX: 03-5643-5166
 Email: secretariat_at_toppers.jp (_at_ を@ に置き換えてください)
-

WGの主なメンバと役割

氏名主な役割所属SNS
森 崇主査 全体統括、Athrill永和システムマネジメント/箱庭ラボ +

WGの主なメンバと役割

氏名主な役割所属SNS
森 崇主査 全体統括、Athrill永和システムマネジメント/箱庭ラボ -
高瀬 英希mROS、ROS、IoT東京大学/JSTさきがけ +
高瀬 英希mROS、ROS、IoT東京大学/JSTさきがけ -
細合 晋太郎IDE、モデリング、可視化、クラウド東京大学 +
細合 晋太郎IDE、モデリング、可視化、クラウド東京大学 -
高田 光隆カーネル、応用検討名古屋大学NCES +
高田 光隆カーネル、応用検討名古屋大学NCES -
福田 ⻯也クラウド、ロボティクス -
小森 顕博可視化 -
久保秋 真モデリング、応用検討チェンジビジョン +
福田 ⻯也クラウド、ロボティクス +
小森 顕博可視化 +
久保秋 真モデリング、応用検討チェンジビジョン -
國井 雄介デジタルツイン活用クレスコ   

※許諾の得られている方のみ掲載しています。

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file +
國井 雄介デジタルツイン活用クレスコ   

※許諾の得られている方のみ掲載しています。

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/css/custom.css b/css/custom.css index e6182a42..ff3a5641 100644 --- a/css/custom.css +++ b/css/custom.css @@ -5,20 +5,52 @@ content: ""; clear: both; } + .xPrevNextLink_prev { display: block; float: left; } + .xPrevNextLink_prev::before { content: "≪"; } + .xPrevNextLink_next { display: block; float: right; text-align: right; } + .xPrevNextLink_next::after { content: "≫"; } - \ No newline at end of file + +#top-nav-extra ul { + list-style: none; + padding: 0; + margin: 0; +} + +#top-nav-extra ul li { + display: block; + margin-bottom: 10px; + /* 各項目の間にスペースを追加したい場合 */ +} + +#top-nav-extra ul li a { + display: block; +} + +#top { + padding: 0 16px !important; +} + +#top #top-nav-main { + padding-left: 0px !important; + border-left: none !important; +} + +#top #top-brand { + margin-right: 16px !important; +} \ No newline at end of file diff --git a/docs/aimat/index.html b/docs/aimat/index.html index 86d7977f..4f28bd2d 100644 --- a/docs/aimat/index.html +++ b/docs/aimat/index.html @@ -1,3 +1,3 @@ -目指すところ

目指すところ

箱庭の対象や利用者,本プロジェクトの目指す強みと新しさを紹介します.

大規模かつ複雑なIoTシステムを開発/提供する技術者のための シミュレーション環境とエコシステム を構築することを目指しています.

箱庭のターゲットは,様々な機器がネットワークで接続された情報システムです. +目指すところ

目指すところ

箱庭の対象や利用者,本プロジェクトの目指す強みと新しさを紹介します.

大規模かつ複雑なIoTシステムを開発/提供する技術者のための シミュレーション環境とエコシステム を構築することを目指しています.

箱庭のターゲットは,様々な機器がネットワークで接続された情報システムです. 自動運転や物流,宇宙分野など,IoTの様々な分野を想定しています.

箱庭は,次の利用者のための環境です.

  • システム開発者:IoTシステムとその構成要素を開発する技術者
  • サービス提供者:IoTを活用してシステムサービスの提供を進める技術者
  • 箱庭アセットの開発者および提供者
    • アセットとは,箱庭のシステム構成要素のことを指します.

箱庭プロジェクトの目指す強みと新しさとしては,IoTの各要素である箱庭アセットをそれぞれ連携させて,対象システムを任意の精度で検証可能とすることです. そして,箱庭の利用者の技術領域や評価対象に応じて,アセットを差し替えることで,検証の対象/抽象度/レベルを任意に変更できるようにします.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/docs/background/index.html b/docs/background/index.html index 4176186b..d4b0bf38 100644 --- a/docs/background/index.html +++ b/docs/background/index.html @@ -1,2 +1,2 @@ -技術的背景

技術的背景

私たちが「箱庭」の構築を目指すことに至った背景を紹介します.

IoT (Internet of Things) は,情報技術の総合格闘技と言えます.
IoTシステムは,多様かつ大量の情報機器が,ネットワーク通信を介して密接に絡み合っています. +技術的背景

技術的背景

私たちが「箱庭」の構築を目指すことに至った背景を紹介します.

IoT (Internet of Things) は,情報技術の総合格闘技と言えます.
IoTシステムは,多様かつ大量の情報機器が,ネットワーク通信を介して密接に絡み合っています. 様々な技術分野から多くの技術者が集まり,みんなで英知を結集してIoTシステムを構築する必要があります.

例えば自動運転システムの例を考えてみましょう.このように様々な技術領域を横断しています.

  • 組込み系
    • 自動運転の判断処理を実現するソフトウェアの開発
    • ECU間の通信機構の開発
  • 制御系
    • メカやエレキを制御するECUハードウェアの開発
  • IT・ネットワーク系
    • Web UI・スマホアプリケーションの開発
    • ビッグデータの統計処理を担うクラウドサーバの管理・保守
    • 車車間・機器間の効率的な通信制御の実現
  • アプリケーション系
    • 配車管理や交通流管理アプリの開発

このようなIoTシステムを構築する際の課題として,下記が考えられます.

  • 問題発生経路の複雑化
    • 全体結合しないと見えない問題が多数潜んでいる
    • 様々な機器間の整合性を取れない
  • 原因調査の複雑化
    • どこで何がおこっているのか調査困難
    • そもそもデバッグすること自体が難しい
  • 実証実験のコスト増
    • 実証実験は手軽に実施できない
    • 各分野のエンジニアの総動員
    • 手間,時間,費用がかかる

次に,ロボットを活用したIoTサービスの構築時に起こりえる課題を考えてみましょう.

  • ロボットをどう組み合わせると,効果的な新しいサービスを創出できるかわからない
  • 新しいサービスを検討するにしても,実物のロボットでは準備・手間がかかりすぎる
  • 頻繁に変更されるシステム要件に対して,変更適用に時間がかかる
  • 実証実験時には結合トラブルが頻発する

「箱庭」は,このような技術的課題を解決し,IoTのシステム開発/サービス構築を加速化することができるプラットフォームとなること目指します.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/docs/concept/index.html b/docs/concept/index.html index 8fbb9974..74ade7cf 100644 --- a/docs/concept/index.html +++ b/docs/concept/index.html @@ -1,4 +1,4 @@ -コンセプト

コンセプト

「箱庭」に込めているコンセプトと想定される利用シーンを紹介します.

箱庭のコンセプトは 「箱の中に,様々なモノをみんなの好みで配置して,いろいろ試せる!」 です.

IoTや自動運転システム,クラウドロボティクスシステムを開発する際に,仮想環境である箱庭上に様々なソフトウェアやサービスを持ち寄って,机上で実証実験できる場を提供します.

想定している利用シーンは,多様な分野から技術者が集まるIoTシステムの開発現場です.
IoTの各要素が連携される複雑なシステムの事象や状態を,「箱」の中ではシナリオに応じた同じ挙動が再現されるようにします. +コンセプト

コンセプト

「箱庭」に込めているコンセプトと想定される利用シーンを紹介します.

箱庭のコンセプトは 「箱の中に,様々なモノをみんなの好みで配置して,いろいろ試せる!」 です.

IoTや自動運転システム,クラウドロボティクスシステムを開発する際に,仮想環境である箱庭上に様々なソフトウェアやサービスを持ち寄って,机上で実証実験できる場を提供します.

想定している利用シーンは,多様な分野から技術者が集まるIoTシステムの開発現場です.
IoTの各要素が連携される複雑なシステムの事象や状態を,「箱」の中ではシナリオに応じた同じ挙動が再現されるようにします. そして,箱庭のシステム構成要素である「アセット」を差し替えることで,検証の対象/抽象度/レベルを任意に変更することができます. また,システム環境の視点(評価観点)や抽象度を,各技術者の分野や立場に応じて切り替えられるようにします.

なお箱庭の語源は,名園や山水を模したミニチュアの庭園に由来します. 盆景や盆栽に類するもので,江戸時代後半から明治時代にかけて流行したといわれています.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/docs/core/index.html b/docs/core/index.html index 3ee7a7b4..f8f5604d 100644 --- a/docs/core/index.html +++ b/docs/core/index.html @@ -1,2 +1,2 @@ -箱庭コア技術

箱庭コア技術

箱庭の核となるコア機能と,備えるべき機能特性を紹介します.

箱庭の核となるカーネルは,次の4種類であると考えています.

  1. スケジューリング
  2. 同期・通信
  3. 時間管理
  4. アセット管理

また,箱庭コア機能が備えるべき重要な機能特性は,次のものがあると考えています.

  1. コンポーネント化
  2. 可視化
  3. イベント駆動化
  4. 自動化

箱庭のコア機能と機能特性については,プロトタイプモデルの開発を進めながら,WG内での設計検討を続けているところです. +箱庭コア技術

箱庭コア技術

箱庭の核となるコア機能と,備えるべき機能特性を紹介します.

箱庭の核となるカーネルは,次の4種類であると考えています.

  1. スケジューリング
  2. 同期・通信
  3. 時間管理
  4. アセット管理

また,箱庭コア機能が備えるべき重要な機能特性は,次のものがあると考えています.

  1. コンポーネント化
  2. 可視化
  3. イベント駆動化
  4. 自動化

箱庭のコア機能と機能特性については,プロトタイプモデルの開発を進めながら,WG内での設計検討を続けているところです. 詳細が固まりましたら,追って解説を加えていきます.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 6949ca5a..13e3bf54 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1 +1 @@ -箱庭とは

箱庭とは

HAKONIWA logo
『箱庭』とは,IoT/クラウドロボティクス時代の仮想シミュレーション環境です. 「箱の中に,様々なモノをみんなの好みで配置して,いろいろ試せる!」ようになれることを目指しています.

技術的背景

なぜ箱庭が必要なのか?

コンセプト

箱庭とは何なのか?

目指すところ

箱庭のターゲットと利用者・目指す強みと新しさ

箱庭コア技術

箱庭の核となる機能

技術要素

箱庭を形成する技術要素の紹介

ロードマップ

研究開発の指針と計画

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file +箱庭とは

箱庭とは

HAKONIWA logo
『箱庭』とは,IoT/クラウドロボティクス時代の仮想シミュレーション環境です. 「箱の中に,様々なモノをみんなの好みで配置して,いろいろ試せる!」ようになれることを目指しています.

技術的背景

なぜ箱庭が必要なのか?

コンセプト

箱庭とは何なのか?

目指すところ

箱庭のターゲットと利用者・目指す強みと新しさ

箱庭コア技術

箱庭の核となる機能

技術要素

箱庭を形成する技術要素の紹介

ロードマップ

研究開発の指針と計画

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/docs/index.xml b/docs/index.xml index 8fd3d3fd..1a98cb6b 100644 --- a/docs/index.xml +++ b/docs/index.xml @@ -1,26 +1,165 @@ -箱庭とは on 箱庭https://toppers.github.io/hakoniwa/docs/Recent content in 箱庭とは on 箱庭Hugoja技術的背景https://toppers.github.io/hakoniwa/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/background/IoT (Internet of Things) は,情報技術の総合格闘技と言えます. -IoTシステムは,多様かつ大量の情報機器が,ネットワーク通信を介して密接に絡み合っています. 様々な技術分野から多くの技術者が集まり,みんなで英知を結集してIoTシステムを構築する必要があります. -例えば自動運転システムの例を考えてみましょう.このように様々な技術領域を横断しています. -組込み系 自動運転の判断処理を実現するソフトウェアの開発 ECU間の通信機構の開発 制御系 メカやエレキを制御するECUハードウェアの開発 IT・ネットワーク系 Web UI・スマホアプリケーションの開発 ビッグデータの統計処理を担うクラウドサーバの管理・保守 車車間・機器間の効率的な通信制御の実現 アプリケーション系 配車管理や交通流管理アプリの開発 このようなIoTシステムを構築する際の課題として,下記が考えられます. -問題発生経路の複雑化 全体結合しないと見えない問題が多数潜んでいる 様々な機器間の整合性を取れない 原因調査の複雑化 どこで何がおこっているのか調査困難 そもそもデバッグすること自体が難しい 実証実験のコスト増 実証実験は手軽に実施できない 各分野のエンジニアの総動員 手間,時間,費用がかかる 次に,ロボットを活用したIoTサービスの構築時に起こりえる課題を考えてみましょう. -ロボットをどう組み合わせると,効果的な新しいサービスを創出できるかわからない 新しいサービスを検討するにしても,実物のロボットでは準備・手間がかかりすぎる 頻繁に変更されるシステム要件に対して,変更適用に時間がかかる 実証実験時には結合トラブルが頻発する 「箱庭」は,このような技術的課題を解決し,IoTのシステム開発/サービス構築を加速化することができるプラットフォームとなること目指します.コンセプトhttps://toppers.github.io/hakoniwa/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/concept/箱庭のコンセプトは 「箱の中に,様々なモノをみんなの好みで配置して,いろいろ試せる!」 です. -IoTや自動運転システム,クラウドロボティクスシステムを開発する際に,仮想環境である箱庭上に様々なソフトウェアやサービスを持ち寄って,机上で実証実験できる場を提供します. -想定している利用シーンは,多様な分野から技術者が集まるIoTシステムの開発現場です. IoTの各要素が連携される複雑なシステムの事象や状態を,「箱」の中ではシナリオに応じた同じ挙動が再現されるようにします. そして,箱庭のシステム構成要素である「アセット」を差し替えることで,検証の対象/抽象度/レベルを任意に変更することができます. また,システム環境の視点(評価観点)や抽象度を,各技術者の分野や立場に応じて切り替えられるようにします. -なお箱庭の語源は,名園や山水を模したミニチュアの庭園に由来します. 盆景や盆栽に類するもので,江戸時代後半から明治時代にかけて流行したといわれています.目指すところhttps://toppers.github.io/hakoniwa/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/aimat/大規模かつ複雑なIoTシステムを開発/提供する技術者のための シミュレーション環境とエコシステム を構築することを目指しています. -箱庭のターゲットは,様々な機器がネットワークで接続された情報システムです. 自動運転や物流,宇宙分野など,IoTの様々な分野を想定しています. -箱庭は,次の利用者のための環境です. -システム開発者:IoTシステムとその構成要素を開発する技術者 サービス提供者:IoTを活用してシステムサービスの提供を進める技術者 箱庭アセットの開発者および提供者 アセットとは,箱庭のシステム構成要素のことを指します. 箱庭プロジェクトの目指す強みと新しさとしては,IoTの各要素である箱庭アセットをそれぞれ連携させて,対象システムを任意の精度で検証可能とすることです. そして,箱庭の利用者の技術領域や評価対象に応じて,アセットを差し替えることで,検証の対象/抽象度/レベルを任意に変更できるようにします.箱庭コア技術https://toppers.github.io/hakoniwa/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/core/箱庭の核となるカーネルは,次の4種類であると考えています. -スケジューリング 同期・通信 時間管理 アセット管理 また,箱庭コア機能が備えるべき重要な機能特性は,次のものがあると考えています. -コンポーネント化 可視化 イベント駆動化 自動化 箱庭のコア機能と機能特性については,プロトタイプモデルの開発を進めながら,WG内での設計検討を続けているところです. 詳細が固まりましたら,追って解説を加えていきます.技術要素https://toppers.github.io/hakoniwa/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/technical/TOPPERSカーネル TOPPERSプロジェクトにより開発されている,μITRON4.0仕様のスタンダードプロファイルを拡張した,オープンソースのリアルタイムカーネルです. 主な適用対象は,高い信頼性・安全性・リアルタイム性を要求される組込みシステムです. -Athrill 箱庭の核である,CPU命令セットシミュレータです. 箱庭WGメンバが中心となって開発を進めています.組込みマイコンおよびペリフェラルの挙動を命令レベルでデバッグ・機能検証することができます.現在はV850/RH850およびARMv7-Aが主なサポート対象です. -TOPPERSライセンスのもと,オープンソースで開発を進めています. -https://github.com/toppers/athrill mROS ROS(Robot Operating System)の組込み向け軽量実行環境です.ホストPC上のROSマスタおよびROSノードに対する,組込みマイコンからの出版購読型通信を実現します.東京大学 情報理工学系研究科 システム情報第8研究室が中心となって開発を進めています. 複数ロボットの連携制御シミュレーションのようなシステムでの活用を想定しています. -https://github.com/mROS-base RDBOX RDBOX (Robotics Developers BOX)は,ROSロボットやIoTに最適化した,Kubernetesクラスタとセキュアで拡張性の高いWi-Fiネットワークを自動構築するためのフレームワークです.シミュレーション環境と現実の作業環境をブリッジすることを目指しています.株式会社インテックのRDBOX Projectで開発されています. ロボット間協調動作向けプロトタイプモデルの構築において,箱庭との連携を進めています. -https://github.com/rdbox-intec/rdbox Unity リアルタイム3D開発プラットフォームです.IDEを内蔵するゲームエンジンとして有名です. 箱庭では,物理演算エンジンと空間可視化のために活用しています. -https://unity.com/ 箱庭WGでは,この他にも,IoT/クラウドロボティクス時代の仮想環境を確立するために,統合すべき技術要素を模索しているところです. -シナジーが生まれそうな技術や,活用できそうな知見をお持ちの方がいましたら,ぜひお知らせください. -注: このウェブページは,ユニティ テクノロジーズまたはその関連会社がスポンサーとなったり,ユニティ テクノロジーズまたはその関連会社と提携しているものではありません. このサイトに掲載された Unity の登録商標一覧に含まれる Unity の登録商標はすべて,ユニティ テクノロジーズまたはその米国や他の国々に所在する関連会社の登録商標または商標です.ロードマップhttps://toppers.github.io/hakoniwa/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/roadmap/箱庭は 「でっかく語って少しずつ育てて」 います. -現在のプロジェクトの活動の中心としては,コンセプトの実現と技術研鑽のためにプロトタイプモデルを構築中です. これらの研究開発は,すべてOSSとして公開しながら進めていきます. 皆さまにそれぞれのプロトタイプモデルをご利用いただき,そしてフィードバックを得ながら,箱庭コア技術の成熟と様々な機能拡充を進めていきたいと考えています. -箱庭プロジェクトは,まずは教育用途でのパッケージ構築と普及を図っていますが,製品開発への展開も視野に入れて研究開発を進めています. 壮大な構想を掲げていますが,全くマンパワーは足りていないのが実情です. 箱庭の成長のためにも,特にクラウド技術や可視化アセット開発に知見をお持ちの方に参画いただきたいと考えています. -箱庭WGの狙いや趣旨にご賛同いただける方の参画をお待ちしています. 活動としては,月1回のオンラインでの定例会合と、年2回の技術検討合宿を実施しています. また,日常的な議論や情報共有と開発にはSlack,GitHubおよびGoogle Driveを活用しています. -Slack等での議論に参加したい方,活動内容へのご要望をお持ちの方,コア技術や各アセットの開発などに参加したい方, 箱庭WGの活動で期待される技術成果を活用したい方,製品開発に展開してみたい方, ぜひとも問合せ先よりご連絡ください. \ No newline at end of file +箱庭とは on 箱庭https://toppers.github.io/hakoniwa/docs/Recent content in 箱庭とは on 箱庭Hugoja技術的背景https://toppers.github.io/hakoniwa/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/background/<p>IoT (Internet of Things) は,情報技術の総合格闘技と言えます.<br> +IoTシステムは,多様かつ大量の情報機器が,ネットワーク通信を介して密接に絡み合っています. +様々な技術分野から多くの技術者が集まり,みんなで英知を結集してIoTシステムを構築する必要があります.</p> +<p>例えば自動運転システムの例を考えてみましょう.このように様々な技術領域を横断しています.</p> +<ul> +<li>組込み系 +<ul> +<li>自動運転の判断処理を実現するソフトウェアの開発</li> +<li>ECU間の通信機構の開発</li> +</ul> +</li> +<li>制御系 +<ul> +<li>メカやエレキを制御するECUハードウェアの開発</li> +</ul> +</li> +<li>IT・ネットワーク系 +<ul> +<li>Web UI・スマホアプリケーションの開発</li> +<li>ビッグデータの統計処理を担うクラウドサーバの管理・保守</li> +<li>車車間・機器間の効率的な通信制御の実現</li> +</ul> +</li> +<li>アプリケーション系 +<ul> +<li>配車管理や交通流管理アプリの開発</li> +</ul> +</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/back1.png " border="" width="600" /> +</figure> + +<p>このようなIoTシステムを構築する際の課題として,下記が考えられます.</p> +<ul> +<li>問題発生経路の複雑化 +<ul> +<li>全体結合しないと見えない問題が多数潜んでいる</li> +<li>様々な機器間の整合性を取れない</li> +</ul> +</li> +<li>原因調査の複雑化 +<ul> +<li>どこで何がおこっているのか調査困難</li> +<li>そもそもデバッグすること自体が難しい</li> +</ul> +</li> +<li>実証実験のコスト増 +<ul> +<li>実証実験は手軽に実施できない</li> +<li>各分野のエンジニアの総動員</li> +<li>手間,時間,費用がかかる</li> +</ul> +</li> +</ul> +<p>次に,ロボットを活用したIoTサービスの構築時に起こりえる課題を考えてみましょう.</p>コンセプトhttps://toppers.github.io/hakoniwa/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/concept/<p>箱庭のコンセプトは <strong>「箱の中に,様々なモノをみんなの好みで配置して,いろいろ試せる!」</strong> です.</p> +<p>IoTや自動運転システム,クラウドロボティクスシステムを開発する際に,仮想環境である箱庭上に様々なソフトウェアやサービスを持ち寄って,机上で実証実験できる場を提供します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/concept1.png " border="" width="700" /> +</figure> + +<p>想定している利用シーンは,多様な分野から技術者が集まるIoTシステムの開発現場です. <br> +IoTの各要素が連携される複雑なシステムの事象や状態を,「箱」の中ではシナリオに応じた同じ挙動が再現されるようにします. +そして,箱庭のシステム構成要素である「アセット」を差し替えることで,検証の対象/抽象度/レベルを任意に変更することができます. +また,システム環境の視点(評価観点)や抽象度を,各技術者の分野や立場に応じて切り替えられるようにします.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/concept2.png " border="" width="600" /> +</figure> + +<p>なお箱庭の語源は,名園や山水を模したミニチュアの庭園に由来します. +盆景や盆栽に類するもので,江戸時代後半から明治時代にかけて流行したといわれています.</p>目指すところhttps://toppers.github.io/hakoniwa/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/aimat/<p>大規模かつ複雑なIoTシステムを開発/提供する技術者のための <strong>シミュレーション環境とエコシステム</strong> を構築することを目指しています.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/aimat1.png " border="" width="700" /> +</figure> + +<p>箱庭のターゲットは,様々な機器がネットワークで接続された情報システムです. +自動運転や物流,宇宙分野など,IoTの様々な分野を想定しています.</p> +<p>箱庭は,次の利用者のための環境です.</p> +<ul> +<li>システム開発者:IoTシステムとその構成要素を開発する技術者</li> +<li>サービス提供者:IoTを活用してシステムサービスの提供を進める技術者</li> +<li>箱庭アセットの開発者および提供者 +<ul> +<li>アセットとは,箱庭のシステム構成要素のことを指します.</li> +</ul> +</li> +</ul> +<p>箱庭プロジェクトの目指す強みと新しさとしては,IoTの各要素である箱庭アセットをそれぞれ連携させて,対象システムを<strong>任意の精度で検証可能</strong>とすることです. +そして,箱庭の利用者の技術領域や評価対象に応じて,アセットを差し替えることで,<strong>検証の対象/抽象度/レベルを任意に変更できる</strong>ようにします.</p>箱庭コア技術https://toppers.github.io/hakoniwa/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/core/<p>箱庭の核となるカーネルは,次の4種類であると考えています.</p> +<ol> +<li>スケジューリング</li> +<li>同期・通信</li> +<li>時間管理</li> +<li>アセット管理</li> +</ol> +<p>また,箱庭コア機能が備えるべき重要な機能特性は,次のものがあると考えています.</p> +<ol> +<li>コンポーネント化</li> +<li>可視化</li> +<li>イベント駆動化</li> +<li>自動化</li> +</ol> +<p>箱庭のコア機能と機能特性については,<a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/">プロトタイプモデル</a>の開発を進めながら,WG内での設計検討を続けているところです. +詳細が固まりましたら,追って解説を加えていきます.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/core1.png " border="" width="700" /> +</figure>技術要素https://toppers.github.io/hakoniwa/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/technical/<h3 id="toppersカーネル">TOPPERSカーネル</h3> +<p><a href="https://toppers.jp">TOPPERSプロジェクト</a>により開発されている,μITRON4.0仕様のスタンダードプロファイルを拡張した,オープンソースのリアルタイムカーネルです. +主な適用対象は,高い信頼性・安全性・リアルタイム性を要求される組込みシステムです.</p> +<p><a href="https://toppers.jp/"><img alt="TOPPERS" src="https://www.toppers.jp/imgs/logo.gif"></a></p> +<h3 id="athrill">Athrill</h3> +<p>箱庭の核である,CPU命令セットシミュレータです. <br> +箱庭WGメンバが中心となって開発を進めています.組込みマイコンおよびペリフェラルの挙動を命令レベルでデバッグ・機能検証することができます.現在はV850/RH850およびARMv7-Aが主なサポート対象です.</p> +<p>TOPPERSライセンスのもと,オープンソースで開発を進めています.</p> +<ul> +<li><a href="https://github.com/toppers/athrill">https://github.com/toppers/athrill</a></li> +</ul> + + +<figure> + <a href="https://github.com/toppers/athrill "> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/athrill.png " border="" width="200" /> + </a> +</figure> + +<h3 id="mros">mROS</h3> +<p>ROS(Robot Operating System)の組込み向け軽量実行環境です.ホストPC上のROSマスタおよびROSノードに対する,組込みマイコンからの出版購読型通信を実現します.<a href="http://www.hal.ipc.i.u-tokyo.ac.jp">東京大学 情報理工学系研究科 システム情報第8研究室</a>が中心となって開発を進めています. <br> +<a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/multi-robot">複数ロボットの連携制御シミュレーション</a>のようなシステムでの活用を想定しています.</p> +<ul> +<li><a href="https://github.com/mROS-base">https://github.com/mROS-base</a></li> +</ul> + + +<figure> + <a href="https://github.com/mROS-base "> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/mROS.png " border="" width="300" /> + </a> +</figure> + +<h3 id="rdbox">RDBOX</h3> +<p>RDBOX (Robotics Developers BOX)は,ROSロボットやIoTに最適化した,Kubernetesクラスタとセキュアで拡張性の高いWi-Fiネットワークを自動構築するためのフレームワークです.シミュレーション環境と現実の作業環境をブリッジすることを目指しています.株式会社インテックの<a href="https://rdbox-intec.github.io/homepage_jp/">RDBOX Project</a>で開発されています. <br> +<a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/harmony-robot">ロボット間協調動作向けプロトタイプモデル</a>の構築において,箱庭との連携を進めています.</p>ロードマップhttps://toppers.github.io/hakoniwa/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/roadmap/<p>箱庭は <strong>「でっかく語って少しずつ育てて」</strong> います.</p> +<p>現在のプロジェクトの活動の中心としては,コンセプトの実現と技術研鑽のために<a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes">プロトタイプモデル</a>を構築中です. +これらの研究開発は,すべてOSSとして公開しながら進めていきます. +皆さまにそれぞれのプロトタイプモデルをご利用いただき,そしてフィードバックを得ながら,箱庭コア技術の成熟と様々な機能拡充を進めていきたいと考えています.</p> +<p><img alt="roadmap" src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/roadmap1.png"></p> +<p>箱庭プロジェクトは,まずは教育用途でのパッケージ構築と普及を図っていますが,製品開発への展開も視野に入れて研究開発を進めています. +壮大な構想を掲げていますが,全くマンパワーは足りていないのが実情です. +箱庭の成長のためにも,特にクラウド技術や可視化アセット開発に知見をお持ちの方に参画いただきたいと考えています.</p> +<p>箱庭WGの狙いや趣旨にご賛同いただける方の参画をお待ちしています. +活動としては,月1回のオンラインでの定例会合と、年2回の技術検討合宿を実施しています. +また,日常的な議論や情報共有と開発にはSlack,GitHubおよびGoogle Driveを活用しています.</p> +<p>Slack等での議論に参加したい方,活動内容へのご要望をお持ちの方,コア技術や各アセットの開発などに参加したい方, +箱庭WGの活動で期待される技術成果を活用したい方,製品開発に展開してみたい方, +ぜひとも<a href="https://toppers.github.io/hakoniwa/hakoniwa/contact/">問合せ先</a>よりご連絡ください.</p> \ No newline at end of file diff --git a/docs/roadmap/index.html b/docs/roadmap/index.html index ea8a08dd..2f895c10 100644 --- a/docs/roadmap/index.html +++ b/docs/roadmap/index.html @@ -1,4 +1,4 @@ -ロードマップ

ロードマップ

箱庭の研究開発のロードマップを紹介します.

箱庭は 「でっかく語って少しずつ育てて」 います.

現在のプロジェクトの活動の中心としては,コンセプトの実現と技術研鑽のためにプロトタイプモデルを構築中です. +ロードマップ

ロードマップ

箱庭の研究開発のロードマップを紹介します.

箱庭は 「でっかく語って少しずつ育てて」 います.

現在のプロジェクトの活動の中心としては,コンセプトの実現と技術研鑽のためにプロトタイプモデルを構築中です. これらの研究開発は,すべてOSSとして公開しながら進めていきます. 皆さまにそれぞれのプロトタイプモデルをご利用いただき,そしてフィードバックを得ながら,箱庭コア技術の成熟と様々な機能拡充を進めていきたいと考えています.

roadmap

箱庭プロジェクトは,まずは教育用途でのパッケージ構築と普及を図っていますが,製品開発への展開も視野に入れて研究開発を進めています. 壮大な構想を掲げていますが,全くマンパワーは足りていないのが実情です. diff --git a/docs/technical/index.html b/docs/technical/index.html index 0011a63d..e360624b 100644 --- a/docs/technical/index.html +++ b/docs/technical/index.html @@ -1,4 +1,4 @@ -技術要素

技術要素

箱庭を形成する技術要素を紹介します.

TOPPERSカーネル

TOPPERSプロジェクトにより開発されている,μITRON4.0仕様のスタンダードプロファイルを拡張した,オープンソースのリアルタイムカーネルです. +技術要素

技術要素

箱庭を形成する技術要素を紹介します.

TOPPERSカーネル

TOPPERSプロジェクトにより開発されている,μITRON4.0仕様のスタンダードプロファイルを拡張した,オープンソースのリアルタイムカーネルです. 主な適用対象は,高い信頼性・安全性・リアルタイム性を要求される組込みシステムです.

TOPPERS

Athrill

箱庭の核である,CPU命令セットシミュレータです.
箱庭WGメンバが中心となって開発を進めています.組込みマイコンおよびペリフェラルの挙動を命令レベルでデバッグ・機能検証することができます.現在はV850/RH850およびARMv7-Aが主なサポート対象です.

TOPPERSライセンスのもと,オープンソースで開発を進めています.

mROS

ROS(Robot Operating System)の組込み向け軽量実行環境です.ホストPC上のROSマスタおよびROSノードに対する,組込みマイコンからの出版購読型通信を実現します.東京大学 情報理工学系研究科 システム情報第8研究室が中心となって開発を進めています.
複数ロボットの連携制御シミュレーションのようなシステムでの活用を想定しています.

RDBOX

RDBOX (Robotics Developers BOX)は,ROSロボットやIoTに最適化した,Kubernetesクラスタとセキュアで拡張性の高いWi-Fiネットワークを自動構築するためのフレームワークです.シミュレーション環境と現実の作業環境をブリッジすることを目指しています.株式会社インテックのRDBOX Projectで開発されています.
ロボット間協調動作向けプロトタイプモデルの構築において,箱庭との連携を進めています.



Unity

リアルタイム3D開発プラットフォームです.IDEを内蔵するゲームエンジンとして有名です.
箱庭では,物理演算エンジンと空間可視化のために活用しています.






箱庭WGでは,この他にも,IoT/クラウドロボティクス時代の仮想環境を確立するために,統合すべき技術要素を模索しているところです.
シナジーが生まれそうな技術や,活用できそうな知見をお持ちの方がいましたら,ぜひお知らせください.

注: このウェブページは,ユニティ テクノロジーズまたはその関連会社がスポンサーとなったり,ユニティ テクノロジーズまたはその関連会社と提携しているものではありません. このサイトに掲載された Unity の登録商標一覧に含まれる Unity の登録商標はすべて,ユニティ テクノロジーズまたはその米国や他の国々に所在する関連会社の登録商標または商標です.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/en/categories/index.html b/en/categories/index.html index 8402e6ce..f059a585 100644 --- a/en/categories/index.html +++ b/en/categories/index.html @@ -1 +1 @@ -Categories

Voice of TOPPERS Project Hakoniwa WG Developers

Our vision, news and ideas, and whatever feels important.
Follow us on Twitter

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file +Categories

Voice of TOPPERS Project Hakoniwa WG Developers

Our vision, news and ideas, and whatever feels important.
Follow us on Twitter

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/en/contact/index.html b/en/contact/index.html index f7641685..a9b77105 100644 --- a/en/contact/index.html +++ b/en/contact/index.html @@ -1,5 +1,5 @@ -SNS & Contact

SNS & Contact

.

Invitation to Hakoniwa WG

We welcome the participation of those who agree with the purpose of the Hakoniwa WG. +SNS & Contact

SNS & Contact

.

Invitation to Hakoniwa WG

We welcome the participation of those who agree with the purpose of the Hakoniwa WG. If you would like to participate in discussions on Slack, have requests for our activities, develop core technologies and assets, or utilize the technical outcomes of the Hakoniwa WG and employ them in product development, etc., don’t hesitate to get in touch with us.

Email: hakoniwa.toppers_at_gmail.com (Replace _at_ with @)
 

Hakoniwa Forum: Technical questions and discussions

We maintain GitHub Discussions as a social networking site for developers, engineers, and users involved in Hakoniwa.

In trying out the Hakoniwa prototype model, we welcome technical questions (even those related to underlying technologies, such as Athrill, of course), as well as ideas on how to utilize Hakoniwa and related general topics are also welcome.

The following categories are available; please choose the appropriate one and submit your entry.

  • Announcements: What’s new from Hakoniwa members
  • General: General topics about Hakoniwa and underlying technology, a.k.a. chatting place.
  • Idea&Request: Can I use it like this? I want to use it like this! Let’s share ideas!
  • Inquiry: Inquiries and requests for participation in Hakoniwa WG activities (for technical questions, please use “Q&A”)
  • Q&A: Technical questions (questions about individual technology elements, including Athrill, are also welcome! (Please let us know about any problems you encountered during the trial of the Hakoniwa prototype model)

Hakoniwa mokumoku-kai: Developing Hakoniwa and chatting.

Hakoniwa WG holds “Mokumoku-kai” irregularly, which is open to the public via connpass and attended by the development members of Hakoniwa WG.
https://hakoniwa.connpass.com/

“Mokumoku” means “to do something quietly by oneself,” and “kai” means “meeting.” So, “mokumoku-kai” is generally a meetup to study, work, read, etc., casually and alone. In Hakoniwa WG, we bring up what we want to do or want to know, express it with light self-introductions, and after a short period of “mokumoku,” share the progress.

If you have heard about Hakoniwa at various events and are curious about it, or if you are just curious about Unity x ROS aside from Hakoniwa, please join us. There is no specific schedule, so those who want to chat with the development team members are welcome to join us.

Join Hakoniwa WG

Hakoniwa WG is a part of TOPPERS Project.
If you join as a member of Hakoniwa WG, we also ask you to join the TOPPERS Project in principle. We are also planning TOPPERS Project members-only events and early access to Hakoniwa WG products as soon as possible.

For more information on joining the TOPPERS Project, please contact the TOPPERS Project Office.

NPO TOPPERS Project 
@@ -7,16 +7,16 @@
 (General Incorporated Association) Japan Embedded Systems Technology Association (JASA)
 TEL & FAX: 03-5643-5166
 Email: secretariat_at_toppers.jp (Replace _at_ with @)
-

Members & Roles

MembersRolesOrganizationSNS
Takashi MORIProject General Manager, AthrillESM, Inc. +

Members & Roles

MembersRolesOrganizationSNS
Takashi MORIProject General Manager, AthrillESM, Inc. -
Hideki TAKASEmROS, ROS, IoTThe University of Tokyo / JST PRESTO +
Hideki TAKASEmROS, ROS, IoTThe University of Tokyo / JST PRESTO -
Shintaro HOSOAIIDE, Modeling, Visualization, CloudChange Vision, Inc. +
Shintaro HOSOAIIDE, Modeling, Visualization, CloudChange Vision, Inc. -
Mitsutaka TAKADAKernel, ApplicationCenter for Embedded Computing Systems, Nagoya Univ. +
Mitsutaka TAKADAKernel, ApplicationCenter for Embedded Computing Systems, Nagoya Univ. -
Masayoshi NIWANOAutomotive components, Cloud, IDEEXEO Digital Solutions -
Tatsuya HUKUDACloud, RoboticsINTEC Inc. +
Masayoshi NIWANOAutomotive components, Cloud, IDEEXEO Digital Solutions +
Tatsuya HUKUDACloud, RoboticsINTEC Inc. -
Akihiro KOMORIVisualization +
Akihiro KOMORIVisualization

Only those who have given permission are listed.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/en/docs/aimat/index.html b/en/docs/aimat/index.html index 71210953..70c0f3a5 100644 --- a/en/docs/aimat/index.html +++ b/en/docs/aimat/index.html @@ -1,3 +1,3 @@ -Our Goal

Our Goal

Target users, strengths, and novelty of Hakoniwa.

Our goal is to establish a simulation environment and ecosystem for engineers who develop/provide massive and complex IoT systems.

Hakoniwa’s target is an information system with various devices connected by a network. +Our Goal

Our Goal

Target users, strengths, and novelty of Hakoniwa.

Our goal is to establish a simulation environment and ecosystem for engineers who develop/provide massive and complex IoT systems.

Hakoniwa’s target is an information system with various devices connected by a network. We envision IoT applications in various fields, such as autonomous driving, logistics, and space development.

Hakoniwa targets the following users

  • System developers: engineers who develop IoT systems and their components
  • Service providers: Engineers who promote the provision of system services using the IoT.
  • Developers and providers of Hakoniwa assets
    • Assets here refer to the system components of Hakoniwa.

The strength and novelty of the Hakoniwa project is the ability to verify the target system with arbitrary accuracy by linking the Hakoniwa Asset. Then, according to technical domain and evaluation target, users can replace the Hakoniwa assets and verify them at any target / abstraction level / accuracy.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/en/docs/background/index.html b/en/docs/background/index.html index d94698a6..7f4761e6 100644 --- a/en/docs/background/index.html +++ b/en/docs/background/index.html @@ -1,3 +1,3 @@ -Technical Background

Technical Background

Here is some background on how we reached our Hakoniwa concept.

The Internet of Things (IoT) is the mixed martial art of information technology. +Technical Background

Technical Background

Here is some background on how we reached our Hakoniwa concept.

The Internet of Things (IoT) is the mixed martial art of information technology. It is because IoT systems are composed of diverse and large numbers of information devices that are intricately intertwined through network communications, requiring many engineers from various technical fields to gather together and pool their wisdom to build an IoT system.

Consider, as an example, an autonomous driving system. It crosses various technical domains as follows.

  • Embedded Systems
    • Development of autonomous determination software for driving
    • Development of communication system between ECUs
  • Control Systems
    • Development of ECU hardware to control mechanical and electrical systems
  • IT & Network
    • Development of Web UI and smartphone applications
    • Management and maintenance of cloud servers for statistical processing of big data
    • Realization of efficient inter-vehicle and inter-device communication control
  • application Systems
    • Development of vehicle assignment management and traffic flow management applications

However, we face the following challenges to realizing such an IoT system.

  • Complexity of the problem path
    • It can hold potential problems that only become visible when integrated.
    • Inconsistency between various devices.
  • Complexity of cause investigation
    • Difficult to investigate what and where is going on.
    • Debugging an entire system is complicated by nature.
  • Costs of verification and experimentation
    • Engineers in various fields are needed
    • labor-intensive, time-consuming, and expensive.
    • Thus, it is not easy to verification

Next, consider the potential challenges when building IoT services using robots.

  • No one knows how to create effective new services using robots.
  • When considering a new service, it takes too much preparation and time to test it with an actual robot.
  • System requirements may change frequently, requiring high effort to apply changes
  • Difficulty in combining causes frequent trouble during testing.

Hakoniwa intends to solve such technical issues and accelerate the development of IoT systems and the construction of services.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/en/docs/concept/index.html b/en/docs/concept/index.html index 75d37b41..9cc18640 100644 --- a/en/docs/concept/index.html +++ b/en/docs/concept/index.html @@ -1,2 +1,2 @@ -Concept

Concept

The concept and use case of Hakoniwa.

The concept of Hakoniwa is “Put mixed things as you like, and try various concepts with ease !”

We provide a virtual environment, which makes it easy to combine and demonstrate different software and services when developing IoT, automated driving systems, cloud robotics systems, etc.

We envision a use scenario where engineers from diverse fields gather to develop IoT systems.
The “box” simulates the events and states of complex federated IoT systems according to the desired scenario. +Concept

Concept

The concept and use case of Hakoniwa.

The concept of Hakoniwa is “Put mixed things as you like, and try various concepts with ease !”

We provide a virtual environment, which makes it easy to combine and demonstrate different software and services when developing IoT, automated driving systems, cloud robotics systems, etc.

We envision a use scenario where engineers from diverse fields gather to develop IoT systems.
The “box” simulates the events and states of complex federated IoT systems according to the desired scenario. And, by just replacing the “assets” that are the system components of Hakoniwa, the user can arbitrarily change the validation’s target / abstraction level / accuracy.

For your information, the origin of Hakoniwa is one of the traditional Japanese cultures in which various elements such as small trees, dolls, bridges, and boats are arranged in a miniature garden in a small box to recreate a picturesque scene.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/en/docs/core/index.html b/en/docs/core/index.html index e7a751e8..49d83c35 100644 --- a/en/docs/core/index.html +++ b/en/docs/core/index.html @@ -1,2 +1,2 @@ -Hakoniwa Core

Hakoniwa Core

Here are the core functions and the functional characteristics of Hakoniwa.

The four core functions of Hakoniwa are as follows.

  1. Scheduling
  2. Synchronization and Communication
  3. Time Management
  4. Asset Management

Also, we believe that the following functional characteristics are essential for Hakoniwa’s core functions.

  1. Componentization
  2. Visualization
  3. Event Driven
  4. Automation

The core functions and functional characteristics of Hakoniwa are still under design study in the WG while developing the prototype model. +Hakoniwa Core

Hakoniwa Core

Here are the core functions and the functional characteristics of Hakoniwa.

The four core functions of Hakoniwa are as follows.

  1. Scheduling
  2. Synchronization and Communication
  3. Time Management
  4. Asset Management

Also, we believe that the following functional characteristics are essential for Hakoniwa’s core functions.

  1. Componentization
  2. Visualization
  3. Event Driven
  4. Automation

The core functions and functional characteristics of Hakoniwa are still under design study in the WG while developing the prototype model. We will add more details as we progress.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/en/docs/index.html b/en/docs/index.html index 6733a345..8d494506 100644 --- a/en/docs/index.html +++ b/en/docs/index.html @@ -1 +1 @@ -What is Hakoniwa

What is Hakoniwa

HAKONIWA logo
Hakoniwa is a virtual simulation environment in the age of IoT and cloud robotics. The concept of Hakoniwa is Put mixed things as you like, and try various concepts with ease !

Technical Background

Why Hakoniwa is essential

Concept

What is Hakoniwa?

Our Goal

Target users, strengths, and novelty of Hakoniwa

Hakoniwa Core

Core technologies of Hakoniwa

Underlying technology

Introduction to the underlying technology comprising Hakoniwa

Roadmap

R&D Guideline and roadmap

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file +What is Hakoniwa

What is Hakoniwa

HAKONIWA logo
Hakoniwa is a virtual simulation environment in the age of IoT and cloud robotics. The concept of Hakoniwa is Put mixed things as you like, and try various concepts with ease !

Technical Background

Why Hakoniwa is essential

Concept

What is Hakoniwa?

Our Goal

Target users, strengths, and novelty of Hakoniwa

Hakoniwa Core

Core technologies of Hakoniwa

Underlying technology

Introduction to the underlying technology comprising Hakoniwa

Roadmap

R&D Guideline and roadmap

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/en/docs/index.xml b/en/docs/index.xml index 7f1d925a..6abb05e4 100644 --- a/en/docs/index.xml +++ b/en/docs/index.xml @@ -1,13 +1,52 @@ -What is Hakoniwa on Hakoniwahttps://toppers.github.io/hakoniwa/en/docs/Recent content in What is Hakoniwa on HakoniwaHugoenTechnical Backgroundhttps://toppers.github.io/hakoniwa/en/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/background/The Internet of Things (IoT) is the mixed martial art of information technology. It is because IoT systems are composed of diverse and large numbers of information devices that are intricately intertwined through network communications, requiring many engineers from various technical fields to gather together and pool their wisdom to build an IoT system. -Consider, as an example, an autonomous driving system. It crosses various technical domains as follows. -Embedded Systems Development of autonomous determination software for driving Development of communication system between ECUs Control Systems Development of ECU hardware to control mechanical and electrical systems IT &amp; Network Development of Web UI and smartphone applications Management and maintenance of cloud servers for statistical processing of big data Realization of efficient inter-vehicle and inter-device communication control application Systems Development of vehicle assignment management and traffic flow management applications However, we face the following challenges to realizing such an IoT system.Concepthttps://toppers.github.io/hakoniwa/en/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/concept/The concept of Hakoniwa is &ldquo;Put mixed things as you like, and try various concepts with ease !&rdquo; -We provide a virtual environment, which makes it easy to combine and demonstrate different software and services when developing IoT, automated driving systems, cloud robotics systems, etc. -We envision a use scenario where engineers from diverse fields gather to develop IoT systems. The &ldquo;box&rdquo; simulates the events and states of complex federated IoT systems according to the desired scenario.Our Goalhttps://toppers.github.io/hakoniwa/en/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/aimat/Our goal is to establish a simulation environment and ecosystem for engineers who develop/provide massive and complex IoT systems. -Hakoniwa&rsquo;s target is an information system with various devices connected by a network. We envision IoT applications in various fields, such as autonomous driving, logistics, and space development. -Hakoniwa targets the following users -System developers: engineers who develop IoT systems and their components Service providers: Engineers who promote the provision of system services using the IoT.Hakoniwa Corehttps://toppers.github.io/hakoniwa/en/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/core/The four core functions of Hakoniwa are as follows. -Scheduling Synchronization and Communication Time Management Asset Management Also, we believe that the following functional characteristics are essential for Hakoniwa&rsquo;s core functions. -Componentization Visualization Event Driven Automation The core functions and functional characteristics of Hakoniwa are still under design study in the WG while developing the prototype model. We will add more details as we progress.Underlying technologyhttps://toppers.github.io/hakoniwa/en/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/technical/TOPPERS Kernel Developed by the TOPPERS Project, it is an open-source real-time kernel that extends the standard profile of the µITRON4.0 specification. It primarily targeted embedded systems that require high reliability, safety, and real-time performance. -Athrill The CPU instruction set simulator is the core of Hakoniwa. Members of Hokoniwa WG mainly develop it. It enables debugging and functional verification of the behavior of embedded microcontrollers and peripherals at the instruction level.Roadmaphttps://toppers.github.io/hakoniwa/en/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/roadmap/Hokoniwa WG is working on &ldquo;big goals, little by little.&rdquo; -Our current main activity is to create prototype models to realize the concept and to examine the technology. All of these R&amp;D results are released as OSS. We desire continuous maturation of the core technologies and expansion of the various functions of Hakoniwa by sharing each prototype model and receiving feedback on it. -The Hakoniwa Project is engaged in research and development, first constructing and disseminating educational packages and then expanding into product development. \ No newline at end of file +What is Hakoniwa on Hakoniwahttps://toppers.github.io/hakoniwa/en/docs/Recent content in What is Hakoniwa on HakoniwaHugoenTechnical Backgroundhttps://toppers.github.io/hakoniwa/en/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/background/<p>The Internet of Things (IoT) is the mixed martial art of information technology. +It is because IoT systems are composed of diverse and large numbers of information devices that are intricately intertwined through network communications, requiring many engineers from various technical fields to gather together and pool their wisdom to build an IoT system.</p> +<p>Consider, as an example, an autonomous driving system. +It crosses various technical domains as follows.</p>Concepthttps://toppers.github.io/hakoniwa/en/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/concept/<p>The concept of Hakoniwa is <strong>&ldquo;Put mixed things as you like, and try various concepts with ease !&rdquo;</strong></p> +<p>We provide a virtual environment, which makes it easy to combine and demonstrate different software and services when developing IoT, automated driving systems, cloud robotics systems, etc.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/concept1.en.png " border="" width="700" /> +</figure> + +<p>We envision a use scenario where engineers from diverse fields gather to develop IoT systems. <br> +The &ldquo;box&rdquo; simulates the events and states of complex federated IoT systems according to the desired scenario. +And, by just replacing the &ldquo;assets&rdquo; that are the system components of Hakoniwa, the user can arbitrarily change the validation&rsquo;s target / abstraction level / accuracy.</p>Our Goalhttps://toppers.github.io/hakoniwa/en/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/aimat/<p>Our goal is to establish a <strong>simulation environment and ecosystem</strong> for engineers who develop/provide massive and complex IoT systems.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/aimat1.en.png " border="" width="700" /> +</figure> + +<p>Hakoniwa&rsquo;s target is an information system with various devices connected by a network. +We envision IoT applications in various fields, such as autonomous driving, logistics, and space development.</p> +<p>Hakoniwa targets the following users</p>Hakoniwa Corehttps://toppers.github.io/hakoniwa/en/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/core/<p>The four core functions of Hakoniwa are as follows.</p> +<ol> +<li>Scheduling</li> +<li>Synchronization and Communication</li> +<li>Time Management</li> +<li>Asset Management</li> +</ol> +<p>Also, we believe that the following functional characteristics are essential for Hakoniwa&rsquo;s core functions.</p> +<ol> +<li>Componentization</li> +<li>Visualization</li> +<li>Event Driven</li> +<li>Automation</li> +</ol> +<p>The core functions and functional characteristics of Hakoniwa are still under design study in the WG while developing the <a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/">prototype model</a>. +We will add more details as we progress.</p>Underlying technologyhttps://toppers.github.io/hakoniwa/en/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/technical/<h3 id="toppers-kernel">TOPPERS Kernel</h3> +<p>Developed by the <a href="https://toppers.jp">TOPPERS Project</a>, it is an open-source real-time kernel that extends the standard profile of the µITRON4.0 specification. +It primarily targeted embedded systems that require high reliability, safety, and real-time performance.</p> +<p><a href="https://toppers.jp/"><img alt="TOPPERS" src="https://www.toppers.jp/imgs/logo.gif"></a></p> +<h3 id="athrill">Athrill</h3> +<p>The CPU instruction set simulator is the core of Hakoniwa. <br> +Members of Hokoniwa WG mainly develop it. It enables debugging and functional verification of the behavior of embedded microcontrollers and peripherals at the instruction level. Currently, V850/RH850 and ARMv7-A are mainly supported.</p>Roadmaphttps://toppers.github.io/hakoniwa/en/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/roadmap/<p>Hokoniwa WG is working on &ldquo;big goals, little by little.&rdquo;</p> +<p>Our current main activity is to create <a href="https://toppers.github.io/hakoniwa/hakoniwa/en/prototypes">prototype models</a> to realize the concept and to examine the technology. +All of these R&amp;D results are released as OSS. +We desire continuous maturation of the core technologies and expansion of the various functions of Hakoniwa by sharing each prototype model and receiving feedback on it.</p> +<!-- raw HTML omitted --> +<!-- raw HTML omitted --> +<p>The Hakoniwa Project is engaged in research and development, first constructing and disseminating educational packages and then expanding into product development. +We have a big vision, but to be honest, we are somewhat short on the workforce. +We are looking for various technical personnel (especially those with knowledge of cloud technologies and visualization asset development) to help us grow Hakoniwa.</p> \ No newline at end of file diff --git a/en/docs/roadmap/index.html b/en/docs/roadmap/index.html index af49db33..67a7d989 100644 --- a/en/docs/roadmap/index.html +++ b/en/docs/roadmap/index.html @@ -1,5 +1,5 @@ -Roadmap

Roadmap

Here is a roadmap for Hakoniwa's R&D. -

Hokoniwa WG is working on “big goals, little by little.”

Our current main activity is to create prototype models to realize the concept and to examine the technology. +Roadmap

Roadmap

Here is a roadmap for Hakoniwa's R&D. +

Hokoniwa WG is working on “big goals, little by little.”

Our current main activity is to create prototype models to realize the concept and to examine the technology. All of these R&D results are released as OSS. We desire continuous maturation of the core technologies and expansion of the various functions of Hakoniwa by sharing each prototype model and receiving feedback on it.

The Hakoniwa Project is engaged in research and development, first constructing and disseminating educational packages and then expanding into product development. We have a big vision, but to be honest, we are somewhat short on the workforce. diff --git a/en/docs/technical/index.html b/en/docs/technical/index.html index bc989751..37019909 100644 --- a/en/docs/technical/index.html +++ b/en/docs/technical/index.html @@ -1,4 +1,4 @@ -Underlying technology

Underlying technology

Introduction to the underlying technology comprising Hakoniwa.

TOPPERS Kernel

Developed by the TOPPERS Project, it is an open-source real-time kernel that extends the standard profile of the µITRON4.0 specification. +Underlying technology

Underlying technology

Introduction to the underlying technology comprising Hakoniwa.

TOPPERS Kernel

Developed by the TOPPERS Project, it is an open-source real-time kernel that extends the standard profile of the µITRON4.0 specification. It primarily targeted embedded systems that require high reliability, safety, and real-time performance.

TOPPERS

Athrill

The CPU instruction set simulator is the core of Hakoniwa.
Members of Hokoniwa WG mainly develop it. It enables debugging and functional verification of the behavior of embedded microcontrollers and peripherals at the instruction level. Currently, V850/RH850 and ARMv7-A are mainly supported.

The software is being developed as open source under the TOPPERS license.

mROS

mROS is a lightweight ROS (ROS1) execution environment for embedded systems. It enables publication-subscription communication from an embedded microcontroller to a ROS master and ROS nodes on a host PC. Computing System Laboratory, Graduate School of IST, The University of Tokyo plays a leading role in the development.
It targets systems such as Simulation of collaborative operation of multiple robots.

RDBOX

RDBOX (Robotics Developers BOX) is a framework for automatically building Kubernetes clusters and secure, scalable Wi-Fi networks optimized for ROS robots and IoT. diff --git a/en/index.html b/en/index.html index 9ba1c34b..c366b2a8 100644 --- a/en/index.html +++ b/en/index.html @@ -1 +1 @@ -Hakoniwa

Hakoniwa

HAKONIWA logo

A virtual simulation environment in the age of IoT and cloud robotics

    What’s New

    • 2022.06.15
      • The English version of this site has been published.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file +Hakoniwa

Hakoniwa

HAKONIWA logo

A virtual simulation environment in the age of IoT and cloud robotics

Technical Background

Why Hakoniwa is essential

Concept

What is Hakoniwa?

Our Goal

Target users, strengths, and novelty of Hakoniwa

Hakoniwa Core

Core technologies of Hakoniwa

Underlying technology

Introduction to the underlying technology comprising Hakoniwa

Roadmap

R&D Guideline and roadmap

    What’s New

    • 2022.06.15
      • The English version of this site has been published.

© 2019- by Hakoniwa Working-Group, TOPPERS Project

\ No newline at end of file diff --git a/en/index.xml b/en/index.xml index fc0e3f39..343f569d 100644 --- a/en/index.xml +++ b/en/index.xml @@ -1,18 +1,258 @@ -Hakoniwahttps://toppers.github.io/hakoniwa/en/Recent content on HakoniwaHugoenWed, 26 Aug 2020 15:09:42 +0900Technical Backgroundhttps://toppers.github.io/hakoniwa/en/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/background/The Internet of Things (IoT) is the mixed martial art of information technology. It is because IoT systems are composed of diverse and large numbers of information devices that are intricately intertwined through network communications, requiring many engineers from various technical fields to gather together and pool their wisdom to build an IoT system. -Consider, as an example, an autonomous driving system. It crosses various technical domains as follows. -Embedded Systems Development of autonomous determination software for driving Development of communication system between ECUs Control Systems Development of ECU hardware to control mechanical and electrical systems IT &amp; Network Development of Web UI and smartphone applications Management and maintenance of cloud servers for statistical processing of big data Realization of efficient inter-vehicle and inter-device communication control application Systems Development of vehicle assignment management and traffic flow management applications However, we face the following challenges to realizing such an IoT system.Concepthttps://toppers.github.io/hakoniwa/en/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/concept/The concept of Hakoniwa is &ldquo;Put mixed things as you like, and try various concepts with ease !&rdquo; -We provide a virtual environment, which makes it easy to combine and demonstrate different software and services when developing IoT, automated driving systems, cloud robotics systems, etc. -We envision a use scenario where engineers from diverse fields gather to develop IoT systems. The &ldquo;box&rdquo; simulates the events and states of complex federated IoT systems according to the desired scenario.Our Goalhttps://toppers.github.io/hakoniwa/en/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/aimat/Our goal is to establish a simulation environment and ecosystem for engineers who develop/provide massive and complex IoT systems. -Hakoniwa&rsquo;s target is an information system with various devices connected by a network. We envision IoT applications in various fields, such as autonomous driving, logistics, and space development. -Hakoniwa targets the following users -System developers: engineers who develop IoT systems and their components Service providers: Engineers who promote the provision of system services using the IoT.Hakoniwa Corehttps://toppers.github.io/hakoniwa/en/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/core/The four core functions of Hakoniwa are as follows. -Scheduling Synchronization and Communication Time Management Asset Management Also, we believe that the following functional characteristics are essential for Hakoniwa&rsquo;s core functions. -Componentization Visualization Event Driven Automation The core functions and functional characteristics of Hakoniwa are still under design study in the WG while developing the prototype model. We will add more details as we progress.Underlying technologyhttps://toppers.github.io/hakoniwa/en/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/technical/TOPPERS Kernel Developed by the TOPPERS Project, it is an open-source real-time kernel that extends the standard profile of the µITRON4.0 specification. It primarily targeted embedded systems that require high reliability, safety, and real-time performance. -Athrill The CPU instruction set simulator is the core of Hakoniwa. Members of Hokoniwa WG mainly develop it. It enables debugging and functional verification of the behavior of embedded microcontrollers and peripherals at the instruction level.Roadmaphttps://toppers.github.io/hakoniwa/en/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/roadmap/Hokoniwa WG is working on &ldquo;big goals, little by little.&rdquo; -Our current main activity is to create prototype models to realize the concept and to examine the technology. All of these R&amp;D results are released as OSS. We desire continuous maturation of the core technologies and expansion of the various functions of Hakoniwa by sharing each prototype model and receiving feedback on it. -The Hakoniwa Project is engaged in research and development, first constructing and disseminating educational packages and then expanding into product development.Microcomputer-controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/single-robot/This is a Hakoniwa prototype model with one SBC, designed based on the challenges of ET Robocon. This prototype can verify by linking the program&rsquo;s behavior on the embedded microcontroller with the robot&rsquo;s behavior. -Design intent from a technical study perspective Study on how to integrate between physical simulators and microcomputer simulators Study of time synchronization between different simulators Other design intent Promote Hakoniwa to ET Robot contenst participants (PR activities) Installation &amp; Usage A trial package with minimal configuration and procedures is available in the GitHub repository below.ROS controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/ros-robot/This prototype model uses ROS/ROS2 to collaborate with multiple and single robots. This prototype is lighter than Gazebo, often used with ROS, and allows for easy customization of robots and environments in Unity and the introduction of URDF format models. -Design intent from a technical study perspective Running simulations using ROS, which is commonly used for robot control Study on how to coordinate with other robots Other design intent Introduce robots controlled by ROS to create a simulation environment that mixes multiple control mechanisms Installation &amp; Usage A trial package with minimal configuration and procedures is available in the GitHub repository below.Simulation of collaborative operation of multiple robotshttps://toppers.github.io/hakoniwa/en/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/multi-robot/This prototype model simulates multiple robots and control programs in the same environment. This prototype uses Unity&rsquo;s Photon library to synchronize multiple Unity environments and even time synchronization among assets and uses VR technology to dive into the simulation environment for verification. -Design intent from a technical study perspective Study of methods of collaboration in multiple environments (e.g., simulation time synchronization) Study on how visualize communication among Hakoniwa assets (including ROS/ROS2 collaboration)/ROS2連携含む) Study of mechanisms to augment Hakoniwa assets Other design intent Promote Hakoniwa to the ROS user base (PR activities) Installation &amp; Usage Various demos are available at the following Github repository.Simulation of inter-robot cooperative operationhttps://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/This is a Hakoniwa prototype model for integration of cloud computing and robotics. -Design intent from a technical study perspective Study of specific methods of cloud computing integration Study on how to coordinate with other robots (challenge to more complex robot operation/interference) Study of mechanisms to augment Hakoniwa assets Other design intent Interaction with RDBOX ( establish a track record of Hakoniwa as a development virtual environment) Promote Hakoniwa to the RDBOX user base (PR activities) The prototype model is currently under development.Repository Listhttps://toppers.github.io/hakoniwa/en/repositories/Wed, 26 Aug 2020 15:09:42 +0900https://toppers.github.io/hakoniwa/en/repositories/Hakoniwa Links Outline hakoniwa Repository for general support handling and content management of this website hakoniwa-single_robot Package that can try Hakoniwa Prototype Model A: Simulator for Single Robot with minimum configuration and procedures hakoniwa-ros2sim Environment for easy simulation of ROS 2 programs on Hakoniwa hakoniwa-core Repository for prototype development of Hakoniwa Core Function Athrill Links Outline athrill Athrill core (target-independent part) athrill-device athrill device for external shared library. athrill-target-v850e2m v850e2m Target dependencies for Athrill athrill-target-ARMv7-A ARMv7-A Target dependencies for Athrill athrill-target-rh850f1x rh850f1x Target dependencies for Athrill athrill-gcc-v850e2m gcc package for Athrill V850E2M target TOPPERS kernel Links Outline ev3rt-athrill-v850e2m V850E2M version of TOPPERS/EV3RT platform for Athrill ev3rt-athrill-ARMv7-A Arm v7-A version of TOPPERS/EV3RT platform for Athrill asp-athrill-mbed Package of TOPPERS/ASP kernel and Mbed library for Athrill Unity Links Outline hakoniwa-Unity-Package Unity Asset Package for Hakoniwa mROS Links Outline mROS A lightweight runtime environment of ROS 1 nodes onto embedded devices mROS 2 A lightweight runtime environment of ROS 1 nodes onto embedded devices Samples Links Outline hakoniwa-scenario-samples Sample collection of Hakoniwa behavior scenariosSNS & Contacthttps://toppers.github.io/hakoniwa/en/contact/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/contact/Invitation to Hakoniwa WG We welcome the participation of those who agree with the purpose of the Hakoniwa WG. If you would like to participate in discussions on Slack, have requests for our activities, develop core technologies and assets, or utilize the technical outcomes of the Hakoniwa WG and employ them in product development, etc., don&rsquo;t hesitate to get in touch with us. -Email: hakoniwa.toppers_at_gmail.com (Replace _at_ with @) Hakoniwa Forum: Technical questions and discussions We maintain GitHub Discussions as a social networking site for developers, engineers, and users involved in Hakoniwa. \ No newline at end of file +Hakoniwahttps://toppers.github.io/hakoniwa/en/Recent content on HakoniwaHugoenWed, 26 Aug 2020 15:09:42 +0900Technical Backgroundhttps://toppers.github.io/hakoniwa/en/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/background/<p>The Internet of Things (IoT) is the mixed martial art of information technology. +It is because IoT systems are composed of diverse and large numbers of information devices that are intricately intertwined through network communications, requiring many engineers from various technical fields to gather together and pool their wisdom to build an IoT system.</p> +<p>Consider, as an example, an autonomous driving system. +It crosses various technical domains as follows.</p>Concepthttps://toppers.github.io/hakoniwa/en/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/concept/<p>The concept of Hakoniwa is <strong>&ldquo;Put mixed things as you like, and try various concepts with ease !&rdquo;</strong></p> +<p>We provide a virtual environment, which makes it easy to combine and demonstrate different software and services when developing IoT, automated driving systems, cloud robotics systems, etc.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/concept1.en.png " border="" width="700" /> +</figure> + +<p>We envision a use scenario where engineers from diverse fields gather to develop IoT systems. <br> +The &ldquo;box&rdquo; simulates the events and states of complex federated IoT systems according to the desired scenario. +And, by just replacing the &ldquo;assets&rdquo; that are the system components of Hakoniwa, the user can arbitrarily change the validation&rsquo;s target / abstraction level / accuracy.</p>Our Goalhttps://toppers.github.io/hakoniwa/en/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/aimat/<p>Our goal is to establish a <strong>simulation environment and ecosystem</strong> for engineers who develop/provide massive and complex IoT systems.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/aimat1.en.png " border="" width="700" /> +</figure> + +<p>Hakoniwa&rsquo;s target is an information system with various devices connected by a network. +We envision IoT applications in various fields, such as autonomous driving, logistics, and space development.</p> +<p>Hakoniwa targets the following users</p>Hakoniwa Corehttps://toppers.github.io/hakoniwa/en/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/core/<p>The four core functions of Hakoniwa are as follows.</p> +<ol> +<li>Scheduling</li> +<li>Synchronization and Communication</li> +<li>Time Management</li> +<li>Asset Management</li> +</ol> +<p>Also, we believe that the following functional characteristics are essential for Hakoniwa&rsquo;s core functions.</p> +<ol> +<li>Componentization</li> +<li>Visualization</li> +<li>Event Driven</li> +<li>Automation</li> +</ol> +<p>The core functions and functional characteristics of Hakoniwa are still under design study in the WG while developing the <a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/">prototype model</a>. +We will add more details as we progress.</p>Underlying technologyhttps://toppers.github.io/hakoniwa/en/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/technical/<h3 id="toppers-kernel">TOPPERS Kernel</h3> +<p>Developed by the <a href="https://toppers.jp">TOPPERS Project</a>, it is an open-source real-time kernel that extends the standard profile of the µITRON4.0 specification. +It primarily targeted embedded systems that require high reliability, safety, and real-time performance.</p> +<p><a href="https://toppers.jp/"><img alt="TOPPERS" src="https://www.toppers.jp/imgs/logo.gif"></a></p> +<h3 id="athrill">Athrill</h3> +<p>The CPU instruction set simulator is the core of Hakoniwa. <br> +Members of Hokoniwa WG mainly develop it. It enables debugging and functional verification of the behavior of embedded microcontrollers and peripherals at the instruction level. Currently, V850/RH850 and ARMv7-A are mainly supported.</p>Roadmaphttps://toppers.github.io/hakoniwa/en/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/roadmap/<p>Hokoniwa WG is working on &ldquo;big goals, little by little.&rdquo;</p> +<p>Our current main activity is to create <a href="https://toppers.github.io/hakoniwa/hakoniwa/en/prototypes">prototype models</a> to realize the concept and to examine the technology. +All of these R&amp;D results are released as OSS. +We desire continuous maturation of the core technologies and expansion of the various functions of Hakoniwa by sharing each prototype model and receiving feedback on it.</p> +<!-- raw HTML omitted --> +<!-- raw HTML omitted --> +<p>The Hakoniwa Project is engaged in research and development, first constructing and disseminating educational packages and then expanding into product development. +We have a big vision, but to be honest, we are somewhat short on the workforce. +We are looking for various technical personnel (especially those with knowledge of cloud technologies and visualization asset development) to help us grow Hakoniwa.</p>Microcomputer-controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/single-robot/<p>This is a Hakoniwa prototype model with one SBC, designed based on the challenges of <a href="https://www.etrobo.jp/">ET Robocon</a>. +This prototype can verify by linking the program&rsquo;s behavior on the embedded microcontroller with the robot&rsquo;s behavior.</p> +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Study on how to integrate between physical simulators and microcomputer simulators</li> +<li>Study of time synchronization between different simulators</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Promote Hakoniwa to ET Robot contenst participants (PR activities)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelA.en.png " border="" width="700" /> +</figure> + +<h3 id="installation--usage">Installation &amp; Usage</h3> +<p>A trial package with minimal configuration and procedures is available in the GitHub repository below. +We encourage you to try it out.</p>ROS controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/ros-robot/<p>This prototype model uses ROS/ROS2 to collaborate with multiple and single robots. +This prototype is lighter than Gazebo, often used with ROS, and allows for easy customization of robots and environments in Unity and the introduction of URDF format models.</p> +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Running simulations using ROS, which is commonly used for robot control</li> +<li>Study on how to coordinate with other robots</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Introduce robots controlled by ROS to create a simulation environment that mixes multiple control mechanisms</li> +</ul> +<h3 id="installation--usage">Installation &amp; Usage</h3> +<p>A trial package with minimal configuration and procedures is available in the GitHub repository below. +We encourage you to try it out.</p>Simulation of collaborative operation of multiple robotshttps://toppers.github.io/hakoniwa/en/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/multi-robot/<p>This prototype model simulates multiple robots and control programs in the same environment. +This prototype uses Unity&rsquo;s Photon library to synchronize multiple Unity environments and even time synchronization among assets and uses VR technology to dive into the simulation environment for verification.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBoverview.en.png " border="" width="700" /> +</figure> + +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Study of methods of collaboration in multiple environments (e.g., simulation time synchronization)</li> +<li>Study on how visualize communication among Hakoniwa assets (including ROS/ROS2 collaboration)/ROS2連携含む)</li> +<li>Study of mechanisms to augment Hakoniwa assets</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Promote Hakoniwa to the ROS user base (PR activities)</li> +</ul> +<h3 id="installation--usage">Installation &amp; Usage</h3> +<p>Various demos are available at the following Github repository. Try them out.</p>Simulation of inter-robot cooperative operationhttps://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/<p>This is a Hakoniwa prototype model for integration of cloud computing and robotics.</p> +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Study of specific methods of cloud computing integration</li> +<li>Study on how to coordinate with other robots (challenge to more complex robot operation/interference)</li> +<li>Study of mechanisms to augment Hakoniwa assets</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Interaction with RDBOX ( establish a track record of Hakoniwa as a development virtual environment)</li> +<li>Promote Hakoniwa to the RDBOX user base (PR activities)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelC.en.png " border="" width="700" /> +</figure> + +<p>The prototype model is currently under development. So please wait for its release.</p>Repository Listhttps://toppers.github.io/hakoniwa/en/repositories/Wed, 26 Aug 2020 15:09:42 +0900https://toppers.github.io/hakoniwa/en/repositories/<h3 id="hakoniwa">Hakoniwa</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa">hakoniwa</a></td> + <td style="text-align: left">Repository for general support handling and content management of this website</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-single_robot">hakoniwa-single_robot</a></td> + <td style="text-align: left">Package that can try <a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/single-robot">Hakoniwa Prototype Model A: Simulator for Single Robot</a> with minimum configuration and procedures</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-ros2sim">hakoniwa-ros2sim</a></td> + <td style="text-align: left">Environment for easy simulation of ROS 2 programs on Hakoniwa</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-core">hakoniwa-core</a></td> + <td style="text-align: left">Repository for prototype development of <a href="https://toppers.github.io/hakoniwa/hakoniwa/docs/core">Hakoniwa Core Function</a></td> + </tr> + </tbody> +</table> +<h3 id="athrill">Athrill</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill">athrill</a></td> + <td style="text-align: left">Athrill core (target-independent part)</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-device">athrill-device</a></td> + <td style="text-align: left">athrill device for external shared library.</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-target-v850e2m">athrill-target-v850e2m</a></td> + <td style="text-align: left">v850e2m Target dependencies for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-target-ARMv7-A">athrill-target-ARMv7-A</a></td> + <td style="text-align: left">ARMv7-A Target dependencies for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-target-rh850f1x">athrill-target-rh850f1x</a></td> + <td style="text-align: left">rh850f1x Target dependencies for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-gcc-v850e2m">athrill-gcc-v850e2m</a></td> + <td style="text-align: left">gcc package for Athrill V850E2M target</td> + </tr> + </tbody> +</table> +<h3 id="toppers-kernel">TOPPERS kernel</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/ev3rt-athrill-v850e2m">ev3rt-athrill-v850e2m</a></td> + <td style="text-align: left">V850E2M version of TOPPERS/EV3RT platform for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/ev3rt-athrill-ARMv7-A">ev3rt-athrill-ARMv7-A</a></td> + <td style="text-align: left">Arm v7-A version of TOPPERS/EV3RT platform for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/asp-athrill-mbed">asp-athrill-mbed</a></td> + <td style="text-align: left">Package of TOPPERS/ASP kernel and Mbed library for Athrill</td> + </tr> + </tbody> +</table> +<h3 id="unity">Unity</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-Unity-Package">hakoniwa-Unity-Package</a></td> + <td style="text-align: left">Unity Asset Package for Hakoniwa</td> + </tr> + </tbody> +</table> +<h3 id="mros">mROS</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/mROS-base/mROS">mROS</a></td> + <td style="text-align: left">A lightweight runtime environment of ROS 1 nodes onto embedded devices</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/mROS-base/mros2">mROS 2</a></td> + <td style="text-align: left">A lightweight runtime environment of ROS 1 nodes onto embedded devices</td> + </tr> + </tbody> +</table> +<h3 id="samples">Samples</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-scenario-samples">hakoniwa-scenario-samples</a></td> + <td style="text-align: left">Sample collection of Hakoniwa behavior scenarios</td> + </tr> + </tbody> +</table>SNS & Contacthttps://toppers.github.io/hakoniwa/en/contact/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/contact/<h3 id="invitation-to-hakoniwa-wg">Invitation to Hakoniwa WG</h3> +<p>We welcome the participation of those who agree with the purpose of the Hakoniwa WG. +If you would like to participate in discussions on Slack, have requests for our activities, develop core technologies and assets, or utilize the technical outcomes of the Hakoniwa WG and employ them in product development, etc., don&rsquo;t hesitate to get in touch with us.</p> +<pre tabindex="0"><code>Email: hakoniwa.toppers_at_gmail.com (Replace _at_ with @) +</code></pr \ No newline at end of file diff --git a/en/page/2/index.html b/en/page/2/index.html index e90bf836..3999bcae 100644 --- a/en/page/2/index.html +++ b/en/page/2/index.html @@ -1,3 +1,3 @@ -Ens

Voice of TOPPERS Project Hakoniwa WG Developers

Our vision, news and ideas, and whatever feels important.
Follow us on Twitter

  • Underlying technology  


    Introduction to the underlying technology comprising Hakoniwa

  • Roadmap  


    R&D Guideline and roadmap

  • Microcomputer-controlled robot simulation   +Ens

    Voice of TOPPERS Project Hakoniwa WG Developers

    Our vision, news and ideas, and whatever feels important.
    Follow us on Twitter

    © 2019- by Hakoniwa Working-Group, TOPPERS Project

    \ No newline at end of file diff --git a/en/page/3/index.html b/en/page/3/index.html index a603ff7f..dfd8d031 100644 --- a/en/page/3/index.html +++ b/en/page/3/index.html @@ -1,2 +1,2 @@ -Ens

    Voice of TOPPERS Project Hakoniwa WG Developers

    Our vision, news and ideas, and whatever feels important.
    Follow us on Twitter

    • Simulation of collaborative operation of multiple robots   +Ens

      Voice of TOPPERS Project Hakoniwa WG Developers

      Our vision, news and ideas, and whatever feels important.
      Follow us on Twitter

      © 2019- by Hakoniwa Working-Group, TOPPERS Project

      \ No newline at end of file diff --git a/en/prototypes/harmony-robot/index.html b/en/prototypes/harmony-robot/index.html index 977a0a77..35caa6f3 100644 --- a/en/prototypes/harmony-robot/index.html +++ b/en/prototypes/harmony-robot/index.html @@ -1 +1 @@ -Simulation of inter-robot cooperative operation

      Simulation of inter-robot cooperative operation

      Integration of cloud computing and robotics.

      This is a Hakoniwa prototype model for integration of cloud computing and robotics.

      Design intent from a technical study perspective

      • Study of specific methods of cloud computing integration
      • Study on how to coordinate with other robots (challenge to more complex robot operation/interference)
      • Study of mechanisms to augment Hakoniwa assets

      Other design intent

      • Interaction with RDBOX ( establish a track record of Hakoniwa as a development virtual environment)
      • Promote Hakoniwa to the RDBOX user base (PR activities)

      The prototype model is currently under development. So please wait for its release.

      © 2019- by Hakoniwa Working-Group, TOPPERS Project

      \ No newline at end of file +Simulation of inter-robot cooperative operation

      Simulation of inter-robot cooperative operation

      Integration of cloud computing and robotics.

      This is a Hakoniwa prototype model for integration of cloud computing and robotics.

      Design intent from a technical study perspective

      • Study of specific methods of cloud computing integration
      • Study on how to coordinate with other robots (challenge to more complex robot operation/interference)
      • Study of mechanisms to augment Hakoniwa assets

      Other design intent

      • Interaction with RDBOX ( establish a track record of Hakoniwa as a development virtual environment)
      • Promote Hakoniwa to the RDBOX user base (PR activities)

      The prototype model is currently under development. So please wait for its release.

      © 2019- by Hakoniwa Working-Group, TOPPERS Project

      \ No newline at end of file diff --git a/en/prototypes/index.html b/en/prototypes/index.html index b35c069e..bbfae028 100644 --- a/en/prototypes/index.html +++ b/en/prototypes/index.html @@ -1,4 +1,4 @@ -Prototype models

      Prototype models

        We are building the following prototype model to realize the Hokoniwa concept and for the technical review of the WG members.
      • Microcomputer-controlled robot simulation   +Prototype models

        Prototype models

        © 2019- by Hakoniwa Working-Group, TOPPERS Project

        \ No newline at end of file diff --git a/en/prototypes/index.xml b/en/prototypes/index.xml index f7682dac..35c60d7c 100644 --- a/en/prototypes/index.xml +++ b/en/prototypes/index.xml @@ -1,5 +1,70 @@ -Prototype models on Hakoniwahttps://toppers.github.io/hakoniwa/en/prototypes/Recent content in Prototype models on HakoniwaHugoenMicrocomputer-controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/single-robot/This is a Hakoniwa prototype model with one SBC, designed based on the challenges of ET Robocon. This prototype can verify by linking the program&rsquo;s behavior on the embedded microcontroller with the robot&rsquo;s behavior. -Design intent from a technical study perspective Study on how to integrate between physical simulators and microcomputer simulators Study of time synchronization between different simulators Other design intent Promote Hakoniwa to ET Robot contenst participants (PR activities) Installation &amp; Usage A trial package with minimal configuration and procedures is available in the GitHub repository below.ROS controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/ros-robot/This prototype model uses ROS/ROS2 to collaborate with multiple and single robots. This prototype is lighter than Gazebo, often used with ROS, and allows for easy customization of robots and environments in Unity and the introduction of URDF format models. -Design intent from a technical study perspective Running simulations using ROS, which is commonly used for robot control Study on how to coordinate with other robots Other design intent Introduce robots controlled by ROS to create a simulation environment that mixes multiple control mechanisms Installation &amp; Usage A trial package with minimal configuration and procedures is available in the GitHub repository below.Simulation of collaborative operation of multiple robotshttps://toppers.github.io/hakoniwa/en/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/multi-robot/This prototype model simulates multiple robots and control programs in the same environment. This prototype uses Unity&rsquo;s Photon library to synchronize multiple Unity environments and even time synchronization among assets and uses VR technology to dive into the simulation environment for verification. -Design intent from a technical study perspective Study of methods of collaboration in multiple environments (e.g., simulation time synchronization) Study on how visualize communication among Hakoniwa assets (including ROS/ROS2 collaboration)/ROS2連携含む) Study of mechanisms to augment Hakoniwa assets Other design intent Promote Hakoniwa to the ROS user base (PR activities) Installation &amp; Usage Various demos are available at the following Github repository.Simulation of inter-robot cooperative operationhttps://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/This is a Hakoniwa prototype model for integration of cloud computing and robotics. -Design intent from a technical study perspective Study of specific methods of cloud computing integration Study on how to coordinate with other robots (challenge to more complex robot operation/interference) Study of mechanisms to augment Hakoniwa assets Other design intent Interaction with RDBOX ( establish a track record of Hakoniwa as a development virtual environment) Promote Hakoniwa to the RDBOX user base (PR activities) The prototype model is currently under development. \ No newline at end of file +Prototype models on Hakoniwahttps://toppers.github.io/hakoniwa/en/prototypes/Recent content in Prototype models on HakoniwaHugoenMicrocomputer-controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/single-robot/<p>This is a Hakoniwa prototype model with one SBC, designed based on the challenges of <a href="https://www.etrobo.jp/">ET Robocon</a>. +This prototype can verify by linking the program&rsquo;s behavior on the embedded microcontroller with the robot&rsquo;s behavior.</p> +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Study on how to integrate between physical simulators and microcomputer simulators</li> +<li>Study of time synchronization between different simulators</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Promote Hakoniwa to ET Robot contenst participants (PR activities)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelA.en.png " border="" width="700" /> +</figure> + +<h3 id="installation--usage">Installation &amp; Usage</h3> +<p>A trial package with minimal configuration and procedures is available in the GitHub repository below. +We encourage you to try it out.</p>ROS controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/ros-robot/<p>This prototype model uses ROS/ROS2 to collaborate with multiple and single robots. +This prototype is lighter than Gazebo, often used with ROS, and allows for easy customization of robots and environments in Unity and the introduction of URDF format models.</p> +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Running simulations using ROS, which is commonly used for robot control</li> +<li>Study on how to coordinate with other robots</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Introduce robots controlled by ROS to create a simulation environment that mixes multiple control mechanisms</li> +</ul> +<h3 id="installation--usage">Installation &amp; Usage</h3> +<p>A trial package with minimal configuration and procedures is available in the GitHub repository below. +We encourage you to try it out.</p>Simulation of collaborative operation of multiple robotshttps://toppers.github.io/hakoniwa/en/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/multi-robot/<p>This prototype model simulates multiple robots and control programs in the same environment. +This prototype uses Unity&rsquo;s Photon library to synchronize multiple Unity environments and even time synchronization among assets and uses VR technology to dive into the simulation environment for verification.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBoverview.en.png " border="" width="700" /> +</figure> + +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Study of methods of collaboration in multiple environments (e.g., simulation time synchronization)</li> +<li>Study on how visualize communication among Hakoniwa assets (including ROS/ROS2 collaboration)/ROS2連携含む)</li> +<li>Study of mechanisms to augment Hakoniwa assets</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Promote Hakoniwa to the ROS user base (PR activities)</li> +</ul> +<h3 id="installation--usage">Installation &amp; Usage</h3> +<p>Various demos are available at the following Github repository. Try them out.</p>Simulation of inter-robot cooperative operationhttps://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/<p>This is a Hakoniwa prototype model for integration of cloud computing and robotics.</p> +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Study of specific methods of cloud computing integration</li> +<li>Study on how to coordinate with other robots (challenge to more complex robot operation/interference)</li> +<li>Study of mechanisms to augment Hakoniwa assets</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Interaction with RDBOX ( establish a track record of Hakoniwa as a development virtual environment)</li> +<li>Promote Hakoniwa to the RDBOX user base (PR activities)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelC.en.png " border="" width="700" /> +</figure> + +<p>The prototype model is currently under development. So please wait for its release.</p> \ No newline at end of file diff --git a/en/prototypes/multi-robot/index.html b/en/prototypes/multi-robot/index.html index b8ddd60c..9f509c74 100644 --- a/en/prototypes/multi-robot/index.html +++ b/en/prototypes/multi-robot/index.html @@ -1,4 +1,4 @@ -Simulation of collaborative operation of multiple robots

        Simulation of collaborative operation of multiple robots

        Collaborative operation of multiple ROS robots using the Photon library and VR environment.

        This prototype model simulates multiple robots and control programs in the same environment. +Simulation of collaborative operation of multiple robots

        Simulation of collaborative operation of multiple robots

        Collaborative operation of multiple ROS robots using the Photon library and VR environment.

        This prototype model simulates multiple robots and control programs in the same environment. This prototype uses Unity’s Photon library to synchronize multiple Unity environments and even time synchronization among assets and uses VR technology to dive into the simulation environment for verification.

        Design intent from a technical study perspective

        • Study of methods of collaboration in multiple environments (e.g., simulation time synchronization)
        • Study on how visualize communication among Hakoniwa assets (including ROS/ROS2 collaboration)/ROS2連携含む)
        • Study of mechanisms to augment Hakoniwa assets

        Other design intent

        • Promote Hakoniwa to the ROS user base (PR activities)

        Installation & Usage

        Various demos are available at the following Github repository. Try them out.

        toppers/hakoniwa-ros-multiplay

        Demonstration of examples

        • Multiple robot collaboration with photon
        • Scene of connection with Oculus Quest
        • Scene diving into Hakoniwa using VR diff --git a/en/prototypes/ros-robot/index.html b/en/prototypes/ros-robot/index.html index df12903c..c6c92094 100644 --- a/en/prototypes/ros-robot/index.html +++ b/en/prototypes/ros-robot/index.html @@ -1,4 +1,4 @@ -ROS controlled robot simulation

          ROS controlled robot simulation

          Example of simulation by collaboration between ROS and Hakoniwa.

          This prototype model uses ROS/ROS2 to collaborate with multiple and single robots. +ROS controlled robot simulation

          ROS controlled robot simulation

          Example of simulation by collaboration between ROS and Hakoniwa.

          This prototype model uses ROS/ROS2 to collaborate with multiple and single robots. This prototype is lighter than Gazebo, often used with ROS, and allows for easy customization of robots and environments in Unity and the introduction of URDF format models.

          Design intent from a technical study perspective

          • Running simulations using ROS, which is commonly used for robot control
          • Study on how to coordinate with other robots

          Other design intent

          • Introduce robots controlled by ROS to create a simulation environment that mixes multiple control mechanisms

          Installation & Usage

          A trial package with minimal configuration and procedures is available in the GitHub repository below. We encourage you to try it out.

          Demonstration of examples

          modelROSdemo


          Acknowledgments & Notes

          We want to thank Associate Professor Akio YOSHIOKA and undergraduate students Ryoji SUGISAKI and Akemi KIMURA of Takarazuka University school of media art in Tokyo for their cooperation in designing the Unity package for TurtleBot3.

          TurtleBot3’s Unity assets are based on data provided by Robotiz, Inc. We sincerely appreciate their cooperation.

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file diff --git a/en/prototypes/single-robot/index.html b/en/prototypes/single-robot/index.html index aa2b852d..9f9c929f 100644 --- a/en/prototypes/single-robot/index.html +++ b/en/prototypes/single-robot/index.html @@ -1,4 +1,4 @@ -Microcomputer-controlled robot simulation

          Microcomputer-controlled robot simulation

          Example of collaboration between microcomputer simulator and Hakoniwa.

          This is a Hakoniwa prototype model with one SBC, designed based on the challenges of ET Robocon. +Microcomputer-controlled robot simulation

          Microcomputer-controlled robot simulation

          Example of collaboration between microcomputer simulator and Hakoniwa.

          This is a Hakoniwa prototype model with one SBC, designed based on the challenges of ET Robocon. This prototype can verify by linking the program’s behavior on the embedded microcontroller with the robot’s behavior.

          Design intent from a technical study perspective

          • Study on how to integrate between physical simulators and microcomputer simulators
          • Study of time synchronization between different simulators

          Other design intent

          • Promote Hakoniwa to ET Robot contenst participants (PR activities)

          Installation & Usage

          A trial package with minimal configuration and procedures is available in the GitHub repository below. We encourage you to try it out.

          Demonstration of examples

          modelAdemo

          modelAdemo1

          modelAdemo2


          Acknowledgments & Notes

          We want to thank Associate Professor Akio YOSHIOKA and undergraduate students Ryoji SUGISAKI, Akemi KIMURA and Jumpei CHIBA of Takarazuka University school of media art in Tokyo for their cooperation in designing the Unity package.

          Unity assets of HackEV are based on data provided by the ET Robocon Executive Committee. We want to express our deepest gratitude to the Executive Committee.
          However, please note that this asset is different from the production environment of the ET Robocon. diff --git a/en/repositories/index.html b/en/repositories/index.html index 947ca933..969183ac 100644 --- a/en/repositories/index.html +++ b/en/repositories/index.html @@ -1 +1 @@ -Repository List

          Repository List

          Open source software developed and maintained by Hakoniwa WG.

          Hakoniwa

          LinksOutline
          hakoniwaRepository for general support handling and content management of this website
          hakoniwa-single_robotPackage that can try Hakoniwa Prototype Model A: Simulator for Single Robot with minimum configuration and procedures
          hakoniwa-ros2simEnvironment for easy simulation of ROS 2 programs on Hakoniwa
          hakoniwa-coreRepository for prototype development of Hakoniwa Core Function

          Athrill

          LinksOutline
          athrillAthrill core (target-independent part)
          athrill-deviceathrill device for external shared library.
          athrill-target-v850e2mv850e2m Target dependencies for Athrill
          athrill-target-ARMv7-AARMv7-A Target dependencies for Athrill
          athrill-target-rh850f1xrh850f1x Target dependencies for Athrill
          athrill-gcc-v850e2mgcc package for Athrill V850E2M target

          TOPPERS kernel

          LinksOutline
          ev3rt-athrill-v850e2mV850E2M version of TOPPERS/EV3RT platform for Athrill
          ev3rt-athrill-ARMv7-AArm v7-A version of TOPPERS/EV3RT platform for Athrill
          asp-athrill-mbedPackage of TOPPERS/ASP kernel and Mbed library for Athrill

          Unity

          LinksOutline
          hakoniwa-Unity-PackageUnity Asset Package for Hakoniwa

          mROS

          LinksOutline
          mROSA lightweight runtime environment of ROS 1 nodes onto embedded devices
          mROS 2A lightweight runtime environment of ROS 1 nodes onto embedded devices

          Samples

          LinksOutline
          hakoniwa-scenario-samplesSample collection of Hakoniwa behavior scenarios

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file +Repository List

          Repository List

          Open source software developed and maintained by Hakoniwa WG.

          Hakoniwa

          LinksOutline
          hakoniwaRepository for general support handling and content management of this website
          hakoniwa-single_robotPackage that can try Hakoniwa Prototype Model A: Simulator for Single Robot with minimum configuration and procedures
          hakoniwa-ros2simEnvironment for easy simulation of ROS 2 programs on Hakoniwa
          hakoniwa-coreRepository for prototype development of Hakoniwa Core Function

          Athrill

          LinksOutline
          athrillAthrill core (target-independent part)
          athrill-deviceathrill device for external shared library.
          athrill-target-v850e2mv850e2m Target dependencies for Athrill
          athrill-target-ARMv7-AARMv7-A Target dependencies for Athrill
          athrill-target-rh850f1xrh850f1x Target dependencies for Athrill
          athrill-gcc-v850e2mgcc package for Athrill V850E2M target

          TOPPERS kernel

          LinksOutline
          ev3rt-athrill-v850e2mV850E2M version of TOPPERS/EV3RT platform for Athrill
          ev3rt-athrill-ARMv7-AArm v7-A version of TOPPERS/EV3RT platform for Athrill
          asp-athrill-mbedPackage of TOPPERS/ASP kernel and Mbed library for Athrill

          Unity

          LinksOutline
          hakoniwa-Unity-PackageUnity Asset Package for Hakoniwa

          mROS

          LinksOutline
          mROSA lightweight runtime environment of ROS 1 nodes onto embedded devices
          mROS 2A lightweight runtime environment of ROS 1 nodes onto embedded devices

          Samples

          LinksOutline
          hakoniwa-scenario-samplesSample collection of Hakoniwa behavior scenarios

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file diff --git a/en/tags/index.html b/en/tags/index.html index 570363fa..db9a38b1 100644 --- a/en/tags/index.html +++ b/en/tags/index.html @@ -1 +1 @@ -Tags

          Voice of TOPPERS Project Hakoniwa WG Developers

          Our vision, news and ideas, and whatever feels important.
          Follow us on Twitter

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file +Tags

          Voice of TOPPERS Project Hakoniwa WG Developers

          Our vision, news and ideas, and whatever feels important.
          Follow us on Twitter

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file diff --git a/getting-started/app-customize/index.html b/getting-started/app-customize/index.html index 57ebcba4..c852e234 100644 --- a/getting-started/app-customize/index.html +++ b/getting-started/app-customize/index.html @@ -1,4 +1,4 @@ -制御プログラムの変更方法

          制御プログラムの変更方法

          [Getting Started 1] tb3の制御プログラムの変更方法を紹介します.

          ソースコードの場所

          今回のサンプルのtb3の制御プログラムは、 +制御プログラムの変更方法

          制御プログラムの変更方法

          [Getting Started 1] tb3の制御プログラムの変更方法を紹介します.

          ソースコードの場所

          今回のサンプルのtb3の制御プログラムは、 /ros2/workspace/src/tb3/src/tb3ctrl.cpp に配置されています。 詳細は実際のコードを見て頂くとして主要な部分を紹介していきます。ページの最後にコードの抜粋を示します。

          制御プログラムの概要

          Unity上のロボットと制御プログラムとは、ROSで通信しています。 Unity上のロボットからはレーザースキャナから周囲360°の距離データが送られてきます。制御プログラムからはロボットの移動量を送信します。

          この制御プログラムは、壁沿いに周回するような制御を行っています。do_forwardで前方の距離が一定以上あれば前進し、turn_rightでは右側の距離が一定以上であれば旋回します。

          このように制御部分は非常に小さく、他はROSで通信するためのボイラープレートとなっています。 diff --git a/getting-started/architecture-overview/index.html b/getting-started/architecture-overview/index.html index a463c89e..1bf0de6c 100644 --- a/getting-started/architecture-overview/index.html +++ b/getting-started/architecture-overview/index.html @@ -1,4 +1,4 @@ -箱庭のアーキテクチャ

          箱庭のアーキテクチャ

          [Getting Started 0] 箱庭のシステムアーキテクチャと動作の仕組みを紹介します.

          前提環境

          箱庭 ROS シミュレータ:hakoniwa-ros2sim +箱庭のアーキテクチャ

          箱庭のアーキテクチャ

          [Getting Started 0] 箱庭のシステムアーキテクチャと動作の仕組みを紹介します.

          前提環境

          箱庭 ROS シミュレータ:hakoniwa-ros2sim を例題に解説するため、このチュートリアルが終わっておりプロジェクトが参照できることが望ましいです。

          ROS向け箱庭のシステム構成

          ros2simのプロジェクトでは、Unity上のTortleBot3(tb3)をROS2のアプリから制御するシミュレーションを行います。 以下にWindows/WSL2でのシステム構成を示しています。大まかには制御対象であるUnity上のtb3とそれを制御するtb3ctrlがROSで通信しています。

          ROS向け箱庭のシステム構成

          フォルダ構成

          githubからCloneしたプロジェクトのフォルダ構成は以下のようになっています。主に/ros2/workspace, /ros2/unityを扱えばよく、 他のフォルダは本説明には含まれないため一旦無視してください。

          • hakowani-ros2sim/
            • ros2/
              • workspace/ : ROSのワークスペース。Docker上にマウントされる
              • unity/tb3/ : Unityのプロジェクト

          workspace/はROSのワークスペースで、ここに制御用のROSアプリを作成します。src下にはいくつかアプリが入っていますが、 diff --git a/getting-started/env-customize/index.html b/getting-started/env-customize/index.html index b001db2b..86d09350 100644 --- a/getting-started/env-customize/index.html +++ b/getting-started/env-customize/index.html @@ -1 +1 @@ -コースの変更方法

          コースの変更方法

          [Getting Started 2] コースのカスタマイズ方法を紹介します.

          執筆中

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file +コースの変更方法

          コースの変更方法

          [Getting Started 2] コースのカスタマイズ方法を紹介します.

          執筆中

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file diff --git a/getting-started/index.html b/getting-started/index.html index 064ae2ff..abcd2525 100644 --- a/getting-started/index.html +++ b/getting-started/index.html @@ -1 +1 @@ -Getting started

          Getting started

          HAKONIWA logo
          さあ箱庭をはじめましょう

          箱庭のアーキテクチャ

          [Getting Started 0] 箱庭のシステムアーキテクチャと動作の仕組みを紹介します

          制御プログラムの変更方法

          [Getting Started 1] tb3の制御プログラムの変更方法を紹介します

          コースの変更方法

          [Getting Started 2] コースのカスタマイズ方法を紹介します

          ロボットのカスタマイズ方法

          [Getting Started 3] ROS向けプロトタイプを元にロボットのカスタマイズ方法を紹介します

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file +Getting started

          Getting started

          HAKONIWA logo
          さあ箱庭をはじめましょう

          箱庭のアーキテクチャ

          [Getting Started 0] 箱庭のシステムアーキテクチャと動作の仕組みを紹介します

          制御プログラムの変更方法

          [Getting Started 1] tb3の制御プログラムの変更方法を紹介します

          コースの変更方法

          [Getting Started 2] コースのカスタマイズ方法を紹介します

          ロボットのカスタマイズ方法

          [Getting Started 3] ROS向けプロトタイプを元にロボットのカスタマイズ方法を紹介します

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file diff --git a/getting-started/index.xml b/getting-started/index.xml index 0a3baeca..b0995782 100644 --- a/getting-started/index.xml +++ b/getting-started/index.xml @@ -1,10 +1,127 @@ -Getting started on 箱庭https://toppers.github.io/hakoniwa/getting-started/Recent content in Getting started on 箱庭HugojaSat, 14 May 2022 13:26:38 +0900箱庭のアーキテクチャhttps://toppers.github.io/hakoniwa/getting-started/architecture-overview/Sat, 14 May 2022 13:26:27 +0900https://toppers.github.io/hakoniwa/getting-started/architecture-overview/前提環境 箱庭 ROS シミュレータ:hakoniwa-ros2sim を例題に解説するため、このチュートリアルが終わっておりプロジェクトが参照できることが望ましいです。 -ROS向け箱庭のシステム構成 ros2simのプロジェクトでは、Unity上のTortleBot3(tb3)をROS2のアプリから制御するシミュレーションを行います。 以下にWindows/WSL2でのシステム構成を示しています。大まかには制御対象であるUnity上のtb3とそれを制御するtb3ctrlがROSで通信しています。 -フォルダ構成 githubからCloneしたプロジェクトのフォルダ構成は以下のようになっています。主に/ros2/workspace, /ros2/unityを扱えばよく、 他のフォルダは本説明には含まれないため一旦無視してください。 -hakowani-ros2sim/ ros2/ workspace/ : ROSのワークスペース。Docker上にマウントされる unity/tb3/ : Unityのプロジェクト workspace/はROSのワークスペースで、ここに制御用のROSアプリを作成します。src下にはいくつかアプリが入っていますが、 tb3ロボットを制御しているのはtb3フォルダ下のソースとなります。 プログラムを修正した場合はbash build.bashを行うことでビルドされアプリが更新されます。 -unity/はUnityプロジェクトが入っており、Unity Editorからtb3フォルダを開くと読み込めます。 cloneしたすぐの状態では、すべてのアセットは揃っておらずhako-install.bashによって必要なアセットのダウンロードや設定を行います。 -チュートリアルでの操作による挙動 $ bash docker/pull-image.bash : 本プロジェクトで用いるROSが入ったDockerイメージの取得を行っています。 $ bash docker/run.bash : 取得したDockerのコンテナを作成しbashでログインします。またこの時カレントディレクトリにworkspace以下をマウントしています。 # bash hako-install.bash : unityフォルダにUnityのプロジェクトを展開すると共に、ROSと繋ぐための初期設定を行います。 (Terminal A)$ bash run.bash : Dockerコンテナを起動しbashでログインします。 (Terminal A)# bash launch.bash : UnityとROSで通信するための、ROS-TCP-Endpointを起動します。またUnityプロジェクトにはこのプログラムと対になる (Terminal B)$ bash attach.bash : Terminal Aで立ち上げたコンテナに入ります。 (Terminal B)# bash run.bash : ロボットを制御するROSアプリのtb3ctrlを実行します。このプログラムのソースはworkspace/src/tb3/src/tb3ctrl.cppです。制御プログラムの変更方法https://toppers.github.io/hakoniwa/getting-started/app-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/app-customize/ソースコードの場所 今回のサンプルのtb3の制御プログラムは、 /ros2/workspace/src/tb3/src/tb3ctrl.cpp に配置されています。 詳細は実際のコードを見て頂くとして主要な部分を紹介していきます。ページの最後にコードの抜粋を示します。 -制御プログラムの概要 Unity上のロボットと制御プログラムとは、ROSで通信しています。 Unity上のロボットからはレーザースキャナから周囲360°の距離データが送られてきます。制御プログラムからはロボットの移動量を送信します。 -この制御プログラムは、壁沿いに周回するような制御を行っています。do_forwardで前方の距離が一定以上あれば前進し、turn_rightでは右側の距離が一定以上であれば旋回します。 -このように制御部分は非常に小さく、他はROSで通信するためのボイラープレートとなっています。 制御部分のパラメータを変えることで、自由にロボットを制御することができます。いろいろと書き換えて試してみてください。 なお、コードを書き換えた後は、Dockerのコンテナ内でbuild.bashを実行してプログラムのコンパイルを行ってください。 -制御プログラムの抜粋 // ロボットのレーザースキャナから受け取る360°周囲の距離データ typedef struct { double ranges[360]; } ScanDataType; static ScanDataType scan_data; // レーザースキャナから受け取ったデータのROSのコールバック関数。取得したデータをscan_data変数に保持する。 static void scanCallback(const sensor_msgs::msg::LaserScan::SharedPtr msg) { int i; for (i = 0; i &lt; 360; i++) { scan_data.ranges[i] = msg-&gt;ranges[i]; } return; } // Unity上のロボットの制御値 static geometry_msgs::msg::Twist cmd_vel; static float get_forward_distance(void) { ... // 前方向の一定角度のうち一番近い距離を取得 } static float get_right_distance(void) { ... // 右側の一定角度のうち一番近い距離を取得 } static bool do_forward(void) { .コースの変更方法https://toppers.github.io/hakoniwa/getting-started/env-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/env-customize/執筆中ロボットのカスタマイズ方法https://toppers.github.io/hakoniwa/getting-started/robot-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/robot-customize/執筆中 \ No newline at end of file +Getting started on 箱庭https://toppers.github.io/hakoniwa/getting-started/Recent content in Getting started on 箱庭HugojaSat, 14 May 2022 13:26:38 +0900箱庭のアーキテクチャhttps://toppers.github.io/hakoniwa/getting-started/architecture-overview/Sat, 14 May 2022 13:26:27 +0900https://toppers.github.io/hakoniwa/getting-started/architecture-overview/<h3 id="前提環境">前提環境</h3> +<p><a href="https://github.com/toppers/hakoniwa-ros2sim">箱庭 ROS シミュレータ:hakoniwa-ros2sim</a> +を例題に解説するため、このチュートリアルが終わっておりプロジェクトが参照できることが望ましいです。</p> +<h3 id="ros向け箱庭のシステム構成">ROS向け箱庭のシステム構成</h3> +<p>ros2simのプロジェクトでは、Unity上のTortleBot3(tb3)をROS2のアプリから制御するシミュレーションを行います。 +以下にWindows/WSL2でのシステム構成を示しています。大まかには制御対象であるUnity上のtb3とそれを制御するtb3ctrlがROSで通信しています。</p> +<p><img alt="ROS向け箱庭のシステム構成" src="https://toppers.github.io/hakoniwa/hakoniwa/img/getting-started/ros2sim_overview.png"></p> +<h3 id="フォルダ構成">フォルダ構成</h3> +<p>githubからCloneしたプロジェクトのフォルダ構成は以下のようになっています。主に/ros2/workspace, /ros2/unityを扱えばよく、 +他のフォルダは本説明には含まれないため一旦無視してください。</p> +<ul> +<li>hakowani-ros2sim/ +<ul> +<li>ros2/ +<ul> +<li>workspace/ : ROSのワークスペース。Docker上にマウントされる</li> +<li>unity/tb3/ : Unityのプロジェクト</li> +</ul> +</li> +</ul> +</li> +</ul> +<p>workspace/はROSのワークスペースで、ここに制御用のROSアプリを作成します。src下にはいくつかアプリが入っていますが、 +tb3ロボットを制御しているのはtb3フォルダ下のソースとなります。 +プログラムを修正した場合は<code>bash build.bash</code>を行うことでビルドされアプリが更新されます。</p> +<p>unity/はUnityプロジェクトが入っており、Unity Editorからtb3フォルダを開くと読み込めます。 +cloneしたすぐの状態では、すべてのアセットは揃っておらずhako-install.bashによって必要なアセットのダウンロードや設定を行います。</p> +<h3 id="チュートリアルでの操作による挙動">チュートリアルでの操作による挙動</h3> +<ul> +<li><code>$ bash docker/pull-image.bash</code> : 本プロジェクトで用いるROSが入ったDockerイメージの取得を行っています。</li> +<li><code>$ bash docker/run.bash</code> : 取得したDockerのコンテナを作成しbashでログインします。またこの時カレントディレクトリにworkspace以下をマウントしています。</li> +<li><code># bash hako-install.bash</code> : unityフォルダにUnityのプロジェクトを展開すると共に、ROSと繋ぐための初期設定を行います。</li> +<li><code>(Terminal A)$ bash run.bash</code> : Dockerコンテナを起動しbashでログインします。</li> +<li><code>(Terminal A)# bash launch.bash</code> : UnityとROSで通信するための、ROS-TCP-Endpointを起動します。またUnityプロジェクトにはこのプログラムと対になる</li> +<li><code>(Terminal B)$ bash attach.bash</code> : Terminal Aで立ち上げたコンテナに入ります。</li> +<li><code>(Terminal B)# bash run.bash</code> : ロボットを制御するROSアプリのtb3ctrlを実行します。このプログラムのソースはworkspace/src/tb3/src/tb3ctrl.cppです。</li> +</ul> +<h3 id="heading"></h3>制御プログラムの変更方法https://toppers.github.io/hakoniwa/getting-started/app-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/app-customize/<h3 id="ソースコードの場所">ソースコードの場所</h3> +<p>今回のサンプルのtb3の制御プログラムは、 +<code>/ros2/workspace/src/tb3/src/tb3ctrl.cpp</code> に配置されています。 +詳細は実際のコードを見て頂くとして主要な部分を紹介していきます。ページの最後にコードの抜粋を示します。</p> +<h3 id="制御プログラムの概要">制御プログラムの概要</h3> +<p>Unity上のロボットと制御プログラムとは、ROSで通信しています。 +Unity上のロボットからはレーザースキャナから周囲360°の距離データが送られてきます。制御プログラムからはロボットの移動量を送信します。</p> +<p>この制御プログラムは、壁沿いに周回するような制御を行っています。do_forwardで前方の距離が一定以上あれば前進し、turn_rightでは右側の距離が一定以上であれば旋回します。</p> +<p>このように制御部分は非常に小さく、他はROSで通信するためのボイラープレートとなっています。 +制御部分のパラメータを変えることで、自由にロボットを制御することができます。いろいろと書き換えて試してみてください。 +なお、コードを書き換えた後は、Dockerのコンテナ内でbuild.bashを実行してプログラムのコンパイルを行ってください。</p> +<h3 id="制御プログラムの抜粋">制御プログラムの抜粋</h3> +<pre tabindex="0"><code>// ロボットのレーザースキャナから受け取る360°周囲の距離データ +typedef struct { + double ranges[360]; +} ScanDataType; +static ScanDataType scan_data; + +// レーザースキャナから受け取ったデータのROSのコールバック関数。取得したデータをscan_data変数に保持する。 +static void scanCallback(const sensor_msgs::msg::LaserScan::SharedPtr msg) { + int i; + for (i = 0; i &lt; 360; i++) { + scan_data.ranges[i] = msg-&gt;ranges[i]; + } + return; +} + +// Unity上のロボットの制御値 +static geometry_msgs::msg::Twist cmd_vel; + +static float get_forward_distance(void) { + ... // 前方向の一定角度のうち一番近い距離を取得 +} + +static float get_right_distance(void) { + ... // 右側の一定角度のうち一番近い距離を取得 +} + +static bool do_forward(void) { + ... // 前方向に移動指示。cmd_vel.linear.x(前後方向)を増加させ送信 +} + +static bool turn_right(void) { + ... // 右転回を指示。cmd_vel.angular.z値(ロボットの垂直軸回転角)を増加して送信 +} + +static void do_control(void) { + ... // 周囲の距離に応じて処理を判定する +} + +using namespace std::chrono_literals; + +int main(int argc, char **argv) { + char buffer[3][4096]; + + // UnityとROSで連携するためのTOPIC名の設定 + if (argc &gt; 1) { + sprintf(buffer[0], &#34;%s_tb3_node&#34;, argv[1]); + sprintf(buffer[1], &#34;%s_cmd_vel&#34;, argv[1]); + sprintf(buffer[2], &#34;%s_scan&#34;, argv[1]); + printf(&#34;START: %s\n&#34;, argv[1]); + } + else { + sprintf(buffer[0], &#34;tb3_node&#34;); + sprintf(buffer[1], &#34;cmd_vel&#34;); + sprintf(buffer[2], &#34;scan&#34;); + printf(&#34;START\n&#34;); + } + rclcpp::init(argc, argv); + + // ROSのPublisher, Subscriberの生成 + auto node = rclcpp::Node::make_shared(buffer[0]); + auto publisher = + node-&gt;create_publisher&lt;geometry_msgs::msg::Twist&gt;(buffer[1], 1); + auto subscriber = node-&gt;create_subscription&lt;sensor_msgs::msg::LaserScan&gt;( + buffer[2], 1, scanCallback); + + rclcpp::WallRate rate(10ms); + + // 制御ループ + while (rclcpp::ok()) { + do_control(); + publisher-&gt;publish(cmd_vel); + + rclcpp::spin_some(node); + rate.sleep(); + } + return 0; +} +</code></prコースの変更方法https://toppers.github.io/hakoniwa/getting-started/env-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/env-customize/<h3 id="執筆中">執筆中</h3>ロボットのカスタマイズ方法https://toppers.github.io/hakoniwa/getting-started/robot-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/robot-customize/<h3 id="執筆中">執筆中</h3> \ No newline at end of file diff --git a/getting-started/robot-customize/index.html b/getting-started/robot-customize/index.html index 9839ce8d..08164090 100644 --- a/getting-started/robot-customize/index.html +++ b/getting-started/robot-customize/index.html @@ -1 +1 @@ -ロボットのカスタマイズ方法

          ロボットのカスタマイズ方法

          [Getting Started 3] ROS向けプロトタイプを元にロボットのカスタマイズ方法を紹介します.

          執筆中

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file +ロボットのカスタマイズ方法

          ロボットのカスタマイズ方法

          [Getting Started 3] ROS向けプロトタイプを元にロボットのカスタマイズ方法を紹介します.

          執筆中

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file diff --git a/index.html b/index.html index 59e12cdb..9bb033f8 100644 --- a/index.html +++ b/index.html @@ -1,2 +1,2 @@ -箱庭

          箱庭

          HAKONIWA logo

          IoT/クラウドロボティクス時代の仮想シミュレーション環境

            トピックス・イベント案内

            • 2024年08月10日(土)に 現地開催オフラインイベント を開催しました
            • 2024年7月11-12日に開催された EdgeTech+ WEST 2024 のJASA(組込みシステム技術協会)パビリオンにおいてドローンWGの活動で箱庭WGの紹介と活用事例の発表を行いました。
            • 2023年9月26日(火)に開催された ROSCon JP 2023 に、TOPPERSプロジェクト/箱庭WGはブロンズスポンサーとして協賛しました。
            • 箱庭のconnpassイベント を不定期に実施しています。もくもく会や茶話会、チュートリアル会などを一般公開で実施しており、箱庭WGの開発メンバも参加しています。
              • もくもく会:各自のやりたいことや知りたいことを持ち寄って、まず自己紹介を交えてやりたいことを表明し、そして「もくもく」とそれぞれ自由にやりたいことを進めて、そして最後には進捗を共有する会です。
              • 茶話会では:ランチタイムやアフターファイブに開催予定で、各自でお弁当や飲み物を準備して、箱庭に関係しそうなネタや最近の活動の進捗などをゆるく議論(というより雑談)する会です。ロボットやIoTの仮想化/シミュレーションなど、箱庭に限らないネタもばんばん取り上げます。
              • チュートリアル会:箱庭WGのメンバが持ち回りで担当して、自身の取り組みや最新の動向、そしていろんな野望などなどを、自由に語り尽くします!皆さんでフランクに情報交換や議論などできればと思っています。チュートリアルのページにて、スライド資料や動画アーカイブなどを公開しています。
              • 箱庭のことはいろいろなイベントで見聞きして気になっているんだけど,,, よし動かしてみよう!と思っているけども幾数月,,, 箱庭はさておき Unity x ROS がとっても気になる!!という方々、ぜひともご参加ください。特に定まった議題などはありませんので、とりま開発メンバと雑談してみたい方々の参加も大歓迎です。
            • 箱庭WG主査の森崇を職務執行者として、2023年8月1日に合同会社箱庭ラボを設立しました。
              • 箱庭ラボの目標は、誰でも手軽に箱庭を体験できる環境を創出することです。長年TOPPERSプロジェクトとして開発してきたオープンソース仮想空間「箱庭」でエンジニアが自身の開発成果を共有し、枠組みや境界を越えて共創することで新しい価値を生み出すことを目指しています。この夢のような箱庭の実現に向けて、TOPPERS/箱庭の開発を推進し、先端の生成AI技術活用や箱庭プラットフォームの整備、さらにはチュートリアル会の開催やドキュメント整備等を通じて箱庭コミュニティを育てていきます。
              • Informationのブログページでは、箱庭の最新の開発状況や活動内容について紹介しています。ぜひご覧ください。
            • モノづくりスペシャリストのための情報ポータル「MONOist」に連載記事を寄稿しています。
              仮想環境を使ったクラウド時代の組み込み開発のススメ という連載タイトルにて、箱庭の活動を織り交ぜながらこれからのIoTシステム開発の姿を紹介しています。ぜひご覧ください。

            更新情報

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file +箱庭

          箱庭

          HAKONIWA logo

          IoT/クラウドロボティクス時代の仮想シミュレーション環境

          技術的背景

          なぜ箱庭が必要なのか?

          コンセプト

          箱庭とは何なのか?

          目指すところ

          箱庭のターゲットと利用者・目指す強みと新しさ

          箱庭コア技術

          箱庭の核となる機能

          技術要素

          箱庭を形成する技術要素の紹介

          ロードマップ

          研究開発の指針と計画

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file diff --git a/index.xml b/index.xml index 0b7f3d98..c32281ad 100644 --- a/index.xml +++ b/index.xml @@ -1,427 +1,1874 @@ -箱庭https://toppers.github.io/hakoniwa/Recent content on 箱庭HugojaSat, 14 May 2022 13:26:38 +0900箱庭のアーキテクチャhttps://toppers.github.io/hakoniwa/getting-started/architecture-overview/Sat, 14 May 2022 13:26:27 +0900https://toppers.github.io/hakoniwa/getting-started/architecture-overview/前提環境 箱庭 ROS シミュレータ:hakoniwa-ros2sim を例題に解説するため、このチュートリアルが終わっておりプロジェクトが参照できることが望ましいです。 -ROS向け箱庭のシステム構成 ros2simのプロジェクトでは、Unity上のTortleBot3(tb3)をROS2のアプリから制御するシミュレーションを行います。 以下にWindows/WSL2でのシステム構成を示しています。大まかには制御対象であるUnity上のtb3とそれを制御するtb3ctrlがROSで通信しています。 -フォルダ構成 githubからCloneしたプロジェクトのフォルダ構成は以下のようになっています。主に/ros2/workspace, /ros2/unityを扱えばよく、 他のフォルダは本説明には含まれないため一旦無視してください。 -hakowani-ros2sim/ ros2/ workspace/ : ROSのワークスペース。Docker上にマウントされる unity/tb3/ : Unityのプロジェクト workspace/はROSのワークスペースで、ここに制御用のROSアプリを作成します。src下にはいくつかアプリが入っていますが、 tb3ロボットを制御しているのはtb3フォルダ下のソースとなります。 プログラムを修正した場合はbash build.bashを行うことでビルドされアプリが更新されます。 -unity/はUnityプロジェクトが入っており、Unity Editorからtb3フォルダを開くと読み込めます。 cloneしたすぐの状態では、すべてのアセットは揃っておらずhako-install.bashによって必要なアセットのダウンロードや設定を行います。 -チュートリアルでの操作による挙動 $ bash docker/pull-image.bash : 本プロジェクトで用いるROSが入ったDockerイメージの取得を行っています。 $ bash docker/run.bash : 取得したDockerのコンテナを作成しbashでログインします。またこの時カレントディレクトリにworkspace以下をマウントしています。 # bash hako-install.bash : unityフォルダにUnityのプロジェクトを展開すると共に、ROSと繋ぐための初期設定を行います。 (Terminal A)$ bash run.bash : Dockerコンテナを起動しbashでログインします。 (Terminal A)# bash launch.bash : UnityとROSで通信するための、ROS-TCP-Endpointを起動します。またUnityプロジェクトにはこのプログラムと対になる (Terminal B)$ bash attach.bash : Terminal Aで立ち上げたコンテナに入ります。 (Terminal B)# bash run.bash : ロボットを制御するROSアプリのtb3ctrlを実行します。このプログラムのソースはworkspace/src/tb3/src/tb3ctrl.cppです。Technical Backgroundhttps://toppers.github.io/hakoniwa/en/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/background/The Internet of Things (IoT) is the mixed martial art of information technology. It is because IoT systems are composed of diverse and large numbers of information devices that are intricately intertwined through network communications, requiring many engineers from various technical fields to gather together and pool their wisdom to build an IoT system. -Consider, as an example, an autonomous driving system. It crosses various technical domains as follows. -Embedded Systems Development of autonomous determination software for driving Development of communication system between ECUs Control Systems Development of ECU hardware to control mechanical and electrical systems IT &amp; Network Development of Web UI and smartphone applications Management and maintenance of cloud servers for statistical processing of big data Realization of efficient inter-vehicle and inter-device communication control application Systems Development of vehicle assignment management and traffic flow management applications However, we face the following challenges to realizing such an IoT system.技術的背景https://toppers.github.io/hakoniwa/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/background/IoT (Internet of Things) は,情報技術の総合格闘技と言えます. -IoTシステムは,多様かつ大量の情報機器が,ネットワーク通信を介して密接に絡み合っています. 様々な技術分野から多くの技術者が集まり,みんなで英知を結集してIoTシステムを構築する必要があります. -例えば自動運転システムの例を考えてみましょう.このように様々な技術領域を横断しています. -組込み系 自動運転の判断処理を実現するソフトウェアの開発 ECU間の通信機構の開発 制御系 メカやエレキを制御するECUハードウェアの開発 IT・ネットワーク系 Web UI・スマホアプリケーションの開発 ビッグデータの統計処理を担うクラウドサーバの管理・保守 車車間・機器間の効率的な通信制御の実現 アプリケーション系 配車管理や交通流管理アプリの開発 このようなIoTシステムを構築する際の課題として,下記が考えられます. -問題発生経路の複雑化 全体結合しないと見えない問題が多数潜んでいる 様々な機器間の整合性を取れない 原因調査の複雑化 どこで何がおこっているのか調査困難 そもそもデバッグすること自体が難しい 実証実験のコスト増 実証実験は手軽に実施できない 各分野のエンジニアの総動員 手間,時間,費用がかかる 次に,ロボットを活用したIoTサービスの構築時に起こりえる課題を考えてみましょう. -ロボットをどう組み合わせると,効果的な新しいサービスを創出できるかわからない 新しいサービスを検討するにしても,実物のロボットでは準備・手間がかかりすぎる 頻繁に変更されるシステム要件に対して,変更適用に時間がかかる 実証実験時には結合トラブルが頻発する 「箱庭」は,このような技術的課題を解決し,IoTのシステム開発/サービス構築を加速化することができるプラットフォームとなること目指します.Concepthttps://toppers.github.io/hakoniwa/en/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/concept/The concept of Hakoniwa is &ldquo;Put mixed things as you like, and try various concepts with ease !&rdquo; -We provide a virtual environment, which makes it easy to combine and demonstrate different software and services when developing IoT, automated driving systems, cloud robotics systems, etc. -We envision a use scenario where engineers from diverse fields gather to develop IoT systems. The &ldquo;box&rdquo; simulates the events and states of complex federated IoT systems according to the desired scenario.コンセプトhttps://toppers.github.io/hakoniwa/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/concept/箱庭のコンセプトは 「箱の中に,様々なモノをみんなの好みで配置して,いろいろ試せる!」 です. -IoTや自動運転システム,クラウドロボティクスシステムを開発する際に,仮想環境である箱庭上に様々なソフトウェアやサービスを持ち寄って,机上で実証実験できる場を提供します. -想定している利用シーンは,多様な分野から技術者が集まるIoTシステムの開発現場です. IoTの各要素が連携される複雑なシステムの事象や状態を,「箱」の中ではシナリオに応じた同じ挙動が再現されるようにします. そして,箱庭のシステム構成要素である「アセット」を差し替えることで,検証の対象/抽象度/レベルを任意に変更することができます. また,システム環境の視点(評価観点)や抽象度を,各技術者の分野や立場に応じて切り替えられるようにします. -なお箱庭の語源は,名園や山水を模したミニチュアの庭園に由来します. 盆景や盆栽に類するもので,江戸時代後半から明治時代にかけて流行したといわれています.Our Goalhttps://toppers.github.io/hakoniwa/en/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/aimat/Our goal is to establish a simulation environment and ecosystem for engineers who develop/provide massive and complex IoT systems. -Hakoniwa&rsquo;s target is an information system with various devices connected by a network. We envision IoT applications in various fields, such as autonomous driving, logistics, and space development. -Hakoniwa targets the following users -System developers: engineers who develop IoT systems and their components Service providers: Engineers who promote the provision of system services using the IoT.目指すところhttps://toppers.github.io/hakoniwa/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/aimat/大規模かつ複雑なIoTシステムを開発/提供する技術者のための シミュレーション環境とエコシステム を構築することを目指しています. -箱庭のターゲットは,様々な機器がネットワークで接続された情報システムです. 自動運転や物流,宇宙分野など,IoTの様々な分野を想定しています. -箱庭は,次の利用者のための環境です. -システム開発者:IoTシステムとその構成要素を開発する技術者 サービス提供者:IoTを活用してシステムサービスの提供を進める技術者 箱庭アセットの開発者および提供者 アセットとは,箱庭のシステム構成要素のことを指します. 箱庭プロジェクトの目指す強みと新しさとしては,IoTの各要素である箱庭アセットをそれぞれ連携させて,対象システムを任意の精度で検証可能とすることです. そして,箱庭の利用者の技術領域や評価対象に応じて,アセットを差し替えることで,検証の対象/抽象度/レベルを任意に変更できるようにします.Hakoniwa Corehttps://toppers.github.io/hakoniwa/en/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/core/The four core functions of Hakoniwa are as follows. -Scheduling Synchronization and Communication Time Management Asset Management Also, we believe that the following functional characteristics are essential for Hakoniwa&rsquo;s core functions. -Componentization Visualization Event Driven Automation The core functions and functional characteristics of Hakoniwa are still under design study in the WG while developing the prototype model. We will add more details as we progress.箱庭コア技術https://toppers.github.io/hakoniwa/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/core/箱庭の核となるカーネルは,次の4種類であると考えています. -スケジューリング 同期・通信 時間管理 アセット管理 また,箱庭コア機能が備えるべき重要な機能特性は,次のものがあると考えています. -コンポーネント化 可視化 イベント駆動化 自動化 箱庭のコア機能と機能特性については,プロトタイプモデルの開発を進めながら,WG内での設計検討を続けているところです. 詳細が固まりましたら,追って解説を加えていきます.Underlying technologyhttps://toppers.github.io/hakoniwa/en/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/technical/TOPPERS Kernel Developed by the TOPPERS Project, it is an open-source real-time kernel that extends the standard profile of the µITRON4.0 specification. It primarily targeted embedded systems that require high reliability, safety, and real-time performance. -Athrill The CPU instruction set simulator is the core of Hakoniwa. Members of Hokoniwa WG mainly develop it. It enables debugging and functional verification of the behavior of embedded microcontrollers and peripherals at the instruction level.技術要素https://toppers.github.io/hakoniwa/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/technical/TOPPERSカーネル TOPPERSプロジェクトにより開発されている,μITRON4.0仕様のスタンダードプロファイルを拡張した,オープンソースのリアルタイムカーネルです. 主な適用対象は,高い信頼性・安全性・リアルタイム性を要求される組込みシステムです. -Athrill 箱庭の核である,CPU命令セットシミュレータです. 箱庭WGメンバが中心となって開発を進めています.組込みマイコンおよびペリフェラルの挙動を命令レベルでデバッグ・機能検証することができます.現在はV850/RH850およびARMv7-Aが主なサポート対象です. -TOPPERSライセンスのもと,オープンソースで開発を進めています. -https://github.com/toppers/athrill mROS ROS(Robot Operating System)の組込み向け軽量実行環境です.ホストPC上のROSマスタおよびROSノードに対する,組込みマイコンからの出版購読型通信を実現します.東京大学 情報理工学系研究科 システム情報第8研究室が中心となって開発を進めています. 複数ロボットの連携制御シミュレーションのようなシステムでの活用を想定しています. -https://github.com/mROS-base RDBOX RDBOX (Robotics Developers BOX)は,ROSロボットやIoTに最適化した,Kubernetesクラスタとセキュアで拡張性の高いWi-Fiネットワークを自動構築するためのフレームワークです.シミュレーション環境と現実の作業環境をブリッジすることを目指しています.株式会社インテックのRDBOX Projectで開発されています. ロボット間協調動作向けプロトタイプモデルの構築において,箱庭との連携を進めています. -https://github.com/rdbox-intec/rdbox Unity リアルタイム3D開発プラットフォームです.IDEを内蔵するゲームエンジンとして有名です. 箱庭では,物理演算エンジンと空間可視化のために活用しています. -https://unity.com/ 箱庭WGでは,この他にも,IoT/クラウドロボティクス時代の仮想環境を確立するために,統合すべき技術要素を模索しているところです. -シナジーが生まれそうな技術や,活用できそうな知見をお持ちの方がいましたら,ぜひお知らせください. -注: このウェブページは,ユニティ テクノロジーズまたはその関連会社がスポンサーとなったり,ユニティ テクノロジーズまたはその関連会社と提携しているものではありません. このサイトに掲載された Unity の登録商標一覧に含まれる Unity の登録商標はすべて,ユニティ テクノロジーズまたはその米国や他の国々に所在する関連会社の登録商標または商標です.Roadmaphttps://toppers.github.io/hakoniwa/en/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/roadmap/Hokoniwa WG is working on &ldquo;big goals, little by little.&rdquo; -Our current main activity is to create prototype models to realize the concept and to examine the technology. All of these R&amp;D results are released as OSS. We desire continuous maturation of the core technologies and expansion of the various functions of Hakoniwa by sharing each prototype model and receiving feedback on it. -The Hakoniwa Project is engaged in research and development, first constructing and disseminating educational packages and then expanding into product development.ロードマップhttps://toppers.github.io/hakoniwa/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/roadmap/箱庭は 「でっかく語って少しずつ育てて」 います. -現在のプロジェクトの活動の中心としては,コンセプトの実現と技術研鑽のためにプロトタイプモデルを構築中です. これらの研究開発は,すべてOSSとして公開しながら進めていきます. 皆さまにそれぞれのプロトタイプモデルをご利用いただき,そしてフィードバックを得ながら,箱庭コア技術の成熟と様々な機能拡充を進めていきたいと考えています. -箱庭プロジェクトは,まずは教育用途でのパッケージ構築と普及を図っていますが,製品開発への展開も視野に入れて研究開発を進めています. 壮大な構想を掲げていますが,全くマンパワーは足りていないのが実情です. 箱庭の成長のためにも,特にクラウド技術や可視化アセット開発に知見をお持ちの方に参画いただきたいと考えています. -箱庭WGの狙いや趣旨にご賛同いただける方の参画をお待ちしています. 活動としては,月1回のオンラインでの定例会合と、年2回の技術検討合宿を実施しています. また,日常的な議論や情報共有と開発にはSlack,GitHubおよびGoogle Driveを活用しています. -Slack等での議論に参加したい方,活動内容へのご要望をお持ちの方,コア技術や各アセットの開発などに参加したい方, 箱庭WGの活動で期待される技術成果を活用したい方,製品開発に展開してみたい方, ぜひとも問合せ先よりご連絡ください.制御プログラムの変更方法https://toppers.github.io/hakoniwa/getting-started/app-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/app-customize/ソースコードの場所 今回のサンプルのtb3の制御プログラムは、 /ros2/workspace/src/tb3/src/tb3ctrl.cpp に配置されています。 詳細は実際のコードを見て頂くとして主要な部分を紹介していきます。ページの最後にコードの抜粋を示します。 -制御プログラムの概要 Unity上のロボットと制御プログラムとは、ROSで通信しています。 Unity上のロボットからはレーザースキャナから周囲360°の距離データが送られてきます。制御プログラムからはロボットの移動量を送信します。 -この制御プログラムは、壁沿いに周回するような制御を行っています。do_forwardで前方の距離が一定以上あれば前進し、turn_rightでは右側の距離が一定以上であれば旋回します。 -このように制御部分は非常に小さく、他はROSで通信するためのボイラープレートとなっています。 制御部分のパラメータを変えることで、自由にロボットを制御することができます。いろいろと書き換えて試してみてください。 なお、コードを書き換えた後は、Dockerのコンテナ内でbuild.bashを実行してプログラムのコンパイルを行ってください。 -制御プログラムの抜粋 // ロボットのレーザースキャナから受け取る360°周囲の距離データ typedef struct { double ranges[360]; } ScanDataType; static ScanDataType scan_data; // レーザースキャナから受け取ったデータのROSのコールバック関数。取得したデータをscan_data変数に保持する。 static void scanCallback(const sensor_msgs::msg::LaserScan::SharedPtr msg) { int i; for (i = 0; i &lt; 360; i++) { scan_data.ranges[i] = msg-&gt;ranges[i]; } return; } // Unity上のロボットの制御値 static geometry_msgs::msg::Twist cmd_vel; static float get_forward_distance(void) { ... // 前方向の一定角度のうち一番近い距離を取得 } static float get_right_distance(void) { ... // 右側の一定角度のうち一番近い距離を取得 } static bool do_forward(void) { .Microcomputer-controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/single-robot/This is a Hakoniwa prototype model with one SBC, designed based on the challenges of ET Robocon. This prototype can verify by linking the program&rsquo;s behavior on the embedded microcontroller with the robot&rsquo;s behavior. -Design intent from a technical study perspective Study on how to integrate between physical simulators and microcomputer simulators Study of time synchronization between different simulators Other design intent Promote Hakoniwa to ET Robot contenst participants (PR activities) Installation &amp; Usage A trial package with minimal configuration and procedures is available in the GitHub repository below.マイコン制御ロボットシミュレーションhttps://toppers.github.io/hakoniwa/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/single-robot/単体のSBCで構成される単体ロボットを対象とした箱庭プロトタイプモデルです.ETロボコンを題材としています. 組込みマイコン上のプログラムの振る舞いを,ロボット上の挙動と連携させて検証を進めることができます. -技術研鑽視点での狙い 物理シミュレータとマイコンシミュレータ間の連携方法の検討 異なるシミュレータ間の時間同期の検討 その他の狙い ETロボコンユーザ層に箱庭を広める(広報活動) 導入方法と使用方法 最小の構成と手順で単体ロボット向けシミュレータを試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください. -toppers/hakoniwa-single_robot: 箱庭プロトタイプモデルA:単体ロボット向けシミュレータ 動作例のデモ 謝辞・特記事項: Unityパッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉﨑涼志さん,木村明美さん,千葉純平さんにご協力いただきました. -HackEVのUnityアセットは,ETロボコン実行委員会より提供いただいたデータを基に作成しています.実行委員会の皆さまに深く感謝いたします. -ただし本アセットはETロボコンの本番環境とは異なりますので,大会に参加予定の方はご注意ください.また,本アセットは,個人利用または教育利用に限定してご利用ください.コースの変更方法https://toppers.github.io/hakoniwa/getting-started/env-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/env-customize/執筆中ROS controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/ros-robot/This prototype model uses ROS/ROS2 to collaborate with multiple and single robots. This prototype is lighter than Gazebo, often used with ROS, and allows for easy customization of robots and environments in Unity and the introduction of URDF format models. -Design intent from a technical study perspective Running simulations using ROS, which is commonly used for robot control Study on how to coordinate with other robots Other design intent Introduce robots controlled by ROS to create a simulation environment that mixes multiple control mechanisms Installation &amp; Usage A trial package with minimal configuration and procedures is available in the GitHub repository below.ROS制御ロボットシミュレーションhttps://toppers.github.io/hakoniwa/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/ros-robot/ロボットの制御にROS/ROS2を用いた箱庭プロトタイプモデルです.単体のロボットだけでなく,複数のロボットの連携動作も可能です. ROSで一般的に用いられているGazeboよりも軽量でロボットや環境もUnity上で容易にカスタマイズすることができ、URDF形式のモデルの導入も行うことができます。 -技術研鑽視点での狙い 一般的なロボット制御に用いられているROSも含めたシミュレーションの実行 複数のロボットを連携させたシミュレーションの実行 その他の狙い ROSのロボットも導入可能とすることで、複数の制御機構が混在したシミュレーション環境を実現する 導入方法と使用方法 最小の構成と手順で試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください. -toppers/hakoniwa-ros2sim: 箱庭 ROS シミュレータ 動作例のデモ 謝辞・特記事項: TurtleBot3 の Unity パッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉崎涼志さん,木村明美さんにご協力いただきました. -TurtleBot3 のUnity アセットは,株式会社ロボティズ様より提供いただいたデータを基に作成しています.ご協力いただき深く感謝いたします.ロボットのカスタマイズ方法https://toppers.github.io/hakoniwa/getting-started/robot-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/robot-customize/執筆中Simulation of collaborative operation of multiple robotshttps://toppers.github.io/hakoniwa/en/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/multi-robot/This prototype model simulates multiple robots and control programs in the same environment. This prototype uses Unity&rsquo;s Photon library to synchronize multiple Unity environments and even time synchronization among assets and uses VR technology to dive into the simulation environment for verification. -Design intent from a technical study perspective Study of methods of collaboration in multiple environments (e.g., simulation time synchronization) Study on how visualize communication among Hakoniwa assets (including ROS/ROS2 collaboration)/ROS2連携含む) Study of mechanisms to augment Hakoniwa assets Other design intent Promote Hakoniwa to the ROS user base (PR activities) Installation &amp; Usage Various demos are available at the following Github repository.複数ロボットの連携制御シミュレーションhttps://toppers.github.io/hakoniwa/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/multi-robot/複数のロボット,複数の制御プログラムによるシミュレーションを同じ環境で行うプロトタイプモデルです. UnityのPhotonライブラリを用いて複数のUnity環境の同期を行っており,加えてアセット間の時間同期も実現しています. またVRによるシミュレーション環境へのダイブも試行しています. -技術研鑽視点での狙い マルチ環境での連携方法検討(シミュレーション時間同期等) 箱庭アセット間の通信可視化方法の検討(ROS/ROS2連携含む) 箱庭アセットの仕組み検討 その他の狙い ROSユーザ層に箱庭を広める(広報活動) 導入方法と使用方法 以下のGithubリポジトリにて,各種デモを公開しています.ぜひお試し下さい. -‐ toppers/hakoniwa-ros-multiplay -動作例のデモ photonによる複数ロボットの連携 Oculus Questとの接続の様子 VRで箱庭内に入った様子Simulation of inter-robot cooperative operationhttps://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/This is a Hakoniwa prototype model for integration of cloud computing and robotics. -Design intent from a technical study perspective Study of specific methods of cloud computing integration Study on how to coordinate with other robots (challenge to more complex robot operation/interference) Study of mechanisms to augment Hakoniwa assets Other design intent Interaction with RDBOX ( establish a track record of Hakoniwa as a development virtual environment) Promote Hakoniwa to the RDBOX user base (PR activities) The prototype model is currently under development.ロボット間協調動作シミュレーションhttps://toppers.github.io/hakoniwa/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/harmony-robot/クラウドとロボティクスとの連携を目指した箱庭プロトタイプモデルです. -技術研鑽視点での狙い クラウド連携方法検討 ロボット間の連携方法検討(より複雑なロボットの動き/干渉に挑戦) 箱庭アセットを増やす仕組みの検討 その他の狙い RDBOX連携(開発支援仮想環境としての箱庭の実績作り) RDBOXユーザ層に箱庭を広める(広報活動) 現在,本プロトタイプモデルの実現に向けて鋭意開発中です.公開までしばしお待ちください.Repository Listhttps://toppers.github.io/hakoniwa/en/repositories/Wed, 26 Aug 2020 15:09:42 +0900https://toppers.github.io/hakoniwa/en/repositories/Hakoniwa Links Outline hakoniwa Repository for general support handling and content management of this website hakoniwa-single_robot Package that can try Hakoniwa Prototype Model A: Simulator for Single Robot with minimum configuration and procedures hakoniwa-ros2sim Environment for easy simulation of ROS 2 programs on Hakoniwa hakoniwa-core Repository for prototype development of Hakoniwa Core Function Athrill Links Outline athrill Athrill core (target-independent part) athrill-device athrill device for external shared library. athrill-target-v850e2m v850e2m Target dependencies for Athrill athrill-target-ARMv7-A ARMv7-A Target dependencies for Athrill athrill-target-rh850f1x rh850f1x Target dependencies for Athrill athrill-gcc-v850e2m gcc package for Athrill V850E2M target TOPPERS kernel Links Outline ev3rt-athrill-v850e2m V850E2M version of TOPPERS/EV3RT platform for Athrill ev3rt-athrill-ARMv7-A Arm v7-A version of TOPPERS/EV3RT platform for Athrill asp-athrill-mbed Package of TOPPERS/ASP kernel and Mbed library for Athrill Unity Links Outline hakoniwa-Unity-Package Unity Asset Package for Hakoniwa mROS Links Outline mROS A lightweight runtime environment of ROS 1 nodes onto embedded devices mROS 2 A lightweight runtime environment of ROS 1 nodes onto embedded devices Samples Links Outline hakoniwa-scenario-samples Sample collection of Hakoniwa behavior scenariosリポジトリ一覧https://toppers.github.io/hakoniwa/repositories/Wed, 26 Aug 2020 15:09:42 +0900https://toppers.github.io/hakoniwa/repositories/箱庭本体 略称・リンク 概要 備考 hakoniwa 全般的なサポート対応と本Webサイトのコンテンツ管理のためのリポジトリ hakoniwa-single_robot 箱庭プロトタイプモデルA:単体ロボット向けシミュレータを最小の構成・手順で試行できるパッケージ hakoniwa-ros2sim 箱庭上で ROS 2 プログラムを手軽にシミュレーションできる環境 hakoniwa-core 箱庭コア機能の試作開発用リポジトリ hakoniwa-document TOPPERS/箱庭 利用者向けの公式ドキュメント hakoniwa-core-cpp-client 箱庭コア機能のC言語API hakoniwa-conductor 分散環境における箱庭実現のための調停プロセス hakoniwa-bridge リアル(エッジ)とバーチャル(箱庭)を接続するための通信モジュール hakoniwa-webserver 箱庭PDUをWebSocket経由でブラウザ上で可視化 Athrill 略称・リンク 概要 備考 athrill Athrill本体(ターゲット非依存部) athrill-device 外部デバイス連携のためのgRPCライブラリ athrill-target-v850e2m Athrill V850E2Mターゲット依存部 athrill-target-ARMv7-A Athrill ARMv7-Aターゲット依存部 athrill-target-rh850f1x Athrill RH850F1xターゲット依存部 athrill-gcc-v850e2m Athrill V850E2Mターゲット対応のgccパッケージ TOPPERS kernel 略称・リンク 概要 備考 ev3rt-athrill-v850e2m TOPPERS/EV3RTプラットフォームのAthrill向けV850E2M版 ASP3カーネルを代用 ev3rt-athrill-ARMv7-A TOPPERS/EV3RTプラットフォームのAthrill向けARMv7-A版 ASP3カーネルを代用 asp-athrill-mbed Athrill向けTOPPERS/ASPカーネルとmbedライブラリのパッケージ asp3-athrill-v850e2m Athrill向けTOPPERS/ASP3カーネルのパッケージ Unity 略称・リンク 概要 備考 hakoniwa-Unity-Package 箱庭向けのUnityアセット・パッケージ hakoniwa-unity-drone-model PX4と連携可能なUnityドローンシミュレータ mROS 略称・リンク 概要 備考 mROS 組込みデバイス向けROS 1ノード軽量実行環境 mROS 2 組込みデバイス向けROS 2ノード軽量実行環境 Samples 略称・リンク 概要 備考 hakoniwa-scenario-samples 箱庭の動作シナリオのサンプル集 hakoniwa-px4sim PX4と連携可能なドローンのプラントモデル用シミュレーション環境SNS & Contacthttps://toppers.github.io/hakoniwa/en/contact/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/contact/Invitation to Hakoniwa WG We welcome the participation of those who agree with the purpose of the Hakoniwa WG. If you would like to participate in discussions on Slack, have requests for our activities, develop core technologies and assets, or utilize the technical outcomes of the Hakoniwa WG and employ them in product development, etc., don&rsquo;t hesitate to get in touch with us. -Email: hakoniwa.toppers_at_gmail.com (Replace _at_ with @) Hakoniwa Forum: Technical questions and discussions We maintain GitHub Discussions as a social networking site for developers, engineers, and users involved in Hakoniwa.SNS・問合せ先https://toppers.github.io/hakoniwa/contact/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/contact/箱庭の活動への参画のお誘い 箱庭WGの狙いや趣旨にご賛同いただける方の参画をお待ちしています。 Slack等での議論に参加したい方、活動内容へのご要望をお持ちの方、コア技術や各アセットの開発などに参加したい方、 箱庭WGの活動で期待される技術成果を活用したい方、製品開発に展開してみたい方、 ぜひともお声がけください。 -Email: hakoniwa.toppers_at_gmail.com (_at_ を@ に置き換えてください) 箱庭WGの活動紹介(2022年度版)もご参照ください。 -箱庭フォーラム:利用方法について質問したり、技術的な相談をしたい 箱庭に関わる開発者や技術者、ユーザのためのSNSになることを目指して、GitHub Discussionsを運用しています。 -箱庭プロトタイプモデルの導入・利用にあたって不明な点や技術的な質問(Athrillを含む要素技術単体に関する質問も歓迎)や、箱庭の活用方法のアイデアや関係する全般的な話題の提供も歓迎します。 -次のカテゴリを用意していますので、適切と思われるものを選択して投稿してください。 -Announcements: 箱庭メンバからの最新情報のお知らせ General: 箱庭や要素技術に関する全般的な話題の提供 a.k.a 雑談場所 Idea&amp;Request: 箱庭こう使えない?こう使いたい!のアイデアを話し合いましょう Inquiry: 箱庭WGへの関する問合せや活動参画の希望など(技術的な質問は&quot;Q&amp;A&quot;をご利用ください) Q&amp;A: 技術的な質問(Athrillを含む要素技術単体に関する質問も歓迎!箱庭プロトタイプモデルの試用で発生したトラブルなどお知らせください) 箱庭もくもく会:箱庭の開発をしてみたり、あれこれ雑談してみたい 箱庭のもくもく会を不定期に開催しています。connpassにて一般公開しており、箱庭WGの開発メンバも参加しています。ご興味のある方は、下記グループページの「メンバーになる」をクリックしてグループに参加いただくと開催情報がキャッチアップできます。 -https://hakoniwa.connpass.com/ -もくもく会とは、各自のやりたいことや知りたいことを持ち寄って、まず自己紹介とやりたいことの表明を行い、それぞれ自由にやりたいことを進めて、そして最後にはもくもくの進捗を共有する会です。 -箱庭のことはいろいろなイベントで見聞きして気になっているんだけど,,, よし動かしてみよう!と思っているけども幾数月,,, 箱庭はさておき Unity x ROS がとっても気になる!! という方々、ぜひともご参加ください。 -特に定まった議題などはありませんので、とりま開発メンバと雑談してみたい方々の参加も大歓迎です。 -WGメンバとして参画したい 箱庭WGは、TOPPERSプロジェクトのワーキンググループとして活動しています。 -箱庭WGのメンバに加入される場合は、原則としてTOPPERSプロジェクトへの入会もお願いしています。 また、TOPPERSプロジェクト会員向けの限定イベントの開催や、箱庭WG活動成果の早期公開なども検討しています。 -TOPPERSプロジェクトの加入方法の詳細については、 -TOPPERSプロジェクト事務局にお問い合わせください。 -NPO法人 TOPPERSプロジェクト 〒103-0011 東京都中央区日本橋大伝馬町6-7 住長第2ビル3F (一社)組込みシステム技術協会内 TEL &amp; FAX: 03-5643-5166 Email: secretariat_at_toppers.jp (_at_ を@ に置き換えてください) WGの主なメンバと役割 氏名 主な役割 所属 SNS 森 崇 主査 全体統括、Athrill 永和システムマネジメント/箱庭ラボ 高瀬 英希 mROS、ROS、IoT 東京大学/JSTさきがけ 細合 晋太郎 IDE、モデリング、可視化、クラウド 東京大学 高田 光隆 カーネル、応用検討 名古屋大学NCES 福田 ⻯也 クラウド、ロボティクス 小森 顕博 可視化 久保秋 真 モデリング、応用検討 チェンジビジョン 國井 雄介 デジタルツイン活用 クレスコ ※許諾の得られている方のみ掲載しています。ショーケースhttps://toppers.github.io/hakoniwa/showcase/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/showcase/「箱庭」コンセプトムービー2021 2021年6月時点での箱庭の成果物で実現できることを、デモ動画としてまとめました。 -このページの先頭に戻る -シミュレーション環境:箱庭を使ったROSロボットのCI(継続的インテグレーション) クラウドネイティブ環境上に構築した「箱庭」と合わせて、コミュニティ版GitLab(MIT Licence)が提供する、ソースコード管理機能及び、CI Runner機能を使ってCI(Continuous Integration,継続的インテグレーション)を実現しています。 -クラウドネイティブ環境はOSSであるRDBOX(Robotics Developer BOX)を使って構築しています。 -このページの先頭に戻る -MONOistでの連載 モノづくりスペシャリストのための情報ポータル「MONOist」に連載記事を寄稿しています。 -「仮想環境を使ったクラウド時代の組み込み開発のススメ」という連載タイトルにて、箱庭の活動を織り交ぜながらこれからのIoTシステム開発の姿を紹介しています。ぜひご覧ください。 -第1回「IoTシステムの開発はなぜ難しいのか、ITと組み込みの相克を克服せよ」 (2021年05月25日 10時00分 公開) 第2回「日本の伝統を受け継ぐ仮想環境「箱庭」でIoTシステムの統合開発を加速する」 (2021年06月28日 10時00分 公開) 第3回「組み込みエンジニアも知っておきたい「クラウドネイティブ」とは」 (2021年07月28日 10時00分 公開) 第4回「クラウドネイティブで実現する、シミュレーションと実機テストのボーダーレス開発」 (2021年08月30日 10時00分 公開) 第5回「誰もが手軽にROSロボット/IoTシステムの開発に取り組める「RDBOX」とは」 (2021年09月29日 10時00分 公開) このページの先頭に戻る -Unity開発事例集 ユニティ・テクノロジーズ・ジャパン株式会社のWebページ「Unityを活用した開発事例 | Unity for Industry」において、箱庭の単体ロボット向けシミュレータが取り上げられています。 -「MANUFACTURE 製造分野でのUnity開発事例」の項目をご覧ください。 -このページの先頭に戻るシミュレーションに関するチューニングhttps://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/変更可能なパラメータ EV3のパラメータについて 今回のシミュレーション環境(Unity側)にはいくつかパラメータがありますので,その説明を行います. -まず,パラメータを参照するには,Hierarchyビューで,「EV3」を選択してください(下図). -すると,InspectorビューにEV3のパラメータが表示されます. -以下,変更可能なパラメータを説明します(説明されていないものは変更しないでください). ※これらのパラメータは,シミュレーション実行時に動的に変更も可能なものもあります. -EV3 Actuator(Script) Port(動的変更不可) Unity側のUDP受信ポート番号です.デフォルトでは54001です. -この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください. -DEBUG_FUNC_VDEV_TX_PORTNO 54001 device_config.txt は,app.cと同じフォルダにあります. -EV3 Sensor(Script) Host(動的変更不可) Athrillの配置マシンのIPアドレスです. Unityと同じマシン上に配置する場合は,デフォルト値のままで良いです. -マシン負荷が高く,athrillとUnityを別マシンで動かす場合は,このIPアドレスを変更して対応ください. -Port(動的変更不可) Athrill側のUDP受信ポート番号です.デフォルトでは54002です. -この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください. -DEBUG_FUNC_VDEV_RX_PORTNO 54002 device_config.txt は,app.cと同じフォルダにあります. -EV3 Motor(Script) Power Const(動的変更可) EV3のモータのパワーです.デフォルトで40としていますが,値を変更できます. -ただ,あまり大きい値を設定しすぎるとUnity側の問題か,物理的にありえないのかよくわかりませんが,EVロボットが吹っ飛びますので,ご注意ください... -照明のON/OFFについて 今回のデモでは,照明を3個用意しています. -全体照明1個 Directional Light スポットライト2個 Spot Light1 Spot Light2 それぞれの照明はシミュレーション実行時にON/OFFできます. ON/OFFのさせ方は単純で,HierachyビューでON/OFFしたいライトを選択します. -すると,Inspectorビューに下図のように「Light」のチェックボックスが見えます. このチェックボックスを外せばOFFになります. -カラーセンサの状態 パラメータではないですが,カラーセンサの認識している状態を知りたくなることがあるかと思います. そのため,カラーセンサの認識している値をUnityのパラメータ表示機能を利用して可視化しています. -参照するには,下図のようにHierarchyビューでColorSensorを選択してください. -そうすると,Inspectorビューに下図のように認識値(Rgb)が表示されます. -Rgbは,現在認識している色をそのまま表示しています. Rgb_r,g,b には,カラーセンサで取得できる数値を表示しています.シミュレーションに関するチューニングhttps://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/single-robot-HackEV(v2.0)の追加要素について Hakoniwaクラスの追加 single-robot-HackEV(v2.0) ではHakoniwaクラスが設けられました. -Hakoniwaクラスはシミュレーション環境全体に関わる情報を持っています. -主なフィールド 説明 Max Diff Time athrillとUnityのシミュレーション時間の最大許容誤差時間 Dbg Diff Time Msec 現在のathrillとUnityのシミュレーション時間の誤差(msec) Robotの配置方法 single-robot-HackEV(v2.0)ではあらかじめ用意されたいくつかのロボットモデルを -ユーザの方が任意に配置することが出来ます. -Project/Prefabs配下にいくつかのロボットモデルを用意しています. これらのロボットモデルをHierarchyビューのRobot配下にドラッグ&ドロップすることで 簡単に配置することができます. -変更可能なパラメータ Robot のパラメータについて 超音波センサ Ultrasonic SensorのDistance Valueでセンサ範囲を調整できます. -モーター RigidbodyのMassでタイヤの重さを,Angular Dragで回転時の抵抗値を調整できます. -カラーセンサ Physical CameraのSensor Sizeでセンシング範囲を調整できます. -センサ用ライト LightのRangeで光が届く範囲の距離を,SpotAngleで光が届く範囲の広さを調整できます.チュートリアルhttps://toppers.github.io/hakoniwa/tutorial/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/tutorial/箱庭チュートリアル会とは? 箱庭WGのメンバが持ち回りで担当して、自身の取り組みや最新の動向、そしていろんな野望などなどを、自由に語り尽くします! -皆さんでフランクに情報交換や議論などできればと思っています。 -本ページでは、チュートリアル会のスライド資料や動画アーカイブなどを公開しています。 -箱庭入門会とは? 主に初めて箱庭に触れる方を対象として、箱庭の全体像やアーキテクチャ、アセットの作成方法などを紹介する会です。 Getting Startedな内容になっていて、自分好みのシミュレーション環境を構築する方法を学ぶことができます。 すでに箱庭を知っている方も復習に最適な連弾シリーズの形式です。 30分程度のミニセミナー形式で下記の項目をひとつずつの内容を進めていき、解説パートは動画アーカイブとして公開しています。 -入門会 #10 ドローンシミュレータのUnity機体をカスタマイズする 箱庭ドローンのUnityワールド/機体をカスタマイズする方法を解説します。 - Unity - Unityシーン/スクリプト - Unityプリミティブ素材、コライダー - Unityアセットストア - Unityプロジェクト - 箱庭 - 箱庭ドローンのUnityプロジェクト - 箱庭ドローンのUnityシーン - 箱庭ドローンのプレハブ - カスタマイズ - 箱庭ワールド - 箱庭ドローン - リポジトリ管理方法 開催日:2024/7/1(月) connpassイベントページ https://hakoniwa.connpass.com/event/323046/ 担当: @kanetugu2020 さん 動画 (YouTube) -スライド資料 (Docswell) -Hakoniwa-drone-unity by @kanetugu2015 このページの先頭に戻る -入門会 #9 ドローンシミュレータをPythonで制御する 箱庭ドローンを操作するPythonプログラムの作成方法を解説します。 - 箱庭ドローン・Python API 操作のユースケース説明 - ユースケース毎のAPI実装方法説明 - 機体を離陸する - 機体の現在位置を取得する - 機体を目的地へ移動する - 機体で荷物を運ぶ - 機体のカメラで撮影する - 機体のレーザセンサ(LiDAR)で周辺の障害物を検出する - 機体を着陸する 開催日:2024/6/26(水) connpassイベントページ https://hakoniwa.技術情報・発表資料https://toppers.github.io/hakoniwa/technical-links/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/technical-links/最新の技術情報 Qiita記事 最新の開発状況は、主にQiitaで発信しています。 -次のタグやOrganizationをフォローされると、最新情報が得やすくなります. -tag: 箱庭 tag: athrill tag: mROS organization: TOPPERSプロジェクト なお、Qiita記事では開発途上の試行版であったり古い情報が記載されていることがあります。 -このページの先頭に戻る -講演資料や動画など TOPPERSカンファレンス2023 2022年6月30日(金)に開催されたTOPPERSカンファレンス2023の講演資料です。 箱庭WGの活動紹介、最新の開発状況とプラットフォーム化に向けた新たな展開について紹介しました。 -箱庭 Update 2023 講演資料 (PDFファイル) 動画 (YouTube) -TOPPERS/箱庭の新たな展開:プラットフォーム化への一歩 講演資料 (PDFファイル) 動画 (YouTube) -このページの先頭に戻る -ROSCon 2022 ROSCon 2022 が2022年10月20日(木)-21日(金)に開催され、箱庭WGのメンバが発表を行いました。 ROSConは、ロボット開発プラットフォームであるROS(Robot Operating System)に関する世界的な開発者会議の日本版です。 -mROS 2: yet another runtime environment onto embedded devices 講演資料 (Speaker Deck) -動画 (Vimeo) -このページの先頭に戻る -ROSCon JP 2022 ROSCon JP 2022 が2022年10月19日(水)に京都で開催され、箱庭WGのメンバが発表を行いました。 -SROS 2 with OIDC(OpenID Connect) :ロボットと人を安全に繋ぐ技術 動画 (Vimeo) -now and next about mROS 2 講演資料 (Speaker Deck)単体ロボット向けシミュレータ使用手順(ARM版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/単体ロボット向けシミュレータ使用手順(ARM版) 使用手順 環境変数の設定(Mac版のみ) cfgフォルダの配置(初回起動時のみ) EV3ロボット制御プログラムのビルド Unityのシミュレータの起動 athrillの起動 環境変数の設定(Mac版のみ) Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります. -export GCC_PATH=&lt;gccインストールフォルダ&gt;/gcc-arm-none-eabi-9-2019-q4-major cfgフォルダの配置(初回起動時のみ) cfg ファイルの配置(Mac版の場合) -$ pwd &lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A $ mkdir cfg/cfg $ cp cfg/cfg-mac cfg/cfg/cfg $ chmod +x cfg/cfg/cfg cfg ファイルの配置(Windows\Linux版の場合) -$ pwd &lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A $ mkdir cfg/cfg $ cp cfg/cfg-linux-64 cfg/cfg/cfg $ chmod +x cfg/cfg/cfg EV3ロボット制御プログラムのビルド ターミナル上で,ev3rt-athrill-ARMv7-A/sdk/OBJ1.1に移動して, -EV3ロボット制御プログラムをビルドしましょう. -ビルドするには,以下のコマンドを実行してください. -make clean;make ビルド成功すると,asp というバイナリができます. -$ ls asp asp Unityのシミュレータの起動 ※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください -次に,Unityをシミュレーションモードにします. Unityの画面上で ボタンを押下してください. -成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合) -athrillの起動 最後に,athrillを起動しましょう. -ev3rt-athrill-ARMv7-A/sdk/OBJ1.1に移動して,以下のコマンドを実行してください. -unityとの通信が UDP の場合 UDP版の場合単体ロボット向けシミュレータ使用手順(ARM版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/単体ロボット向けシミュレータ使用手順(ARM版) 使用手順 環境変数の設定(Mac版のみ) cfgフォルダの配置(初回起動時のみ) EV3ロボット制御プログラムのビルド Unityのシミュレータの起動 athrillの起動 環境変数の設定(Mac版のみ) Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります. -export GCC_PATH=&lt;gccインストールフォルダ&gt;/gcc-arm-none-eabi-9-2019-q4-major cfgフォルダの配置(初回起動時のみ) cfg ファイルの配置(Mac版の場合) -$ pwd &lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A $ mkdir cfg/cfg $ cp cfg/cfg-mac cfg/cfg/cfg $ chmod +x cfg/cfg/cfg cfg ファイルの配置(Windows\Linux版の場合) -$ pwd &lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A $ mkdir cfg/cfg $ cp cfg/cfg-linux-64 cfg/cfg/cfg $ chmod +x cfg/cfg/cfg EV3ロボット制御プログラムのビルド ターミナル上で,ev3rt-athrill-ARMv7-A/sdk/OBJ1.1に移動して, -EV3ロボット制御プログラムをビルドしましょう. -ビルドするには,以下のコマンドを実行してください. -make clean;make ビルド成功すると,asp というバイナリができます. -$ ls asp asp Unityのシミュレータの起動 ※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください -次に,Unityをシミュレーションモードにします. Unityの画面上で ボタンを押下してください. -成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合) -athrillの起動 最後に,athrillを起動しましょう. -ev3rt-athrill-ARMv7-A/sdk/OBJ1.1に移動して,以下のコマンドを実行してください. -unityとの通信が UDP の場合 UDP版の場合単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/単体ロボット向けシミュレータ使用手順 V2.1での変更点について v2.1 で,Unityでのシミュレーション実行をビルドしてバイナリ実行できるようになりました. -バイナリ実行でシミュレーション実行を行う場合, -Unityシミュレーションの実行, athrillの実行 をひとまとめにして実行することができます. -なお,従来の使用方法でもシミュレーションを実行することは可能ですので, -その場合は下記をご参照いただき,使用してください. -V850版 ARM版 これ以降は,バイナリ実行を行うための手順の紹介となります. -使用手順 ビルド設定 ビルドの実行,config.jsonの配置 シミュレーションの実行 ビルド設定 ビルドを実施する前に,バイナリ実行時のウィンドウサイズに関する設定を行います. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Player」 -Resolution and PresentationのFullscreen Mode をWindowedと設定します. その下の詳細なウィンドウサイズは基本そのままでもよいですが,サイズを変更したい場合は, -お使いの環境に合わせて変更してください. -ビルドの実行,config.jsonの配置 設定が完了したら,Unityプロジェクトのビルドを行います. -Unity のメニューから,「File」⇒「Build Settings」を選択します. -Platform は[PC,Mac &amp; Linux Standalone]のままとします. -Architectureは実行するPCのアーキテクチャに合わせて設定しますが, -どちらか分からないという方は,x86_64を選択してください. -設定を終えたら,Buildを押下してビルドを実行します. -すると,どの場所にビルドしたバイナリを配置するか,選択ダイアログが表示されますので, 任意の場所を選択します. -今回は例として,ビルドするUnityプロジェクトのあるフォルダ内に,Buildフォルダを作成し, -その中にビルドしたバイナリを配置するようにします. -フォルダを選択すると,ビルドが実行されます. -ビルドが完了したら,バイナリが出力されたフォルダ(今回の例ではBuildフォルダ)内に -先ほど,Unityプロジェクトフォルダ配下に配置したconfig.jsonをコピーします. -制御アプリのビルド シミュレーションの実行の前に制御アプリのビルドを行います. -ビルド手順は,以下のEV3ロボット制御プログラムのビルドをご参照ください. -V850版 ARM版 memory_mmap.txtの編集(通信方式にMMAPを使用する場合のみ) 制御アプリのビルドが完了したら,Unityバイナリ実行のためにアプリケーションフォルダにある -memory_mmap.txtを編集します. -使用するMMAPファイルのパスを記述するのですが,Unityバイナリを使用する場合には, -MMAPファイルのパスを絶対パスで記述するように変更します. -例:アプリケーション名がline_tarceの場合のmemory_mmap.txt -ROM, 0x00000000, 512 RAM, 0x00200000, 512 RAM, 0x05FF7000, 10240 RAM, 0x07FF7000, 10240 MMAP, 0x40000000, /mnt/c/project/hakoniwa/ev3rt-athrill-v850e2m/sdk/workspace/line_trace/athrill_mmap.単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/単体ロボット向けシミュレータ使用手順(V850版) 使用手順 EV3ロボット制御プログラムのビルド Unityのシミュレータの起動 athrillの起動 EV3ロボット制御プログラムのビルド ev3rt-athrill-v850e2m/sdk/workspace に移動して, -EV3ロボット制御プログラムをビルドしましょう. -ビルドするには,以下のコマンドを実行してください. -$ make img=<アプリケーションフォルダ名> clean $ make img=<アプリケーションフォルダ名> 例:line_traceというアプリケーションフォルダのプログラムをビルドする場合 -$ make img=line_trace clean $ make img=line_trace ビルド成功すると,asp というバイナリができます. -$ ls asp asp Unityのシミュレータの起動 ※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください -次に,Unityをシミュレーションモードにします. Unityの画面上で ボタンを押下してください. -成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合) -athrillの起動 最後に,athrillを起動しましょう. -ev3rt-athrill-v850e2m/sdk/workspace/<アプリケーションフォルダ>に移動して,以下のコマンドを実行してください. -UDP版の場合 -$ athrill2 -c1 -t -1 -m memory.txt -d device_config.txt ../asp MMAP版の場合 -$ athrill2 -c1 -t -1 -m memory_mmap.txt -d device_config_mmap.txt ../asp 成功すると,以下のログが出力され,Unity上のEV3ロボットが動き始めます. -core id num=1 ROM : START=0x0 SIZE=512 RAM : START=0x5ff7000 SIZE=10240 Elf loading was succeeded:0x0 - 0xfd68 : 63.単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/単体ロボット向けシミュレータ使用手順(V850版) 使用手順 EV3ロボット制御プログラムのビルド Unityのシミュレータの起動 athrillの起動 EV3ロボット制御プログラムのビルド ev3rt-athrill-v850e2m/sdk/workspace に移動して, -EV3ロボット制御プログラムをビルドしましょう. -ビルドするには,以下のコマンドを実行してください. -$ make img=<アプリケーションフォルダ名> clean $ make img=<アプリケーションフォルダ名> 例:line_traceというアプリケーションフォルダのプログラムをビルドする場合 -$ make img=line_trace clean $ make img=line_trace ビルド成功すると,asp というバイナリができます. -$ ls asp asp Unityのシミュレータの起動 ※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください -次に,Unityをシミュレーションモードにします. Unityの画面上で ボタンを押下してください. -成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合) -athrillの起動 最後に,athrillを起動しましょう. -ev3rt-athrill-v850e2m/sdk/workspace/<アプリケーションフォルダ>に移動して,以下のコマンドを実行してください. -UDP版の場合 -$ athrill2 -c1 -t -1 -m memory.txt -d device_config.txt ../asp MMAP版の場合 -$ athrill2 -c1 -t -1 -m memory_mmap.txt -d device_config_mmap.txt ../asp 成功すると,以下のログが出力され,Unity上のEV3ロボットが動き始めます. -core id num=1 ROM : START=0x0 SIZE=512 RAM : START=0x5ff7000 SIZE=10240 Elf loading was succeeded:0x0 - 0xfd68 : 63.単体ロボット向けシミュレータ使用方法https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/単体ロボット向けシミュレータ使用方法 使用手順詳細 single-robot-HackEV(v2.1)を使用している場合(Windows, Mac向け) 使用しているUnityパッケージが single-robot-HackEV(v2.1) の場合は, -こちらの使用手順をご参照ください. -使用手順 シミュレーションに関わるチューニングについてはこちらをご参照ください. -チューニングについて(single-robot-HackEV(v2.0)を使用している場合) single-robot-HackEV(v2.0)を使用している場合 使用しているUnityパッケージが single-robot-HackEV(v2.0) の場合は, -こちらの使用手順をご参照ください. -V850版 ARM版 シミュレーションに関わるチューニングについてはこちらをご参照ください. -チューニングについて(single-robot-HackEV(v2.0)を使用している場合) single-robot-HackEV または ev3rt-simple-robotを使用している場合 使用しているUnityパッケージが single-robot-HackEV または ev3rt-simple-robot の場合は, -こちらの使用手順をご参照ください. -V850版 ARM版 シミュレーションに関わるチューニングについてはこちらをご参照ください. -チューニングについて単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/WSLのインストール Windows版の場合はWSLをインストールいただく必要があります. -※注意点として,現時点(2020/6月)時点では,WSL2はご利用いただけません(WSL2とUnity間でUDP通信できないため). -WSLのインストール方法は色々なサイトで紹介されておりますので,Ubuntu 18.04 LTSをインストールください. -以下のサイト等が参考になるかと思います. -https://qiita.com/Aruneko/items/c79810b0b015bebf30bb インストールが完了したら,aptパッケージを更新しておきます. -(更新しないと後ほど行うgccのインストールで失敗することがあるためです) -$ sudo apt update aptパッケージを更新したら,あらかじめ以下が使用できるようにインストールしておきます -gcc make $ sudo apt install build-essential単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/Rubyのインストール v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. ※EV3ロボット制御アプリをビルドする際に必要となります. -Homebrewを使用してインストールします. -$ brew install ruby単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/Rubyのインストール v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. ※EV3ロボット制御アプリをビルドする際に必要となります. -$ sudo apt install ruby単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/athrill2のインストール athrill2のインストール手順 athrill のチェックアウト athrill-target のチェックアウト コンパイラのインストール ビルド&インストール athrill のチェックアウト athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています. -共通コードのチェックアウトは,以下の通りです. -$ git clone https://github.com/toppers/athrill.git athrill-target のチェックアウト CPUアーキに依存するコードは,athrill-target側で管理しています. 今回のARM対応版は,ここにあります. -$ git clone https://github.com/toppers/athrill-target-ARMv7-A.git なお,athrill と athrill-targetを以下のフォルダ構成にしてください. -. ├── athrill └── athrill-target-ARMv7-A コンパイラのインストール Linux の方は,gcc をインストールください. -Windows の方は,WSL上で gcc をインストールください. -Mac の方は,clang をインストールください. -ビルド&インストール ビルド方法ですが,端末上でathrill-target-ARMv7-A に移動してください. -Linux/Windowsの方は,さらに build_linux に移動してください. -Macの方は,build_mac に移動してください. -移動終わったら,以下コマンド実行するだけです. -make timer32=true clean make timer32=true ビルド成功すると,athrill側の bin/linux 配下に athrill2 というバイナリが配置されるはずです. -$ ls -l ../../athrill/bin/linux/athrill2 -rwxr-xr-x 1 user staff 628260 2 2 16:40 .単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/athrill2のインストール athrill2のインストール手順 athrill のチェックアウト athrill-target のチェックアウト コンパイラのインストール ビルド&インストール athrill のチェックアウト athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています. -共通コードのチェックアウトは,以下の通りです. -$ git clone https://github.com/toppers/athrill.git athrill-target のチェックアウト CPUアーキに依存するコードは,athrill-target側で管理しています. -今回のV850対応版は,ここにあります. -$ git clone https://github.com/toppers/athrill-target-v850e2m.git なお,athrill と athrill-targetを以下のフォルダ構成にしてください. -. ├── athrill └── athrill-target-v850e2m コンパイラのインストール Linux の方は,gcc をインストールください. -Windows の方は,WSL上で gcc をインストールください. -Mac の方は,clang をインストールください. -ビルド&インストール ビルド方法ですが,端末上でathrill-target-v850e2m に移動してください. -Linux/Windowsの方は,さらに build_linux に移動してください. -Macの方は,build_mac に移動してください. -移動終わったら,以下コマンド実行するだけです. -make timer32=true clean make timer32=true ビルド成功すると,athrill側の bin/linux 配下に athrill2 というバイナリが配置されるはずです. -$ ls -l ../../athrill/bin/linux/athrill2 -rwxr-xr-x 1 user staff 628260 2 2 16:40 .単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/linux版64bit gccコンパイラ(ライブラリ含む)のインストール ARM版のathrill2を利用される場合は,以下のサイトを参考にコンパイラおよびライブラリをインストールください. -Windows(WSL) -https://www.yokoweb.net/2018/03/07/wsl-ubuntu-arm-gcc/ Linux -https://www.yokoweb.net/2018/05/16/ubuntu-18_04-gcc-arm-install/ Mac -https://www.yokoweb.net/2018/05/16/macos-gcc-arm-brew-install/単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/linux版64bit gccコンパイラ(ライブラリ含む)のインストール v850版のathrill2を利用される場合は,以下のサイトからコンパイラおよびライブラリ(athrill-gcc-package.tar.gz)をダウンロードください. -https://github.com/toppers/athrill-gcc-v850e2m/releases/tag/v1.1 $ tar xzvf athrill-gcc-package.tar.gz $ cd athrill-gcc-package/ $ tar xzvf athrill-gcc.tar.gz $ ls usr/local/athrill-gcc/ bin include lib libexec share v850-elf 解凍後,usr/local/athrill-gccを /usr/local 直下に移動してください. -$ sudo mv usr/local/athrill-gcc /usr/local あとは,.bashrc に以下のパスを設定するだけです. -export PATH=/usr/local/athrill-gcc/bin/:${PATH} export LD_LIBRARY_PATH=/usr/local/athrill-gcc:/usr/local/athrill-gcc/lib:${LD_LIBRARY_PATH} 設定後は,パスの有効化を忘れずに行ってください. -source ${HOME}/.bashrc単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/箱庭用 EV3RT 開発環境のダウンロード 任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください. -なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください. -|---athril |---athrill-target-ARMv7-A └---ev3rt-athrill-ARMv7-A clone方法は以下の通りです. -$ git clone https://github.com/toppers/ev3rt-athrill-ARMv7-A.git単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/箱庭用 EV3RT 開発環境のダウンロード 任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください. -なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください. -|---athril |---athrill-target-v850e2m └---ev3rt-athrill-v850e2m clone方法は以下の通りです. -$ git clone https://github.com/toppers/ev3rt-athrill-v850e2m.git サンプルアプリケーションのダウンロード 2種類のサンプルアプリケーションを用意しています. -こちらから git clone いただき,hakoniwa-scenario-samples/single-robot配下の全てのフォルダを -ev3rt-athrill-v850e2m/sdk/workspace に配置ください. -$ git clone https://github.com/toppers/hakoniwa-scenario-samples.git単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/EV3ロボット制御プログラム 現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です. -※まだ暫定構成です. -ARM版のathrill2を利用される場合は,以下のフォルダで作業してください. -$ ls ev3rt-athrill-ARMv7-A/sdk/OBJ1.1/ app.c app.h device_config_mmap.txt Makefile memory_mmap.txt simstart.bash app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt unity_mmap.bin 現状は,app.c/main_task で直接制御を行っています. -コード断片は以下の通りです. -while(1) { /** * PID controller */ #define white 100 #define black 50 static float lasterror = 0, integral = 0; static float midpoint = (white - black) / 2 + black; { float error = midpoint - ev3_color_sensor_get_reflect(EV3_PORT_1); integral = error + integral * 0.3; float steer = 0.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/EV3ロボット制御プログラム 現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です. -v850版のathrill2を利用される場合は,以下のフォルダで作業してください. -$ ls ev3rt-athrill-v850e2m/sdk/workspace/line_trace/ app.c app.h device_config_mmap.txt log.txt memory_mmap.txt unity_mmap.bin app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt または -$ ls ev3rt-athrill-v850e2m/sdk/workspace/color_sensor/ app.c app.h device_config_mmap.txt log.txt memory_mmap.txt unity_mmap.bin app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt 現状は,app.c/main_task で直接制御を行っています. -コード断片は以下の通りです.(line_traceの場合) -while(1) { /** * PID controller */ #define white 100 #define black 10 static float lasterror = 0, integral = 0; static float midpoint = (white - black) / 2 + black; { float error = midpoint - ev3_color_sensor_get_reflect(EV3_PORT_1); integral = error + integral * 0.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/Unityのインストール・パッケージのインポート・通信方式の切替方法 Unityパッケージのダウンロード 単体ロボット向けシミュレータで使用するUnityパッケージを2種類用意してあります. どちらかのパッケージをご選択いただき,ダウンロードを行ってください. -使用するUnityパッケージ 説明 single-robot-HackEV HackEVを模した走行体モデルを使用しています ev3rt-simple-robot シンプルな走行体モデルを使用しています single-robot-HackEV(v2.0) 上記2つのモデルを含んでおり自由に選択できます single-robot-HackEV(v2.1) single-robot-HackEV(v2.0)の内容に加え,シミュレータのコンフィグ機能,バイナリ実行機能を追加したものとなっております.(Windows, Mac対応済み.Linux版は開発中です) それぞれ下記からダウンロードしてください -single-robot-HackEV.unitypackage https://github.com/toppers/hakoniwa-Unity-HackEV/releases/tag/v1.0 ev3rt-simple-robot.unitypackage https://github.com/toppers/hakoniwa-Unity-SimpleCar/releases single-robot-HackEV.unitypackage(v2.0) https://github.com/toppers/hakoniwa-Unity-HackEV/releases/tag/v2.0 single-robot-HackEV.unitypackage(v2.1) (Windows, Mac対応済み) https://github.com/toppers/hakoniwa-Unity-HackEV/releases/tag/v2.1 使用するUnityのパッケージによって,設定画面のレイアウトが異なりますため, -ご選択いただいたUnityパッケージに合わせた導入手順をご参照ください -Unityのインストール・パッケージのインポート・通信方式の切替方法 single-robot-HackEV(v2.1) を使用する場合 single-robot-HackEV(v2.0) を使用する場合 single-robot-HackEV または ev3rt-simple-robot を使用する場合単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/Unityのインストール・パッケージのインポート・通信方式の切替方法 Unityのインストール Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください. -以下のサイト等が参考になるかと思います. -https://tech-camp.in/note/technology/44408/ ※動作確認はUnity 2020.1.0b9(64bit)で行っております. -使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします. -Unityパッケージのインポート Unity 起動 まず,インストールしたUnityを起動してください. -無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します. -次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください. -成功すると,以下のようにUnityが起動します. -Unityパッケージのインポート ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります -Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package&hellip;」と選択し,任意の unitypackageファイルを選択してください. -成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください. -成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. Toppers_Courseをダブルクリックすると下図の画面が現れます. -次に,シミュレーションに関わる設定を変更します. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Time」 -Fixed Timestep を 0.001に, Time Scale を 0.6に設定します. -※ev3rt-simple-robot.unitypackageを使用する場合で,もしシミュレーションの動作が -遅い場合には,Fixed Timestep を 0.01に,EV3 Motor(Script)のIntervalを 0.0005に -設定してください. -「Quality」 -OtherのVSync Count を Don&rsquo;t Sync に設定します. -これでインポート作業終了です. -通信方式の切替方法 athrillとUnity間での通信方式によって設定が異なります. ご自身の環境に合わせて,どちらかの通信方式をご選択ください. -UDP版を使用する場合はこちら MMAP版を使用する場合はこちら MMAPについて MMAPにすると嬉しい点としては以下が挙げられます. -UDP のように通信ロストは発生しない(シミュレーション精度向上につながる) Unity と athrill 間のやりとりは共有メモリベースなので,高速になる(と思われる) 上記のとおり,精度向上と高速性を期待して試行してみましたが,精度は良くなりました(速度はあまり変化ないような?). ただし,デメリットとして以下が挙げられます. -1マシン前提での構成を余儀なくされる UDPであれば,athrillを別PCに配置して負荷分散可能ですので.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/Unityのインストール・パッケージのインポート・通信方式の切替方法 Unityのインストール Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください. -以下のサイト等が参考になるかと思います. -https://tech-camp.in/note/technology/44408/ ※動作確認はUnity 2020.1.0b9(64bit)で行っております. -使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします. -Unityパッケージのインポート Unity 起動 まず,インストールしたUnityを起動してください. -無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します. -次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください. -成功すると,以下のようにUnityが起動します. -Unityパッケージのインポート ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります -Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package&hellip;」と選択し,任意の unitypackageファイルを選択してください. -成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください. -成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. Toppers_Courseをダブルクリックすると下図の画面が現れます. -次に,シミュレーションに関わる設定を変更します. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Time」 -Fixed Timestep を 0.001に, Time Scale を 0.6に設定します. -※ev3rt-simple-robot.unitypackageを使用する場合で,もしシミュレーションの動作が -遅い場合には,Fixed Timestep を 0.01に,EV3 Motor(Script)のIntervalを 0.0005に -設定してください. -「Quality」 -OtherのVSync Count を Don&rsquo;t Sync に設定します. -これでインポート作業終了です. -通信方式の切替方法 athrillとUnity間での通信方式によって設定が異なります. ご自身の環境に合わせて,どちらかの通信方式をご選択ください. -UDP版を使用する場合はこちら MMAP版を使用する場合はこちら MMAPについて MMAPにすると嬉しい点としては以下が挙げられます. -UDP のように通信ロストは発生しない(シミュレーション精度向上につながる) Unity と athrill 間のやりとりは共有メモリベースなので,高速になる(と思われる) 上記のとおり,精度向上と高速性を期待して試行してみましたが,精度は良くなりました(速度はあまり変化ないような?). ただし,デメリットとして以下が挙げられます. -1マシン前提での構成を余儀なくされる UDPであれば,athrillを別PCに配置して負荷分散可能ですので.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/Unityのインストール・パッケージのインポート・通信方式の切替方法 Unityのインストール Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください. -以下のサイト等が参考になるかと思います. -https://tech-camp.in/note/technology/44408/ ※動作確認はUnity 2020.1.0b9(64bit)で行っております. -使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします. -Unityパッケージのインポート Unity 起動 まず,インストールしたUnityを起動してください. -無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します. -次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください. -成功すると,以下のようにUnityが起動します. -Unityパッケージのインポート ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります -Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package&hellip;」と選択し,任意の unitypackageファイルを選択してください. -成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください. -成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. Toppers_Courseをダブルクリックすると下図の画面が現れます. -次に,シミュレーションに関わる設定を変更します. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Time」 -Fixed Timestep を 0.001に, Time Scale を 0.6に設定します. -※ev3rt-simple-robot.unitypackageを使用する場合で,もしシミュレーションの動作が -遅い場合には,Fixed Timestep を 0.01に,EV3 Motor(Script)のIntervalを 0.0005に -設定してください. -「Quality」 -OtherのVSync Count を Don&rsquo;t Sync に設定します. -これでインポート作業終了です. -通信方式の切替方法 athrillとUnity間での通信方式に設定を行います. -設定はconfig.jsonという設定ファイルを作成し,設定を行います. -config.json の設定例(通信方式がMMAPの場合) 設定するファイルパスは全て絶対パスで記述します. -{ &#34;AthrillPath&#34;:&#34;/mnt/c/project/esm/athrill/bin/linux/athrill2&#34;, &#34;TerminalPath&#34;:&#34;C:\\Windows\\System32\\wsl.exe&#34;, &#34;robots&#34;:[ { &#34;RobotName&#34;:&#34;RoboModel&#34;, &#34;WorkspacePathWin&#34;:&#34;C:\\project\\esm\\ev3rt-athrill-v850e2m\\sdk\\workspace&#34;, &#34;WorkspacePathUnix&#34;:&#34;/mnt/c/project/esm/ev3rt-athrill-v850e2m/sdk/workspace&#34;, &#34;ApplicationName&#34;:&#34;touch_sensor&#34;, &#34;BinaryName&#34;:&#34;asp&#34; } ] } config.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/MMAP用Unity設定 UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Player」 -Other SettingのScripting Define Symbols にVDEV_IO_MMAPと設定します. -MMAP用パラメータ設定 ※なお,このページで紹介しているUnity画面の画像はWindows版のものです -設定する場所は,Unity の以下のスクリプト・パラメータ(Filepath)部分です. -インポート直後ですと,[EV3 Actuator] と [EV3 Sensor]の Filepath は空白です. -ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します. -MMAPファイル自体は,以下の2ファイルがapp.cと同じフォルダに含まれています. -athrill_mmap.bin unity_mmap.bin unity_mmap.bin の絶対ファイルパスを,[EV3 Sensor]のFilepathに設定してください(設定例:下図). -athrill_mmap.bin の絶対ファイルパスを,[EV3 Actuator]のFilepathに設定してください(設定例:下図). -例えば,v850版を使用するという前提でev3rt-athrill-v850e2mのローカルリポジトリが, -C:\project\hakoniwaにあり,実行したいアプリケーションのフォルダがline_traceの場合は, -以下のパスを設定します. -[EV3 Actuator]のFilePath -C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\unity_mmap.bin -[EV3 Sensor]のFilePath -C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\athrill_mmap.bin -以上でMMAPの設定は終わりです.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/MMAP用Unity設定 UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Player」 -Other SettingのScripting Define Symbols にVDEV_IO_MMAPと設定します. -MMAP用パラメータ設定 ※なお,このページで紹介しているUnity画面の画像はWindows版のものです -HierarchyビューでRobot配下のRoboModelを選択してください. -すると画面右のInspectorビューに[Io Writer (Script)]と[Io Reader (Script)]の項目が表示されます. -インポート直後ですと,[Io Writer (Script)] と [Io Reader (Script)]の Filepath は空白です. -ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します. -MMAPファイル自体は,以下の2ファイルがapp.cと同じフォルダに含まれています. -athrill_mmap.bin unity_mmap.bin unity_mmap.bin の絶対ファイルパスを,[Io Writer (Script)]のFilepathに設定してください(設定例:下図). -athrill_mmap.bin の絶対ファイルパスを,[Io Reader (Script)]のFilepathに設定してください(設定例:下図). -例えば,v850版を使用するという前提でev3rt-athrill-v850e2mのローカルリポジトリが, -C:\project\hakoniwaにあり,実行したいアプリケーションのフォルダがline_traceの場合は, -以下のパスを設定します. -[Io Writer (Script)]のFilePath -C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\unity_mmap.bin -[Io Reader (Script)]のFilePath -C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\athrill_mmap.bin -以上でMMAPの設定は終わりです.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/UDP用Unity設定 UnityとathrillをUDPで通信する場合は,Unity側で以下の設定を行います. -HierarchyビューでRobot配下のRoboModel_3を選択してください. -すると画面右のInspectorビューに[EV3 Motor (Script)]の項目が表示されます. -表示されたら,項目内のプロパティMax Diff Timeを40000に変更します. -UDP用パラメータ設定 UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります. -※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です. -説明する上でのIPアドレスの構成例 Unity側のIPアドレス:192.168.11.32 -athrill側のIPアドレス:192.168.11.20 -なお,IPアドレスの確認方法は以下のやり方でわかります. -お使いのPCがLinux/WSLの場合 ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します. -$ ifconfig eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96 inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0 inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) お使いのPCがWindowsの場合 Windows PowerShell を開いて,ipconfigを叩きます. -&gt; ipconfig Windows IP 構成 イーサネット アダプター イーサネット: リンクローカル IPv6 アドレス.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/UDP用パラメータ設定 UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります. -※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です. -説明する上でのIPアドレスの構成例 Unity側のIPアドレス:192.168.11.32 -athrill側のIPアドレス:192.168.11.20 -なお,IPアドレスの確認方法は以下のやり方でわかります. -お使いのPCがLinux/WSLの場合 ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します. -$ ifconfig eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96 inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0 inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) お使いのPCがWindowsの場合 Windows PowerShell を開いて,ipconfigを叩きます. -&gt; ipconfig Windows IP 構成 イーサネット アダプター イーサネット: リンクローカル IPv6 アドレス.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/単体ロボット向けシミュレータ導入手順 開発プラットフォームとターゲットCPU 開発プラットフォームは,Windows/Linux/Mac です. -ターゲットCPUはV850/ARMの2種類が存在します. -ご自身の環境に合わせて,プラットフォームやターゲットCPUをご選択ください. -基本的な導入の流れは変わりありませんが,開発プラットフォームやターゲットCPU毎に -細かい箇所での導入手順が異なります. -対応するプラットフォーム/ターゲットCPUの導入手順をご確認ください. -Windows V850版 ARM版 Linux V850版 ARM版 Mac V850版(非対応です) ARM版単体ロボット向けシミュレータ導入手順(Linux/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/単体ロボット向けシミュレータ導入手順(Linux/ARM編) 導入の流れ athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定単体ロボット向けシミュレータ導入手順(Linux/V850編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/単体ロボット向けシミュレータ導入手順(Linux/V850編) 導入の流れ Rubyのインストール athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定単体ロボット向けシミュレータ導入手順(Mac/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/単体ロボット向けシミュレータ導入手順(Mac/ARM編) 導入の流れ athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定単体ロボット向けシミュレータ導入手順(Windows/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/単体ロボット向けシミュレータ導入手順(Windows/ARM編) 導入の流れ WSLのインストール athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定単体ロボット向けシミュレータ導入手順(Windows/V850編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/単体ロボット向けシミュレータ導入手順(Windows/V850編) 導入の流れ WSLのインストール Rubyのインストール athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定 \ No newline at end of file +箱庭https://toppers.github.io/hakoniwa/Recent content on 箱庭HugojaSat, 14 May 2022 13:26:38 +0900箱庭のアーキテクチャhttps://toppers.github.io/hakoniwa/getting-started/architecture-overview/Sat, 14 May 2022 13:26:27 +0900https://toppers.github.io/hakoniwa/getting-started/architecture-overview/<h3 id="前提環境">前提環境</h3> +<p><a href="https://github.com/toppers/hakoniwa-ros2sim">箱庭 ROS シミュレータ:hakoniwa-ros2sim</a> +を例題に解説するため、このチュートリアルが終わっておりプロジェクトが参照できることが望ましいです。</p> +<h3 id="ros向け箱庭のシステム構成">ROS向け箱庭のシステム構成</h3> +<p>ros2simのプロジェクトでは、Unity上のTortleBot3(tb3)をROS2のアプリから制御するシミュレーションを行います。 +以下にWindows/WSL2でのシステム構成を示しています。大まかには制御対象であるUnity上のtb3とそれを制御するtb3ctrlがROSで通信しています。</p> +<p><img alt="ROS向け箱庭のシステム構成" src="https://toppers.github.io/hakoniwa/hakoniwa/img/getting-started/ros2sim_overview.png"></p> +<h3 id="フォルダ構成">フォルダ構成</h3> +<p>githubからCloneしたプロジェクトのフォルダ構成は以下のようになっています。主に/ros2/workspace, /ros2/unityを扱えばよく、 +他のフォルダは本説明には含まれないため一旦無視してください。</p> +<ul> +<li>hakowani-ros2sim/ +<ul> +<li>ros2/ +<ul> +<li>workspace/ : ROSのワークスペース。Docker上にマウントされる</li> +<li>unity/tb3/ : Unityのプロジェクト</li> +</ul> +</li> +</ul> +</li> +</ul> +<p>workspace/はROSのワークスペースで、ここに制御用のROSアプリを作成します。src下にはいくつかアプリが入っていますが、 +tb3ロボットを制御しているのはtb3フォルダ下のソースとなります。 +プログラムを修正した場合は<code>bash build.bash</code>を行うことでビルドされアプリが更新されます。</p> +<p>unity/はUnityプロジェクトが入っており、Unity Editorからtb3フォルダを開くと読み込めます。 +cloneしたすぐの状態では、すべてのアセットは揃っておらずhako-install.bashによって必要なアセットのダウンロードや設定を行います。</p> +<h3 id="チュートリアルでの操作による挙動">チュートリアルでの操作による挙動</h3> +<ul> +<li><code>$ bash docker/pull-image.bash</code> : 本プロジェクトで用いるROSが入ったDockerイメージの取得を行っています。</li> +<li><code>$ bash docker/run.bash</code> : 取得したDockerのコンテナを作成しbashでログインします。またこの時カレントディレクトリにworkspace以下をマウントしています。</li> +<li><code># bash hako-install.bash</code> : unityフォルダにUnityのプロジェクトを展開すると共に、ROSと繋ぐための初期設定を行います。</li> +<li><code>(Terminal A)$ bash run.bash</code> : Dockerコンテナを起動しbashでログインします。</li> +<li><code>(Terminal A)# bash launch.bash</code> : UnityとROSで通信するための、ROS-TCP-Endpointを起動します。またUnityプロジェクトにはこのプログラムと対になる</li> +<li><code>(Terminal B)$ bash attach.bash</code> : Terminal Aで立ち上げたコンテナに入ります。</li> +<li><code>(Terminal B)# bash run.bash</code> : ロボットを制御するROSアプリのtb3ctrlを実行します。このプログラムのソースはworkspace/src/tb3/src/tb3ctrl.cppです。</li> +</ul> +<h3 id="heading"></h3>Technical Backgroundhttps://toppers.github.io/hakoniwa/en/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/background/<p>The Internet of Things (IoT) is the mixed martial art of information technology. +It is because IoT systems are composed of diverse and large numbers of information devices that are intricately intertwined through network communications, requiring many engineers from various technical fields to gather together and pool their wisdom to build an IoT system.</p> +<p>Consider, as an example, an autonomous driving system. +It crosses various technical domains as follows.</p>技術的背景https://toppers.github.io/hakoniwa/docs/background/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/background/<p>IoT (Internet of Things) は,情報技術の総合格闘技と言えます.<br> +IoTシステムは,多様かつ大量の情報機器が,ネットワーク通信を介して密接に絡み合っています. +様々な技術分野から多くの技術者が集まり,みんなで英知を結集してIoTシステムを構築する必要があります.</p> +<p>例えば自動運転システムの例を考えてみましょう.このように様々な技術領域を横断しています.</p> +<ul> +<li>組込み系 +<ul> +<li>自動運転の判断処理を実現するソフトウェアの開発</li> +<li>ECU間の通信機構の開発</li> +</ul> +</li> +<li>制御系 +<ul> +<li>メカやエレキを制御するECUハードウェアの開発</li> +</ul> +</li> +<li>IT・ネットワーク系 +<ul> +<li>Web UI・スマホアプリケーションの開発</li> +<li>ビッグデータの統計処理を担うクラウドサーバの管理・保守</li> +<li>車車間・機器間の効率的な通信制御の実現</li> +</ul> +</li> +<li>アプリケーション系 +<ul> +<li>配車管理や交通流管理アプリの開発</li> +</ul> +</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/back1.png " border="" width="600" /> +</figure> + +<p>このようなIoTシステムを構築する際の課題として,下記が考えられます.</p> +<ul> +<li>問題発生経路の複雑化 +<ul> +<li>全体結合しないと見えない問題が多数潜んでいる</li> +<li>様々な機器間の整合性を取れない</li> +</ul> +</li> +<li>原因調査の複雑化 +<ul> +<li>どこで何がおこっているのか調査困難</li> +<li>そもそもデバッグすること自体が難しい</li> +</ul> +</li> +<li>実証実験のコスト増 +<ul> +<li>実証実験は手軽に実施できない</li> +<li>各分野のエンジニアの総動員</li> +<li>手間,時間,費用がかかる</li> +</ul> +</li> +</ul> +<p>次に,ロボットを活用したIoTサービスの構築時に起こりえる課題を考えてみましょう.</p>Concepthttps://toppers.github.io/hakoniwa/en/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/concept/<p>The concept of Hakoniwa is <strong>&ldquo;Put mixed things as you like, and try various concepts with ease !&rdquo;</strong></p> +<p>We provide a virtual environment, which makes it easy to combine and demonstrate different software and services when developing IoT, automated driving systems, cloud robotics systems, etc.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/concept1.en.png " border="" width="700" /> +</figure> + +<p>We envision a use scenario where engineers from diverse fields gather to develop IoT systems. <br> +The &ldquo;box&rdquo; simulates the events and states of complex federated IoT systems according to the desired scenario. +And, by just replacing the &ldquo;assets&rdquo; that are the system components of Hakoniwa, the user can arbitrarily change the validation&rsquo;s target / abstraction level / accuracy.</p>コンセプトhttps://toppers.github.io/hakoniwa/docs/concept/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/concept/<p>箱庭のコンセプトは <strong>「箱の中に,様々なモノをみんなの好みで配置して,いろいろ試せる!」</strong> です.</p> +<p>IoTや自動運転システム,クラウドロボティクスシステムを開発する際に,仮想環境である箱庭上に様々なソフトウェアやサービスを持ち寄って,机上で実証実験できる場を提供します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/concept1.png " border="" width="700" /> +</figure> + +<p>想定している利用シーンは,多様な分野から技術者が集まるIoTシステムの開発現場です. <br> +IoTの各要素が連携される複雑なシステムの事象や状態を,「箱」の中ではシナリオに応じた同じ挙動が再現されるようにします. +そして,箱庭のシステム構成要素である「アセット」を差し替えることで,検証の対象/抽象度/レベルを任意に変更することができます. +また,システム環境の視点(評価観点)や抽象度を,各技術者の分野や立場に応じて切り替えられるようにします.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/concept2.png " border="" width="600" /> +</figure> + +<p>なお箱庭の語源は,名園や山水を模したミニチュアの庭園に由来します. +盆景や盆栽に類するもので,江戸時代後半から明治時代にかけて流行したといわれています.</p>Our Goalhttps://toppers.github.io/hakoniwa/en/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/aimat/<p>Our goal is to establish a <strong>simulation environment and ecosystem</strong> for engineers who develop/provide massive and complex IoT systems.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/aimat1.en.png " border="" width="700" /> +</figure> + +<p>Hakoniwa&rsquo;s target is an information system with various devices connected by a network. +We envision IoT applications in various fields, such as autonomous driving, logistics, and space development.</p> +<p>Hakoniwa targets the following users</p>目指すところhttps://toppers.github.io/hakoniwa/docs/aimat/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/aimat/<p>大規模かつ複雑なIoTシステムを開発/提供する技術者のための <strong>シミュレーション環境とエコシステム</strong> を構築することを目指しています.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/aimat1.png " border="" width="700" /> +</figure> + +<p>箱庭のターゲットは,様々な機器がネットワークで接続された情報システムです. +自動運転や物流,宇宙分野など,IoTの様々な分野を想定しています.</p> +<p>箱庭は,次の利用者のための環境です.</p> +<ul> +<li>システム開発者:IoTシステムとその構成要素を開発する技術者</li> +<li>サービス提供者:IoTを活用してシステムサービスの提供を進める技術者</li> +<li>箱庭アセットの開発者および提供者 +<ul> +<li>アセットとは,箱庭のシステム構成要素のことを指します.</li> +</ul> +</li> +</ul> +<p>箱庭プロジェクトの目指す強みと新しさとしては,IoTの各要素である箱庭アセットをそれぞれ連携させて,対象システムを<strong>任意の精度で検証可能</strong>とすることです. +そして,箱庭の利用者の技術領域や評価対象に応じて,アセットを差し替えることで,<strong>検証の対象/抽象度/レベルを任意に変更できる</strong>ようにします.</p>Hakoniwa Corehttps://toppers.github.io/hakoniwa/en/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/core/<p>The four core functions of Hakoniwa are as follows.</p> +<ol> +<li>Scheduling</li> +<li>Synchronization and Communication</li> +<li>Time Management</li> +<li>Asset Management</li> +</ol> +<p>Also, we believe that the following functional characteristics are essential for Hakoniwa&rsquo;s core functions.</p> +<ol> +<li>Componentization</li> +<li>Visualization</li> +<li>Event Driven</li> +<li>Automation</li> +</ol> +<p>The core functions and functional characteristics of Hakoniwa are still under design study in the WG while developing the <a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/">prototype model</a>. +We will add more details as we progress.</p>箱庭コア技術https://toppers.github.io/hakoniwa/docs/core/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/core/<p>箱庭の核となるカーネルは,次の4種類であると考えています.</p> +<ol> +<li>スケジューリング</li> +<li>同期・通信</li> +<li>時間管理</li> +<li>アセット管理</li> +</ol> +<p>また,箱庭コア機能が備えるべき重要な機能特性は,次のものがあると考えています.</p> +<ol> +<li>コンポーネント化</li> +<li>可視化</li> +<li>イベント駆動化</li> +<li>自動化</li> +</ol> +<p>箱庭のコア機能と機能特性については,<a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/">プロトタイプモデル</a>の開発を進めながら,WG内での設計検討を続けているところです. +詳細が固まりましたら,追って解説を加えていきます.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/core1.png " border="" width="700" /> +</figure>Underlying technologyhttps://toppers.github.io/hakoniwa/en/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/technical/<h3 id="toppers-kernel">TOPPERS Kernel</h3> +<p>Developed by the <a href="https://toppers.jp">TOPPERS Project</a>, it is an open-source real-time kernel that extends the standard profile of the µITRON4.0 specification. +It primarily targeted embedded systems that require high reliability, safety, and real-time performance.</p> +<p><a href="https://toppers.jp/"><img alt="TOPPERS" src="https://www.toppers.jp/imgs/logo.gif"></a></p> +<h3 id="athrill">Athrill</h3> +<p>The CPU instruction set simulator is the core of Hakoniwa. <br> +Members of Hokoniwa WG mainly develop it. It enables debugging and functional verification of the behavior of embedded microcontrollers and peripherals at the instruction level. Currently, V850/RH850 and ARMv7-A are mainly supported.</p>技術要素https://toppers.github.io/hakoniwa/docs/technical/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/technical/<h3 id="toppersカーネル">TOPPERSカーネル</h3> +<p><a href="https://toppers.jp">TOPPERSプロジェクト</a>により開発されている,μITRON4.0仕様のスタンダードプロファイルを拡張した,オープンソースのリアルタイムカーネルです. +主な適用対象は,高い信頼性・安全性・リアルタイム性を要求される組込みシステムです.</p> +<p><a href="https://toppers.jp/"><img alt="TOPPERS" src="https://www.toppers.jp/imgs/logo.gif"></a></p> +<h3 id="athrill">Athrill</h3> +<p>箱庭の核である,CPU命令セットシミュレータです. <br> +箱庭WGメンバが中心となって開発を進めています.組込みマイコンおよびペリフェラルの挙動を命令レベルでデバッグ・機能検証することができます.現在はV850/RH850およびARMv7-Aが主なサポート対象です.</p> +<p>TOPPERSライセンスのもと,オープンソースで開発を進めています.</p> +<ul> +<li><a href="https://github.com/toppers/athrill">https://github.com/toppers/athrill</a></li> +</ul> + + +<figure> + <a href="https://github.com/toppers/athrill "> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/athrill.png " border="" width="200" /> + </a> +</figure> + +<h3 id="mros">mROS</h3> +<p>ROS(Robot Operating System)の組込み向け軽量実行環境です.ホストPC上のROSマスタおよびROSノードに対する,組込みマイコンからの出版購読型通信を実現します.<a href="http://www.hal.ipc.i.u-tokyo.ac.jp">東京大学 情報理工学系研究科 システム情報第8研究室</a>が中心となって開発を進めています. <br> +<a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/multi-robot">複数ロボットの連携制御シミュレーション</a>のようなシステムでの活用を想定しています.</p> +<ul> +<li><a href="https://github.com/mROS-base">https://github.com/mROS-base</a></li> +</ul> + + +<figure> + <a href="https://github.com/mROS-base "> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/mROS.png " border="" width="300" /> + </a> +</figure> + +<h3 id="rdbox">RDBOX</h3> +<p>RDBOX (Robotics Developers BOX)は,ROSロボットやIoTに最適化した,Kubernetesクラスタとセキュアで拡張性の高いWi-Fiネットワークを自動構築するためのフレームワークです.シミュレーション環境と現実の作業環境をブリッジすることを目指しています.株式会社インテックの<a href="https://rdbox-intec.github.io/homepage_jp/">RDBOX Project</a>で開発されています. <br> +<a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/harmony-robot">ロボット間協調動作向けプロトタイプモデル</a>の構築において,箱庭との連携を進めています.</p>Roadmaphttps://toppers.github.io/hakoniwa/en/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/docs/roadmap/<p>Hokoniwa WG is working on &ldquo;big goals, little by little.&rdquo;</p> +<p>Our current main activity is to create <a href="https://toppers.github.io/hakoniwa/hakoniwa/en/prototypes">prototype models</a> to realize the concept and to examine the technology. +All of these R&amp;D results are released as OSS. +We desire continuous maturation of the core technologies and expansion of the various functions of Hakoniwa by sharing each prototype model and receiving feedback on it.</p> +<!-- raw HTML omitted --> +<!-- raw HTML omitted --> +<p>The Hakoniwa Project is engaged in research and development, first constructing and disseminating educational packages and then expanding into product development. +We have a big vision, but to be honest, we are somewhat short on the workforce. +We are looking for various technical personnel (especially those with knowledge of cloud technologies and visualization asset development) to help us grow Hakoniwa.</p>ロードマップhttps://toppers.github.io/hakoniwa/docs/roadmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/docs/roadmap/<p>箱庭は <strong>「でっかく語って少しずつ育てて」</strong> います.</p> +<p>現在のプロジェクトの活動の中心としては,コンセプトの実現と技術研鑽のために<a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes">プロトタイプモデル</a>を構築中です. +これらの研究開発は,すべてOSSとして公開しながら進めていきます. +皆さまにそれぞれのプロトタイプモデルをご利用いただき,そしてフィードバックを得ながら,箱庭コア技術の成熟と様々な機能拡充を進めていきたいと考えています.</p> +<p><img alt="roadmap" src="https://toppers.github.io/hakoniwa/hakoniwa/img/docs/roadmap1.png"></p> +<p>箱庭プロジェクトは,まずは教育用途でのパッケージ構築と普及を図っていますが,製品開発への展開も視野に入れて研究開発を進めています. +壮大な構想を掲げていますが,全くマンパワーは足りていないのが実情です. +箱庭の成長のためにも,特にクラウド技術や可視化アセット開発に知見をお持ちの方に参画いただきたいと考えています.</p> +<p>箱庭WGの狙いや趣旨にご賛同いただける方の参画をお待ちしています. +活動としては,月1回のオンラインでの定例会合と、年2回の技術検討合宿を実施しています. +また,日常的な議論や情報共有と開発にはSlack,GitHubおよびGoogle Driveを活用しています.</p> +<p>Slack等での議論に参加したい方,活動内容へのご要望をお持ちの方,コア技術や各アセットの開発などに参加したい方, +箱庭WGの活動で期待される技術成果を活用したい方,製品開発に展開してみたい方, +ぜひとも<a href="https://toppers.github.io/hakoniwa/hakoniwa/contact/">問合せ先</a>よりご連絡ください.</p>制御プログラムの変更方法https://toppers.github.io/hakoniwa/getting-started/app-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/app-customize/<h3 id="ソースコードの場所">ソースコードの場所</h3> +<p>今回のサンプルのtb3の制御プログラムは、 +<code>/ros2/workspace/src/tb3/src/tb3ctrl.cpp</code> に配置されています。 +詳細は実際のコードを見て頂くとして主要な部分を紹介していきます。ページの最後にコードの抜粋を示します。</p> +<h3 id="制御プログラムの概要">制御プログラムの概要</h3> +<p>Unity上のロボットと制御プログラムとは、ROSで通信しています。 +Unity上のロボットからはレーザースキャナから周囲360°の距離データが送られてきます。制御プログラムからはロボットの移動量を送信します。</p> +<p>この制御プログラムは、壁沿いに周回するような制御を行っています。do_forwardで前方の距離が一定以上あれば前進し、turn_rightでは右側の距離が一定以上であれば旋回します。</p> +<p>このように制御部分は非常に小さく、他はROSで通信するためのボイラープレートとなっています。 +制御部分のパラメータを変えることで、自由にロボットを制御することができます。いろいろと書き換えて試してみてください。 +なお、コードを書き換えた後は、Dockerのコンテナ内でbuild.bashを実行してプログラムのコンパイルを行ってください。</p> +<h3 id="制御プログラムの抜粋">制御プログラムの抜粋</h3> +<pre tabindex="0"><code>// ロボットのレーザースキャナから受け取る360°周囲の距離データ +typedef struct { + double ranges[360]; +} ScanDataType; +static ScanDataType scan_data; + +// レーザースキャナから受け取ったデータのROSのコールバック関数。取得したデータをscan_data変数に保持する。 +static void scanCallback(const sensor_msgs::msg::LaserScan::SharedPtr msg) { + int i; + for (i = 0; i &lt; 360; i++) { + scan_data.ranges[i] = msg-&gt;ranges[i]; + } + return; +} + +// Unity上のロボットの制御値 +static geometry_msgs::msg::Twist cmd_vel; + +static float get_forward_distance(void) { + ... // 前方向の一定角度のうち一番近い距離を取得 +} + +static float get_right_distance(void) { + ... // 右側の一定角度のうち一番近い距離を取得 +} + +static bool do_forward(void) { + ... // 前方向に移動指示。cmd_vel.linear.x(前後方向)を増加させ送信 +} + +static bool turn_right(void) { + ... // 右転回を指示。cmd_vel.angular.z値(ロボットの垂直軸回転角)を増加して送信 +} + +static void do_control(void) { + ... // 周囲の距離に応じて処理を判定する +} + +using namespace std::chrono_literals; + +int main(int argc, char **argv) { + char buffer[3][4096]; + + // UnityとROSで連携するためのTOPIC名の設定 + if (argc &gt; 1) { + sprintf(buffer[0], &#34;%s_tb3_node&#34;, argv[1]); + sprintf(buffer[1], &#34;%s_cmd_vel&#34;, argv[1]); + sprintf(buffer[2], &#34;%s_scan&#34;, argv[1]); + printf(&#34;START: %s\n&#34;, argv[1]); + } + else { + sprintf(buffer[0], &#34;tb3_node&#34;); + sprintf(buffer[1], &#34;cmd_vel&#34;); + sprintf(buffer[2], &#34;scan&#34;); + printf(&#34;START\n&#34;); + } + rclcpp::init(argc, argv); + + // ROSのPublisher, Subscriberの生成 + auto node = rclcpp::Node::make_shared(buffer[0]); + auto publisher = + node-&gt;create_publisher&lt;geometry_msgs::msg::Twist&gt;(buffer[1], 1); + auto subscriber = node-&gt;create_subscription&lt;sensor_msgs::msg::LaserScan&gt;( + buffer[2], 1, scanCallback); + + rclcpp::WallRate rate(10ms); + + // 制御ループ + while (rclcpp::ok()) { + do_control(); + publisher-&gt;publish(cmd_vel); + + rclcpp::spin_some(node); + rate.sleep(); + } + return 0; +} +</code></prMicrocomputer-controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/single-robot/<p>This is a Hakoniwa prototype model with one SBC, designed based on the challenges of <a href="https://www.etrobo.jp/">ET Robocon</a>. +This prototype can verify by linking the program&rsquo;s behavior on the embedded microcontroller with the robot&rsquo;s behavior.</p> +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Study on how to integrate between physical simulators and microcomputer simulators</li> +<li>Study of time synchronization between different simulators</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Promote Hakoniwa to ET Robot contenst participants (PR activities)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelA.en.png " border="" width="700" /> +</figure> + +<h3 id="installation--usage">Installation &amp; Usage</h3> +<p>A trial package with minimal configuration and procedures is available in the GitHub repository below. +We encourage you to try it out.</p>マイコン制御ロボットシミュレーションhttps://toppers.github.io/hakoniwa/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/single-robot/<p>単体のSBCで構成される単体ロボットを対象とした箱庭プロトタイプモデルです.<a href="https://www.etrobo.jp/">ETロボコン</a>を題材としています. +組込みマイコン上のプログラムの振る舞いを,ロボット上の挙動と連携させて検証を進めることができます.</p> +<h3 id="技術研鑽視点での狙い">技術研鑽視点での狙い</h3> +<ul> +<li>物理シミュレータとマイコンシミュレータ間の連携方法の検討</li> +<li>異なるシミュレータ間の時間同期の検討</li> +</ul> +<h3 id="その他の狙い">その他の狙い</h3> +<ul> +<li>ETロボコンユーザ層に箱庭を広める(広報活動)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelA.png " border="" width="700" /> +</figure> + +<h3 id="導入方法と使用方法">導入方法と使用方法</h3> +<p>最小の構成と手順で単体ロボット向けシミュレータを試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください.</p> +<ul> +<li><a href="https://github.com/toppers/hakoniwa-single_robot">toppers/hakoniwa-single_robot: 箱庭プロトタイプモデルA:単体ロボット向けシミュレータ</a></li> +</ul> +<h3 id="動作例のデモ">動作例のデモ</h3> +<p><img alt="modelAdemo" src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelAdemo.gif"></p> +<p><img alt="modelAdemo1" src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelAdemo1.gif"></p> +<p><img alt="modelAdemo2" src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelAdemo2.gif"></p> +<hr> +<h4 id="謝辞特記事項">謝辞・特記事項:</h4> +<p>Unityパッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉﨑涼志さん,木村明美さん,千葉純平さんにご協力いただきました.</p> +<p>HackEVのUnityアセットは,ETロボコン実行委員会より提供いただいたデータを基に作成しています.実行委員会の皆さまに深く感謝いたします.<br> +ただし本アセットはETロボコンの本番環境とは異なりますので,大会に参加予定の方はご注意ください.また,本アセットは,個人利用または教育利用に限定してご利用ください.</p>コースの変更方法https://toppers.github.io/hakoniwa/getting-started/env-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/env-customize/<h3 id="執筆中">執筆中</h3>ROS controlled robot simulationhttps://toppers.github.io/hakoniwa/en/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/ros-robot/<p>This prototype model uses ROS/ROS2 to collaborate with multiple and single robots. +This prototype is lighter than Gazebo, often used with ROS, and allows for easy customization of robots and environments in Unity and the introduction of URDF format models.</p> +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Running simulations using ROS, which is commonly used for robot control</li> +<li>Study on how to coordinate with other robots</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Introduce robots controlled by ROS to create a simulation environment that mixes multiple control mechanisms</li> +</ul> +<h3 id="installation--usage">Installation &amp; Usage</h3> +<p>A trial package with minimal configuration and procedures is available in the GitHub repository below. +We encourage you to try it out.</p>ROS制御ロボットシミュレーションhttps://toppers.github.io/hakoniwa/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/ros-robot/<p>ロボットの制御にROS/ROS2を用いた箱庭プロトタイプモデルです.単体のロボットだけでなく,複数のロボットの連携動作も可能です. +ROSで一般的に用いられているGazeboよりも軽量でロボットや環境もUnity上で容易にカスタマイズすることができ、URDF形式のモデルの導入も行うことができます。</p> +<h3 id="技術研鑽視点での狙い">技術研鑽視点での狙い</h3> +<ul> +<li>一般的なロボット制御に用いられているROSも含めたシミュレーションの実行</li> +<li>複数のロボットを連携させたシミュレーションの実行</li> +</ul> +<h3 id="その他の狙い">その他の狙い</h3> +<ul> +<li>ROSのロボットも導入可能とすることで、複数の制御機構が混在したシミュレーション環境を実現する</li> +</ul> +<h3 id="導入方法と使用方法">導入方法と使用方法</h3> +<p>最小の構成と手順で試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください.</p> +<ul> +<li><a href="https://github.com/toppers/hakoniwa-ros2sim">toppers/hakoniwa-ros2sim: 箱庭 ROS シミュレータ</a></li> +</ul> +<h3 id="動作例のデモ">動作例のデモ</h3> +<p><img alt="modelROSdemo" src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelROS.gif"></p> +<hr> +<h4 id="謝辞特記事項">謝辞・特記事項:</h4> +<p>TurtleBot3 の Unity パッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉崎涼志さん,木村明美さんにご協力いただきました.</p> +<p>TurtleBot3 のUnity アセットは,株式会社ロボティズ様より提供いただいたデータを基に作成しています.ご協力いただき深く感謝いたします.</p>ロボットのカスタマイズ方法https://toppers.github.io/hakoniwa/getting-started/robot-customize/Sat, 14 May 2022 13:26:38 +0900https://toppers.github.io/hakoniwa/getting-started/robot-customize/<h3 id="執筆中">執筆中</h3>Simulation of collaborative operation of multiple robotshttps://toppers.github.io/hakoniwa/en/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/multi-robot/<p>This prototype model simulates multiple robots and control programs in the same environment. +This prototype uses Unity&rsquo;s Photon library to synchronize multiple Unity environments and even time synchronization among assets and uses VR technology to dive into the simulation environment for verification.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBoverview.en.png " border="" width="700" /> +</figure> + +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Study of methods of collaboration in multiple environments (e.g., simulation time synchronization)</li> +<li>Study on how visualize communication among Hakoniwa assets (including ROS/ROS2 collaboration)/ROS2連携含む)</li> +<li>Study of mechanisms to augment Hakoniwa assets</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Promote Hakoniwa to the ROS user base (PR activities)</li> +</ul> +<h3 id="installation--usage">Installation &amp; Usage</h3> +<p>Various demos are available at the following Github repository. Try them out.</p>複数ロボットの連携制御シミュレーションhttps://toppers.github.io/hakoniwa/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/multi-robot/<p>複数のロボット,複数の制御プログラムによるシミュレーションを同じ環境で行うプロトタイプモデルです. +UnityのPhotonライブラリを用いて複数のUnity環境の同期を行っており,加えてアセット間の時間同期も実現しています. +またVRによるシミュレーション環境へのダイブも試行しています.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBoverview.png " border="" width="700" /> +</figure> + +<h3 id="技術研鑽視点での狙い">技術研鑽視点での狙い</h3> +<ul> +<li>マルチ環境での連携方法検討(シミュレーション時間同期等)</li> +<li>箱庭アセット間の通信可視化方法の検討(ROS/ROS2連携含む)</li> +<li>箱庭アセットの仕組み検討</li> +</ul> +<h3 id="その他の狙い">その他の狙い</h3> +<ul> +<li>ROSユーザ層に箱庭を広める(広報活動)</li> +</ul> +<h3 id="導入方法と使用方法">導入方法と使用方法</h3> +<p>以下のGithubリポジトリにて,各種デモを公開しています.ぜひお試し下さい.</p> +<p>‐ <a href="https://github.com/toppers/hakoniwa-ros-multiplay">toppers/hakoniwa-ros-multiplay</a></p> +<h3 id="動作例のデモ">動作例のデモ</h3> +<ul> +<li>photonによる複数ロボットの連携 +<video controls src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBdemo1.mp4" > +</li> +<li>Oculus Questとの接続の様子 +<video controls src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBdemo2.mp4" > +</li> +<li>VRで箱庭内に入った様子 +<video controls src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBdemo3.mp4" > +</li> +</ul>Simulation of inter-robot cooperative operationhttps://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/<p>This is a Hakoniwa prototype model for integration of cloud computing and robotics.</p> +<h3 id="design-intent-from-a-technical-study-perspective">Design intent from a technical study perspective</h3> +<ul> +<li>Study of specific methods of cloud computing integration</li> +<li>Study on how to coordinate with other robots (challenge to more complex robot operation/interference)</li> +<li>Study of mechanisms to augment Hakoniwa assets</li> +</ul> +<h3 id="other-design-intent">Other design intent</h3> +<ul> +<li>Interaction with RDBOX ( establish a track record of Hakoniwa as a development virtual environment)</li> +<li>Promote Hakoniwa to the RDBOX user base (PR activities)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelC.en.png " border="" width="700" /> +</figure> + +<p>The prototype model is currently under development. So please wait for its release.</p>ロボット間協調動作シミュレーションhttps://toppers.github.io/hakoniwa/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/harmony-robot/<p>クラウドとロボティクスとの連携を目指した箱庭プロトタイプモデルです.</p> +<h3 id="技術研鑽視点での狙い">技術研鑽視点での狙い</h3> +<ul> +<li>クラウド連携方法検討</li> +<li>ロボット間の連携方法検討(より複雑なロボットの動き/干渉に挑戦)</li> +<li>箱庭アセットを増やす仕組みの検討</li> +</ul> +<h3 id="その他の狙い">その他の狙い</h3> +<ul> +<li>RDBOX連携(開発支援仮想環境としての箱庭の実績作り)</li> +<li>RDBOXユーザ層に箱庭を広める(広報活動)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelC.png " border="" width="700" /> +</figure> + +<p>現在,本プロトタイプモデルの実現に向けて鋭意開発中です.公開までしばしお待ちください.</p>Repository Listhttps://toppers.github.io/hakoniwa/en/repositories/Wed, 26 Aug 2020 15:09:42 +0900https://toppers.github.io/hakoniwa/en/repositories/<h3 id="hakoniwa">Hakoniwa</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa">hakoniwa</a></td> + <td style="text-align: left">Repository for general support handling and content management of this website</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-single_robot">hakoniwa-single_robot</a></td> + <td style="text-align: left">Package that can try <a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/single-robot">Hakoniwa Prototype Model A: Simulator for Single Robot</a> with minimum configuration and procedures</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-ros2sim">hakoniwa-ros2sim</a></td> + <td style="text-align: left">Environment for easy simulation of ROS 2 programs on Hakoniwa</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-core">hakoniwa-core</a></td> + <td style="text-align: left">Repository for prototype development of <a href="https://toppers.github.io/hakoniwa/hakoniwa/docs/core">Hakoniwa Core Function</a></td> + </tr> + </tbody> +</table> +<h3 id="athrill">Athrill</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill">athrill</a></td> + <td style="text-align: left">Athrill core (target-independent part)</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-device">athrill-device</a></td> + <td style="text-align: left">athrill device for external shared library.</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-target-v850e2m">athrill-target-v850e2m</a></td> + <td style="text-align: left">v850e2m Target dependencies for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-target-ARMv7-A">athrill-target-ARMv7-A</a></td> + <td style="text-align: left">ARMv7-A Target dependencies for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-target-rh850f1x">athrill-target-rh850f1x</a></td> + <td style="text-align: left">rh850f1x Target dependencies for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-gcc-v850e2m">athrill-gcc-v850e2m</a></td> + <td style="text-align: left">gcc package for Athrill V850E2M target</td> + </tr> + </tbody> +</table> +<h3 id="toppers-kernel">TOPPERS kernel</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/ev3rt-athrill-v850e2m">ev3rt-athrill-v850e2m</a></td> + <td style="text-align: left">V850E2M version of TOPPERS/EV3RT platform for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/ev3rt-athrill-ARMv7-A">ev3rt-athrill-ARMv7-A</a></td> + <td style="text-align: left">Arm v7-A version of TOPPERS/EV3RT platform for Athrill</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/asp-athrill-mbed">asp-athrill-mbed</a></td> + <td style="text-align: left">Package of TOPPERS/ASP kernel and Mbed library for Athrill</td> + </tr> + </tbody> +</table> +<h3 id="unity">Unity</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-Unity-Package">hakoniwa-Unity-Package</a></td> + <td style="text-align: left">Unity Asset Package for Hakoniwa</td> + </tr> + </tbody> +</table> +<h3 id="mros">mROS</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/mROS-base/mROS">mROS</a></td> + <td style="text-align: left">A lightweight runtime environment of ROS 1 nodes onto embedded devices</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/mROS-base/mros2">mROS 2</a></td> + <td style="text-align: left">A lightweight runtime environment of ROS 1 nodes onto embedded devices</td> + </tr> + </tbody> +</table> +<h3 id="samples">Samples</h3> +<table> + <thead> + <tr> + <th style="text-align: left">Links</th> + <th style="text-align: left">Outline</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-scenario-samples">hakoniwa-scenario-samples</a></td> + <td style="text-align: left">Sample collection of Hakoniwa behavior scenarios</td> + </tr> + </tbody> +</table>リポジトリ一覧https://toppers.github.io/hakoniwa/repositories/Wed, 26 Aug 2020 15:09:42 +0900https://toppers.github.io/hakoniwa/repositories/<h3 id="箱庭本体">箱庭本体</h3> +<table> + <thead> + <tr> + <th style="text-align: left">略称・リンク</th> + <th style="text-align: left">概要</th> + <th style="text-align: left">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa">hakoniwa</a></td> + <td style="text-align: left">全般的なサポート対応と本Webサイトのコンテンツ管理のためのリポジトリ</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-single_robot">hakoniwa-single_robot</a></td> + <td style="text-align: left"><a href="https://toppers.github.io/hakoniwa/hakoniwa/prototypes/single-robot">箱庭プロトタイプモデルA:単体ロボット向けシミュレータ</a>を最小の構成・手順で試行できるパッケージ</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-ros2sim">hakoniwa-ros2sim</a></td> + <td style="text-align: left">箱庭上で ROS 2 プログラムを手軽にシミュレーションできる環境</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-core">hakoniwa-core</a></td> + <td style="text-align: left"><a href="https://toppers.github.io/hakoniwa/hakoniwa/docs/core">箱庭コア機能</a>の試作開発用リポジトリ</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-document">hakoniwa-document</a></td> + <td style="text-align: left">TOPPERS/箱庭 利用者向けの公式ドキュメント</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-core-cpp-client">hakoniwa-core-cpp-client</a></td> + <td style="text-align: left"><a href="https://toppers.github.io/hakoniwa/hakoniwa/docs/core">箱庭コア機能</a>のC言語API</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-conductor">hakoniwa-conductor</a></td> + <td style="text-align: left">分散環境における箱庭実現のための調停プロセス</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-bridge">hakoniwa-bridge</a></td> + <td style="text-align: left">リアル(エッジ)とバーチャル(箱庭)を接続するための通信モジュール</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-webserver">hakoniwa-webserver</a></td> + <td style="text-align: left">箱庭PDUをWebSocket経由でブラウザ上で可視化</td> + <td style="text-align: left"></td> + </tr> + </tbody> +</table> +<h3 id="athrill">Athrill</h3> +<table> + <thead> + <tr> + <th style="text-align: left">略称・リンク</th> + <th style="text-align: left">概要</th> + <th style="text-align: left">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill">athrill</a></td> + <td style="text-align: left">Athrill本体(ターゲット非依存部)</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-device">athrill-device</a></td> + <td style="text-align: left">外部デバイス連携のためのgRPCライブラリ</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-target-v850e2m">athrill-target-v850e2m</a></td> + <td style="text-align: left">Athrill V850E2Mターゲット依存部</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-target-ARMv7-A">athrill-target-ARMv7-A</a></td> + <td style="text-align: left">Athrill ARMv7-Aターゲット依存部</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-target-rh850f1x">athrill-target-rh850f1x</a></td> + <td style="text-align: left">Athrill RH850F1xターゲット依存部</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/athrill-gcc-v850e2m">athrill-gcc-v850e2m</a></td> + <td style="text-align: left">Athrill V850E2Mターゲット対応のgccパッケージ</td> + <td style="text-align: left"></td> + </tr> + </tbody> +</table> +<h3 id="toppers-kernel">TOPPERS kernel</h3> +<table> + <thead> + <tr> + <th style="text-align: left">略称・リンク</th> + <th style="text-align: left">概要</th> + <th style="text-align: left">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/ev3rt-athrill-v850e2m">ev3rt-athrill-v850e2m</a></td> + <td style="text-align: left">TOPPERS/EV3RTプラットフォームのAthrill向けV850E2M版</td> + <td style="text-align: left">ASP3カーネルを代用</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/ev3rt-athrill-ARMv7-A">ev3rt-athrill-ARMv7-A</a></td> + <td style="text-align: left">TOPPERS/EV3RTプラットフォームのAthrill向けARMv7-A版</td> + <td style="text-align: left">ASP3カーネルを代用</td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/asp-athrill-mbed">asp-athrill-mbed</a></td> + <td style="text-align: left">Athrill向けTOPPERS/ASPカーネルとmbedライブラリのパッケージ</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/asp3-athrill-v850e2m">asp3-athrill-v850e2m</a></td> + <td style="text-align: left">Athrill向けTOPPERS/ASP3カーネルのパッケージ</td> + <td style="text-align: left"></td> + </tr> + </tbody> +</table> +<h3 id="unity">Unity</h3> +<table> + <thead> + <tr> + <th style="text-align: left">略称・リンク</th> + <th style="text-align: left">概要</th> + <th style="text-align: left">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-Unity-Package">hakoniwa-Unity-Package</a></td> + <td style="text-align: left">箱庭向けのUnityアセット・パッケージ</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-unity-drone-model">hakoniwa-unity-drone-model</a></td> + <td style="text-align: left">PX4と連携可能なUnityドローンシミュレータ</td> + <td style="text-align: left"></td> + </tr> + </tbody> +</table> +<h3 id="mros">mROS</h3> +<table> + <thead> + <tr> + <th style="text-align: left">略称・リンク</th> + <th style="text-align: left">概要</th> + <th style="text-align: left">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/mROS-base/mROS">mROS</a></td> + <td style="text-align: left">組込みデバイス向けROS 1ノード軽量実行環境</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/mROS-base/mros2">mROS 2</a></td> + <td style="text-align: left">組込みデバイス向けROS 2ノード軽量実行環境</td> + <td style="text-align: left"></td> + </tr> + </tbody> +</table> +<h3 id="samples">Samples</h3> +<table> + <thead> + <tr> + <th style="text-align: left">略称・リンク</th> + <th style="text-align: left">概要</th> + <th style="text-align: left">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-scenario-samples">hakoniwa-scenario-samples</a></td> + <td style="text-align: left">箱庭の動作シナリオのサンプル集</td> + <td style="text-align: left"></td> + </tr> + <tr> + <td style="text-align: left"><a href="https://github.com/toppers/hakoniwa-px4sim">hakoniwa-px4sim</a></td> + <td style="text-align: left">PX4と連携可能なドローンのプラントモデル用シミュレーション環境</td> + <td style="text-align: left"></td> + </tr> + </tbody> +</table>SNS & Contacthttps://toppers.github.io/hakoniwa/en/contact/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/en/contact/<h3 id="invitation-to-hakoniwa-wg">Invitation to Hakoniwa WG</h3> +<p>We welcome the participation of those who agree with the purpose of the Hakoniwa WG. +If you would like to participate in discussions on Slack, have requests for our activities, develop core technologies and assets, or utilize the technical outcomes of the Hakoniwa WG and employ them in product development, etc., don&rsquo;t hesitate to get in touch with us.</p> +<pre tabindex="0"><code>Email: hakoniwa.toppers_at_gmail.com (Replace _at_ with @) +</code></prSNS・問合せ先https://toppers.github.io/hakoniwa/contact/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/contact/<h3 id="箱庭の活動への参画のお誘い">箱庭の活動への参画のお誘い</h3> +<p>箱庭WGの狙いや趣旨にご賛同いただける方の参画をお待ちしています。 +Slack等での議論に参加したい方、活動内容へのご要望をお持ちの方、コア技術や各アセットの開発などに参加したい方、 +箱庭WGの活動で期待される技術成果を活用したい方、製品開発に展開してみたい方、 +ぜひともお声がけください。</p> +<pre tabindex="0"><code>Email: hakoniwa.toppers_at_gmail.com (_at_ を@ に置き換えてください) +</code></pre><p><a href="https://toppers.github.io/hakoniwa/hakoniwa/doc/hakoniwa-flyer2022.pdf">箱庭WGの活動紹介(2022年度版)</a>もご参照ください。</p> +<h4 id="箱庭フォーラム利用方法について質問したり技術的な相談をしたい">箱庭フォーラム:利用方法について質問したり、技術的な相談をしたい</h4> +<p>箱庭に関わる開発者や技術者、ユーザのためのSNSになることを目指して、<a href="https://github.com/toppers/hakoniwa/discussions">GitHub Discussions</a>を運用しています。</p> +<p><a href="https://toppers.github.io/hakoniwa/prototypes/">箱庭プロトタイプモデル</a>の導入・利用にあたって不明な点や技術的な質問(Athrillを含む要素技術単体に関する質問も歓迎)や、箱庭の活用方法のアイデアや関係する全般的な話題の提供も歓迎します。</p> +<p>次のカテゴリを用意していますので、適切と思われるものを選択して投稿してください。</p> +<ul> +<li><a href="https://github.com/toppers/hakoniwa/discussions/categories/announcements">Announcements</a>: 箱庭メンバからの最新情報のお知らせ</li> +<li><a href="https://github.com/toppers/hakoniwa/discussions/categories/general">General</a>: 箱庭や要素技術に関する全般的な話題の提供 a.k.a 雑談場所</li> +<li><a href="https://github.com/toppers/hakoniwa/discussions/categories/idea-request">Idea&amp;Request</a>: 箱庭こう使えない?こう使いたい!のアイデアを話し合いましょう</li> +<li><a href="https://github.com/toppers/hakoniwa/discussions/categories/inquiry">Inquiry</a>: 箱庭WGへの関する問合せや活動参画の希望など(技術的な質問は&quot;Q&amp;A&quot;をご利用ください)</li> +<li><a href="https://github.com/toppers/hakoniwa/discussions/categories/q-a">Q&amp;A</a>: 技術的な質問(Athrillを含む要素技術単体に関する質問も歓迎!箱庭プロトタイプモデルの試用で発生したトラブルなどお知らせください)</li> +</ul> +<h4 id="箱庭もくもく会箱庭の開発をしてみたりあれこれ雑談してみたい">箱庭もくもく会:箱庭の開発をしてみたり、あれこれ雑談してみたい</h4> +<p>箱庭のもくもく会を不定期に開催しています。connpassにて一般公開しており、箱庭WGの開発メンバも参加しています。ご興味のある方は、下記グループページの「メンバーになる」をクリックしてグループに参加いただくと開催情報がキャッチアップできます。<br> +<a href="https://hakoniwa.connpass.com/">https://hakoniwa.connpass.com/</a></p> +<p>もくもく会とは、各自のやりたいことや知りたいことを持ち寄って、まず自己紹介とやりたいことの表明を行い、それぞれ自由にやりたいことを進めて、そして最後にはもくもくの進捗を共有する会です。</p> +<ul> +<li>箱庭のことはいろいろなイベントで見聞きして気になっているんだけど,,,</li> +<li>よし動かしてみよう!と思っているけども幾数月,,,</li> +<li>箱庭はさておき Unity x ROS がとっても気になる!!</li> +</ul> +<p>という方々、ぜひともご参加ください。<br> +特に定まった議題などはありませんので、とりま開発メンバと雑談してみたい方々の参加も大歓迎です。</p> +<h4 id="wgメンバとして参画したい">WGメンバとして参画したい</h4> +<p>箱庭WGは、<a href="https://toppers.jp/">TOPPERSプロジェクト</a>のワーキンググループとして活動しています。<br> +箱庭WGのメンバに加入される場合は、原則としてTOPPERSプロジェクトへの入会もお願いしています。 +また、TOPPERSプロジェクト会員向けの限定イベントの開催や、箱庭WG活動成果の早期公開なども検討しています。</p>ショーケースhttps://toppers.github.io/hakoniwa/showcase/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/showcase/<h3 id="箱庭コンセプトムービー2021">「箱庭」コンセプトムービー2021</h3> +<p>2021年6月時点での箱庭の成果物で実現できることを、デモ動画としてまとめました。</p> + +<iframe width="560" height="315" src="https://www.youtube.com/embed/89PjrCqILj0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> + + +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/showcase/#top">このページの先頭に戻る</a></p> +<h3 id="シミュレーション環境箱庭を使ったrosロボットのci継続的インテグレーション">シミュレーション環境:箱庭を使ったROSロボットのCI(継続的インテグレーション)</h3> +<p>クラウドネイティブ環境上に構築した「箱庭」と合わせて、コミュニティ版GitLab(MIT Licence)が提供する、ソースコード管理機能及び、CI Runner機能を使ってCI(Continuous Integration,継続的インテグレーション)を実現しています。</p> +<p>クラウドネイティブ環境はOSSである<a href="https://github.com/rdbox-intec/rdbox">RDBOX(Robotics Developer BOX)</a>を使って構築しています。</p> + +<iframe width="560" height="315" src="https://www.youtube.com/embed/9OTbq5J1QH0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> + + +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/showcase/#top">このページの先頭に戻る</a></p> +<h3 id="monoistでの連載">MONOistでの連載</h3> +<p>モノづくりスペシャリストのための情報ポータル「<a href="https://monoist.atmarkit.co.jp/">MONOist</a>」に連載記事を寄稿しています。<br> +「<a href="https://monoist.atmarkit.co.jp/mn/series/23683/">仮想環境を使ったクラウド時代の組み込み開発のススメ</a>」という連載タイトルにて、箱庭の活動を織り交ぜながらこれからのIoTシステム開発の姿を紹介しています。ぜひご覧ください。</p> +<ul> +<li>第1回「<a href="https://monoist.atmarkit.co.jp/mn/articles/2105/25/news005.html">IoTシステムの開発はなぜ難しいのか、ITと組み込みの相克を克服せよ</a>」 (2021年05月25日 10時00分 公開)</li> +<li>第2回「<a href="https://monoist.atmarkit.co.jp/mn/articles/2106/28/news012.html">日本の伝統を受け継ぐ仮想環境「箱庭」でIoTシステムの統合開発を加速する</a>」 (2021年06月28日 10時00分 公開)</li> +<li>第3回「<a href="https://monoist.atmarkit.co.jp/mn/articles/2107/28/news016.html">組み込みエンジニアも知っておきたい「クラウドネイティブ」とは</a>」 (2021年07月28日 10時00分 公開)</li> +<li>第4回「<a href="https://monoist.atmarkit.co.jp/mn/articles/2108/30/news016.html">クラウドネイティブで実現する、シミュレーションと実機テストのボーダーレス開発</a>」 (2021年08月30日 10時00分 公開)</li> +<li>第5回「<a href="https://monoist.atmarkit.co.jp/mn/articles/2109/29/news006.html">誰もが手軽にROSロボット/IoTシステムの開発に取り組める「RDBOX」とは</a>」 (2021年09月29日 10時00分 公開)</li> +</ul> +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/showcase/#top">このページの先頭に戻る</a></p>シミュレーションに関するチューニングhttps://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/<h1 id="変更可能なパラメータ">変更可能なパラメータ</h1> +<h2 id="ev3のパラメータについて">EV3のパラメータについて</h2> +<hr> +<p>今回のシミュレーション環境(Unity側)にはいくつかパラメータがありますので,その説明を行います.</p> +<p>まず,パラメータを参照するには,Hierarchyビューで,「EV3」を選択してください(下図).</p> +<p><a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F11a57fef-9e2d-e0a0-ef76-af5f71fc5d09.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=2fdf76b9af97446c26fe08b5e484d631"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F11a57fef-9e2d-e0a0-ef76-af5f71fc5d09.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=2fdf76b9af97446c26fe08b5e484d631"></a></p> +<p>すると,InspectorビューにEV3のパラメータが表示されます.</p> +<p><a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F835e61c2-0ec6-b955-3e32-01ba535a1860.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=34989dc74c297f1639308d77c4282ba6"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F835e61c2-0ec6-b955-3e32-01ba535a1860.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=34989dc74c297f1639308d77c4282ba6"></a></p> +<p>以下,変更可能なパラメータを説明します(説明されていないものは変更しないでください). +※これらのパラメータは,シミュレーション実行時に動的に変更も可能なものもあります.</p> +<h2 id="ev3-actuatorscript">EV3 Actuator(Script)</h2> +<hr> +<h3 id="port動的変更不可">Port(動的変更不可)</h3> +<p>Unity側のUDP受信ポート番号です.デフォルトでは54001です.</p> +<p>この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください.</p> +<pre tabindex="0"><code>DEBUG_FUNC_VDEV_TX_PORTNO 54001 +</code></pre><p>device_config.txt は,app.cと同じフォルダにあります.</p> +<h2 id="ev3-sensorscript">EV3 Sensor(Script)</h2> +<hr> +<h3 id="host動的変更不可">Host(動的変更不可)</h3> +<p>Athrillの配置マシンのIPアドレスです. +Unityと同じマシン上に配置する場合は,デフォルト値のままで良いです.</p> +<p>マシン負荷が高く,athrillとUnityを別マシンで動かす場合は,このIPアドレスを変更して対応ください.</p> +<h3 id="port動的変更不可-1">Port(動的変更不可)</h3> +<p>Athrill側のUDP受信ポート番号です.デフォルトでは54002です.</p> +<p>この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください.</p> +<pre tabindex="0"><code>DEBUG_FUNC_VDEV_RX_PORTNO 54002 +</code></pre><p>device_config.txt は,app.cと同じフォルダにあります.</p> +<h2 id="ev3-motorscript">EV3 Motor(Script)</h2> +<hr> +<h3 id="power-const動的変更可">Power Const(動的変更可)</h3> +<p>EV3のモータのパワーです.デフォルトで40としていますが,値を変更できます.</p>シミュレーションに関するチューニングhttps://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/<h2 id="single-robot-hackevv20の追加要素について">single-robot-HackEV(v2.0)の追加要素について</h2> +<hr> +<h3 id="hakoniwaクラスの追加">Hakoniwaクラスの追加</h3> +<p><code>single-robot-HackEV(v2.0)</code> では<code>Hakoniwa</code>クラスが設けられました.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_hierarchy_view_v2.0.png " border="" width="400" /> +</figure> + +<p><code>Hakoniwa</code>クラスはシミュレーション環境全体に関わる情報を持っています.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_hakoniwa_field.png " border="" width="400" /> +</figure> + +<table> + <thead> + <tr> + <th style="text-align: left">主なフィールド</th> + <th style="text-align: left">説明</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left">Max Diff Time</td> + <td style="text-align: left">athrillとUnityのシミュレーション時間の最大許容誤差時間</td> + </tr> + <tr> + <td style="text-align: left">Dbg Diff Time Msec</td> + <td style="text-align: left">現在のathrillとUnityのシミュレーション時間の誤差(msec)</td> + </tr> + </tbody> +</table> +<h3 id="robotの配置方法">Robotの配置方法</h3> +<p><code>single-robot-HackEV(v2.0)</code>ではあらかじめ用意されたいくつかのロボットモデルを<br> +ユーザの方が任意に配置することが出来ます.</p>チュートリアルhttps://toppers.github.io/hakoniwa/tutorial/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/tutorial/<h2 id="箱庭チュートリアル会とは">箱庭チュートリアル会とは?</h2> +<p>箱庭WGのメンバが持ち回りで担当して、自身の取り組みや最新の動向、そしていろんな野望などなどを、自由に語り尽くします!<br> +皆さんでフランクに情報交換や議論などできればと思っています。</p> +<p>本ページでは、チュートリアル会のスライド資料や<a href="https://www.youtube.com/playlist?list=PLvZDKbhDfoh0CI3K4u0zjUbDKMHJqxbNb">動画アーカイブ</a>などを公開しています。</p> +<h2 id="箱庭入門会とは">箱庭入門会とは?</h2> +<p>主に初めて箱庭に触れる方を対象として、箱庭の全体像やアーキテクチャ、アセットの作成方法などを紹介する会です。 +Getting Startedな内容になっていて、自分好みのシミュレーション環境を構築する方法を学ぶことができます。 +すでに箱庭を知っている方も復習に最適な連弾シリーズの形式です。 30分程度のミニセミナー形式で下記の項目をひとつずつの内容を進めていき、解説パートは<a href="https://www.youtube.com/playlist?list=PLvZDKbhDfoh2VO6nlYgKKQjdA74LcXw5I">動画アーカイブ</a>として公開しています。</p> +<h3 id="入門会-10-ドローンシミュレータのunity機体をカスタマイズする">入門会 #10 ドローンシミュレータのUnity機体をカスタマイズする</h3> +<pre tabindex="0"><code>箱庭ドローンのUnityワールド/機体をカスタマイズする方法を解説します。 + +- Unity + - Unityシーン/スクリプト + - Unityプリミティブ素材、コライダー + - Unityアセットストア + - Unityプロジェクト +- 箱庭 + - 箱庭ドローンのUnityプロジェクト + - 箱庭ドローンのUnityシーン + - 箱庭ドローンのプレハブ + - カスタマイズ + - 箱庭ワールド + - 箱庭ドローン + - リポジトリ管理方法 +</code></prトピックス・イベント案内https://toppers.github.io/hakoniwa/topics/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/topics/<h3 id="2024年">2024年</h3> +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/topics/#top">このページの先頭に戻る</a></p> +<h3 id="2023年">2023年</h3> +<ul> +<li>2023年9月26日(火)に開催された <a href="https://roscon.jp/">ROSCon JP 2023</a> に、TOPPERSプロジェクト/箱庭WGはブロンズスポンサーとして協賛しました。 +<ul> +<li>ROSCon JPは、ロボット開発プラットフォームであるROS(Robot Operating System)に関する開発者会議の日本版です。今回は、TOPPERSプロジェクトにおいてROSコミュニティに貢献している内容として、箱庭によるROSアプリケーションの仮想シミュレーション環境や、TOPPERSカーネルを活用した組込みマイコン向けのROS 2ノード実行環境などを展示しました。</li> +<li>参加レポートおよび展示内容の紹介は、<a href="https://hakoniwa-lab.net/2023/09/27/blog-rosconjp2023/">箱庭ラボ ブログ:ROSCon JP 2023で「リアルとバーチャルを融合する技術・箱庭 &amp; mROS 2」を紹介してきました</a>をご覧ください。</li> +</ul> +</li> +<li><strong><a href="https://hakoniwa.connpass.com/">箱庭のconnpassイベント</a></strong> を不定期に実施しています。もくもく会や茶話会、チュートリアル会などを一般公開で実施しており、箱庭WGの開発メンバも参加しています。 +<ul> +<li>もくもく会:各自のやりたいことや知りたいことを持ち寄って、まず自己紹介を交えてやりたいことを表明し、そして「もくもく」とそれぞれ自由にやりたいことを進めて、そして最後には進捗を共有する会です。</li> +<li>茶話会では:ランチタイムやアフターファイブに開催予定で、各自でお弁当や飲み物を準備して、箱庭に関係しそうなネタや最近の活動の進捗などをゆるく議論(というより雑談)する会です。ロボットやIoTの仮想化/シミュレーションなど、箱庭に限らないネタもばんばん取り上げます。</li> +<li>チュートリアル会:箱庭WGのメンバが持ち回りで担当して、自身の取り組みや最新の動向、そしていろんな野望などなどを、自由に語り尽くします!皆さんでフランクに情報交換や議論などできればと思っています。<a href="https://toppers.github.io/hakoniwa/hakoniwa/tutorial/">チュートリアル</a>のページにて、スライド資料や動画アーカイブなどを公開しています。</li> +<li>箱庭のことはいろいろなイベントで見聞きして気になっているんだけど,,, よし動かしてみよう!と思っているけども幾数月,,, 箱庭はさておき Unity x ROS がとっても気になる!!という方々、ぜひともご参加ください。特に定まった議題などはありませんので、とりま開発メンバと雑談してみたい方々の参加も大歓迎です。</li> +</ul> +</li> +</ul> +<!-- raw HTML omitted --> +<!-- raw HTML omitted --> +<ul> +<li>箱庭WG主査の森崇を職務執行者として、2023年8月1日に<a href="https://hakoniwa-lab.net/">合同会社箱庭ラボ</a>を設立しました。 +<ul> +<li>箱庭ラボの目標は、誰でも手軽に箱庭を体験できる環境を創出することです。長年TOPPERSプロジェクトとして開発してきたオープンソース仮想空間「箱庭」でエンジニアが自身の開発成果を共有し、枠組みや境界を越えて共創することで新しい価値を生み出すことを目指しています。この夢のような箱庭の実現に向けて、TOPPERS/箱庭の開発を推進し、先端の生成AI技術活用や箱庭プラットフォームの整備、さらにはチュートリアル会の開催やドキュメント整備等を通じて箱庭コミュニティを育てていきます。</li> +<li><a href="https://hakoniwa-lab.net/information/">Informationのブログページ</a>では、箱庭の最新の開発状況や活動内容について紹介しています。ぜひご覧ください。</li> +</ul> +</li> +<li>モノづくりスペシャリストのための情報ポータル「<a href="https://monoist.atmarkit.co.jp/">MONOist</a>」に連載記事を寄稿しています。<br> +<strong>「<a href="https://monoist.atmarkit.co.jp/mn/series/23683/">仮想環境を使ったクラウド時代の組み込み開発のススメ</a>」</strong> という連載タイトルにて、箱庭の活動を織り交ぜながらこれからのIoTシステム開発の姿を紹介しています。ぜひご覧ください。</li> +</ul> +<!-- raw HTML omitted --> +<!-- raw HTML omitted --> +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/topics/#top">このページの先頭に戻る</a></p>トピックス・イベント案内https://toppers.github.io/hakoniwa/update/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/update/<h3 id="2024年">2024年</h3> +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/update/#top">このページの先頭に戻る</a></p> +<h3 id="2023年">2023年</h3> +<ul> +<li>2023.07.25 +<ul> +<li><a href="https://toppers.github.io/hakoniwa/hakoniwa/tutorial/">チュートリアル</a>のページを作成しました。connpassにて開催している箱庭チュートリアル会のスライド資料や動画アーカイブなどを公開しています。</li> +</ul> +</li> +<li>2023.07.23 +<ul> +<li>箱庭WGにおける研究開発の成果が<a href="https://www.rsj.or.jp/pub/jrsj/about.html">日本ロボット学会誌</a>にレター論文として採録されました! +<ul> +<li>高瀬 英希, 細合 晋太郎, 福田 竜也, 高田 光隆, 久保秋 真, 森 崇, <strong>hakoniwa-ros2sim:仮想環境を活用したROS 2アプリケーションのシミュレーション手法</strong>, 日本ロボット学会誌, 2023年41巻4号, pp. 399-402 (2023).</li> +<li>論文公開先: <a href="https://www.jstage.jst.go.jp/article/jrsj/41/4/41_41_399/_article/-char/ja">https://www.jstage.jst.go.jp/article/jrsj/41/4/41_41_399/_article/-char/ja</a></li> +</ul> +</li> +<li>箱庭WGの活動成果「箱庭上でROS 2プログラムを手軽にシミュレーションできるhakoniwa-ros2simの一般公開」が TOPPERS of the YEAR 2023 を受賞しました!</li> +<li>2022年6月30日(金)に開催された<a href="https://toppers.github.io/hakoniwa/hakoniwa/technical-links/#toppers%E3%82%AB%E3%83%B3%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B92023">TOPPERSカンファレンス2023の講演資料・動画</a>を掲載しました。</li> +</ul> +</li> +<li>2023.01.07 +<ul> +<li>2022年度<a href="https://www.toppers.jp/contest.html">TOPPERS活用アイデア・アプリケーション開発コンテスト</a>のアプリケーション開発部門において、金賞を受賞しました。</li> +<li>受賞作品として<a href="https://github.com/toppers/hakoniwa-ecu-multiplay">hakoniwa-ecu-multiplay</a>を公開しています。ぜひお試しください。</li> +</ul> +</li> +</ul> +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/update/#top">このページの先頭に戻る</a></p> +<h3 id="2022年">2022年</h3> +<ul> +<li>2022.09.08 +<ul> +<li>2022年9月1日(木)-2日(金)に開催された<a href="https://toppers.github.io/hakoniwa/hakoniwa/technical-links/#swest24">SWEST24 (第24回 組込みシステム技術に関するサマーワークショップ)</a>にて実施したセッションの資料を掲載しました。</li> +<li>2022年9月5日(月)-9日(金)に開催された<a href="https://toppers.github.io/hakoniwa/hakoniwa/technical-links/#rsj2022">RSJ2022 (第40回 日本ロボット学会学術講演会)</a>にて実施したセッションの資料を掲載しました。</li> +</ul> +</li> +<li>2022.08.27 +<ul> +<li>2022年8月26日(金)に開催された<a href="https://toppers.github.io/hakoniwa/hakoniwa/technical-links/#ros-japan-ug-47-%E3%82%B7%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%BF%E7%89%B9%E9%9B%86">ROS Japan UG #47 シミュレータ特集!</a>の講演資料を公開しました。</li> +</ul> +</li> +<li>2022.06.27 +<ul> +<li>2022年6月25日(土)に開催された<a href="https://toppers.github.io/hakoniwa/hakoniwa/technical-links/#2022%E5%B9%B4%E5%BA%A6-et%E3%83%AD%E3%83%9C%E3%82%B3%E3%83%B3%E5%90%91%E3%81%91-toppers%E6%B4%BB%E7%94%A8%E3%82%BB%E3%83%9F%E3%83%8A%E3%83%BC">ETロボコン向け TOPPERS活用セミナー</a>の講義資料と動画を公開しました。</li> +</ul> +</li> +<li>2022.06.15 +<ul> +<li><a href="https://toppers.github.io/hakoniwa/hakoniwa/en/">本Webサイトの英語版</a>を公開しました。</li> +<li>2022年6月10日(金)に開催された<a href="https://toppers.github.io/hakoniwa/hakoniwa/technical-links/#toppers%E3%82%AB%E3%83%B3%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B92022">TOPPERSカンファレンス2022の講演資料・動画</a>を掲載しました。 +<ul> +<li>「箱庭WGの活動紹介」 高田光隆(箱庭WG/名古屋大学)</li> +<li>「ゲーム技術(VR/Photon)がもたらす箱庭ワールドの now and future」 森 崇((株)永和マネジメント)</li> +<li>「mROS 2:ロボットソフトウェアの組込みデバイス向け軽量実行環境」 高瀬英希(東京大学)</li> +</ul> +</li> +</ul> +</li> +<li>2022.06.02 +<ul> +<li>2022年5月28日(土)に開催された<a href="https://toppers.github.io/hakoniwa/hakoniwa/technical-links/#%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%AB%E3%83%B3%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9-2022-nagoya">オープンソースカンファレンス 2022 Nagoya</a>にて実施したセッションの資料を掲載しました。YouTube動画も公開されています。</li> +</ul> +</li> +<li>2022.05.26 +<ul> +<li><a href="https://toppers.github.io/hakoniwa/hakoniwa/getting-started">Getting Started</a> のページを公開しました。<a href="https://github.com/toppers/hakoniwa-ros2sim">hakoniwa-ros2sim</a> を題材として、箱庭を用いたシミュレーションの進め方やカスタマイズ方法を案内していきます。コンテンツ内容は随時更新・追加していきますので、ぜひご確認ください。</li> +</ul> +</li> +<li>2022.05.09 +<ul> +<li><a href="https://github.com/toppers/hakoniwa-ros2sim">hakoniwa-ros2sim</a> を公開しました。箱庭上で ROS 2 プログラムを手軽にシミュレーションできます。ぜひお試しください。</li> +</ul> +</li> +</ul> +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/update/#top">このページの先頭に戻る</a></p>技術情報・発表資料https://toppers.github.io/hakoniwa/technical-links/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/technical-links/<h2 id="最新の技術情報">最新の技術情報</h2> +<h3 id="qiita記事">Qiita記事</h3> +<p>最新の開発状況は、主にQiitaで発信しています。<br> +次のタグやOrganizationをフォローされると、最新情報が得やすくなります.</p> +<ul> +<li><a href="https://qiita.com/tags/%e7%ae%b1%e5%ba%ad">tag: 箱庭</a></li> +<li><a href="https://qiita.com/tags/athrill">tag: athrill</a></li> +<li><a href="https://qiita.com/tags/mROS">tag: mROS</a></li> +<li><a href="https://qiita.com/organizations/toppers">organization: TOPPERSプロジェクト</a></li> +</ul> +<p>なお、Qiita記事では開発途上の試行版であったり古い情報が記載されていることがあります。</p> +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/technical-links/#top">このページの先頭に戻る</a></p> +<h2 id="講演資料や動画など">講演資料や動画など</h2> +<h3 id="toppersカンファレンス2023">TOPPERSカンファレンス2023</h3> +<p>2022年6月30日(金)に開催された<a href="https://toppers.jp/conference2023.html">TOPPERSカンファレンス2023</a>の講演資料です。 <br> +箱庭WGの活動紹介、最新の開発状況とプラットフォーム化に向けた新たな展開について紹介しました。</p> +<h4 id="箱庭-update-2023">箱庭 Update 2023</h4> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/hakoniwa/doc/TOPPERSConf2023-1.pdf">講演資料 (PDFファイル) + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/doc/TOPPERSConf2023-1.png " border="1" width="400" /> +</figure> +</a></li> +<li>動画 (YouTube)<br> + +<iframe width="560" height="315" src="https://www.youtube.com/embed/n7dR4cJzDpc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> + +</li> +</ul> +<h4 id="toppers箱庭の新たな展開プラットフォーム化への一歩">TOPPERS/箱庭の新たな展開:プラットフォーム化への一歩</h4> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/hakoniwa/doc/TOPPERSConf2023-2.pdf">講演資料 (PDFファイル) + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/doc/TOPPERSConf2023-2.png " border="1" width="400" /> +</figure> +</a></li> +<li>動画 (YouTube)<br> + +<iframe width="560" height="315" src="https://www.youtube.com/embed/ZdCYpDSk0qI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> + +</li> +</ul> +<p><a href="https://toppers.github.io/hakoniwa/hakoniwa/technical-links/#top">このページの先頭に戻る</a></p>単体ロボット向けシミュレータ使用手順(ARM版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/<h1 id="単体ロボット向けシミュレータ使用手順arm版">単体ロボット向けシミュレータ使用手順(ARM版)</h1> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>環境変数の設定(Mac版のみ)</li> +<li>cfgフォルダの配置(初回起動時のみ)</li> +<li>EV3ロボット制御プログラムのビルド</li> +<li>Unityのシミュレータの起動</li> +<li>athrillの起動</li> +</ol> +<h2 id="環境変数の設定mac版のみ">環境変数の設定(Mac版のみ)</h2> +<hr> +<p>Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります.</p> +<pre tabindex="0"><code>export GCC_PATH=&lt;gccインストールフォルダ&gt;/gcc-arm-none-eabi-9-2019-q4-major +</code></pre><h2 id="cfgフォルダの配置初回起動時のみ">cfgフォルダの配置(初回起動時のみ)</h2> +<hr> +<p>cfg ファイルの配置(Mac版の場合)</p> +<pre tabindex="0"><code>$ pwd +&lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A +$ mkdir cfg/cfg +$ cp cfg/cfg-mac cfg/cfg/cfg +$ chmod +x cfg/cfg/cfg +</code></pre><p>cfg ファイルの配置(Windows\Linux版の場合)</p> +<pre tabindex="0"><code>$ pwd +&lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A +$ mkdir cfg/cfg +$ cp cfg/cfg-linux-64 cfg/cfg/cfg +$ chmod +x cfg/cfg/cfg +</code></pre><h2 id="ev3ロボット制御プログラムのビルド">EV3ロボット制御プログラムのビルド</h2> +<hr> +<p>ターミナル上で,<code>ev3rt-athrill-ARMv7-A/sdk/OBJ1.1</code>に移動して,<br> +EV3ロボット制御プログラムをビルドしましょう.</p> +<p>ビルドするには,以下のコマンドを実行してください.</p>単体ロボット向けシミュレータ使用手順(ARM版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/<h1 id="単体ロボット向けシミュレータ使用手順arm版">単体ロボット向けシミュレータ使用手順(ARM版)</h1> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>環境変数の設定(Mac版のみ)</li> +<li>cfgフォルダの配置(初回起動時のみ)</li> +<li>EV3ロボット制御プログラムのビルド</li> +<li>Unityのシミュレータの起動</li> +<li>athrillの起動</li> +</ol> +<h2 id="環境変数の設定mac版のみ">環境変数の設定(Mac版のみ)</h2> +<hr> +<p>Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります.</p> +<pre tabindex="0"><code>export GCC_PATH=&lt;gccインストールフォルダ&gt;/gcc-arm-none-eabi-9-2019-q4-major +</code></pre><h2 id="cfgフォルダの配置初回起動時のみ">cfgフォルダの配置(初回起動時のみ)</h2> +<hr> +<p>cfg ファイルの配置(Mac版の場合)</p> +<pre tabindex="0"><code>$ pwd +&lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A +$ mkdir cfg/cfg +$ cp cfg/cfg-mac cfg/cfg/cfg +$ chmod +x cfg/cfg/cfg +</code></pre><p>cfg ファイルの配置(Windows\Linux版の場合)</p> +<pre tabindex="0"><code>$ pwd +&lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A +$ mkdir cfg/cfg +$ cp cfg/cfg-linux-64 cfg/cfg/cfg +$ chmod +x cfg/cfg/cfg +</code></pre><h2 id="ev3ロボット制御プログラムのビルド">EV3ロボット制御プログラムのビルド</h2> +<hr> +<p>ターミナル上で,<code>ev3rt-athrill-ARMv7-A/sdk/OBJ1.1</code>に移動して,<br> +EV3ロボット制御プログラムをビルドしましょう.</p> +<p>ビルドするには,以下のコマンドを実行してください.</p>単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/<h1 id="単体ロボット向けシミュレータ使用手順">単体ロボット向けシミュレータ使用手順</h1> +<h2 id="v21での変更点について">V2.1での変更点について</h2> +<p>v2.1 で,Unityでのシミュレーション実行をビルドしてバイナリ実行できるようになりました.<br> +バイナリ実行でシミュレーション実行を行う場合,</p> +<ul> +<li>Unityシミュレーションの実行,</li> +<li>athrillの実行</li> +</ul> +<p>をひとまとめにして実行することができます.</p> +<p>なお,従来の使用方法でもシミュレーションを実行することは可能ですので,<br> +その場合は下記をご参照いただき,使用してください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/">ARM版</a></li> +</ul> +<p>これ以降は,バイナリ実行を行うための手順の紹介となります.</p> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>ビルド設定</li> +<li>ビルドの実行,config.jsonの配置</li> +<li>シミュレーションの実行</li> +</ol> +<h2 id="ビルド設定">ビルド設定</h2> +<hr> +<p>ビルドを実施する前に,バイナリ実行時のウィンドウサイズに関する設定を行います.<br> +Unity のメニューから,「Edit」⇒「Project Settings」を選択します.</p> +<p>「Player」<br> +<code>Resolution and Presentation</code>の<code>Fullscreen Mode</code> を<code>Windowed</code>と設定します. +その下の詳細なウィンドウサイズは基本そのままでもよいですが,サイズを変更したい場合は,<br> +お使いの環境に合わせて変更してください.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_build_setting.png " border="" width="600" /> +</figure> + +<h2 id="ビルドの実行configjsonの配置">ビルドの実行,config.jsonの配置</h2> +<hr> +<p>設定が完了したら,Unityプロジェクトのビルドを行います.<br> +Unity のメニューから,「File」⇒「Build Settings」を選択します.</p>単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/<h1 id="単体ロボット向けシミュレータ使用手順v850版">単体ロボット向けシミュレータ使用手順(V850版)</h1> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>EV3ロボット制御プログラムのビルド</li> +<li>Unityのシミュレータの起動</li> +<li>athrillの起動</li> +</ol> +<h2 id="ev3ロボット制御プログラムのビルド">EV3ロボット制御プログラムのビルド</h2> +<hr> +<p><code>ev3rt-athrill-v850e2m/sdk/workspace</code> に移動して,<br> +EV3ロボット制御プログラムをビルドしましょう.</p> +<p>ビルドするには,以下のコマンドを実行してください.</p> +<pre tabindex="0"><code>$ make img=<アプリケーションフォルダ名> clean +$ make img=<アプリケーションフォルダ名> +</code></pre><p>例:<code>line_trace</code>というアプリケーションフォルダのプログラムをビルドする場合</p> +<pre tabindex="0"><code>$ make img=line_trace clean +$ make img=line_trace +</code></pre><p>ビルド成功すると,asp というバイナリができます.</p> +<pre tabindex="0"><code>$ ls asp +asp +</code></pre><h2 id="unityのシミュレータの起動">Unityのシミュレータの起動</h2> +<hr> +<p><strong>※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください</strong></p> +<p>次に,Unityをシミュレーションモードにします. +Unityの画面上で<a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F1365fe63-28e1-0b02-e615-91b1f23724b9.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=d95a1ef03fd2f1640baf832491fcc986"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F1365fe63-28e1-0b02-e615-91b1f23724b9.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=d95a1ef03fd2f1640baf832491fcc986"></a> ボタンを押下してください.</p> +<p>成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合)</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_run.png " border="" width="900" /> +</figure> + +<h2 id="athrillの起動">athrillの起動</h2> +<hr> +<p>最後に,athrillを起動しましょう.</p>単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/<h1 id="単体ロボット向けシミュレータ使用手順v850版">単体ロボット向けシミュレータ使用手順(V850版)</h1> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>EV3ロボット制御プログラムのビルド</li> +<li>Unityのシミュレータの起動</li> +<li>athrillの起動</li> +</ol> +<h2 id="ev3ロボット制御プログラムのビルド">EV3ロボット制御プログラムのビルド</h2> +<hr> +<p><code>ev3rt-athrill-v850e2m/sdk/workspace</code> に移動して,<br> +EV3ロボット制御プログラムをビルドしましょう.</p> +<p>ビルドするには,以下のコマンドを実行してください.</p> +<pre tabindex="0"><code>$ make img=<アプリケーションフォルダ名> clean +$ make img=<アプリケーションフォルダ名> +</code></pre><p>例:<code>line_trace</code>というアプリケーションフォルダのプログラムをビルドする場合</p> +<pre tabindex="0"><code>$ make img=line_trace clean +$ make img=line_trace +</code></pre><p>ビルド成功すると,asp というバイナリができます.</p> +<pre tabindex="0"><code>$ ls asp +asp +</code></pre><h2 id="unityのシミュレータの起動">Unityのシミュレータの起動</h2> +<hr> +<p><strong>※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください</strong></p> +<p>次に,Unityをシミュレーションモードにします. +Unityの画面上で<a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F1365fe63-28e1-0b02-e615-91b1f23724b9.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=d95a1ef03fd2f1640baf832491fcc986"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F1365fe63-28e1-0b02-e615-91b1f23724b9.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=d95a1ef03fd2f1640baf832491fcc986"></a> ボタンを押下してください.</p> +<p>成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合)</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_run.png " border="" width="900" /> +</figure> + +<h2 id="athrillの起動">athrillの起動</h2> +<hr> +<p>最後に,athrillを起動しましょう.</p>単体ロボット向けシミュレータ使用方法https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/<h1 id="単体ロボット向けシミュレータ使用方法">単体ロボット向けシミュレータ使用方法</h1> +<h2 id="使用手順詳細">使用手順詳細</h2> +<hr> +<h3 id="single-robot-hackevv21を使用している場合windows-mac向け">single-robot-HackEV(v2.1)を使用している場合(Windows, Mac向け)</h3> +<p>使用しているUnityパッケージが <code>single-robot-HackEV(v2.1)</code> の場合は,<br> +こちらの使用手順をご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/">使用手順</a></li> +</ul> +<p>シミュレーションに関わるチューニングについてはこちらをご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/">チューニングについて(single-robot-HackEV(v2.0)を使用している場合)</a></li> +</ul> +<hr> +<h3 id="single-robot-hackevv20を使用している場合">single-robot-HackEV(v2.0)を使用している場合</h3> +<p>使用しているUnityパッケージが <code>single-robot-HackEV(v2.0)</code> の場合は,<br> +こちらの使用手順をご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/">ARM版</a></li> +</ul> +<p>シミュレーションに関わるチューニングについてはこちらをご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/">チューニングについて(single-robot-HackEV(v2.0)を使用している場合)</a></li> +</ul> +<hr> +<h3 id="single-robot-hackev-または-ev3rt-simple-robotを使用している場合">single-robot-HackEV または ev3rt-simple-robotを使用している場合</h3> +<p>使用しているUnityパッケージが <code>single-robot-HackEV</code> または <code>ev3rt-simple-robot</code> の場合は,<br> +こちらの使用手順をご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/">ARM版</a></li> +</ul> +<p>シミュレーションに関わるチューニングについてはこちらをご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/">チューニングについて</a></li> +</ul>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/<h1 id="wslのインストール">WSLのインストール</h1> +<hr> +<p>Windows版の場合はWSLをインストールいただく必要があります.<br> +※注意点として,現時点(2020/6月)時点では,WSL2はご利用いただけません(WSL2とUnity間でUDP通信できないため).</p> +<p>WSLのインストール方法は色々なサイトで紹介されておりますので,Ubuntu 18.04 LTSをインストールください.</p> +<p>以下のサイト等が参考になるかと思います.</p> +<ul> +<li><a href="https://qiita.com/Aruneko/items/c79810b0b015bebf30bb">https://qiita.com/Aruneko/items/c79810b0b015bebf30bb</a></li> +</ul> +<p>インストールが完了したら,aptパッケージを更新しておきます.<br> +(更新しないと後ほど行うgccのインストールで失敗することがあるためです)</p> +<pre tabindex="0"><code>$ sudo apt update +</code></pre><p>aptパッケージを更新したら,あらかじめ以下が使用できるようにインストールしておきます</p> +<ul> +<li>gcc</li> +<li>make</li> +</ul> +<pre tabindex="0"><code>$ sudo apt install build-essential +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/<h1 id="rubyのインストール">Rubyのインストール</h1> +<hr> +<p>v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. +※EV3ロボット制御アプリをビルドする際に必要となります.</p> +<p>Homebrewを使用してインストールします.</p> +<pre tabindex="0"><code>$ brew install ruby +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/<h1 id="rubyのインストール">Rubyのインストール</h1> +<hr> +<p>v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. +※EV3ロボット制御アプリをビルドする際に必要となります.</p> +<pre tabindex="0"><code>$ sudo apt install ruby +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/<h1 id="athrill2のインストール">athrill2のインストール</h1> +<h2 id="athrill2のインストール手順">athrill2のインストール手順</h2> +<hr> +<ul> +<li>athrill のチェックアウト</li> +<li>athrill-target のチェックアウト</li> +<li>コンパイラのインストール</li> +<li>ビルド&インストール</li> +</ul> +<h2 id="athrill-のチェックアウト">athrill のチェックアウト</h2> +<hr> +<p>athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています.</p> +<p>共通コードのチェックアウトは,以下の通りです.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/athrill.git +</code></pre><h2 id="athrill-target-のチェックアウト">athrill-target のチェックアウト</h2> +<hr> +<p>CPUアーキに依存するコードは,athrill-target側で管理しています. +今回のARM対応版は,ここにあります.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/athrill-target-ARMv7-A.git +</code></pre><p>なお,athrill と athrill-targetを以下のフォルダ構成にしてください.</p> +<pre tabindex="0"><code>. +├── athrill +└── athrill-target-ARMv7-A +</code></pre><h2 id="コンパイラのインストール">コンパイラのインストール</h2> +<hr> +<p>Linux の方は,gcc をインストールください.<br> +Windows の方は,WSL上で gcc をインストールください.<br> +Mac の方は,clang をインストールください.</p> +<h2 id="ビルドインストール">ビルド&インストール</h2> +<hr> +<p>ビルド方法ですが,端末上でathrill-target-ARMv7-A に移動してください.</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/<h1 id="athrill2のインストール">athrill2のインストール</h1> +<h2 id="athrill2のインストール手順">athrill2のインストール手順</h2> +<hr> +<ul> +<li>athrill のチェックアウト</li> +<li>athrill-target のチェックアウト</li> +<li>コンパイラのインストール</li> +<li>ビルド&インストール</li> +</ul> +<h2 id="athrill-のチェックアウト">athrill のチェックアウト</h2> +<hr> +<p>athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています.</p> +<p>共通コードのチェックアウトは,以下の通りです.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/athrill.git +</code></pre><h2 id="athrill-target-のチェックアウト">athrill-target のチェックアウト</h2> +<hr> +<p>CPUアーキに依存するコードは,athrill-target側で管理しています.<br> +今回のV850対応版は,ここにあります.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/athrill-target-v850e2m.git +</code></pre><p>なお,athrill と athrill-targetを以下のフォルダ構成にしてください.</p> +<pre tabindex="0"><code>. +├── athrill +└── athrill-target-v850e2m +</code></pre><h2 id="コンパイラのインストール">コンパイラのインストール</h2> +<hr> +<p>Linux の方は,gcc をインストールください.<br> +Windows の方は,WSL上で gcc をインストールください.<br> +Mac の方は,clang をインストールください.</p> +<h2 id="ビルドインストール">ビルド&インストール</h2> +<hr> +<p>ビルド方法ですが,端末上でathrill-target-v850e2m に移動してください.</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/<h1 id="linux版64bit-gccコンパイラライブラリ含むのインストール">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</h1> +<hr> +<p>ARM版のathrill2を利用される場合は,以下のサイトを参考にコンパイラおよびライブラリをインストールください.</p> +<p>Windows(WSL)</p> +<ul> +<li><a href="https://www.yokoweb.net/2018/03/07/wsl-ubuntu-arm-gcc/">https://www.yokoweb.net/2018/03/07/wsl-ubuntu-arm-gcc/</a></li> +</ul> +<p>Linux</p> +<ul> +<li><a href="https://www.yokoweb.net/2018/05/16/ubuntu-18_04-gcc-arm-install/">https://www.yokoweb.net/2018/05/16/ubuntu-18_04-gcc-arm-install/</a></li> +</ul> +<p>Mac</p> +<ul> +<li><a href="https://www.yokoweb.net/2018/05/16/macos-gcc-arm-brew-install/">https://www.yokoweb.net/2018/05/16/macos-gcc-arm-brew-install/</a></li> +</ul>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/<h1 id="linux版64bit-gccコンパイラライブラリ含むのインストール">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</h1> +<hr> +<p>v850版のathrill2を利用される場合は,以下のサイトからコンパイラおよびライブラリ(athrill-gcc-package.tar.gz)をダウンロードください.</p> +<ul> +<li><a href="https://github.com/toppers/athrill-gcc-v850e2m/releases/tag/v1.1">https://github.com/toppers/athrill-gcc-v850e2m/releases/tag/v1.1</a></li> +</ul> +<pre tabindex="0"><code>$ tar xzvf athrill-gcc-package.tar.gz +$ cd athrill-gcc-package/ +$ tar xzvf athrill-gcc.tar.gz +$ ls usr/local/athrill-gcc/ +bin include lib libexec share v850-elf +</code></pre><p>解凍後,usr/local/athrill-gccを /usr/local 直下に移動してください.</p> +<pre tabindex="0"><code>$ sudo mv usr/local/athrill-gcc /usr/local +</code></pre><p>あとは,.bashrc に以下のパスを設定するだけです.</p> +<pre tabindex="0"><code>export PATH=/usr/local/athrill-gcc/bin/:${PATH} +export LD_LIBRARY_PATH=/usr/local/athrill-gcc:/usr/local/athrill-gcc/lib:${LD_LIBRARY_PATH} +</code></pre><p>設定後は,パスの有効化を忘れずに行ってください.</p> +<pre tabindex="0"><code>source ${HOME}/.bashrc +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/<h1 id="箱庭用-ev3rt-開発環境のダウンロード">箱庭用 EV3RT 開発環境のダウンロード</h1> +<p>任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください.</p> +<p>なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください.</p> +<pre tabindex="0"><code> |---athril + |---athrill-target-ARMv7-A + └---ev3rt-athrill-ARMv7-A +</code></pre><p>clone方法は以下の通りです.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/ev3rt-athrill-ARMv7-A.git +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/<h1 id="箱庭用-ev3rt-開発環境のダウンロード">箱庭用 EV3RT 開発環境のダウンロード</h1> +<p>任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください.</p> +<p>なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください.</p> +<pre tabindex="0"><code> |---athril + |---athrill-target-v850e2m + └---ev3rt-athrill-v850e2m +</code></pre><p>clone方法は以下の通りです.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/ev3rt-athrill-v850e2m.git +</code></pre><h2 id="サンプルアプリケーションのダウンロード">サンプルアプリケーションのダウンロード</h2> +<hr> +<p>2種類のサンプルアプリケーションを用意しています.</p> +<p>こちらから git clone いただき,<code>hakoniwa-scenario-samples/single-robot</code>配下の全てのフォルダを<br> +<code>ev3rt-athrill-v850e2m/sdk/workspace</code> に配置ください.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/hakoniwa-scenario-samples.git +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/<h3 id="ev3ロボット制御プログラム">EV3ロボット制御プログラム</h3> +<p>現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です.<br> +※まだ暫定構成です.</p> +<p>ARM版のathrill2を利用される場合は,以下のフォルダで作業してください.</p> +<pre tabindex="0"><code>$ ls ev3rt-athrill-ARMv7-A/sdk/OBJ1.1/ +app.c app.h device_config_mmap.txt Makefile memory_mmap.txt simstart.bash +app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt unity_mmap.bin +</code></pre><p>現状は,app.c/main_task で直接制御を行っています.<br> +コード断片は以下の通りです.</p> +<pre tabindex="0"><code> while(1) { + + /** + * PID controller + */ +#define white 100 +#define black 50 + static float lasterror = 0, integral = 0; + static float midpoint = (white - black) / 2 + black; + { + float error = midpoint - ev3_color_sensor_get_reflect(EV3_PORT_1); + integral = error + integral * 0.3; + float steer = 0.6 * error + 0.3 * integral + 1 * (error - lasterror); + ev3_motor_steer(left_motor, right_motor, 10, steer); + lasterror = error; + + debug_var = ev3_gyro_sensor_get_angle(EV3_PORT_4); + + int distance = ev3_ultrasonic_sensor_get_distance(EV3_PORT_2); + debug_var2 = distance; + if (distance &lt;= 100) { + ev3_motor_stop(left_motor, false); + ev3_motor_stop(right_motor, false); + } + } + tslp_tsk(100); /* 100msec */ + + } +} +</code></pr単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/<h3 id="ev3ロボット制御プログラム">EV3ロボット制御プログラム</h3> +<p>現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です.</p> +<p>v850版のathrill2を利用される場合は,以下のフォルダで作業してください.</p> +<pre tabindex="0"><code>$ ls ev3rt-athrill-v850e2m/sdk/workspace/line_trace/ +app.c app.h device_config_mmap.txt log.txt memory_mmap.txt unity_mmap.bin +app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt +</code></pre><p>または</p> +<pre tabindex="0"><code>$ ls ev3rt-athrill-v850e2m/sdk/workspace/color_sensor/ +app.c app.h device_config_mmap.txt log.txt memory_mmap.txt unity_mmap.bin +app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt +</code></pr単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/<h1 id="unityのインストールパッケージのインポート通信方式の切替方法">Unityのインストール・パッケージのインポート・通信方式の切替方法</h1> +<h2 id="unityパッケージのダウンロード">Unityパッケージのダウンロード</h2> +<hr> +<p>単体ロボット向けシミュレータで使用するUnityパッケージを2種類用意してあります. +どちらかのパッケージをご選択いただき,ダウンロードを行ってください.</p> +<table> + <thead> + <tr> + <th style="text-align: left">使用するUnityパッケージ</th> + <th style="text-align: left">説明</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left">single-robot-HackEV</td> + <td style="text-align: left">HackEVを模した走行体モデルを使用しています</td> + </tr> + <tr> + <td style="text-align: left">ev3rt-simple-robot</td> + <td style="text-align: left">シンプルな走行体モデルを使用しています</td> + </tr> + <tr> + <td style="text-align: left">single-robot-HackEV(v2.0)</td> + <td style="text-align: left">上記2つのモデルを含んでおり自由に選択できます</td> + </tr> + <tr> + <td style="text-align: left">single-robot-HackEV(v2.1)</td> + <td style="text-align: left">single-robot-HackEV(v2.0)の内容に加え,シミュレータのコンフィグ機能,バイナリ実行機能を追加したものとなっております.(Windows, Mac対応済み.Linux版は開発中です)</td> + </tr> + </tbody> +</table> +<p>それぞれ下記からダウンロードしてください</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/<h1 id="unityのインストールパッケージのインポート通信方式の切替方法">Unityのインストール・パッケージのインポート・通信方式の切替方法</h1> +<h2 id="unityのインストール">Unityのインストール</h2> +<hr> +<p>Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.</p> +<p>以下のサイト等が参考になるかと思います.</p> +<ul> +<li><a href="https://tech-camp.in/note/technology/44408/">https://tech-camp.in/note/technology/44408/</a></li> +</ul> +<p>※動作確認は<code>Unity 2020.1.0b9(64bit)</code>で行っております.<br> + 使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.</p> +<h2 id="unityパッケージのインポート">Unityパッケージのインポート</h2> +<hr> +<h3 id="unity-起動">Unity 起動</h3> +<p>まず,インストールしたUnityを起動してください.<br> +無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_invoke.png " border="" width="800" /> +</figure> + +<p>次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_create_project.png " border="" width="800" /> +</figure> + +<p>成功すると,以下のようにUnityが起動します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_start.png " border="" width="800" /> +</figure> + +<h3 id="unityパッケージのインポート-1">Unityパッケージのインポート</h3> +<p>※画像は<code>single-robot-HackEV.unitypackage</code>をインポートする際のものになります</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/<h1 id="unityのインストールパッケージのインポート通信方式の切替方法">Unityのインストール・パッケージのインポート・通信方式の切替方法</h1> +<h2 id="unityのインストール">Unityのインストール</h2> +<hr> +<p>Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.</p> +<p>以下のサイト等が参考になるかと思います.</p> +<ul> +<li><a href="https://tech-camp.in/note/technology/44408/">https://tech-camp.in/note/technology/44408/</a></li> +</ul> +<p>※動作確認は<code>Unity 2020.1.0b9(64bit)</code>で行っております.<br> + 使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.</p> +<h2 id="unityパッケージのインポート">Unityパッケージのインポート</h2> +<hr> +<h3 id="unity-起動">Unity 起動</h3> +<p>まず,インストールしたUnityを起動してください.<br> +無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_invoke.png " border="" width="800" /> +</figure> + +<p>次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_create_project.png " border="" width="800" /> +</figure> + +<p>成功すると,以下のようにUnityが起動します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_start.png " border="" width="800" /> +</figure> + +<h3 id="unityパッケージのインポート-1">Unityパッケージのインポート</h3> +<p>※画像は<code>single-robot-HackEV.unitypackage</code>をインポートする際のものになります</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/<h1 id="unityのインストールパッケージのインポート通信方式の切替方法">Unityのインストール・パッケージのインポート・通信方式の切替方法</h1> +<h2 id="unityのインストール">Unityのインストール</h2> +<hr> +<p>Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.</p> +<p>以下のサイト等が参考になるかと思います.</p> +<ul> +<li><a href="https://tech-camp.in/note/technology/44408/">https://tech-camp.in/note/technology/44408/</a></li> +</ul> +<p>※動作確認は<code>Unity 2020.1.0b9(64bit)</code>で行っております.<br> + 使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.</p> +<h2 id="unityパッケージのインポート">Unityパッケージのインポート</h2> +<hr> +<h3 id="unity-起動">Unity 起動</h3> +<p>まず,インストールしたUnityを起動してください.<br> +無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_invoke.png " border="" width="800" /> +</figure> + +<p>次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_create_project.png " border="" width="800" /> +</figure> + +<p>成功すると,以下のようにUnityが起動します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_start.png " border="" width="800" /> +</figure> + +<h3 id="unityパッケージのインポート-1">Unityパッケージのインポート</h3> +<p>※画像は<code>single-robot-HackEV.unitypackage</code>をインポートする際のものになります</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/<h1 id="mmap用unity設定">MMAP用Unity設定</h1> +<p>UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います.</p> +<p>Unity のメニューから,「Edit」⇒「Project Settings」を選択します.</p> +<p>「Player」<br> +<code>Other Setting</code>の<code>Scripting Define Symbols</code> に<code>VDEV_IO_MMAP</code>と設定します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_setting_player_mmap.png " border="" width="700" /> +</figure> + +<h1 id="mmap用パラメータ設定">MMAP用パラメータ設定</h1> +<p>※なお,このページで紹介しているUnity画面の画像はWindows版のものです</p> +<p>設定する場所は,Unity の以下のスクリプト・パラメータ(Filepath)部分です.</p> +<p><a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2Feed2a22a-e74b-9e8f-0774-6ca34783a6e4.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=b6a404498493184bdc1bcfe3d2749bad"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2Feed2a22a-e74b-9e8f-0774-6ca34783a6e4.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=b6a404498493184bdc1bcfe3d2749bad"></a></p> +<p>インポート直後ですと,[EV3 Actuator] と [EV3 Sensor]の Filepath は空白です.<br> +ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します.</p> +<p>MMAPファイル自体は,以下の2ファイルが<code>app.c</code>と同じフォルダに含まれています.</p> +<ul> +<li>athrill_mmap.bin</li> +<li>unity_mmap.bin</li> +</ul> +<p>unity_mmap.bin の絶対ファイルパスを,[EV3 Sensor]のFilepathに設定してください(設定例:下図).</p> +<p><a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F95b47a49-4904-16dd-f568-09d285afd2a1.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=c00912d532173b48318ebd94f6deec5a"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F95b47a49-4904-16dd-f568-09d285afd2a1.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=c00912d532173b48318ebd94f6deec5a"></a></p> +<p>athrill_mmap.bin の絶対ファイルパスを,[EV3 Actuator]のFilepathに設定してください(設定例:下図).</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/<h1 id="mmap用unity設定">MMAP用Unity設定</h1> +<p>UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います.</p> +<p>Unity のメニューから,「Edit」⇒「Project Settings」を選択します.</p> +<p>「Player」<br> +<code>Other Setting</code>の<code>Scripting Define Symbols</code> に<code>VDEV_IO_MMAP</code>と設定します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_setting_player_mmap.png " border="" width="700" /> +</figure> + +<h1 id="mmap用パラメータ設定">MMAP用パラメータ設定</h1> +<p>※なお,このページで紹介しているUnity画面の画像はWindows版のものです</p> +<p><code>Hierarchy</code>ビューで<code>Robot</code>配下の<code>RoboModel</code>を選択してください.<br> +すると画面右の<code>Inspector</code>ビューに[Io Writer (Script)]と[Io Reader (Script)]の項目が表示されます.</p> +<p> + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_hierarchy_view_robo_v2.0.png " border="" width="300" /> +</figure> + + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_setting_mmap_emp.png " border="" width="300" /> +</figure> +</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/<h1 id="udp用unity設定">UDP用Unity設定</h1> +<p>UnityとathrillをUDPで通信する場合は,Unity側で以下の設定を行います.</p> +<p><code>Hierarchy</code>ビューで<code>Robot</code>配下の<code>RoboModel_3</code>を選択してください.<br> +すると画面右の<code>Inspector</code>ビューに[EV3 Motor (Script)]の項目が表示されます.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_hierarchy_view.png " border="" width="300" /> +</figure> + +<p>表示されたら,項目内のプロパティ<code>Max Diff Time</code>を40000に変更します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_fix_maxdifftime.png " border="" width="350" /> +</figure> + +<h1 id="udp用パラメータ設定">UDP用パラメータ設定</h1> +<p>UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります.</p> +<p><strong>※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です.</strong></p> +<h3 id="説明する上でのipアドレスの構成例">説明する上でのIPアドレスの構成例</h3> +<p>Unity側のIPアドレス:192.168.11.32<br> +athrill側のIPアドレス:192.168.11.20</p> +<p>なお,IPアドレスの確認方法は以下のやり方でわかります.</p> +<h4 id="お使いのpcがlinuxwslの場合">お使いのPCがLinux/WSLの場合</h4> +<p>ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します.</p> +<pre tabindex="0"><code>$ ifconfig +eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96 + inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0 + inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown + UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 + RX packets:0 errors:0 dropped:0 overruns:0 frame:0 + TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 + collisions:0 + RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) +</code></pr単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/<h1 id="udp用パラメータ設定">UDP用パラメータ設定</h1> +<p>UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります.</p> +<p><strong>※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です.</strong></p> +<h3 id="説明する上でのipアドレスの構成例">説明する上でのIPアドレスの構成例</h3> +<p>Unity側のIPアドレス:192.168.11.32<br> +athrill側のIPアドレス:192.168.11.20</p> +<p>なお,IPアドレスの確認方法は以下のやり方でわかります.</p> +<h4 id="お使いのpcがlinuxwslの場合">お使いのPCがLinux/WSLの場合</h4> +<p>ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します.</p> +<pre tabindex="0"><code>$ ifconfig +eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96 + inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0 + inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown + UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 + RX packets:0 errors:0 dropped:0 overruns:0 frame:0 + TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 + collisions:0 + RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) +</code></pr単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/<h1 id="単体ロボット向けシミュレータ導入手順">単体ロボット向けシミュレータ導入手順</h1> +<h2 id="開発プラットフォームとターゲットcpu">開発プラットフォームとターゲットCPU</h2> +<hr> +<p>開発プラットフォームは,Windows/Linux/Mac です.<br> +ターゲットCPUはV850/ARMの2種類が存在します.<br> +ご自身の環境に合わせて,プラットフォームやターゲットCPUをご選択ください.</p> +<p>基本的な導入の流れは変わりありませんが,開発プラットフォームやターゲットCPU毎に<br> +細かい箇所での導入手順が異なります.<br> +対応するプラットフォーム/ターゲットCPUの導入手順をご確認ください.</p> +<ul> +<li>Windows +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/">ARM版</a></li> +</ul> +</li> +<li>Linux +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/">ARM版</a></li> +</ul> +</li> +<li>Mac +<ul> +<li>V850版(非対応です)</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/">ARM版</a></li> +</ul> +</li> +</ul>単体ロボット向けシミュレータ導入手順(Linux/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/<h1 id="単体ロボット向けシミュレータ導入手順linuxarm編">単体ロボット向けシミュレータ導入手順(Linux/ARM編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol>単体ロボット向けシミュレータ導入手順(Linux/V850編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/<h1 id="単体ロボット向けシミュレータ導入手順linuxv850編">単体ロボット向けシミュレータ導入手順(Linux/V850編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/">Rubyのインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol>単体ロボット向けシミュレータ導入手順(Mac/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/<h1 id="単体ロボット向けシミュレータ導入手順macarm編">単体ロボット向けシミュレータ導入手順(Mac/ARM編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol>単体ロボット向けシミュレータ導入手順(Windows/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/<h1 id="単体ロボット向けシミュレータ導入手順windowsarm編">単体ロボット向けシミュレータ導入手順(Windows/ARM編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/">WSLのインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol>単体ロボット向けシミュレータ導入手順(Windows/V850編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/<h1 id="単体ロボット向けシミュレータ導入手順windowsv850編">単体ロボット向けシミュレータ導入手順(Windows/V850編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/">WSLのインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/">Rubyのインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol> \ No newline at end of file diff --git a/ja/sitemap.xml b/ja/sitemap.xml index b1ff9cf8..4398e6eb 100644 --- a/ja/sitemap.xml +++ b/ja/sitemap.xml @@ -1 +1 @@ -https://toppers.github.io/hakoniwa/getting-started/architecture-overview/2022-05-14T13:26:27+09:00https://toppers.github.io/hakoniwa/en/docs/background/https://toppers.github.io/hakoniwa/docs/background/https://toppers.github.io/hakoniwa/en/docs/concept/https://toppers.github.io/hakoniwa/docs/concept/https://toppers.github.io/hakoniwa/en/docs/aimat/https://toppers.github.io/hakoniwa/docs/aimat/https://toppers.github.io/hakoniwa/en/docs/core/https://toppers.github.io/hakoniwa/docs/core/https://toppers.github.io/hakoniwa/en/docs/technical/https://toppers.github.io/hakoniwa/docs/technical/https://toppers.github.io/hakoniwa/en/docs/roadmap/https://toppers.github.io/hakoniwa/docs/roadmap/https://toppers.github.io/hakoniwa/getting-started/app-customize/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/en/prototypes/single-robot/https://toppers.github.io/hakoniwa/prototypes/single-robot/https://toppers.github.io/hakoniwa/getting-started/env-customize/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/en/prototypes/ros-robot/https://toppers.github.io/hakoniwa/prototypes/ros-robot/https://toppers.github.io/hakoniwa/getting-started/robot-customize/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/en/prototypes/multi-robot/https://toppers.github.io/hakoniwa/prototypes/multi-robot/https://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/https://toppers.github.io/hakoniwa/prototypes/harmony-robot/https://toppers.github.io/hakoniwa/getting-started/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/en/2020-08-26T15:09:42+09:00https://toppers.github.io/hakoniwa/en/repositories/2020-08-26T15:09:42+09:00https://toppers.github.io/hakoniwa/repositories/2020-08-26T15:09:42+09:00https://toppers.github.io/hakoniwa/categories/https://toppers.github.io/hakoniwa/single-robot-setup-detail/https://toppers.github.io/hakoniwa/single-robot-setup/https://toppers.github.io/hakoniwa/single-robot-usage/https://toppers.github.io/hakoniwa/en/contact/https://toppers.github.io/hakoniwa/contact/https://toppers.github.io/hakoniwa/tags/https://toppers.github.io/hakoniwa/showcase/https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/https://toppers.github.io/hakoniwa/tutorial/https://toppers.github.io/hakoniwa/prototypes/https://toppers.github.io/hakoniwa/technical-links/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/https://toppers.github.io/hakoniwa/docs/ \ No newline at end of file +https://toppers.github.io/hakoniwa/getting-started/architecture-overview/2022-05-14T13:26:27+09:00https://toppers.github.io/hakoniwa/en/docs/background/https://toppers.github.io/hakoniwa/docs/background/https://toppers.github.io/hakoniwa/en/docs/concept/https://toppers.github.io/hakoniwa/docs/concept/https://toppers.github.io/hakoniwa/en/docs/aimat/https://toppers.github.io/hakoniwa/docs/aimat/https://toppers.github.io/hakoniwa/en/docs/core/https://toppers.github.io/hakoniwa/docs/core/https://toppers.github.io/hakoniwa/en/docs/technical/https://toppers.github.io/hakoniwa/docs/technical/https://toppers.github.io/hakoniwa/en/docs/roadmap/https://toppers.github.io/hakoniwa/docs/roadmap/https://toppers.github.io/hakoniwa/getting-started/app-customize/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/en/prototypes/single-robot/https://toppers.github.io/hakoniwa/prototypes/single-robot/https://toppers.github.io/hakoniwa/getting-started/env-customize/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/en/prototypes/ros-robot/https://toppers.github.io/hakoniwa/prototypes/ros-robot/https://toppers.github.io/hakoniwa/getting-started/robot-customize/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/en/prototypes/multi-robot/https://toppers.github.io/hakoniwa/prototypes/multi-robot/https://toppers.github.io/hakoniwa/en/prototypes/harmony-robot/https://toppers.github.io/hakoniwa/prototypes/harmony-robot/https://toppers.github.io/hakoniwa/getting-started/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/2022-05-14T13:26:38+09:00https://toppers.github.io/hakoniwa/en/2020-08-26T15:09:42+09:00https://toppers.github.io/hakoniwa/en/repositories/2020-08-26T15:09:42+09:00https://toppers.github.io/hakoniwa/repositories/2020-08-26T15:09:42+09:00https://toppers.github.io/hakoniwa/categories/https://toppers.github.io/hakoniwa/single-robot-setup-detail/https://toppers.github.io/hakoniwa/single-robot-setup/https://toppers.github.io/hakoniwa/single-robot-usage/https://toppers.github.io/hakoniwa/en/contact/https://toppers.github.io/hakoniwa/contact/https://toppers.github.io/hakoniwa/tags/https://toppers.github.io/hakoniwa/showcase/https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/https://toppers.github.io/hakoniwa/tutorial/https://toppers.github.io/hakoniwa/topics/https://toppers.github.io/hakoniwa/update/https://toppers.github.io/hakoniwa/prototypes/https://toppers.github.io/hakoniwa/technical-links/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/https://toppers.github.io/hakoniwa/docs/ \ No newline at end of file diff --git a/prototypes/harmony-robot/index.html b/prototypes/harmony-robot/index.html index 7053e677..82a9ca24 100644 --- a/prototypes/harmony-robot/index.html +++ b/prototypes/harmony-robot/index.html @@ -1 +1 @@ -ロボット間協調動作シミュレーション

          ロボット間協調動作シミュレーション

          クラウドとロボティクスとの連携.

          クラウドとロボティクスとの連携を目指した箱庭プロトタイプモデルです.

          技術研鑽視点での狙い

          • クラウド連携方法検討
          • ロボット間の連携方法検討(より複雑なロボットの動き/干渉に挑戦)
          • 箱庭アセットを増やす仕組みの検討

          その他の狙い

          • RDBOX連携(開発支援仮想環境としての箱庭の実績作り)
          • RDBOXユーザ層に箱庭を広める(広報活動)

          現在,本プロトタイプモデルの実現に向けて鋭意開発中です.公開までしばしお待ちください.

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file +ロボット間協調動作シミュレーション

          ロボット間協調動作シミュレーション

          クラウドとロボティクスとの連携.

          クラウドとロボティクスとの連携を目指した箱庭プロトタイプモデルです.

          技術研鑽視点での狙い

          • クラウド連携方法検討
          • ロボット間の連携方法検討(より複雑なロボットの動き/干渉に挑戦)
          • 箱庭アセットを増やす仕組みの検討

          その他の狙い

          • RDBOX連携(開発支援仮想環境としての箱庭の実績作り)
          • RDBOXユーザ層に箱庭を広める(広報活動)

          現在,本プロトタイプモデルの実現に向けて鋭意開発中です.公開までしばしお待ちください.

          © 2019- by Hakoniwa Working-Group, TOPPERS Project

          \ No newline at end of file diff --git a/prototypes/index.html b/prototypes/index.html index 9ba6e460..f60332bb 100644 --- a/prototypes/index.html +++ b/prototypes/index.html @@ -1,4 +1,4 @@ -プロトタイプ

          プロトタイプ

            『箱庭の掲げるコンセプトを実現するために,またWGメンバの技術研鑽のために,以下のプロトタイプモデルの構築を進めています.
          • マイコン制御ロボットシミュレーション   +プロトタイプ

            プロトタイプ

            © 2019- by Hakoniwa Working-Group, TOPPERS Project

            \ No newline at end of file diff --git a/prototypes/index.xml b/prototypes/index.xml index dbdef6d5..836db161 100644 --- a/prototypes/index.xml +++ b/prototypes/index.xml @@ -1,12 +1,103 @@ -プロトタイプ on 箱庭https://toppers.github.io/hakoniwa/prototypes/Recent content in プロトタイプ on 箱庭Hugojaマイコン制御ロボットシミュレーションhttps://toppers.github.io/hakoniwa/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/single-robot/単体のSBCで構成される単体ロボットを対象とした箱庭プロトタイプモデルです.ETロボコンを題材としています. 組込みマイコン上のプログラムの振る舞いを,ロボット上の挙動と連携させて検証を進めることができます. -技術研鑽視点での狙い 物理シミュレータとマイコンシミュレータ間の連携方法の検討 異なるシミュレータ間の時間同期の検討 その他の狙い ETロボコンユーザ層に箱庭を広める(広報活動) 導入方法と使用方法 最小の構成と手順で単体ロボット向けシミュレータを試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください. -toppers/hakoniwa-single_robot: 箱庭プロトタイプモデルA:単体ロボット向けシミュレータ 動作例のデモ 謝辞・特記事項: Unityパッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉﨑涼志さん,木村明美さん,千葉純平さんにご協力いただきました. -HackEVのUnityアセットは,ETロボコン実行委員会より提供いただいたデータを基に作成しています.実行委員会の皆さまに深く感謝いたします. -ただし本アセットはETロボコンの本番環境とは異なりますので,大会に参加予定の方はご注意ください.また,本アセットは,個人利用または教育利用に限定してご利用ください.ROS制御ロボットシミュレーションhttps://toppers.github.io/hakoniwa/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/ros-robot/ロボットの制御にROS/ROS2を用いた箱庭プロトタイプモデルです.単体のロボットだけでなく,複数のロボットの連携動作も可能です. ROSで一般的に用いられているGazeboよりも軽量でロボットや環境もUnity上で容易にカスタマイズすることができ、URDF形式のモデルの導入も行うことができます。 -技術研鑽視点での狙い 一般的なロボット制御に用いられているROSも含めたシミュレーションの実行 複数のロボットを連携させたシミュレーションの実行 その他の狙い ROSのロボットも導入可能とすることで、複数の制御機構が混在したシミュレーション環境を実現する 導入方法と使用方法 最小の構成と手順で試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください. -toppers/hakoniwa-ros2sim: 箱庭 ROS シミュレータ 動作例のデモ 謝辞・特記事項: TurtleBot3 の Unity パッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉崎涼志さん,木村明美さんにご協力いただきました. -TurtleBot3 のUnity アセットは,株式会社ロボティズ様より提供いただいたデータを基に作成しています.ご協力いただき深く感謝いたします.複数ロボットの連携制御シミュレーションhttps://toppers.github.io/hakoniwa/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/multi-robot/複数のロボット,複数の制御プログラムによるシミュレーションを同じ環境で行うプロトタイプモデルです. UnityのPhotonライブラリを用いて複数のUnity環境の同期を行っており,加えてアセット間の時間同期も実現しています. またVRによるシミュレーション環境へのダイブも試行しています. -技術研鑽視点での狙い マルチ環境での連携方法検討(シミュレーション時間同期等) 箱庭アセット間の通信可視化方法の検討(ROS/ROS2連携含む) 箱庭アセットの仕組み検討 その他の狙い ROSユーザ層に箱庭を広める(広報活動) 導入方法と使用方法 以下のGithubリポジトリにて,各種デモを公開しています.ぜひお試し下さい. -‐ toppers/hakoniwa-ros-multiplay -動作例のデモ photonによる複数ロボットの連携 Oculus Questとの接続の様子 VRで箱庭内に入った様子ロボット間協調動作シミュレーションhttps://toppers.github.io/hakoniwa/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/harmony-robot/クラウドとロボティクスとの連携を目指した箱庭プロトタイプモデルです. -技術研鑽視点での狙い クラウド連携方法検討 ロボット間の連携方法検討(より複雑なロボットの動き/干渉に挑戦) 箱庭アセットを増やす仕組みの検討 その他の狙い RDBOX連携(開発支援仮想環境としての箱庭の実績作り) RDBOXユーザ層に箱庭を広める(広報活動) 現在,本プロトタイプモデルの実現に向けて鋭意開発中です.公開までしばしお待ちください. \ No newline at end of file +プロトタイプ on 箱庭https://toppers.github.io/hakoniwa/prototypes/Recent content in プロトタイプ on 箱庭Hugojaマイコン制御ロボットシミュレーションhttps://toppers.github.io/hakoniwa/prototypes/single-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/single-robot/<p>単体のSBCで構成される単体ロボットを対象とした箱庭プロトタイプモデルです.<a href="https://www.etrobo.jp/">ETロボコン</a>を題材としています. +組込みマイコン上のプログラムの振る舞いを,ロボット上の挙動と連携させて検証を進めることができます.</p> +<h3 id="技術研鑽視点での狙い">技術研鑽視点での狙い</h3> +<ul> +<li>物理シミュレータとマイコンシミュレータ間の連携方法の検討</li> +<li>異なるシミュレータ間の時間同期の検討</li> +</ul> +<h3 id="その他の狙い">その他の狙い</h3> +<ul> +<li>ETロボコンユーザ層に箱庭を広める(広報活動)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelA.png " border="" width="700" /> +</figure> + +<h3 id="導入方法と使用方法">導入方法と使用方法</h3> +<p>最小の構成と手順で単体ロボット向けシミュレータを試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください.</p> +<ul> +<li><a href="https://github.com/toppers/hakoniwa-single_robot">toppers/hakoniwa-single_robot: 箱庭プロトタイプモデルA:単体ロボット向けシミュレータ</a></li> +</ul> +<h3 id="動作例のデモ">動作例のデモ</h3> +<p><img alt="modelAdemo" src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelAdemo.gif"></p> +<p><img alt="modelAdemo1" src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelAdemo1.gif"></p> +<p><img alt="modelAdemo2" src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelAdemo2.gif"></p> +<hr> +<h4 id="謝辞特記事項">謝辞・特記事項:</h4> +<p>Unityパッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉﨑涼志さん,木村明美さん,千葉純平さんにご協力いただきました.</p> +<p>HackEVのUnityアセットは,ETロボコン実行委員会より提供いただいたデータを基に作成しています.実行委員会の皆さまに深く感謝いたします.<br> +ただし本アセットはETロボコンの本番環境とは異なりますので,大会に参加予定の方はご注意ください.また,本アセットは,個人利用または教育利用に限定してご利用ください.</p>ROS制御ロボットシミュレーションhttps://toppers.github.io/hakoniwa/prototypes/ros-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/ros-robot/<p>ロボットの制御にROS/ROS2を用いた箱庭プロトタイプモデルです.単体のロボットだけでなく,複数のロボットの連携動作も可能です. +ROSで一般的に用いられているGazeboよりも軽量でロボットや環境もUnity上で容易にカスタマイズすることができ、URDF形式のモデルの導入も行うことができます。</p> +<h3 id="技術研鑽視点での狙い">技術研鑽視点での狙い</h3> +<ul> +<li>一般的なロボット制御に用いられているROSも含めたシミュレーションの実行</li> +<li>複数のロボットを連携させたシミュレーションの実行</li> +</ul> +<h3 id="その他の狙い">その他の狙い</h3> +<ul> +<li>ROSのロボットも導入可能とすることで、複数の制御機構が混在したシミュレーション環境を実現する</li> +</ul> +<h3 id="導入方法と使用方法">導入方法と使用方法</h3> +<p>最小の構成と手順で試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください.</p> +<ul> +<li><a href="https://github.com/toppers/hakoniwa-ros2sim">toppers/hakoniwa-ros2sim: 箱庭 ROS シミュレータ</a></li> +</ul> +<h3 id="動作例のデモ">動作例のデモ</h3> +<p><img alt="modelROSdemo" src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelROS.gif"></p> +<hr> +<h4 id="謝辞特記事項">謝辞・特記事項:</h4> +<p>TurtleBot3 の Unity パッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉崎涼志さん,木村明美さんにご協力いただきました.</p> +<p>TurtleBot3 のUnity アセットは,株式会社ロボティズ様より提供いただいたデータを基に作成しています.ご協力いただき深く感謝いたします.</p>複数ロボットの連携制御シミュレーションhttps://toppers.github.io/hakoniwa/prototypes/multi-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/multi-robot/<p>複数のロボット,複数の制御プログラムによるシミュレーションを同じ環境で行うプロトタイプモデルです. +UnityのPhotonライブラリを用いて複数のUnity環境の同期を行っており,加えてアセット間の時間同期も実現しています. +またVRによるシミュレーション環境へのダイブも試行しています.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBoverview.png " border="" width="700" /> +</figure> + +<h3 id="技術研鑽視点での狙い">技術研鑽視点での狙い</h3> +<ul> +<li>マルチ環境での連携方法検討(シミュレーション時間同期等)</li> +<li>箱庭アセット間の通信可視化方法の検討(ROS/ROS2連携含む)</li> +<li>箱庭アセットの仕組み検討</li> +</ul> +<h3 id="その他の狙い">その他の狙い</h3> +<ul> +<li>ROSユーザ層に箱庭を広める(広報活動)</li> +</ul> +<h3 id="導入方法と使用方法">導入方法と使用方法</h3> +<p>以下のGithubリポジトリにて,各種デモを公開しています.ぜひお試し下さい.</p> +<p>‐ <a href="https://github.com/toppers/hakoniwa-ros-multiplay">toppers/hakoniwa-ros-multiplay</a></p> +<h3 id="動作例のデモ">動作例のデモ</h3> +<ul> +<li>photonによる複数ロボットの連携 +<video controls src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBdemo1.mp4" > +</li> +<li>Oculus Questとの接続の様子 +<video controls src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBdemo2.mp4" > +</li> +<li>VRで箱庭内に入った様子 +<video controls src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelBdemo3.mp4" > +</li> +</ul>ロボット間協調動作シミュレーションhttps://toppers.github.io/hakoniwa/prototypes/harmony-robot/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/prototypes/harmony-robot/<p>クラウドとロボティクスとの連携を目指した箱庭プロトタイプモデルです.</p> +<h3 id="技術研鑽視点での狙い">技術研鑽視点での狙い</h3> +<ul> +<li>クラウド連携方法検討</li> +<li>ロボット間の連携方法検討(より複雑なロボットの動き/干渉に挑戦)</li> +<li>箱庭アセットを増やす仕組みの検討</li> +</ul> +<h3 id="その他の狙い">その他の狙い</h3> +<ul> +<li>RDBOX連携(開発支援仮想環境としての箱庭の実績作り)</li> +<li>RDBOXユーザ層に箱庭を広める(広報活動)</li> +</ul> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/prototypes/modelC.png " border="" width="700" /> +</figure> + +<p>現在,本プロトタイプモデルの実現に向けて鋭意開発中です.公開までしばしお待ちください.</p> \ No newline at end of file diff --git a/prototypes/multi-robot/index.html b/prototypes/multi-robot/index.html index 9f4aa439..00b2c671 100644 --- a/prototypes/multi-robot/index.html +++ b/prototypes/multi-robot/index.html @@ -1,4 +1,4 @@ -複数ロボットの連携制御シミュレーション

            複数ロボットの連携制御シミュレーション

            Photonライブラリによる複数のROSロボットの連携とVR環境.

            複数のロボット,複数の制御プログラムによるシミュレーションを同じ環境で行うプロトタイプモデルです. +複数ロボットの連携制御シミュレーション

            複数ロボットの連携制御シミュレーション

            Photonライブラリによる複数のROSロボットの連携とVR環境.

            複数のロボット,複数の制御プログラムによるシミュレーションを同じ環境で行うプロトタイプモデルです. UnityのPhotonライブラリを用いて複数のUnity環境の同期を行っており,加えてアセット間の時間同期も実現しています. またVRによるシミュレーション環境へのダイブも試行しています.

            技術研鑽視点での狙い

            • マルチ環境での連携方法検討(シミュレーション時間同期等)
            • 箱庭アセット間の通信可視化方法の検討(ROS/ROS2連携含む)
            • 箱庭アセットの仕組み検討

            その他の狙い

            • ROSユーザ層に箱庭を広める(広報活動)

            導入方法と使用方法

            以下のGithubリポジトリにて,各種デモを公開しています.ぜひお試し下さい.

            toppers/hakoniwa-ros-multiplay

            動作例のデモ

            • photonによる複数ロボットの連携
            • Oculus Questとの接続の様子 diff --git a/prototypes/ros-robot/index.html b/prototypes/ros-robot/index.html index 958d5084..ce41cc59 100644 --- a/prototypes/ros-robot/index.html +++ b/prototypes/ros-robot/index.html @@ -1,2 +1,2 @@ -ROS制御ロボットシミュレーション

              ROS制御ロボットシミュレーション

              ROSと箱庭の連携シミュレーション例.

              ロボットの制御にROS/ROS2を用いた箱庭プロトタイプモデルです.単体のロボットだけでなく,複数のロボットの連携動作も可能です. +ROS制御ロボットシミュレーション

              ROS制御ロボットシミュレーション

              ROSと箱庭の連携シミュレーション例.

              ロボットの制御にROS/ROS2を用いた箱庭プロトタイプモデルです.単体のロボットだけでなく,複数のロボットの連携動作も可能です. ROSで一般的に用いられているGazeboよりも軽量でロボットや環境もUnity上で容易にカスタマイズすることができ、URDF形式のモデルの導入も行うことができます。

              技術研鑽視点での狙い

              • 一般的なロボット制御に用いられているROSも含めたシミュレーションの実行
              • 複数のロボットを連携させたシミュレーションの実行

              その他の狙い

              • ROSのロボットも導入可能とすることで、複数の制御機構が混在したシミュレーション環境を実現する

              導入方法と使用方法

              最小の構成と手順で試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください.

              動作例のデモ

              modelROSdemo


              謝辞・特記事項:

              TurtleBot3 の Unity パッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉崎涼志さん,木村明美さんにご協力いただきました.

              TurtleBot3 のUnity アセットは,株式会社ロボティズ様より提供いただいたデータを基に作成しています.ご協力いただき深く感謝いたします.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/prototypes/single-robot/index.html b/prototypes/single-robot/index.html index f148293f..ab42322a 100644 --- a/prototypes/single-robot/index.html +++ b/prototypes/single-robot/index.html @@ -1,2 +1,2 @@ -マイコン制御ロボットシミュレーション

              マイコン制御ロボットシミュレーション

              マイコンシミュレータと箱庭の連携事例.

              単体のSBCで構成される単体ロボットを対象とした箱庭プロトタイプモデルです.ETロボコンを題材としています. +マイコン制御ロボットシミュレーション

              マイコン制御ロボットシミュレーション

              マイコンシミュレータと箱庭の連携事例.

              単体のSBCで構成される単体ロボットを対象とした箱庭プロトタイプモデルです.ETロボコンを題材としています. 組込みマイコン上のプログラムの振る舞いを,ロボット上の挙動と連携させて検証を進めることができます.

              技術研鑽視点での狙い

              • 物理シミュレータとマイコンシミュレータ間の連携方法の検討
              • 異なるシミュレータ間の時間同期の検討

              その他の狙い

              • ETロボコンユーザ層に箱庭を広める(広報活動)

              導入方法と使用方法

              最小の構成と手順で単体ロボット向けシミュレータを試行できるパッケージを,下記のGitHubリポジトリで公開しています.ぜひ試してみてください.

              動作例のデモ

              modelAdemo

              modelAdemo1

              modelAdemo2


              謝辞・特記事項:

              Unityパッケージの設計と作成にあたっては,宝塚大学 東京メディア芸術学部 吉岡章夫准教授および学部生の杉﨑涼志さん,木村明美さん,千葉純平さんにご協力いただきました.

              HackEVのUnityアセットは,ETロボコン実行委員会より提供いただいたデータを基に作成しています.実行委員会の皆さまに深く感謝いたします.
              ただし本アセットはETロボコンの本番環境とは異なりますので,大会に参加予定の方はご注意ください.また,本アセットは,個人利用または教育利用に限定してご利用ください.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/repositories/index.html b/repositories/index.html index a13d7329..cda5a6e4 100644 --- a/repositories/index.html +++ b/repositories/index.html @@ -1 +1 @@ -リポジトリ一覧

              リポジトリ一覧

              箱庭WGが開発・管理しているオープンソースソフトウェアを紹介します.

              箱庭本体

              略称・リンク概要備考
              hakoniwa全般的なサポート対応と本Webサイトのコンテンツ管理のためのリポジトリ
              hakoniwa-single_robot箱庭プロトタイプモデルA:単体ロボット向けシミュレータを最小の構成・手順で試行できるパッケージ
              hakoniwa-ros2sim箱庭上で ROS 2 プログラムを手軽にシミュレーションできる環境
              hakoniwa-core箱庭コア機能の試作開発用リポジトリ
              hakoniwa-documentTOPPERS/箱庭 利用者向けの公式ドキュメント
              hakoniwa-core-cpp-client箱庭コア機能のC言語API
              hakoniwa-conductor分散環境における箱庭実現のための調停プロセス
              hakoniwa-bridgeリアル(エッジ)とバーチャル(箱庭)を接続するための通信モジュール
              hakoniwa-webserver箱庭PDUをWebSocket経由でブラウザ上で可視化

              Athrill

              略称・リンク概要備考
              athrillAthrill本体(ターゲット非依存部)
              athrill-device外部デバイス連携のためのgRPCライブラリ
              athrill-target-v850e2mAthrill V850E2Mターゲット依存部
              athrill-target-ARMv7-AAthrill ARMv7-Aターゲット依存部
              athrill-target-rh850f1xAthrill RH850F1xターゲット依存部
              athrill-gcc-v850e2mAthrill V850E2Mターゲット対応のgccパッケージ

              TOPPERS kernel

              略称・リンク概要備考
              ev3rt-athrill-v850e2mTOPPERS/EV3RTプラットフォームのAthrill向けV850E2M版ASP3カーネルを代用
              ev3rt-athrill-ARMv7-ATOPPERS/EV3RTプラットフォームのAthrill向けARMv7-A版ASP3カーネルを代用
              asp-athrill-mbedAthrill向けTOPPERS/ASPカーネルとmbedライブラリのパッケージ
              asp3-athrill-v850e2mAthrill向けTOPPERS/ASP3カーネルのパッケージ

              Unity

              略称・リンク概要備考
              hakoniwa-Unity-Package箱庭向けのUnityアセット・パッケージ
              hakoniwa-unity-drone-modelPX4と連携可能なUnityドローンシミュレータ

              mROS

              略称・リンク概要備考
              mROS組込みデバイス向けROS 1ノード軽量実行環境
              mROS 2組込みデバイス向けROS 2ノード軽量実行環境

              Samples

              略称・リンク概要備考
              hakoniwa-scenario-samples箱庭の動作シナリオのサンプル集
              hakoniwa-px4simPX4と連携可能なドローンのプラントモデル用シミュレーション環境

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +リポジトリ一覧

              リポジトリ一覧

              箱庭WGが開発・管理しているオープンソースソフトウェアを紹介します.

              箱庭本体

              略称・リンク概要備考
              hakoniwa全般的なサポート対応と本Webサイトのコンテンツ管理のためのリポジトリ
              hakoniwa-single_robot箱庭プロトタイプモデルA:単体ロボット向けシミュレータを最小の構成・手順で試行できるパッケージ
              hakoniwa-ros2sim箱庭上で ROS 2 プログラムを手軽にシミュレーションできる環境
              hakoniwa-core箱庭コア機能の試作開発用リポジトリ
              hakoniwa-documentTOPPERS/箱庭 利用者向けの公式ドキュメント
              hakoniwa-core-cpp-client箱庭コア機能のC言語API
              hakoniwa-conductor分散環境における箱庭実現のための調停プロセス
              hakoniwa-bridgeリアル(エッジ)とバーチャル(箱庭)を接続するための通信モジュール
              hakoniwa-webserver箱庭PDUをWebSocket経由でブラウザ上で可視化

              Athrill

              略称・リンク概要備考
              athrillAthrill本体(ターゲット非依存部)
              athrill-device外部デバイス連携のためのgRPCライブラリ
              athrill-target-v850e2mAthrill V850E2Mターゲット依存部
              athrill-target-ARMv7-AAthrill ARMv7-Aターゲット依存部
              athrill-target-rh850f1xAthrill RH850F1xターゲット依存部
              athrill-gcc-v850e2mAthrill V850E2Mターゲット対応のgccパッケージ

              TOPPERS kernel

              略称・リンク概要備考
              ev3rt-athrill-v850e2mTOPPERS/EV3RTプラットフォームのAthrill向けV850E2M版ASP3カーネルを代用
              ev3rt-athrill-ARMv7-ATOPPERS/EV3RTプラットフォームのAthrill向けARMv7-A版ASP3カーネルを代用
              asp-athrill-mbedAthrill向けTOPPERS/ASPカーネルとmbedライブラリのパッケージ
              asp3-athrill-v850e2mAthrill向けTOPPERS/ASP3カーネルのパッケージ

              Unity

              略称・リンク概要備考
              hakoniwa-Unity-Package箱庭向けのUnityアセット・パッケージ
              hakoniwa-unity-drone-modelPX4と連携可能なUnityドローンシミュレータ

              mROS

              略称・リンク概要備考
              mROS組込みデバイス向けROS 1ノード軽量実行環境
              mROS 2組込みデバイス向けROS 2ノード軽量実行環境

              Samples

              略称・リンク概要備考
              hakoniwa-scenario-samples箱庭の動作シナリオのサンプル集
              hakoniwa-px4simPX4と連携可能なドローンのプラントモデル用シミュレーション環境

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/showcase/index.html b/showcase/index.html index 7bba197a..35491cf5 100644 --- a/showcase/index.html +++ b/showcase/index.html @@ -1 +1 @@ -ショーケース

              ショーケース

              デモ動画やメディア掲載情報などを紹介します.

              「箱庭」コンセプトムービー2021

              2021年6月時点での箱庭の成果物で実現できることを、デモ動画としてまとめました。

              このページの先頭に戻る

              シミュレーション環境:箱庭を使ったROSロボットのCI(継続的インテグレーション)

              クラウドネイティブ環境上に構築した「箱庭」と合わせて、コミュニティ版GitLab(MIT Licence)が提供する、ソースコード管理機能及び、CI Runner機能を使ってCI(Continuous Integration,継続的インテグレーション)を実現しています。

              クラウドネイティブ環境はOSSであるRDBOX(Robotics Developer BOX)を使って構築しています。

              このページの先頭に戻る

              MONOistでの連載

              モノづくりスペシャリストのための情報ポータル「MONOist」に連載記事を寄稿しています。
              仮想環境を使ったクラウド時代の組み込み開発のススメ」という連載タイトルにて、箱庭の活動を織り交ぜながらこれからのIoTシステム開発の姿を紹介しています。ぜひご覧ください。

              このページの先頭に戻る

              Unity開発事例集

              ユニティ・テクノロジーズ・ジャパン株式会社のWebページ「Unityを活用した開発事例 | Unity for Industry」において、箱庭の単体ロボット向けシミュレータが取り上げられています。

              「MANUFACTURE 製造分野でのUnity開発事例」の項目をご覧ください。

              このページの先頭に戻る

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +ショーケース

              ショーケース

              デモ動画やメディア掲載情報などを紹介します.

              「箱庭」コンセプトムービー2021

              2021年6月時点での箱庭の成果物で実現できることを、デモ動画としてまとめました。

              このページの先頭に戻る

              シミュレーション環境:箱庭を使ったROSロボットのCI(継続的インテグレーション)

              クラウドネイティブ環境上に構築した「箱庭」と合わせて、コミュニティ版GitLab(MIT Licence)が提供する、ソースコード管理機能及び、CI Runner機能を使ってCI(Continuous Integration,継続的インテグレーション)を実現しています。

              クラウドネイティブ環境はOSSであるRDBOX(Robotics Developer BOX)を使って構築しています。

              このページの先頭に戻る

              MONOistでの連載

              モノづくりスペシャリストのための情報ポータル「MONOist」に連載記事を寄稿しています。
              仮想環境を使ったクラウド時代の組み込み開発のススメ」という連載タイトルにて、箱庭の活動を織り交ぜながらこれからのIoTシステム開発の姿を紹介しています。ぜひご覧ください。

              このページの先頭に戻る

              Unity開発事例集

              ユニティ・テクノロジーズ・ジャパン株式会社のWebページ「Unityを活用した開発事例 | Unity for Industry」において、箱庭の単体ロボット向けシミュレータが取り上げられています。

              「MANUFACTURE 製造分野でのUnity開発事例」の項目をご覧ください。

              このページの先頭に戻る

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/10_wsl_install/index.html b/single-robot-setup-detail/10_wsl_install/index.html index aa74d298..d049e3cc 100644 --- a/single-robot-setup-detail/10_wsl_install/index.html +++ b/single-robot-setup-detail/10_wsl_install/index.html @@ -1,10 +1,10 @@ -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              WSLのインストール


              Windows版の場合はWSLをインストールいただく必要があります.
              ※注意点として,現時点(2020/6月)時点では,WSL2はご利用いただけません(WSL2とUnity間でUDP通信できないため).

              WSLのインストール方法は色々なサイトで紹介されておりますので,Ubuntu 18.04 LTSをインストールください.

              以下のサイト等が参考になるかと思います.

              インストールが完了したら,aptパッケージを更新しておきます.
              (更新しないと後ほど行うgccのインストールで失敗することがあるためです)

              $ sudo apt update
              +gcc make $ sudo apt install build-essential ">

              単体ロボット向けシミュレータ導入手順

              .

              WSLのインストール


              Windows版の場合はWSLをインストールいただく必要があります.
              ※注意点として,現時点(2020/6月)時点では,WSL2はご利用いただけません(WSL2とUnity間でUDP通信できないため).

              WSLのインストール方法は色々なサイトで紹介されておりますので,Ubuntu 18.04 LTSをインストールください.

              以下のサイト等が参考になるかと思います.

              インストールが完了したら,aptパッケージを更新しておきます.
              (更新しないと後ほど行うgccのインストールで失敗することがあるためです)

              $ sudo apt update
               

              aptパッケージを更新したら,あらかじめ以下が使用できるようにインストールしておきます

              • gcc
              • make
              $ sudo apt install build-essential
               

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/20_ruby_install_mac/index.html b/single-robot-setup-detail/20_ruby_install_mac/index.html index 1627ef97..d6fcf44d 100644 --- a/single-robot-setup-detail/20_ruby_install_mac/index.html +++ b/single-robot-setup-detail/20_ruby_install_mac/index.html @@ -1,5 +1,5 @@ -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              Rubyのインストール


              v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. +$ brew install ruby ">

              単体ロボット向けシミュレータ導入手順

              .

              Rubyのインストール


              v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. ※EV3ロボット制御アプリをビルドする際に必要となります.

              Homebrewを使用してインストールします.

              $ brew install ruby
               

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/20_ruby_install_win_linux/index.html b/single-robot-setup-detail/20_ruby_install_win_linux/index.html index 8b12114f..cd8a2d7c 100644 --- a/single-robot-setup-detail/20_ruby_install_win_linux/index.html +++ b/single-robot-setup-detail/20_ruby_install_win_linux/index.html @@ -1,4 +1,4 @@ -単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              Rubyのインストール


              v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. +単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              Rubyのインストール


              v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. ※EV3ロボット制御アプリをビルドする際に必要となります.

              $ sudo apt install ruby
               

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/30_athrill2_install_arm/index.html b/single-robot-setup-detail/30_athrill2_install_arm/index.html index cf844d12..b386a55e 100644 --- a/single-robot-setup-detail/30_athrill2_install_arm/index.html +++ b/single-robot-setup-detail/30_athrill2_install_arm/index.html @@ -1,16 +1,11 @@ -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              athrill2のインストール

              athrill2のインストール手順


              • athrill のチェックアウト
              • athrill-target のチェックアウト
              • コンパイラのインストール
              • ビルド&インストール

              athrill のチェックアウト


              athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています.

              共通コードのチェックアウトは,以下の通りです.

              $ git clone https://github.com/toppers/athrill.git
              +ビルド&インストール ビルド方法ですが,端末上でathrill-target-ARMv7-A に移動してください.">

              単体ロボット向けシミュレータ導入手順

              .

              athrill2のインストール

              athrill2のインストール手順


              • athrill のチェックアウト
              • athrill-target のチェックアウト
              • コンパイラのインストール
              • ビルド&インストール

              athrill のチェックアウト


              athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています.

              共通コードのチェックアウトは,以下の通りです.

              $ git clone https://github.com/toppers/athrill.git
               

              athrill-target のチェックアウト


              CPUアーキに依存するコードは,athrill-target側で管理しています. 今回のARM対応版は,ここにあります.

              $ git clone https://github.com/toppers/athrill-target-ARMv7-A.git
               

              なお,athrill と athrill-targetを以下のフォルダ構成にしてください.

              .
              diff --git a/single-robot-setup-detail/30_athrill2_install_v850/index.html b/single-robot-setup-detail/30_athrill2_install_v850/index.html
              index 2e7b1a70..c30a2ed1 100644
              --- a/single-robot-setup-detail/30_athrill2_install_v850/index.html
              +++ b/single-robot-setup-detail/30_athrill2_install_v850/index.html
              @@ -1,4 +1,4 @@
              -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順 

              単体ロボット向けシミュレータ導入手順

              .

              athrill2のインストール

              athrill2のインストール手順


              • athrill のチェックアウト
              • athrill-target のチェックアウト
              • コンパイラのインストール
              • ビルド&インストール

              athrill のチェックアウト


              athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています.

              共通コードのチェックアウトは,以下の通りです.

              $ git clone https://github.com/toppers/athrill.git
              +ビルド&インストール ビルド方法ですが,端末上でathrill-target-v850e2m に移動してください.">

              単体ロボット向けシミュレータ導入手順

              .

              athrill2のインストール

              athrill2のインストール手順


              • athrill のチェックアウト
              • athrill-target のチェックアウト
              • コンパイラのインストール
              • ビルド&インストール

              athrill のチェックアウト


              athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています.

              共通コードのチェックアウトは,以下の通りです.

              $ git clone https://github.com/toppers/athrill.git
               

              athrill-target のチェックアウト


              CPUアーキに依存するコードは,athrill-target側で管理しています.
              今回のV850対応版は,ここにあります.

              $ git clone https://github.com/toppers/athrill-target-v850e2m.git
               

              なお,athrill と athrill-targetを以下のフォルダ構成にしてください.

              .
               ├── athrill
              diff --git a/single-robot-setup-detail/40_gcc_install_arm/index.html b/single-robot-setup-detail/40_gcc_install_arm/index.html
              index 9d9cba58..4407f0a3 100644
              --- a/single-robot-setup-detail/40_gcc_install_arm/index.html
              +++ b/single-robot-setup-detail/40_gcc_install_arm/index.html
              @@ -1,5 +1,5 @@
              -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順 

              単体ロボット向けシミュレータ導入手順

              .

              linux版64bit gccコンパイラ(ライブラリ含む)のインストール


              ARM版のathrill2を利用される場合は,以下のサイトを参考にコンパイラおよびライブラリをインストールください.

              Windows(WSL)

              Linux

              Mac

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +https://www.yokoweb.net/2018/05/16/macos-gcc-arm-brew-install/ ">

              単体ロボット向けシミュレータ導入手順

              .

              linux版64bit gccコンパイラ(ライブラリ含む)のインストール


              ARM版のathrill2を利用される場合は,以下のサイトを参考にコンパイラおよびライブラリをインストールください.

              Windows(WSL)

              Linux

              Mac

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/40_gcc_install_v850/index.html b/single-robot-setup-detail/40_gcc_install_v850/index.html index 59d19552..7c5c5d8f 100644 --- a/single-robot-setup-detail/40_gcc_install_v850/index.html +++ b/single-robot-setup-detail/40_gcc_install_v850/index.html @@ -1,8 +1,8 @@ -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              linux版64bit gccコンパイラ(ライブラリ含む)のインストール


              v850版のathrill2を利用される場合は,以下のサイトからコンパイラおよびライブラリ(athrill-gcc-package.tar.gz)をダウンロードください.

              $ tar xzvf athrill-gcc-package.tar.gz
              +source ${HOME}/.bashrc ">

              単体ロボット向けシミュレータ導入手順

              .

              linux版64bit gccコンパイラ(ライブラリ含む)のインストール


              v850版のathrill2を利用される場合は,以下のサイトからコンパイラおよびライブラリ(athrill-gcc-package.tar.gz)をダウンロードください.

              $ tar xzvf athrill-gcc-package.tar.gz
               $ cd athrill-gcc-package/
               $ tar xzvf athrill-gcc.tar.gz
               $ ls usr/local/athrill-gcc/
              diff --git a/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/index.html b/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/index.html
              index 9ed48bf9..69e7eb14 100644
              --- a/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/index.html
              +++ b/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/index.html
              @@ -1,7 +1,7 @@
              -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順 

              単体ロボット向けシミュレータ導入手順

              .

              箱庭用 EV3RT 開発環境のダウンロード

              任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください.

              なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください.

               |---athril
              +$ git clone https://github.com/toppers/ev3rt-athrill-ARMv7-A.git ">

              単体ロボット向けシミュレータ導入手順

              .

              箱庭用 EV3RT 開発環境のダウンロード

              任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください.

              なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください.

               |---athril
                |---athrill-target-ARMv7-A
                └---ev3rt-athrill-ARMv7-A
               

              clone方法は以下の通りです.

              $ git clone https://github.com/toppers/ev3rt-athrill-ARMv7-A.git
              diff --git a/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/index.html b/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/index.html
              index 73bd094f..db67bb47 100644
              --- a/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/index.html
              +++ b/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/index.html
              @@ -1,10 +1,10 @@
              -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順 

              単体ロボット向けシミュレータ導入手順

              .

              箱庭用 EV3RT 開発環境のダウンロード

              任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください.

              なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください.

               |---athril
              +$ git clone https://github.com/toppers/hakoniwa-scenario-samples.git ">

              単体ロボット向けシミュレータ導入手順

              .

              箱庭用 EV3RT 開発環境のダウンロード

              任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください.

              なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください.

               |---athril
                |---athrill-target-v850e2m
                └---ev3rt-athrill-v850e2m
               

              clone方法は以下の通りです.

              $ git clone https://github.com/toppers/ev3rt-athrill-v850e2m.git
              diff --git a/single-robot-setup-detail/51_ev3rt_app_introduction_arm/index.html b/single-robot-setup-detail/51_ev3rt_app_introduction_arm/index.html
              index 1651b850..59907271 100644
              --- a/single-robot-setup-detail/51_ev3rt_app_introduction_arm/index.html
              +++ b/single-robot-setup-detail/51_ev3rt_app_introduction_arm/index.html
              @@ -1,9 +1,9 @@
              -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順 

              単体ロボット向けシミュレータ導入手順

              .

              EV3ロボット制御プログラム

              現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です.
              ※まだ暫定構成です.

              ARM版のathrill2を利用される場合は,以下のフォルダで作業してください.

              $ ls ev3rt-athrill-ARMv7-A/sdk/OBJ1.1/
              +while(1) {
              /**
              * PID controller
              */
              #define white 100
              #define black 50
              static float lasterror = 0, integral = 0;
              static float midpoint = (white - black) / 2 + black;
              {
              float error = midpoint - ev3_color_sensor_get_reflect(EV3_PORT_1);
              integral = error + integral * 0.3;
              float steer = 0.6 * error + 0.3 * integral + 1 * (error - lasterror);
              ev3_motor_steer(left_motor, right_motor, 10, steer);
              lasterror = error;
              debug_var = ev3_gyro_sensor_get_angle(EV3_PORT_4);
              int distance = ev3_ultrasonic_sensor_get_distance(EV3_PORT_2);
              debug_var2 = distance;
              if (distance <= 100) {
              ev3_motor_stop(left_motor, false);
              ev3_motor_stop(right_motor, false);
              }
              }
              tslp_tsk(100); /* 100msec */
              }
              } ">

              単体ロボット向けシミュレータ導入手順

              .

              EV3ロボット制御プログラム

              現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です.
              ※まだ暫定構成です.

              ARM版のathrill2を利用される場合は,以下のフォルダで作業してください.

              $ ls ev3rt-athrill-ARMv7-A/sdk/OBJ1.1/
               app.c    app.h             device_config_mmap.txt  Makefile      memory_mmap.txt  simstart.bash
               app.cfg  athrill_mmap.bin  device_config.txt       Makefile.inc  memory.txt       unity_mmap.bin
               

              現状は,app.c/main_task で直接制御を行っています.
              コード断片は以下の通りです.

                  while(1) {
              diff --git a/single-robot-setup-detail/51_ev3rt_app_introduction_v850/index.html b/single-robot-setup-detail/51_ev3rt_app_introduction_v850/index.html
              index fbfa2750..02095655 100644
              --- a/single-robot-setup-detail/51_ev3rt_app_introduction_v850/index.html
              +++ b/single-robot-setup-detail/51_ev3rt_app_introduction_v850/index.html
              @@ -1,9 +1,7 @@
              -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順 

              単体ロボット向けシミュレータ導入手順

              .

              EV3ロボット制御プログラム

              現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です.

              v850版のathrill2を利用される場合は,以下のフォルダで作業してください.

              $ ls ev3rt-athrill-v850e2m/sdk/workspace/line_trace/
              +$ ls ev3rt-athrill-v850e2m/sdk/workspace/color_sensor/
              app.c app.h device_config_mmap.txt log.txt memory_mmap.txt unity_mmap.bin
              app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt ">

              単体ロボット向けシミュレータ導入手順

              .

              EV3ロボット制御プログラム

              現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です.

              v850版のathrill2を利用される場合は,以下のフォルダで作業してください.

              $ ls ev3rt-athrill-v850e2m/sdk/workspace/line_trace/
               app.c    app.h             device_config_mmap.txt  log.txt       memory_mmap.txt  unity_mmap.bin
               app.cfg  athrill_mmap.bin  device_config.txt       Makefile.inc  memory.txt
               

              または

              $ ls ev3rt-athrill-v850e2m/sdk/workspace/color_sensor/
              diff --git a/single-robot-setup-detail/60_unity_install/index.html b/single-robot-setup-detail/60_unity_install/index.html
              index 08e98d3b..a6cca6c5 100644
              --- a/single-robot-setup-detail/60_unity_install/index.html
              +++ b/single-robot-setup-detail/60_unity_install/index.html
              @@ -1,6 +1,3 @@
              -単体ロボット向けシミュレータ導入手順 

              単体ロボット向けシミュレータ導入手順

              .

              Unityのインストール・パッケージのインポート・通信方式の切替方法

              Unityパッケージのダウンロード


              単体ロボット向けシミュレータで使用するUnityパッケージを2種類用意してあります. -どちらかのパッケージをご選択いただき,ダウンロードを行ってください.

              使用するUnityパッケージ説明
              single-robot-HackEVHackEVを模した走行体モデルを使用しています
              ev3rt-simple-robotシンプルな走行体モデルを使用しています
              single-robot-HackEV(v2.0)上記2つのモデルを含んでおり自由に選択できます
              single-robot-HackEV(v2.1)single-robot-HackEV(v2.0)の内容に加え,シミュレータのコンフィグ機能,バイナリ実行機能を追加したものとなっております.(Windows, Mac対応済み.Linux版は開発中です)

              それぞれ下記からダウンロードしてください


              使用するUnityのパッケージによって,設定画面のレイアウトが異なりますため,
              ご選択いただいたUnityパッケージに合わせた導入手順をご参照ください

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              Unityのインストール・パッケージのインポート・通信方式の切替方法

              Unityパッケージのダウンロード


              単体ロボット向けシミュレータで使用するUnityパッケージを2種類用意してあります. +どちらかのパッケージをご選択いただき,ダウンロードを行ってください.

              使用するUnityパッケージ説明
              single-robot-HackEVHackEVを模した走行体モデルを使用しています
              ev3rt-simple-robotシンプルな走行体モデルを使用しています
              single-robot-HackEV(v2.0)上記2つのモデルを含んでおり自由に選択できます
              single-robot-HackEV(v2.1)single-robot-HackEV(v2.0)の内容に加え,シミュレータのコンフィグ機能,バイナリ実行機能を追加したものとなっております.(Windows, Mac対応済み.Linux版は開発中です)

              それぞれ下記からダウンロードしてください


              使用するUnityのパッケージによって,設定画面のレイアウトが異なりますため,
              ご選択いただいたUnityパッケージに合わせた導入手順をご参照ください

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/60_unity_install_v1.0/index.html b/single-robot-setup-detail/60_unity_install_v1.0/index.html index 450796c9..98545627 100644 --- a/single-robot-setup-detail/60_unity_install_v1.0/index.html +++ b/single-robot-setup-detail/60_unity_install_v1.0/index.html @@ -1,4 +1,4 @@ -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              Unityのインストール・パッケージのインポート・通信方式の切替方法

              Unityのインストール


              Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.

              以下のサイト等が参考になるかと思います.

              ※動作確認はUnity 2020.1.0b9(64bit)で行っております.
               使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.

              Unityパッケージのインポート


              Unity 起動

              まず,インストールしたUnityを起動してください.
              無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.

              次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.

              成功すると,以下のようにUnityが起動します.

              Unityパッケージのインポート

              ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります

              Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package…」と選択し,任意の unitypackageファイルを選択してください.

              成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください.

              成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. +Unityパッケージのインポート ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります">

              単体ロボット向けシミュレータ導入手順

              .

              Unityのインストール・パッケージのインポート・通信方式の切替方法

              Unityのインストール


              Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.

              以下のサイト等が参考になるかと思います.

              ※動作確認はUnity 2020.1.0b9(64bit)で行っております.
               使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.

              Unityパッケージのインポート


              Unity 起動

              まず,インストールしたUnityを起動してください.
              無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.

              次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.

              成功すると,以下のようにUnityが起動します.

              Unityパッケージのインポート

              ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります

              Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package…」と選択し,任意の unitypackageファイルを選択してください.

              成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください.

              成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. Toppers_Courseをダブルクリックすると下図の画面が現れます.

              次に,シミュレーションに関わる設定を変更します.

              Unity のメニューから,「Edit」⇒「Project Settings」を選択します.

              「Time」
              Fixed Timestep を 0.001に, Time Scale を 0.6に設定します.

              ev3rt-simple-robot.unitypackageを使用する場合で,もしシミュレーションの動作が
              遅い場合には,Fixed Timestep を 0.01に,EV3 Motor(Script)のIntervalを 0.0005に
              設定してください.

              「Quality」
              OtherVSync Count を Don’t Sync に設定します.

              これでインポート作業終了です.

              通信方式の切替方法


              athrillとUnity間での通信方式によって設定が異なります. ご自身の環境に合わせて,どちらかの通信方式をご選択ください.

              MMAPについて

              MMAPにすると嬉しい点としては以下が挙げられます.

              • UDP のように通信ロストは発生しない(シミュレーション精度向上につながる)
              • Unity と athrill 間のやりとりは共有メモリベースなので,高速になる(と思われる)
              • 上記のとおり,精度向上と高速性を期待して試行してみましたが,精度は良くなりました(速度はあまり変化ないような?).

              ただし,デメリットとして以下が挙げられます.

              • 1マシン前提での構成を余儀なくされる
                • UDPであれば,athrillを別PCに配置して負荷分散可能ですので.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/60_unity_install_v2.0/index.html b/single-robot-setup-detail/60_unity_install_v2.0/index.html index 9840c765..7b6ead12 100644 --- a/single-robot-setup-detail/60_unity_install_v2.0/index.html +++ b/single-robot-setup-detail/60_unity_install_v2.0/index.html @@ -1,4 +1,4 @@ -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              Unityのインストール・パッケージのインポート・通信方式の切替方法

              Unityのインストール


              Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.

              以下のサイト等が参考になるかと思います.

              ※動作確認はUnity 2020.1.0b9(64bit)で行っております.
               使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.

              Unityパッケージのインポート


              Unity 起動

              まず,インストールしたUnityを起動してください.
              無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.

              次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.

              成功すると,以下のようにUnityが起動します.

              Unityパッケージのインポート

              ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります

              Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package…」と選択し,任意の unitypackageファイルを選択してください.

              成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください.

              成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. +Unityパッケージのインポート ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります">

              単体ロボット向けシミュレータ導入手順

              .

              Unityのインストール・パッケージのインポート・通信方式の切替方法

              Unityのインストール


              Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.

              以下のサイト等が参考になるかと思います.

              ※動作確認はUnity 2020.1.0b9(64bit)で行っております.
               使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.

              Unityパッケージのインポート


              Unity 起動

              まず,インストールしたUnityを起動してください.
              無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.

              次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.

              成功すると,以下のようにUnityが起動します.

              Unityパッケージのインポート

              ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります

              Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package…」と選択し,任意の unitypackageファイルを選択してください.

              成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください.

              成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. Toppers_Courseをダブルクリックすると下図の画面が現れます.

              次に,シミュレーションに関わる設定を変更します.

              Unity のメニューから,「Edit」⇒「Project Settings」を選択します.

              「Time」
              Fixed Timestep を 0.001に, Time Scale を 0.6に設定します.

              ev3rt-simple-robot.unitypackageを使用する場合で,もしシミュレーションの動作が
              遅い場合には,Fixed Timestep を 0.01に,EV3 Motor(Script)のIntervalを 0.0005に
              設定してください.

              「Quality」
              OtherVSync Count を Don’t Sync に設定します.

              これでインポート作業終了です.

              通信方式の切替方法


              athrillとUnity間での通信方式によって設定が異なります. ご自身の環境に合わせて,どちらかの通信方式をご選択ください.

              MMAPについて

              MMAPにすると嬉しい点としては以下が挙げられます.

              • UDP のように通信ロストは発生しない(シミュレーション精度向上につながる)
              • Unity と athrill 間のやりとりは共有メモリベースなので,高速になる(と思われる)
              • 上記のとおり,精度向上と高速性を期待して試行してみましたが,精度は良くなりました(速度はあまり変化ないような?).

              ただし,デメリットとして以下が挙げられます.

              • 1マシン前提での構成を余儀なくされる
                • UDPであれば,athrillを別PCに配置して負荷分散可能ですので.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/60_unity_install_v2.1/index.html b/single-robot-setup-detail/60_unity_install_v2.1/index.html index d73d5831..eacf95b1 100644 --- a/single-robot-setup-detail/60_unity_install_v2.1/index.html +++ b/single-robot-setup-detail/60_unity_install_v2.1/index.html @@ -1,4 +1,4 @@ -単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              Unityのインストール・パッケージのインポート・通信方式の切替方法

              Unityのインストール


              Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.

              以下のサイト等が参考になるかと思います.

              ※動作確認はUnity 2020.1.0b9(64bit)で行っております.
               使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.

              Unityパッケージのインポート


              Unity 起動

              まず,インストールしたUnityを起動してください.
              無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.

              次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.

              成功すると,以下のようにUnityが起動します.

              Unityパッケージのインポート

              ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります

              Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package…」と選択し,任意の unitypackageファイルを選択してください.

              成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください.

              成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. +Unityパッケージのインポート ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります">

              単体ロボット向けシミュレータ導入手順

              .

              Unityのインストール・パッケージのインポート・通信方式の切替方法

              Unityのインストール


              Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.

              以下のサイト等が参考になるかと思います.

              ※動作確認はUnity 2020.1.0b9(64bit)で行っております.
               使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.

              Unityパッケージのインポート


              Unity 起動

              まず,インストールしたUnityを起動してください.
              無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.

              次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.

              成功すると,以下のようにUnityが起動します.

              Unityパッケージのインポート

              ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります

              Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package…」と選択し,任意の unitypackageファイルを選択してください.

              成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください.

              成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. Toppers_Courseをダブルクリックすると下図の画面が現れます.

              次に,シミュレーションに関わる設定を変更します.

              Unity のメニューから,「Edit」⇒「Project Settings」を選択します.

              「Time」
              Fixed Timestep を 0.001に, Time Scale を 0.6に設定します.

              ev3rt-simple-robot.unitypackageを使用する場合で,もしシミュレーションの動作が
              遅い場合には,Fixed Timestep を 0.01に,EV3 Motor(Script)のIntervalを 0.0005に
              設定してください.

              「Quality」
              OtherVSync Count を Don’t Sync に設定します.

              これでインポート作業終了です.

              通信方式の切替方法


              athrillとUnity間での通信方式に設定を行います.
              設定はconfig.jsonという設定ファイルを作成し,設定を行います.

              config.json の設定例(通信方式がMMAPの場合)

              設定するファイルパスは全て絶対パスで記述します.

              {
               	"AthrillPath":"/mnt/c/project/esm/athrill/bin/linux/athrill2",
              diff --git a/single-robot-setup-detail/61_unity_install_mmap/index.html b/single-robot-setup-detail/61_unity_install_mmap/index.html
              index b1a96a8f..2a77bd1e 100644
              --- a/single-robot-setup-detail/61_unity_install_mmap/index.html
              +++ b/single-robot-setup-detail/61_unity_install_mmap/index.html
              @@ -1,4 +1,4 @@
              -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順 

              単体ロボット向けシミュレータ導入手順

              .

              MMAP用Unity設定

              UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います.

              Unity のメニューから,「Edit」⇒「Project Settings」を選択します.

              「Player」
              Other SettingScripting Define SymbolsVDEV_IO_MMAPと設定します.

              MMAP用パラメータ設定

              ※なお,このページで紹介しているUnity画面の画像はWindows版のものです

              設定する場所は,Unity の以下のスクリプト・パラメータ(Filepath)部分です.

              image.png

              インポート直後ですと,[EV3 Actuator] と [EV3 Sensor]の Filepath は空白です.
              ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します.

              MMAPファイル自体は,以下の2ファイルがapp.cと同じフォルダに含まれています.

              • athrill_mmap.bin
              • unity_mmap.bin

              unity_mmap.bin の絶対ファイルパスを,[EV3 Sensor]のFilepathに設定してください(設定例:下図).

              image.png

              athrill_mmap.bin の絶対ファイルパスを,[EV3 Actuator]のFilepathに設定してください(設定例:下図).

              image.png

              例えば,v850版を使用するという前提でev3rt-athrill-v850e2mのローカルリポジトリが,
              C:\project\hakoniwaにあり,実行したいアプリケーションのフォルダがline_traceの場合は,
              以下のパスを設定します.

              • [EV3 Actuator]のFilePath
                C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\unity_mmap.bin

              • [EV3 Sensor]のFilePath
                C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\athrill_mmap.bin

              以上でMMAPの設定は終わりです.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +athrill_mmap.bin の絶対ファイルパスを,[EV3 Actuator]のFilepathに設定してください(設定例:下図).">

              単体ロボット向けシミュレータ導入手順

              .

              MMAP用Unity設定

              UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います.

              Unity のメニューから,「Edit」⇒「Project Settings」を選択します.

              「Player」
              Other SettingScripting Define SymbolsVDEV_IO_MMAPと設定します.

              MMAP用パラメータ設定

              ※なお,このページで紹介しているUnity画面の画像はWindows版のものです

              設定する場所は,Unity の以下のスクリプト・パラメータ(Filepath)部分です.

              image.png

              インポート直後ですと,[EV3 Actuator] と [EV3 Sensor]の Filepath は空白です.
              ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します.

              MMAPファイル自体は,以下の2ファイルがapp.cと同じフォルダに含まれています.

              • athrill_mmap.bin
              • unity_mmap.bin

              unity_mmap.bin の絶対ファイルパスを,[EV3 Sensor]のFilepathに設定してください(設定例:下図).

              image.png

              athrill_mmap.bin の絶対ファイルパスを,[EV3 Actuator]のFilepathに設定してください(設定例:下図).

              image.png

              例えば,v850版を使用するという前提でev3rt-athrill-v850e2mのローカルリポジトリが,
              C:\project\hakoniwaにあり,実行したいアプリケーションのフォルダがline_traceの場合は,
              以下のパスを設定します.

              • [EV3 Actuator]のFilePath
                C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\unity_mmap.bin

              • [EV3 Sensor]のFilePath
                C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\athrill_mmap.bin

              以上でMMAPの設定は終わりです.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/61_unity_install_mmap_v2.0/index.html b/single-robot-setup-detail/61_unity_install_mmap_v2.0/index.html index bfc3d244..249a9091 100644 --- a/single-robot-setup-detail/61_unity_install_mmap_v2.0/index.html +++ b/single-robot-setup-detail/61_unity_install_mmap_v2.0/index.html @@ -1,20 +1,7 @@ -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              MMAP用Unity設定

              UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います.

              Unity のメニューから,「Edit」⇒「Project Settings」を選択します.

              「Player」
              Other SettingScripting Define SymbolsVDEV_IO_MMAPと設定します.

              MMAP用パラメータ設定

              ※なお,このページで紹介しているUnity画面の画像はWindows版のものです

              HierarchyビューでRobot配下のRoboModelを選択してください.
              すると画面右のInspectorビューに[Io Writer (Script)]と[Io Reader (Script)]の項目が表示されます.

              インポート直後ですと,[Io Writer (Script)] と [Io Reader (Script)]の Filepath は空白です.
              ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します.

              MMAPファイル自体は,以下の2ファイルがapp.cと同じフォルダに含まれています.

              • athrill_mmap.bin
              • unity_mmap.bin

              unity_mmap.bin の絶対ファイルパスを,[Io Writer (Script)]のFilepathに設定してください(設定例:下図).

              athrill_mmap.bin の絶対ファイルパスを,[Io Reader (Script)]のFilepathに設定してください(設定例:下図).

              例えば,v850版を使用するという前提でev3rt-athrill-v850e2mのローカルリポジトリが,
              C:\project\hakoniwaにあり,実行したいアプリケーションのフォルダがline_traceの場合は,
              以下のパスを設定します.

              • [Io Writer (Script)]のFilePath
                C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\unity_mmap.bin

              • [Io Reader (Script)]のFilePath
                C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\athrill_mmap.bin

              以上でMMAPの設定は終わりです.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +すると画面右のInspectorビューに[Io Writer (Script)]と[Io Reader (Script)]の項目が表示されます.">

              単体ロボット向けシミュレータ導入手順

              .

              MMAP用Unity設定

              UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います.

              Unity のメニューから,「Edit」⇒「Project Settings」を選択します.

              「Player」
              Other SettingScripting Define SymbolsVDEV_IO_MMAPと設定します.

              MMAP用パラメータ設定

              ※なお,このページで紹介しているUnity画面の画像はWindows版のものです

              HierarchyビューでRobot配下のRoboModelを選択してください.
              すると画面右のInspectorビューに[Io Writer (Script)]と[Io Reader (Script)]の項目が表示されます.

              インポート直後ですと,[Io Writer (Script)] と [Io Reader (Script)]の Filepath は空白です.
              ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します.

              MMAPファイル自体は,以下の2ファイルがapp.cと同じフォルダに含まれています.

              • athrill_mmap.bin
              • unity_mmap.bin

              unity_mmap.bin の絶対ファイルパスを,[Io Writer (Script)]のFilepathに設定してください(設定例:下図).

              athrill_mmap.bin の絶対ファイルパスを,[Io Reader (Script)]のFilepathに設定してください(設定例:下図).

              例えば,v850版を使用するという前提でev3rt-athrill-v850e2mのローカルリポジトリが,
              C:\project\hakoniwaにあり,実行したいアプリケーションのフォルダがline_traceの場合は,
              以下のパスを設定します.

              • [Io Writer (Script)]のFilePath
                C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\unity_mmap.bin

              • [Io Reader (Script)]のFilePath
                C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\athrill_mmap.bin

              以上でMMAPの設定は終わりです.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/61_unity_install_udp/index.html b/single-robot-setup-detail/61_unity_install_udp/index.html index 410c693a..2a8a05ca 100644 --- a/single-robot-setup-detail/61_unity_install_udp/index.html +++ b/single-robot-setup-detail/61_unity_install_udp/index.html @@ -1,4 +1,4 @@ -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              UDP用Unity設定

              UnityとathrillをUDPで通信する場合は,Unity側で以下の設定を行います.

              HierarchyビューでRobot配下のRoboModel_3を選択してください.
              すると画面右のInspectorビューに[EV3 Motor (Script)]の項目が表示されます.

              表示されたら,項目内のプロパティMax Diff Timeを40000に変更します.

              UDP用パラメータ設定

              UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります.

              ※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です.

              説明する上でのIPアドレスの構成例

              Unity側のIPアドレス:192.168.11.32
              athrill側のIPアドレス:192.168.11.20

              なお,IPアドレスの確認方法は以下のやり方でわかります.

              お使いのPCがLinux/WSLの場合

              ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します.

              $ ifconfig
              +$ ifconfig
              eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96
              inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0
              inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown
              UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0
              RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) ">

              単体ロボット向けシミュレータ導入手順

              .

              UDP用Unity設定

              UnityとathrillをUDPで通信する場合は,Unity側で以下の設定を行います.

              HierarchyビューでRobot配下のRoboModel_3を選択してください.
              すると画面右のInspectorビューに[EV3 Motor (Script)]の項目が表示されます.

              表示されたら,項目内のプロパティMax Diff Timeを40000に変更します.

              UDP用パラメータ設定

              UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります.

              ※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です.

              説明する上でのIPアドレスの構成例

              Unity側のIPアドレス:192.168.11.32
              athrill側のIPアドレス:192.168.11.20

              なお,IPアドレスの確認方法は以下のやり方でわかります.

              お使いのPCがLinux/WSLの場合

              ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します.

              $ ifconfig
               eth0      Link encap:Ethernet  HWaddr 54:ee:75:b4:3c:96
                         inet addr:192.168.11.32  Bcast:192.168.11.255  Mask:255.255.255.0
                         inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown
              diff --git a/single-robot-setup-detail/61_unity_install_udp_v2.0/index.html b/single-robot-setup-detail/61_unity_install_udp_v2.0/index.html
              index 5dfb703f..35bafb87 100644
              --- a/single-robot-setup-detail/61_unity_install_udp_v2.0/index.html
              +++ b/single-robot-setup-detail/61_unity_install_udp_v2.0/index.html
              @@ -1,11 +1,10 @@
              -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順 

              単体ロボット向けシミュレータ導入手順

              .

              UDP用パラメータ設定

              UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります.

              ※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です.

              説明する上でのIPアドレスの構成例

              Unity側のIPアドレス:192.168.11.32
              athrill側のIPアドレス:192.168.11.20

              なお,IPアドレスの確認方法は以下のやり方でわかります.

              お使いのPCがLinux/WSLの場合

              ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します.

              $ ifconfig
              +$ ifconfig
              eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96
              inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0
              inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown
              UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0
              RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) ">

              単体ロボット向けシミュレータ導入手順

              .

              UDP用パラメータ設定

              UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります.

              ※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です.

              説明する上でのIPアドレスの構成例

              Unity側のIPアドレス:192.168.11.32
              athrill側のIPアドレス:192.168.11.20

              なお,IPアドレスの確認方法は以下のやり方でわかります.

              お使いのPCがLinux/WSLの場合

              ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します.

              $ ifconfig
               eth0      Link encap:Ethernet  HWaddr 54:ee:75:b4:3c:96
                         inet addr:192.168.11.32  Bcast:192.168.11.255  Mask:255.255.255.0
                         inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown
              diff --git a/single-robot-setup-detail/index.html b/single-robot-setup-detail/index.html
              index 6986c123..b7421a98 100644
              --- a/single-robot-setup-detail/index.html
              +++ b/single-robot-setup-detail/index.html
              @@ -1 +1 @@
              -Single-Robot-Setup-Details 

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Single-Robot-Setup-Details

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/index.xml b/single-robot-setup-detail/index.xml index 34850fdc..ee8e948d 100644 --- a/single-robot-setup-detail/index.xml +++ b/single-robot-setup-detail/index.xml @@ -1,197 +1,434 @@ -Single-Robot-Setup-Details on 箱庭https://toppers.github.io/hakoniwa/single-robot-setup-detail/Recent content in Single-Robot-Setup-Details on 箱庭Hugoja単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/WSLのインストール Windows版の場合はWSLをインストールいただく必要があります. -※注意点として,現時点(2020/6月)時点では,WSL2はご利用いただけません(WSL2とUnity間でUDP通信できないため). -WSLのインストール方法は色々なサイトで紹介されておりますので,Ubuntu 18.04 LTSをインストールください. -以下のサイト等が参考になるかと思います. -https://qiita.com/Aruneko/items/c79810b0b015bebf30bb インストールが完了したら,aptパッケージを更新しておきます. -(更新しないと後ほど行うgccのインストールで失敗することがあるためです) -$ sudo apt update aptパッケージを更新したら,あらかじめ以下が使用できるようにインストールしておきます -gcc make $ sudo apt install build-essential単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/Rubyのインストール v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. ※EV3ロボット制御アプリをビルドする際に必要となります. -Homebrewを使用してインストールします. -$ brew install ruby単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/Rubyのインストール v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. ※EV3ロボット制御アプリをビルドする際に必要となります. -$ sudo apt install ruby単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/athrill2のインストール athrill2のインストール手順 athrill のチェックアウト athrill-target のチェックアウト コンパイラのインストール ビルド&インストール athrill のチェックアウト athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています. -共通コードのチェックアウトは,以下の通りです. -$ git clone https://github.com/toppers/athrill.git athrill-target のチェックアウト CPUアーキに依存するコードは,athrill-target側で管理しています. 今回のARM対応版は,ここにあります. -$ git clone https://github.com/toppers/athrill-target-ARMv7-A.git なお,athrill と athrill-targetを以下のフォルダ構成にしてください. -. ├── athrill └── athrill-target-ARMv7-A コンパイラのインストール Linux の方は,gcc をインストールください. -Windows の方は,WSL上で gcc をインストールください. -Mac の方は,clang をインストールください. -ビルド&インストール ビルド方法ですが,端末上でathrill-target-ARMv7-A に移動してください. -Linux/Windowsの方は,さらに build_linux に移動してください. -Macの方は,build_mac に移動してください. -移動終わったら,以下コマンド実行するだけです. -make timer32=true clean make timer32=true ビルド成功すると,athrill側の bin/linux 配下に athrill2 というバイナリが配置されるはずです. -$ ls -l ../../athrill/bin/linux/athrill2 -rwxr-xr-x 1 user staff 628260 2 2 16:40 .単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/athrill2のインストール athrill2のインストール手順 athrill のチェックアウト athrill-target のチェックアウト コンパイラのインストール ビルド&インストール athrill のチェックアウト athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています. -共通コードのチェックアウトは,以下の通りです. -$ git clone https://github.com/toppers/athrill.git athrill-target のチェックアウト CPUアーキに依存するコードは,athrill-target側で管理しています. -今回のV850対応版は,ここにあります. -$ git clone https://github.com/toppers/athrill-target-v850e2m.git なお,athrill と athrill-targetを以下のフォルダ構成にしてください. -. ├── athrill └── athrill-target-v850e2m コンパイラのインストール Linux の方は,gcc をインストールください. -Windows の方は,WSL上で gcc をインストールください. -Mac の方は,clang をインストールください. -ビルド&インストール ビルド方法ですが,端末上でathrill-target-v850e2m に移動してください. -Linux/Windowsの方は,さらに build_linux に移動してください. -Macの方は,build_mac に移動してください. -移動終わったら,以下コマンド実行するだけです. -make timer32=true clean make timer32=true ビルド成功すると,athrill側の bin/linux 配下に athrill2 というバイナリが配置されるはずです. -$ ls -l ../../athrill/bin/linux/athrill2 -rwxr-xr-x 1 user staff 628260 2 2 16:40 .単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/linux版64bit gccコンパイラ(ライブラリ含む)のインストール ARM版のathrill2を利用される場合は,以下のサイトを参考にコンパイラおよびライブラリをインストールください. -Windows(WSL) -https://www.yokoweb.net/2018/03/07/wsl-ubuntu-arm-gcc/ Linux -https://www.yokoweb.net/2018/05/16/ubuntu-18_04-gcc-arm-install/ Mac -https://www.yokoweb.net/2018/05/16/macos-gcc-arm-brew-install/単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/linux版64bit gccコンパイラ(ライブラリ含む)のインストール v850版のathrill2を利用される場合は,以下のサイトからコンパイラおよびライブラリ(athrill-gcc-package.tar.gz)をダウンロードください. -https://github.com/toppers/athrill-gcc-v850e2m/releases/tag/v1.1 $ tar xzvf athrill-gcc-package.tar.gz $ cd athrill-gcc-package/ $ tar xzvf athrill-gcc.tar.gz $ ls usr/local/athrill-gcc/ bin include lib libexec share v850-elf 解凍後,usr/local/athrill-gccを /usr/local 直下に移動してください. -$ sudo mv usr/local/athrill-gcc /usr/local あとは,.bashrc に以下のパスを設定するだけです. -export PATH=/usr/local/athrill-gcc/bin/:${PATH} export LD_LIBRARY_PATH=/usr/local/athrill-gcc:/usr/local/athrill-gcc/lib:${LD_LIBRARY_PATH} 設定後は,パスの有効化を忘れずに行ってください. -source ${HOME}/.bashrc単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/箱庭用 EV3RT 開発環境のダウンロード 任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください. -なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください. -|---athril |---athrill-target-ARMv7-A └---ev3rt-athrill-ARMv7-A clone方法は以下の通りです. -$ git clone https://github.com/toppers/ev3rt-athrill-ARMv7-A.git単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/箱庭用 EV3RT 開発環境のダウンロード 任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください. -なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください. -|---athril |---athrill-target-v850e2m └---ev3rt-athrill-v850e2m clone方法は以下の通りです. -$ git clone https://github.com/toppers/ev3rt-athrill-v850e2m.git サンプルアプリケーションのダウンロード 2種類のサンプルアプリケーションを用意しています. -こちらから git clone いただき,hakoniwa-scenario-samples/single-robot配下の全てのフォルダを -ev3rt-athrill-v850e2m/sdk/workspace に配置ください. -$ git clone https://github.com/toppers/hakoniwa-scenario-samples.git単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/EV3ロボット制御プログラム 現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です. -※まだ暫定構成です. -ARM版のathrill2を利用される場合は,以下のフォルダで作業してください. -$ ls ev3rt-athrill-ARMv7-A/sdk/OBJ1.1/ app.c app.h device_config_mmap.txt Makefile memory_mmap.txt simstart.bash app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt unity_mmap.bin 現状は,app.c/main_task で直接制御を行っています. -コード断片は以下の通りです. -while(1) { /** * PID controller */ #define white 100 #define black 50 static float lasterror = 0, integral = 0; static float midpoint = (white - black) / 2 + black; { float error = midpoint - ev3_color_sensor_get_reflect(EV3_PORT_1); integral = error + integral * 0.3; float steer = 0.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/EV3ロボット制御プログラム 現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です. -v850版のathrill2を利用される場合は,以下のフォルダで作業してください. -$ ls ev3rt-athrill-v850e2m/sdk/workspace/line_trace/ app.c app.h device_config_mmap.txt log.txt memory_mmap.txt unity_mmap.bin app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt または -$ ls ev3rt-athrill-v850e2m/sdk/workspace/color_sensor/ app.c app.h device_config_mmap.txt log.txt memory_mmap.txt unity_mmap.bin app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt 現状は,app.c/main_task で直接制御を行っています. -コード断片は以下の通りです.(line_traceの場合) -while(1) { /** * PID controller */ #define white 100 #define black 10 static float lasterror = 0, integral = 0; static float midpoint = (white - black) / 2 + black; { float error = midpoint - ev3_color_sensor_get_reflect(EV3_PORT_1); integral = error + integral * 0.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/Unityのインストール・パッケージのインポート・通信方式の切替方法 Unityパッケージのダウンロード 単体ロボット向けシミュレータで使用するUnityパッケージを2種類用意してあります. どちらかのパッケージをご選択いただき,ダウンロードを行ってください. -使用するUnityパッケージ 説明 single-robot-HackEV HackEVを模した走行体モデルを使用しています ev3rt-simple-robot シンプルな走行体モデルを使用しています single-robot-HackEV(v2.0) 上記2つのモデルを含んでおり自由に選択できます single-robot-HackEV(v2.1) single-robot-HackEV(v2.0)の内容に加え,シミュレータのコンフィグ機能,バイナリ実行機能を追加したものとなっております.(Windows, Mac対応済み.Linux版は開発中です) それぞれ下記からダウンロードしてください -single-robot-HackEV.unitypackage https://github.com/toppers/hakoniwa-Unity-HackEV/releases/tag/v1.0 ev3rt-simple-robot.unitypackage https://github.com/toppers/hakoniwa-Unity-SimpleCar/releases single-robot-HackEV.unitypackage(v2.0) https://github.com/toppers/hakoniwa-Unity-HackEV/releases/tag/v2.0 single-robot-HackEV.unitypackage(v2.1) (Windows, Mac対応済み) https://github.com/toppers/hakoniwa-Unity-HackEV/releases/tag/v2.1 使用するUnityのパッケージによって,設定画面のレイアウトが異なりますため, -ご選択いただいたUnityパッケージに合わせた導入手順をご参照ください -Unityのインストール・パッケージのインポート・通信方式の切替方法 single-robot-HackEV(v2.1) を使用する場合 single-robot-HackEV(v2.0) を使用する場合 single-robot-HackEV または ev3rt-simple-robot を使用する場合単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/Unityのインストール・パッケージのインポート・通信方式の切替方法 Unityのインストール Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください. -以下のサイト等が参考になるかと思います. -https://tech-camp.in/note/technology/44408/ ※動作確認はUnity 2020.1.0b9(64bit)で行っております. -使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします. -Unityパッケージのインポート Unity 起動 まず,インストールしたUnityを起動してください. -無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します. -次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください. -成功すると,以下のようにUnityが起動します. -Unityパッケージのインポート ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります -Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package&hellip;」と選択し,任意の unitypackageファイルを選択してください. -成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください. -成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. Toppers_Courseをダブルクリックすると下図の画面が現れます. -次に,シミュレーションに関わる設定を変更します. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Time」 -Fixed Timestep を 0.001に, Time Scale を 0.6に設定します. -※ev3rt-simple-robot.unitypackageを使用する場合で,もしシミュレーションの動作が -遅い場合には,Fixed Timestep を 0.01に,EV3 Motor(Script)のIntervalを 0.0005に -設定してください. -「Quality」 -OtherのVSync Count を Don&rsquo;t Sync に設定します. -これでインポート作業終了です. -通信方式の切替方法 athrillとUnity間での通信方式によって設定が異なります. ご自身の環境に合わせて,どちらかの通信方式をご選択ください. -UDP版を使用する場合はこちら MMAP版を使用する場合はこちら MMAPについて MMAPにすると嬉しい点としては以下が挙げられます. -UDP のように通信ロストは発生しない(シミュレーション精度向上につながる) Unity と athrill 間のやりとりは共有メモリベースなので,高速になる(と思われる) 上記のとおり,精度向上と高速性を期待して試行してみましたが,精度は良くなりました(速度はあまり変化ないような?). ただし,デメリットとして以下が挙げられます. -1マシン前提での構成を余儀なくされる UDPであれば,athrillを別PCに配置して負荷分散可能ですので.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/Unityのインストール・パッケージのインポート・通信方式の切替方法 Unityのインストール Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください. -以下のサイト等が参考になるかと思います. -https://tech-camp.in/note/technology/44408/ ※動作確認はUnity 2020.1.0b9(64bit)で行っております. -使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします. -Unityパッケージのインポート Unity 起動 まず,インストールしたUnityを起動してください. -無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します. -次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください. -成功すると,以下のようにUnityが起動します. -Unityパッケージのインポート ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります -Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package&hellip;」と選択し,任意の unitypackageファイルを選択してください. -成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください. -成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. Toppers_Courseをダブルクリックすると下図の画面が現れます. -次に,シミュレーションに関わる設定を変更します. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Time」 -Fixed Timestep を 0.001に, Time Scale を 0.6に設定します. -※ev3rt-simple-robot.unitypackageを使用する場合で,もしシミュレーションの動作が -遅い場合には,Fixed Timestep を 0.01に,EV3 Motor(Script)のIntervalを 0.0005に -設定してください. -「Quality」 -OtherのVSync Count を Don&rsquo;t Sync に設定します. -これでインポート作業終了です. -通信方式の切替方法 athrillとUnity間での通信方式によって設定が異なります. ご自身の環境に合わせて,どちらかの通信方式をご選択ください. -UDP版を使用する場合はこちら MMAP版を使用する場合はこちら MMAPについて MMAPにすると嬉しい点としては以下が挙げられます. -UDP のように通信ロストは発生しない(シミュレーション精度向上につながる) Unity と athrill 間のやりとりは共有メモリベースなので,高速になる(と思われる) 上記のとおり,精度向上と高速性を期待して試行してみましたが,精度は良くなりました(速度はあまり変化ないような?). ただし,デメリットとして以下が挙げられます. -1マシン前提での構成を余儀なくされる UDPであれば,athrillを別PCに配置して負荷分散可能ですので.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/Unityのインストール・パッケージのインポート・通信方式の切替方法 Unityのインストール Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください. -以下のサイト等が参考になるかと思います. -https://tech-camp.in/note/technology/44408/ ※動作確認はUnity 2020.1.0b9(64bit)で行っております. -使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします. -Unityパッケージのインポート Unity 起動 まず,インストールしたUnityを起動してください. -無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します. -次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください. -成功すると,以下のようにUnityが起動します. -Unityパッケージのインポート ※画像はsingle-robot-HackEV.unitypackageをインポートする際のものになります -Unity のメニューから,「Assets」⇒「Import Package」⇒「Custom Package&hellip;」と選択し,任意の unitypackageファイルを選択してください. -成功すると,下図の画面がポップアップされますので,素直に「Import」ボタンを押下してください. -成功するとProject/Scenes配下にToppers_Courseというシーンが追加されます. Toppers_Courseをダブルクリックすると下図の画面が現れます. -次に,シミュレーションに関わる設定を変更します. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Time」 -Fixed Timestep を 0.001に, Time Scale を 0.6に設定します. -※ev3rt-simple-robot.unitypackageを使用する場合で,もしシミュレーションの動作が -遅い場合には,Fixed Timestep を 0.01に,EV3 Motor(Script)のIntervalを 0.0005に -設定してください. -「Quality」 -OtherのVSync Count を Don&rsquo;t Sync に設定します. -これでインポート作業終了です. -通信方式の切替方法 athrillとUnity間での通信方式に設定を行います. -設定はconfig.jsonという設定ファイルを作成し,設定を行います. -config.json の設定例(通信方式がMMAPの場合) 設定するファイルパスは全て絶対パスで記述します. -{ &#34;AthrillPath&#34;:&#34;/mnt/c/project/esm/athrill/bin/linux/athrill2&#34;, &#34;TerminalPath&#34;:&#34;C:\\Windows\\System32\\wsl.exe&#34;, &#34;robots&#34;:[ { &#34;RobotName&#34;:&#34;RoboModel&#34;, &#34;WorkspacePathWin&#34;:&#34;C:\\project\\esm\\ev3rt-athrill-v850e2m\\sdk\\workspace&#34;, &#34;WorkspacePathUnix&#34;:&#34;/mnt/c/project/esm/ev3rt-athrill-v850e2m/sdk/workspace&#34;, &#34;ApplicationName&#34;:&#34;touch_sensor&#34;, &#34;BinaryName&#34;:&#34;asp&#34; } ] } config.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/MMAP用Unity設定 UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Player」 -Other SettingのScripting Define Symbols にVDEV_IO_MMAPと設定します. -MMAP用パラメータ設定 ※なお,このページで紹介しているUnity画面の画像はWindows版のものです -設定する場所は,Unity の以下のスクリプト・パラメータ(Filepath)部分です. -インポート直後ですと,[EV3 Actuator] と [EV3 Sensor]の Filepath は空白です. -ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します. -MMAPファイル自体は,以下の2ファイルがapp.cと同じフォルダに含まれています. -athrill_mmap.bin unity_mmap.bin unity_mmap.bin の絶対ファイルパスを,[EV3 Sensor]のFilepathに設定してください(設定例:下図). -athrill_mmap.bin の絶対ファイルパスを,[EV3 Actuator]のFilepathに設定してください(設定例:下図). -例えば,v850版を使用するという前提でev3rt-athrill-v850e2mのローカルリポジトリが, -C:\project\hakoniwaにあり,実行したいアプリケーションのフォルダがline_traceの場合は, -以下のパスを設定します. -[EV3 Actuator]のFilePath -C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\unity_mmap.bin -[EV3 Sensor]のFilePath -C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\athrill_mmap.bin -以上でMMAPの設定は終わりです.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/MMAP用Unity設定 UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Player」 -Other SettingのScripting Define Symbols にVDEV_IO_MMAPと設定します. -MMAP用パラメータ設定 ※なお,このページで紹介しているUnity画面の画像はWindows版のものです -HierarchyビューでRobot配下のRoboModelを選択してください. -すると画面右のInspectorビューに[Io Writer (Script)]と[Io Reader (Script)]の項目が表示されます. -インポート直後ですと,[Io Writer (Script)] と [Io Reader (Script)]の Filepath は空白です. -ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します. -MMAPファイル自体は,以下の2ファイルがapp.cと同じフォルダに含まれています. -athrill_mmap.bin unity_mmap.bin unity_mmap.bin の絶対ファイルパスを,[Io Writer (Script)]のFilepathに設定してください(設定例:下図). -athrill_mmap.bin の絶対ファイルパスを,[Io Reader (Script)]のFilepathに設定してください(設定例:下図). -例えば,v850版を使用するという前提でev3rt-athrill-v850e2mのローカルリポジトリが, -C:\project\hakoniwaにあり,実行したいアプリケーションのフォルダがline_traceの場合は, -以下のパスを設定します. -[Io Writer (Script)]のFilePath -C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\unity_mmap.bin -[Io Reader (Script)]のFilePath -C:\project\hakoniwa\ev3rt-athrill-v850e2m\sdk\workspace\line_trace\athrill_mmap.bin -以上でMMAPの設定は終わりです.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/UDP用Unity設定 UnityとathrillをUDPで通信する場合は,Unity側で以下の設定を行います. -HierarchyビューでRobot配下のRoboModel_3を選択してください. -すると画面右のInspectorビューに[EV3 Motor (Script)]の項目が表示されます. -表示されたら,項目内のプロパティMax Diff Timeを40000に変更します. -UDP用パラメータ設定 UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります. -※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です. -説明する上でのIPアドレスの構成例 Unity側のIPアドレス:192.168.11.32 -athrill側のIPアドレス:192.168.11.20 -なお,IPアドレスの確認方法は以下のやり方でわかります. -お使いのPCがLinux/WSLの場合 ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します. -$ ifconfig eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96 inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0 inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) お使いのPCがWindowsの場合 Windows PowerShell を開いて,ipconfigを叩きます. -&gt; ipconfig Windows IP 構成 イーサネット アダプター イーサネット: リンクローカル IPv6 アドレス.単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/UDP用パラメータ設定 UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります. -※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です. -説明する上でのIPアドレスの構成例 Unity側のIPアドレス:192.168.11.32 -athrill側のIPアドレス:192.168.11.20 -なお,IPアドレスの確認方法は以下のやり方でわかります. -お使いのPCがLinux/WSLの場合 ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します. -$ ifconfig eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96 inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0 inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) お使いのPCがWindowsの場合 Windows PowerShell を開いて,ipconfigを叩きます. -&gt; ipconfig Windows IP 構成 イーサネット アダプター イーサネット: リンクローカル IPv6 アドレス. \ No newline at end of file +Single-Robot-Setup-Details on 箱庭https://toppers.github.io/hakoniwa/single-robot-setup-detail/Recent content in Single-Robot-Setup-Details on 箱庭Hugoja単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/<h1 id="wslのインストール">WSLのインストール</h1> +<hr> +<p>Windows版の場合はWSLをインストールいただく必要があります.<br> +※注意点として,現時点(2020/6月)時点では,WSL2はご利用いただけません(WSL2とUnity間でUDP通信できないため).</p> +<p>WSLのインストール方法は色々なサイトで紹介されておりますので,Ubuntu 18.04 LTSをインストールください.</p> +<p>以下のサイト等が参考になるかと思います.</p> +<ul> +<li><a href="https://qiita.com/Aruneko/items/c79810b0b015bebf30bb">https://qiita.com/Aruneko/items/c79810b0b015bebf30bb</a></li> +</ul> +<p>インストールが完了したら,aptパッケージを更新しておきます.<br> +(更新しないと後ほど行うgccのインストールで失敗することがあるためです)</p> +<pre tabindex="0"><code>$ sudo apt update +</code></pre><p>aptパッケージを更新したら,あらかじめ以下が使用できるようにインストールしておきます</p> +<ul> +<li>gcc</li> +<li>make</li> +</ul> +<pre tabindex="0"><code>$ sudo apt install build-essential +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_mac/<h1 id="rubyのインストール">Rubyのインストール</h1> +<hr> +<p>v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. +※EV3ロボット制御アプリをビルドする際に必要となります.</p> +<p>Homebrewを使用してインストールします.</p> +<pre tabindex="0"><code>$ brew install ruby +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/<h1 id="rubyのインストール">Rubyのインストール</h1> +<hr> +<p>v850版をご利用される場合は,RTOSがASP3になりますので,Rubyをインストールいただく必要があります. +※EV3ロボット制御アプリをビルドする際に必要となります.</p> +<pre tabindex="0"><code>$ sudo apt install ruby +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/<h1 id="athrill2のインストール">athrill2のインストール</h1> +<h2 id="athrill2のインストール手順">athrill2のインストール手順</h2> +<hr> +<ul> +<li>athrill のチェックアウト</li> +<li>athrill-target のチェックアウト</li> +<li>コンパイラのインストール</li> +<li>ビルド&インストール</li> +</ul> +<h2 id="athrill-のチェックアウト">athrill のチェックアウト</h2> +<hr> +<p>athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています.</p> +<p>共通コードのチェックアウトは,以下の通りです.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/athrill.git +</code></pre><h2 id="athrill-target-のチェックアウト">athrill-target のチェックアウト</h2> +<hr> +<p>CPUアーキに依存するコードは,athrill-target側で管理しています. +今回のARM対応版は,ここにあります.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/athrill-target-ARMv7-A.git +</code></pre><p>なお,athrill と athrill-targetを以下のフォルダ構成にしてください.</p> +<pre tabindex="0"><code>. +├── athrill +└── athrill-target-ARMv7-A +</code></pre><h2 id="コンパイラのインストール">コンパイラのインストール</h2> +<hr> +<p>Linux の方は,gcc をインストールください.<br> +Windows の方は,WSL上で gcc をインストールください.<br> +Mac の方は,clang をインストールください.</p> +<h2 id="ビルドインストール">ビルド&インストール</h2> +<hr> +<p>ビルド方法ですが,端末上でathrill-target-ARMv7-A に移動してください.</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/<h1 id="athrill2のインストール">athrill2のインストール</h1> +<h2 id="athrill2のインストール手順">athrill2のインストール手順</h2> +<hr> +<ul> +<li>athrill のチェックアウト</li> +<li>athrill-target のチェックアウト</li> +<li>コンパイラのインストール</li> +<li>ビルド&インストール</li> +</ul> +<h2 id="athrill-のチェックアウト">athrill のチェックアウト</h2> +<hr> +<p>athrill は,設計上,CPUアーキに依存しない共通コードとCPU依存するコードを分離しています.</p> +<p>共通コードのチェックアウトは,以下の通りです.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/athrill.git +</code></pre><h2 id="athrill-target-のチェックアウト">athrill-target のチェックアウト</h2> +<hr> +<p>CPUアーキに依存するコードは,athrill-target側で管理しています.<br> +今回のV850対応版は,ここにあります.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/athrill-target-v850e2m.git +</code></pre><p>なお,athrill と athrill-targetを以下のフォルダ構成にしてください.</p> +<pre tabindex="0"><code>. +├── athrill +└── athrill-target-v850e2m +</code></pre><h2 id="コンパイラのインストール">コンパイラのインストール</h2> +<hr> +<p>Linux の方は,gcc をインストールください.<br> +Windows の方は,WSL上で gcc をインストールください.<br> +Mac の方は,clang をインストールください.</p> +<h2 id="ビルドインストール">ビルド&インストール</h2> +<hr> +<p>ビルド方法ですが,端末上でathrill-target-v850e2m に移動してください.</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/<h1 id="linux版64bit-gccコンパイラライブラリ含むのインストール">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</h1> +<hr> +<p>ARM版のathrill2を利用される場合は,以下のサイトを参考にコンパイラおよびライブラリをインストールください.</p> +<p>Windows(WSL)</p> +<ul> +<li><a href="https://www.yokoweb.net/2018/03/07/wsl-ubuntu-arm-gcc/">https://www.yokoweb.net/2018/03/07/wsl-ubuntu-arm-gcc/</a></li> +</ul> +<p>Linux</p> +<ul> +<li><a href="https://www.yokoweb.net/2018/05/16/ubuntu-18_04-gcc-arm-install/">https://www.yokoweb.net/2018/05/16/ubuntu-18_04-gcc-arm-install/</a></li> +</ul> +<p>Mac</p> +<ul> +<li><a href="https://www.yokoweb.net/2018/05/16/macos-gcc-arm-brew-install/">https://www.yokoweb.net/2018/05/16/macos-gcc-arm-brew-install/</a></li> +</ul>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/<h1 id="linux版64bit-gccコンパイラライブラリ含むのインストール">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</h1> +<hr> +<p>v850版のathrill2を利用される場合は,以下のサイトからコンパイラおよびライブラリ(athrill-gcc-package.tar.gz)をダウンロードください.</p> +<ul> +<li><a href="https://github.com/toppers/athrill-gcc-v850e2m/releases/tag/v1.1">https://github.com/toppers/athrill-gcc-v850e2m/releases/tag/v1.1</a></li> +</ul> +<pre tabindex="0"><code>$ tar xzvf athrill-gcc-package.tar.gz +$ cd athrill-gcc-package/ +$ tar xzvf athrill-gcc.tar.gz +$ ls usr/local/athrill-gcc/ +bin include lib libexec share v850-elf +</code></pre><p>解凍後,usr/local/athrill-gccを /usr/local 直下に移動してください.</p> +<pre tabindex="0"><code>$ sudo mv usr/local/athrill-gcc /usr/local +</code></pre><p>あとは,.bashrc に以下のパスを設定するだけです.</p> +<pre tabindex="0"><code>export PATH=/usr/local/athrill-gcc/bin/:${PATH} +export LD_LIBRARY_PATH=/usr/local/athrill-gcc:/usr/local/athrill-gcc/lib:${LD_LIBRARY_PATH} +</code></pre><p>設定後は,パスの有効化を忘れずに行ってください.</p> +<pre tabindex="0"><code>source ${HOME}/.bashrc +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/<h1 id="箱庭用-ev3rt-開発環境のダウンロード">箱庭用 EV3RT 開発環境のダウンロード</h1> +<p>任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください.</p> +<p>なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください.</p> +<pre tabindex="0"><code> |---athril + |---athrill-target-ARMv7-A + └---ev3rt-athrill-ARMv7-A +</code></pre><p>clone方法は以下の通りです.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/ev3rt-athrill-ARMv7-A.git +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/<h1 id="箱庭用-ev3rt-開発環境のダウンロード">箱庭用 EV3RT 開発環境のダウンロード</h1> +<p>任意のフォルダ上で,athrillサンプル(athrill-sample)のプログラムを git clone してください.</p> +<p>なお,cloneする場所は,以下のように athrillと同じフォルダ階層で実施してください.</p> +<pre tabindex="0"><code> |---athril + |---athrill-target-v850e2m + └---ev3rt-athrill-v850e2m +</code></pre><p>clone方法は以下の通りです.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/ev3rt-athrill-v850e2m.git +</code></pre><h2 id="サンプルアプリケーションのダウンロード">サンプルアプリケーションのダウンロード</h2> +<hr> +<p>2種類のサンプルアプリケーションを用意しています.</p> +<p>こちらから git clone いただき,<code>hakoniwa-scenario-samples/single-robot</code>配下の全てのフォルダを<br> +<code>ev3rt-athrill-v850e2m/sdk/workspace</code> に配置ください.</p> +<pre tabindex="0"><code>$ git clone https://github.com/toppers/hakoniwa-scenario-samples.git +</code></pre>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/<h3 id="ev3ロボット制御プログラム">EV3ロボット制御プログラム</h3> +<p>現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です.<br> +※まだ暫定構成です.</p> +<p>ARM版のathrill2を利用される場合は,以下のフォルダで作業してください.</p> +<pre tabindex="0"><code>$ ls ev3rt-athrill-ARMv7-A/sdk/OBJ1.1/ +app.c app.h device_config_mmap.txt Makefile memory_mmap.txt simstart.bash +app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt unity_mmap.bin +</code></pre><p>現状は,app.c/main_task で直接制御を行っています.<br> +コード断片は以下の通りです.</p> +<pre tabindex="0"><code> while(1) { + + /** + * PID controller + */ +#define white 100 +#define black 50 + static float lasterror = 0, integral = 0; + static float midpoint = (white - black) / 2 + black; + { + float error = midpoint - ev3_color_sensor_get_reflect(EV3_PORT_1); + integral = error + integral * 0.3; + float steer = 0.6 * error + 0.3 * integral + 1 * (error - lasterror); + ev3_motor_steer(left_motor, right_motor, 10, steer); + lasterror = error; + + debug_var = ev3_gyro_sensor_get_angle(EV3_PORT_4); + + int distance = ev3_ultrasonic_sensor_get_distance(EV3_PORT_2); + debug_var2 = distance; + if (distance &lt;= 100) { + ev3_motor_stop(left_motor, false); + ev3_motor_stop(right_motor, false); + } + } + tslp_tsk(100); /* 100msec */ + + } +} +</code></pr単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/<h3 id="ev3ロボット制御プログラム">EV3ロボット制御プログラム</h3> +<p>現時点の制御プログラムの開発フォルダは以下のフォルダで,制御プログラムは app.c です.</p> +<p>v850版のathrill2を利用される場合は,以下のフォルダで作業してください.</p> +<pre tabindex="0"><code>$ ls ev3rt-athrill-v850e2m/sdk/workspace/line_trace/ +app.c app.h device_config_mmap.txt log.txt memory_mmap.txt unity_mmap.bin +app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt +</code></pre><p>または</p> +<pre tabindex="0"><code>$ ls ev3rt-athrill-v850e2m/sdk/workspace/color_sensor/ +app.c app.h device_config_mmap.txt log.txt memory_mmap.txt unity_mmap.bin +app.cfg athrill_mmap.bin device_config.txt Makefile.inc memory.txt +</code></pr単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/<h1 id="unityのインストールパッケージのインポート通信方式の切替方法">Unityのインストール・パッケージのインポート・通信方式の切替方法</h1> +<h2 id="unityパッケージのダウンロード">Unityパッケージのダウンロード</h2> +<hr> +<p>単体ロボット向けシミュレータで使用するUnityパッケージを2種類用意してあります. +どちらかのパッケージをご選択いただき,ダウンロードを行ってください.</p> +<table> + <thead> + <tr> + <th style="text-align: left">使用するUnityパッケージ</th> + <th style="text-align: left">説明</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left">single-robot-HackEV</td> + <td style="text-align: left">HackEVを模した走行体モデルを使用しています</td> + </tr> + <tr> + <td style="text-align: left">ev3rt-simple-robot</td> + <td style="text-align: left">シンプルな走行体モデルを使用しています</td> + </tr> + <tr> + <td style="text-align: left">single-robot-HackEV(v2.0)</td> + <td style="text-align: left">上記2つのモデルを含んでおり自由に選択できます</td> + </tr> + <tr> + <td style="text-align: left">single-robot-HackEV(v2.1)</td> + <td style="text-align: left">single-robot-HackEV(v2.0)の内容に加え,シミュレータのコンフィグ機能,バイナリ実行機能を追加したものとなっております.(Windows, Mac対応済み.Linux版は開発中です)</td> + </tr> + </tbody> +</table> +<p>それぞれ下記からダウンロードしてください</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v1.0/<h1 id="unityのインストールパッケージのインポート通信方式の切替方法">Unityのインストール・パッケージのインポート・通信方式の切替方法</h1> +<h2 id="unityのインストール">Unityのインストール</h2> +<hr> +<p>Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.</p> +<p>以下のサイト等が参考になるかと思います.</p> +<ul> +<li><a href="https://tech-camp.in/note/technology/44408/">https://tech-camp.in/note/technology/44408/</a></li> +</ul> +<p>※動作確認は<code>Unity 2020.1.0b9(64bit)</code>で行っております.<br> + 使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.</p> +<h2 id="unityパッケージのインポート">Unityパッケージのインポート</h2> +<hr> +<h3 id="unity-起動">Unity 起動</h3> +<p>まず,インストールしたUnityを起動してください.<br> +無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_invoke.png " border="" width="800" /> +</figure> + +<p>次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_create_project.png " border="" width="800" /> +</figure> + +<p>成功すると,以下のようにUnityが起動します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_start.png " border="" width="800" /> +</figure> + +<h3 id="unityパッケージのインポート-1">Unityパッケージのインポート</h3> +<p>※画像は<code>single-robot-HackEV.unitypackage</code>をインポートする際のものになります</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.0/<h1 id="unityのインストールパッケージのインポート通信方式の切替方法">Unityのインストール・パッケージのインポート・通信方式の切替方法</h1> +<h2 id="unityのインストール">Unityのインストール</h2> +<hr> +<p>Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.</p> +<p>以下のサイト等が参考になるかと思います.</p> +<ul> +<li><a href="https://tech-camp.in/note/technology/44408/">https://tech-camp.in/note/technology/44408/</a></li> +</ul> +<p>※動作確認は<code>Unity 2020.1.0b9(64bit)</code>で行っております.<br> + 使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.</p> +<h2 id="unityパッケージのインポート">Unityパッケージのインポート</h2> +<hr> +<h3 id="unity-起動">Unity 起動</h3> +<p>まず,インストールしたUnityを起動してください.<br> +無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_invoke.png " border="" width="800" /> +</figure> + +<p>次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_create_project.png " border="" width="800" /> +</figure> + +<p>成功すると,以下のようにUnityが起動します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_start.png " border="" width="800" /> +</figure> + +<h3 id="unityパッケージのインポート-1">Unityパッケージのインポート</h3> +<p>※画像は<code>single-robot-HackEV.unitypackage</code>をインポートする際のものになります</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install_v2.1/<h1 id="unityのインストールパッケージのインポート通信方式の切替方法">Unityのインストール・パッケージのインポート・通信方式の切替方法</h1> +<h2 id="unityのインストール">Unityのインストール</h2> +<hr> +<p>Unityのインストール方法は色々なサイト・書籍で紹介されておりますので,インストールください.</p> +<p>以下のサイト等が参考になるかと思います.</p> +<ul> +<li><a href="https://tech-camp.in/note/technology/44408/">https://tech-camp.in/note/technology/44408/</a></li> +</ul> +<p>※動作確認は<code>Unity 2020.1.0b9(64bit)</code>で行っております.<br> + 使用する場合はこれ以降のバージョンのUnityをインストールすることをお勧めします.</p> +<h2 id="unityパッケージのインポート">Unityパッケージのインポート</h2> +<hr> +<h3 id="unity-起動">Unity 起動</h3> +<p>まず,インストールしたUnityを起動してください.<br> +無事起動すると以下のような画面が出ますので,右上の「新規作成」を選択し新規プロジェクト作成します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_invoke.png " border="" width="800" /> +</figure> + +<p>次の選択画面で,「プロジェクト名」に適当なプロジェクト名を設定して,「作成」ボタンを押下してください.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_create_project.png " border="" width="800" /> +</figure> + +<p>成功すると,以下のようにUnityが起動します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_start.png " border="" width="800" /> +</figure> + +<h3 id="unityパッケージのインポート-1">Unityパッケージのインポート</h3> +<p>※画像は<code>single-robot-HackEV.unitypackage</code>をインポートする際のものになります</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap/<h1 id="mmap用unity設定">MMAP用Unity設定</h1> +<p>UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います.</p> +<p>Unity のメニューから,「Edit」⇒「Project Settings」を選択します.</p> +<p>「Player」<br> +<code>Other Setting</code>の<code>Scripting Define Symbols</code> に<code>VDEV_IO_MMAP</code>と設定します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_setting_player_mmap.png " border="" width="700" /> +</figure> + +<h1 id="mmap用パラメータ設定">MMAP用パラメータ設定</h1> +<p>※なお,このページで紹介しているUnity画面の画像はWindows版のものです</p> +<p>設定する場所は,Unity の以下のスクリプト・パラメータ(Filepath)部分です.</p> +<p><a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2Feed2a22a-e74b-9e8f-0774-6ca34783a6e4.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=b6a404498493184bdc1bcfe3d2749bad"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2Feed2a22a-e74b-9e8f-0774-6ca34783a6e4.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=b6a404498493184bdc1bcfe3d2749bad"></a></p> +<p>インポート直後ですと,[EV3 Actuator] と [EV3 Sensor]の Filepath は空白です.<br> +ここに設定する値としては,athrillとUnity間で通信するためのMMAPファイルの絶対パスを指定します.</p> +<p>MMAPファイル自体は,以下の2ファイルが<code>app.c</code>と同じフォルダに含まれています.</p> +<ul> +<li>athrill_mmap.bin</li> +<li>unity_mmap.bin</li> +</ul> +<p>unity_mmap.bin の絶対ファイルパスを,[EV3 Sensor]のFilepathに設定してください(設定例:下図).</p> +<p><a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F95b47a49-4904-16dd-f568-09d285afd2a1.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=c00912d532173b48318ebd94f6deec5a"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F95b47a49-4904-16dd-f568-09d285afd2a1.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=c00912d532173b48318ebd94f6deec5a"></a></p> +<p>athrill_mmap.bin の絶対ファイルパスを,[EV3 Actuator]のFilepathに設定してください(設定例:下図).</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_mmap_v2.0/<h1 id="mmap用unity設定">MMAP用Unity設定</h1> +<p>UnityとathrillをMMAPで通信する場合は,Unity側で以下の設定を行います.</p> +<p>Unity のメニューから,「Edit」⇒「Project Settings」を選択します.</p> +<p>「Player」<br> +<code>Other Setting</code>の<code>Scripting Define Symbols</code> に<code>VDEV_IO_MMAP</code>と設定します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_setting_player_mmap.png " border="" width="700" /> +</figure> + +<h1 id="mmap用パラメータ設定">MMAP用パラメータ設定</h1> +<p>※なお,このページで紹介しているUnity画面の画像はWindows版のものです</p> +<p><code>Hierarchy</code>ビューで<code>Robot</code>配下の<code>RoboModel</code>を選択してください.<br> +すると画面右の<code>Inspector</code>ビューに[Io Writer (Script)]と[Io Reader (Script)]の項目が表示されます.</p> +<p> + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_hierarchy_view_robo_v2.0.png " border="" width="300" /> +</figure> + + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_setting_mmap_emp.png " border="" width="300" /> +</figure> +</p>単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp/<h1 id="udp用unity設定">UDP用Unity設定</h1> +<p>UnityとathrillをUDPで通信する場合は,Unity側で以下の設定を行います.</p> +<p><code>Hierarchy</code>ビューで<code>Robot</code>配下の<code>RoboModel_3</code>を選択してください.<br> +すると画面右の<code>Inspector</code>ビューに[EV3 Motor (Script)]の項目が表示されます.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_hierarchy_view.png " border="" width="300" /> +</figure> + +<p>表示されたら,項目内のプロパティ<code>Max Diff Time</code>を40000に変更します.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_fix_maxdifftime.png " border="" width="350" /> +</figure> + +<h1 id="udp用パラメータ設定">UDP用パラメータ設定</h1> +<p>UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります.</p> +<p><strong>※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です.</strong></p> +<h3 id="説明する上でのipアドレスの構成例">説明する上でのIPアドレスの構成例</h3> +<p>Unity側のIPアドレス:192.168.11.32<br> +athrill側のIPアドレス:192.168.11.20</p> +<p>なお,IPアドレスの確認方法は以下のやり方でわかります.</p> +<h4 id="お使いのpcがlinuxwslの場合">お使いのPCがLinux/WSLの場合</h4> +<p>ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します.</p> +<pre tabindex="0"><code>$ ifconfig +eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96 + inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0 + inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown + UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 + RX packets:0 errors:0 dropped:0 overruns:0 frame:0 + TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 + collisions:0 + RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) +</code></pr単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup-detail/61_unity_install_udp_v2.0/<h1 id="udp用パラメータ設定">UDP用パラメータ設定</h1> +<p>UnityとathrillをUDPで通信する場合は,以下のパラメータを設定する必要があります.</p> +<p><strong>※ただし,1台のPCでシミュレーションを実行する場合は,以下の設定は不要です.</strong></p> +<h3 id="説明する上でのipアドレスの構成例">説明する上でのIPアドレスの構成例</h3> +<p>Unity側のIPアドレス:192.168.11.32<br> +athrill側のIPアドレス:192.168.11.20</p> +<p>なお,IPアドレスの確認方法は以下のやり方でわかります.</p> +<h4 id="お使いのpcがlinuxwslの場合">お使いのPCがLinux/WSLの場合</h4> +<p>ターミナル上で ifconfig コマンドを叩いて,ethernetの inet addr の値を確認します.</p> +<pre tabindex="0"><code>$ ifconfig +eth0 Link encap:Ethernet HWaddr 54:ee:75:b4:3c:96 + inet addr:192.168.11.32 Bcast:192.168.11.255 Mask:255.255.255.0 + inet6 addr: fe80::cc6d:70d3:a934:a61b/64 Scope:Unknown + UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 + RX packets:0 errors:0 dropped:0 overruns:0 frame:0 + TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 + collisions:0 + RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) +</code></pr \ No newline at end of file diff --git a/single-robot-setup-detail/page/2/index.html b/single-robot-setup-detail/page/2/index.html index 6f2eb5b2..be1535d3 100644 --- a/single-robot-setup-detail/page/2/index.html +++ b/single-robot-setup-detail/page/2/index.html @@ -1 +1 @@ -Single-Robot-Setup-Details

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Single-Robot-Setup-Details

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/page/3/index.html b/single-robot-setup-detail/page/3/index.html index 00d9742b..cc92ee22 100644 --- a/single-robot-setup-detail/page/3/index.html +++ b/single-robot-setup-detail/page/3/index.html @@ -1 +1 @@ -Single-Robot-Setup-Details

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Single-Robot-Setup-Details

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/page/4/index.html b/single-robot-setup-detail/page/4/index.html index 10e334e4..4e7defdb 100644 --- a/single-robot-setup-detail/page/4/index.html +++ b/single-robot-setup-detail/page/4/index.html @@ -1 +1 @@ -Single-Robot-Setup-Details

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Single-Robot-Setup-Details

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup-detail/page/5/index.html b/single-robot-setup-detail/page/5/index.html index c8d2f1f7..cb9759cc 100644 --- a/single-robot-setup-detail/page/5/index.html +++ b/single-robot-setup-detail/page/5/index.html @@ -1 +1 @@ -Single-Robot-Setup-Details

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Single-Robot-Setup-Details

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup/index.html b/single-robot-setup/index.html index 97415551..762f9cdb 100644 --- a/single-robot-setup/index.html +++ b/single-robot-setup/index.html @@ -1 +1 @@ -Single-Robot-Setups

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Single-Robot-Setups

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup/index.xml b/single-robot-setup/index.xml index b6a64f16..f9f12a7a 100644 --- a/single-robot-setup/index.xml +++ b/single-robot-setup/index.xml @@ -1,7 +1,88 @@ -Single-Robot-Setups on 箱庭https://toppers.github.io/hakoniwa/single-robot-setup/Recent content in Single-Robot-Setups on 箱庭Hugoja単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/単体ロボット向けシミュレータ導入手順 開発プラットフォームとターゲットCPU 開発プラットフォームは,Windows/Linux/Mac です. -ターゲットCPUはV850/ARMの2種類が存在します. -ご自身の環境に合わせて,プラットフォームやターゲットCPUをご選択ください. -基本的な導入の流れは変わりありませんが,開発プラットフォームやターゲットCPU毎に -細かい箇所での導入手順が異なります. -対応するプラットフォーム/ターゲットCPUの導入手順をご確認ください. -Windows V850版 ARM版 Linux V850版 ARM版 Mac V850版(非対応です) ARM版単体ロボット向けシミュレータ導入手順(Linux/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/単体ロボット向けシミュレータ導入手順(Linux/ARM編) 導入の流れ athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定単体ロボット向けシミュレータ導入手順(Linux/V850編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/単体ロボット向けシミュレータ導入手順(Linux/V850編) 導入の流れ Rubyのインストール athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定単体ロボット向けシミュレータ導入手順(Mac/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/単体ロボット向けシミュレータ導入手順(Mac/ARM編) 導入の流れ athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定単体ロボット向けシミュレータ導入手順(Windows/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/単体ロボット向けシミュレータ導入手順(Windows/ARM編) 導入の流れ WSLのインストール athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定単体ロボット向けシミュレータ導入手順(Windows/V850編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/単体ロボット向けシミュレータ導入手順(Windows/V850編) 導入の流れ WSLのインストール Rubyのインストール athrill2のインストール linux版64bit gccコンパイラ(ライブラリ含む)のインストール 箱庭用 EV3RT 開発環境のダウンロード サンプルアプリケーションの紹介 Unityのインストール・設定 \ No newline at end of file +Single-Robot-Setups on 箱庭https://toppers.github.io/hakoniwa/single-robot-setup/Recent content in Single-Robot-Setups on 箱庭Hugoja単体ロボット向けシミュレータ導入手順https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index/<h1 id="単体ロボット向けシミュレータ導入手順">単体ロボット向けシミュレータ導入手順</h1> +<h2 id="開発プラットフォームとターゲットcpu">開発プラットフォームとターゲットCPU</h2> +<hr> +<p>開発プラットフォームは,Windows/Linux/Mac です.<br> +ターゲットCPUはV850/ARMの2種類が存在します.<br> +ご自身の環境に合わせて,プラットフォームやターゲットCPUをご選択ください.</p> +<p>基本的な導入の流れは変わりありませんが,開発プラットフォームやターゲットCPU毎に<br> +細かい箇所での導入手順が異なります.<br> +対応するプラットフォーム/ターゲットCPUの導入手順をご確認ください.</p> +<ul> +<li>Windows +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/">ARM版</a></li> +</ul> +</li> +<li>Linux +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/">ARM版</a></li> +</ul> +</li> +<li>Mac +<ul> +<li>V850版(非対応です)</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/">ARM版</a></li> +</ul> +</li> +</ul>単体ロボット向けシミュレータ導入手順(Linux/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-arm/<h1 id="単体ロボット向けシミュレータ導入手順linuxarm編">単体ロボット向けシミュレータ導入手順(Linux/ARM編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol>単体ロボット向けシミュレータ導入手順(Linux/V850編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-linux-v850/<h1 id="単体ロボット向けシミュレータ導入手順linuxv850編">単体ロボット向けシミュレータ導入手順(Linux/V850編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/">Rubyのインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol>単体ロボット向けシミュレータ導入手順(Mac/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-mac-arm/<h1 id="単体ロボット向けシミュレータ導入手順macarm編">単体ロボット向けシミュレータ導入手順(Mac/ARM編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol>単体ロボット向けシミュレータ導入手順(Windows/ARM編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-arm/<h1 id="単体ロボット向けシミュレータ導入手順windowsarm編">単体ロボット向けシミュレータ導入手順(Windows/ARM編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/">WSLのインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_arm/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_arm/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_arm/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_arm/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol>単体ロボット向けシミュレータ導入手順(Windows/V850編)https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-setup/single-robot-setup-index-windows-v850/<h1 id="単体ロボット向けシミュレータ導入手順windowsv850編">単体ロボット向けシミュレータ導入手順(Windows/V850編)</h1> +<h2 id="導入の流れ">導入の流れ</h2> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/10_wsl_install/">WSLのインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/20_ruby_install_win_linux/">Rubyのインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/30_athrill2_install_v850/">athrill2のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/40_gcc_install_v850/">linux版64bit gccコンパイラ(ライブラリ含む)のインストール</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/50_hakoniwa_ev3rt_install_v850/">箱庭用 EV3RT 開発環境のダウンロード</a> +<ol> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/51_ev3rt_app_introduction_v850/">サンプルアプリケーションの紹介</a></li> +</ol> +</li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-setup-detail/60_unity_install/">Unityのインストール・設定</a></li> +</ol> \ No newline at end of file diff --git a/single-robot-setup/page/2/index.html b/single-robot-setup/page/2/index.html index 8bbf32d5..62ffa163 100644 --- a/single-robot-setup/page/2/index.html +++ b/single-robot-setup/page/2/index.html @@ -1 +1 @@ -Single-Robot-Setups

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Single-Robot-Setups

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup/single-robot-setup-index-linux-arm/index.html b/single-robot-setup/single-robot-setup-index-linux-arm/index.html index 07286712..d0062ad6 100644 --- a/single-robot-setup/single-robot-setup-index-linux-arm/index.html +++ b/single-robot-setup/single-robot-setup-index-linux-arm/index.html @@ -1 +1 @@ -単体ロボット向けシミュレータ導入手順(Linux/ARM編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +単体ロボット向けシミュレータ導入手順(Linux/ARM編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup/single-robot-setup-index-linux-v850/index.html b/single-robot-setup/single-robot-setup-index-linux-v850/index.html index 6b08495b..bb06361b 100644 --- a/single-robot-setup/single-robot-setup-index-linux-v850/index.html +++ b/single-robot-setup/single-robot-setup-index-linux-v850/index.html @@ -1 +1 @@ -単体ロボット向けシミュレータ導入手順(Linux/V850編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +単体ロボット向けシミュレータ導入手順(Linux/V850編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup/single-robot-setup-index-mac-arm/index.html b/single-robot-setup/single-robot-setup-index-mac-arm/index.html index 30d46d4b..d17b8ccc 100644 --- a/single-robot-setup/single-robot-setup-index-mac-arm/index.html +++ b/single-robot-setup/single-robot-setup-index-mac-arm/index.html @@ -1 +1 @@ -単体ロボット向けシミュレータ導入手順(Mac/ARM編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +単体ロボット向けシミュレータ導入手順(Mac/ARM編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup/single-robot-setup-index-windows-arm/index.html b/single-robot-setup/single-robot-setup-index-windows-arm/index.html index 9223bd8c..25e9acbc 100644 --- a/single-robot-setup/single-robot-setup-index-windows-arm/index.html +++ b/single-robot-setup/single-robot-setup-index-windows-arm/index.html @@ -1 +1 @@ -単体ロボット向けシミュレータ導入手順(Windows/ARM編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +単体ロボット向けシミュレータ導入手順(Windows/ARM編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup/single-robot-setup-index-windows-v850/index.html b/single-robot-setup/single-robot-setup-index-windows-v850/index.html index daa06878..87c06374 100644 --- a/single-robot-setup/single-robot-setup-index-windows-v850/index.html +++ b/single-robot-setup/single-robot-setup-index-windows-v850/index.html @@ -1 +1 @@ -単体ロボット向けシミュレータ導入手順(Windows/V850編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +単体ロボット向けシミュレータ導入手順(Windows/V850編)

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-setup/single-robot-setup-index/index.html b/single-robot-setup/single-robot-setup-index/index.html index b317ce06..18888a07 100644 --- a/single-robot-setup/single-robot-setup-index/index.html +++ b/single-robot-setup/single-robot-setup-index/index.html @@ -1,7 +1,7 @@ -単体ロボット向けシミュレータ導入手順 単体ロボット向けシミュレータ導入手順

              単体ロボット向けシミュレータ導入手順

              .

              単体ロボット向けシミュレータ導入手順

              開発プラットフォームとターゲットCPU


              開発プラットフォームは,Windows/Linux/Mac です.
              ターゲットCPUはV850/ARMの2種類が存在します.
              ご自身の環境に合わせて,プラットフォームやターゲットCPUをご選択ください.

              基本的な導入の流れは変わりありませんが,開発プラットフォームやターゲットCPU毎に
              細かい箇所での導入手順が異なります.
              対応するプラットフォーム/ターゲットCPUの導入手順をご確認ください.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Windows V850版 ARM版 Linux V850版 ARM版 Mac V850版(非対応です) ARM版 ">

              単体ロボット向けシミュレータ導入手順

              .

              単体ロボット向けシミュレータ導入手順

              開発プラットフォームとターゲットCPU


              開発プラットフォームは,Windows/Linux/Mac です.
              ターゲットCPUはV850/ARMの2種類が存在します.
              ご自身の環境に合わせて,プラットフォームやターゲットCPUをご選択ください.

              基本的な導入の流れは変わりありませんが,開発プラットフォームやターゲットCPU毎に
              細かい箇所での導入手順が異なります.
              対応するプラットフォーム/ターゲットCPUの導入手順をご確認ください.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-usage/01_usage_arm/index.html b/single-robot-usage/01_usage_arm/index.html index 7cf83d8d..67c485fe 100644 --- a/single-robot-usage/01_usage_arm/index.html +++ b/single-robot-usage/01_usage_arm/index.html @@ -1,16 +1,9 @@ -単体ロボット向けシミュレータ使用手順(ARM版) 単体ロボット向けシミュレータ使用手順(ARM版)

              単体ロボット向けシミュレータ使用手順(ARM版)

              .

              単体ロボット向けシミュレータ使用手順(ARM版)

              使用手順

              1. 環境変数の設定(Mac版のみ)
              2. cfgフォルダの配置(初回起動時のみ)
              3. EV3ロボット制御プログラムのビルド
              4. Unityのシミュレータの起動
              5. athrillの起動

              環境変数の設定(Mac版のみ)


              Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります.

              export GCC_PATH=<gccインストールフォルダ>/gcc-arm-none-eabi-9-2019-q4-major
              +ビルドするには,以下のコマンドを実行してください.">

              単体ロボット向けシミュレータ使用手順(ARM版)

              .

              単体ロボット向けシミュレータ使用手順(ARM版)

              使用手順

              1. 環境変数の設定(Mac版のみ)
              2. cfgフォルダの配置(初回起動時のみ)
              3. EV3ロボット制御プログラムのビルド
              4. Unityのシミュレータの起動
              5. athrillの起動

              環境変数の設定(Mac版のみ)


              Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります.

              export GCC_PATH=<gccインストールフォルダ>/gcc-arm-none-eabi-9-2019-q4-major
               

              cfgフォルダの配置(初回起動時のみ)


              cfg ファイルの配置(Mac版の場合)

              $ pwd 
               <インストールフォルダ>/ev3rt-athrill-ARMv7-A
               $ mkdir cfg/cfg
              diff --git a/single-robot-usage/01_usage_arm_v2.0/index.html b/single-robot-usage/01_usage_arm_v2.0/index.html
              index bb027bc5..c531b833 100644
              --- a/single-robot-usage/01_usage_arm_v2.0/index.html
              +++ b/single-robot-usage/01_usage_arm_v2.0/index.html
              @@ -1,16 +1,9 @@
              -単体ロボット向けシミュレータ使用手順(ARM版) 単体ロボット向けシミュレータ使用手順(ARM版) 

              単体ロボット向けシミュレータ使用手順(ARM版)

              .

              単体ロボット向けシミュレータ使用手順(ARM版)

              使用手順

              1. 環境変数の設定(Mac版のみ)
              2. cfgフォルダの配置(初回起動時のみ)
              3. EV3ロボット制御プログラムのビルド
              4. Unityのシミュレータの起動
              5. athrillの起動

              環境変数の設定(Mac版のみ)


              Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります.

              export GCC_PATH=<gccインストールフォルダ>/gcc-arm-none-eabi-9-2019-q4-major
              +ビルドするには,以下のコマンドを実行してください.">

              単体ロボット向けシミュレータ使用手順(ARM版)

              .

              単体ロボット向けシミュレータ使用手順(ARM版)

              使用手順

              1. 環境変数の設定(Mac版のみ)
              2. cfgフォルダの配置(初回起動時のみ)
              3. EV3ロボット制御プログラムのビルド
              4. Unityのシミュレータの起動
              5. athrillの起動

              環境変数の設定(Mac版のみ)


              Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります.

              export GCC_PATH=<gccインストールフォルダ>/gcc-arm-none-eabi-9-2019-q4-major
               

              cfgフォルダの配置(初回起動時のみ)


              cfg ファイルの配置(Mac版の場合)

              $ pwd 
               <インストールフォルダ>/ev3rt-athrill-ARMv7-A
               $ mkdir cfg/cfg
              diff --git a/single-robot-usage/01_usage_v2.1/index.html b/single-robot-usage/01_usage_v2.1/index.html
              index 3b2f11e4..50102cf3 100644
              --- a/single-robot-usage/01_usage_v2.1/index.html
              +++ b/single-robot-usage/01_usage_v2.1/index.html
              @@ -1,4 +1,4 @@
              -単体ロボット向けシミュレータ使用手順(V850版) 単体ロボット向けシミュレータ使用手順(V850版) 

              単体ロボット向けシミュレータ使用手順(V850版)

              .

              単体ロボット向けシミュレータ使用手順

              V2.1での変更点について

              v2.1 で,Unityでのシミュレーション実行をビルドしてバイナリ実行できるようになりました.
              バイナリ実行でシミュレーション実行を行う場合,

              • Unityシミュレーションの実行,
              • athrillの実行

              をひとまとめにして実行することができます.

              なお,従来の使用方法でもシミュレーションを実行することは可能ですので,
              その場合は下記をご参照いただき,使用してください.

              これ以降は,バイナリ実行を行うための手順の紹介となります.

              使用手順

              1. ビルド設定
              2. ビルドの実行,config.jsonの配置
              3. シミュレーションの実行

              ビルド設定


              ビルドを実施する前に,バイナリ実行時のウィンドウサイズに関する設定を行います.
              Unity のメニューから,「Edit」⇒「Project Settings」を選択します.

              「Player」
              Resolution and PresentationFullscreen ModeWindowedと設定します. +Unity のメニューから,「File」⇒「Build Settings」を選択します.">

              単体ロボット向けシミュレータ使用手順(V850版)

              .

              単体ロボット向けシミュレータ使用手順

              V2.1での変更点について

              v2.1 で,Unityでのシミュレーション実行をビルドしてバイナリ実行できるようになりました.
              バイナリ実行でシミュレーション実行を行う場合,

              • Unityシミュレーションの実行,
              • athrillの実行

              をひとまとめにして実行することができます.

              なお,従来の使用方法でもシミュレーションを実行することは可能ですので,
              その場合は下記をご参照いただき,使用してください.

              これ以降は,バイナリ実行を行うための手順の紹介となります.

              使用手順

              1. ビルド設定
              2. ビルドの実行,config.jsonの配置
              3. シミュレーションの実行

              ビルド設定


              ビルドを実施する前に,バイナリ実行時のウィンドウサイズに関する設定を行います.
              Unity のメニューから,「Edit」⇒「Project Settings」を選択します.

              「Player」
              Resolution and PresentationFullscreen ModeWindowedと設定します. その下の詳細なウィンドウサイズは基本そのままでもよいですが,サイズを変更したい場合は,
              お使いの環境に合わせて変更してください.

              ビルドの実行,config.jsonの配置


              設定が完了したら,Unityプロジェクトのビルドを行います.
              Unity のメニューから,「File」⇒「Build Settings」を選択します.

              Platform は[PC,Mac & Linux Standalone]のままとします.
              Architectureは実行するPCのアーキテクチャに合わせて設定しますが,
              どちらか分からないという方は,x86_64を選択してください.

              設定を終えたら,Buildを押下してビルドを実行します.

              すると,どの場所にビルドしたバイナリを配置するか,選択ダイアログが表示されますので, 任意の場所を選択します.
              今回は例として,ビルドするUnityプロジェクトのあるフォルダ内に,Buildフォルダを作成し,
              その中にビルドしたバイナリを配置するようにします.

              フォルダを選択すると,ビルドが実行されます.


              ビルドが完了したら,バイナリが出力されたフォルダ(今回の例ではBuildフォルダ)内に
              先ほど,Unityプロジェクトフォルダ配下に配置したconfig.jsonをコピーします.

              制御アプリのビルド


              シミュレーションの実行の前に制御アプリのビルドを行います.
              ビルド手順は,以下のEV3ロボット制御プログラムのビルドをご参照ください.

              memory_mmap.txtの編集(通信方式にMMAPを使用する場合のみ)


              制御アプリのビルドが完了したら,Unityバイナリ実行のためにアプリケーションフォルダにある
              memory_mmap.txtを編集します.
              使用するMMAPファイルのパスを記述するのですが,Unityバイナリを使用する場合には,
              MMAPファイルのパスを絶対パスで記述するように変更します.

              例:アプリケーション名がline_tarceの場合のmemory_mmap.txt

              ROM, 0x00000000, 512
               RAM, 0x00200000, 512
              diff --git a/single-robot-usage/01_usage_v850/index.html b/single-robot-usage/01_usage_v850/index.html
              index 46176e3c..28befd84 100644
              --- a/single-robot-usage/01_usage_v850/index.html
              +++ b/single-robot-usage/01_usage_v850/index.html
              @@ -1,4 +1,4 @@
              -単体ロボット向けシミュレータ使用手順(V850版) 単体ロボット向けシミュレータ使用手順(V850版) 

              単体ロボット向けシミュレータ使用手順(V850版)

              .

              単体ロボット向けシミュレータ使用手順(V850版)

              使用手順

              1. EV3ロボット制御プログラムのビルド
              2. Unityのシミュレータの起動
              3. athrillの起動

              EV3ロボット制御プログラムのビルド


              ev3rt-athrill-v850e2m/sdk/workspace に移動して,
              EV3ロボット制御プログラムをビルドしましょう.

              ビルドするには,以下のコマンドを実行してください.

              $ make img=<アプリケーションフォルダ名> clean
              +athrillの起動 最後に,athrillを起動しましょう.">

              単体ロボット向けシミュレータ使用手順(V850版)

              .

              単体ロボット向けシミュレータ使用手順(V850版)

              使用手順

              1. EV3ロボット制御プログラムのビルド
              2. Unityのシミュレータの起動
              3. athrillの起動

              EV3ロボット制御プログラムのビルド


              ev3rt-athrill-v850e2m/sdk/workspace に移動して,
              EV3ロボット制御プログラムをビルドしましょう.

              ビルドするには,以下のコマンドを実行してください.

              $ make img=<アプリケーションフォルダ名> clean
               $ make img=<アプリケーションフォルダ名>
               

              例:line_traceというアプリケーションフォルダのプログラムをビルドする場合

              $ make img=line_trace clean
               $ make img=line_trace
              diff --git a/single-robot-usage/01_usage_v850_v2.0/index.html b/single-robot-usage/01_usage_v850_v2.0/index.html
              index 821810e8..6936c788 100644
              --- a/single-robot-usage/01_usage_v850_v2.0/index.html
              +++ b/single-robot-usage/01_usage_v850_v2.0/index.html
              @@ -1,4 +1,4 @@
              -単体ロボット向けシミュレータ使用手順(V850版) 単体ロボット向けシミュレータ使用手順(V850版) 

              単体ロボット向けシミュレータ使用手順(V850版)

              .

              単体ロボット向けシミュレータ使用手順(V850版)

              使用手順

              1. EV3ロボット制御プログラムのビルド
              2. Unityのシミュレータの起動
              3. athrillの起動

              EV3ロボット制御プログラムのビルド


              ev3rt-athrill-v850e2m/sdk/workspace に移動して,
              EV3ロボット制御プログラムをビルドしましょう.

              ビルドするには,以下のコマンドを実行してください.

              $ make img=<アプリケーションフォルダ名> clean
              +athrillの起動 最後に,athrillを起動しましょう.">

              単体ロボット向けシミュレータ使用手順(V850版)

              .

              単体ロボット向けシミュレータ使用手順(V850版)

              使用手順

              1. EV3ロボット制御プログラムのビルド
              2. Unityのシミュレータの起動
              3. athrillの起動

              EV3ロボット制御プログラムのビルド


              ev3rt-athrill-v850e2m/sdk/workspace に移動して,
              EV3ロボット制御プログラムをビルドしましょう.

              ビルドするには,以下のコマンドを実行してください.

              $ make img=<アプリケーションフォルダ名> clean
               $ make img=<アプリケーションフォルダ名>
               

              例:line_traceというアプリケーションフォルダのプログラムをビルドする場合

              $ make img=line_trace clean
               $ make img=line_trace
              diff --git a/single-robot-usage/02_changed_params/index.html b/single-robot-usage/02_changed_params/index.html
              index 01344ace..715aecc0 100644
              --- a/single-robot-usage/02_changed_params/index.html
              +++ b/single-robot-usage/02_changed_params/index.html
              @@ -1,4 +1,4 @@
              -シミュレーションに関するチューニング シミュレーションに関するチューニング 

              シミュレーションに関するチューニング

              .

              変更可能なパラメータ

              EV3のパラメータについて


              今回のシミュレーション環境(Unity側)にはいくつかパラメータがありますので,その説明を行います.

              まず,パラメータを参照するには,Hierarchyビューで,「EV3」を選択してください(下図).

              image.png

              すると,InspectorビューにEV3のパラメータが表示されます.

              image.png

              以下,変更可能なパラメータを説明します(説明されていないものは変更しないでください). +EV3 Motor(Script) Power Const(動的変更可) EV3のモータのパワーです.デフォルトで40としていますが,値を変更できます.">

              シミュレーションに関するチューニング

              .

              変更可能なパラメータ

              EV3のパラメータについて


              今回のシミュレーション環境(Unity側)にはいくつかパラメータがありますので,その説明を行います.

              まず,パラメータを参照するには,Hierarchyビューで,「EV3」を選択してください(下図).

              image.png

              すると,InspectorビューにEV3のパラメータが表示されます.

              image.png

              以下,変更可能なパラメータを説明します(説明されていないものは変更しないでください). ※これらのパラメータは,シミュレーション実行時に動的に変更も可能なものもあります.

              EV3 Actuator(Script)


              Port(動的変更不可)

              Unity側のUDP受信ポート番号です.デフォルトでは54001です.

              この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください.

              DEBUG_FUNC_VDEV_TX_PORTNO   54001
               

              device_config.txt は,app.cと同じフォルダにあります.

              EV3 Sensor(Script)


              Host(動的変更不可)

              Athrillの配置マシンのIPアドレスです. Unityと同じマシン上に配置する場合は,デフォルト値のままで良いです.

              マシン負荷が高く,athrillとUnityを別マシンで動かす場合は,このIPアドレスを変更して対応ください.

              Port(動的変更不可)

              Athrill側のUDP受信ポート番号です.デフォルトでは54002です.

              この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください.

              DEBUG_FUNC_VDEV_RX_PORTNO   54002
              diff --git a/single-robot-usage/02_changed_params_v2.0/index.html b/single-robot-usage/02_changed_params_v2.0/index.html
              index 85f63df6..0706b5aa 100644
              --- a/single-robot-usage/02_changed_params_v2.0/index.html
              +++ b/single-robot-usage/02_changed_params_v2.0/index.html
              @@ -1,10 +1,5 @@
              -シミュレーションに関するチューニング シミュレーションに関するチューニング 

              シミュレーションに関するチューニング

              .

              single-robot-HackEV(v2.0)の追加要素について


              Hakoniwaクラスの追加

              single-robot-HackEV(v2.0) ではHakoniwaクラスが設けられました.

              Hakoniwaクラスはシミュレーション環境全体に関わる情報を持っています.

              主なフィールド説明
              Max Diff TimeathrillとUnityのシミュレーション時間の最大許容誤差時間
              Dbg Diff Time Msec現在のathrillとUnityのシミュレーション時間の誤差(msec)

              Robotの配置方法

              single-robot-HackEV(v2.0)ではあらかじめ用意されたいくつかのロボットモデルを
              ユーザの方が任意に配置することが出来ます.

              Project/Prefabs配下にいくつかのロボットモデルを用意しています.

              これらのロボットモデルをHierarchyビューのRobot配下にドラッグ&ドロップすることで +ユーザの方が任意に配置することが出来ます.">

              シミュレーションに関するチューニング

              .

              single-robot-HackEV(v2.0)の追加要素について


              Hakoniwaクラスの追加

              single-robot-HackEV(v2.0) ではHakoniwaクラスが設けられました.

              Hakoniwaクラスはシミュレーション環境全体に関わる情報を持っています.

              主なフィールド説明
              Max Diff TimeathrillとUnityのシミュレーション時間の最大許容誤差時間
              Dbg Diff Time Msec現在のathrillとUnityのシミュレーション時間の誤差(msec)

              Robotの配置方法

              single-robot-HackEV(v2.0)ではあらかじめ用意されたいくつかのロボットモデルを
              ユーザの方が任意に配置することが出来ます.

              Project/Prefabs配下にいくつかのロボットモデルを用意しています.

              これらのロボットモデルをHierarchyビューのRobot配下にドラッグ&ドロップすることで 簡単に配置することができます.


              変更可能なパラメータ


              Robot のパラメータについて


              超音波センサ

              Ultrasonic SensorDistance Valueでセンサ範囲を調整できます.

              モーター

              RigidbodyMassでタイヤの重さを,Angular Dragで回転時の抵抗値を調整できます.

              カラーセンサ

              Physical CameraSensor Sizeでセンシング範囲を調整できます.

              センサ用ライト

              LightRangeで光が届く範囲の距離を,SpotAngleで光が届く範囲の広さを調整できます.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-usage/index.html b/single-robot-usage/index.html index 6c6f5fc3..7aeedf5d 100644 --- a/single-robot-usage/index.html +++ b/single-robot-usage/index.html @@ -1 +1 @@ -Single-Robot-Usages

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Single-Robot-Usages

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-usage/index.xml b/single-robot-usage/index.xml index 7c8eec5f..09fc106b 100644 --- a/single-robot-usage/index.xml +++ b/single-robot-usage/index.xml @@ -1,118 +1,274 @@ -Single-Robot-Usages on 箱庭https://toppers.github.io/hakoniwa/single-robot-usage/Recent content in Single-Robot-Usages on 箱庭Hugojaシミュレーションに関するチューニングhttps://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/変更可能なパラメータ EV3のパラメータについて 今回のシミュレーション環境(Unity側)にはいくつかパラメータがありますので,その説明を行います. -まず,パラメータを参照するには,Hierarchyビューで,「EV3」を選択してください(下図). -すると,InspectorビューにEV3のパラメータが表示されます. -以下,変更可能なパラメータを説明します(説明されていないものは変更しないでください). ※これらのパラメータは,シミュレーション実行時に動的に変更も可能なものもあります. -EV3 Actuator(Script) Port(動的変更不可) Unity側のUDP受信ポート番号です.デフォルトでは54001です. -この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください. -DEBUG_FUNC_VDEV_TX_PORTNO 54001 device_config.txt は,app.cと同じフォルダにあります. -EV3 Sensor(Script) Host(動的変更不可) Athrillの配置マシンのIPアドレスです. Unityと同じマシン上に配置する場合は,デフォルト値のままで良いです. -マシン負荷が高く,athrillとUnityを別マシンで動かす場合は,このIPアドレスを変更して対応ください. -Port(動的変更不可) Athrill側のUDP受信ポート番号です.デフォルトでは54002です. -この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください. -DEBUG_FUNC_VDEV_RX_PORTNO 54002 device_config.txt は,app.cと同じフォルダにあります. -EV3 Motor(Script) Power Const(動的変更可) EV3のモータのパワーです.デフォルトで40としていますが,値を変更できます. -ただ,あまり大きい値を設定しすぎるとUnity側の問題か,物理的にありえないのかよくわかりませんが,EVロボットが吹っ飛びますので,ご注意ください... -照明のON/OFFについて 今回のデモでは,照明を3個用意しています. -全体照明1個 Directional Light スポットライト2個 Spot Light1 Spot Light2 それぞれの照明はシミュレーション実行時にON/OFFできます. ON/OFFのさせ方は単純で,HierachyビューでON/OFFしたいライトを選択します. -すると,Inspectorビューに下図のように「Light」のチェックボックスが見えます. このチェックボックスを外せばOFFになります. -カラーセンサの状態 パラメータではないですが,カラーセンサの認識している状態を知りたくなることがあるかと思います. そのため,カラーセンサの認識している値をUnityのパラメータ表示機能を利用して可視化しています. -参照するには,下図のようにHierarchyビューでColorSensorを選択してください. -そうすると,Inspectorビューに下図のように認識値(Rgb)が表示されます. -Rgbは,現在認識している色をそのまま表示しています. Rgb_r,g,b には,カラーセンサで取得できる数値を表示しています.シミュレーションに関するチューニングhttps://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/single-robot-HackEV(v2.0)の追加要素について Hakoniwaクラスの追加 single-robot-HackEV(v2.0) ではHakoniwaクラスが設けられました. -Hakoniwaクラスはシミュレーション環境全体に関わる情報を持っています. -主なフィールド 説明 Max Diff Time athrillとUnityのシミュレーション時間の最大許容誤差時間 Dbg Diff Time Msec 現在のathrillとUnityのシミュレーション時間の誤差(msec) Robotの配置方法 single-robot-HackEV(v2.0)ではあらかじめ用意されたいくつかのロボットモデルを -ユーザの方が任意に配置することが出来ます. -Project/Prefabs配下にいくつかのロボットモデルを用意しています. これらのロボットモデルをHierarchyビューのRobot配下にドラッグ&ドロップすることで 簡単に配置することができます. -変更可能なパラメータ Robot のパラメータについて 超音波センサ Ultrasonic SensorのDistance Valueでセンサ範囲を調整できます. -モーター RigidbodyのMassでタイヤの重さを,Angular Dragで回転時の抵抗値を調整できます. -カラーセンサ Physical CameraのSensor Sizeでセンシング範囲を調整できます. -センサ用ライト LightのRangeで光が届く範囲の距離を,SpotAngleで光が届く範囲の広さを調整できます.単体ロボット向けシミュレータ使用手順(ARM版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/単体ロボット向けシミュレータ使用手順(ARM版) 使用手順 環境変数の設定(Mac版のみ) cfgフォルダの配置(初回起動時のみ) EV3ロボット制御プログラムのビルド Unityのシミュレータの起動 athrillの起動 環境変数の設定(Mac版のみ) Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります. -export GCC_PATH=&lt;gccインストールフォルダ&gt;/gcc-arm-none-eabi-9-2019-q4-major cfgフォルダの配置(初回起動時のみ) cfg ファイルの配置(Mac版の場合) -$ pwd &lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A $ mkdir cfg/cfg $ cp cfg/cfg-mac cfg/cfg/cfg $ chmod +x cfg/cfg/cfg cfg ファイルの配置(Windows\Linux版の場合) -$ pwd &lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A $ mkdir cfg/cfg $ cp cfg/cfg-linux-64 cfg/cfg/cfg $ chmod +x cfg/cfg/cfg EV3ロボット制御プログラムのビルド ターミナル上で,ev3rt-athrill-ARMv7-A/sdk/OBJ1.1に移動して, -EV3ロボット制御プログラムをビルドしましょう. -ビルドするには,以下のコマンドを実行してください. -make clean;make ビルド成功すると,asp というバイナリができます. -$ ls asp asp Unityのシミュレータの起動 ※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください -次に,Unityをシミュレーションモードにします. Unityの画面上で ボタンを押下してください. -成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合) -athrillの起動 最後に,athrillを起動しましょう. -ev3rt-athrill-ARMv7-A/sdk/OBJ1.1に移動して,以下のコマンドを実行してください. -unityとの通信が UDP の場合 UDP版の場合単体ロボット向けシミュレータ使用手順(ARM版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/単体ロボット向けシミュレータ使用手順(ARM版) 使用手順 環境変数の設定(Mac版のみ) cfgフォルダの配置(初回起動時のみ) EV3ロボット制御プログラムのビルド Unityのシミュレータの起動 athrillの起動 環境変数の設定(Mac版のみ) Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります. -export GCC_PATH=&lt;gccインストールフォルダ&gt;/gcc-arm-none-eabi-9-2019-q4-major cfgフォルダの配置(初回起動時のみ) cfg ファイルの配置(Mac版の場合) -$ pwd &lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A $ mkdir cfg/cfg $ cp cfg/cfg-mac cfg/cfg/cfg $ chmod +x cfg/cfg/cfg cfg ファイルの配置(Windows\Linux版の場合) -$ pwd &lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A $ mkdir cfg/cfg $ cp cfg/cfg-linux-64 cfg/cfg/cfg $ chmod +x cfg/cfg/cfg EV3ロボット制御プログラムのビルド ターミナル上で,ev3rt-athrill-ARMv7-A/sdk/OBJ1.1に移動して, -EV3ロボット制御プログラムをビルドしましょう. -ビルドするには,以下のコマンドを実行してください. -make clean;make ビルド成功すると,asp というバイナリができます. -$ ls asp asp Unityのシミュレータの起動 ※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください -次に,Unityをシミュレーションモードにします. Unityの画面上で ボタンを押下してください. -成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合) -athrillの起動 最後に,athrillを起動しましょう. -ev3rt-athrill-ARMv7-A/sdk/OBJ1.1に移動して,以下のコマンドを実行してください. -unityとの通信が UDP の場合 UDP版の場合単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/単体ロボット向けシミュレータ使用手順 V2.1での変更点について v2.1 で,Unityでのシミュレーション実行をビルドしてバイナリ実行できるようになりました. -バイナリ実行でシミュレーション実行を行う場合, -Unityシミュレーションの実行, athrillの実行 をひとまとめにして実行することができます. -なお,従来の使用方法でもシミュレーションを実行することは可能ですので, -その場合は下記をご参照いただき,使用してください. -V850版 ARM版 これ以降は,バイナリ実行を行うための手順の紹介となります. -使用手順 ビルド設定 ビルドの実行,config.jsonの配置 シミュレーションの実行 ビルド設定 ビルドを実施する前に,バイナリ実行時のウィンドウサイズに関する設定を行います. -Unity のメニューから,「Edit」⇒「Project Settings」を選択します. -「Player」 -Resolution and PresentationのFullscreen Mode をWindowedと設定します. その下の詳細なウィンドウサイズは基本そのままでもよいですが,サイズを変更したい場合は, -お使いの環境に合わせて変更してください. -ビルドの実行,config.jsonの配置 設定が完了したら,Unityプロジェクトのビルドを行います. -Unity のメニューから,「File」⇒「Build Settings」を選択します. -Platform は[PC,Mac &amp; Linux Standalone]のままとします. -Architectureは実行するPCのアーキテクチャに合わせて設定しますが, -どちらか分からないという方は,x86_64を選択してください. -設定を終えたら,Buildを押下してビルドを実行します. -すると,どの場所にビルドしたバイナリを配置するか,選択ダイアログが表示されますので, 任意の場所を選択します. -今回は例として,ビルドするUnityプロジェクトのあるフォルダ内に,Buildフォルダを作成し, -その中にビルドしたバイナリを配置するようにします. -フォルダを選択すると,ビルドが実行されます. -ビルドが完了したら,バイナリが出力されたフォルダ(今回の例ではBuildフォルダ)内に -先ほど,Unityプロジェクトフォルダ配下に配置したconfig.jsonをコピーします. -制御アプリのビルド シミュレーションの実行の前に制御アプリのビルドを行います. -ビルド手順は,以下のEV3ロボット制御プログラムのビルドをご参照ください. -V850版 ARM版 memory_mmap.txtの編集(通信方式にMMAPを使用する場合のみ) 制御アプリのビルドが完了したら,Unityバイナリ実行のためにアプリケーションフォルダにある -memory_mmap.txtを編集します. -使用するMMAPファイルのパスを記述するのですが,Unityバイナリを使用する場合には, -MMAPファイルのパスを絶対パスで記述するように変更します. -例:アプリケーション名がline_tarceの場合のmemory_mmap.txt -ROM, 0x00000000, 512 RAM, 0x00200000, 512 RAM, 0x05FF7000, 10240 RAM, 0x07FF7000, 10240 MMAP, 0x40000000, /mnt/c/project/hakoniwa/ev3rt-athrill-v850e2m/sdk/workspace/line_trace/athrill_mmap.単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/単体ロボット向けシミュレータ使用手順(V850版) 使用手順 EV3ロボット制御プログラムのビルド Unityのシミュレータの起動 athrillの起動 EV3ロボット制御プログラムのビルド ev3rt-athrill-v850e2m/sdk/workspace に移動して, -EV3ロボット制御プログラムをビルドしましょう. -ビルドするには,以下のコマンドを実行してください. -$ make img=<アプリケーションフォルダ名> clean $ make img=<アプリケーションフォルダ名> 例:line_traceというアプリケーションフォルダのプログラムをビルドする場合 -$ make img=line_trace clean $ make img=line_trace ビルド成功すると,asp というバイナリができます. -$ ls asp asp Unityのシミュレータの起動 ※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください -次に,Unityをシミュレーションモードにします. Unityの画面上で ボタンを押下してください. -成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合) -athrillの起動 最後に,athrillを起動しましょう. -ev3rt-athrill-v850e2m/sdk/workspace/<アプリケーションフォルダ>に移動して,以下のコマンドを実行してください. -UDP版の場合 -$ athrill2 -c1 -t -1 -m memory.txt -d device_config.txt ../asp MMAP版の場合 -$ athrill2 -c1 -t -1 -m memory_mmap.txt -d device_config_mmap.txt ../asp 成功すると,以下のログが出力され,Unity上のEV3ロボットが動き始めます. -core id num=1 ROM : START=0x0 SIZE=512 RAM : START=0x5ff7000 SIZE=10240 Elf loading was succeeded:0x0 - 0xfd68 : 63.単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/単体ロボット向けシミュレータ使用手順(V850版) 使用手順 EV3ロボット制御プログラムのビルド Unityのシミュレータの起動 athrillの起動 EV3ロボット制御プログラムのビルド ev3rt-athrill-v850e2m/sdk/workspace に移動して, -EV3ロボット制御プログラムをビルドしましょう. -ビルドするには,以下のコマンドを実行してください. -$ make img=<アプリケーションフォルダ名> clean $ make img=<アプリケーションフォルダ名> 例:line_traceというアプリケーションフォルダのプログラムをビルドする場合 -$ make img=line_trace clean $ make img=line_trace ビルド成功すると,asp というバイナリができます. -$ ls asp asp Unityのシミュレータの起動 ※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください -次に,Unityをシミュレーションモードにします. Unityの画面上で ボタンを押下してください. -成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合) -athrillの起動 最後に,athrillを起動しましょう. -ev3rt-athrill-v850e2m/sdk/workspace/<アプリケーションフォルダ>に移動して,以下のコマンドを実行してください. -UDP版の場合 -$ athrill2 -c1 -t -1 -m memory.txt -d device_config.txt ../asp MMAP版の場合 -$ athrill2 -c1 -t -1 -m memory_mmap.txt -d device_config_mmap.txt ../asp 成功すると,以下のログが出力され,Unity上のEV3ロボットが動き始めます. -core id num=1 ROM : START=0x0 SIZE=512 RAM : START=0x5ff7000 SIZE=10240 Elf loading was succeeded:0x0 - 0xfd68 : 63.単体ロボット向けシミュレータ使用方法https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/単体ロボット向けシミュレータ使用方法 使用手順詳細 single-robot-HackEV(v2.1)を使用している場合(Windows, Mac向け) 使用しているUnityパッケージが single-robot-HackEV(v2.1) の場合は, -こちらの使用手順をご参照ください. -使用手順 シミュレーションに関わるチューニングについてはこちらをご参照ください. -チューニングについて(single-robot-HackEV(v2.0)を使用している場合) single-robot-HackEV(v2.0)を使用している場合 使用しているUnityパッケージが single-robot-HackEV(v2.0) の場合は, -こちらの使用手順をご参照ください. -V850版 ARM版 シミュレーションに関わるチューニングについてはこちらをご参照ください. -チューニングについて(single-robot-HackEV(v2.0)を使用している場合) single-robot-HackEV または ev3rt-simple-robotを使用している場合 使用しているUnityパッケージが single-robot-HackEV または ev3rt-simple-robot の場合は, -こちらの使用手順をご参照ください. -V850版 ARM版 シミュレーションに関わるチューニングについてはこちらをご参照ください. -チューニングについて \ No newline at end of file +Single-Robot-Usages on 箱庭https://toppers.github.io/hakoniwa/single-robot-usage/Recent content in Single-Robot-Usages on 箱庭Hugojaシミュレーションに関するチューニングhttps://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/<h1 id="変更可能なパラメータ">変更可能なパラメータ</h1> +<h2 id="ev3のパラメータについて">EV3のパラメータについて</h2> +<hr> +<p>今回のシミュレーション環境(Unity側)にはいくつかパラメータがありますので,その説明を行います.</p> +<p>まず,パラメータを参照するには,Hierarchyビューで,「EV3」を選択してください(下図).</p> +<p><a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F11a57fef-9e2d-e0a0-ef76-af5f71fc5d09.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=2fdf76b9af97446c26fe08b5e484d631"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F11a57fef-9e2d-e0a0-ef76-af5f71fc5d09.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=2fdf76b9af97446c26fe08b5e484d631"></a></p> +<p>すると,InspectorビューにEV3のパラメータが表示されます.</p> +<p><a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F835e61c2-0ec6-b955-3e32-01ba535a1860.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=34989dc74c297f1639308d77c4282ba6"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F835e61c2-0ec6-b955-3e32-01ba535a1860.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=34989dc74c297f1639308d77c4282ba6"></a></p> +<p>以下,変更可能なパラメータを説明します(説明されていないものは変更しないでください). +※これらのパラメータは,シミュレーション実行時に動的に変更も可能なものもあります.</p> +<h2 id="ev3-actuatorscript">EV3 Actuator(Script)</h2> +<hr> +<h3 id="port動的変更不可">Port(動的変更不可)</h3> +<p>Unity側のUDP受信ポート番号です.デフォルトでは54001です.</p> +<p>この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください.</p> +<pre tabindex="0"><code>DEBUG_FUNC_VDEV_TX_PORTNO 54001 +</code></pre><p>device_config.txt は,app.cと同じフォルダにあります.</p> +<h2 id="ev3-sensorscript">EV3 Sensor(Script)</h2> +<hr> +<h3 id="host動的変更不可">Host(動的変更不可)</h3> +<p>Athrillの配置マシンのIPアドレスです. +Unityと同じマシン上に配置する場合は,デフォルト値のままで良いです.</p> +<p>マシン負荷が高く,athrillとUnityを別マシンで動かす場合は,このIPアドレスを変更して対応ください.</p> +<h3 id="port動的変更不可-1">Port(動的変更不可)</h3> +<p>Athrill側のUDP受信ポート番号です.デフォルトでは54002です.</p> +<p>この値を変更する場合は,athrill側のパラメータ定義ファイル(device_config.txt)の以下も変更してください.</p> +<pre tabindex="0"><code>DEBUG_FUNC_VDEV_RX_PORTNO 54002 +</code></pre><p>device_config.txt は,app.cと同じフォルダにあります.</p> +<h2 id="ev3-motorscript">EV3 Motor(Script)</h2> +<hr> +<h3 id="power-const動的変更可">Power Const(動的変更可)</h3> +<p>EV3のモータのパワーです.デフォルトで40としていますが,値を変更できます.</p>シミュレーションに関するチューニングhttps://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/<h2 id="single-robot-hackevv20の追加要素について">single-robot-HackEV(v2.0)の追加要素について</h2> +<hr> +<h3 id="hakoniwaクラスの追加">Hakoniwaクラスの追加</h3> +<p><code>single-robot-HackEV(v2.0)</code> では<code>Hakoniwa</code>クラスが設けられました.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_hierarchy_view_v2.0.png " border="" width="400" /> +</figure> + +<p><code>Hakoniwa</code>クラスはシミュレーション環境全体に関わる情報を持っています.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_hakoniwa_field.png " border="" width="400" /> +</figure> + +<table> + <thead> + <tr> + <th style="text-align: left">主なフィールド</th> + <th style="text-align: left">説明</th> + </tr> + </thead> + <tbody> + <tr> + <td style="text-align: left">Max Diff Time</td> + <td style="text-align: left">athrillとUnityのシミュレーション時間の最大許容誤差時間</td> + </tr> + <tr> + <td style="text-align: left">Dbg Diff Time Msec</td> + <td style="text-align: left">現在のathrillとUnityのシミュレーション時間の誤差(msec)</td> + </tr> + </tbody> +</table> +<h3 id="robotの配置方法">Robotの配置方法</h3> +<p><code>single-robot-HackEV(v2.0)</code>ではあらかじめ用意されたいくつかのロボットモデルを<br> +ユーザの方が任意に配置することが出来ます.</p>単体ロボット向けシミュレータ使用手順(ARM版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/<h1 id="単体ロボット向けシミュレータ使用手順arm版">単体ロボット向けシミュレータ使用手順(ARM版)</h1> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>環境変数の設定(Mac版のみ)</li> +<li>cfgフォルダの配置(初回起動時のみ)</li> +<li>EV3ロボット制御プログラムのビルド</li> +<li>Unityのシミュレータの起動</li> +<li>athrillの起動</li> +</ol> +<h2 id="環境変数の設定mac版のみ">環境変数の設定(Mac版のみ)</h2> +<hr> +<p>Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります.</p> +<pre tabindex="0"><code>export GCC_PATH=&lt;gccインストールフォルダ&gt;/gcc-arm-none-eabi-9-2019-q4-major +</code></pre><h2 id="cfgフォルダの配置初回起動時のみ">cfgフォルダの配置(初回起動時のみ)</h2> +<hr> +<p>cfg ファイルの配置(Mac版の場合)</p> +<pre tabindex="0"><code>$ pwd +&lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A +$ mkdir cfg/cfg +$ cp cfg/cfg-mac cfg/cfg/cfg +$ chmod +x cfg/cfg/cfg +</code></pre><p>cfg ファイルの配置(Windows\Linux版の場合)</p> +<pre tabindex="0"><code>$ pwd +&lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A +$ mkdir cfg/cfg +$ cp cfg/cfg-linux-64 cfg/cfg/cfg +$ chmod +x cfg/cfg/cfg +</code></pre><h2 id="ev3ロボット制御プログラムのビルド">EV3ロボット制御プログラムのビルド</h2> +<hr> +<p>ターミナル上で,<code>ev3rt-athrill-ARMv7-A/sdk/OBJ1.1</code>に移動して,<br> +EV3ロボット制御プログラムをビルドしましょう.</p> +<p>ビルドするには,以下のコマンドを実行してください.</p>単体ロボット向けシミュレータ使用手順(ARM版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/<h1 id="単体ロボット向けシミュレータ使用手順arm版">単体ロボット向けシミュレータ使用手順(ARM版)</h1> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>環境変数の設定(Mac版のみ)</li> +<li>cfgフォルダの配置(初回起動時のみ)</li> +<li>EV3ロボット制御プログラムのビルド</li> +<li>Unityのシミュレータの起動</li> +<li>athrillの起動</li> +</ol> +<h2 id="環境変数の設定mac版のみ">環境変数の設定(Mac版のみ)</h2> +<hr> +<p>Mac版の場合,gccインストールフォルダの環境変数の設定が必要になります.</p> +<pre tabindex="0"><code>export GCC_PATH=&lt;gccインストールフォルダ&gt;/gcc-arm-none-eabi-9-2019-q4-major +</code></pre><h2 id="cfgフォルダの配置初回起動時のみ">cfgフォルダの配置(初回起動時のみ)</h2> +<hr> +<p>cfg ファイルの配置(Mac版の場合)</p> +<pre tabindex="0"><code>$ pwd +&lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A +$ mkdir cfg/cfg +$ cp cfg/cfg-mac cfg/cfg/cfg +$ chmod +x cfg/cfg/cfg +</code></pre><p>cfg ファイルの配置(Windows\Linux版の場合)</p> +<pre tabindex="0"><code>$ pwd +&lt;インストールフォルダ&gt;/ev3rt-athrill-ARMv7-A +$ mkdir cfg/cfg +$ cp cfg/cfg-linux-64 cfg/cfg/cfg +$ chmod +x cfg/cfg/cfg +</code></pre><h2 id="ev3ロボット制御プログラムのビルド">EV3ロボット制御プログラムのビルド</h2> +<hr> +<p>ターミナル上で,<code>ev3rt-athrill-ARMv7-A/sdk/OBJ1.1</code>に移動して,<br> +EV3ロボット制御プログラムをビルドしましょう.</p> +<p>ビルドするには,以下のコマンドを実行してください.</p>単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/<h1 id="単体ロボット向けシミュレータ使用手順">単体ロボット向けシミュレータ使用手順</h1> +<h2 id="v21での変更点について">V2.1での変更点について</h2> +<p>v2.1 で,Unityでのシミュレーション実行をビルドしてバイナリ実行できるようになりました.<br> +バイナリ実行でシミュレーション実行を行う場合,</p> +<ul> +<li>Unityシミュレーションの実行,</li> +<li>athrillの実行</li> +</ul> +<p>をひとまとめにして実行することができます.</p> +<p>なお,従来の使用方法でもシミュレーションを実行することは可能ですので,<br> +その場合は下記をご参照いただき,使用してください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/">ARM版</a></li> +</ul> +<p>これ以降は,バイナリ実行を行うための手順の紹介となります.</p> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>ビルド設定</li> +<li>ビルドの実行,config.jsonの配置</li> +<li>シミュレーションの実行</li> +</ol> +<h2 id="ビルド設定">ビルド設定</h2> +<hr> +<p>ビルドを実施する前に,バイナリ実行時のウィンドウサイズに関する設定を行います.<br> +Unity のメニューから,「Edit」⇒「Project Settings」を選択します.</p> +<p>「Player」<br> +<code>Resolution and Presentation</code>の<code>Fullscreen Mode</code> を<code>Windowed</code>と設定します. +その下の詳細なウィンドウサイズは基本そのままでもよいですが,サイズを変更したい場合は,<br> +お使いの環境に合わせて変更してください.</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_build_setting.png " border="" width="600" /> +</figure> + +<h2 id="ビルドの実行configjsonの配置">ビルドの実行,config.jsonの配置</h2> +<hr> +<p>設定が完了したら,Unityプロジェクトのビルドを行います.<br> +Unity のメニューから,「File」⇒「Build Settings」を選択します.</p>単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/<h1 id="単体ロボット向けシミュレータ使用手順v850版">単体ロボット向けシミュレータ使用手順(V850版)</h1> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>EV3ロボット制御プログラムのビルド</li> +<li>Unityのシミュレータの起動</li> +<li>athrillの起動</li> +</ol> +<h2 id="ev3ロボット制御プログラムのビルド">EV3ロボット制御プログラムのビルド</h2> +<hr> +<p><code>ev3rt-athrill-v850e2m/sdk/workspace</code> に移動して,<br> +EV3ロボット制御プログラムをビルドしましょう.</p> +<p>ビルドするには,以下のコマンドを実行してください.</p> +<pre tabindex="0"><code>$ make img=<アプリケーションフォルダ名> clean +$ make img=<アプリケーションフォルダ名> +</code></pre><p>例:<code>line_trace</code>というアプリケーションフォルダのプログラムをビルドする場合</p> +<pre tabindex="0"><code>$ make img=line_trace clean +$ make img=line_trace +</code></pre><p>ビルド成功すると,asp というバイナリができます.</p> +<pre tabindex="0"><code>$ ls asp +asp +</code></pre><h2 id="unityのシミュレータの起動">Unityのシミュレータの起動</h2> +<hr> +<p><strong>※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください</strong></p> +<p>次に,Unityをシミュレーションモードにします. +Unityの画面上で<a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F1365fe63-28e1-0b02-e615-91b1f23724b9.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=d95a1ef03fd2f1640baf832491fcc986"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F1365fe63-28e1-0b02-e615-91b1f23724b9.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=d95a1ef03fd2f1640baf832491fcc986"></a> ボタンを押下してください.</p> +<p>成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合)</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_run.png " border="" width="900" /> +</figure> + +<h2 id="athrillの起動">athrillの起動</h2> +<hr> +<p>最後に,athrillを起動しましょう.</p>単体ロボット向けシミュレータ使用手順(V850版)https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/<h1 id="単体ロボット向けシミュレータ使用手順v850版">単体ロボット向けシミュレータ使用手順(V850版)</h1> +<h2 id="使用手順">使用手順</h2> +<ol> +<li>EV3ロボット制御プログラムのビルド</li> +<li>Unityのシミュレータの起動</li> +<li>athrillの起動</li> +</ol> +<h2 id="ev3ロボット制御プログラムのビルド">EV3ロボット制御プログラムのビルド</h2> +<hr> +<p><code>ev3rt-athrill-v850e2m/sdk/workspace</code> に移動して,<br> +EV3ロボット制御プログラムをビルドしましょう.</p> +<p>ビルドするには,以下のコマンドを実行してください.</p> +<pre tabindex="0"><code>$ make img=<アプリケーションフォルダ名> clean +$ make img=<アプリケーションフォルダ名> +</code></pre><p>例:<code>line_trace</code>というアプリケーションフォルダのプログラムをビルドする場合</p> +<pre tabindex="0"><code>$ make img=line_trace clean +$ make img=line_trace +</code></pre><p>ビルド成功すると,asp というバイナリができます.</p> +<pre tabindex="0"><code>$ ls asp +asp +</code></pre><h2 id="unityのシミュレータの起動">Unityのシミュレータの起動</h2> +<hr> +<p><strong>※必ず,athrillの起動より先にUnityのシミュレータの起動を行ってください</strong></p> +<p>次に,Unityをシミュレーションモードにします. +Unityの画面上で<a href="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F1365fe63-28e1-0b02-e615-91b1f23724b9.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=d95a1ef03fd2f1640baf832491fcc986"><img alt="image.png" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F244147%2F1365fe63-28e1-0b02-e615-91b1f23724b9.png?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=d95a1ef03fd2f1640baf832491fcc986"></a> ボタンを押下してください.</p> +<p>成功すると,下図のような画面に切り替わります.(画像は single-robot-HackEV.unitypackage の場合)</p> + + +<figure> + <img src="https://toppers.github.io/hakoniwa/hakoniwa/img/single-robot/unity_run.png " border="" width="900" /> +</figure> + +<h2 id="athrillの起動">athrillの起動</h2> +<hr> +<p>最後に,athrillを起動しましょう.</p>単体ロボット向けシミュレータ使用方法https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/Mon, 01 Jan 0001 00:00:00 +0000https://toppers.github.io/hakoniwa/single-robot-usage/single-robot-usage-index/<h1 id="単体ロボット向けシミュレータ使用方法">単体ロボット向けシミュレータ使用方法</h1> +<h2 id="使用手順詳細">使用手順詳細</h2> +<hr> +<h3 id="single-robot-hackevv21を使用している場合windows-mac向け">single-robot-HackEV(v2.1)を使用している場合(Windows, Mac向け)</h3> +<p>使用しているUnityパッケージが <code>single-robot-HackEV(v2.1)</code> の場合は,<br> +こちらの使用手順をご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v2.1/">使用手順</a></li> +</ul> +<p>シミュレーションに関わるチューニングについてはこちらをご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/">チューニングについて(single-robot-HackEV(v2.0)を使用している場合)</a></li> +</ul> +<hr> +<h3 id="single-robot-hackevv20を使用している場合">single-robot-HackEV(v2.0)を使用している場合</h3> +<p>使用しているUnityパッケージが <code>single-robot-HackEV(v2.0)</code> の場合は,<br> +こちらの使用手順をご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850_v2.0/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm_v2.0/">ARM版</a></li> +</ul> +<p>シミュレーションに関わるチューニングについてはこちらをご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params_v2.0/">チューニングについて(single-robot-HackEV(v2.0)を使用している場合)</a></li> +</ul> +<hr> +<h3 id="single-robot-hackev-または-ev3rt-simple-robotを使用している場合">single-robot-HackEV または ev3rt-simple-robotを使用している場合</h3> +<p>使用しているUnityパッケージが <code>single-robot-HackEV</code> または <code>ev3rt-simple-robot</code> の場合は,<br> +こちらの使用手順をご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_v850/">V850版</a></li> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/01_usage_arm/">ARM版</a></li> +</ul> +<p>シミュレーションに関わるチューニングについてはこちらをご参照ください.</p> +<ul> +<li><a href="https://toppers.github.io/hakoniwa/single-robot-usage/02_changed_params/">チューニングについて</a></li> +</ul> \ No newline at end of file diff --git a/single-robot-usage/page/2/index.html b/single-robot-usage/page/2/index.html index 7f79c906..d51a5414 100644 --- a/single-robot-usage/page/2/index.html +++ b/single-robot-usage/page/2/index.html @@ -1 +1 @@ -Single-Robot-Usages

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Single-Robot-Usages

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/single-robot-usage/single-robot-usage-index/index.html b/single-robot-usage/single-robot-usage-index/index.html index e8e6e27e..2e4ec88d 100644 --- a/single-robot-usage/single-robot-usage-index/index.html +++ b/single-robot-usage/single-robot-usage-index/index.html @@ -1,4 +1,4 @@ -単体ロボット向けシミュレータ使用方法 単体ロボット向けシミュレータ使用方法

              単体ロボット向けシミュレータ使用方法

              .

              単体ロボット向けシミュレータ使用方法

              使用手順詳細


              single-robot-HackEV(v2.1)を使用している場合(Windows, Mac向け)

              使用しているUnityパッケージが single-robot-HackEV(v2.1) の場合は,
              こちらの使用手順をご参照ください.

              シミュレーションに関わるチューニングについてはこちらをご参照ください.


              single-robot-HackEV(v2.0)を使用している場合

              使用しているUnityパッケージが single-robot-HackEV(v2.0) の場合は,
              こちらの使用手順をご参照ください.

              シミュレーションに関わるチューニングについてはこちらをご参照ください.


              single-robot-HackEV または ev3rt-simple-robotを使用している場合

              使用しているUnityパッケージが single-robot-HackEV または ev3rt-simple-robot の場合は,
              こちらの使用手順をご参照ください.

              シミュレーションに関わるチューニングについてはこちらをご参照ください.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +チューニングについて ">

              単体ロボット向けシミュレータ使用方法

              .

              単体ロボット向けシミュレータ使用方法

              使用手順詳細


              single-robot-HackEV(v2.1)を使用している場合(Windows, Mac向け)

              使用しているUnityパッケージが single-robot-HackEV(v2.1) の場合は,
              こちらの使用手順をご参照ください.

              シミュレーションに関わるチューニングについてはこちらをご参照ください.


              single-robot-HackEV(v2.0)を使用している場合

              使用しているUnityパッケージが single-robot-HackEV(v2.0) の場合は,
              こちらの使用手順をご参照ください.

              シミュレーションに関わるチューニングについてはこちらをご参照ください.


              single-robot-HackEV または ev3rt-simple-robotを使用している場合

              使用しているUnityパッケージが single-robot-HackEV または ev3rt-simple-robot の場合は,
              こちらの使用手順をご参照ください.

              シミュレーションに関わるチューニングについてはこちらをご参照ください.

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/tags/index.html b/tags/index.html index 9feb472b..0edfc6f9 100644 --- a/tags/index.html +++ b/tags/index.html @@ -1 +1 @@ -Tags

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file +Tags

              Voice of TOPPERS Project Hakoniwa WG Developers

              Our vision, news and ideas, and whatever feels important.
              Follow us on Twitter

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/technical-links/index.html b/technical-links/index.html index 944afcff..5d1935c9 100644 --- a/technical-links/index.html +++ b/technical-links/index.html @@ -1,4 +1,4 @@ -技術情報・発表資料

              技術情報・発表資料

              最新の技術情報、イベントや学会で発表した講演のスライド資料・論文・動画アーカイブなどを公開します.

              最新の技術情報

              Qiita記事

              最新の開発状況は、主にQiitaで発信しています。
              次のタグやOrganizationをフォローされると、最新情報が得やすくなります.

              なお、Qiita記事では開発途上の試行版であったり古い情報が記載されていることがあります。

              このページの先頭に戻る

              講演資料や動画など

              TOPPERSカンファレンス2023

              2022年6月30日(金)に開催されたTOPPERSカンファレンス2023の講演資料です。
              箱庭WGの活動紹介、最新の開発状況とプラットフォーム化に向けた新たな展開について紹介しました。

              箱庭 Update 2023

              TOPPERS/箱庭の新たな展開:プラットフォーム化への一歩

              このページの先頭に戻る

              ROSCon 2022

              ROSCon 2022 が2022年10月20日(木)-21日(金)に開催され、箱庭WGのメンバが発表を行いました。 +技術情報・発表資料

              技術情報・発表資料

              最新の技術情報、イベントや学会で発表した講演のスライド資料・論文・動画アーカイブなどを公開します.

              最新の技術情報

              Qiita記事

              最新の開発状況は、主にQiitaで発信しています。
              次のタグやOrganizationをフォローされると、最新情報が得やすくなります.

              なお、Qiita記事では開発途上の試行版であったり古い情報が記載されていることがあります。

              このページの先頭に戻る

              講演資料や動画など

              TOPPERSカンファレンス2023

              2022年6月30日(金)に開催されたTOPPERSカンファレンス2023の講演資料です。
              箱庭WGの活動紹介、最新の開発状況とプラットフォーム化に向けた新たな展開について紹介しました。

              箱庭 Update 2023

              TOPPERS/箱庭の新たな展開:プラットフォーム化への一歩

              このページの先頭に戻る

              ROSCon 2022

              ROSCon 2022 が2022年10月20日(木)-21日(金)に開催され、箱庭WGのメンバが発表を行いました。 ROSConは、ロボット開発プラットフォームであるROS(Robot Operating System)に関する世界的な開発者会議の日本版です。

              mROS 2: yet another runtime environment onto embedded devices

              • 講演資料 (Speaker Deck)

              • 動画 (Vimeo)

              このページの先頭に戻る

              ROSCon JP 2022

              ROSCon JP 2022 が2022年10月19日(水)に京都で開催され、箱庭WGのメンバが発表を行いました。

              SROS 2 with OIDC(OpenID Connect) :ロボットと人を安全に繋ぐ技術

              • 動画 (Vimeo)

              now and next about mROS 2

              • 講演資料 (Speaker Deck)

              • 動画 (Vimeo)

              このページの先頭に戻る

              RSJ2022

              2022年9月5日(月)-9日(金)に開催されたRSJ2022 (第40回 日本ロボット学会学術講演会)において、ROS制御ロボットシミュレーションに関する研究発表を実施しました。本発表の資料を公開します。

              • 論文題目『hakoniwa-ros2sim: 仮想環境を活用したROS 2アプリケーションのシミュレーション手法』
              • 発表資料 (PDFファイル)

              SWEST24

              2022年9月1日(木)-2日(金)に開催されたSWEST24 (第24回 組込みシステム技術に関するサマーワークショップ)の講演資料です。

              セッションs2b: 箱庭・試行の軌跡と新たなチャレンジ ~箱庭はなぜ技術屋の心を揺さぶるのか~

              セッションs3b: ここから始める箱庭の活用

              セッションs2c: 大事なのでもう一回: 振舞いのコードもモデルを使って作成しよう

              このページの先頭に戻る

              ROS Japan UG #47 シミュレータ特集!

              2021年8月26日(金) に開催された「ROS Japan UG #47 シミュレータ特集!」にて、「箱庭ショーケース」と銘打ったLightning Talkを発表しました。これまでの箱庭の成果物や今後のロードマップを紹介しています。

              このページの先頭に戻る

              2022年度 ETロボコン向け TOPPERS活用セミナー

              2022年6月25日(土)に開催されたETロボコン向け TOPPERS活用セミナーの講義資料です。
              箱庭プロトタイプモデルの単体ロボット向けシミュレータについて、その内部の詳細な仕組みと、カスタマイズ方法について詳しく解説しました。

              このページの先頭に戻る

              TOPPERSカンファレンス2022

              2022年6月10日(金)に開催されたTOPPERSカンファレンス2022の講演資料です。
              箱庭WGの活動紹介、最新の開発状況であるゲーム技術との統合、および、組込み向けのROS 2軽量実行環境についてそれぞれ紹介しました。

              箱庭WGの活動紹介

              ゲーム技術(VR/Photon)がもたらす箱庭ワールドの now and future

              mROS 2:ロボットソフトウェアの組込みデバイス向け軽量実行環境

              • 講演資料 (Speaker Deck)
              • 動画 (YouTube)

              このページの先頭に戻る

              オープンソースカンファレンス 2022 Nagoya

              2022年5月28日(土)に開催されたオープンソースカンファレンス 2022 Nagoyaにて、箱庭のVR展開に関するセッションを実施しました。

              • 箱庭VR空間で、ロボット・マルチプレイ開発をゲーム感覚でやってみよう
                • 講師:森 崇 ((株)永和システムマネジメント)
                • セッション概要:メタバースという言葉が流行っていますが、VR空間に入って新しい価値観や体験ができるようになりました。このような体験をロボット開発でもやってみたくなりませんか?TOPPERS/箱庭WGでは、このような新しい技術を好き勝手に取り入れながら、箱庭コンセプトの実現に向けて日々自己研鑽をしています。
                  2022年初頭、複数の拠点にいる開発者が、箱庭VR空間に入って、ロボット開発できるようになりました!本セミナーでは、この開発環境の説明と共に、どうやって利用できるようになるか説明したいと思います。ゲーミングPCがあれば100%無料でお試しできます!

              このページの先頭に戻る

              Unity道場 ロボティクス 秋のLT祭り 2021

              2021年10月19日(火) に開催された「Unity道場 ロボティクス 秋のLT祭り 2021」にて、箱庭の最新の活動状況や研究開発成果に関するLightning Talk講演を実施しました。箱庭では、物理演算と可視化のエンジンとしてUnityの技術を積極的に活用しています。

              • 集まれ!Dreamingエンジニア!
                 〜箱庭で紡ぎ出されるIoT/クラウドロボティクス開発の新しいカタチ〜
                • 講演者:森 崇(株式会社永和システムマネジメント TechLead)
                • 『箱庭』とは、IoT/クラウドロボティクス時代の仮想シミュレーション環境です。「箱の中に、様々なモノをみんなの好みで配置して、いろいろ試せる!」ようになれることを目指しています。Unityはそのコンセプトを実現する上で要となる技術です。箱庭を利用するとUnity上で手軽にロボットを配置し,物理エンジンで動作させながらマイコンシミュレータ/ROS/クラウド連携できます。箱庭で紡ぎだされるロボット開発の新しいカタチ/夢を語りながら、最新の箱庭成果をどうやれば利用/開発できるようになるか説明します。箱庭成果はOSSとしてUnityパッケージと併せて一般公開中です。

              講演スライドおよび動画アーカイブがUnity Learning Materialsに公開されています。ぜひご覧ください。
              https://learning.unity3d.jp/7915/

              このページの先頭に戻る

              ROSCon JP 2021

              ROSCon JP 2021 が2021年9月16日(木)に開催されました。
              ROSCon JPは、ロボット開発プラットフォームであるROS(Robot Operating System)に関する開発者会議の日本版です。TOPPERSプロジェクトはROSCon JP 2021にフレンドシップスポンサーとして協力しており、箱庭WGではROSの諸技術の発展・普及に貢献しています。

              箱庭:IoT/クラウドロボティクス時代の仮想シミュレーション環境

              ROS 2 Client Library for E^2

              このページの先頭に戻る

              2021年度 ETロボコン向け TOPPERS活用セミナー

              2021年6月26日(土)に開催されたETロボコン向け TOPPERS活用セミナーの講義資料です。
              箱庭プロトタイプモデルの単体ロボット向けシミュレータの紹介と、ETロボコン大会のシミュレータ環境に採用されているマイコンシミュレータAthrillについて、そのデバッグ機能や進んだ使い方を詳しく解説しました。

              このページの先頭に戻る

              TOPPERSカンファレンス2021

              2021年6月4日(金)に開催されたTOPPERSカンファレンス2021の講演資料です。
              箱庭WGの活動紹介、箱庭コア技術の最新の開発状況、および、教育機会への箱庭成果物の活用事例についての紹介を行いました。

              [特別講演]Roboticsエンジニアチームの知的創造をブーストする ~クラウドネイティブ技術による開発革命~

              『箱庭』Epilogue & Update

              最新の箱庭コア技術紹介

              大学におけるシステム開発演習に箱庭を活用する

              ETロボコンでのathrill活⽤

              このページの先頭に戻る

              ETNET2021

              2021年3月25日(木)〜26日(金)に開催された情報処理学会 第236回システム・アーキテクチャ・第194回システムとLSIの設計技術・第56回組込みシステム合同研究発表会(ETNET2021)において、箱庭を活用した自律移動ロボットの制御パラメータ探索手法に関する研究成果の発表を行いました。

              • IoT仮想環境「箱庭」による自律移動ロボットの制御パラメータの自動探索手法
                • 立川 悠輝(京都大学), 福田 竜也(インテック), 森 崇(永和システムマネジメント), 高瀬 英希(京都大学/JSTさきがけ) IoT時代の仮想シミュレーション環境「箱庭」の実現に向けた検討および初期実装
                • 情報処理学会研究報告組込みシステム(EMB), Vol. 2021-EMB-56, No. 223, pp. 1-8 (2021).
                • 概要:「箱庭」とは,IoT/自動運転時代の包括的な仮想シミュレーション環境である.箱庭プロトタイプモデルのひとつとして,マイコンシミュレータAthrillおよび物理演算エンジンUnityで構成される単体ロボットシミュレータが成果物として公開されている.本研究では,単体ロボットシミュレータを活用した自律移動ロボットの開発において,その制御パラメータを自動探索する手法を提案する.まず,単体ロボットシミュレータの通信方式を拡張し,シミュレータ上のテストを制御できるようにする.そして,自律移動ロボットの制御パラメータを変更してテストを繰り返し実行することで,適切な値の探索を実現する.提案手法の有効性を議論するため,ステアリング量の計算のためのPIDパラメータに提案手法を適用した.その結果,コースの周回時間を最短にできる制御パラメータを探索できることを確認した.
                • 発表論文 / 情報処理学会 電子図書館

              このページの先頭に戻る

              情報処理学会 第55回EMB研究会

              2020年12月11日(金)に開催された情報処理学会 第55回組込みシステム研究会 (IPSJ-SIGEMB55)において、箱庭のコンセプト検討および初期実装に関する研究成果の発表を行いました。

              • IoT時代の仮想シミュレーション環境「箱庭」の実現に向けた検討および初期実装
                • 高瀬英希(京都大学/JSTさきがけ), 細合晋太郎(チェンジビジョン), 高田光隆(名古屋大学), 庭野正義(アイコムシステック), 辻悠斗・森崇(永和システムマネジメント)
                • 情報処理学会研究報告組込みシステム(EMB), Vol. 2020-EMB-55, No. 3, pp. 1-7 (2020).
                • 概要:IoTの新たな時代を迎え,開発現場では様々な機器が絡んだ複雑なシステムと向き合う必要がある.我々は,このようなシステムを効率的にシミュレーションできる環境である「箱庭」の研究開発の構想に取り組んでいる.本環境では,IoT システムの全体像を机上で仮想化できるようにして,多様な領域からの技術者が集まって構築される IoT システムの振る舞いや問題経路を,各自の開発対象や興味から多様に観察できるようにする.本稿では,これまで我々が検討を進めてきた「箱庭」の狙いや基本構想を紹介する.その後,これらを実証する応用事例として開発を進めているプロトタイプについて共有する.最後に,単体ロボットを題材としたプロトタイプの開発状況を紹介し,その技術的有意点を議論する.
                • 発表論文 / 情報処理学会 電子図書館
                • 発表資料 (PDFファイル)

              このページの先頭に戻る

              ET & IoT Digital 2020

              2020年11月16日(月)から12月18日(金)にオンライン開催されたET & IoT Digital 2020の併設カンファレンス・スペシャルセッションにおいて、TOPPERSプロジェクトの活動紹介を行いました。
              箱庭のコンセプトと狙い、WGの最新の研究開発の成果を紹介しました。

              IoT/クラウドロボティクス時代の仮想シミュレーション環境「箱庭」のご紹介

              箱庭プロトタイプの紹介と開発状況

              RDBOXが供するクラウドネイティブ環境を活用し「箱庭」を動かす

              このページの先頭に戻る

              Modeling Forum 2020

              2020年11月26日(木)に開催された「Modeling Forum 2020 〜モデリング x ニューノーマル〜」(主催:UMLモデリング推進協議会(UMTP))における、講演資料および動画アーカイブです。

              • 組込みシステムのモデリング/シミュレーションをデスクトップにもたらす<箱庭>の新世界
              • 森 崇((株) 永和システムマネジメント)・久保秋 真((株) チェンジビジョン)
              • 概要:IoT/クラウド時代に入り、組込みシステム開発は、より複雑で複合的なシステムになってきています。このようなシステムの開発には、対象となるシステムを取り巻く環境・機器等もモデル化した「動くモデル」によるシミュレーションが欠かせません。HILS/SILSのような環境は既にありますが、多人数で安価に利用できるものではありません。箱庭は、このような環境を誰でも手軽に使えることを目指した環境です。 ロボット教育の取り組み等の事例を含めて箱庭の新世界を紹介いたします。

              箱庭の新世界と、ロボット教育への取り組み等の事例について紹介しました。

              このページの先頭に戻る

              Unity道場 ロボティクススペシャル

              2020年10月10日(土)に開催された「Unity道場 ロボティクススペシャル 龍の巻」の講演資料および動画です。

              • IoT/クラウドロボティクス時代の仮想シミュレーション環境・箱庭のご紹介
              • 概要:ロボット開発は、IoT/クラウド時代に入り、様々な機器が絡んだ複雑なシステムと向き合う必要があります。TOPPERSプロジェクトでは、このようなシステムを手軽にシミュレーションできる環境である「箱庭」の構築に取り組んでいます。本発表では、「箱庭」で掲げるコンセプトを実証するプロトタイプ・モデルの開発状況を紹介し、その応用事例として、組込みロボット教育向けのシミュレーション環境について紹介します。本シミュレーション環境では、Unityを積極的に採用し、ライントレース等のロボット演習を実施可能な素材をオープンソースで公開しています。オンラインで組込みロボット教育を検討されておられる方には必見です!
              • 森 崇((株) 永和システムマネジメント)・高瀬 英希(京都大学)

              箱庭WGの狙いとコンセプトおよび最新のプロトタイプモデルの開発状況を解説し、特に成果を挙げている単体ロボット向けプロトタイプモデルのオンラインロボット教育演習への導入事例を紹介しました。 Unity Learning Materials の掲載ページも合わせてご覧ください。

              このページの先頭に戻る

              2020年度 ETロボコン向け TOPPERS活用セミナー

              2020年7月18日(土)に開催されたETロボコン向け TOPPERS活用セミナーの講演資料および動画です。
              箱庭WGの狙いとプロトタイプモデルの紹介に加えて、単体ロボット向けプロトタイプモデルの導入方法と使用方法について、詳しく紹介しています。

              『箱庭ワーキンググループ』 目指すところとプロトタイプモデルの紹介

              単体ロボット向けプロトタイプの導入手順と使用方法の紹介

              単体ロボット向けプロトタイプモデル 〜チューニング/注意点と今後の展開について〜

              このページの先頭に戻る

              TOPPERSカンファレンス2020

              2020年6月12日(金)に開催されたTOPPERSカンファレンス2020の講演資料および動画です。
              箱庭WGの活動紹介、プロトタイプ開発と時間同期機構の解説、および、クラウドIDEを利用したアイデアの紹介を行いました。

              『箱庭ワーキンググループ』 目指すところと活動の紹介

              箱庭のプロトタイプ開発と異種レイヤ間の時間同期機構

              クラウドIDEとエミュレータを利用した実機レス開発環境

              このページの先頭に戻る

              TOPPERS技術検討会議(2019年度)

              2019年12月19日(木)に実施したTOPPERSプロジェクト 2019年度 技術検討会議の資料です。
              箱庭のアーキテクチャとコア技術の検討状況を解説し、本技術の適用可能性を議論しました。

              このページの先頭に戻る

              ET & IoT Technology 2019

              2019年11月20日(水)〜22日(金)に開催されたET & IoT Technology 2019(組込み総合技術展 & IoT総合技術展 2019)の資料です。
              TOPPERS/SESSAMEパビリオンにおいて、箱庭WGの活動紹介をパネル展示しました。また、スペシャルセッションC-4において、箱庭のコンセプトの解説に関する講演を実施しました。

              このページの先頭に戻る

              ROSCon JP 2019

              2019年9月25日(水)に開催されたROSCon JP 2019の講演資料および動画です。
              箱庭の紹介、および、技術要素のひとつであるmROSのアップデートについて、ライトニングトークを実施しました。

              箱庭の紹介

              ROSノード軽量実行環境mROS update報告

              このページの先頭に戻る

              SWEST21

              2019年9月5日(木)〜6日(金)に開催された第21回 組込みシステム技術に関するサマーワークショップ (SWEST21)の資料です。
              インタラクティブセッションにおいて箱庭WGの活動紹介を行い、ベストプロジェクト賞 シルバーを受賞しました。 diff --git a/topics/index.html b/topics/index.html new file mode 100644 index 00000000..f5ea0ace --- /dev/null +++ b/topics/index.html @@ -0,0 +1 @@ +トピックス・イベント案内

              トピックス・イベント案内

              過去のトピックスやイベントについてご案内します.

              2024年

              このページの先頭に戻る

              2023年

              • 2023年9月26日(火)に開催された ROSCon JP 2023 に、TOPPERSプロジェクト/箱庭WGはブロンズスポンサーとして協賛しました。
              • 箱庭のconnpassイベント を不定期に実施しています。もくもく会や茶話会、チュートリアル会などを一般公開で実施しており、箱庭WGの開発メンバも参加しています。
                • もくもく会:各自のやりたいことや知りたいことを持ち寄って、まず自己紹介を交えてやりたいことを表明し、そして「もくもく」とそれぞれ自由にやりたいことを進めて、そして最後には進捗を共有する会です。
                • 茶話会では:ランチタイムやアフターファイブに開催予定で、各自でお弁当や飲み物を準備して、箱庭に関係しそうなネタや最近の活動の進捗などをゆるく議論(というより雑談)する会です。ロボットやIoTの仮想化/シミュレーションなど、箱庭に限らないネタもばんばん取り上げます。
                • チュートリアル会:箱庭WGのメンバが持ち回りで担当して、自身の取り組みや最新の動向、そしていろんな野望などなどを、自由に語り尽くします!皆さんでフランクに情報交換や議論などできればと思っています。チュートリアルのページにて、スライド資料や動画アーカイブなどを公開しています。
                • 箱庭のことはいろいろなイベントで見聞きして気になっているんだけど,,, よし動かしてみよう!と思っているけども幾数月,,, 箱庭はさておき Unity x ROS がとっても気になる!!という方々、ぜひともご参加ください。特に定まった議題などはありませんので、とりま開発メンバと雑談してみたい方々の参加も大歓迎です。
              • 箱庭WG主査の森崇を職務執行者として、2023年8月1日に合同会社箱庭ラボを設立しました。
                • 箱庭ラボの目標は、誰でも手軽に箱庭を体験できる環境を創出することです。長年TOPPERSプロジェクトとして開発してきたオープンソース仮想空間「箱庭」でエンジニアが自身の開発成果を共有し、枠組みや境界を越えて共創することで新しい価値を生み出すことを目指しています。この夢のような箱庭の実現に向けて、TOPPERS/箱庭の開発を推進し、先端の生成AI技術活用や箱庭プラットフォームの整備、さらにはチュートリアル会の開催やドキュメント整備等を通じて箱庭コミュニティを育てていきます。
                • Informationのブログページでは、箱庭の最新の開発状況や活動内容について紹介しています。ぜひご覧ください。
              • モノづくりスペシャリストのための情報ポータル「MONOist」に連載記事を寄稿しています。
                仮想環境を使ったクラウド時代の組み込み開発のススメ という連載タイトルにて、箱庭の活動を織り交ぜながらこれからのIoTシステム開発の姿を紹介しています。ぜひご覧ください。

              このページの先頭に戻る

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file diff --git a/tutorial/index.html b/tutorial/index.html index 049b16ad..eded5e20 100644 --- a/tutorial/index.html +++ b/tutorial/index.html @@ -1,4 +1,4 @@ -チュートリアル

              チュートリアル

              connpassイベントで実施した箱庭チュートリアル会のスライド資料・動画アーカイブなどを公開します.

              箱庭チュートリアル会とは?

              箱庭WGのメンバが持ち回りで担当して、自身の取り組みや最新の動向、そしていろんな野望などなどを、自由に語り尽くします!
              皆さんでフランクに情報交換や議論などできればと思っています。

              本ページでは、チュートリアル会のスライド資料や動画アーカイブなどを公開しています。

              箱庭入門会とは?

              主に初めて箱庭に触れる方を対象として、箱庭の全体像やアーキテクチャ、アセットの作成方法などを紹介する会です。 +チュートリアル

              チュートリアル

              connpassイベントで実施した箱庭チュートリアル会のスライド資料・動画アーカイブなどを公開します.

              箱庭チュートリアル会とは?

              箱庭WGのメンバが持ち回りで担当して、自身の取り組みや最新の動向、そしていろんな野望などなどを、自由に語り尽くします!
              皆さんでフランクに情報交換や議論などできればと思っています。

              本ページでは、チュートリアル会のスライド資料や動画アーカイブなどを公開しています。

              箱庭入門会とは?

              主に初めて箱庭に触れる方を対象として、箱庭の全体像やアーキテクチャ、アセットの作成方法などを紹介する会です。 Getting Startedな内容になっていて、自分好みのシミュレーション環境を構築する方法を学ぶことができます。 すでに箱庭を知っている方も復習に最適な連弾シリーズの形式です。 30分程度のミニセミナー形式で下記の項目をひとつずつの内容を進めていき、解説パートは動画アーカイブとして公開しています。

              入門会 #10 ドローンシミュレータのUnity機体をカスタマイズする

              箱庭ドローンのUnityワールド/機体をカスタマイズする方法を解説します。
               
              diff --git a/update/index.html b/update/index.html
              new file mode 100644
              index 00000000..29937db6
              --- /dev/null
              +++ b/update/index.html
              @@ -0,0 +1 @@
              +トピックス・イベント案内 

              トピックス・イベント案内

              過去のトピックスやイベントについてご案内します.

              2024年

              このページの先頭に戻る

              2023年

              このページの先頭に戻る

              2022年

              このページの先頭に戻る

              2021年

              2020年

              • 2020年11月16日(月)から12月18日(金)にオンライン開催されたET & IoT Digital 2020の併設カンファレンス・スペシャルセッションにおける講演資料および動画アーカイブを掲載しました。
                • IoT/クラウドロボティクス時代の仮想シミュレーション環境「箱庭」のご紹介
                • 箱庭プロトタイプの紹介と開発状況
                • RDBOXが供するクラウドネイティブ環境を活用し「箱庭」を動かす
              • ユニティ・テクノロジーズ・ジャパン様のWebページ「Unityを活用した開発事例」にて、箱庭の活動が取り上げられています。“MANUFACTURE 製造分野でのUnity開発事例” の項目に掲載されています。
              • 2020.12.13
              • 2020.10.27
              • 2020.08.26
                • リポジトリ一覧のページを追加しました。箱庭WGが開発・管理しているオープンソースソフトウェアを紹介しています。
                • 2020年8月20日(木)・21日(金)にオンライン開催されたSWEST22のインタラクティブセッションにおいて、箱庭WGの活動に関係する次の発表が受賞しました。
                  • ベストプロジェクト賞 ゴールド:TOPPERS箱庭WG紹介(発表者:細合晋太郎・森崇)
                  • ベストポスター賞 ゴールド:TOPPERS/Athrillを使用したAUTOSARモデルカー演習の実機レス化(発表者:庭野正義・安井大介)
              • 2020.07.29
              • 2020.06.12
                • 箱庭のWebサイトを立ち上げました。

              このページの先頭に戻る

              © 2019- by Hakoniwa Working-Group, TOPPERS Project

              \ No newline at end of file