赞
踩
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
source /opt/ros/noetic/setup.bash
source devel/setup.bash
src
目录:cd ~/catkin_ws/src
catkin_create_pkg <package_name> [dependencies]
<package_name>
,用任何ROS包依赖项(如 std_msgs
、roscpp
或 rospy
)替换 [dependencies]
。CMakeLists.txt
和 package.xml
文件。cd ~/catkin_ws
catkin_make
devel/setup.bash
以刷新环境变量:source devel/setup.bash
rosrun
或 roslaunch
运行节点进行测试:rosrun <package_name> <node_name>
roslaunch <package_name> <launch_file.launch>
CMakeLists.txt
文件,包括所有必要组件的安装规则,如二进制文件、库、启动文件等。install
目录中:cd ~/catkin_ws
catkin_make install
install
目录的内容。如果要将其作为存档共享,请压缩 install
目录:cd ~/catkin_ws
tar -czf <package_name>.tar.gz install
<package_name>
。对于最终用户或接收包的另一个开发人员:
tar -xzf <package_name>.tar.gz
source <path_to_extracted_install>/setup.bash
roslaunch <package_name> <launch_file.launch>
该框架涵盖了从设置到共享最终产品的完整ROS包开发周期。提供的每个命令都是较大开发过程的一部分,确保即使是对ROS不熟悉的人也能按步骤创建和分发ROS包。记得用实际项目相关的真实名称替换占位文本(如 <package_name>
)。
验证步骤并寻找更新或最佳实践始终是个好主意,特别是对于像ROS这样不断发展的工具。在线搜索或参考最新的ROS文档可能提供额外的背景信息或更新到这些流程。
选择一个与已有的catkin_ws
不同的工作空间名称,例如my_ros_workspace
:
mkdir -p ~/my_ros_workspace/src
cd ~/my_ros_workspace/
catkin_make
你需要使用正确的ROS版本的setup.bash
文件来设置环境:
source /opt/ros/noetic/setup.bash
在工作空间的src
目录下创建一个名为my_python_package
的包,它依赖于rospy
,这是ROS Python客户端库:
cd ~/my_ros_workspace/src
catkin_create_pkg my_python_package rospy
在包中创建一个名为scripts
的文件夹,并在其中创建一个Python脚本talker.py
:
cd ~/my_ros_workspace/src/my_python_package
mkdir scripts
创建文件scripts/talker.py
并编辑内容如下:
#!/usr/bin/env python
import rospy
from std_msgs.msg import String
def talker():
pub = rospy.Publisher('chatter', String, queue_size=10)
rospy.init_node('talker', anonymous=True)
rate = rospy.Rate(10) # 10hz
while not rospy.is_shutdown():
hello_str = "hello world %s" % rospy.get_time()
rospy.loginfo(hello_str)
pub.publish(hello_str)
rate.sleep()
if __name__ == '__main__':
try:
talker()
except rospy.ROSInterruptException:
pass
确保talker.py
是可执行的:
chmod +x scripts/talker.py
返回到工作空间根目录并编译:
cd ~/my_ros_workspace
catkin_make
启动roscore(如果还没有运行的话)和节点进行测试:
# 另一个终端
roscore
# 原终端
source devel/setup.bash
rosrun my_python_package talker.py
CMakeLists.txt
文件为了使安装过程包括Python节点和任何其他文件,您需要编辑CMakeLists.txt
文件来添加安装指令。文件位于my_python_package
目录下。
CMakeLists.txt
中安装指令的示例:
catkin_install_python(PROGRAMS scripts/talker.py
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
这会安装您的Python节点。
执行安装过程:
catkin_make install
这将会把文件安装到~/my_ros_workspace/install
目录下。
你可以分享install
目录给其他人。其他人可以通过设置环境变量来运行这个节点:
source ~/my_ros_workspace/install/setup.bash
rosrun my_python_package talker.py
通过这个流程,您不仅能体验从创建包到编写代码、编译、安装和分享的完整开发周期,还能了解如何为不同类型的文件配置安装指令。如果在执行过程中遇到任何问题,请告诉我,我会协助您解决。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。