已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也

半开环算法测试:

算法采用开环驱动 (细分设置为16 比较符合当前输入速率和电机最大速度) 但是失步时候会记录下来并尽量追上 此外还有一些小的优化 比如当误差较大时 驱动带有一定的提前量 电流也会根据负载造成的误差而变化 并对时间有所平滑 当负载轻下来并且不需要驱动时候 锁定电流为1/6满电流 

  1. 特点: 鲁棒性强 刚性强 无须配置 在负载变化时候没有震荡

  2. 计算负担:

    1. 锁定时 剩余主循环速度:62次/ms (对比空闲时130次/ms)

    2. RS485以250kbps满速率驱动时, 剩余主循环速度:46次/ms

  3. 最大转速

    1. 测试指令驱动 约12圈每秒

    2. RS485以250kbps满速率驱动时 可以完全跟踪上 约7.8圈每秒

  4. 误差:

    1. 静态时 误差一般在2步内 没有抖动 (考虑到实际上是无负载开环直接驱动 这误差其实应该是传感器的)

    2. 动态时 RS485以250kbps满速率驱动时, 误差约为12步

      trace-error.png

  5. 给一个角度台阶输入 其误差曲线 因为有加速优化 有少量过冲 但是数据中 响应启动有近1ms时间的延迟 程序其实是立即驱动的 该延迟应该来自电流驱动和电机惯性等 

    trace-error2.png  

------------------------

想了一天这个延迟的1ms 其实这个对整个系统影响还是颇大的 也是动态跟踪误差最大的原因

整个系统有许多延迟因素 

  1. 算出下一步 到实际执行时间 我这里主频48MHz PWM是10位  这里有21.3us (但是两次才处理一步 所以上图X坐标单位是42.6us)

  2. MT6701有5us延迟 加上读取它的指令 一共大概需要10us

  3. PWM模拟DAC的2阶低通滤波带来的延时, 分别是1kOhm 47nF, 2.2kOhm 22nF

  4. A4950驱动的延迟 其死区时间25us 

  5. 电机电感带来的电流延迟 实测所用42电机 相电阻13.5欧 电感20mH (这个电机太老了 相电阻和电感都偏大啊)

  6. 电机转动惯量带来的延迟 其转子称量133g 直径26mm 推算转动惯量约11u kg·m^2 根据长度查表 额定电流应该是1.2A  推测最大静扭矩应该是0.3N·m

这么多因素 颇难计算 只能仿真 尤其是3,5,6项

  1. PWM低通传递函数 公式蛮烦 应该是 $\frac{1} {1+sR_2C_2+sR_1C_2+sR_1C_1+s^2R_1R_2C_1C_2} = \frac{1} {1+117*10^{-6}s+2274.8*10^{-12}s^2} $

  2. 电机电气部分传递函数 忽略初始项 为 $\frac 1 {sL+R} = \frac 1 {0.02s+13.5} $

  3. 电机机械部分 忽略磁链夹角影响和初始项 为 $ \frac {T_m} {I_mJs^2} = \frac 1 {0.000044s^2} $

仿真结果如下

trace-error4.png

实际上我的驱动算法 在上上图中 55*42.6us前 是全力加速的 而仿真没有包括其收敛定位过程 因此只对前2.34ms进行仿真 仿真表明 此时角度变化到0.033弧度 对应步数是0.033/6.28*3200=17步 与上上图数据基本吻合

此外 也可以到结论 PWM低通影响较小 电机电感影响较大 但是惯性滞回的影响是最大的

不过仅此 也无法完全解释前期有28*42.6us=1.2ms的平台一般的滞后 传感器就算按12位算 精度也有0.0015弧度 由仿真看 在1.2ms处 应该也有0.003弧度(约1.5步)了 

考虑到电机和PWM低通都是无感的设备 A4900的原理也简单 我怀疑传感器实则有数百微秒的延迟 即使MT6701在相位域上甚至可以设置为超前 但是时域上仍然可能有延迟的 .... 但我没有证据 也没有个光编进行同步对比

如果是传感器的延迟 假如有500us延迟 按RS485 250kbps 步进脉冲等于25kHz 500us就有12步的偏差 与测试结果符合了 这时候开环其实是紧咬住没有偏差的 只是我的测量有所延迟 

但是这对PID算法是糟糕的 我实际上已经有所初步测试 因为PID完全依赖传感器定位 初步测试结果是咬合很好 偏差在0上下轻微波动  如果传感器是延后的 这意味着 实际上 咬合是超前的 

正好 还是超前 这是个问题 也影响算法优化的方向 ..... 

---------------------------------------------

吃完饭继续研究 我做了个测试 以1/8满电流先开始驱动电机 等待一段时间稳定后 进行步进 采集位置信息 ... 结果比我想的还要糟糕 只能说MT6701的动态响应 真不值得

