# Cấu trúc thư mục pnkx_nav_core Mô tả cấu trúc thư mục thực tế của dự án: ``` pnkx_nav_core/ ├── src/ │ ├── Navigations/ │ │ ├── Cores/ │ │ │ ├── move_base_core/ # BaseNavigation interface │ │ │ ├── robot_nav_core/ # Planner interfaces (BaseGlobalPlanner, BaseLocalPlanner, RecoveryBehavior) │ │ │ ├── robot_nav_core_adapter/ # Adapter utilities (global_planner_adapter, local_planner_adapter, costmap_adapter) │ │ │ └── robot_nav_core2/ # Additional nav utilities (global_planner, local_planner, costmap) │ │ ├── Libraries/ │ │ │ └── nav_grid/ # Navigation grid utilities │ │ └── Packages/ │ │ └── move_base/ # MoveBase implementation │ │ │ ├── Algorithms/ │ │ ├── Cores/ │ │ │ └── score_algorithm/ # Trajectory scoring và goal checking │ │ ├── Libraries/ │ │ │ ├── mkt_algorithm/ # MKT kinematics (diff drive & bicycle) │ │ │ ├── mkt_plugins/ # MKT plugin components │ │ │ ├── mkt_msgs/ # MKT message types │ │ │ ├── kalman/ # Kalman filtering │ │ │ └── angles/ # Angle utilities │ │ └── Packages/ │ │ ├── global_planners/ │ │ │ ├── custom_planner/ # Custom global planner │ │ │ ├── dock_planner/ # Docking planner │ │ │ └── two_points_planner/ # Two points planner │ │ └── local_planners/ │ │ └── pnkx_local_planner/ # PNKX local planner │ │ │ ├── Libraries/ │ │ ├── costmap_2d/ # Costmap system với 8 layers │ │ ├── tf3/ # Transform system │ │ ├── robot_time/ # Time management │ │ ├── robot_cpp/ # Core utilities (init, NodeHandle, PluginLoaderHelper) │ │ ├── robot_nav_2d_utils/ # 2D navigation utilities │ │ ├── robot_nav_2d_msgs/ # 2D navigation messages │ │ ├── geometry2/ # Geometry utilities (tf3_geometry_msgs, tf3_sensor_msgs) │ │ ├── common_msgs/ # Message types │ │ │ ├── robot_geometry_msgs/ # Geometry messages (29 types) │ │ │ ├── robot_nav_msgs/ # Navigation messages (24 types) │ │ │ ├── robot_sensor_msgs/ # Sensor messages (30 types) │ │ │ ├── robot_std_msgs/ # Standard messages (32 types) │ │ │ ├── robot_protocol_msgs/ # Protocol messages │ │ │ ├── robot_visualization_msgs/ # Visualization messages │ │ │ └── utils/ # Message utilities │ │ ├── laser_geometry/ # Laser geometry utilities │ │ ├── voxel_grid/ # Voxel grid │ │ ├── data_convert/ # Data conversion │ │ └── xmlrpcpp/ # XML-RPC utilities │ │ │ └── APIs/ │ └── c_api/ # C API wrapper cho .NET/C# │ ├── build/ # Build artifacts ├── config/ # Configuration files ├── examples/ # Example code └── doc/ # Documentation ├── architecture_discussion.md ├── implementation_plan.md ├── folders.md └── readme.md ``` ## Chi tiết các thư mục chính ### Navigations/ - **Cores/**: Interfaces và core utilities - `move_base_core`: BaseNavigation interface - `robot_nav_core`: Planner interfaces - `robot_nav_core_adapter`: Adapter layer - `robot_nav_core2`: Additional utilities - **Libraries/**: Navigation libraries - `nav_grid`: Grid utilities - **Packages/**: Implementations - `move_base`: MoveBase implementation ### Algorithms/ - **Cores/**: Core algorithms - `score_algorithm`: Trajectory scoring - **Libraries/**: Algorithm libraries - `mkt_algorithm`: Kinematics algorithms - `mkt_plugins`: Plugin components - `kalman`: Filtering - **Packages/**: Algorithm implementations - `global_planners/`: 3 planners - `local_planners/`: 1 planner với multiple behaviors ### Libraries/ - **costmap_2d/**: Costmap system với 8 layers - **tf3/**: Transform system - **robot_cpp/**: Core utilities (init, NodeHandle, PluginLoaderHelper) - **common_msgs/**: Message type definitions - Các utilities khác: time, geometry, sensors, etc.