Ros 使用c++ 和 python操作

一、首先创作各自的工作空间和初始化

mkdir -p  (自定义名称) /src
cd  (自定义名称) 
catkin_make  // 编译

二、进入src 中创建 ros 包并且添加依赖

cd src
catkin_create_pkg (自定义ros的包名) roscpp rospy std_msgs

C++ 程序实现

1、创建 c++ 运行包

cd (自定义包)
cd  src
touch  one_c.cpp

2、编写c++包


gedit one_c.cpp

// 包含头文件
# include "ros/ros.h"

//编写main函数
int main(int argc,char *argv[])
	{
	//初始化ros节点
	ros::init(argc,argv,"one_node");
	//创建ros节点句柄(非必须)
	ros::NodeHandle n;
	//输出日志
	ROS_INFO("hello");
	
	return 0;
	}

3、编辑 CMakeLists.txt 配置文件

cd  ..  // 退回上一级目录
gedit  CMakeLists.txt

4、找到 add_executable 和 target_link_libraries 将注释去掉 修改如下

add_executable(one_c(映射名) src/one_c.cpp)
target_link_libraries(one_c
   ${catkin_LIBRARIES}
 )

5、回到 工作空间(start_0)

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个问题没有绝对的答案,因为它取决于你的个人喜好和项目需求。如果你已经熟悉了C++,那么使用C++编写ROS程序可能会更容易上手。但是,如果你更喜欢Python,那么使用Python编写ROS程序也是完全可行的。此外,Python在编写ROS程序时提供了更高的灵活性和快速开发的能力。因此,最好根据自己的需求和个人喜好来选择使用哪种编程语言。 ### 回答2: 学习ROS首先要掌握两个方面的知识:ROS软件框架和编程语言。ROS框架提供了分布式计算能力和传感器数据的通信机制,同时ROS还有大量的可重复利用的软件模块,这些模块可以协同工作,形成复杂的系统。编程语言是ROS框架的实现手段之一,常用的编程语言包括C++Python、Java、Matlab等。 对于选择C++还是Python这个问题,不同的开发者会有各自的看法。C++是一门高效的系统级编程语言,运行速度快,内存占用少,在实时性要求高的应用场景下表现优异。相比之下,Python则更注重开发效率与易读性,适合进行算法设计、数据处理与可视化等应用。Python语言特别适合在ROS中进行高层次的控制逻辑开发,例如图像处理、路径规划、语音识别等任务。像ROS中一些常见的算法库,也都提供了Python语言API的访问接口。 从个人经验来看,选择ROS编程语言主要还是和个人的编程习惯和习惯与偏好相关,以及与实际应用场景相关。如果你已经熟练掌握了C++Python的编程技能,对于选择哪门语言来说并没有特别严格的限制,个人感觉需要更加注重实际应用场景需求,以及自己熟悉的编程语言特点。在学习中,可以尝试过一段时间C++或者Python,根据自己发现的优缺点再去决定使用哪个语言,也可以通过学习ROS中的例程和官方文档,初步探索ROS编程的语言选择方法。 ### 回答3: 针对学习ROSC++还是Python好这个问题,其实不存在“一劳永逸”的答案,因为二者各有优劣。 C++语言是ROS的原生语言,它具有丰富的系统性能和高效的编译器,制作大型项目的时候尤其方便。而且C++还可以让你直接编写ROS节点,可以更好地管理内存和硬件资源,使得程序性能大大提升。此外,由于ROSC++库实现了许多低级别的功能,克服了一些Python库无法克服的普遍问题,在执行大量计算任务时能够保持稳定性。因此,在需要高性能和高可靠性的项目中,建议使用C++Python语言相比于C++来说更具有灵活性和易用性,也更容易上手。它的优点在于编写简易的ROS程序,处理少量数据和执行简单的任务而言更加便捷。Python也允许快速编写原型实现,在功能上具有更高的可读性,更容易适应程序的需求更改。此外,Python还提供了大量的第三方库,像是PyQt、numpy、matplotlib,在快速创建用户界面或绘图等非机器人的任务中很受欢迎。 总之,建议根据具体的程序目标来选择使用C++Python。在程序性能要求高或需要使用VSLAM等算法的场景下,可以优先考虑C++;在简单程序、算法模型验证上等场景下,Python也可以更加适合。为避免局限于一种语言,最好还是懂得两者的编程语言,这样可以较为灵活的选择使用哪种语言。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值