跳到主要内容

开机自启程序

自启动脚本

  • 机器人开机会在系统界面自动运行自启动脚本 /home/lemon/start.sh

脚本中的操作

  • 播报开机语音

  • 播报已连接的 wifi 名及分配的 ip 地址

  • 检查舵机通信是否正常

  • 启动控制节点等一些列功能节点,如:语音节点、摄像头节点等

检查 start.sh 的状态

  • 结束 start.sh

    • sudo killall roslaunch
  • 检查已启动的节点

    lemon@lemon-NUC8i3BEH:~/robot_ros_application$ rosnode list 
    /BodyHubNode # 运动控制节点
    /SensorHubNode # 传感器节点
    /camera/realsense2_camera # 深度摄像头节点
    /camera/realsense2_camera_manager # 深度摄像头节点
    /chin_camera # 下巴摄像头节点
    /head_toward_sound # 声源定位节点
    /ik_module_node # ik 逆解节点
    /joystick_handle_node # 虚拟手柄控制节点
    /keyboards_node # 背部按键节点
    /mqtt_node # mqtt 通信节点
    /ros_aiui_node # aiui 语音节点
    /ros_broadcast_node # socket 广播节点
    /ros_color_node
    /ros_face_node
    /ros_fruit_node
    /ros_gesture_node
    /ros_label_node
    /ros_mic_arrays # 麦克风节点
    /ros_msg_node
    /ros_socket_node # socket 通信节点
    /ros_speech_node
    /rosout
    /slam_mapping_node # slam 状态控制节点
    /vision_node # 视觉开发节点
    /web_video_server # 网页视频流节点
  • 重启或启动 start.sh

    • 首先判断是否需要重启,可以通过 检查已启动的节点 检查大部分节点是否正常启动

    • 如果大部分节点正常启动且需要重启 start.sh 则需要先 结束 start.sh ,否则在 ros 中同名的节点会冲突导致 start.sh 重启异常

    • 确保 检查已启动的节点 已无任何节点或仅存在 /rosout ,则可以通过如下命令启动 start.sh

      $ cd ~/ && ./start.sh
    • 启动后应及时检查 start.sh 终端是否存在报错或 检查已启动的节点 是否正常