问题大全
未读说明:ROS1最高支持到Ubuntu20.04,ROS2最低支持Ubuntu20.04,综上,推荐使用的Ubuntu版本为20.04 1.安装 参考鱼c一键安装脚本来安装:ROS资源汇总 说明:ROS1安装的版本为noetic,ROS2安装的版本为foxy 2.配置 默认情况下ROS1和ROS2存在版本切换的问题,因为同一终端里无法同时使用ROS1和ROS2。 因此可通过修改~/.bashrc文件来选择每个终端中使用的ROS版本。 打开并编辑~/.bashrc文件 1sudo nano ~/.bashrc 往~/.bashrc文件的末尾添加以下代码(crtl+o->enter->crtl+x保存退出): 123456789101112echo "ros noetic(1) or ros2 foxy(2)?"read editionps=$PS1if [ "$edition" -eq "1" ]; then source /opt/ros/noetic/setup.bash # echo &qu ...
笔者最近被VNC折磨了很久,网上的教程杂乱不堪,特此写一篇教程做笔记 本教程适用于Ubuntu20.04及以下版本,Ubuntu22.04版本或有出入 1.安装图形桌面 如果linux系统已经安装了图形桌面可跳过这一步 Ubuntu20.04主流的图形桌面有gnome和xface两种,两种桌面的安装方式我都会写,但这里较推荐gnome桌面 1.1选择安装gnome桌面 123sudo apt update #更新软件源sudo apt install ubuntu-gnome-desktop #安装gnomesudo systemctl start gdm #刚安装Gnome,需要启动GDM服务以初识化桌面 1.2选择安装xface桌面 12sudo apt update #更新软件源sudo apt install xfce4 xfce4-goodies #安装xface 这个选项选择是否启用显示管理器,选择第一个并Enter 显示管理器是一个程序,使您的 Linux 发行版拥有图形登录功能。它还负责在您使用用户名和密码登录后启动显示服务器和桌面环境 2.安装VNC-S ...
1.原理 下面的文章已经总结得够详细了,就不另起篇幅了 How a Kalman filter works, in pictures | Bzarg 卡尔曼滤波+扩展卡尔曼滤波公式推导以及两者的关联 - 知乎 (zhihu.com) 在此推荐一篇最详细的教程:卡尔曼滤波教程 (kalmanfilter.net) 2.实现 实现的过程就是依据卡尔曼7大公式一步一步完成的 待补充。。。
1.文献解析 相关论文:前往下载 论文代码:arclab-hku/fast-dodging: dodging fast small moving objects with RGBD sensor (github.com) Chatpaper Basic Information: Title: Perception and Avoidance of Multiple Small Fast Moving Objects for Quadrotors With Only Low-Cost RGBD Camera (基于低成本RGBD相机的四旋翼机器人对多个小型快速移动物体的感知和避障) Authors: Minghao Lu, Han Chen, and Peng Lu Affiliation: Department of Mechanical Engineering, The University of Hong Kong, Hong Kong, SAR, China (Minghao Lu and Peng Lu); Department of Ae ...
从0入门自主空中机器人
未读关于本课程: 本次课程是一套面向对自主空中机器人感兴趣的学生、爱好者、相关从业人员的免费课程,包含了从硬件组装、机载电脑环境设置、代码部署、实机实验等全套详细流程,带你从0开始,组装属于自己的自主无人机,并让它可以在未知的环境中自由避障穿行。 本次课程的重心主要落在自主空中机器人的搭建、代码部署及调试上,关于自主空中机器人的一些理论基础,例如动力学模型,路径搜索,轨迹规划,地图构建等内容。 课程视频 B站:【完结】从0入门自主空中机器人 | 开源 | 浙江大学Fast-Lab 深蓝学院:从0入门自主空中机器人 相关源码 GitHub:https://github.com/ZJU-FAST-Lab/Fast-Drone-250 Gitee:https://gitee.com/pn_code/Fast-Drone-250 1.无人机硬件框架 传统无人机框架如上图所示,但本课程中所使用到的科研无人机与上图有所出入,下面介绍无人机中一些关键组件功能以及选购建议 1.1飞控 介绍 飞控又称飞行控制器,用于根据输入指令解算电机推理 内置了IMU,气压计,磁罗 ...
从0入门自主空中机器人
未读关于本课程: 本次课程是一套面向对自主空中机器人感兴趣的学生、爱好者、相关从业人员的免费课程,包含了从硬件组装、机载电脑环境设置、代码部署、实机实验等全套详细流程,带你从0开始,组装属于自己的自主无人机,并让它可以在未知的环境中自由避障穿行。 本次课程的重心主要落在自主空中机器人的搭建、代码部署及调试上,关于自主空中机器人的一些理论基础,例如动力学模型,路径搜索,轨迹规划,地图构建等内容。 课程视频 B站:【完结】从0入门自主空中机器人 | 开源 | 浙江大学Fast-Lab 深蓝学院:从0入门自主空中机器人 相关源码 GitHub:https://github.com/ZJU-FAST-Lab/Fast-Drone-250 Gitee:https://gitee.com/pn_code/Fast-Drone-250 1.课程介绍 2.相关下载 碳板图纸:下载地址 README.pdf:下载地址 本网站只做课程笔记和资源整合,资源全部来源B站和深蓝学院,如有侵权,请联系站长删除!
原文链接(本人写的啊,不算抄袭😎):PyQt5技术分享_制作一个个性的音乐播放器 前前言:额,正如你所见,这个项目在鸽了几个月后终于宣布停更了。原因呢,自该项目发布以来,反响平平,更新的动力都没了,其实更主要的原因在于我发现我现在学习的方向渐渐偏离了专业的轨道,以后的项目会逐渐往硬件方面靠。奉劝各位,要是你还在学习pyqt5的话,学到为止,做小GUI,tk足以,做大项目,pyqt5真的不是什么好选择。 前言:距上一个项目进程的实现:Dock栏的实现 已经过去大概两周了,在这两周内终于又完成了一个组件:音乐播放器(在此,有人会问:啊?你一个阅读器要音乐播放功能干嘛?答:为满足那些阅读时喜欢听歌的人的需求,比如,我),“才”花两周也是我加班加点,翘了无数个晚自习,努力的成果,在这里我就不得不吐槽一下我们学校的早晚自习制度(阿巴阿巴````)话不多说,来吧,展示! 1.界面展示 为了融合项目需求,播放器就设定为小型的,但麻雀虽小,五脏俱全,播放器应有的功能一个没落,额,,除了音效调节外,不过这也不是必须的,是吧(极力掩饰自己能力不足中···),在界面实现时遇到的小困难: ...
原文链接(本人写的啊,不算抄袭😎):《ESP32-Arduino》LVGL之输入设备详解及实例(触摸屏,实体按键,编码器,多功能按键) 最近在做项目的播放器部分,在实现播放器像网易云那样点击播放唱片就会自动转动时遇到了问题,经过一套搜索引擎组合拳,终于是实现了该功能,成品如下 闲话少说,上代码(代码部分做了大量的注释和个人理解,就不额外的解释了,因为我也是查大佬的案例过来的,所以理解仅供参考) 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596"""唱片"""class Cp_Comp_1(QObject): def __init__(self): super(Cp_Comp_1, ...
原文链接(本人写的啊,不算抄袭😎):《ESP32-Arduino》LVGL之输入设备详解及实例(触摸屏,实体按键,编码器,多功能按键) 前言:最近在做项目的播放器部分,但在进度条部分却遭遇了问题,QSlider本身是支持滑块拖动和点击事件的,但QSlider的点击事件并不是点哪跳哪,而是点一下,会根据QSLider的步进增一步或减一步。 无论遇到什么问题,我们都要···干就完了,OLG! 但理想是丰满的,现实总是刺骨的 不搜不知道,一搜才发现关于pyqt5的资料是真的少,不是说没有,而是大部分都是讲述基础部分,进阶的,额,也就那样,难道都没人有进度条随意点动的需求么,还是说用python做GUI的不多。 好吧,无奈,我只能从pyqt5的老父亲Qt的身上寻找答案了 结果千辛万苦搜到了了几条结果,结果如下: 123456789101112void mousePressEvent(QMouseEvent *ev) { //注意应先调用父类的鼠标点击处理事件,这样可以不影响拖动的情况 QSlider::mousePressEvent(ev); ...
原文链接(本人写的啊,不算抄袭😎):《ESP32-Arduino》LVGL之输入设备详解及实例(触摸屏,实体按键,编码器,多功能按键) 一周一小步,一年一大步!欧!耶! 这周我完成了软件项目的一个重要的部件–dock栏,闲话少说,先上成品!!! 1.创建透明窗口 要实现这样一个小窗口当然需要先创建一个QWidget类,并对QWidget的背景,窗口大小,边框等等做一些小设置,这里的背景用QPinter动态描绘上边框和背景色(具体的paintEvent代码的也是从某大师那里抄的,具体哪个,我给忘了,,,) 12345678910111213141516171819202122232425262728293031323334353637383940414243444546class Dock_Win(QWidget): def __init__(self, parent=None): super(Dock_Win, self).__init__(parent) self.bg_color = QColor(170, 248, 248, 230 ...
原文链接(本人写的啊,不算抄袭😎):PyQt5技术分享_实现加载界面GIF的呈现 需求 要实现加载界面我们的需求有:首先GIF的呈现,加载窗口的呈现,主窗口的虚化及不可操作,下面我们一一实现上面的需求。 GIF的呈现 QLabel类是Qt中一种用来呈现普通文本,HTML文本和静态图片的容器,要实现标签呈现动图需要用到QLabel.setMovie(self,QMovie)函数,其中QMovie是Qt中用来实现GIF图片动起来的容器 下面我们用代码来说明上述过程 123456# 加载动画画面 self.loading_gif = QMovie('./img/loading_b.gif') # 加载动图 self.loading_label = QLabel(self) # 创建QLabel标签 self.loading_label.setMovie(self.loading_gif) # 将动图装载到标签容器里面 self.loading_gif.start() # 让动图开始动起来 # self ...
原文链接(本人写的啊,不算抄袭😎):《ESP32-Arduino》LVGL之输入设备详解及实例(触摸屏,实体按键,编码器,多功能按键) 前言: 好久没写博客了,一方面是平时着实没有时间,另一方面是知识还是欠缺,实在没啥技术拿得出手(其实更主要的还是懒!!!)最近玩的比较多的就是LVGL了,自己也是做了几个小项目(后续考虑开源),考虑到网上LVGL入门教程还是比较少,特此出来写篇博客。 对于LVGL就不过多介绍了,能点进来的应该都知道LVGL是什么吧,本篇博客不讲UI中的相关组件,而侧重于讲解对于LVGL中的输入设备,什么是输入设备呢?对于LVGL来说,输入设备有: LV_INDEV_TYPE_POINTER:触摸板或鼠标 LV_INDEV_TYPE_KEYPAD: 键盘 LV_INDEV_TYPE_ENCODER:编码器 LV_INDEV_TYPE_BUTTON:外部虚拟按钮 而对于大多数项目来说,用触摸屏,实体按键,编码器的比较多(打死我也不说是其他的我都没用过),那么如何将这些设备与LVGL中的组件相关联就是本篇博客的主要目的。 前期准备 环境 VScode+Pl ...













