首页 > 应用与设计 > 电器 > Service Robots > 服务型机器人 > TI-RSLK 模块 16 - 转速计 >

服务型机器人

最新课程

热门课程

TI-RSLK 模块 16 - 讲座视频 - 转速计 - 接口

大家好,我是 Jon Valvano,在本视频中, 我们将讨论码盘。 在前一个视频中, 我向您展示了如何使用输入捕获来测量周期, 在本视频中,我们希望具体 讨论一下码盘,包括我们将如何 连接它以及它的数字意味着什么。 那么,让我们开始吧。 好,那么当我们搭建码盘时,它必须 包含一个传感器。 如果您看看这里,您会看到这些部件, 它们就是传感器。 这个 -- 这个小圆盘固定在 电机轴上,随着该圆盘 在传感器旁边旋转, 您将获得脉冲信号,它们 是电机旋转速度的函数。 那么,我们在前一个实验中搭建了该编码器, 现在我们要把它连接到微控制器。 好,那么这里是将要发生的事情。 由于该码盘的特定工作方式, 我们可以 -- 我们知道,轮子每转动一周, 我们将得到 360 个脉冲。 那么,如果您愿意,我们可以看到, 我们在这里有一个角分辨率约为 1 度的角, 即此处的 θ,它是该码盘的分辨率。 但我们将尝试测量速度,因此, 如果我们在这里对速度方程进行 量纲分析,我们从旋转一周 是 360 个脉冲这个知识点开始,现在, 我们想把它转换为 RPM -- 因此我要把秒转换为纳秒。 一秒包含十亿纳秒。 一分钟包含 60 秒。 现在,正如您从前一章 了解到的,我的测量的分辨率 将是每次测量每个脉冲 83.33 纳秒。 那么,这个变量是由 输入捕获测量得到的, 然后,在您完成上面的运算之后, 将得到一个相当简单的转换公式, 这个公式将输入捕获测量到的周期 转换为以 RPM 为单位的速度。 有关该传感器的另一件事 -- 实际上,这只是连接在双通道 示波器上的码盘中的一个。 它是 -- 码盘上实际上有两个引脚, 一个引脚连接到输入捕获, 因此如果我们连接好以后, 将测量这里的周期。 但实际上还有第二个信号, 我们可以通过两种方法来使用它。 在本章中的使用方法是 在该边沿时 -- 您应该记得,这是一个上升沿中断。 如果您在发生该中断时查看另一个引脚, 您可以测量方向。 因此,我们用到的测量是 -- 不仅测量您的电机旋转速度有多快, 您还可以测量它在向哪个方向旋转。 现在,您差不多知道了它在向 哪个方向旋转,因为您编写了输出该方向的代码, 但这只是一个应用场景。 如果您愿意,您可以使用第二个引脚完成的功能是 可以在每个边沿设置一个 输入捕获。 如果您在两个信号的每个上升沿 进行输入捕获,现在我们将得到的是 四倍数量的脉冲。 那么,如果您仅查看上升沿, 每一圈有 360 个上升沿, 但如果您查看两个波形的所有边沿, 您实际上会实现四倍的分辨率。 现在,实际上我们并不需要这么高的分辨率, 因此我们不会这么做。 好,这里是硬件电路。 在前一个实验中,我们向您展示了如何连接它。 这些是每个码盘的引脚, 这些是每个码盘的引脚, 因此,对于左侧和右侧码盘, 我们将连接引脚 A 和 B。 那么,我们将在一个引脚上使用输入捕获, 在另一个引脚上使用常规 GPIO。 可以使用 5 V电压为编码器本身供电。 输出实际上 -- 编码器的输出有两种状态。 它有一个低电平状态和一个悬空状态。 我们要做的是,使用这里连接到 3.3V 的上拉电阻, 以便在这里为我们的微控制器 获取 3.3V 的信号。 这些引脚是用于电机的引脚, 我们不会在本实验中连接它们。 因此,为了使这一切发生, 我们必须切断这里的导线, 我们必须切断这里的导线, 然后把 VPU 连接到 3.3V。 电机驱动板上的这两处硬件改动是 为了使码盘工作而必须进行的修改, 我将会把输入捕获连接到这里。 我将会把输入捕获连接到这里。 因此,我们将使用两个捕获引脚,8.2 和 10.4, 然后,如果您需要,使用两个 GPIO 引脚进行方向测量。 而本幻灯片的有趣之处实际上 在于设计。 在整个机器人系统中,您将使用 许多模块、许多引脚,您的任务是 把它们全部整合在一起,把所有 I/O 应用都整合在一个 微控制器中。 这里只是完成它的一种可能方法, 但它不是唯一的方法。 您可以看到,该芯片上几乎 到处都有计时器。 再说一次,我们将在这里,在端口 10.4 和端口 8.2 上 进行输入捕获,然后在这里的其他两个引脚上使用 常规 GPIO 引脚。 事实证明,如果该引脚为高电平, 那么您的电机向前旋转,如果该引脚 为低电平,那么电机向后旋转。 向前和向后是指相对于机器人 的行进方向。 在前一个视频中,我们有单个输入捕获, 现在,您将有两个输入捕获, 因此您将看到 -- 您将有两个中断服务例程, 一个用于左侧电机,一个用于右侧电机。 由于中断向量(不同), 因此我们将有两个中断服务例程。 因此,我们必须要 设置两个优先级寄存器, 我们必须要设置两个嵌套矢量中断控制器 的使能位。 这些功能都要通过阅读数据手册 和改变系统来实现, 改变系统是指把一个中断更改为两个中断。 让我们来讨论如何使用它。 现在,可以测量速度之后,我们可以做一些 非常有趣的事情。 我在下一个模块将进行介绍, 但在这里,在本实验中, 您可以做一些有趣的事情。 那么现在,正如您知道的,如果您输入占空比, 如果我们看看占空比, 它是电机的输入,我们把速度看作输出, 您可能会问这样一个问题,该响应看起来是什么样的? 我们现在可以这么做。 我们现在可以测量速度,把它作为占空比的函数, 在我们这么做之后,我们可以查看一些指标, 比如它的增益是多少,该响应的斜率是多少, 形状看起来是什么样的。 我们还可以做另一件事情, 如果我们将这里的占空比从 25% 增大为 50%, 我们这么做之后,会发生了什么情况? 嗯,电机原来具有一定的速度, 然后电机又提高到一个新的速度。 该时间常数, 即达到该差值的 e 的负 1 次方所需的时间, 如果您在这里有一个 ΔS, 上升到 63% 需要多长时间? 这是一个很有趣的参数,称为时间常数, 它将告诉您电机 的响应速度有多快。 您知道这样一个事实, 它不会响应 PWM 的各个高电平和低电平, 但您可能想知道该数字来自哪里。 它实际上来自该实验。 让我们看看一些实际数据。 这是该模块中我的实验的结果。 我所做的是,我做了刚才所说的事情。 我有一个占空比, 然后,嘣,让我们把它从 25% 增加到 50%, 接下来,我测量电机转速,以 RPM 为单位。 那么,这是初始速度, 这是最终速度,那里是该变化的 63%。 您可以在这里看到,电机花费了大约 50 毫秒的 时间进行响应。 我在实验 10 里进行了这个测试,因为我可以 在机器人沿着赛道行进时做这个实验。 那么,这个测试可以 在机器人移动时执行, 因为我把该数据存储到了微控制器的 ROM 中。 如果我建立一种非常简单的关系,我们可以 -- 这称为线性模型, 它是电机最简单的模型。 它也许不是那么简单,但这个模型允许 我们估算电机的速度, 以及电机的时间常数。 总结一下,我们在本模块中了解到了输入捕获。 我们知道了可以通过预分频 来调节分辨率和测量范围之间的差异。 来调节分辨率和测量范围之间的差异。 通过输入捕获测量周期, 用周期计算速度,然后通过该速度, 我们可以推导出时间常数。 在下一个模块中,我们要做的是, 把该速度运用到一个控制系统中, 以使得电机能够以任意所需要的速度进行旋转, 这将通过反馈环路完成。 这将是下一个模块的主题。 好的,希望您喜欢本次实验。 电机正在旋转, 我们很快将可以进行比赛。 205

