自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【无标题】

需要自定义hash的unordered_set和unordered_map#include <iostream>#include <bits/stdc++.h>//万能头文件//存储结构struct Record{ int val1; int val2; Record(int a, int b){ val1 = a; val2 = b; }};//转换成hashstruct RecordHash{

2022-04-12 14:05:23 73

原创 2021-09-30

C++中的观察者模式前言一、观察者模式是什么?二、简单例子三、总结前言最近在看ETH的开源库towr时,学习到一种多个类之间有意思的用法,称为观察者模式,在这里简要记录。一、观察者模式是什么?观察者模式中,定义了一种一对多的依赖关系,可以让多个观察者对象同时监听某一被观察者对象,一旦被观察者状态发生变化,则相应的观察者收到通知,并发生相应的变化.通俗来讲有点"发布–订阅"的意思.其中主要有四中类:抽象被观察者类:提供维护一个将多个观察者聚集的方法,进行观察者的增加和删除具体被观察者类:..

2021-10-12 19:48:26 79

原创 2021-09-08

模板介绍前言一、函数模板二、类模板总结前言最近看开源代码,经常看到模板(template)的使用,以前没用过,现在在这里记录下其简单的使用。模板的最大的作用是使得类型参数化,比如有时候需要对不同类型的数据进行相同的操作,常见的操作是函数重载,但是类型很多的时候就需要每个类型就对应一个重载函数,比较麻烦,现在可以通过一个函数解决,即模板模板分为函数模板和类模板,Template是声明模板的关键字,模板参数可以是多个一、函数模板template <class T1,class T2,...&.

2021-09-08 19:45:56 69

原创 2021-09-04

ROS编译Tip[1]单独编译功能包当某一个工作空间下有多个不同的pkg时,使用默认的catkin_make编译会将该工作空间下的所有功能包都进行编译.有些时候,需要对某个单一的功能包进行编译,这种情况下,可以通过下面命令实现:catkin_make -DCATKIN_WHITELIST_PACKAGES="pkg_name"注意该命令还是需要在对应的工作空间执行,其中pkg_name即为需要单独编译的功能包.同时编译多个功能包catkin_make -DCATKIN_WHITELIS

2021-09-04 22:11:27 178

原创 2021-08-31

二次规划求解器OOQP的基础使用前言一、OOQP所包含参数的定义二、简单调用1.头文件2.参数设置3.进行求解4.取出计算结果总结前言OOQP作为一款强大的开源凸优化库,支持C++,Matlab调用,现在这里记录下其简单的使用。一、OOQP所包含参数的定义OOQP统一的二次规划问题的公式如下:其中Q是正半定矩阵,c为线性部分矩阵,A为等式约束矩阵,C为不等式约束矩阵.在这里OOQP采用了一些数据结构来存储稀疏矩阵以及对称矩阵.稀疏矩阵由三个数据结构表示 – 两个整数向量和一个双精度..

2021-08-31 10:16:33 712 2

原创 2021-08-30

Linux上固定多个USB设备的接口名通常,按照手动插入的先后顺序插入设备,USB转串口的设备会按照ttyUSB0,ttyUSB1这样的顺序生成名称.这样就需要每次通电的时候,按照需要的顺序重新插入USB设备,显得很麻烦.其实Linux中可以通过设置来避免这类问题.具体的操作步骤如下:(1) 插入需要的USB设备,记住插入的实际接口,因为后续设置的名称是与接口想对应的.(2) 打开终端,输入一下命令,查看串口信息ls /sys/class/tty/ttyUSB* -l然后会显示如图所示信

2021-08-30 18:57:10 100

原创 2021-08-28

C++常见的几种输入格式程序一般是通过键盘输入,屏幕输出。输入时,存在一个缓冲区,从键盘输入的数据会先存入缓冲区,利用cin从缓冲区读取数据。头文件,命名空间为std。常见的cin应用方式:cin>>datacin.get()cin.getline(str,num,ch)cin>>data这种输入方式的一个特点是:根据data的数据类型从输入缓冲区读取数据,可以为int、float、char、char*(用char表示的字符串)、string等类型。输出结束是以

2021-08-28 11:35:18 129

原创 2021-08-25

STL中的容器list使用(用于记录)C++标准库中的list是一个双向循环链表,不支持迭代器进行随机访问,只允许迭代器进行自加或者自减操作,弱于vector。头文件#include <list>using namespace std;//命名空间构造函数list<val_type> list_test;//默认构造list<val_type> list1(list2);//拷贝构造新增和插入节点list_test.push_front(

2021-08-25 17:18:33 57

原创 2021-08-16

MPC控制器在小车倒立摆中的应用(2)1、线性MPC2、MPC在一阶倒立摆系统中的应用1、线性MPC针对实际系统,MPC分为很多种,其中最简单的是线性MPC,即实际系统为线性系统。优化问题,必定存在代价函数,一般也存在对输出和控制量的一些约束。该类问题的求解不在此处详细介绍,有许多现成的开源库可求解此类二次规划问题:OOQP、OSQP等。MPC的目标就是空过求解控制量,来跟随参考轨迹,使得代价函数最优。2、MPC在一阶倒立摆系统中的应用接下来,按照步骤详细介绍下MPC在一阶道理摆系统中的应用

2021-08-17 19:34:42 728 3

原创 2021-08-16

MPC控制器在小车倒立摆中的应用(1)MPC介绍1、什么是MPC2、MPC与最优控制和PID控制的不同3、MPC中一些相关概念MPC介绍1、什么是MPCMPC全称为Model Predictive Control,其控制思想大致如上图所示。MPC本质上是采用优化方法来解决问题,利用过程的模型来预测未来可能的发展,并选择一个好的控制。其实在日常生活中,我们经常应用到这类算法。例子:下棋。无论象棋还是围棋,都有它自身的规则,比如”马“走日字,在过去、现在还是未来,都遵循一样的游戏规则,这就可以看作

2021-08-16 22:15:14 463

原创 2021-08-05

通讯基本概念与RS485通讯与通讯相关概念List item

2021-08-06 09:49:33 60

原创 2021-06-10

Qt Creator的安装https://blog.csdn.net/qq_42041303/article/details/96476503?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162330280816780255277660%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=16233028081678

2021-06-10 13:45:21 48

原创 2021-05-18

Linux链接第三方库(针对ROS软件包)linux下有两种库:动态(.s)和静态库(.a)。不同的区别在于,代码被载入的时刻不同:静态库在编译时载入,使得可执行程序体积较大;动态库在可执行程序运行时才载入内存,在编译时只是被说明有这个东西存在。静态库修改比较麻烦,常用动态库。动态库的链接第一种:只有.s和头文件这种情况,从网上克隆下来或者从厂家提供的源代码中只有封装好的.s文件和具有描述api作用的头文件。这时需要将.s文件添加到链接库的搜索路径当中,同时在项目中添加所有使用到的头文件。具体

2021-05-18 00:04:50 54

原创 C++ Primer Plus 学习记录——复合类型1

C++ Primer Plus 学习记录——复合类型1复合类型:以基本类型(整型和浮点型)为基础拓展的类型一、数组:一种能够存储多个同类型值的数据格式1、声名数组:typeName arrayName[arraySize]2、数组初始化:只有定义时才能初始化,不能将一个数组赋值给另一个数组typeName arrayName[arraySize]={value1,value2,…valueN}arraySize不能大于大括号中value的数量;arraySize可以为空,数组元素的个数通

2021-02-26 09:43:38 100

空空如也

空空如也

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

TA关注的人

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