- 博客(509)
- 收藏
- 关注
原创 一篇图文详解PID调参细节,实现PID入门到精通
在工程中,如果我们要用单片机做一个温控系统,其系统组成一般如下:一个采集温度的ADC,一个输出温度的加热头以及一个用于运行控制算法的单片机,如果我们要维持温度为100度,在不加任何控制算法的情况下,我们可以通过简单的阈值判断法实际曲线(黑线) 在 目标曲线(红线) 周围抖动那如何才能维持实际曲线与目标曲线贴合,达到一个稳定的控制效果呢?这里就引入了PID控制算法的概念,PID是 Proportion Integration Differentiation 的缩写,实际上他就是一个公式,由。
2025-06-08 21:32:41
554
原创 手把手教你如何利用CodeBuddy编写属于自己的AI助手
最近,腾讯云推出了一款自研的代码助手,可以极大的助力程序员编写代码,简直太香了。接下来就和大家介绍这款代码助手的神奇之处吧,据说腾讯云代码助手是腾讯自研的AI编程提效工具,凭借腾讯混元与 DeepSeek 混合模型,专为开发者打造。CodeBuddy不仅支持200+编程语言、兼容多种主流IDE,是国内首个支持 MCP 的代码助手,还为开发者提供开发智能体 Craft、智能代码补全、单元测试、代码诊断等多项高效功能,帮助开发者在编码过程中节省时间、提升效率。目前腾讯内部85%
2025-05-14 00:22:13
270
原创 如何用URDF文件构建机械手模型并与MoveIt集成
本文介绍了如何使用URDF文件描述机械手的外观和物理性能,并提供了简化版的URDF文件示例。文章首先说明了URDF文件的基本结构,包括<link>和<joint>的定义,分别用于描述机械手的各个部分及其连接方式。接着,展示了如何通过简单的几何形状(如立方体和圆柱体)来构建机械手的模型,并提到了可以通过DAE文件实现更复杂的外观。此外,文章还介绍了如何在VSCode中预览URDF模型,并强调了URDF文件中<inertial>标签的重要性,以避免在Gazebo中导入模型时出
2025-05-13 22:00:25
718
原创 漫谈PID,聊聊实现与调参原理
PID控制器是工业过程控制中广泛采用的一种控制器,其中,P、I、D分别为比例(Proportion)、积分(Integral)、微分(Differential)的简写;将偏差的比例、积分和微分通过线性组合构成控制量,用该控制量对受控对象进行控制,称为PID算法。其中KP、KI、KD分别为比例系数、积分系数、微分系数。比例系数KP :反应系统当前最基本的误差,系数大,可以加快调节,减小误差,但是过大的比例使系统稳定性下降,甚至造成系统的不稳定。
2025-05-06 23:21:28
974
原创 一篇图文详解PID调参细节,实现PID入门到精通
在工程中,如果我们要用单片机做一个温控系统,其系统组成一般如下:一个采集温度的ADC,一个输出温度的加热头以及一个用于运行控制算法的单片机,如果我们要维持温度为100度,在不加任何控制算法的情况下,我们可以通过简单的阈值判断法实际曲线(黑线) 在 目标曲线(红线) 周围抖动那如何才能维持实际曲线与目标曲线贴合,达到一个稳定的控制效果呢?这里就引入了PID控制算法的概念,PID是 Proportion Integration Differentiation 的缩写,实际上他就是一个公式,由。
2025-04-21 22:29:22
1464
原创 漫谈PID,聊聊实现与调参原理
假设被控量是位移,单位是m, 时间单位是s,那么KI KD的单位应该为单位1,而根据上面的式子,有一个运算周期T,所以Ti Td 相应的应该也有与之倒数的时间单位,来抵消T 的单位。增量式pid的式子就一个,同样的迭代式,同样的项,不同的人在不同的程序中取不同的名字,而初学者又容易吧相同名字的变量当成一个东西,以为所有编写代码的人都像商量好一样遵守同样的原则,但是现实中你看到的代码往往事与愿违。微分系数KD :反应系统误差的变化率,具有预见性,们可以预见偏差的变化趋势,产生超前的控制效果。
2025-04-20 22:19:00
998
原创 具身智能机器人学习路线全解析
具身智能机器人的学习是一个长期而复杂的过程,需要不断积累理论知识和实践经验。通过系统地学习数学、物理、编程、机器人学和人工智能等多方面的知识,结合实际案例和代码实践,相信你能够逐步掌握具身智能机器人的核心技术,为这一领域的发展贡献自己的力量。
2025-04-17 22:48:04
902
原创 基于 Python 的 ROS2 应用开发全解析
ROS2 相较于 ROS,在架构设计上进行了全面升级。它增强了实时性支持,采用了更先进的通信机制,如基于 DDS(数据分发服务)的通信框架,使得节点间的通信更加可靠和灵活。同时,ROS2 在跨平台能力上有了极大提升,能够更好地适配不同的操作系统和硬件平台,为机器人开发者提供了更广阔的施展空间。通过本文对利用 Python 编写 ROS2 应用的介绍,可以看到 Python 在 ROS2 开发中展现出了强大的功能和便捷性。
2025-04-16 22:52:00
954
原创 ROS2 强化学习:案例与代码实战
通过上述案例,我们展示了如何在 ROS2 环境中实现强化学习,让移动机器人能够在复杂环境中自主学习导航策略。这种结合不仅提高了机器人的智能水平,还为未来更多复杂的机器人应用奠定了基础。未来,随着强化学习算法的不断发展和 ROS2 生态系统的不断完善,我们有望看到更多创新的机器人应用,如协作机器人、自动驾驶等领域的突破。
2025-04-14 22:13:22
736
原创 基于RT-Thread的智能家居助手
智能家居助手主要基于RT-Thread开发的,该系统主要分为语音子系统,环境监测子系统,智能控制子系统,智能网关子系统,音乐播放器,云端以及应用软件七大部分。语音子系统可通过语音进行人机交互来控制家电设备。环境监测子系统为智能家居提供环境信息输入,实时监测室内的环境信息。智能控制子系统为智能家居提供控制接口,用户可根据实际需求来控制家电设备。
2025-04-13 22:38:00
673
原创 ROS2 高级组件中的webots介绍
这一篇文章主要是和大家分享一下关于ROS2 高级组件中的webots,会介绍关于webots的知识点,以及如何安装和测试环节,最后就是利用 webots 实现一个差速轮式机器人的运动仿真。本文主要通过一个差速轮式机器人仿真样例,为大家引入 webots ,但没有深入探究 webots 的建模细节。有兴趣的朋友可以自己深入研究一下内容哟。
2025-04-12 23:02:16
515
原创 ROS机器视觉入门:从基础到人脸识别与目标检测
从本文开始,我们将开始学习ROS机器视觉处理,刚开始先学习一部分外围的知识,为后续的人脸识别、目标跟踪和YOLOV5目标检测做准备工作。我采用的笔记本是联想拯救者游戏本,系统采用Ubuntu20.04,ROS采用noetic。本文主要系统介绍了机器视觉处理的外围知识,引入了opencv和cv_bridge,后面几篇文章,我们将用它们继续丰富 robot_vision 软件包。
2025-04-11 22:20:58
1037
原创 打造两轮差速机器人fishbot:从零开始构建移动机器人
大家好,我是梦笔生花,我们一起来动手创建一个两轮差速的移动机器人fishbot。机器人除了雷达之外,还需要IMU加速度传感器以及可以驱动的轮子,我们曾介绍过机器人学部分,曾对两差速模型进行过介绍,所以我们还需要再创建两个差速驱动轮和一个支撑轮。所以接下来梦笔生花将带你一起给机器人添加如下部件和关节:IMU传感器部件与关节左轮子部件与关节右轮子部件与关节支撑轮子部件与关节。
2025-04-10 22:11:34
766
原创 ROS机器视觉入门:从基础到人脸识别与目标检测
从本文开始,我们将开始学习ROS机器视觉处理,刚开始先学习一部分外围的知识,为后续的人脸识别、目标跟踪和YOLOV5目标检测做准备工作。我采用的笔记本是联想拯救者游戏本,系统采用Ubuntu20.04,ROS采用noetic。本文主要系统介绍了机器视觉处理的外围知识,引入了opencv和cv_bridge,后面几篇文章,我们将用它们继续丰富 robot_vision 软件包。
2025-04-09 23:15:36
1034
原创 ROS2与OpenAI Gym集成指南:从安装到自定义环境与强化学习训练
同时,也会有一个函数来将 Gym 环境产生的动作发布到 ROS2 中的控制话题,使得机器人能够执行相应的动作。例如,ROS2 可以处理机器人不同组件之间的消息传递,像传感器数据的采集和传输,以及控制指令的发送。一般来说,它会提供方法来将 ROS2 中的机器人数据(如传感器数据)作为 Gym 环境的状态,以及将 Gym 环境中的动作发送到 ROS2 中的机器人控制节点。如果你想在 ROS2 环境中使用自定义的机器人模型或者任务场景作为 Gym 环境,你需要定义自己的环境类。,动作空间可能是机器人的线速度。
2025-04-08 22:23:27
541
原创 强化学习入门指南:从基础概念到马尔科夫决策过程
我建议学习RL的第一步就是一定要扎实关于RL的一些最基本的概念、公式(不要在扎实基础的阶段图快或图囵吞枣,不然后面得花更多的时间、更大的代价去弥补),且把概念与公式的一一对应关系牢记于心,这很重要。所谓强化学习(Reinforcement Learning,简称RL),是指基于智能体在复杂、不确定的环境中最大化它能获得的奖励,从而达到自主决策的目的。Agent,一般译为智能体,就是我们要训练的模型,类似玩超级玛丽的时候操纵马里奥做出相应的动作,而这个马里奥就是Agent。
2025-04-07 23:21:57
971
原创 ROS机器视觉入门:从基础到人脸识别与目标检测
从本文开始,我们将开始学习ROS机器视觉处理,刚开始先学习一部分外围的知识,为后续的人脸识别、目标跟踪和YOLOV5目标检测做准备工作。我采用的笔记本是联想拯救者游戏本,系统采用Ubuntu20.04,ROS采用noetic。本文主要系统介绍了机器视觉处理的外围知识,引入了opencv和cv_bridge,后面几篇文章,我们将用它们继续丰富 robot_vision 软件包。
2025-04-04 21:25:27
1090
原创 如何用URDF文件构建机械手模型并与MoveIt集成
通过前面的操作,我们拥有了一个描述机械手的文件 six_arm.urdf,接下来我们利用该文件创建一个可以利用MoveIt进行路径规划的“工程”。urdf里面的link必须要有旋转惯量矩阵‘intertial’的,否则在gazebo里面导入模型urdf时,会报下面的错。同时,ros2_control这个节点下的内容也是要和ros2_controllers.yaml对应的,也可以先不管。上面的ros2_controllers.yaml文件是在下一步创建出来的,先不用管。文件six_arm.urdf。
2025-04-03 23:28:40
923
原创 ROS2 高级组件中的webots介绍
这一篇文章主要是和大家分享一下关于ROS2 高级组件中的webots,会介绍关于webots的知识点,以及如何安装和测试环节,最后就是利用 webots 实现一个差速轮式机器人的运动仿真。本文主要通过一个差速轮式机器人仿真样例,为大家引入 webots ,但没有深入探究 webots 的建模细节。有兴趣的朋友可以自己深入研究一下内容哟。
2025-04-02 22:42:02
914
原创 ROS进阶:使用URDF和Xacro构建差速轮式机器人模型
本篇文章介绍的是ROS高效进阶内容,使用URDF 语言(xml格式)做一个差速轮式机器人模型,并使用URDF的增强版xacro,对机器人模型文件进行二次优化。差速轮式机器人:两轮差速底盘由两个动力轮位于底盘左右两侧,两轮独立控制速度,通过给定不同速度实现底盘转向控制。一般会配有一到两个辅助支撑的万向轮。此次建模,不引入算法,只是把机器人模型的样子做出来,所以只使用 rivz 进行可视化显示。
2025-04-01 22:22:36
878
原创 差速轮式机器人仿真升级:Gazebo与Rviz集成及传感器仿真详解
本篇文章我们介绍的内容是差速轮式机器人进行升级 ,我们添加相关的物理属性,使用gazebo+rviz进行仿真。通过编写机器人控制的程序,遥控机器人在gazeob仿真环境中移动,并通过rviz实时察看 camera,kinect和lidar三种传感器的仿真效果。本文的差速轮式机器人都是基于gazebo现成的包和插件,没有任何cpp代码,除了xacore建模的部分,更深入的原理和实现细节暂时不用深究。
2025-03-24 19:51:32
659
原创 打造两轮差速机器人fishbot:从零开始构建移动机器人
大家好,我是梦笔生花,我们一起来动手创建一个两轮差速的移动机器人fishbot。机器人除了雷达之外,还需要IMU加速度传感器以及可以驱动的轮子,我们曾介绍过机器人学部分,曾对两差速模型进行过介绍,所以我们还需要再创建两个差速驱动轮和一个支撑轮。所以接下来梦笔生花将带你一起给机器人添加如下部件和关节:IMU传感器部件与关节左轮子部件与关节右轮子部件与关节支撑轮子部件与关节。
2025-03-22 23:16:35
794
原创 ROS2与OpenAI Gym集成指南:从安装到自定义环境与强化学习训练
同时,也会有一个函数来将 Gym 环境产生的动作发布到 ROS2 中的控制话题,使得机器人能够执行相应的动作。例如,ROS2 可以处理机器人不同组件之间的消息传递,像传感器数据的采集和传输,以及控制指令的发送。一般来说,它会提供方法来将 ROS2 中的机器人数据(如传感器数据)作为 Gym 环境的状态,以及将 Gym 环境中的动作发送到 ROS2 中的机器人控制节点。如果你想在 ROS2 环境中使用自定义的机器人模型或者任务场景作为 Gym 环境,你需要定义自己的环境类。,动作空间可能是机器人的线速度。
2025-03-21 22:33:04
575
原创 ROS机器人建模与仿真设计——模型控制理论
之前我们学习了如何使用URDF来描述一个机器人,现在就开始学习如何让这个机器人控制跑起来。首先,先把那个圆柱体补全成一个差速结构的小车。下面开始编辑URDF文件,添加其他link和joint,每次添加后,需要重新编译代码,重启RVIZ2。
2025-03-20 19:43:57
1065
原创 ROS中的TF坐标变换:从传感器数据到机器人系统的精准定位
场景2:现有一带机械臂的机器人(比如:PR2)需要夹取目标物,当前机器人头部摄像头可以探测到目标物的坐标(x,y,z),不过该坐标是以摄像头为参考系的,而实际操作目标物的是机械臂的夹具,当前我们需要将该坐标转换成相对于机械臂夹具的坐标,这个过程如何实现?场景1:雷达与小车现有一移动式机器人底盘,在底盘上安装了一雷达,雷达相对于底盘的偏移量已知,现雷达检测到一障碍物信息,获取到坐标分别为(x,y,z),该坐标是以雷达为参考系的,如何将这个坐标转换成以小车为参考系的坐标呢?在坐标变幻中常用的msg是。
2025-03-18 19:14:31
699
原创 打造两轮差速机器人fishbot:从零开始构建移动机器人
大家好,我是梦笔生花,我们一起来动手创建一个两轮差速的移动机器人fishbot。机器人除了雷达之外,还需要IMU加速度传感器以及可以驱动的轮子,我们曾介绍过机器人学部分,曾对两差速模型进行过介绍,所以我们还需要再创建两个差速驱动轮和一个支撑轮。所以接下来梦笔生花将带你一起给机器人添加如下部件和关节:IMU传感器部件与关节左轮子部件与关节右轮子部件与关节支撑轮子部件与关节。
2025-03-16 21:25:18
635
原创 如何用URDF文件构建机械手模型并与MoveIt集成
通过前面的操作,我们拥有了一个描述机械手的文件 six_arm.urdf,接下来我们利用该文件创建一个可以利用MoveIt进行路径规划的“工程”。urdf里面的link必须要有旋转惯量矩阵‘intertial’的,否则在gazebo里面导入模型urdf时,会报下面的错。同时,ros2_control这个节点下的内容也是要和ros2_controllers.yaml对应的,也可以先不管。上面的ros2_controllers.yaml文件是在下一步创建出来的,先不用管。文件six_arm.urdf。
2025-03-15 21:12:10
510
原创 深入解析PID控制算法:从理论到实践的完整指南
大家好,今天我们介绍一下经典控制理论中的PID控制算法,并着重讲解该算法的编码实现,为实现后续的倒立摆样例内容做准备。众所周知,掌握了 PID ,就相当于进入了控制工程的大门,也能为更高阶的控制理论学习打下基础。在很多的自动化控制领域。都会遇到PID控制算法,这种算法具有很好的控制模式,可以让系统具有很好的鲁棒性。(1)闭环控制系统:讲解 PID 之前,我们先解释什么是闭环控制系统。简单说就是一个有输入有输出的系统,输入能影响输出。一般情况下,人们也称输出为反馈,因此也叫闭环反馈控制系统。
2025-03-09 21:33:21
829
原创 Transformer图解以及相关的概念
RNN还有一个特定就是能考虑词的顺序(位置)关系,一个句子即使词完全是相同的但是语义可能完全不同,比如”北京到上海的机票”与”上海到北京的机票”,它们的语义就有很大的差别。我们上面的介绍的Self-Attention是不考虑词的顺序的,如果模型参数固定了,上面两个句子的北京都会被编码成相同的向量。为了解决这个问题,我们需要引入位置编码,也就是t时刻的输入,除了Embedding之外(这是与位置无关的),我们还引入一个向量,这个向量是与t有关的,我们把Embedding和位置编码向量加起来作为模型的输入。
2025-03-08 23:39:18
795
原创 开源云原生数据仓库ByConity ELT 的测试体验
ByConity的ELT能力能够简化数据处理的复杂性,提高系统的响应速度和可靠性。通过将大部分转换操作留在分析阶段,ByConity能够更好地适应复杂的数据处理需求,特别是在实时数仓和离线数仓的场景中表现出色。从 ByConity 开源之初,我们一直将产品定位为开源云原生数据仓库。区别于传统 OLAP 产品,ByConity 采用存算分离的云原生架构,通过这种架构获得了弹性和降低资源浪费的优势,但与此同时也在一定程度上提高了产品的复杂度。
2025-03-06 22:48:27
969
原创 ROS进阶:使用URDF和Xacro构建差速轮式机器人模型
本篇文章介绍的是ROS高效进阶内容,使用URDF 语言(xml格式)做一个差速轮式机器人模型,并使用URDF的增强版xacro,对机器人模型文件进行二次优化。差速轮式机器人:两轮差速底盘由两个动力轮位于底盘左右两侧,两轮独立控制速度,通过给定不同速度实现底盘转向控制。一般会配有一到两个辅助支撑的万向轮。此次建模,不引入算法,只是把机器人模型的样子做出来,所以只使用 rivz 进行可视化显示。
2025-03-05 22:39:02
662
原创 ROS2与OpenAI Gym集成指南:从安装到自定义环境与强化学习训练
同时,也会有一个函数来将 Gym 环境产生的动作发布到 ROS2 中的控制话题,使得机器人能够执行相应的动作。一般来说,它会提供方法来将 ROS2 中的机器人数据(如传感器数据)作为 Gym 环境的状态,以及将 Gym 环境中的动作发送到 ROS2 中的机器人控制节点。假设你有一个简单的移动机器人,状态空间可能包括机器人的二维位置[x,y]和朝向角度theta,动作空间可能是机器人的线速度v和角速度omega。例如,定义状态空间和动作空间。动作空间可以是机器人的控制指令,如电机的速度值或关节的角度变化。
2025-03-04 22:15:54
879
原创 ROS2强化学习全攻略:从基础到实战,打造智能机器人未来
ROS2 强化学习为机器人的智能化发展提供了有力的技术支持。通过系统地学习强化学习理论、ROS2 基础知识和相关数学知识,并进行大量的实践操作和案例研究,能够掌握 ROS2 强化学习的核心技术,为开发高性能的机器人应用奠定坚实的基础。在未来,随着技术的不断发展,ROS2 强化学习将在更多领域得到应用和拓展。
2025-03-02 20:52:07
924
原创 ROS2 强化学习:案例与代码实战
通过上述案例,我们展示了如何在 ROS2 环境中实现强化学习,让移动机器人能够在复杂环境中自主学习导航策略。这种结合不仅提高了机器人的智能水平,还为未来更多复杂的机器人应用奠定了基础。未来,随着强化学习算法的不断发展和 ROS2 生态系统的不断完善,我们有望看到更多创新的机器人应用,如协作机器人、自动驾驶等领域的突破。
2025-02-25 23:04:30
1179
原创 ROS2强化学习全攻略:从基础到实战,打造智能机器人未来
ROS2 强化学习为机器人的智能化发展提供了有力的技术支持。通过系统地学习强化学习理论、ROS2 基础知识和相关数学知识,并进行大量的实践操作和案例研究,能够掌握 ROS2 强化学习的核心技术,为开发高性能的机器人应用奠定坚实的基础。在未来,随着技术的不断发展,ROS2 强化学习将在更多领域得到应用和拓展。
2025-02-24 22:58:59
1688
原创 关于雷龙CS SD NAND(贴片式TF卡)的测评体验
使用pSLC技术,拥有高容量的同时兼具SLC的特性,不用写驱动程序自带坏块管理的NAND Flash(贴片式TF卡),尺寸小巧,简单易用,兼容性强,稳定可靠,固件可定制,LGA-8封装,标准SDIO接口,兼容SPI,兼容拔插式TF卡/SD卡,可替代普通TF卡/SD卡,尺寸6.2x8mm,内置平均读写算法,通过1万次随机掉电测试,耐高低温,机贴手贴都非常方便,速度级别Class10,标准的SD 2.0协议使得用户可以直接移植标准驱动代码,省去了驱动代码编程环节。
2025-02-23 23:03:27
765
1
原创 开源云原生数据仓库ByConity ELT 的测试体验
ByConity的ELT能力能够简化数据处理的复杂性,提高系统的响应速度和可靠性。通过将大部分转换操作留在分析阶段,ByConity能够更好地适应复杂的数据处理需求,特别是在实时数仓和离线数仓的场景中表现出色。从 ByConity 开源之初,我们一直将产品定位为开源云原生数据仓库。区别于传统 OLAP 产品,ByConity 采用存算分离的云原生架构,通过这种架构获得了弹性和降低资源浪费的优势,但与此同时也在一定程度上提高了产品的复杂度。
2025-02-21 23:25:54
577
原创 ROS2:从初识到深入,探索机器人操作系统的进化之路
DDS其实是物联网中广泛应用的一种通信协议,类似于我们常听说的5G通信一样,DDS是一个国际标准,能够实现该标准的软件系统并不是唯一的,所以我们可以选择多个厂家提供的DDS系统,比如这里的OpenSplice、FastRTPS,还有更多厂家提供的,每一家的性能不同,适用的场景也不同。不过这就带来一个问题,每个DDS厂家的软件接口肯定是不一样的,如果我们按照某一家的接口写完了程序,想要切换其他厂家的DDS,不是要重新写代码么?这当然不符合ROS提高软件复用率的目标。
2025-02-20 23:16:49
924
原创 ROS进阶:使用URDF和Xacro构建差速轮式机器人模型
本篇文章介绍的是ROS高效进阶内容,使用URDF 语言(xml格式)做一个差速轮式机器人模型,并使用URDF的增强版xacro,对机器人模型文件进行二次优化。差速轮式机器人:两轮差速底盘由两个动力轮位于底盘左右两侧,两轮独立控制速度,通过给定不同速度实现底盘转向控制。一般会配有一到两个辅助支撑的万向轮。此次建模,不引入算法,只是把机器人模型的样子做出来,所以只使用 rivz 进行可视化显示。
2025-02-19 23:25:49
1082
原创 Transformer图解以及相关的概念
RNN还有一个特定就是能考虑词的顺序(位置)关系,一个句子即使词完全是相同的但是语义可能完全不同,比如”北京到上海的机票”与”上海到北京的机票”,它们的语义就有很大的差别。我们上面的介绍的Self-Attention是不考虑词的顺序的,如果模型参数固定了,上面两个句子的北京都会被编码成相同的向量。为了解决这个问题,我们需要引入位置编码,也就是t时刻的输入,除了Embedding之外(这是与位置无关的),我们还引入一个向量,这个向量是与t有关的,我们把Embedding和位置编码向量加起来作为模型的输入。
2025-02-18 21:46:17
369
世界杯-拉伊卜的3D打印模型
2022-12-16
圣诞树桌面美丽特效动画
2022-12-16
元旦倒计时代码+HTML5
2022-12-14
3D跨年烟花代码+3D烟花特效
2022-12-14
Python+圣诞树+前端
2022-12-10
HTML+CSS+爱心代码
2022-12-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人