• 仿真1 - takeoff_land


    实验步骤:

    (1)将遥控器开机并通过USB接口接入电脑

    (2)输入以下命令启动起飞降落仿真demo

    1. cd ~/Prometheus/Scripts/simulation/tutorial_demo
    2. chmod +x takeoff_land.sh  # 第一次启动该脚本时,需要添加可执行权限
    3. ./takeoff_land.sh

    (3)遥控器SWA档杆向下拨解锁无人机

    (4)遥控器SWB档杆拨到中间位置将无人机控制状态切换到RC_POS_CONTROL

    (5)遥控器SWB档杆拨到最底部将无人机控制状态切换到COMMAND_CONTROL

    (6)无人机将自动起飞,到达预设高度后悬停30秒,随后自动降落

     takeoff_land.sh脚本:

    1. #!/bin/bash
    2. # 脚本名称: takeoff_land
    3. # 脚本描述: 该脚本为起飞&降落控制demo启动脚本,包含PX4 SITL,Gazebo仿真环境,无人机控制节点以及起飞&降落控制节点
    4. gnome-terminal --window -e 'bash -c "roscore; exec bash"' \
    5. --tab -e 'bash -c "sleep 5; roslaunch prometheus_gazebo sitl_outdoor_1uav.launch; exec bash"' \
    6. --tab -e 'bash -c "sleep 6; roslaunch prometheus_uav_control uav_control_main_outdoor.launch; exec bash"' \
    7. --tab -e 'bash -c "sleep 7; roslaunch prometheus_demo takeoff_land.launch; exec bash"' \
    8. #--tab -e 'bash -c "sleep 7; rosrun prometheus_demo takeoff_land.py; exec bash"' \

    该脚本在一个终端启动三个 窗口:

    roslaunch prometheus_gazebo sitl_outdoor_1uav.launch

    roslaunch prometheus_uav_control uav_control_main_outdoor.launch

    roslaunch prometheus_demo takeoff_land.launch

    操作流程:

    (1)vscode里面 执行:./takeoff_land.sh

     (2)启动了Gazebo仿真软件以及一个终端

     终端窗口:显示当前无人机的状态数据

     (3)遥控器SWA档杆向下拨解锁无人机

    无人机桨叶开始转动,状态数据中的 disarmed --> armed,说明解锁成功

    (4)遥控器SWB档杆拨到中间位置将无人机控制状态切换到RC_POS_CONTROL

     controller --> RC_ROS_CONTROL 说明模式转换成功

    (5)遥控器SWB档杆拨到最底部将无人机控制状态切换到COMMAND_CONTROL

     (6)无人机将自动起飞,到达预设高度后悬停30秒,随后自动降落

    节点运行图

    ROS查看节点图命令 

    rqt_graph

     

  • 相关阅读:
    [python 刷题] 981 Time Based Key-Value Store
    python语义分割标签的游程长度编码和解码
    php——三篇夯实根基第一篇
    QT学习之QT概述
    Linux 调试之strace
    【iOS】—— pthread、NSThread
    【MySQL】-【约束】
    QT学习日记22——翻金币游戏
    JdbcTemplate的基本使用
    Win11怎么调亮度?Win11调屏幕亮度的四种方法
  • 原文地址:https://blog.csdn.net/peng_258/article/details/127038759