基于CTMU的精确激光测距方案设计
3 设计方案性能分析
3.1 提高分时间辨率的方法
提高分时间辨率的方法包括:降低A/D转换VREF;使用内部CTMU通道(无外部引脚连接);使用外部高分辨率ADC。
3.2 动态范围注意事项
为了维持恒流,CTMU电流源需要一个很小的电压开销通常为VDD-0.5 V,如图5所示。
为了维持恒流,CTMU电流源需要一个很小的电压开销,通常为VDD-0.5 V=2.8 V。将动态范围限制为ADC输入范围的85%,即2.8 V,或使用外部参考电压VREF=2.5 V,这将允许100%的ADC输入范围。CTMU电压开销示意图如图5所示。
3.3 CTMU精度
根据设计,校准之后CTMU电流源的精度为1%。
假设:I=55μA,C=CAD+CPIN+CSTRAY=15 pF,A/D转换VREF=外部2.5 V,动态范围T=(15 pF/55μA)×2.5 V=682 ns,则线性工作范围内的精度为1%×682 ns=6.8 ns。
3.4 测量长时间的方法
通常的方法是增大电容和降低电流,在两种情况下,电容C的充电时间都会变长,延长了时间测量的周期,但是,这两种方法都会降低分辨率。因此,我们使用粗粒度时间和细粒度时间组合的计算方法,就可以实现既扩大CTMU动态范围而又不损失分辨率。
将CTMU与输入捕捉(ICAP)、输出比较(OCMP)或Timer1组合使用。基于指令时钟周期TCY提供“粗粒度”的同步时间间隔(例如,对于PIC24 FJGA310,以16MIPS工作时,指令时钟周期为62.5 ns)。CTMU用于测量“细粒度”的异步时间间隔。
测量总时间=粗粒度时间+细粒度时间,CTMU和ICAP组合长时间测量示例图如图6所示。其中,TICAP=TCY×(8002-2)+(T1-T2)=500μs+(T1- T2)。
粗粒度测量的精度取决于晶振,晶振的精度一般为0.02%。细粒度测量500 ns范围内CTMU的精度为1%,即为1%×(0.500μs/500 μs)=0.001%,因此,总精度=粗粒度+细粒度=0.02%+0.001%=0.021%,由上可知测量时间的精度主要由晶振精度决定。
结语
本文基于PIC单片机的CTMU技术,提出了一种高精度测距的实现方法。该设计只要一片PIC单片机,无需复杂电路就可实现激光脉冲测距,简化了设计,提高了数据采集的精度,测程远,精度高,价格合理,操作简便,在实际测量中将发挥重要作用。随着汽车电子技术的发展,这种测量方法为汽车的自适应巡航控制(Adaptive Cruise Control,ACC)系统等应用提供了新的设计思路。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码