- 博客(74)
- 收藏
- 关注
原创 深度解析有刷直流电机电压方程:从理论到故障诊断的完整指南
有刷直流电机的电压方程U = E + IₐRₐ是其运行的核心数学模型。解释现象:理解为什么运行后性能下降预测性能:计算不同工况下的转速、电流、效率诊断故障:通过测量分析快速定位问题优化设计:指导电源选择、散热设计、材料选择关键要点回顾反电动势E反映转速状态,是天然调速器内阻Rₐ是损耗根源,温升使其增加效率η = E/U,优化目标是提高E、降低损耗运行后压降主因是Rₐ增加,有效驱动电压降低给工程师的建议设计时留有余量,考虑温升影响定期维护,特别是电刷和换向器测量分析结合理论,科学解决问题。
2025-12-07 18:26:01
668
原创 SimpleFOC中setPhaseVoltage函数讲解
这个函数是 FOC(磁场定向控制)算法中的,它负责将旋转坐标系(d-q轴)下的电压指令Ud和Uq,通过 和 处理,最终转换为驱动三相逆变器的信号。其目的是产生一个旋转的磁场,以精确控制电机的转矩和转速。下面是该函数主要信息的一个总结表,方便你快速了解:环节核心输入核心输出关键处理/公式目的UqUdangle_el(补偿后)或或计算归一化电压幅值,并确定电压矢量的准确角度。angle_el(补偿后)sector(1-6)将360度电气角度划分为6个扇区,确定电压矢量所在区域。
2025-09-23 09:28:05
818
原创 SimpleFOC中Move函数讲解
这个move函数是电机控制的核心,它根据设定的控制模式 (controller) 和新的目标值 (new_target),来计算并设置相应的控制量(电压或电流)。它通常用于磁场定向控制(FOC) 系统中。
2025-09-23 09:14:47
686
原创 SimpleFoc中getAngle() 与getVelocity() 函数讲解
这两个函数是电机控制中非常核心的和模块,通常用于处理增量式编码器的信号。它们协同工作,为FOC(磁场定向控制)等高级算法提供关键的反馈信息。下面这张表格汇总了它们的核心功能、关键变量和主要特点,方便你快速建立整体概念:特性getAngle() (角度获取函数)getVelocity() (速度计算函数)获取电机轴的(弧度)计算电机轴的(弧度/秒)编码器原始计数 (当前角度 (getAngle())、时间戳 (_micros()float。
2025-09-23 09:09:09
992
原创 Protel99SE快捷键
Protel 99SE 是一款经典的电路设计软件,熟悉快捷键能极大提高你的设计效率。下面我为你整理了一份详细的快捷键清单,并附上了一些学习建议。类别快捷键功能说明Enter选取或执行当前操作Esc放弃或取消当前操作F1启动在线帮助Tab启动浮动图件的属性窗口Ctrl + Z撤销Ctrl + Y重做Ctrl + C复制Ctrl + V粘贴Ctrl + X剪切Delete删除选中的对象Ctrl + S保存文件PageUp放大显示比例PageDown缩小显示比例End刷新屏幕V + D。
2025-09-22 16:02:50
1184
原创 STC15W4K56S4 单片机 PWM 功能详解与配置指南
STC15W4K56S4 是宏晶科技(STC) 生产的一款基于增强型 8051 内核的高性能单片机。它不仅与传统 8051 指令集兼容,还大大提升了性能(1T 设计),并集成了丰富的外设资源,如大容量存储器、多路串口、ADC 以及本文的重点——高精度 PWM 模块。PWM (Pulse Width Modulation,脉冲宽度调制) 是一种通过调节脉冲的占空比来模拟不同电压值或控制能量输出的技术。
2025-09-22 15:33:02
991
原创 STC8H 8051内核单片机开发(PWM)
例:24MHz系统时钟,PSCR=0(不分频),ARR=23999 → fPWM=24MHz/24000=1kHz。例:ARR=1000, RCR=3 → 实际周期 = 1001×4 = 4004个时钟周期。例:24MHz系统时钟 + PSCR=23 → 计数时钟 fCK_CNT=1MHz。例:ARR=23999,CCR=6000 → D=6000/24000=25%。:在PWM翻转时插入短暂延迟,确保一侧完全关断后再开启另一侧。
2025-08-28 17:03:54
1069
原创 STM32 定时器(互补输出+刹车)
以下是一个基于STM32F103标准库实现的PWM互补输出+刹车功能的完整代码,使用高级定时器TIM1(支持互补输出和刹车功能)。代码包含详细注释和配置说明,适用于电机控制等场景。
2025-08-26 11:46:31
711
1
原创 STM32 定时器(PWM输入捕获)
以下是基于STM32标准库(以STM32F103为例)实现PWM输入模式(自动双沿捕获)的完整代码,通过配置定时器的,可自动捕获外部PWM信号的和,无需手动切换边沿。
2025-08-26 08:58:58
859
原创 STM32 TIM_SelectInputTrigger()函数
其核心作用是将定时器的内部事件或外部信号映射为触发信号(TRGI),进而控制从定时器的计数行为(如启动/停止/复位等)。:单信号同时触发两个通道,分别捕获周期(CCR1)和占空比(CCR2)。A:否,一次只能选择一个触发源,但可通过分时复用或组合模式实现复杂功能。:信号上升沿触发CNT复位,CCR直接存储周期计数值,无需计算差值。触发源信号(TRGI)输入至定时器的从模式控制器,通过配置。A:改用普通输入捕获模式(手动记录两次捕获值差值)。:主定时器更新事件触发从定时器计数,扩展定时范围。
2025-08-23 09:30:57
1143
原创 STM32输入捕获相位差测量技术详解(基于TIM1复位模式)
PA8下降沿 → 复位TIM1计数器 → PA9下降沿触发捕获 → CCR2值即为相位时间差。实测性能:在STM32F103C8T6上可稳定测量。相位差测量基于两个同频方波信号。(10kHz方波)
2025-08-21 22:53:02
606
原创 STM32 AFIO模块
想象AFIO模块是一个“智能交通管制中心”,负责协调STM32芯片内部外设(如串口、定时器)与物理引脚(如PA9、PB6等)的连接关系。通过精确控制AFIO时钟,开发者能最大化利用STM32有限的引脚资源,实现灵活可靠的硬件设计 🔧。许多人误以为“只要用到了复用功能(如PWM、UART)就要开AFIO时钟”,这是错误的!STM32的所有外设(包括AFIO)默认处于“断电”状态(时钟关闭)。没有电(时钟),管制中心无法工作,所有信号路由都会瘫痪。,解决硬件资源冲突问题。,使其寄存器可被读写。
2025-08-21 09:10:58
1349
原创 STM32 定时器(级联实现32位定时器)
在STM32F103微控制器中,通过将两个16位定时器级联为32位定时器,可显著扩展定时范围(最长可达数天)。
2025-08-20 09:53:21
756
原创 STM32 定时器(主从模式实现 3路PWM相位差)
摘要:本文介绍基于STM32定时器硬件触发实现多路PWM相位同步控制的方法。通过配置主定时器(TIM1)输出基准PWM并作为触发源,从定时器(TIM2/3/4)采用门控模式,以不同的计数器初值实现精确相位差(如120°间隔)。关键点包括:主从定时器需同频同源、高级定时器需使能MOE、通过TIM_SetCounter()动态调整相位。该方法具有纳秒级精度,适用于三相电机驱动、RGB调光等场景,可减轻CPU负载。
2025-08-19 12:48:15
1749
1
原创 STM32 定时器(主从模式)
:想象定时器是一个快递站长,TRGO 就是站长发出的指令广播——不同指令(触发源)会让其他外设(快递员)执行不同任务。 向其他外设(如其他定时器、ADC、DAC)发送同步信号。:定时器作为“主设备”时,通过 。)、从设备触发使能(如 ADC 的。
2025-08-19 12:14:50
1781
原创 stm32 定时器(计数模式)
配置时需严格匹配硬件特性(如定时器类型)和任务需求(如波形对称性、中断频率),结合预分频器(PSC)与自动重载值(ARR)精细调整时序精度。三种模式均通过计数器。
2025-08-19 11:44:59
1242
原创 STM32 定时器(输出模式)
STM32定时器的输出比较模式通过比较计数器(CNT)与捕获/比较寄存器(CCRx)的值,控制输出引脚(OCx)的电平状态。CNT < CCRx → 高电平;CNT > CCRx → 低电平;CNT < CCRx → 低电平;CNT > CCRx → 高电平;CNT ≥ CCRx → 低电平。CNT ≤ CCRx → 高电平。CNT ≥ CCRx → 高电平。CNT ≤ CCRx → 低电平。
2025-08-19 10:56:50
1243
原创 STC8G 8051内核单片机开发(寄存器速查)
(Bit5):ADC转换完成中断优先级。(Bit6):低电压检查中断优先级。(Bit3):外部中断1请求标志。(Bit2):外部中断1触发方式。(Bit1):外部中断0请求标志。(Bit0):外部中断0触发方式。(Bit5):ADC转换完成中断。(Bit3):定时器1中断优先级。(Bit1):定时器0中断优先级。(Bit7):定时器1溢出标志。(Bit6):定时器1运行控制。(Bit5):定时器0溢出标志。(Bit4):定时器0运行控制。(Bit7):PCA中断优先级。(Bit4):串口1中断优先级。
2025-07-17 10:53:49
913
原创 STC8G 8051内核单片机开发(定时器)
寄存器,定时器 3 能高效完成定时、计数及 PWM 输出任务。 实现高精度 PWM、脉冲捕获或串口波特率发生器(需配置。,结合中断逻辑构建稳定时序控制框架。通过合理配置定时器0,可高效实现。STC8G定时器的核心能力在于。,以确保时序精度与稳定性。定时器 3 可结合 。
2025-07-04 01:58:06
929
原创 STC8G 8051内核单片机开发 (中断)
通过合理配置中断系统,STC8G可胜任电机控制、环境监测、多机通信等复杂场景。建议结合STC-ISP工具的 。 初始化寄存器,避免手动配置错误。(0最低,3最高),通过组合 。
2025-07-03 23:17:52
1236
原创 STM32 CCR寄存器
:CCR寄存器存储的是捕获瞬间的CNT值,而CNT的清零由硬件自动完成,与CCR无关。,可观察到PA8下降沿时CNT被清零,而CCR1的值保持不变直至下次捕获。用户代码中通过主从模式实现了。
2025-06-27 16:24:57
833
原创 STM32 定时器讲解
FPWM=(PSC+1)×(ARR+1)Fclk占空比=ARR+1CCR×100%:72MHz时钟生成1kHz PWM(占空比50%)→。
2025-06-19 15:58:28
1348
原创 STM32 GPIO 寄存器开发
若需使用PA13~PA15/PB3~PB4作GPIO,需禁用JTAG。I²C等总线场景,外部需接4.7kΩ上拉电阻。防止关键引脚(如复位脚)被意外修改。
2025-06-18 19:37:43
1460
原创 STM32 实现PID
此实现已在直流电机调速(响应时间<10ms)、恒温控制(稳态误差<±0.3℃)等场景验证。限制积分累积,避免执行器饱和(如PWM达100%时停止积分)。(加热器+PWM)(霍尔传感器反馈)
2025-06-18 15:05:13
1166
原创 STM32F103实现 卡尔曼滤波
⚙️ 二、完整实现()🚀 三、STM32F103集成示例()⚖️ 四、参数调优指南 参数 物理意义 调整方向影响 典型场景建议值 过程噪声协方差 增大 → 更信任测量值(响应快但易震荡) 慢变化信号:0.0001~0.01 快变化信号:0.1~1.0 测量噪声协方差 增大 → 更信任预测值(平滑但响应滞后) 高精度传感器:0.01~0.1
2025-06-18 14:59:56
1168
原创 c语言位运算的一些用法
在要求极致性能的场景(如高频交易、实时系统),合理使用位运算可提升5~10倍效率,但需结合业务需求谨慎选择。,关键路径(如中断服务程序)优先位运算,非关键代码保持可读性。(如ADC采样值放大100倍处理)。位运算的终极价值在于 。
2025-06-17 18:13:51
1181
原创 STM32 实现解析自定义协议
数据结构设计:关键操作函数:二、DMA与中断机制优化(降低CPU负载)硬件配置流程:USART1初始化:DMA配置(接收方向): 中断服务程序: 三、命令解析状态机(优雅协议设计)自定义协议格式(参考工业标准):解析状态机实现:四、资源管理与错误处理 缓冲区溢出防护:DMA异常恢复: 超时机制: 主循环中检测帧接收超时(例如50ms无新数据),强制重置解析状态机。 六、性能优化建议
2025-06-17 17:54:01
1235
原创 xPSR
在 ARM Cortex-M3 中, 是核心的状态控制寄存器,由三个子状态寄存器合并而成,用于记录处理器的运算状态、中断状态和执行环境。
2025-06-01 23:23:05
1379
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