实习记录(五):提高同步板精度

提高同步板精度

2020.08.10~2020.08.14

1.任务

同步板方波的精度提升到误差100us以内

2.环境 & 工具

ubuntu16.04
ROS kinetic
cutecom
Windows
keil
STM32CubeMX
FluMcu

3.准备工作

猜想+测试验证
在各种情况,从各种方面考虑测试了几页的数据,再加上查板子的资料仔细看了相关部分
终于明晰了逻辑:

  1. 原代码是每十个方波校正一次。
  2. 同步板的主频上限是72MHz,但原代码只用了32MHz。
  3. 测试可知,预分频越大,误差越大;计数周期越大,误差越小。
  4. 预分频、计数周期都是用 16 位寄存器,即最大值不超过 65536 。
  5. 定时器运行周期 = 预分频 * 计数周期 / 主频,我们期望它是 1s 。
4.修改方案
  1. 修改校正变量,每捕捉到一个方波都校正一次。
  2. CPU运行频率从本来的32MHz拉到最高的72MHz。
  3. 定时器通道计数周期从10000提升到64000,预分频设置为1125。
5.结果
  • 同步板的PPS误差从166us提升到65us
  • 公司里精度最高的雷达也可以同步了

结语:
分析逻辑一定是建立在足够的测试上的,测得够多,就越清晰。看代码仅仅只能提供猜测的思路。
硬件问题一定一定要首先排除,不然又会瞎忙半天。
交报告的时候把测试记录直接交上去了,直接被打回来,看来写报告还是要先定目录,再有条理的写,测试记录中很多验证与分析的过程都不需要在报告里,听报告的人只关心方法与结论。
同步板的代码是不可能贴的,这辈子都不可能贴,贴了人就没啦,只能记一下思路罢了。

注:本文为自用实习记录

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值