trace-error5.png

由数据可以看出 MT6701真有较大的延迟

首先逻辑上 先从MT6701的曲线可以判断 步进确实存在 虽然物理上的波形是否与驱动一致无法证明 但是其幅度是存在的 其变化转折点也是存在的 至少物理上不会落后与磁滞为0的传感器的转折点

从图(上)可以看出 当以23kHz左右步进 方向进行改变时候 即使磁滞设为0 MT6701也完全来不及响应 而这种改变其实并不算激烈 每次只是常规的16细分的1个微步

从图(下)可以看出 当以2.3kHz左右步进 MT6701勉强能够进行跟踪 磁滞为0时候 延迟有1ms左右 磁滞为4(我在用的 这个设置下没有超前的相位补偿) 的时候 延迟达到了3ms 而且波形与驱动相差太远 静态的精度掩盖不了动态的变形

前面测试时候 遇到的延迟是500us-1ms左右 比这次测试要小  可能的原因是 前面测试启动阶段是以阶跃式最大出力驱动电机 而这次测试虽然变换频繁 但是出力不大 电机速度其实是要小很多的

AS5600的手册有详细的响应时间 比如采样周期150us 建立时间从0.29ms到2.2ms可调 但是MT6701只有一个匀速时候延迟5us 其他避而不谈 但是从这次测试结果看 我感觉它的建立时间 也应该有2-3ms 看来它也并没有特殊的黑科

但是如果采用AS5600的话 需要将处理周期从20kHz降到几kHz 而且I2C本身也比较慢 ... 但是换句话说 MT6701的SSI虽然快 但是我也怀疑它的采样周期并不高 我得到的只是其数字滤波器上的余响 动态上基本上都没法得到高的精度 远不如开环稳定准确

--------------------------------------

换个波形再测试一次 这回发现 HYST为0LSB时候 DC响应居然有这么大偏差的证据了 我虽然想用 但是 DC响应真的很难校正啊 而且有时候波形还不是这个样子的 说实在真的很不喜欢厂家自作主张 使用一些奇怪的 不可控的 严重非线性的算法呢 如果真是裸数据 我想我都不会那么头疼

trace-error6.png

因为算法采用了延时补偿机制 使用了测量的延时参数 而不是厂家给的所谓5us 哪怕使用300us延时 性能也大幅度提升了 最高转速达到28.5圈每秒


VID_20231123_210611.mp4 点击下载

 对于50极电机而言 等于1.4kHz 而我采样处理频率才23kHz 虽然目前感觉控制干净利落没有问题 但是按一般至少20倍处理频率的准则  (实际测试 降采样频率降到16kHz后 出现不稳定问题) 

我决定对性能重新规划 既然传感器延迟那么大 采用太高处理频率不合称 于是处理频率降到16kHz 以容纳更多算法处理的余地 (实际上 我里面会同时放几种算法以供选择  是各有所长的) 其次是加上限速算法 限制在每秒16圈左右

重新测量其性能

  1. 稳定性:稳定  手动加乱力负载 没有抖动震荡

  2. 计算负担(主循环速度): 空闲时 94次/ms 算法启动后 59次/ms 加上RS485满速率工作 48次/ms ( 应该这时候大概50%)

  3. 最大转速 实测每秒17圈

  4. 跟踪测试和台阶测试如下图 相比之前 主要是驱动速度加快了 (毕竟这时候预测准确了)

trace-error7.png


文号 / 927155

百炼成钢
名片发私信
学术分 1
总主题 48 帖总回复 806 楼拥有证书:进士 学者 机友
注册于 2020-01-22 18:44最后登录 2024-05-08 20:19
主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:上海

个人简介

个人开源项目: m24h.github.io

文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

插入资源
全部
图片
视频
音频
附件
全部
未使用
已使用
正在上传
空空如也~
上传中..{{f.progress}}%
处理中..
上传失败,点击重试
等待中...
{{f.name}}
空空如也~
(视频){{r.oname}}
{{selectedResourcesId.indexOf(r.rid) + 1}}
处理中..
处理失败
插入表情
我的表情
共享表情
Emoji
上传
注意事项
最大尺寸100px,超过会被压缩。为保证效果,建议上传前自行处理。
建议上传自己DIY的表情,严禁上传侵权内容。
点击重试等待上传{{s.progress}}%处理中...已上传,正在处理中
空空如也~
处理中...
处理失败
加载中...
草稿箱
加载中...
此处只插入正文,如果要使用草稿中的其余内容,请点击继续创作。
{{fromNow(d.toc)}}
{{getDraftInfo(d)}}
标题:{{d.t}}
内容:{{d.c}}
继续创作
删除插入插入
插入公式
评论控制
加载中...
文号:{{pid}}
加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}
ID: {{user.uid}}