- 博客(25)
- 收藏
- 关注
原创 SLAM学习----使用rplidar运行Hector算法
SLAM学习----使用rplidar运行Hector算法前言雷达运行成功,便可跑算法了,于是我就从基本的Hector算法开始,通过参考各位大神的博客,经过多次报错终于成功了。(菜是原罪)Basic Support:Linux Ubuntu 16.04操作系统ROS Kinetic安装了rplidar的驱动理论简介:Hector:Hector整体算法很直接,就是将激光点与已有的地图“对齐”,即扫描匹配。扫描匹配就是使用当前帧与已经有的地图数据构建误差函数,使用高斯牛顿法得到最优解和偏差
2022-02-05 20:57:19 1516
原创 [求助]关于在rplidar使用cartogrpher算法建模时踩坑
本人安装cartographer环境时是参考此文而操作的Rplidar学习(五)—— rplidar使用cartographer_ros进行地图云生成 - Blue Mountain - 博客园前面都基本没有报错(就是source zsh文件source不了改成source bash文件)运行到roslaunch cartographer_ros demo_revo_lds.launch出现错误...
2022-02-02 23:08:11 1459 6
原创 c++学习
c++学习argument(参数)brace(大括号)、对象初始化存储分配初始化)default constructor缺省构造函数—没有参数的构造函数struct Y{ float f; int i; Y(int a);//这个就不是缺省构造函数 }动态内存分配New&Delete...
2022-01-30 17:11:13 475
原创 C++成员变量,折构函数和析构函数
tip:英文注释:field(成员变量)paranmeter(参数)local variable(本地变量)persist(保持,维持)成员变量不在类里面,而是在类的对象里面method(类的成员函数)scope(范围)成员变量1、成员变量定义在类中,在整个类中都可以被访问。2、成员变量随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中。 3、成员变量有默认初始化值。本地变量fields,parameters,loca...
2022-01-28 21:44:41 907
原创 思岚A1 上手教程
前言寒假在家闲着也是闲着,索性就向是实验室借了一个思岚 A1激光雷达,来进一步完成自己的实验室实习项目。经过一个月在Linux上和ROS上的摸爬滚打,我已经对机器人开发和SLAM有了初步了解,现在就写个上手教程吧(以防自己以后忘了)。Basic Support硬件 一台电脑 思岚 A1激光雷达 软件 安装Virtual Box虚拟机 在虚拟机安装Ubuntu 16操作系统 在Ubuntu 16搭建ROS kinetic 简要步骤1.现在w..
2022-01-25 21:11:08 4883
原创 ROS学习(二)
创建工作空间与功能包工作空间(一).创建工作空间mkdir -p ~/catkin_ws/src 创建src文件,放置功能包源码cd ~/catkin_ws/src 进入src文件夹catkin_init_workspace 初始化文件夹有这个文件代表创建已经完成(二).编译工作空间所有编译工作都需要在catkin_ws文件夹中进行cd .. 退至catkin_ws文件夹中catkin_make 编译执...
2022-01-21 19:47:05 769
原创 ROS命令行工具使用
常用命令海龟rqt_graphrqt_graph 显示连接关系以看到系统全貌rosnoderosnode is a command_line tool for printing information about ROS Nodes具体指令如下rosnode listrosnode inforostopic改变海龟位置这里可以对坐标轴数据进行修改 修改后按回车即可执行这...
2022-01-19 20:12:59 214
原创 C++面向对象(PART 1)
什么是对象对象=东西object may be----visible or invisibleObject is variable in programming language对象=属性+服务不能访问数据,只能通过操作接触数据properties--性质mapping(映射)问题空间到程序空间的映射c语言:将过程写出来 (从时间顺序来描述东西)c++:从存在什么来描述东西对比a.print(); a是对象,让a做...
2022-01-03 19:39:40 384
原创 初识ROS及ROS环境配置
简介ros是机器人操作系统(Robot Operating System)的英文缩写。ROS是用于编写机器人软件程序的一种具有高度灵活性的软件架构。ROS的原型源自斯坦福大学的STanford Artificial Intelligence Robot (STAIR) 和 Personal Robotics (PR)项目。背景知识ROS需要基于Ubuntu使用,涉及的编程语言主要是C++和Python,另外还需要对所研究的机器人理论有一定了解。安装和配置前提:需要在计算机内运行U..
2021-12-18 12:40:48 2772
原创 Linux Ubuntu系统下配置c++编程环境
一.前提:1.本文环境采用的是VirtualBox搭建的Ubuntu 20 操作系统。2.需了解Ubuntu的基本命令以及其他基本命令。3.具备c语言或c++编程知识。二.演示IDE简介:I.anjutaAnjuta是一个建立在GNU/Linux下为C、C++提供编译的集成开发环境。它最初旨在为GTK/GNOME设计,并且自身具有很好的编程属性。这其中包括项目管理、应用开发、交互调试以及强大的代码编辑和语法增彩的性质。II.Code::BlocksCode::Blocks..
2021-12-18 11:19:55 9146 1
原创 手把手教你将Linux Ubuntu装入移动硬盘
(一).前言上到大学,我进入了集群机器人实验室项目组。我了解到要满足机器人的开发需求,仅仅在Windows的环境下开发是不能满足其要求的,需要使用Linux这专业操作系统来开发。随后我被要求将Ubuntu装入移动硬盘中,随后我便查阅各种网络资料去尝试,花了两天的时间去摸索尝试,终于取得成功了。网络上的装机方法各有千秋,但能把这讲清楚的却很少,于是经过两天的摸爬滚打,对装机进行了一些总结。(二).前期准备I.材料准备: 1Tb移动硬盘(会被格式化,请将重要数据转移) 一台电脑
2021-11-30 23:23:34 6798
原创 c语言PTA练习(浙大第四版)
一int sum(int m, int n){ int i=0; int sum=0; for(i=m;i<=n;i++) { sum=sum+i; } return sum;}二int max(int a,int b){ int n; if(a>b){ n=a; } else{ n=b; } return n;}void CharPyram...
2021-11-21 23:01:34 4707
原创 外部中断学习
外部中断外部中断是单片机实时地处理外部事件的一种内部机制。当某种外部事件发生时,单片机的中断系统将迫使CPU 暂停正在执行的程序,转而去进行中断事件的处理;中断处理完毕后.又返回被中断的程序处,继续执行下去。实验步骤建立工程文件选用stm32f103RCTX开发板编写代码...
2021-11-13 00:38:25 407
原创 程序的结构
全局变量• 定义在函数外⾯的变量是全局变量• 全局变量具有全局的⽣存期和作⽤域• 它们与任何函数都⽆关• 在任何函数内部都可以使用他们全局变量初始化• 没有做初始化的全局变量会得到0值• 指针会得到NULL值• 只能⽤编译时刻已知的值来初始化全局变量• 它们的初始化发⽣在main函数之前被隐藏的全局变量• 如果函数内部存在与全局变量同名的变量,则全局变 量被隐藏静态本地变量• 在本地变量定义时加上static修饰符就成为静态本地 变量• 当
2021-11-02 20:37:15 125
原创 结构(节日快乐)
结构一.什么是结构结构是一种把一些数据分量整合成一个整体的数据类型例//结构定义struct student{• int num;• char name[10];• int computer,english,math;• double average; }; //注意分号 //tip:无分号时程序会报错int main(void){struct student max,stu;// ...
2021-10-24 11:24:42 75
原创 数组的应用
数组程序的应用遗漏知识点:字符的输入可以调用函数getchar()、putchar()和scanf()、printf()printf("%c%c",ch1,'#')scanf("%c",&ch1)1.putchar()作用:输出一个字符格式:putchar(c),c为输出参数#include <stdio.h>int main(){ char a1='A',b1='B'; int a2=65,b2=66; pu...
2021-10-18 00:06:57 99
原创 指针(一)
万恶的指针(一)I.变量,内存单元与地址(一)地址与指针地址相当于酒店的房间号,而酒店就是存储器。指针:用来访问内存和操纵地址的工具。是用来存放地址的变量scanf("%d",&n)&n表示变量n的内存地址或存储位置。这里的&称为地址运算符,&市一元运算符,与其他的一元运算符有同样的优先级和从右到左的结合性II.指针变量的定义#include<stdio.h>int main(void){ int a...
2021-10-06 20:50:42 193
原创 数组(上)
第三周.数组【上】1.什么是数组:I.数组是一种相同类型数据的集合(即用来装同一种东西的容器);2.数组的组成类型名 数组名[数组长度]={初值表};eg1:char world[]={};tip: 1.数组长度是一个长度2.在定义数组之后,系统根据数组中元素的类型及个数在内存中分配了一段连续的存储单元用于存放数组中的各个元素,并对这些单元进行连续编号,即下标,以区分不同的单元。每个单元所需的字节数由数组定义时给定的类型来确定3.数组的引用:数组名..
2021-10-02 00:28:01 799
原创 第二周的学习(remake)
第二周学习一.学习Typora编辑器。参考网站:https://blog.csdn.net/weixin_48539501/article/details/118826581?ops_request_misc=&request_id=&biz_id=102&utm_term=typora%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B&utm_medium=distribute.pc_search_result.none-task-blog-2
2021-09-25 22:21:13 623
原创 第二周学习
# 第二周学习## 一.学习Typora编辑器。参考网站:https://blog.csdn.net/weixin_48539501/article/details/118826581?ops_request_misc=&request_id=&biz_id=102&utm_term=typora%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B&utm_medium=distribute.pc_search_result.none-task-b
2021-09-25 22:05:27 41
原创 各循环结构的复习
注意知识点:(1)int用%d,float用%f,double用%lf(2)double 和float的区别:1、精度不一样,float是单精度,double是双精度;2、表示小数的范围不一样,double能表示的范围比float大;3、double在内存中,占8个字节,float在内存中,占4个字节。float:浮点型数据类型,FLOAT 数据类型用于存储单精度浮点数或双精度浮点数。浮点数使用IEEE(电气和电子工程师协会)格式。浮点类型的单精度值具有 4 个字节,包括一个符.
2021-09-21 15:00:08 180
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人