- 博客(515)
- 收藏
- 关注
原创 C++异步---回调函数callback
用libcurl发http的post请求,拿到json响应,成功后通过回调函数打印出来。:发起一个耗时操作(比如网络请求、文件读写)后,程序无需原地等待,可去处理其它任务。:你点完咖啡后拿到一张小票,可以先去旁边玩游戏,等咖啡做好了服务员来叫号。还有一个更常见的,用std::function + Lambda。:你去咖啡店买咖啡,站在柜台前一直等到咖啡做好,拿到手才离开。(Coroutine)等方式通知程序“结果已完成”,即必须等待一个操作完成后,才能开始下个操作。:当操作完成后,通过。
2025-07-20 10:48:22
568
原创 Windows的Vscode导入Eigen库
比如,E:/roslibrary/eigen-3.3.8。ctrl+shift+p,然后找到这个文件。将你的Eigen库位置放进去。
2025-06-30 15:02:17
218
原创 ROS中launch文件的group标签
group>标签用于将多个节点<node>集中管理。比如:在这里用到了条件控制,大白话讲,只有满足条件才可以执行节点。
2025-06-30 14:20:09
311
原创 电压电流采样电路
这个芯片是一个非反相放大器(Non-inverting Ampilfier),输入信号连接到运算放大器的非反相输入端(+IN)。输入电阻是R24,反馈电阻R25是连接在非反相放大器(+IN)与地之间的电阻。该电路通过电阻和运算放大器对输入电压和电流进行采样,并将采样后的信号输入到ADC。R26作为采样电阻,电流经过时会有电压降,根据欧姆定律电压降与电流成正比。具体可得,A为1.0625。增益为正,表示输出信号与输入信号相位相同。这个芯片力有一个运算放大器,可以用于放大采样电阻上的电压降。
2025-06-28 11:32:18
597
原创 路径规划Astar算法以及变体(附代码)二
ESDF欧式距离场,在可行区域的值代表离最近的障碍物的距离,在障碍物内部的值是最近出障碍物的距离。注意!下面这张地图并非用在路径规划,而是用在后续的优化器,用来使路线远离障碍物所使用,ESDF的值为-1 到 1 的小数,绝对值越接近1,那么这个网格越远离障碍物边缘语义地图语义地图是通过标签来实现处理多种地形的算法,在RM中只有台阶,因此可以简单的在某些网格添加一个方向向量来表示单向通过的路径以及方向,语义地图是新内容,可 以简单的通过涂色或者任何方法生成,只要可以表示单向通过的路径,并且指明方向即可。
2025-06-20 04:26:22
1651
原创 PCB设计中遇到的一些问题
FB(feedback)引脚,通过外部电阻分压网络将输出电压(Vout)分压后接入FB引脚,芯片内部比较器会将此电压与基准电压(Vref)比较,若FB电压偏低则增大开关占空比(如PWM控制),偏高则减小占空比,从而动态稳定输出电压。FB引脚的分压电阻应尽量靠近用电设备接入点,以减少大电流线路压降对反馈精度的影响。OSC是晶振,振荡器(Oscillator)引脚。COMP是补偿(Compensation)引脚;最近在设计无刷驱动。SS引脚是软启动引脚,具体去看芯片手册。SW芯片的开关引脚,一般靠近电感。
2025-05-27 03:19:40
221
原创 安装Genesis
尝试一下第一个例子吧,进入到Genesis/examples/tutorials下,在激活好的环境里面运行。第一步:先安装torch,如果安装失败请更改torch的cuda版本。第二步:配置genesis环境。第三步:克隆genesis项目。
2025-05-14 15:55:54
273
原创 强化学习算法
并且采样的数据可以多次用来训练我们的policy网络,这样就解决了on policy训练效率太低的问题,但是有一点限制,就是这个参考策略不能和训练策略在同意情况下给出各种动作概率分布的差别太大。之前我们讲的每一步action的return,都累加它后面的reward,并且逐步衰减,但是这也是通过具体的采样得到的值。一个动作是可以对接下来的reward产生影响,但是它可能只影响接下来的几步,而且影响会逐步衰减,后面的reward更多的是由他当时的动作影响的。的作用下,τ获得的return的期望尽可能大。
2025-05-11 05:15:29
1187
原创 PPO近端策略优化算法
本文学习自不去幼儿园大佬的文章!加上自己的一些小见解,欢迎交流!过去,在强化学习中,直接优化策略会导致不稳定的训练,模型可能因为过大的参数更新而崩溃。解决方案:PPO通过限制策略更新幅度,使得每一步训练都不会偏离当前策略太多,同时高效利用采样数据。
2025-05-10 19:45:15
1196
原创 高频PCB设计如何选择PCB层数?
用中间的电源层以及地层可以起到屏蔽的作用,有效降低寄生电感和寄生电容,也可以大大缩短布线的长度,减少信号间的交叉干扰。但是更可以第一层和第三层画信号。第二层可以走电源,然后第四层走GND。以四层板为例,可以第一层和第二层画信号,作为信号层。第三层可以走电源,然后第四层走GND。
2025-05-06 23:51:54
444
原创 孤岛铜怎么解决
这里没有与周围区域的铜有任何连接,相当于一片孤岛。孤岛铜也叫死铜在下面这个NetC1_2是一条高速信号。旁边还有个PWM低频信号,对信号要求严谨(方波)此时中间的孤岛铜就像个天线,接收到了旁边的高速信号,那同时这块死铜又发散到PWM,让信号发生抖动。
2025-05-06 19:06:38
378
原创 嘉立创PCB铺铜的意义
一般来说,在所有别的网络都画完之后,剩下GND网络。此时GND飞线可以不接,直接GND铺铜即可。隔一段时间画板总是会乱,不知道铺铜的意义。可以先给GND连接出一个过孔出来。
2025-05-06 15:23:56
858
原创 八邻域算法
八邻域算法就是一个中心点(已知的边界点)的周围另外有八个点,下一次找边界点就是从这八个点中找到满足条件的边界点作为下一次的中心点,然后继续按照规则不断找到满足条件的所有点,组成我们需要的边界。(你可以自己制定规则,是要顺时针寻找还是逆时针寻找,代码不同)
2025-05-05 04:32:19
1159
原创 搞懂matlab的MPC代码
可以看到在大概60ms时才拟合那我们希望它能更快的拟合,应该怎样做呢?1、可以将α降低一点,把它改成0.2α是上篇文章中讲的一阶滤波的系数。α越小,则期望轨迹越陡,响应更快。可以看到第二组参数,明显调节时间块了许多,但是期望轨迹有点超调。
2025-05-04 05:55:15
283
原创 视觉组必备知识2
求解对面装甲板与我方云台的相对位姿,相对位姿会被发送至下位机,下位机接收数据后控制底盘和云台移动。在opencv中, cv::Rodrigues(rvec, R);可以将旋转向量转换为旋转矩阵。对于比赛来讲,我们可以把世界坐标系建立到装甲板上,赛场上对于敌方装甲板的姿态结算中,我们将。第五步利用solvepnp函数。这上面三个公式是最重要的!作为PNP解算中输入的匹配点。在工程中,我们一般用四对点。
2025-04-30 12:59:16
370
原创 视觉组的一些必知东西
由于透镜折射原理,光线如果没有从透镜的光心经过,可能被过分偏折,也可能被偏折的不够,导致成像出现径向畸变。不同,物体投影到成像平面时水平、垂直的放缩倍数不同,坐标系转换时需要乘以缩放因子。选取不同,所以从成像坐标系转换到像素坐标系需要带上平移项。由于欧拉角变换有顺序性,所以在某些情况下会丢失自由度。传感器平面与透镜平面不平行导致成像出现切向畸变。描述了相机光学畸变的程度,其中相机畸变分为。第一步与实物和相机的相对姿态有关。第二步只与相机本身的参数有关,即。:由于透镜在水平与垂直方向的。
2025-04-29 01:17:56
224
原创 电控组【定时器】
连接处理器和内存、DMA(直接内存访问)的总线是AHB(Advanced High-performance Bus)总线,它是高速总线,用于处理器与高速外设之间的通信。HCLK是AHB总线上的时钟信号;3. 高级控制定时器:具有更高级的功能,如死区控制、互补输出等,适用于电机控制等复杂应用。2、预分频器:一个可选的分频器,用于降低计数器的计数速率,从而拓展定时器的计时范围。3、中断:当计数器达到预设值时,可以触发中断,通知处理器进行相应的处理。2. 预分频器配置:设置预分频器的值,以确定计数器的计数速率。
2025-04-23 03:21:36
480
原创 四种阻抗匹配的方式
戴维南端接,也被称为分压型端接,是一种用于高速信号传输线的阻抗匹配技术。它通过在传输线的末端并联一个由上拉电阻R1和下拉电阻R2组成的分压器网络来实现阻抗匹配。这两个电阻并联后的等效阻抗应等于传输线的特性阻抗Z0。电容在这里是隔离直流的作用,AC并联端接不会像普通并联端接那样增加直流功耗。要达到匹配效果,串联电阻和驱动端输出阻抗的总和应等于传输线的特征Z0。要达到阻抗匹配的要求,端接电阻应该和传输线的特征阻抗Z0相等。即靠近输出端的位置串联一个电阻。并联端接又被称为终端匹配。并联端接为消除直流功耗。
2025-04-21 21:39:46
1388
原创 PCB设计技巧 - 高速电路中的阻抗匹配
这是一个标准的信号模型。定义如下:不管是信号源、传输线还是接收端,它本身自带一些寄生的电阻、电容以及电感。他们都会对高速信号的传输产生阻碍作用,也就是所谓的阻抗。当信号在这三个部分中传输时,如果相邻部分的阻抗不一致时,信号就会在接触点发生反射。可以类比为光在不同介质下的传输也会有反射。我们需要保证三方的阻抗要一致,即Z1 = Z2 = Z3时,线路中无反射。
2025-04-21 03:32:54
645
原创 信号反射的几个体现以及电路设计
信号沿着传输线向前传播时,每时每刻都会感受到一个瞬态阻抗,这个阻抗可能是传输线本身的,也可能是中途或末端其它元件的。对于信号来说,它不会区分是什么,信号所感受到的只有阻抗。如果信号感受到的阻抗是恒定的,那么他就会正常向前传播,只要感受到的阻抗发生变化,信号都会发生反射。这些因素可能包括过长的走线,末端匹配的传输线,过量的电容或电感、以及阻抗失配。反射会造成信号过冲(overshoot)、下冲(undershoot)、边沿迟缓(回勾现象)也就是阶梯电压波。边沿迟缓其危险主要是会造成误触发。
2025-04-21 02:38:02
508
原创 cubemx配置A板CAN
先配置HSE(High Speed External Clock signal)高速外部时钟为12,因为此时只是在芯片内做配置,引到pin2的can口才是CAN_H和CAN_L。这里配置的是CAN_RX和CAN_TX。而不是CAN_H和CAN_L。原本我们是45Mhz,这里配置分频除以9,此时时间片是200ns。可以看到配置完后,APB1总线的时钟频率是45MHz。第一步:配置LED1-8:PG1-PG8,低电平点亮。模式配置成loop back回环模式。这里依次配置GPIO_output。
2025-04-17 11:54:09
285
原创 CAN电路分析
CAN_H与CAN_L通过两个120欧姆电阻连接在一起,为什么这么设计呢?先来了解一些理论在研究由反射引起的振铃效应前,先讨论由电路谐振引起的振铃效应。在时钟速度高达10MHz的数字系统中,振铃(Ringing)现象是设计中的显著问题。传导系统对输入信号的响应,在很大成都上取决于系统的尺寸是否小于信号中最快的电气特性的有效长度,反之亦然。电气特性的有效长度由它的持续时间和传播延迟决定,即l=Tr/D(Tr =上升时间,ps;D=延迟,ps/in)。
2025-04-16 17:25:07
636
原创 apt update报错
证书问题Certificate verification failed就把全部源的https换成http。sudo date -s "2025-03-31 02:21:00" 换成当前时间。之前踩过一个巨坑,一直以为是换源的问题。解决办法是:同步时间。
2025-03-31 02:51:06
249
原创 机械组必须知道的知识
标准件是指结构、尺寸、画法、标记等各个方面已经完全标准化,并由专业厂生产的常用零件。广义包括标准化的紧固件、连结件、传动件、密封件、液压元件、气动元件、轴承、弹簧等机械零件。对于机器人的设计而言,使用标准件以为着机器人之间的零件互换性与零件的通用性,在设计中尽可能的使用标准件可以降低制作与维护成本。一句话:无论是哪个产家生产的,我可以随意拿来替换紧固件作为连接机械结构以及固定动力源的关键零件,紧固件出现问题将导致机器人机械机构失效,是机器人上数量众多且十分关键的零件。
2025-03-26 04:02:03
1133
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
3