基于PWM的直流电机速度控制使用微控制器

在这个项目中,我将向您展示如何使用PWM信号8051微控制器还使用微控制器的基于PWM的直流电机速度控制。

介绍

在许多应用中控制DC电机的速度非常重要,其中精度和保护是必不可少的。在这里,我们将使用称为PWM(脉冲宽度调制)的技术来控制DC电机的速度。

我们可以使用机械或电气技术实现DC电机的速度控制,但它们需要大尺寸的硬件来实现,但基于微控制器的系统提供了一种简单的方法来控制直流电动机的速度。

基于PWM的直流电机速度控制使用微控制器图像1

早些时候,我们已经看到了如何使用没有微控制器的PWM控制直流电动机的速度。在这里,我们通过使用微控制器进行相同的实验。

为此目的,我们将使用8051控制器生产PWM波。通过改变该PWM波的宽度,我们可以控制DC电机的速度。在8051微控制器中,定时器用于生成PWM波。

在本文中,我们将看到如何使用8051 MocroController中的定时器生成PWM信号,以及如何使用Tthat PWM信号控制DC电机的速度。

基于PWM的直流电机速度控制使用微控制器电路原理

这个项目的核心是8051微控制器。如果您已使用8051微控制器的任何变体,您可能会记住8051没有专用的PWM电路以启用PWM模式。因此,为了生成PWM信号,我们使用定时器使用定时器并使用定时器开启和关闭I / O引脚。

在这个项目中,我将在8051微控制器中使用Timer0以及定时器中断以产生PWM信号。

还阅读了相关的帖子 -步进电机驱动电路如何使用8051微控制器?

如何在8051微控制器中生成PWM?

大多数现代微控制器,如AVR(例如Arduino),ARM,PIC等具有专用的PWM硬件和引脚,以即时激活PWM模式。但是,8051微控制器没有此规定。那么,如何在8051微控制器中生成PWM?

为此,我们必须在8051微控制器中使用定时器和中断。8051的Timer0在MODE0中配置。通过仔细调整高电平,我们可以保持信号的恒定时期。

基于PWM的DC电机速度控制电路图使用微控制器

基于PWM的直流电机速度控制使用微控制器电路图

电路组件

  • 8051微控制器
  • 11.0592 MHz水晶
  • 电容器 - 33pf x 2,10μf
  • 电阻 - 1kΩx4,10kΩx 2
  • 12V直流电动机
  • L298N电机驱动器
  • 按下按钮x 5
  • 1kΩx 8上拉电阻包
  • 串行电缆
  • 12V电池或适配器
  • 连接电线

基于PWM的直流电机速度控制使用微控制器电路设计

该电路由一个8051微控制器(及其与振荡器相关的支持电路)组成,L298N电机驱动器模块,DC电机和几个按钮。

12V直流电动机在其OUT1和OUT2引脚上连接到L298N电机驱动器模块。电动机驱动器的In1和In2引脚连接到+ 5V(VCC)和GND。电机驱动器的EN1引脚连接到PORT0引脚P0.0。

四个按钮连接到PORT0引脚P0.4,P0.5,P0.6和P0.7。

通常,我们可以用两种配置界面切换到微控制器;一个是上拉配置,另一个是下拉配置。

上拉配置:在上拉配置中,微控制器引脚被拉高到逻辑1,按钮连接到GND。按下按钮时,微控制器引脚接收逻辑0

下拉配置:在下拉配置中,将微控制器引脚向下拉到逻辑0,然后连接到VCC。按下按钮时,微控制器引脚接收逻辑1。

在我们的电路中,我们正在使用上拉配置。因此,我们需要检查逻辑0才能知道按下是否按下按钮。

基于PWM的直流电机速度控制使用微控制器图像2

代码

下面给出项目的代码。

如何操作电路?

  1. 将12V电池或适配器连接到开发板。
  2. 开关供应。
  3. 在程序员的帮助下将十六进制文件刻录到8051控制器。
  4. 按照电路图进行必要的连接。
  5. 现在打开电源并按开关1.您可以观察到旋转的开始,但容量仅为40%。
  6. 如果按下Switch 2,电机运行略高于速度的一半(60%占空比)。
  7. 按下开关3将使电机全速旋转(100%占空比)。
  8. 要停止电机,请按开关4。

好处

  • 使用此PWM方法,我们可以节省电量。

应用程序

  • 用于行业以控制电机速度。
  • 用于商场。
  • 我们可以使用这个概念来控制光强度。

发表评论

您的电子邮件地址不会被公开。

电子机器Favicon.
<\/i>","library":""}}" data-widget_type="nav-menu.default">
Baidu
map