ywb
|
8035cf29e2
|
-
|
2026-05-29 20:21:46 +08:00 |
|
ywb
|
0d0dd15853
|
照片上传
|
2026-05-29 18:22:02 +08:00 |
|
ywb
|
a009fe9bb5
|
-
|
2026-05-29 15:09:34 +08:00 |
|
ywb
|
f64068475f
|
修改运行时显示
|
2026-05-29 13:37:02 +08:00 |
|
ywb
|
a556a0858b
|
速度调节
|
2026-05-29 08:51:01 +08:00 |
|
ywb
|
3ccc49d6cf
|
-
|
2026-05-28 15:22:27 +08:00 |
|
ywb
|
4c096a4bd1
|
可基本执行任务
|
2026-05-28 13:55:55 +08:00 |
|
ywb
|
f507363c34
|
-
|
2026-05-28 10:05:48 +08:00 |
|
ywb
|
fcf5649d8c
|
任务开关
|
2026-05-27 14:49:40 +08:00 |
|
ywb
|
c1601c0a85
|
-
|
2026-05-27 11:09:06 +08:00 |
|
ywb
|
9b8e2e233a
|
点击“设置”的时候,“运行”也处于选中状态。
任务配置->机械臂初始姿态 加入“应用当前姿态”按钮。点击,把机械臂调整为该姿态。
任务配置->网格配置 本来点位行3已经设置好了数据,但现在没有了。
机械臂的IP地址换到了192.168.50.89
|
2026-05-26 18:23:21 +08:00 |
|
ywb
|
c7042b1bba
|
更换IP地址
|
2026-05-26 11:34:07 +08:00 |
|
ywb
|
119246ade3
|
任务执行
|
2026-05-24 18:26:10 +08:00 |
|
ywb
|
adcd7e0a2c
|
执行任务
|
2026-05-23 16:02:01 +08:00 |
|
ywb
|
6920403035
|
任务执行
|
2026-05-23 10:02:19 +08:00 |
|
ywb
|
2eb39fdbd5
|
使用他们的导航方法
|
2026-05-19 21:25:41 +08:00 |
|
ywb
|
a160c18ba7
|
导航修复
|
2026-05-19 15:59:23 +08:00 |
|
ywb
|
50f6d4c295
|
导航修复
|
2026-05-18 23:40:14 +08:00 |
|
ywb
|
ea4d592ea3
|
fix: nav2_navigator _get_current_pose uses /amcl_pose (was /odom which is always 0,0)
|
2026-05-17 10:15:43 +08:00 |
|
ywb
|
c3a5af8045
|
fix: nav2_navigator.py ROS_DOMAIN_ID=1 in script files and all _run_ros2_bash calls
|
2026-05-17 09:38:11 +08:00 |
|
ywb
|
80a4beabcf
|
fix: ROS_DOMAIN_ID 1 (AGV bringup uses domain 1, not 0)
|
2026-05-17 09:06:43 +08:00 |
|
ywb
|
60331dda2b
|
点击地图导航
|
2026-05-16 23:47:02 +08:00 |
|
ywb
|
e6a8d495f7
|
可导航
|
2026-05-16 22:58:04 +08:00 |
|
ywb
|
4e3cb4d3ef
|
Nav2导航 heredoc pipe方式修复 + 重启脚本更新
nav2_navigator.py: 改用 subprocess.Popen + stdin heredoc 避免bash单引号转义
restart_agv.sh: 清理所有旧进程再重启(bringup → Nav2 → Flask)
app.py: init_pose改用 heredoc 子进程脚本方式
|
2026-05-16 19:18:18 +08:00 |
|
ywb
|
a9840c38ef
|
Nav2导航 + 初始化位置功能
- nav2_navigator.py: 通过 ros2 action 与 Nav2 通信,修复 YAML 格式(pose 嵌套)
- mission_executor.py: 改用 Nav2 navigate_to_pose action 导航
- app.py: navigate/to 等 API 改用 Nav2Navigator;新增 /api/mission/init_pose
API,通过子进程调用 rclpy 发布 /initialpose 到 (0,0,0)
- setting.html/js: 任务配置Tab加「初始化位置」按钮
注意:ROS2 daemon (domain=1) 与 Flask 在不同 domain,
Flask 进程内调用 rclpy 会破坏 daemon 状态,需通过子进程调用
|
2026-05-16 14:22:10 +08:00 |
|
ywb
|
2bb8dff4e2
|
Nav2 导航集成:新增 nav2_navigator.py,mission_executor 改用 Nav2 action 导航
- 新增 agv_app/utils/nav2_navigator.py:Nav2Navigator 类,通过 ros2 action
/navigate_to_pose 和 /navigate_through_poses 与 Nav2 通信,支持路径点导航
- app.py:navigate/to, navigate/path, navigate/status 三个 API 改用 Nav2Navigator
- mission_executor.py:_execute_point 中调用 _nav2_go_to_point() 替代原来的
time.sleep 模拟移动,Nav2 负责从当前点到目标点的自主导航
- 原有的 map_navigator.py(A* + Pure Pursuit 自实现)保留不动,供无 Nav2 时降级用
|
2026-05-16 10:23:17 +08:00 |
|
ywb
|
924f9f3be6
|
fix: get_position返回缓存位置防止odom无数据时整体失败;map_navigator ROS_DOMAIN_ID=1
|
2026-05-16 01:26:51 +08:00 |
|
ywb
|
1dc439dc8e
|
fix: AGV位置读取失败 - ROS_DOMAIN_ID环境变量缺失、odom输出管道错误、ANSI转义序列未清理
问题根因:
1. ros2 daemon默认运行在domain 0,AGV节点在domain 1,导致无法通信
2. _run_ros2_cmd通过daemon通信,daemon忽略了shell的ROS_DOMAIN_ID环境变量
3. 修复: 在bash -c内联设置export ROS_DOMAIN_ID=1
4. 修复: 所有ros2 topic echo命令添加--once参数确保只输出一次后退出
5. 修复: 清理ANSI转义序列(\x1b)和RTPS错误信息前缀,避免YAML解析失败
6. 修复: 添加source /opt/ros/humble/setup.bash确保ros2命令可用
7. 修复: get_position和get_battery统一使用_run_ros2_cmd而非独立subprocess调用
|
2026-05-15 23:44:21 +08:00 |
|
ywb
|
94c1043f4d
|
init
|
2026-05-14 21:43:35 +08:00 |
|