项目简介
这是一个2D机器人模拟器,可模拟和测试Arduino代码在虚拟机器人上的行为,用户能在模拟器上运行Arduino代码并观察机器人表现。
项目的主要特性和功能
- 可在Web或桌面环境运行。
- 具备基本物理模拟,含碰撞检测与物理交互。
- 模拟实现Arduino API,涵盖数字、模拟、串口通信等功能。
- 支持加载和编译自定义Arduino代码库。
- 提供图形界面可视化机器人及其配件行为。
- 支持多个传感器和输出设备的模拟。
安装使用步骤
前提条件
用户已下载本项目的源码文件。
设置环境
- Windows用户需用WSL(Windows Subsystem for Linux)设置开发环境。
- macOS和Linux用户可直接使用终端。
编译和运行
Web环境
- 安装Emscripten。
mkdir build_web
cd build_web
emcmake cmake../
make deploy
cd deploy
emrun --no_browser --port=8080 index.html
- 打开浏览器访问http://localhost:8080
桌面环境
mkdir build
cd build
cmake../
make
ln -sf arduino_examples/libhello.so libcode.so
(若运行不同程序,将libhello.so
替换为编译后程序名)./sim
(若运行自定义程序,将ino文件放于arduino_examples
文件夹,在arduino_examples/CMakeLists.txt
的INO_SOURCES
列表添加ino文件,执行make
,并按步骤5替换程序名)
加载和测试代码
在模拟器中加载Arduino代码,可使用键盘和鼠标控制进行交互和测试: - R:重启模拟。 - L:不重启模拟加载新代码。 - 空格键:暂停模拟。 - 方向键/鼠标左键:移动相机视角。 - 鼠标滚轮:缩放视角。 - F:相机跟随机器人。
注意事项
- 模拟器处于开发阶段,存在部分未实现功能和限制。
- 主要用于教育和测试,不建议用于生产环境。
- 使用前确保开发环境满足项目要求。
未来改进计划
- 完善Arduino API模拟实现。
- 增加更多传感器和输出设备支持。
- 优化物理模拟和图形渲染性能。
- 提供更友好的用户界面和交互方式。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】