前两篇文章中,其实已经把ROS运行起来了,跑了官方的程序(原来出现的source问题,已经在第二篇评论出了解决方案)只是官方程序是放在整个sdk中编译的,需要写Config.in文件,mk文件等,比较麻烦,于是就在折腾直接使用交叉编译链,使用catkin_make命令来实现编译,然后把devel的文件夹传到RK1808中就可以直接运行的方法,经过几天的折腾,终于搞成功了,在此记录一下。
开发环境使用vscode,安装好相关组件,因为kinetic使用的是python2.7,我的系统是Ubuntu20.04,默认的是Python3.9,所以使用Anaconda3进行管理Python版本,使用conda创建了一个python=2.7.18的Python环境,再安装catking-tools和catkin_pkg(这个不知道有没有用到,反正是安装了,也没有去研究)。建立workspace和对应节点程序:

程序hello.cpp代码:
#include <ros/ros.h>
#include <std_msgs/Int32.h>
int main(int argc, char** argv) {
ros::init(argc, argv, "test");
ros::NodeHandle n;
ros::Publisher image_pub = n.advertise<std_msgs::Int32>("testCount", 1);
ROS_INFO("ros hello !");
uint32_t _t_time = ros::Time::now().nsec;
uint32_t _n_time = _t_time;
ros::Rate loop_rate(10);
while (ros

文章介绍了如何在Ubuntu20.04环境下,使用VSCode、Anaconda3管理Python2.7环境,并通过catkin_make命令进行ROS程序的交叉编译,以适应RK1808和RV1126板子。作者详细描述了配置交叉编译环境,编写C++ROS节点代码,以及利用build.sh脚本进行编译的过程,最终成功将程序部署到目标硬件上运行。
最低0.47元/天 解锁文章
811

被折叠的 条评论
为什么被折叠?



