#author("2024-11-16T07:10:50+00:00","default:iseki","iseki") #author("2024-11-16T07:24:22+00:00","default:iseki","iseki") * 箱庭 - IoT用ソフトウェアハブ - https://github.com/toppers/ - https://www.youtube.com/watch?v=QAd4jFCkiBU **** アーキテクチャ - https://github.com/toppers/hakoniwa-document/tree/main/architecture ** Install *** Hakoniwa core (ライブラリ的なもの?) **** コンパイル(インストールはなし) - https://github.com/toppers/hakoniwa-core-cpp.git - 要 gtest, gtest-devel <pre> git clone https://github.com/toppers/hakoniwa-core-cpp.git cd hakoniwa-core-cpp mkdir build cd build cmake -D test=false -D debug=true -D gcov=false .. make </pre> *** Hakoniwa Core client - https://github.com/toppers/hakoniwa-core-cpp-client.git - hakoniwa core を使用 <pre> git clone --recursive https://github.com/toppers/hakoniwa-core-cpp-client.git cd hakoniwa-core-cpp-client bash build.bash bash install.bash </pre> or <pre> git clone --recursive https://github.com/toppers/hakoniwa-core-cpp-client.git cd hakoniwa-core-cpp-client mkdir build cd build cmake .. -DHAKO_DATA_MAX_ASSET_NUM=4 make cd .. bash install.bash </pre> *** Hakoniwa Conductor - https://github.com/toppers/hakoniwa-conductor - [[Rust]]言語 - 要 [[gRPC]]開発環境のインストール - Rocky Linux (RedHat系) は [[libc++]] (llvm) のインストールも必要 <pre> dnf install cargo git clone --recursive https://github.com/toppers/hakoniwa-conductor cd hakoniwa-conductor/ cd main/ bash build.bash </pre> ** See also. - [[ROS]] - [[Athrill]] ** 箱庭 ドローン - https://github.com/toppers/hakoniwa-px4sim.git - https://www.jasa.or.jp/dl/tech/simulator_operation_edition.pdf *** hakoniwa-px4sim - https://github.com/toppers/hakoniwa-px4sim/blob/main/README-ja.md マニュアル git clone --recursive https://github.com/toppers/hakoniwa-px4sim.git *** [[PX4]] <pre> cd px4 cp hakoniwa-apps/10016_none_iris PX4-Autopilot/ROMFS/px4fmu_common/init.d-posix/airframes/10016_none_iris cp hakoniwa-apps/rcS PX4-Autopilot/ROMFS/px4fmu_common/init.d-posix/rcS cd PX4-Autopilot bash Tools/setup/ubuntu.sh --no-nuttx --no-sim-tools # 使用するツールやライブラリのインストール make px4_sitl_default bash ../sim/simstart.bash </pre> *** Hakoniwa <pre> cd hakoniwa/ bash install.bash # Install Hakonwia Core third-party/hakoniwa-core-cpp-client/hako-setup-check.bash # chcek dnf install gtest dnf install gtest-devel bash build.bash # コンパイル bash run.bash # 起動 </pre> **** 簡易クライアント(Unityの代替) <pre> cd hakoniwa/third-party/hakoniwa-core-cpp-client bash build.bash bash install.bash # /usr/local/bin/hakoniwa/, /usr/local/lib/hakoniwa/ にインストールされる </pre> - Hakoniwa で "ERROR: can not read pdu data: Hako_Collision" が多発 ** Unity - https://github.com/toppers/hakoniwa-unity-drone-model - https://github.com/toppers/hakoniwa-document/blob/main/architecture/assets/README-unity.md *** Setup for MS Windows - https://github.com/toppers/hakoniwa-unity-drone-model.git から recursive モードで Clone する. - hakoniwa-unity-drone-model/install.bat を実行 -- xcopy /E /I /Y drone\Assets\Resources\ros_types\* plugin\plugin-srcs\ros_types\ - Unity Hab から plugin/plugin-srcs を開く - Window -> Hakoniwa -> Generate -- plugin\plugin-srcs\[[core_config.json>./unity/core_config.json]] -- plugin\plugin-srcs\[[custom.json>./unity/custom.json]] **** Trouble Shoot - "namespace Newtonsoft" のエラーが出る場合 -- Window -> Package Manager -> + -> Add Package from git URL で com.unity.nuget.newtonsoft-json をインストール - "namespace Google", "namespace HakoniwaGrpc" 等のエラーが出る場合 -- %%Edit -> Project Settings -> Player -> Other Settings -> Script Compilation で Scripting Define Symbols に NO_USE_GRPC を追加して Apply%% -- gRPC を入れる. *** [[gRPC]] - https://neue.cc/2023/07/28_yetanotherhttphandler.html **** インストール + plugin\install.bat で plugin\plugin-srcs\Assets\Plugin\src\PyreCsharp\Gen が削除されないようにする. + install.bat の実行 + Unity を起動 -- エラーは "Ignore(無視)" する. + [[NuGetForUnity]] を Unityにインストール -- https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity + 再起動 + [[NuGetForUnity]] から必要なパッケージをインストール -- gRPC, Protobuf 関連をインストール -- MQTT 関連をインストール