以前,我使用以下方法安装了 PX4 固件、ROS 和 Gazebo:
wget https://raw.githubusercontent.com/PX4/Devguide/master/build_scripts/ubuntu_sim_ros_melodic.sh
bash ubuntu_sim_ros_melodic.sh
我相信这两行安装了 ROS 和诸如此类所需的所有包,我只需要安装 python 2.7,因为我正在运行 ros-melodic。但是,我曾尝试安装 anaconda,然后尝试导入所需的包(rospy、std_msgs、geometry_msgs <-找不到 geometry_msgs),但它在 Python 3.8 上运行。我最终决定卸载 anaconda,因为我一直听说很难在 conda 环境中使用 ros。由于某种原因我的机器上已经有了 python2.7,所以我只是继续创建一个 python 虚拟环境,并且有很多关于如何做到这一点的教程。
首先我用catkin创建了一个ros工作区
mkdir -p drone/src
catkin_make
cd src
catkin_create_pkgs bigdrone std_msgs geometry_msgs rospy
我打开 Pycharm-Professional 并从drone/venv/bin/python 设置解释器。现在我尝试再次导入我的包,但它们都丢失了。我想可能是因为它是虚拟环境找不到包,所以我切换到/usr/bin/python2.7中的python。我需要的软件包仍然丢失,但我确实可以使用 rosdep 之类的软件包。此外,当我只是在终端上运行时:
python
>>> import rospy
>>> import std_msgs
>>> import geometry_msgs
出于某种原因,一切似乎都运行良好。