自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 LINUX文件系统

不同于windows文件,LINUX/UNIX的树形文件结构根目录,root,简写为//usr,包含用户主目录/bin,主要shell指令存放在/bin/sbin,与管理员权限有关/dev,存放设备文件,/dev/null代表空设备(黑洞),可以把中间过程放入其中表省略过程/etc,很重要的目录,存放配置文件,通常为文本文件。/var,存放经常变动的数据,比如常用的日志文件/opt,(optional)可选的应用程序安装目录。/media,u盘等移动设备挂载目录(仅是介质或入口),真正文

2022-04-04 15:05:42 225

原创 多维数组的地址计算

话不多说,直接上公式。以三维数组为基础,往后递推。有数组A[m][n][p],计算A[i][j][k]的地址。行优先:先把右边的填满。偏移量为inp+j*p+k列优先:先把左边的填满。偏移量为knm+j*m+i

2021-09-27 11:40:50 1532 1

原创 从rviz三个坐标系看AMCL定位

背景:我们打开rviz时可以在地图上看见三个坐标系,虽然能够想到是通过坐标系的tf变换来直观定位的,但对三个坐标系的意义、转换的关系、AMCL如何在坐标转换中体现等问题仍不甚了解。坐标系介绍:map:一个固定的针对全局静态地图的坐标系,原点在矩形静态地图的一个顶点,最后输出的是map坐标系的坐标。在系统计算中,map的原点是fixed的,不会改变,而AMCL计算得到的机器人坐标(map坐标系下)我们认为是绝对准确的。odom:里程计坐标系,是可以变化的,一般会因为雷达消息的校准而不断变化,以此来改

2021-07-31 16:22:50 1531

原创 IMU初介绍及里程计相关补充

IMU (惯性测量装置)在航空航天工业中的应用已有数十年历史。然而,航空航天用精密 IMU 是基于昂贵的陀螺仪和其他大型传感器,难以应用于对成本更敏感的系统。现代电子 IMU 已高度集成化,可包含多种类型的传感器——加速计、陀螺仪和磁力仪;其基于微机电系统 (MEMS) 技术,因此体积小、重量轻且相对坚固。这些新一代 IMU 可作为板安装元件提供,经证明非常适合嵌入式应用。IMU 提供了许多嵌入式应用所需的更精细的定位分辨率和更快的更新率,且IMU 提供距离已知起点的相对位置信息。基于IMU的定位(也

2021-07-31 10:19:31 3322

原创 从贝叶斯滤波初览滤波家族

贝叶斯滤波算法它做的工作就是根据已有的信息来计算概率。就是根据不断接收到的新信息和我提供的一些已经知道的统计值,来不断更新概率。更新概率值的方法是根据概率论中的条件概率计算公式来更新的。首先是条件概率的相关知识,一个基础公式如下:P(AB)=P(A|B)P(B)=P(B|A)P(A)然后对于贝叶斯滤波,有两个方面:Xn(当前状态估计值)=Xn-1()+Kn*(Zn-Xn-1)...

2021-07-28 11:04:29 129

原创 全局定位问题初总结

自主导航系统的开发是构建完全自动驾驶系统的主要挑战之一。完全自主导航不仅要求在GPS信号正常情况下完美工作,而且在GPS不可靠的情况下也能够具有可靠的导航能力。因此,基于里程计系统近年来备受关注。自给式(就是没有GPS也能计算出车辆自身的位姿)里程计方法分为五种主要类型,即车轮、惯性、激光、雷达(毫米波雷达?)和视觉,以上分类主要是依据传感器的类型进行分类的里程计的方法。1.轮速里程计轮速里程计(WO)是车辆自定位的最简单形式之一,已应用于许多转向机器人,如两轮和四轮机器人。在这些车辆中,左右两侧的车轮

2021-07-25 18:13:15 1163

原创 激光雷达的基础理解以及size_t和unsigned无符号数的补充

激光雷达的测量思路:对于size_t和unsigned:size_t在C语言中就有了。它是一种“整型”类型,里面保存的是一个整数,就像int、long那样。这种整数用来记录一个大小(size)。size_t的全称应该是size type,就是说“一种用来记录大小的数据类型”。通常我们用sizeof(XXX)操作,这个操作所得到的结果就是size_t类型。因为size_t类型的数据其实是保存了一个整数,所以它也可以做加减乘除,也可以转化为int并赋值给int类型的变量。类似的还有wchar_t,

2021-07-24 09:23:48 506

原创 ubuntu18.04上将文件传到gitee仓库

1.首先初次运行前要配置用户信息。一般是gitee账号(email)。git config --global user.name “用户名”git config --global user.email “注册Gitee的邮箱”2.创建本地仓库&&将代码clone到本地仓库cd(非必须),可以直接建立在主目录git init,执行完之后会在目录下生成一个.git文件,即为本地仓库。git remote add origin https://gitee.com/xxx/xxx.gi

2021-07-17 18:45:14 408

原创 参数服务器的理解

参数服务器的理解launch时roslaunch首先检查roscore是否已经启动,如果没有则启动roscore。roscore会做三件事:启动master节点,该节点是隐藏的,用于通过消息名查询目标节点,实现消息、服务在各个节点间的连接启动parameter server,用于设置与查询参数启动日志节点,记录所有消息收发和stdout、stderr, 目前roscore暂不会加入其他功能。1.参数服务器,作为ROS中另外一种数据传输方式,有别于topic和service,它更加的静态。参数

2021-07-15 13:41:59 411

原创 话题通信以及服务通信实现思路与比较

话题通信以及服务通信实现思路与比较1.话题:分两个板块实现publisher和subscribertopic是一种点对点的单向通信方式,这里的“点”指的是node,是异步通信。subscriber通过回调(Callback)对接受的消息进行处理。 两个板块的实现,首先初始化节点ros::init(argc,argv,"name"); 然后用ros::NodeHandle n;创建句柄 然后分别初始化pub和sub对象,用=n.advertise<package_name

2021-07-14 22:40:48 1028

原创 ROS工作空间目录结构和CMakeLists.txt的相关理解

ROS工作空间目录结构和CMakeLists.txt的相关理解一.工作空间本质上是一个大的文件夹,用来存放与工程开发相关的文件。ROS默认使用catkin_make对工作空间进行编译。 工作空间一般包含四个目录空间:1.src:代码空间,用来存放源码文件。2.build: 编译空间,用来储存工作空间编译过程中产生的中间文件。3.devel: 开发空间,放置编译生生成的可执行文件。4.install:安装空间,非必须,可以将可执行文件安装到这个文件。 创建工作空间: mkd

2021-07-14 15:13:21 952 1

原创 解决rosdep update失败的问题

解决rosdep update失败的问题1.网络ip,加代理,换手机热点,都没能成功。2.重复了一百多次,也没有成功。3.最后在别人电脑上拷贝了.ros中rosdep的包之后解决了我想要解决的依赖问题,可以用rospack depends1 roscpp来看包的依赖了。注意:这样rosdep update仍然不能成功。...

2021-07-13 11:03:00 105 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除