ncurse库的使用
本文主要
CMakeLists详解
介绍:CMakeLists.txt定义了如何构建项目,包括哪些源文件需要编译,依赖关系如何处理,如何生成可执行文件和库,以及如何安装和测试生成的目标。
文章约定:
环境:ROS1
基于 catkin 构建工具
遵循:Catkin CMakeLists.txt - ROS
如有错误,请包容,以及麻烦在评论区勘误
书山有路勤为径,学海无涯苦作舟
1. CMakeLists.txt框架
官方示例:
Required CMake Version (cmake_minimum_required)Package Name (project())Find other CMake/Catkin packages needed for build (find_package())Enable Python module support (catkin_python_setup())Message/Service/Action Generators (add_message_files(), add_service_files(), add_action_files())Invoke message/ ...
Robot_localization
Robot_localization,将NED imu转为相对、绝对航向的 "ENU"数据
文章约定:
谈及 NED、ENU、NWU 坐标系都是指的x y z对应顺序
ROS中,x y z 轴对应红、绿、蓝
如有错误,请包容,以及麻烦在评论区勘误
书山有路勤为径,学海无涯苦作舟
1. 问题来源
使用robot_localization进行:imu融合gps
问题:
robot_localization中坐标系关系不明
NED imu转 "NEU" imu
sensor_msgs/Imu 中的四元数从 NED 转 "ENU"
融合磁力计的绝对航向、相对航向
2. 解决
2.1 robot_localization 坐标系约定
首先,对robot_localization包中约定坐标系选取及数据单位:
坐标系遵循:Rep-105
数据单位遵循:Rep-103
总结上面两条:
坐标系约定为:map -> odom -> base_link -> imu、lidar、camera …
单位采用国际单位 ...
simple_navigation
Simple_navigation
本项目基于:
RTK
IMU
单线激光雷达
闭环控制akm底盘
实现基于多传感器数据融合的导航算法。
1. akm底盘控制
akm小车采用坐标系:
1.1 上位机串口控制
ROS主控发布控制话题:/cmd_vel,消息类型:geometry_msgs::Twist,采用串口通讯进行控制,串口数据:
short transition; //中间变量Send_Data.tx[0]=FRAME_HEADER; //帧头0X7BSend_Data.tx[1] = 0; //预留位Send_Data.tx[2] = 0; //预留位//机器人x轴的目标线速度transition=0;transition = twist_aux.linear.x*1000; //将浮点数放大一千倍,简化传输Send_Data.tx[4] = transition; //取数据的低8位Send_Data.tx[3] = transition>>8; //取数据的高8位//机器人y轴的目标线速度transition=0;transition = t ...
RTK的使用
1. 理论准备
1.1 RTK工作原理
RTK:Real-Time Kinematic,实时载波技术,是一种高精度的卫星导航技术,可实现厘米级别的导航与定位要求。
现在的RTK分为:标准RTK、网络RTK以及ppp方式。
标准RTK:
其工作原理:
基准站先观测和接收卫星数据;
基准站通过旁边的无线电台(数据链),将观测数据实时发送给流动站(距离一般不超过20公里);
流动站收到基准站数据的同时,也观测和接收了卫星数据;
流动站在基准站数据和自身数据的基础上,**根据相对定位原理,进行实时差分运算,**从而解算出流动站的三维坐标及其精度,其定位精度可达1cm~2cm。
网络RTK:
描述:利用多个基准站组成的网络,通过互联网将差分校正数据传输给移动站。移动站不需要独立设置基准站,只需接收网络提供的校正数据。
优势:覆盖范围更广,无需自建基准站,适用于大面积区域的高精度定位。
服务提供商:例如,千寻位置提供的高精度位置服务(如千寻FindCM)就是一种网络RTK服务。
PPP(Precise Point Positioning):
描述:利用全球导航卫星系统的精 ...
navigation导航
导航算法及ROS实现
在下面我们将会详细介绍如何使用:基于雷达建图和navigation导航包,将imu、里程计、gps进行数据融合,实现导航和避障。
navigation讲解
navigation实战
navigation进阶
您需要具备的知识:
ROS基础知识
话题通讯、服务通讯、参数服务器、动作通讯
串口通讯
c++基础知识
1. navigation
1.1 简介
navigation包是用于移动机器人路径规划和导航的核心包,它主要包括:
路径规划
路径跟踪
避障
…
安装navigation包:
sudo apt-get install ros-<your_ros_distro>-navigation
其软件包:
定位:
amcl: Adaptive Monte Carlo Localization, 是一种基于粒子滤波的自适应定位算法,用于确定移动机器人的位置。它利用激光扫描和地图数据,通过对多个粒子的跟踪和更新,估计机器人在环境中的位置和方向。
全局规划器:
carrot_planner: 是一个简单的全局路径规划器,生成指向目 ...
基于CubeIDE的STM32开发
1. 引言
对于stm32的开发相信大家都听说的比较多,我们常见的开发方式有:
寄存器 + Keil5/VScode
标准库 + Keil5/VScode
HAL库 + Keil5/VScode
而下面要介绍的是:基于CubeIDE的stm32的开发方式。
值得注意的是:CubeIDE只支持ST自家的芯片。
2. 安装与配置
CubeIDE 安装与配置指南
使用该教程遇到的问题:
建议不汉化,会出现各种bug。
补充:STM32CubeIDE汉化后主页出现报错解决方法
但是还是不美观,我接受不了qwq。
3. 点灯
要成为一个出色的点灯大师。
3.1 创建工程
新建stm32 project
选型
设置工程名及路径
3.2 配置引脚
由最小系统板原理图可知,我们只需:向PA8引脚输出高电平,LED灯即可点亮。
配置引脚,为:输出模式、初始低电平、下拉、标识符BLUE
3.3 配置时钟
直接上手请看3.3.2小节。
3.3.1 时钟树介绍
对于STM32中,不同外设使用不同时钟频率,例如看门狗、RTC,只需要几十KHz就可以工作。针对不同部分进 ...
《天官赐福》
2024.06.26 Cloudy
总说:“士别三日,刮目相待”。
时隔十日,那么我们的小何子同学又弄出来什么了呢。
且看这回分解。
序
八百年前,谢怜是金枝玉叶的太子殿下,风光无限的天之骄子。谁知一朝得道飞升,成为万人供奉的武神,却是急转直下,一贬再贬贬无可贬。八百年后,谢怜又双叒飞升了。这一次没有信徒也没有香火,某日收破烂归来的路上,他将一个神秘少年捡回家中,而这少年,居然便是那位三界谈之色变的鬼王——花城。
文案:
为你,所向披靡!
C天R地小妖精攻×仙风道骨收破烂受。
” 听说了没,天界那个收破烂的公务员,跟鬼界第一大佬有一腿!!!“
PS:
①甜宠,主受,HE,攻第7章出场第13章露脸,一三五卷为现在时,二四卷为过去式。
②一般日更,有特殊情况会在文案上方的第一行请假。
③十分慢热,可能不热,时而如乌龟慢爬,时而如野狗脱缰。
天官赐福
1. 故事背景
仙京、鬼界素来井水不犯河水
仙京是以神武君吾为首的各位神官
鬼界是花城陆为王,黑水海为王。
仙乐太子殿下谢怜第三次以破烂神官的身份重新历天劫,登仙京
2. 人物角色
谢怜令:三次飞升,前两次以武神身份,后一 ...
基于PCB的计量比例滑动条设计
TouchSlidR
首先感谢:蓝可析 bilibili
从这位才华横溢大佬的开源项目中,我学到了很多比较新奇的知识,为此新开一篇文章用以记录。
1. 引入
在我们学习stm32时,我们接触过TFT 电阻式触摸屏,在使用的过程中,我们经常使用四点校准法 对触摸精度进行参数矫正。
那么问题来了,怎样实现的呢。
1.1 四点校准法理论
在我们使用比较古老的触摸手机是,经常会看到一个功能,就是点击屏幕四脚处的点,用以矫正触摸精度,例如:
首先,预先知道四点的位置信息,如图:(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)。
其次,触摸屏采集我们点击屏幕的位置信息,即:(t1,k1)、(t2,k2)、(t3,k3)、(t4,k4)。
最后,假设显示屏分辨率:W * H。
则:
判断触摸是否为有效触摸,**判断依据为横纵坐标比例因子,**即:
计算点1到点2的横向距离:
d1=(t1−t0)2−(k1−k0)2d_{1} =\sqrt{(t_{1}-t_{0})^2-(k_{1}-k_{0})^2}
d1=(t1−t0)2−(k1−k0)2
计算点3到点4的横 ...
《玫瑰的故事》
2024.06.16 Sunday
序
这是”玫瑰的故事“的开始。
黄亦玫那张脸庞散发着成熟韵味,举止间尽显女性的优雅魅力,她无疑是位倾城倾国的美女。我从未见过如此深邃如黑宝石般的眼眸,眼波流转间仿佛蕴含着万千风情,让我瞬间为之倾倒,愣在了原地。
此刻的玫瑰,早已褪去了青涩的少女光环,化身成了韵味犹存的半老徐娘。她的女儿小玫瑰,正步入谈婚论嫁的年纪,绽放着青春的芳华。然而,那个继子,却在她身上寻觅到了久违的心动,他的目光落在她身上,便知这便是他一生所等待、所寻找的挚爱。
可悲的是,玫瑰对于那位年轻的继子,却毫无动容之心,她对他的态度,与对待那些长年累月追逐她的人无异。
…
故事不长也不短,但我能记住的是…
滔滔生活
episode 1
胆大心细,落落大方,自信英勇,侃侃而谈,埋头苦干,热烈的女孩子。
episode 2
妈妈是健康而又美丽的村妇,即使穿正装也会狼吞虎咽地吃鱼饼,而且全然不知道自己在咯吱咯吱地咀嚼。就在切、割、剁的过程,刀变得薄如纸片。咯吱的过程中,我的肠子、我的肝、我的心脏和肾脏都在茁壮成长。我吞下妈妈的食物,也吞下留在食物上的刀痕。
妈妈蹲在厨房里 ...