
自动驾驶
奔跑吧猴哥
搬砖的。
展开
-
查找最长子字符串(Python版本)
查找最长子字符串(Python版本)原创 2022-07-01 10:53:18 · 736 阅读 · 1 评论 -
Ubuntu20.04配置(五)安装ROS2最新版本Foxy
原文:在Ubuntu 20.04中安装ROS2最新版本Foxy Fitzroy_大橙员-优快云博客_ubuntu20.04安装ros2ROS2 是新一代机器人操作系统。2020年6月5日,ROS2 的最新版本 Foxy Fitzroy 正式发布了, 支持到2023年的3月!ROS2 支持的平台Linux (Ubuntu Focal(20.04))macOSWindowsROS2 真正是跨平台了,ROS1 只支持 Linux。有大神说,不要搞 ROS1 了,直接上 ROS2 ~~安原创 2022-02-13 19:26:21 · 5314 阅读 · 0 评论 -
自动驾驶开发入门(五)---浅谈Apollo Cyber RT的数据处理层
浅淡Apollo Cyber RT之数据缓存与融合Cyber RT的层次图如下:今天要讲的内容位于上图中的中间层。一、基于Cyber RT的开发流程在开发基于Cyber RT的模块时,并不是从main()函数开始的,常规的流程是这样的:以PlanningComponent为例● 从Component派生一个子类PlanningComponent。● 重新实现虚函数Proc()和Init()。Init(),组件初始化函数,当进程初始化时,被CyberRT框架调用,我们在原创 2021-10-25 15:24:08 · 2373 阅读 · 1 评论 -
自动驾驶开发入门(四)---浅谈Apollo Cyber RT 总体架构
以下是个人学习总结:图较大,请放大看。Cyber RT是一款功能完备的通信中间件。其架构可再细分成如下三层(个人思考,非官方说法):● 功能应用层,开发者主要面向Component组件编程。开发者从Component派生出一个子类,重写Proc函数,在其中完成业逻辑。这是最高层次的抽象。Proc作为回调函数在协程中执行。接受协程调度器的优先级调度,并且接收到的数据都是融合后的。● 数据融合层,底层数据在这里完成了融合,再根据优先级分发给应用层。协程调度框架在这里实现。对于上层应用和.原创 2021-09-16 15:45:24 · 2600 阅读 · 0 评论 -
自动驾驶开发入门(三)---浅谈Apollo Cyber RT中的Transport
Cyber的Transport为上层封装了底层数据传输的细节。上层主要使用Transport,Transmitter,Receiver三个类,其中Transport是工厂类,负责创建Transmitter、Receiver以及Dispatcher(上层不直接使用)。Transmitter和Receiver各有三个派生类,对应Cyber的三种数据传输方式 ,分别是进程内(Intra)、进程间(Shm)以及网络(RTPS)。每种消息(Channel或Topic)可以dag文件中配置数据传输方式(Optional原创 2021-09-16 14:13:21 · 6049 阅读 · 4 评论 -
自动驾驶开发入门(二)---浅谈Apollo Cyber RT中的协程
以下这些是个人对于协程的总结。先说一下协程的优点:●协程的最大的优势:协程切换开销远小于线程,进程切换。相比于线程,协程没有内核态的上下文切换,近乎可以无限并发。协程在用户态进程显式的调度,可以把异步操作转换为同步操作,也意味着不需要加锁,避免了加锁过程中不必要的开销。Golang为什么有这么强的并发能力,协程居功至伟。协程创建于用户空间,理论上可以创建的协程数量远大于线程。●引入协程库后,代码以顺序性书写,易于理解,而执行时则是异步调用,性能不减。使用协程需要注意的地方:●使...原创 2021-09-16 10:37:00 · 2277 阅读 · 0 评论 -
解决交叉编译64位Qt5.15中遇到的问题
运行demo时出现一个问题:QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_openfailed原因是缺少iconv库,解决方案如下。1、下载源码http://ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz2、解压缩,并在根目录中创建文件autoconfig.sh如下:./configure \CC=/请替换为交叉编译器目录/aarch64-non.原创 2021-06-25 17:26:42 · 4563 阅读 · 2 评论 -
自动驾驶开发入门(一)---交叉编译64位Qt5.15 (aarch64)
零:准备开发环境 1、 开发PC安装Ubuntu1804/16042、好交叉编译工具链工具链一般随开发板提供,各官网也可下载。请按官方文档安装配置。NVIDIA Xavier、华为MDC系列、 TI TDA4VM 配置方法大同小异。一、下载Qt源代码 建议选择国内镜像,速度较快:http://mirrors.ustc.edu.cn/qtproject...原创 2021-06-25 16:55:39 · 5941 阅读 · 2 评论