大家好,我是 Jon Valvano,在本视频中,

我们将讨论码盘。

在前一个视频中,

我向您展示了如何使用输入捕获来测量周期,

在本视频中,我们希望具体

讨论一下码盘,包括我们将如何

连接它以及它的数字意味着什么。

那么,让我们开始吧。

好,那么当我们搭建码盘时,它必须

包含一个传感器。

如果您看看这里,您会看到这些部件,

它们就是传感器。

这个 -- 这个小圆盘固定在

电机轴上,随着该圆盘

在传感器旁边旋转,

您将获得脉冲信号,它们

是电机旋转速度的函数。

那么,我们在前一个实验中搭建了该编码器,

现在我们要把它连接到微控制器。

好,那么这里是将要发生的事情。

由于该码盘的特定工作方式,

我们可以 --

我们知道,轮子每转动一周,

我们将得到 360 个脉冲。

那么,如果您愿意,我们可以看到,

我们在这里有一个角分辨率约为 1 度的角,

即此处的 θ,它是该码盘的分辨率。

但我们将尝试测量速度,因此,

如果我们在这里对速度方程进行

量纲分析,我们从旋转一周

是 360 个脉冲这个知识点开始,现在,

我们想把它转换为 RPM --

因此我要把秒转换为纳秒。

