讲座视频 - 数据采集系统 - 理论

+荐课 提问/讨论 评论 收藏
  • 视频加载中。。。
大家好,我是 Jon Valvano。 在本视频中,我要讨论数据采集系统。 具体要做的是,我们要 对距离进行采样。 我们将采用一个称为红外线距离 传感器的传感器 来测量距离。 现在,这是许多嵌入式系统都执行的一项 很重要的任务。 那就是对相关领域的数据进行采样。 尤其是,我们将讨论如何 使用模数转换器 将模拟信号转换为数字信号。 然后,我们将讨论我们要 如何使用周期性计时器来影响 该距离信号定期采样。 那么,我们将以规定的频率 采集这条信息的样本。 这称为采样。 在整个模块中,我们都将讨论 采样意味着什么,我们的 限制是什么,我们的误差 是怎样的。 我们将讨论范围、分辨率、精度等。 在本视频的后半部分,我将向您展示 如何通过 MSP432进行实际操作。 让我们开始吧。 正如我说过的,一个系统可能是一组复杂的组件,它们全部用于实现 某个特定的目标。 在本课程中,很显然,机器人难题是我们的 系统。 为了解决该机器人难题, 我们要将各个方面或组件拼凑在一起, 以解决该问题。 很显然,我们必须知道规则是什么。 我要巡线吗,我要沿墙走吗? 我要比赛吗,我要进行迷宫探索吗? 那么,我们将讨论在该难题中规则 是什么。 我们需要一个传感器。 现在,我们已经见过两个。 一个是线传感器,另一个是碰撞传感器。 在本章中,我们将介绍另一种 传感器,它称为IR 距离传感器。 它的有趣之处 -- 嗯,它可以测量距离。 但有趣之处在于它具有很大的噪声。 这将为我们带来各种 问题,我们必须加以解决。 从大的方面来看, 一个复杂的系统包含机械和电气组件。 讨论模拟电路以及它们怎样发挥作用 是合适的。 这有些超出本次课程的范围。 但无需多说,在下一个视频中, 我将向您展示如何使用模拟低通滤波器 来消除噪声。 我们将在本章中向您展示的是, 如何使用模数转换器。 这是一种将来自外部世界的信号输入到 计算机中的方法。 在前一个模块中,我们讨论了数模 转换器。 在下一个模块中,我们将使用输入 捕获来测量轮子旋转的周期和 频率。 在上一章中,我们讨论了 如何将脉宽调制用作 到电机的输出。 那么,我们的这个系统组件用于将数据输入 或输出计算机。 现在,这一切都联系在一起, 这一切都通过软件联系在一起。 在本模块中,我们将讨论 采样和校准。 在下一个视频中,我们将介绍一种 数字滤波,它将在信噪比方面 为我们提供帮助。 在前面的模块中,我们讨论了如何 检测事件和作出决策。 在本模块以及在后续模块中, 我们将介绍控制系统 以及如何使用它来解决问题。 您应该还记得在第 11 章中,我们使用了液晶显示器 作为输出。 然后,在我们将这一切结合在一起之后, 我们又分析它的表现。 它沿着赛道行进的速度有多快? 我的信噪比有多大? 那么,我们对评估系统的运行效果 产生了兴趣。 这是一个控制系统。 它是一个机器人,因此我们要控制 速度、方向、到墙的距离,到线的距离,等等。 那么,我们要获取我们的物理设备, 它是我们的机器人。 在该特定的模块中,我们 将对作为我们参数的到墙的 距离产生兴趣。 但我们将使用该 IR 距离传感器 作为传感器。 它将为我提供 0至 3.3 伏的电压。 然后,我将使用模数转换器为我 提供一个数字数。 然后,我将使用软件将该数字数 转换为距离。 该特定的一章中的重点 是系统的这个部分。 现在,在后续章节中,我们 要通过电机驱动器的脉宽 调制器将这反馈到电机中, 从而解决我们的机器人难题。 但在本章中,我们将讨论它的数据 采集部分,以便我们可以测量 到墙的距离。 那么,让我们来讨论该采样过程。 那么,我们必须对近似做出 两个实际的限制,以便 将在时间和振幅上都连续的 量转换为离散的量。 它在时间和振幅上都是离散的。 这很显然 -- 我们实现了振幅近似。 那么,如果您使用模数转换器,就会 存在我可以测量的最小距离和最大 距离。 这是采样模数转换器的 限制。 因此,当我 -- 在这里的红色曲线上,我们可以讨论真实 或实际信号。 那么,这是那里的真实距离。 当我对它进行采样时,我必须选择这些线之一。 现在,对于 14 位转换器,我有很多线。 不过,我必须要选择这些 线之一。 尤其是,当我们使用传感器 设置它时,最小将是 100 毫米, 最大将是 800 毫米。 我们将使用 14 位模数转换器。 因此,将存在16,384 个不同的选项。 但它仍将是离散的。 那么我们可以讨论范围,也就是 最小值到最大值。 我们可以讨论分辨率, 它是我可以测量的最小差值。 我们可以讨论精度, 它是这些我必须从中进行选择的 离散值的个数。 当我们实际测量它时,我们现在会产生误差。 因为当我运行模数转换器时, 我不会得到真正的答案。 我会得到与它接近的结果。 第二件事与时间有关。 那么,如果我以 1Hz 的频率,即,每秒一次 -- 对它进行采样, 那么我不会获得所有信息。 看看这里发生了什么。 那里出现了一个小的凸起, 我甚至没有看到它。 那么,我必须再次选择 位于这些灰线交叉处的点。 我必须选择这些点,它们表示作为数组 存储在计算机中的数字值,这些值 在时间上是离散的,并且在振幅上也是离散的。 因此,该采样率将存在一个限制。 它称为奈奎斯特定理。 这意味着,如果我以 1Hz 的频率进行采样, 那么我可以表示0 至 1/2Hz 的信号。 我还有另外一个限制。 就像振幅一样,我有一个最小 时间和一个最大时间。 因此,如果我有一个缓冲区,例如大小为 1,000 -- 那么,如果我进行1,000 次测量,这还会 导致称为频率分辨率的限制, 即我可以解析的最小频率差值 是多少。 那么,为了确定该频率分辨率, 我将获取采样率, 然后把它除以数组中元素的个数。 这将决定我的频率分辨率。 总之,我们在振幅和 时间上都存在近似。 在振幅方面,它由14 位模数转换器 决定。 在时间方面,它在这里由我运行模数转换器的 采样率进行选择。 利用我们在前一个 模块中看到的数模转换器, 我们获取一个数字值,然后将它转换为模拟输出。 如果我们尝试生成某个输出的声音 或波形。 但在本章中,我们采用模拟作为输入, 并把它转换为数字输出。 这就是模数转换器的作用。 我们将使用它来测量距离。 在 MSP432 上,我们可以看到一些细节。 换句话说,在 MSP432 上,如果我把它的范围 设置成 3.3V,它将获得介于 0 和 3.3V 之间的某个电压, 然后把它转换为介于 0和 16,383 之间的某个数字。 该波形上将有16,000 个不同的点, 这决定了我的模数 转换器的精度。 16,000 个替代项是14 位的另一个名称。 实际上可以在 MSP432 上运行 24 个不同的引脚。 在本视频中,我们仅会在这里使用其中的一个引脚。 您将在实验中使用其中的三个引脚, 因为您将在机器人沿着 赛道赛跑时测量到机器人左侧的 距离、到机器人前部中央的距离、 到机器人右侧的距离。 我们可以查看理论 相关性或理论传递函数。 它将采用未知的模拟输入作为电压, 并根据该公式把它转换为 最接近的数字值。 那么,让我们向您展示一些细节。 我们将在该字段中设置一个 1 分频。 我们将设置 -- 这个,这里的这个是源。 这告诉我,我将执行软件启动。 这是我的软件模数转换启动, 它将在软件上启动转换。 还有另一个 1 分频。 就像我们曾执行的其他操作一样,我将 选择 2012MHz 系统模块时钟为模数 转换器进行计时。 这里是我的采样保持。 我要将这设置为 32 个脉冲。 将在采样周期中使用 32 个时钟周期。 让我们看看,我们将开启它。 显然,这是开启位。 这是我们将用于启动它的位, 因此我们将对该位进行写入,以启动它。 这是使能,然后我将 在那里启用它。 那么我们将看到它。 您希望从这张幻灯片获得的 -- 我还必须做另一件事,范围。 好的,这是单通道。 单通道是我们要在本视频中执行的模式。 我们将在实验中执行多通道模式。 这里还有另外一个,我们将选择范围。 不,这是下一个。 这里的重点是该时钟。 您应该注意到,我选择了一个时钟。 然后我选择了预分频。 这就是这个东西的运行速度。 然后我选择了 32 个时钟周期来执行该采样。 那么关于该寄存器的 重点是该速度与噪声或误差之比。 那么,如果我更快一些 -- 如果我更快一些,将会产生更大的噪声。 这种折衷是该过程所固有的。 那么,如果我要提高信噪比, 我将通过延长采样周期或以更慢的速度运行时钟 来降低它的速度。 如果您希望了解有关该过程以及 相关工作原理的更多信息,您可以 在 TI 网站上查看您的模数转换器的不同工作方式。 在本视频中,我们将设置地址。 我们将设置结果会去往何处。 再说一次,在本视频中, 我们将拥有一个地址。 然后在实验中,您将需要三个地址, 因为您将具有三个通道。 我们将使用一个14 位转换器来运行。 当我们开始运行时,我们将看到该转换 会在这里完成。 因此,这是我们在对模数转换器 进行采样时将看到的标志。 还有另一个寄存器。 在这里,我们要将基准设置为电源线。 那么,这将设置我们的范围。 然后,我们将在这里设置我们的通道。 再说一次,我们将在这里运行单通道模式。 再说一次,除非您打开数据表书, 否则您将无法把这弄清楚。 因此,我鼓励您逐行向下查看启动代码。 在数据表书中查阅这里的每个寄存器, 弄清这里的每个位为什么以相应的方式进行设置。 这样,当您在做实验时,您将能够根据需要修改 这些位,以解决您的问题。 在我们将它初始化之后-- 我们执行一次该操作 -- 如果我们希望转换它,我们将执行一个 包含四个步骤的过程。 我们将确保模数转换已就绪。 这是全局就绪。 您的实验伙伴可能正在使用模数转换器, 而您希望等待以前执行的任何操作 发生。 这是可选的。 如果您希望跳过它,那么您可以这么做。 但我把它放在那里,因为我担心这些东西。 这是软件启动。 再说一次,那个位,设置那个位,软件将启动。 然后,我们将查找忙等待。 这是完成标志。 这是我曾在前一张幻灯片中圈出的位。 因此,我们将等待该位设置。 然后,将再次在通道 6 上产生我的结果,14 位结果, 因为我在例程中设置了通道 6。 现在,我把这一切结合在一起的方法是,我希望定期进行采样。 因此,我可以使用 cystic或计时器 A,然后 以采样率的频率对它进行采样。 因此,我将调用我的采样例程,它会 执行这四个步骤 -- 等待模数转换器不再忙,启动转换, 等待它完成,读取结果。 这里是我的14 位结果。 现在,在下一个视频中,我将讨论滤波器。 但无需多说,那时会运行数字滤波器。 现在,您将设置邮箱。 正如您知道的,邮箱是一个全局变量,也是 一个信号量标志。 这是一个实时性很高的事件。 那么,让我们来向您展示如果我查看 P1.0 会发生什么。 这是我的三次切换技术。 我将看到三次切换,然后是一次 长暂停,然后是三次切换和一次 长暂停,然后是三次切换。 可能会发生几件事情。 我可能会查看这个,然后说,哦, 执行这个需要 9 微秒。 那么,如果我采样的频率 -- 假设我们每 500 微秒进行一次采样, 我的采样频率为 2KHz,我可以 看到这个比率,即 9 微秒与 500 微秒之比是一个很小的百分比。 那么,如果您需要的话,这是 执行采样和滤波的 线程的曲线。 我可以做另一件事是,这是一个实时事件。 如果我查看这里的时间点, 这个 A 点,它是这里的时间,A。 这还是它。 这是 A 点。 这段介于 A 点和A 点之间的时间 是采样间隔。 还有另外一个间隔,就在那里。 该间隔是 Δt。 这是一个实时过程。 因此我希望该Δt 始终是 500。 那么,如果我像这样,那么 500 减去 某个误差小于或等于 Δt,这小于 或等于 500 加上某个误差。 该误差称为抖动。 实时采样具有很低的抖动。 那么我希望该抖动很低,远小于 -- 远小于该 500 毫秒。 我要实现该目标的 方法是,我要将这设置成高优先级中断。 它就是通过这种方法实现的。 那么,如果我将该采样过程, 这个用于采样的线程设置为高优先级中断, 它将具有很低的抖动。 这是该三次切换的优点, 因此我可以在我的示波器或逻辑分析仪上 看到抖动。 总之,我们讨论了模数转换器, 其中包含范围、分辨率和精度。 我们还讨论了它用于进行初始化的寄存器, 以及这样一个事实,即我们有 一个对它进行采样并且把它存储在邮箱中的 定期中断。 本视频到此结束。 在下一个视频中,我们将深入研究 当我把这一切结合在一起时可能产生的误差。 再说一次,这是一件非常重要的工具, 您需要把它放在您的工具箱中, 并且不仅要了解它在该处理器上工作的 原理细节,还要了解 在您必须计算的性能测量中,您必须作出 怎样的基本设计决策,以便评估它的工作效果。
课程介绍 共计3课时,46分14秒

