# 机器人助手 **Repository Path**: suoxd123/robot-assistant ## Basic Information - **Project Name**: 机器人助手 - **Description**: No description available - **Primary Language**: Python - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-11 - **Last Updated**: 2025-10-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 机器人助手 ## 导航部分 ### 使用FileZilla通过ssh连接机器人,访问机器人文件 主机:192.168.1.41 用户名:kelo 密码:robot20 端口:22 ### 2D建图(需要关闭机器人服务) 1. 连接WIFI:名称:Turtle-002 密码:robot888. 2. 新终端,启动2D建图的launch文件 ssh kelo@192.168.1.41 service joypadWorker stop roslaunch robot_boot uvc4_online_create_2dmap.launch 3. 新终端,发布tf转换话题 ssh kelo@192.168.1.41 cd task python3 tf1_to_tf_forwarder.py 4. 新终端,启动建图对应rviz export ROS_IP=192.168.1.101 export ROS_MASTER_URI=http://uvc4:11311 ssh -X kelo@192.168.1.41 rviz -d rviz/map.rviz 5. 手柄控制完成建图 6. 导出地图保存在指定文件夹: a. 在电脑文件目录新建文件夹:(以/bag_maps/gong文件夹为例): b. 新建终端依次进入/bag_maps/gong c. export ROS_MASTER_URI=http://uvc4:11311 d. rosrun map_server map_saver -f ./gong e. 出现两个后缀为pgm、yaml的文件,双击打开后缀为yaml的地图文件,在内容第一栏加入name: gong,点击保存后关闭。 ### 更改地图 1. 创建地图文件夹:cd noetic/src/robot_boot/maps;在此除新建文件夹(文件夹名字要和pgm、yaml文件的文件名一样,如:gong,并将对应pgm、yaml文件移入); 2. 修改地图选择:cd noetic/src/robot_boot/robots;打开map.yaml后把map:后面修改为地图文件名,修改后按保存。 ### 使用2D地图RVIZ发布导航(需要运行机器人服务) 1. 引入库文件 修改“noetic/src/robot_boot/boot/robot_boot.launch"的导航文件 ```lua ``` 2. 新建一个终端,用于查看发布的导航点 ```bash ssh kelo@192.168.1.41 rostopic echo /move_base_simple/goal ``` 3. 新建一个终端,用于rviz导航 ```bash export ROS_IP=192.168.1.101 export ROS_MASTER_URI=http://uvc4:11311 ssh -X kelo@192.168.1.41 rviz -d rviz/nav.rviz ``` 4. 使用rviz校准机器人初始位置 5. 使用rviz发布导航点完成导航 6. 启动节点观测变量 ```bash rostopic echo /cmdeffector rostopic echo /end_effector_jiazhua rostopic echo /move_base_simple/goal watch -n 0.1 "rostopic echo /arm_status -n 1" watch -n 0.1 "rostopic echo /navigation_status -n 1" rostopic echo /arm_drive ``` ## 底盘仿真部分: - 打开机器人(rviz): ```bash roslaunch robot_assistant_simple_bringup display.launch ``` - 打开机器人(gazebo): ```bash roslaunch robot_assistant_simple_bringup gazebo.launch ``` - 在仿真环境中打开机器人: ```bash roslaunch robot_assistant_simple_bringup bringup.launch ``` - 打开gmapping建图: ```bash roslaunch robot_assistant_simple_bringup gmapping.launch ``` - 打开DWA建图: ```bash roslaunch robot_assistant_simulation DWA_navigation_simple.launch ``` ## 机械臂仿真部分: - 安装moveit: ```bash sudo apt-get install ros-noetic-moveit ``` - 查看是否有库libfcl.so.0.6: ```bash find /opt/ros/noetic/lib -name libfcl.so.0.6 ``` - 设置机器人类型: ```bash echo "export DOBOT_TYPE=nova5" >> ~/.bashrc source ~/.bashrc ``` - 在rviz中打开机械臂+夹爪: ```bash roslaunch dobot_description display.launch ``` - 在gazebo中打开机械臂+夹爪: ```bash roslaunch dobot_gazebo gazebo.launch ``` - 在gazebo中命令控制机械臂+夹爪的运动 ```bash rostopic pub -1 /nova5_robot/joint_controller/command trajectory_msgs/JointTrajectory \ "{joint_names: ['joint1', 'joint2', 'joint3', 'joint4', 'joint5', 'joint6','gripper_finger_joint'], \ points: [{positions: [-1.5, -1.2, 1.2, 1.2, 1.2, -0.9, 0.1], \ time_from_start: {secs: 0, nsecs: 1000000000}}]}" ``` - 运行moveit的demo: ```bash roslaunch dobot_moveit demo.launch ``` ### 使用MoveIt!控制gazebo里的仿真机械臂+夹爪 1. 设置MoveIt!允许运动规划运行的节点,dobot类型需要对应 ```bash export LD_LIBRARY_PATH=/opt/ros/noetic/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH sudo ldconfig ldd /opt/ros/noetic/lib/moveit_ros_move_group/move_group | grep libfcl roslaunch nova5_moveit nova5_moveit_planning_execution.launch sim:=True ``` 2. 启动RViz的配置包括MoveIt!运动规划插件运行,dobot类型需要对应 3. 鼠标将关节拖到任意的角度,点击 "Plan and Execute" 即可看到运行效果 ```bash roslaunch cr5_moveit moveit_rviz.launch config:=True ``` ## YOLOv8-pose人体追踪 + 机器人PID追踪跟随(仿真): - 启动conda虚拟环境: - 为py脚本添加执行权限: - 启动ros核心: - 启动YOLOv8-pose目标追踪节点: ```bash rosrun yolov8_pose_ros yolov8_pose_track_node.py ``` - 启动YOLOv8-pose目标追踪信息打印节点: ```bash rosrun yolov8_pose_ros yolov8_pose_print.py ``` - 启动机器人PID跟随控制器节点: ```bash rosrun yolov8_pose_ros yolov8_pose_follow_controller.py ```