- 博客(95)
- 收藏
- 关注
原创 机器人 - 关于MIT电机模式控制
Mixed Integrated Torque为一种混合控制模式,在同一帧CAN数据里包含位置、速度、扭矩三类的闭环指令。驱动器里面把位置环、速度环、前馈扭矩相加,得到一个参考电流,然后再交给电流环完成精准扭矩输出。
2025-11-21 12:25:18
878
原创 机器人 - 关于电机获取力矩反馈
这种方法硬件需求低,只需要获取电流。但是受到电机磁路非线性、温度、饱和等因素影响,需要校准;:利用电机的电感、反电动势常数 与转速信息,构建状态空间模型,使用。其中T为输出扭矩,Kt为电机的扭矩常数,Iq为电机的q轴电流;
2025-11-21 12:10:31
78
原创 Windows PC 上使用 ADB 调试运行 Ubuntu 系统的 RK3588 开发板
PC端执行,有xxxxxxxxxxx device 的输出,表示成功建立连接。在系统环境变量里添加刚刚解压好的Platform-Tools路径。先用板子调试成功一次,然后板子和PC在同一局域网,记下板子的IP。
2025-11-20 14:52:34
296
原创 激光雷达(LiDAR)说明
步骤关键要点说明发射激光器(波长 250‑1600 nm)发出短脉冲或连续波光束高亮度、方向性强、相干性好,使光束在空间中保持窄束传播 & 目标反射光束照射到目标后产生散射/反射,部分光返回传感器目标的材质、反射率决定回波强度接收接收光学系统(望远镜、光电探测器)捕获回波并转换为电信号常见的探测方式有时间飞行(ToF)和相位/频率调制(FMCW)计算距离通过测量发射‑回波的往返时间(ToF)或相位差,得到目标距离距离 = 光速 × 往返时间 / 2;
2025-11-18 10:13:11
640
原创 硬件 - 关于PCIe设计要求
在 PCIe TX/RX 端放置对称的 AC 耦合电容(0.1 µF ~ 1 µF),并在电源层布置足够的去耦电容(10 nF ~ 100 nF)以抑制电源噪声。使用自动匹配或手动微调,使每对差分线长度差 ≤ 0.15 mm(或 ≤ 5 mil),并在换层点前后保持相同走线路径。PCIe 走线应远离射频、音频、晶振及大电流电源走线,保持至少 5 mm(约 200 mil)间距,防止耦合噪声。推荐 4‑层或以上结构:顶层信号层、内部参考层(GND/PWR)交替排列,保证每条高速走线都有紧邻的参考平面。
2025-11-17 11:46:18
518
原创 硬件 - 关于DDR设计要求
Fly‑by 拓扑对 地址/控制线的等长要求更严格(±50 mil),而数据/ DQS 组的等长误差要求更紧(±10 mil)同一 Byte‑Lane 的 8 根 DQ、对应 DQS、DM 同层走线,保持 等长误差 ≤ ±10 mil(DDR4)或 ≤ ±5 mil(DDR5)地址/控制/时钟组:同样要求 等长匹配,误差可放宽至 ±50 mil(DDR4)或 ±40 mil(LPDDR5)* 地址/控制/时钟等长误差 ≤ ±50 mil(DDR4)/≤ ±40 mil(LPDDR5)
2025-11-17 11:23:26
828
原创 硬件 - 硬件问题排查
在实际研发过程中,经常遇到各种硬件问题,这里主要简单介绍遇到硬件问题时,排查顺序。为了后续工作中debug的标准化、流程化;
2025-11-17 10:46:29
195
原创 硬件 - LM5122MH - 24V升压26.4V 10A
输出电压 26.4V ,最大电流10A。输入电压23.5V~24.5V。工作频率0.517MHz。
2025-11-07 13:23:44
204
原创 软件 - BQ40Z80命令
此类命令直接通过 SBS 协议发送,用于读取电池基础运行数据或配置基础功能,无需通过。两类接口功能互通,支持访问 “制造商访问系统(MAC)”,命令通过。(SMBus 块协议)发送,结果可通过。(SMBus 字协议)或。
2025-11-07 10:42:09
2260
原创 硬件 - Allegro - 通过改env来换快捷键,适合新手
比如 E:\06_Cadence\SPB_22.1\share\pcb\text。用记事本打开,然后把里面的内容全部替换成下面代码的内容;在安装Allegro的目录下面找到一个叫env的,这篇文章基于凡亿教育,主要是让新手方便修改;
2025-11-06 20:28:16
368
原创 硬件 - Cadence&Allegro入门使用常见问题
2.Options -> Grid Display -> Gird spacing 把默认的1,1改成1,2或者再多点;Setup(设置) -> User Preferences(用户偏好设置) -> Paths -> Library。然后File(文件) -> import(导入) -> Logic/Netlist。会发现元件全都放出来了,这里我把飞线去掉了,在显示那里点击隐藏飞线-全部;放置->快速放置,点击完放置后在背景板的地方,点一下左键。之后点击显示 -> 状态,能看到新导入的元件没放置。
2025-11-05 10:49:39
414
原创 硬件 - EMC简单介绍 (是啥、怎么形成、如何整改)
改原理图/PCB,比如加滤波器,或者装个罩子;电磁兼容,指电子设备在共同的电磁环境中能够。确定是RE(辐射)还是CE(传导)超标;根据干扰源来确定用上述的哪种方法;用频谱仪、近场探头找干扰源;
2025-11-04 17:55:08
414
原创 硬件 - BLDC半桥驱动
上下桥臂MOS、驱动IC、软启动;上下两个部分是,主要控制导通的时候电流流向;的话,可以防止电气、机械冲击。比如可以在MOS的栅-源极加个10nF的电容;除此之外,还可以在栅源极加个10K或者再高些的电阻,做到;然后上面的1N4148的二极管那块地方,在MOS被驱动的时候,电流通过R5从栅极那边过去,R5可以平滑一些振荡;在关断的时候,1N4148那里提供了一条回路,让电荷快速回去;C3那地方布局的时候记得靠近EG2133,它拉高电平用的;
2025-11-03 21:00:46
344
原创 单片机 - 关于RS485硬件与伪代码
利用差分信号传输、距离远、抗干扰能力强、支持半双工和全双工模式;RS485B - RS485A,看它们俩直接的压差;逻辑1 为 +2~+6V, 逻辑0 为 -2~-6V,-2~+2之间无效区;Modbus-RTU在RS485上采用8-N-1帧结构,[地址][功能码][数据][CRC]在单片机上的应用(以STM32为例)
2025-11-03 19:53:20
418
原创 无人机 - 关于无人机电池
实际上我们应该用这个来计算能量,这里会发现标称电压高的情况下,能量其实也会受影响变高;除此之外,高压锂电池一般能保持较好的电压稳定性,换句话说,在大电流的情况下,这类电池电压下降速度不会那么快。这可以使得在恒定功率的情况下电流会小一些;一般的锂电池单个电芯满充电压为4.2V,截止放电电压在2.5V左右,如sony US18650VTC6;我们都知道电芯在电压方面有四个注意点,截止放电电压、充电电压、标称电压、满充电压;还有一些高压电池,单个电芯满充电压为4.35V,截止放电电压在3.2V左右。
2025-11-03 08:36:37
408
原创 硬件 - 减小导线、铜层的线阻
在PCB板上的话,增加铜厚、增大线宽;金属电阻率会随着温度上升而增大,比如铜温度系数为0.004/℃,即温度每升 1℃,ρ 增加 0.4%;也就是在PCB布线的时候,尽量不要绕远路,尽量短走线;设计时,根据工作电流来定线宽、线粗,防止导致 线宽不够->发热->电阻率上升 的正反馈;信号频率>100kHz时,需要注意以下集肤效应,也就是电流主要集中在导线表面;(R 为电阻,ρ 为材料电阻率,L 为导线 / 铜层长度,S 为横截面积)比如,PCB中可以用开窗把铜层暴露,在铜层处加散热过孔;
2025-10-25 16:28:20
332
原创 算法 - PEC校验
接收端接收到数据后,也用相同式子计算,对比两者PEC校验码是否相同,相同的话认为数据完整可靠,不同认为这个包错误;PEC基于CRC-8,一般用在I2C / SMBus这样的地方,它没有纠错能力,只能判断数据是否完整可靠;发送端在发送数据时,利用一个式子把需要校验的数据进行计算,得到一个PEC校验码;
2025-10-24 16:22:22
148
原创 硬件 - 电量计配置GG详解 - 以BQ40Z80为例
Scale Factor 电流缩放因素,主要解决内部电流寄存器不够用的情况(最多到32A那里),我这边因为要用到50A以上,所以我设置为2,相对应的和电流、容量有关的全除2;不能出现OCC填正值(充电),因为充电过流保护后,充电MOS关闭了,这时候充不进去了,放电同理;这里显示输出传感器温度,11不使用,10是最低温度,01平均温度,00最高温;维护充电时的电流,主要就是充满的时候,一个保持电流;CC2,CC1,CC0用于设置电池串数,比如我这里6串,那么为110,
2025-10-21 17:33:05
703
原创 硬件 - BQ40Z80电量计应用详解(4) - 充电算法GG配置 -ing
这个可以在Advanced Charge Algorithm中,填入不同温度下的充电电压值,芯片会根据设计的串数,来决定充电电压;在Settings中的Configuration 的 FET Options中可以设置 PCHG_COMM,来调节预充电方式;当RSOCL=1时,剩余容量在终止结束前,会保持在99%,充完电后才达到100%,充电的时候,会根据温度、电芯电压、电芯状况等,控制充电时的参数,比如图4所示。使能CRATE=1后,会根据充满容量/设计容量,来调节充电电流;VCT 表示 有效终止充电;
2025-10-15 16:01:43
1091
原创 硬件 - BQ40Z80电量计应用详解(3) - 永久保护功能
在Gas Gauging中,可以对IT Cfg:[Referenc Grid]设置,这个是设置参考网格,0(满充电芯阻抗),14(满放电芯阻抗),我们可以选择默认值4,接近20%~100%SOC的平均值;1.电芯在参考网格下阻抗差值 > IMP:[Delta Threshold]*设计电阻(IT Cfg:[Design Resistance])更新次数;假设Pack中最大电芯容量为MAX[QMAX],最小电芯容量为MIN[QMAX],主要根据TS[1:4]返回的温度数据进行判断,用于检测电芯的;
2025-10-15 14:08:54
544
原创 硬件 - BQ40Z80电量计应用详解(2) - 保护功能
其中Hysteresis Temp 的作用,因为NTC温度检测回传时的噪声、实际温度的干扰,可能出现温度在某个区的边缘跳动,比如温度为T5,那么它小一点就会掉到Standard Temp Low,高一点会升到Rec Temp,这时候很容易造成充电电流一直在变换;并且有个Counter Dec Delay的值,在COV中可以设置,每触发一次COV,那么Delay值都会递减Counter Dec Delay,也就是每过压保护一次,下次就更容易触发过压保护;OCC2是针对过流大的充电电流,所以触发时间要短;
2025-10-14 17:36:24
823
原创 硬件 - BQ40Z80电量计应用详解(1) - 引脚复用(Pin Configuration)
设置方式为 MFP12_SEL[0:2] = 000,主要在7Cell时作为ADC,这里的ADC检测被限制在0~1V,又因为Pack包最大为32V,所以此处至少要做32:1的分压;设置方式为 MFP12_SEL[0:2] = 001,此模式下,RC2复用为TS3,用于连接外部的NTC检测温度;设置方式为MFP13_SEL[0:2] = 001,选用这个功能后,该引脚外接一个NTC,用于温度检测;11时弃用,高阻态;设置方式为 MFP12_SEL[0:2] = 1xx,这个方式后,该引脚会变成高阻态;
2025-10-14 13:22:56
909
原创 电机算法 - 克拉克变换
目的:三相波形相位差比较难控制,利用克拉克变换降维解耦,映射到二维坐标上面;所以,我们只需要知道其中两相电流,也就是 ib 和 ia,这时候就可以知道。三相电流波形 -> 相位差为120°的矢量 -> 二维坐标。这时候,乘上 2/3 就可以实现相等;
2025-10-02 08:29:06
343
原创 硬件 - RK3588部分(4) - 原理图 - RK806
Buck1: 0.5V-3.4V 输出,6.5A max;Buck2/3/4: 0.5V-3.4V 输出,5A max;Buck5/6/7/8/9/10: 0.5V-3.4V 输出,2.5A max;NLDO1/2/5: 0.5V-3.4V 输出, 300mA max;NLDO3/4: 0.5V-3.4V 输出, 500mA max;PLDO1/4: 0.5V-3.4V 输出, 500mA max;PLDO2/3/5/6: 0.5V-3.4V 输出, 300mA max;
2025-09-18 14:48:07
452
原创 硬件 - RK3588部分(3) - 原理图 - 电源设计
同一模块,低压先上,高压后上,相同电压一起上电;不同模块间没有时序要求;最后一个电压上电稳定后,RESETn至少过1ms后再释放,5~200ms内;
2025-09-18 13:22:38
977
原创 硬件 - RK3588部分(2) - 原理图 - 最小系统
RK3588S系统时钟由内部振荡与外置24Mhz晶振组成;XOUT_24M 外面那个22R的电阻要留着,用于限流,防止过驱;XOUT和XIN之间 510KR 的电阻的阻值不要去动;1.晶振的CL值不要超过12pF;2.CL电容常温频率容限在20ppm以内;3.下方原理图中晶振的GND记得要接,加强时钟抗ESD干扰能力;
2025-09-18 09:17:11
1434
原创 硬件 - 立创EDA入门实践 - 从DCDC降压芯片带您从原理图到PCB到打板
这里为了方便,所以我直接用TI的这边生成的原理图;具体生成方式可以看我的那个文章那个文章...
2025-09-17 17:23:18
2054
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