TI-RSLK 模块 15 - 数据采集系统

TI 机器人 数据采集 模数转换器 红外 RSLK 距离传感器

此模块将介绍如何使用模数转换器来连接红外距离传感器。红外距离传感器是克服机器人挑战的重要组件,因为避开墙壁是实现此目标的必要条件。

推荐帖子

大家了解MSP430的TimerD吗?
MSP430的timer D其实也是一个16位的定时器或者计数器,但是它有很多的特别之处。 大家能列举一二吗? ...
wstt 微控制器 MCU
【TI首届低功耗设计大赛】无线家居控制系统-结题篇
        经过几个月的学习和设计,今日勉强完成了设计。       本设计的项目名称为无线家居控制系统,侧重与远程控制电器产品,并且各个控制模块都是通过无线方式通信;本项目定位于家居应用,将来加入更多的传感器和更复杂的算法就可以实现真正意义上的智能家居,相信将来大家都能够使用上智能家居产品,让...
stormbreaker 微控制器 MCU
有关555定时器的几个模式与相位控制
555定时器是一种集成电路芯片,常被用于定时器、脉冲发生器和震荡电路。555可被作为电路中的延时器件、触发器或起振元件。 555定时器可工作在三种工作模式下: 单稳态模式:在此模式下,555功能为单次触发。应用范围包括定时器,脉冲丢失检测,反弹跳开关,轻触开关,分频器,电容测量,脉冲宽度调制(PWM)等。 无稳态模式:在此模式下,555以振荡器的方式工作。这一工作模式下的555芯片常被用于频...
qwqwqw2088 模拟与混合信号
高速单片机硬件关键参数设计概述
      随着单片机的频率和集成度、单位面积的功率及数字信号速度的不断提高,而信号的幅度却不断降低,原先设计好的、使用很稳定的单片机系统,现在可能出现莫名其妙的错误,分析原因,又找不出问题所在。另外,由于市场的需求,产品需要采用高速单片机来实现,设计人员如何快速掌握高速设计呢?      硬件设计包括逻辑设计和...
qwqwqw2088 微控制器 MCU
分享到X
微博
QQ
QQ空间
微信

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新文章 手机版

站点相关: EEWORLD首页 EE大学堂 论坛 下载中心 Datasheet 活动专区 博客

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved