TI教室 >
应用与设计 >
工业应用 >
工厂自动化与控制系统 >
Automated Machinery >
TI-RSLK 模块 15 - 数据采集系统 > 讲座视频 - 数据采集系统 - 性能测量
- 本课程为精品课,您可以登录eeworld继续观看:
- 讲座视频 - 数据采集系统 - 性能测量
- 登录
- 课程目录
- 相关资源
- 课程笔记
大家好,我是 Jon Valvano。
在本视频中,让我们继续
讨论数据采集系统。
在前一个视频中,我们讨论了模数
转换器并使用定时器 --
systic 或 定时器 A --
以固定频率引发采样。
该过程生成了数字数据,
用于表示我们的模拟输入。
但在本视频中,我们将讨论
该数据采集系统如何处理
误差或噪声。
因此,我们将回顾奈奎斯特定理。
我们将讨论我们如何在理论上确定
将产生多大的噪声。
此外,我们将讨论用于消除该噪声的
解决方案。
提醒一下,本章的目标
是测量机器人与墙之间的距离。
那么,让我们从奈奎斯特定理开始。
奈奎斯特定理指出,如果我以 2,000Hz 的频率,即每秒 2,000 次进行采样,
奈奎斯特定理指出,如果我以 2,000Hz 的频率,即每秒 2,000 次进行采样,
奈奎斯特定理指出,如果我以 2,000Hz 的频率,即每秒 2,000 次进行采样,
那么所有介于 0 和 1/2 fs 之间的信号 --
那么所有介于 0 和 1/2 fs 之间的信号 --
在本例中为 1,000Hz --
都可以正确被采样。
它们会被正确地表示为
一个数字序列。
相反,任何大于或等于
1/2 fs 的信号,换句话说,
任何大于 1,000Hz 的信号,
都将产生称为混叠的误差或错误。
混叠意味着,信号本身
将下降并被伪装成位于
0 至 1/2 fs 范围之内的信号。
如果处理不当,这将是一个明显的误差。
因此混叠是一个误差源。
我们对它的处理方法是,
我们将利用频谱分析仪。
我们可以通过频谱分析仪
在频域中查看我们的信号,
从而看到该错误。
它就像一个示波器。
您先连接它,然后进行测量,
它会获取一组样本。
但它接下来会为您提供
该信号的振幅 --
通常是以分贝为单位,
我们将在下一张幻灯片中看到它 --
它是频率的函数。
现在,我们将在该频谱上画一条线,
就在这里,1/2 fs,在本例中为 1,000Hz。
对于低于 1,000 赫兹的信号,
我们将对结果感到满意,
因为它们将被正确表示。
另一方面,处于该范围之外,
即超过 1/2 fs 的信号将会混叠。
因此,处于这里的所有这些能量,所有这些数据,
都将下降并导致误差。
现在,我们的系统存在某种限制,
因此,无论何时我们执行该操作,都将存在一个阈值,
这样一来,如果振幅小于某个特定的值 --
您知道,例如对于 MSP432,
它是 3.3V 范围除以 14 位精度。
因此我们知道,任何小于该值的信号
都无法被检测到。
因此,无论信号是小于还是大于 1/2 fs,
都没有关系。
这些具有微小振幅的信号
不会在我们的数字信号中得到表示。
现在,让我们以两种方式来研究噪声。
首先以固定或静态方式来看。
首先以固定或静态方式来看。
在这里我要做的是,拿起我的机器人,
把它靠墙放置,
然后设置距离为 P1,
这是到墙的距离。
那么,这将是距离 P1,以毫米为单位。
然后,我将不断地重复该过程 --
100 次,1,000 次,很多次。
然后对于每个测量结果,
我将计算获得它的次数。
那么,我可能获得这个特定的值 20 次,
我可能获得另外一个值 19 次,
然后,我可能获得这里的值 0 次。
那么,我要把它加起来。
现在,很显然,所有这些数字的和是
100,因为我执行了 100 次。
一旦我这么做,我就会获得一个称为
概率质量函数的东西,它是每个
测量值被测到的次数。
如果它非常完美,我对它进行了 100 次测量,
如果它非常完美,我对它进行了 100 次测量,
那么我每次都会得到相同的值。
我们可以在这里看到,如果
我计算该数据集的平均值和标准差,
那么平均值是信号的替代量,
数据集的标准差
是噪声的替代量或估算值。
因此,如果我将平均值与标准差
进行比较,我会在本质上了解到
信号和噪声是否具有
相同的大小。
事实上,针对这个概念有一个专有名词,
它是噪声与信号的比值,
称为变异系数,它是这里的噪声
除以信号。
现在,我对信号与噪声的比值感兴趣,
因此我将计算另一个比率,
这将为我提供信号的
振幅与噪声的比率。
再说一次,这个 μ 与信号的比值。
现在,如果我对它取以 2 为底的对数,
我将得到与噪声相关联的
等效位数。
这将展示噪声是如何降低的。
我是从 14 位转换器开始的。
现在,我对我获得了多大的噪声感兴趣,
我可以看到我还剩多少位。
我可以对该固定的静态测量值执行的
另一项操作是,我可以将该距离
增加到另一个距离 P2 并重复同样的过程。
我将再将它执行 100 次。
我将查看新的分布,
我在该变化中获得的新的概率质量函数。
分辨率的定义是,
如果我更改信号输入 --
更改该大小,以毫米为单位 --我的系统可以检测到它。
因此,如果这两个概率质量函数
在统计学上彼此不同,
我这里的分辨率应小于或
等于该差值,即 P2 减去 P1。
这就是分辨率的固有定义,
也就是说,如果我将我的输入增加一定的量,
我的系统将能够分辨该变化。
这是分辨率的定义。
这就是我使用概率质量函数
实际测量分辨率的方法。
这就是固定或静态方法,使用统计数据
来查看噪声。
让我们来讨论我们将在实验中使用的传感器。
输入是距离,
输出是电压。
传感器发出一些光,
然后它测量一些反射回来的光。
接着它将所有这些转换成距离。
对于该传感器,我们可以看到两个问题。
那么,在这里,我们有距离,
这是我的机器人上的实际实验数据,
这是传感器与墙之间的距离。
这是电压的输出,即传感器的输出,
0 至 3V。
我的第一个问题称为非单调性。162如果我碰巧通过我的传感器
测量到 2V,那么实际上
有两种可能。
它可能是 40 毫米,
或者它可能是 140 毫米。
我不知道它的具体值,
它不是唯一的。
这就是非单调的含义。
它先上升,然后又下降。
我们的处理方法是,
我们将限制范围。
我们将在这里选择一个数字,无论是 80 还是 100,都可以。
然后我们要说,嘿,Jon,不要撞到墙。
因此,我们决不会
使传感器与墙之间的距离
小于 100 毫米。
然后,我们还将有最大距离。
如果我限制该范围的输入,
那么它在该范围内是单调的。
这里另一个问题是双曲线,它是非线性的。
我们将在软件中解决该问题。
这实际上不会是一个大问题。
第三个问题,您在这里看不到,
是它具有非常非常大的噪声。
我们查看了概率质量函数,
以从固定或静态的观点
来查看噪声。
现在这是噪声的动态测量。
我们用频谱分析仪测量振幅 --
这是以 dB 表示的振幅 --
它是频率的函数。
我们可以看到大量的噪声。
现在,该分贝量程的定义
在这里。
因此,这里的信号振幅
是如此之大,以至于它相当于
90 毫伏的噪声。
如果我们再次计算我们的信噪比,我们
将信号 --
该 3V -- 除以噪声,
即 90 毫伏,我们可以看到该比率是 37。
这相当于介于 5 位和 6 位之间的
信息。
最初,我们的转换器是 14 位,
现在不知为什么,它的噪声是如此之大,以至于我们在噪声中丢失了 8 个位。
这是一个大问题。
如果您想知道噪声来自哪里,
这个可选的光学传感器,
它会对光子进行处理。
现在,我们不想用液氮中给他降温,
现在,我们不想用液氮中给他降温,
我们只是需要对它进行过滤波。
但是,如果您想查明该噪声来自哪里,
它实际上是传感器自身中
产生的复合噪声。
可以发现该噪声是周期性的。
您可以看到频率为 1KHz、2KHz、3KHz、
4KHz、5KHz 等的高频分量。
这里还有白噪声。
该宽带噪声是白噪声。
但您可以看到,
白噪声远小于该复合噪声。
对您而言,这意味着我们必须除去该噪声。
我要向您展示两种实现它的方法。
我们将向您展示一种使用模拟滤波器的方法,
然后我将向您展示一种使用数字滤波器的方法。
这种方法的要点是,如果您有一个频谱分析仪,
那么把它连接到这些传感器。
您将看到它的噪声有多大。
即使您没有频谱分析仪,
它仍然有很大的噪声,我们必须对它进行滤波。
我们使用了概率质量函数
作为信噪比的静态测量方法。
那么,我现在将向您展示一些来自
模数转换器的实际数据。
这不是传感器。
这只是具有恒定输入的
模数转换器。
让我们重点看看这里,红色的这个,N 等于 1。
那么,这是一个概率质量函数,
因此我有一个恒定输入。
然后,我所做的是,我测量它 -- 我这次
测量了 1,000 次,而不是 100 次。
我测量了 1,000 次,然后我测量了
我得到它的次数。
您将注意到我在这里得到了数字。
以中间某个值为基准,范围为 20 --
换句话说,加 10 或减
10 -- 的 ADC 值。
这是模数转换器中的噪声。
现在,我可以做的是,使用称为中心极限
定理的著名定理,该定理指出,随着我把我的数据累加在一起,
如果我获取我的数据并把它们累加在一起,我将得到多个样本。
随着我将越来越多的独立且
随机的数据累加在一起,随着 N 逐渐变大,这个东西
将变为高斯分布
或正态分布。
因为您应该注意到,该形状完全不是高斯分布。
它上升又下降,上升又下降。
它变为高斯分布或正态分布,该概率
质量函数的形状。
您实际上可以看到它。
因此随着我变得越来越大,一直到
N 等于 32,您可以看到
该分布变得多么平滑,多么漂亮。
我们在这里看到发生了另外一件事,因为我实际上
没有对它们求和。
我所做的是,我求出了它们的平均值,我计算
出了 i 等于 1 至 N 时的和。然后我把它除以 N 以得到平均值。
然后这个,我们将看到,随着我计算数据的平均值,
随着 N 增大 --
随着 N 增大,Σ,即噪声,将减小。
您现在在这里看到,噪声逐渐变得平滑。
在我们的数字滤波器设计过程中,这将启发我们。
因此,我们将使用求平均值的过程
来创建我们的模拟滤波器和数字滤波器。
由于中心极限定理的启发,
我们可以通过求平均值
来提高信噪比。
那么让我们从模拟滤波器开始。
这里滤波器是一个
每秒使 1 弧度通过的滤波器。
如果您希望了解数字和模拟滤波器,
那么您可以访问 TI 的网站并查看 WEBENCH。
但是,如果您不想访问 TI 的网站,
那么您可以使用该模板。
它是一个双极巴特沃斯型低通滤波器,
设计步骤非常简单。
如果我选择 50Hz 的截止频率,换句话说,
它将使 0 至 50Hz 的频率通过,
并且它将抑制比这更高的频率。
那么,这是增益与频率的关系。
如果您想了解的话,有它的实际公式。
这是该波形的图。
有增益,有频率响应。
它在 50Hz 时的增益为 1 除以
2 的平方根。
因此,我要做的是,
为了得到这个滤波器,我要将这里的数字,
把它除以 2π 乘以 50。
我将把那个电容值除以 2π 乘以 50。
再把另一个电容值除以 2π 乘以 50。
当我这么做时,对于这个我将得到 0.45,
另一个得到 0.225。
我无法找到该精确值的电容,因此我将挑选一个数字 x,
我要把所有电阻值乘以 x,
将所有电容值除以同样的 x,
我将得到同样的滤波器。
那么,我将调节这里,
并联两个 0.22 微法电容使之成为 0.44 微法,
在这里使用一个 0.22 微法电容。
现在我可以说,嘿,Jon,我刚才创建的这个滤波器
实际是 51Hz。
这已经足够好了。
那么,这个滤波器将使 0 至 50Hz 的频率通过,
并且抑制我们在频谱分析仪上看到的高于
50 赫兹的所有信号。
如果您不想构建模拟电路,
那么您可以使用数字滤波器来执行。
我们将使用一个平均值滤波器,
这是一个非常简单的平均值滤波器。
我将对最后四个数据点求平均值。
我将取最后 4 个 ADC 样本并对它们
一起求平均值。
因此 x0 将是那里的电流样本。
x1 是前一个样本,x2 是它前面的一个样本。
X3 是三次以前的样本。
我将对它们全部一起求平均值,
并除以我累加在一起的数量。
这将是一个平均值滤波器。
它将具有低通特性。
现在,事实证明它不是一个极低通滤波器,
因此我必须使 N 更大。
因此我选择 N 等于 64。
我选择采样率为 2,000。
结果我得到的是一个 16Hz
低通滤波器,这样将会使 0 至 16Hz 的距离数据通过。
高于 16Hz 的噪声将受到抑制。
那么,这是一个线性滤波器,因为这是
一个线性方程。
它具有低通特性。
这个滤波器没有消除混叠,
但它确实消除了所有这些其他噪声。
对于任何类型的滤波器,无论它
是模拟滤波器还是数字滤波器,
问题在于我们需要面临这种
在噪声和速度之间的基本折衷。
我们将在这里,在这个具有 64 个添加元素
的模拟滤波器的该阶跃响应中看到
这一点。
那么,如果输入发生变化,
这是滤波器的输出,
事实证明,一旦我更改输入,
大约 30 毫秒的时间
输出才能稳定。
或者,如果我定义该滤波器的时间常数,
需要 20 毫秒。
稳定到 0.63 所需的时间大约为 20 毫秒。
因此,该滤波器确实会导致
噪声减小或信噪比增大,
但它是以牺牲速度为代价的。
换句话说,您的传感器无法很快地看到它。
因此,这将使您的机器人在根本上
需要更慢地运行,以便它具有高精度。
这是我们将面临的
在噪声和速度之间的标准折衷。
提醒您一下,在这个实验中,这里有两个距离,
一个是传感器与墙之间的距离。
另一个是机器人中心与墙之间的距离。
哪一侧是左侧或右侧取决于
您查看的是机器人的顶部
还是机器人的底部。
但是,您将测量左侧、右侧和中间。
我们将使用双曲线校准系数
来处理双曲线特性,
我们将在这里添加该另一个校准值
来处理这里的偏移。
因此,您将校准这三个数字,
A、B 和 C 是您的机器人和传感器的
校准常数。
说到校准,校准意味着您采用
实际值 x -- 现在这是传感器
与墙之间的距离 --
来自模数转换器的采样值。
然后您把它放到这里的曲线中,
从而获取双曲线响应。
您可以看到,在该 80 至 400 毫米的范围内,
这两个校准系数可以使该系统相当符合双曲线函数,
即很好地与该 1/x 相关联。
然后,您添加第三个校准系数,
它是传感器与您的机器人中心点
之间的距离。
总之,我们讨论了有关噪声的所有
不同问题。
我们把它作为概率质量函数进行了研究,
这启发我们采用求平均值的方法,
这样可以提高信噪比,
我们使用频谱分析仪动态地查看了它。
最后,您将要做的一件事是
计算精度,它等于
真实值减去测量值。
如果您除以满量程,
这称为满量程精度。
这里的 100 意味着它是满量程百分比精度。
希望您喜欢本次实验。
本节有很多内容,因此您需要非常
努力地学习。
但一旦您掌握了这个过程,
可以解决嵌入式系统中的很多问题。
课程介绍
共计3课时,46分14秒
猜你喜欢
换一换
推荐帖子
- beaglebone学习分享交流
- 小弟写了一些blog文章,比较适合像我一样刚入门的兄弟参考,以下是相关标题,欢迎大家讨论学习,共同升级。为beaglebone配置开发环境:http://lingavin.com/post-31.html为beaglebone编译u-boot和MLO:http://lingavin.com/post-32.html为beaglebone编译kernel:http://lingavin.com/po...
- victorlinwen DSP 与 ARM 处理器
- 【TI首届低功耗设计大赛】MSP430FR5969 人体心电采集实物图
- 本帖最后由 Mandy 于 2015-1-2 11:27 编辑 最近这段时间比较忙,又是画板子,又是调电路写程序,幸好这一路过来都比较顺利,板子和程序已搞定,TI低功耗设计项目即将完成,就差整理资料了 ...
- Mandy 微控制器 MCU
- 移动电源设计中的安全考虑
- 在错误的条件下使用错误的电池会造成故障和爆炸。仔细的设计就会避免电池破裂和爆炸等意外,减少有害的电化学反应和失误带来的风险。 锂离子电池具有很多优于其他可充电电池的特性,包括高能量密度、重量轻、生命周期长、容量保持特性好、环境温度适应范围大和电流忍耐能力强,等等。锂离子电池对环境的适应能力比其他化学电池要强,但是大容量的特点则意味着电池组必须要...
- qwqwqw2088 模拟与混合信号
- 本周精彩博文分享
- 删除UI,使用TI Zigbee 3.0协议栈快速进入产品开发模式 大家好,最近收到很多用户的反馈,在学习使用TI的Zigbee 3.0协议栈Z-Stack 3.0.1过程中,需要花较长的时间来了解和熟悉协议栈例程中UI的操作,而这个UI在将来的实际产品中,又不会使用到,反而给Zigbee 3.0的学习和入门增加的难度。〉〉〉点击查看详情 BQ40Z50R1 SOC跳变问题 ...
- 橙色凯 模拟与混合信号