TDR也就是时域反射(Time-domain reflectometer),它可以通过观察导线中反射回来的电信号波形对导线长度进行测量,或者对传输导线的阻抗特性进行分析评估。

我们经常会碰到的TDR的典型应用一种是检测地下铺设的电缆的故障点位置,还有就是PCB高速信号走线的阻抗匹配分析。我们使用LOTO示波器的OSCH02型号,利用一些简单的随手可以找到的材料,测试一下电线的长度,演示一下TDR的原理和实测效果,以便大家直观理解。

就像一条水渠,如果充足的一股水流突然从水渠的入口涌进来,水波沿着水渠向前传播,当传到水渠的尽头没有渠道可以继续前行的话,会激起一个反弹的水波,又沿着水渠原路反向传回来。我们在水渠的开头会检测到这个回波。从水流涌入水渠入口,到水渠入口检测到反弹的回波,这个时间差乘以水流速度就是渠道长度的2倍。电信号在导体中传播是类似的道理。

如图所示,我们先不接被测线缆,直接测一个陡峭的上升沿信号,会在示波器上得到一个简单的上升沿波形。图中我们用的是一个400K的方波信号,这个边沿不是特别陡峭,不过还可以,也是我这边最方便得到的一个阶跃上升沿。真正要做专业点的TDR测试,是需要用更陡峭的边沿的,至少使用快速阶跃二极管做一个陡峭边沿。

我们把被测电线接上去对比下波形。我们找到了一段电线,里面有黑红绿白4芯,整体长5.86米。

我们把导线俩俩串联起来,这样就相当于11.92米的传输线长度,我们把线接入BNC转接头,直接连接到信号源端,同时示波器也并联上来。

我们来看下整体的接线情况:

我们会看到,这样接了传输导线后,原来简单的上升沿变成了阶梯状:

图中垂直光标a处是上升沿信号从传输线一端加入时,示波器测到的,垂直光标b处是信号从传输线尽头反弹回来后在示波器端测到的,所以ab之间的时间差,就是电信号跑完传输线一个来回的时间。

测得这个时间差是133ns左右。电信号在导体介质中的理论传播速度是光速。实际上不同的绞线方式和绝缘介质,会有不同的系数,并不真正达到光速。比如双绞线,平行线,同轴线,都会不同,一般系数是0.6到0.9之间。我并不知道我手里这根线的具体材质和系数,只能大概预估一下。这个线材比较便宜,质量一般,所以传输损耗应该属于比较大的一类,因此取比较低的系数0.6。

传输线的长度= (133ns* 30 0000千米/秒*0.6)/2 = 11.97米。跟我们事先手动测量的11.92米非常接近。我们目前使用的是250M采样率,所以测量的分辨率大概是4ns左右。采样率越高,时间差的测量分辨率越高。在测量公里级的真正电缆故障点的时候,其实由于反弹回来的信号边沿时间更长,也可以使用小一点的采样率。

也有其他示波器的小伙伴测出了类似结果:

这就是简单的TDR应用案例。在铺设电缆出线故障的时候,也就是利用这个案例的原理,在电缆的一段输入阶跃边沿信号,检测回波的时间差从而算出反射点到输入端的距离,于是就知道了电缆故障点的具体位置了。要做到更专业的TDR,我们需要更陡峭的上升边沿信号作为激励,也需要更高的采样率提高精度,本文只是抛砖引玉给大家直观展示,大家可以自行研究尝试。

