用Pycharm调试运行Python下的Ros工程

新建catkin工作空间

mkdir -p ~/catkin_ws/src   #建立源目录
cd ~/catkin_ws/src
catkin_init_workspace      #初始化空间
cd ~/catkin_ws/
catkin_make                #首次编译
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc   #使用工作空间

需要重新打开终端,环境配置才能生效。

添加测试代码(在网上clone别人的tutorials)

cd ~/catkin_ws/src
git clone https://github.com/ros/ros_tutorials.git
ls

向Pycharm里添加工程

导入 rospy_tutorials 包,使之成为PyCharm的python工程。点击 Open Directory 按钮,在弹出的对话框中选择 ~/catkin_ws/src/ros_tutorials/rospy_tutorials/ 路径

设置python2.7为PyCharm工程的Interpreter

PyCharm默认将Python 3设置为工程的interpreter,而ROS使用的是Python 2.7,这里需要设置一下,使用Python 2.7,否则无法运行ROS相关的Python库。如果默认是Python 2.7则不用修改。

File 菜单 -> Settings 项,打开设置对话框,选择 Project Interpreter -> Python Interpreters

调试代码

先打开一个terminal,输入 roscore 命令启动ROS Master。

在pycharm中运行talker.py文件,可以看到程序将正常运行并打印出hello world。

回到桌面,再开一个terminal窗口,输入 rosrun rospy_tutorials listener 命令,可以看到正确的监听消息



防坑指南

如果运行程序时提示缺少某些包,可能是因为在路径中没有加上ROS的路径,这是可以尝试以下方法

1.打开File–>Settings–>Project:XXXX–>Project Interpreter
2.在Project Interpreter : Python 2.7 /usr/bin/python (顶部的位置)点击下拉箭头
3.选择Show ALL…
4.点击右侧第四个按钮:interpreter Paths
5.点击右侧的第一个加号按钮,并在弹出的对话框中粘贴以下路径

/opt/ros/indigo/lib/python2.7/dist-packages

你可能感兴趣的:(ROS,Ubuntu,python)