一秒包含十亿纳秒。

一分钟包含 60 秒。

现在,正如您从前一章

了解到的,我的测量的分辨率

将是每次测量每个脉冲 83.33 纳秒。

那么,这个变量是由

输入捕获测量得到的,

然后,在您完成上面的运算之后,

将得到一个相当简单的转换公式,

这个公式将输入捕获测量到的周期

转换为以 RPM 为单位的速度。

有关该传感器的另一件事 --

实际上,这只是连接在双通道

示波器上的码盘中的一个。

它是 -- 码盘上实际上有两个引脚,

一个引脚连接到输入捕获,

因此如果我们连接好以后,

将测量这里的周期。

但实际上还有第二个信号,

我们可以通过两种方法来使用它。

在本章中的使用方法是

在该边沿时 --

您应该记得,这是一个上升沿中断。

如果您在发生该中断时查看另一个引脚,

您可以测量方向。

因此,我们用到的测量是 --

不仅测量您的电机旋转速度有多快,

您还可以测量它在向哪个方向旋转。

现在,您差不多知道了它在向

哪个方向旋转,因为您编写了输出该方向的代码,

但这只是一个应用场景。

如果您愿意,您可以使用第二个引脚完成的功能是

可以在每个边沿设置一个

输入捕获。

如果您在两个信号的每个上升沿

进行输入捕获,现在我们将得到的是

四倍数量的脉冲。

那么,如果您仅查看上升沿,

每一圈有 360 个上升沿,

但如果您查看两个波形的所有边沿,

您实际上会实现四倍的分辨率。

现在,实际上我们并不需要这么高的分辨率,

因此我们不会这么做。

好,这里是硬件电路。

在前一个实验中,我们向您展示了如何连接它。

这些是每个码盘的引脚,

这些是每个码盘的引脚,

因此,对于左侧和右侧码盘,

我们将连接引脚 A 和 B。

那么,我们将在一个引脚上使用输入捕获,

在另一个引脚上使用常规 GPIO。

可以使用 5 V电压为编码器本身供电。

输出实际上 --

编码器的输出有两种状态。

它有一个低电平状态和一个悬空状态。

我们要做的是,使用这里连接到 3.3V 的上拉电阻,

以便在这里为我们的微控制器

获取 3.3V 的信号。

这些引脚是用于电机的引脚,

我们不会在本实验中连接它们。

因此,为了使这一切发生,

我们必须切断这里的导线,

我们必须切断这里的导线,

然后把 VPU 连接到 3.3V。

电机驱动板上的这两处硬件改动是

为了使码盘工作而必须进行的修改,

我将会把输入捕获连接到这里。

我将会把输入捕获连接到这里。

因此,我们将使用两个捕获引脚,8.2 和 10.4,

然后,如果您需要,使用两个 GPIO 引脚进行方向测量。

而本幻灯片的有趣之处实际上

在于设计。

在整个机器人系统中,您将使用

许多模块、许多引脚,您的任务是

