首页 > 其他分享 >ros中的cpp和py运行

ros中的cpp和py运行

时间:2024-10-23 23:17:19浏览次数:6  
标签:offboard src python 代码 py cpp ros 运行

 本博客将记录在使用px4进行仿真过程中,使用ros运行c++和python代码文件的方法

一、文件位置

运行相关代码文件涉及到:

代码位置:放于你功能包(pkg)src文件夹目录下

cmakelist.txt:涉及到修改功能包目录下的cmakelist.txt文件。注意!!不是工作空间下的cmakelist.txt

二、第一次创建代码文件的必需操作

在上述提到的代码文件中完成编辑并保存后,需要打开上述对应的cmakelist.txt,在install上方(build的最后),添加上如下代码

#cpp的CmakeList插入方式
add_executable(offboard_node src/offboard.cpp)
target_link_libraries(offboard_node ${catkin_LIBRARIES})

#python的CmakeList插入方式
catkin_install_python(PROGRAMS src/lujingguihua.py
                      DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION})

#对应运行方式
rosrun t1_offboard_takeoff offboard_node

其中,cpp文件的插入格式中,offboard_node改为你希望发布的节点名称(注意各个节点名称不能相同)相对路径src/之后改为你节点对应的cpp代码文件名

python文件的插入格式中,只需要对src/之后的python代码文件名进行修改

三、代码编译

每次对你的代码进行修改并保存后(包括第一次创建)都需要进行相应的编译,以我的一个cpp文件路径为例:

px4_offboard_ws/src/t1_offboard_takeoff/src/offboard.cpp

在对offboard.cpp修改并保存后,运行以下代码:

#进入代码所在的工作区间
cd px4_offboard_ws
#完成编译
catkin_make

四、代码运行

在完成上述操作后,便可对python和c++代码进行运行

#还是以上个代码为例
cd px4_offboard_ws

c++代码运行:

#激活代码运行环境
source devel/setup.bash
#运行代码
rosrun t1_offboard_takeoff(功能包名) offboard_node(节点名)

python代码运行:

#给对应python代码赋予运行权限
chmod +x src/lujingguihua.py
#运行python代码
rosrun t1_offboard_takeoff(功能包名) lujingguihua.py(代码名)

上述激活环境和授予运行权限在不关闭终端的条件下,只需运行一次,后续可以直接运行对应代码

当然,这些都是直接运行单一代码的命令方式,后续还会给出权限集体授予、launch文件集体运行代码等相关说明博客

希望对你有所帮助~

标签:offboard,src,python,代码,py,cpp,ros,运行
From: https://blog.csdn.net/weixin_74324570/article/details/143165601

相关文章

  • Leetcode刷题Python之3185.构成整天的下标对数目II
    提示:直接暴力求解会超过执行时间,因此要考虑其他方法降低复杂度。文章目录问题描述一、示例:二、解题思路1.找余数2.利用哈希表存储余数3.逐步统计配对数代码实现解释代码复杂度分析问题描述给定一个整数数组hours,表示时间,以小时为单位。我们需要找到数组中满......
  • Python学习的自我理解和想法(20)
    #1024程序员节|征文#学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码!今天是学Python的第20天,学的内容是面向对象中的私有属性,私有方法,多态,单例计模式。开学了,时间不多,写得不多,见谅。目录1.私有属性(1).含义(2).语法(3).演示(4).调用私有属性2.私有方法(1).含义......
  • 12306抢票-python
    写了一整天,代码设置起始站,终点站,出行日期,通过爬虫从12306爬取选择当日的车票信息,保存在csv文件中,随后通过邮箱将包含车次信息的csv文件发送到个人邮箱账号,个人阅读后回发一个邮件,期间包含车次信息,电脑进入邮箱读取邮件,获得所选车次,进行自动化订票,期间需要输入一次验证码,目前是......
  • python基于django的校园论坛交流表白墙系统
    目录项目介绍具体实现截图预期达到的目标技术栈编码规范开发技术介绍系统的稳定性和可维护性论文大纲目录核心代码部分展示详细视频演示源码获取方式项目介绍该校园系统主要是来服务与学校内各个职务人员,不管是学生还是老师还是其他在校职工,都可以通过这个平台来进......
  • AtCoder Beginner Contest 375 C题 (python解)
    PanasonicProgrammingContest2024(AtCoderBeginnerContest375)C-SpiralRotation(python解)**原题链接:[(https://atcoder.jp/contests/abc375/tasks/abc375_c)]题目简述:这道题要求对一个NxN的网格进行特定的螺旋旋转操作,而这个N总是偶数。在这里,网格中的每个单元......
  • Python多进程学习与使用:全面指南
    Python多进程学习与使用:全面指南目录引言什么是多进程?为什么使用多进程?Python中的多进程模块:multiprocessing创建进程的基本方法进程间通信进程池多进程与多线程的比较常见问题和解决方案最佳实践和性能优化实战项目:多进程文件处理系统总结引言在当今的计算环境中,充分利......
  • Adobe IC(InCopy)软件下载安装与系统要求【2017-2024】
    目录AdobeIC(InCopy)软件简介软件背景主要用途下载链接功能介绍高效协作丰富的编辑工具多种输出与自定义系统要求Windows系统macOS系统AdobeIC(InCopy)软件简介软件背景AdobeInCopy(简称IC)是Adobe公司开发的一款专业的文字处理软件,专为编辑和设计团队中的文本编......
  • 【InCopy】Adobe IC软件下载与安装步骤
    目录一、AdobeIC软件简介1.1定义与用途1.2主要特点二、下载三、安装步骤3.1运行安装程序3.2安装过程3.3完成安装一、AdobeIC软件简介1.1定义与用途AdobeInCopy(简称IC)是一款由Adobe公司开发的专业文字处理软件,专为编辑和设计团队中的文本编辑人员设计。它......
  • Adobe IC(InCopy)软件下载安装
    目录一、AdobeIC软件简介二、系统要求2.1Windows系统要求2.2macOS系统要求三、安装步骤3.1下载与准备3.2安装软件3.3启动与设置四、使用指南4.1基本操作4.2进阶操作4.3导出与保存一、AdobeIC软件简介AdobeInCopy(简称IC)是Adobe公司开发的一款专业的......
  • python pdf 转图片
    1.需要安装requests,PyMuPDF依赖pipinstallrequests,PyMuPDF。可以通过定义的缩放因子和旋转因子去缩放图片和旋转。#!/usr/bin/envpython3#-*-coding:utf-8-*-importdatetimeimportosimportrequestsimportfitz#fitz就是pipinstallPyMuPDFheaders......