如何用LOTO示波器TDR方法测试电线长度?的更多相关文章

  1. 如何用LOTO示波器安全的测量高电压?

    本文里我们把几十伏以上,超出对人体安全电压或者超出示波器量程的电压定为高电压,以220V市电举例讨论. 示波器上是有方便自测和探头补偿用的标准方波的,一般是1K Hz.我们的USB示波器上也有这个标准 ...

  2. 如何用TDR来测试PCB板的线路阻抗

    隔壁小王已经讲了TDR的原理以及如何确定TDR的分辨率.那么,我们要正确测量PCB板上的线路阻抗,还有哪些需要注意的地方呢? 1. 阻抗测试的行业标准 之前贴过好多张阻抗测试的图片,重新再贴一张给大家 ...

  3. loto示波器实践——超声波测距模块

    我们这里用到的超声波测距模块,一般是用于arduino智能小车自动避障的.经常见到的应用是使用单片机或者stm32和这种模块结合进行开发的. 我们使用LOTO示波器可以更直观和快速的看到超声波测量距离 ...

  4. LOTO示波器汽修专用款选型指南

    LOTO示波器汽修专用款选型指南 LOTO各种型号的示波器其实都可以用作汽车传感器信号波形的检测.汽修应用中,工程师对示波器的性能要求对于LOTO产品来说不算高. 在我们销售和技术支持的积累过程中,我 ...

  5. 七中滤波方法测试matlab实现

    http://blog.163.com/xiaheng0804@126/blog/static/1205282120132129471816/ 创建两个混合信号,便于更好测试滤波器效果.同时用七中滤波 ...

  6. JavaScript回调函数及数组方法测试

    JavaScript回调函数及数组方法测试 具体代码如下: <!DOCTYPE html> <html lang="en"> <head> &l ...

  7. 【转】Unity3D Transform中有关旋转的属性和方法测试

    Transform有关旋转个属性和方法测试 一,属性 1,var eulerAngles : Vector3 public float yRotation = 5.0F; void Update()  ...

  8. mybatis-使用junit测试与main方法测试结果不一致问题

    今天使用ieda写mybatis程序感觉太不友好了,而且也没找到问题所在.问题:写的user.xml中的语句与输出的语句不一样.尝试了各种办法都没有解决. mybatis配置的使用的查询实体.xml ...

  9. ES5新增数组方法测试和字符串常见API测试

    首先是ES5新增数组方法测试: <!DOCTYPE html><html lang="en"><head> <meta charset=& ...

随机推荐

  1. 题解 CF1119H Tripe题解

    题目传送门 题目大意 给出\(n,t,x,y,z\),值域\(\le 2^t\),给出\(n\)个三元组\((a_i,b_i,c_i)\),表示有\(x\)个\(a_i\),\(y\)个\(b_i\) ...

  2. Pytorch 实现简单线性回归

    Pytorch 实现简单线性回归 问题描述: 使用 pytorch 实现一个简单的线性回归. 受教育年薪与收入数据集 单变量线性回归 单变量线性回归算法(比如,$x$ 代表学历,$f(x)$ 代表收入 ...

  3. git 更新与图形界面

    git 软件更新:git update-git-for-windows 或者 git update gitk 是一个历史记录的图形化查看器. 使用:只需 cd 到一个 Git 仓库,然后键入:gitk ...

  4. Spark分区器浅析

    分区器作用:决定该数据在哪个分区 概览: 仅仅只有pairRDD才可能持有分区器,普通RDD的分区器为None 在分区器为None时RDD分区一般继承至父RDD分区 初始RDD分区数: 由集合创建,R ...

  5. vue3.x自定义组件双向数据绑定v-model

    vue2.x 语法 在 2.x 中,在组件上使用 v-model 相当于绑定 value prop 并触发 input 事件: <ChildComponent v-model="pag ...

  6. Noip模拟66 2021.10.2

    T1 接力比赛 思路就是直接做背包$dp$,然后看看容量相同的相加的最大值. 考虑如何在$dp$过程中进行优化 注意到转移方程的第二维枚举容量没有必要从容量总和开始枚举 那么我们便转移边统计前缀和,从 ...

  7. openmp学习心得(二)----常见的运行时库函数

    omp_set_dynamic();如果设置了动态调整,并行区域会根据系统的资源状况,动态分配线程的数量.好像仅仅有0和非0的区别,设置为0不进行动态分配. omp_get_num_threads,o ...

  8. C++的指针使用心得

    使用C++有一段时间了,C++的手动内存管理缺失很麻烦,一不小心容易产生内存泄漏.自己总结了一点使用原则(不一定对),备注一下,避免忘记. 1.类外部传来的指针不处理 2.Qt对象管理的内存不处理 3 ...

  9. 攻防世界 web3.backup

    如果网站存在备份文件,常见的备份文件后缀名有:.git ..svn..swp..~..bak..bash_history..bkf尝试在URL后面,依次输入常见的文件备份扩展名. ip/index.p ...

  10. 21.10.12 test

    题目 **WOJ5110 ** 到 WOJ5113 校内自测没开捆绑,于是输出 -1 和 n! 的程序拿到了高分,我的得分也比期望得分略有提升 T1 problem a \(\color{red}{2 ...