把它们全部整合在一起,把所有 I/O 应用都整合在一个

微控制器中。

这里只是完成它的一种可能方法,

但它不是唯一的方法。

您可以看到,该芯片上几乎

到处都有计时器。

再说一次,我们将在这里,在端口 10.4 和端口 8.2 上

进行输入捕获,然后在这里的其他两个引脚上使用

常规 GPIO 引脚。

事实证明,如果该引脚为高电平,

那么您的电机向前旋转,如果该引脚

为低电平,那么电机向后旋转。

向前和向后是指相对于机器人

的行进方向。

在前一个视频中,我们有单个输入捕获,

现在,您将有两个输入捕获,

因此您将看到 --

您将有两个中断服务例程,

一个用于左侧电机,一个用于右侧电机。

由于中断向量(不同),

因此我们将有两个中断服务例程。

因此,我们必须要

设置两个优先级寄存器,

我们必须要设置两个嵌套矢量中断控制器

的使能位。

这些功能都要通过阅读数据手册

和改变系统来实现,

改变系统是指把一个中断更改为两个中断。

让我们来讨论如何使用它。

现在,可以测量速度之后,我们可以做一些

非常有趣的事情。

我在下一个模块将进行介绍,

但在这里,在本实验中,

您可以做一些有趣的事情。

那么现在,正如您知道的,如果您输入占空比,

如果我们看看占空比,

它是电机的输入,我们把速度看作输出,

您可能会问这样一个问题,该响应看起来是什么样的?

我们现在可以这么做。

我们现在可以测量速度,把它作为占空比的函数,

在我们这么做之后,我们可以查看一些指标,

比如它的增益是多少,该响应的斜率是多少,

形状看起来是什么样的。

我们还可以做另一件事情,

如果我们将这里的占空比从 25% 增大为 50%,

我们这么做之后,会发生了什么情况?

嗯,电机原来具有一定的速度,

然后电机又提高到一个新的速度。

该时间常数,

即达到该差值的 e 的负 1 次方所需的时间,

如果您在这里有一个 ΔS,

上升到 63% 需要多长时间?

这是一个很有趣的参数,称为时间常数,

它将告诉您电机

的响应速度有多快。

您知道这样一个事实,

它不会响应 PWM 的各个高电平和低电平,

但您可能想知道该数字来自哪里。

它实际上来自该实验。

让我们看看一些实际数据。

这是该模块中我的实验的结果。

我所做的是,我做了刚才所说的事情。

我有一个占空比,

然后,嘣,让我们把它从 25% 增加到 50%,

接下来,我测量电机转速,以 RPM 为单位。

那么,这是初始速度,

这是最终速度,那里是该变化的 63%。

您可以在这里看到,电机花费了大约 50 毫秒的

时间进行响应。

我在实验 10 里进行了这个测试,因为我可以

在机器人沿着赛道行进时做这个实验。

那么,这个测试可以

在机器人移动时执行,

因为我把该数据存储到了微控制器的 ROM 中。

如果我建立一种非常简单的关系,我们可以 --

这称为线性模型,

它是电机最简单的模型。

它也许不是那么简单,但这个模型允许

我们估算电机的速度,

以及电机的时间常数。

总结一下,我们在本模块中了解到了输入捕获。

我们知道了可以通过预分频

来调节分辨率和测量范围之间的差异。

来调节分辨率和测量范围之间的差异。

通过输入捕获测量周期,

用周期计算速度,然后通过该速度,

我们可以推导出时间常数。

在下一个模块中,我们要做的是,

把该速度运用到一个控制系统中,

以使得电机能够以任意所需要的速度进行旋转,

这将通过反馈环路完成。

这将是下一个模块的主题。

好的,希望您喜欢本次实验。

电机正在旋转,

我们很快将可以进行比赛。 205

视频报错
手机看
扫码用手机观看
收藏本课程

相关下载

视频简介

TI-RSLK 模块 16 - 讲座视频 - 转速计 - 接口

所属课程:TI-RSLK 模块 16 - 转速计 发布时间:2018.08.27 视频集数:3 本节视频时长:11:46
在该模块中,你将学习如何设计一个能够测量车轮转动速度的系统。
已有6人参与了讨论去论坛跟帖交流