QT插件+ROS 2 新建项目
- 一QT插件开发ROS,http://www.ncnynl.com/archives/201701/1277.html
- 二QT开发遇到问题http://blog.csdn.net/u013453604/article/details/52186375
- 三QT为ROS创造界面http://blog.csdn.net/u013453604/article/details/52167213,
- 四ROS下创造自己的包http://blog.csdn.net/u013453604/article/details/52167213
利用插件不仅可以新建工作空间还可以导入现有的工作空间,而“新建文件”中的“ROS”下面的“Package”、“Basic Node”等选项可以创建package和和节点、launch文件、urdf文件等
1 新建项目
文件”——“新建文件或项目”,选择”Import ROS Workspace”——“choose”
然后填写catkin工作空间的名字和位置
在“项目管理”步骤可以配置版本控制系统,我们选择“完成”,如下图
建好的工作空间,如果没出现src目录,可以关闭,重开即可。
(2)创建package
在catkin_new下面的src上右键单击,选择“添加新文件”,如下图
然后选择“ROS”——“package”——“choose”
- 填写package的名字,如test1
- 填写作者(Authors)和维护者(Maintainers),如果你的Qt环境部没有配置中文支持请不要用中文,否- - 则无法新建package
- 或者新建的package里面的package.xml会是空文件
- 在“Dependencies”下的“Catkin”一栏填写依赖,通常用C++写节点需要添加对roscpp的依赖
下一步,再点击完成
(3)添加新的节点
test1的src文件夹上右键单击,选择“添加新文件”
选择“ROS”——“Basic Node”——“choose”,创建一个节点,也就是新建一个.cpp文件
节点名称写为“node1”,则生成一个名为node1.cpp的源文件
用ROS模板新建的node1.cpp的源文件如下图,是自动生成的一个Hello World程序
用插件创建或导入ROS package之后还需要修改.workspace文件,如下图
添加后
<?xml version="1.0"?>
<Workspace>
<Distribution name="indigo"/>
<DefaultBuildSystem value="0"/>
<WatchDirectories>
<Directory>src</Directory>
</WatchDirectories>
<IncludePaths>
<Directory>/opt/ros/indigo/include</Directory>
</IncludePaths>
</Workspace>
这样就可以使得Qt找到ros头文件,比如 ros/ros.h
编译节点,为test1的CMakeLists.txt加上下面几行,意思是把node1.cpp编译成名为node1的节点
编译节点,为test1的CMakeLists.txt加上下面几行,意思是把node1.cpp编译成名为node1的节点
add_executable(node1 src/node1.cpp)
target_link_libraries(node1
${catkin_LIBRARIES}
)
修改完CMakeLists.txt之后点击Qt左下角的锤子图标“构建项目catkin_new”
(4)运行节点
新终端,运行roscore
$roscore
测试时候无法选择Packge和Target,不过可以手工填写Arguments。也可以直接写入执行的命令和参数。
如果可以直接选择要运行的 包 和 节点
点击左下角的“三角”运行
QT插件+ROS 2 新建项目的更多相关文章
- QT插件+ROS 1 安装配置
测试环境: 系统版本:Ubuntu14.04 ROS版本:indigo QT版本:5.8.0 QtCreator安装 1 安装前准备,安装相应的GNU开发工具集和OpenGL开发库, 请注意安装软件都 ...
- QT插件+ROS 3 导入现有ROS包
http://blog.csdn.net/u013453604/article/details/52167213#t5
- ROS_Kinetic_22 使用ROS的qt插件即ros_qtc_plugin实现Hi ROS!!!!
官网已经更新了教程说明,在此特别说明: https://github.com/ros-industrial/ros_qtc_plugin/wiki This wiki explains the pro ...
- Qt新建项目No valid kits found解决思路
Qt新建项目No valid kits found解决思路 第一次用Qt Creator创建Project时,进入Kit Selection窗口后,会提示No Valid kits found. Pl ...
- ubuntu16.04使用Qt开发ROS
本文介绍一种Qt下进行ROS开发的完美方案,使用的是ros-industrial的Levi-Armstrong在2015年12月开发的一个Qt插件ros_qtc_plugin,这个插件使得Qt“新建项 ...
- 基于Qt搭建ROS开发环境
参考的博客: http://blog.csdn.net/u013453604/article/details/52186375 http://blog.csdn.net/dxuehui/article ...
- ROS学习笔记八:基于Qt搭建ROS开发环境
1 前言 本文介绍一种Qt下进行ROS开发的完美方案,使用的是ros-industrial的Levi-Armstrong在2015年12月开发的一个Qt插件ros_qtc_plugin,这个插件使得Q ...
- VS2010,Qt插件安装使用
用了几次的QtCreateor,不习惯. 果断换回VS 基本步骤: 1.安装VS2010 2.安装Qt Creator5 3.安装Qt插件 qt-vs-addin-1.2.2-opensource 就 ...
- VS2017上在线和离线安装Qt插件(在线安装)
版权声明:如需转载,请告知博主并声明出处 https://blog.csdn.net/CLinuxF/article/details/88816436文章目录前言在线安装离线安装(推荐)前言很多朋友喜 ...
随机推荐
- jquery 截取屏幕
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- Java并发编程:线程的生命周期是个怎样的过程?
前言 在日常开发过程中,如果我们需要执行一些比较耗时的程序的话,一般来说都是开启一个新线程,把耗时的代码放在线程里,然后开启线程执行.但线程是会耗费系统资源的,如果有多个线程同时运行,互相之间抢占系统 ...
- 《Head First设计模式》批注系列(一)——观察者设计模式
最近在读<Head First设计模式>一书,此系列会引用源书内容,但文章内容会更加直接,以及加入一些自己的理解. 观察者模式(有时又被称为模型-视图(View)模式.源-收听者(List ...
- python2&python3
1.Python3 使用 print 必须要以小括号包裹打印内容,比如 print('hi') Python2 既可以使用带小括号的方式,也可以使用一个空格来分隔打印内容,比如 print 'hi ...
- 二层协议--LLDP协议总结
二层协议--LLDP协议总结,待完善.
- ThreadLocal终极源码剖析-一篇足矣!
本文较深入的分析了ThreadLocal和InheritableThreadLocal,从4个方向去分析:源码注释.源码剖析.功能测试.应用场景. 一.ThreadLocal 我们使用ThreadLo ...
- 安卓preview不显示的问题
Render Problem Failed to load AppCompat ActionBar with unknown error 解决方法:将styles.xml文件中的: <resou ...
- Scrum敏捷开发沉思录
计算机科学的诞生,是世人为了用数字手段解决实际生活中的问题.随着时代的发展,技术的进步,人们对于现实世界中的问题理解越来越深刻,描述也越来越抽象,于是对计算机软件的需求也越来越高,越来越复杂,变化也越 ...
- k-means算法之见解(一)
k-menas算法之见解 主要内容: 一.引言 二.k-means聚类算法 一.引言: 先说个K-means算法很高大上的用处,来开始新的算法学习.美国竞选总统,选票由公民投出,总统由大家决定.在20 ...
- 从零自学Java-10.充分利用现有对象
1.超类和子类的设计:2.建立继承层次:3.覆盖方法. 程序StringLister:使用数组列表和特殊的for循环将一系列字符串按字母顺序显示到屏幕上.这些字符串来自一个数组和命令行参数 packa ...