ZHOUHENG

AxDr_L_Motor:如何通过 USB 与固件通信

  把 AxDrive-L 开发板通过 USB 接到电脑后,可以查看电机的电压、电流,修改控制参数,发送控制命令,也可以连续采集波形。固件通过 USB 虚拟串口传输数据。   下面以 VOFA+ 发送十六进制命令为例,介绍如何与 AxDr_L_Motor 通信。示例对应的固件为 main @ 204215f。 连接与发送   电脑识别开发板的 USB 后,Linux 通常出现 /dev...

AxDr_L_Motor 项目介绍

简介   AxDr_L_Motor 是我个人开发的永磁同步电机(PMSM)控制固件工程,主要用于学习、实现和验证电机控制算法。   最开始只是想把 FOC 的基本控制流程跑起来,后来随着开发和测试,逐渐加入了速度环、位置环、无感观测器、电机参数辨识、运动轨迹规划以及数据采集等功能。   这个项目没有预定的最终形态,主要根据实际需要增加功能、测试算法、修改存在的问题。有些算法已经经过实机...

电机运动模式

电机的运动模式 速度模式 需要参数   加速度 $a(rps/s)$、减速度 $d(rps/s)$、匀速 $V_{max}(rps)$、运行时间 $t(ms)$(可选)。 运动   没有指定运行时间时,电机需要收到停止信号后停止,无论是在加速还是匀速阶段,都需要以指定减速度减速停止。为什么不是立即快速停止?因为这个是控制指令,不是急停。   指定运行时间后,有两种情况: 运...

设置带宽配置 PI 参数

前言   此篇文章是对前文中带宽设计 快速估算部分的补充,   有许多的伺服驱动器在调试PID参数时,调整的参数的单位是Hz,而不是常规的kp、Ki, 不清楚驱动器内部是怎么处理的。大部分驱动器都不会把电流环参数接口留出来,都是根据电机参数和 驱动器的设置自动处理的。   不过原理应该是差不多的,调试的是控制环路的带宽。 带宽配置 PI 参数   电流环的交叉耦合项和反电动势通过补偿,可以简...

记录遇到的 Bug

前言   此文档是记录开发过程中遇到的 Bug ,印象较深的,不定时更新,学习记录一下,可能会有错误。 串口通信 遇到的 bug DMA 串口通信 时不时出点小毛病:   定时发送,使用中断释放信号量,通知通信线程每100ms发送一次数据。中断时间配置无效,发送还是连续的,还检查了好一会儿中断和信号量。后来发现是 DMA Circular 循环模式导致的,配置为 NORMAL...