|
|
发表于 2025-3-5 17:28:50
|
显示全部楼层
本帖最后由 邹杰 于 2025-3-6 19:19 编辑
全局路径规划相关
============================================================
已知问题
1.当两条导航重叠部分过多时会导致部分路由丢失. 导致业务层下发途进点,开始和结束点时匹配不到可达路径。
1.简单解决方案:将途进点计算从现有的web计算,移到ros2全局规划器结点中进行.
2.彻底解决方案: 全局规划器中加入导航清洗机制, 将重叠部分路由删掉.
临时解决方案: 通过中台删除重叠部分导航的路由, 并重新初始化全局路径规划器.
============================================================
表:gx_robot_auto_driving_task
------------------------------------
新增字段:
pass_point varchar(255) default "" #本次任务途经点,格式 ["113.154545,23.54546","113.154545,23.54546"]
pass_nav varchar(255) default "" #本次任务途经导航, 格式["75cf5972","88862904","a19258ae"] 需上报到后台查体本次任务行驶轨迹.
表:gx_robot
------------------------------------
新增字段:
is_gpp_init int default 0 # 是否进行全局路径规划 0:不初始化 1:初始化
注:
1.计算完成后会自动设置为0
2.is_gpp_init设置为1前, 需保证导航、路由和点数据都准备就绪, 即保证计算期间数据都不会变动.
新增表:gx_floyd_path_matrix
------------------------------------
DROP TABLE IF EXISTS `gx_floyd_path_matrix`;
CREATE TABLE `gx_floyd_path_matrix` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`row_index` int NULL DEFAULT NULL COMMENT '行索引',
`col_index` int NULL DEFAULT NULL COMMENT '列索引',
`row_mark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '行标识',
`col_mark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '列标识',
`value` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE,
INDEX `row_index`(`row_index`, `col_index`) USING BTREE,
INDEX `row_mark`(`row_mark`, `col_mark`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'floyd - paths- 邻接矩阵表' ROW_FORMAT = Dynamic;
新增表:gx_node_mark
------------------------------------
CREATE TABLE `gx_node_mark` (
`id` int UNSIGNED NOT NULL AUTO_INCREMENT,
`point_x` int NULL DEFAULT NULL,
`point_y` int NULL DEFAULT NULL,
`mark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL,
`type` tinyint NULL DEFAULT NULL,
`include_nav_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL,
`include_route_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL,
`out_degrees` json NULL COMMENT '出度',
`in_degrees` json NULL COMMENT '入度',
`extend` json NULL COMMENT '额外数据',
PRIMARY KEY (`id`) USING BTREE,
INDEX `mark`(`mark`) USING BTREE,
INDEX `include_route_id`(`include_route_id`) USING BTREE,
INDEX `include_nav_id`(`include_nav_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '结点信息表' ROW_FORMAT = Dynamic;
|
|