锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

单片机学习 9-直流电机实验

时间:2022-10-07 15:30:00 交流电能通过二极管的正极吗gp集成电路10dc110v直流电磁继电器samatic电位器电枢卷绕机

直流电机实验

单片机使用GP I/O连接ULN2003驱动芯片(达林顿晶体管集成电路单片、高压、高电流)

来驱动直流电机和步进电机。

介绍直流电机

直流电机是指能够将直流电能转化为机械能(直流电机)或将机械能转化为直流电能(直流发电机)的旋转电机。它是一种能够实现直流电能和机械能相互转换的电机。当它作为电机运行时,它是一种将电能转化为机械能的直流电机;当发电机运行时,它是一种将机械能转化为电能的直流发电机。

直流电机的结构应由定子和转子组成。直流电机运行时静止的部分称为定子。定子的主要功能是产生由座椅、主磁极、 换向极、 由端盖、轴承和刷装置组成。运行过程中的旋转部分称为转子,其主要作用是产生电磁扭矩和感应电势,是直流电机能量转换的枢纽,通常称为转轴、电枢铁芯、电枢绕组、换向器和风扇。

直流电机不分正负,两端加直流电即可工作。需要知道直流电机的额定电压和额定功率,不能长时间超载。 交换接线后,可形成正反转。转向电流方向,即将正极方向转向负极方向。

开发板配置的直流电机是 5V 主要参数如下:
轴长:8mm
轴径:2mm
电压:1-6V
参考电流:0.35-0.4A
3V 转速:17000-18000 转每分钟
外观实物图如下:

在这里插入图片描述

其内部结构如下图所示:

如图所示,电流方向为a–>d。则a为正极,d为负极。

ULN2003 芯片介绍

51 如果直接使用芯片,单片机主要用于控制而不是驱动 GPIO管脚驱动大功率器件,要么烧坏芯片,要么无法驱动。因此,驱动大功率设备,如电机。必须建立驱动电路。开发板上的驱动芯片是 ULN2003年,该芯片是达林顿晶体管阵列集成电路,单片高电压、高电流。它不仅可以用来驱动直流电机,还可以用来驱动五线四相步进电机,如单片机上使用的28台BYJ-48 步进电机。

ULN2003 驱动直流电机,下面具体介绍一下 ULN2003 使用芯片。ULN2003 达林顿晶体管阵列集成电路是单片高压高电流。它是由7 对 NPN 由达林顿管组成,其高压输出特性和阴极钳位二极管可转换感应负载。单个达林顿对的集电极电流是 500mA。并联的达林顿管能承受更大的电流。该电路主要用于继电器驱动器、字锤驱动器、灯驱动器(LED 气体放电)、线路驱动器和逻辑缓冲器。ULN2003 每对达林顿管都有一个 2.7k串联电阻可直接与 TTL 或 5V CMOS 装置。

(1)主要特点
①500mA 额定集电极电流(单个输出)
②高压输出:50V
③与各种逻辑类型兼容
④继电器驱动器

(2)逻辑框图

从上图可以很容易地理解芯片的使用方法,其内部相当于非门电路,即输入高输出低,输入低输出高(B与C相通,E连接GND,COM此处应注意连接电源:

因为 ULN2003 输出为集电极开 路,ULN2003 要输出高电平,必须将电阻连接到输出口。这可以在后面解释 为什么不能直接连接直流电机? ULN2003 的 2 个输出口接电机线,而必须一 根线连接电源,另一个连接电源 ULN2003 输出口。单片机没有自带上拉电阻,只能COM通过任何输出口C输出低电平,连接电压输入高电平,使电机旋转。但旋转方向是固定的。

如果使用芯片驱动直流电机,只能实现单向控制,电机一端连接电源正极,另一端连接芯片接到芯片的输出口。如果您想控制五线四相步进电机,您可以将四路输出连接到步进电机的四相,电机的另一条线连接到正电源。

硬件电路设计

A2-A4开发板:输入管脚为:P1^ 0到P1^ 3,P2 ^本实验不需要连接蜂鸣器。J47上1脚连接VCC,其他四只脚是输出口,电机的工作可以通过输出低电平来实现。有四个输出口与后步进电机兼容。

A5-A7开发板:从上图可以看出,该电路是独立的,芯片的输入是通过 J46 端子提供,芯片输出由 J47 端子引出。J46 输入对应 J47 输出,而 J47 为外部连接电机提供接口,可支持直流电机、五线四相步进电机 28BYJ-48 连接。由于该模块电路是独立的,因此可以使用任何单片机管脚。为了支持我们的例程序,它在这里使用 P1.0 管脚来控制 ULN2003 输出,即将 P1.0 管脚连接到J46 的 IN1.直流电机的两条线路连接 J47 端子的 1、2 脚即 5V 和 O1。因此可通过单片机 P1.0 输出高电平控制电机旋转,输出低电源控制电机停止。注:单片机 P1.0 输出低电平时,ULN2003 的 OUT1 由于集电极不会导致停止,而是集电极开路,导致电机无电流流入。

软件编程

因为输入口是连接的P1端口,而P1端口有上拉电阻,即使不定义P0端口,从P0端口输出默认为低电平。因此,即使不定义,插入电机,电机也会选择转动。

#include"reg52.h"  typedef unsigned char u8; typedef unsigned int u16;  #define DC_MOTOR_RUN_TIME 5000 sbit DC_Motor P1^0;  void delay_1ms(u16 ms) { 
          u16 i,j;  for(i=ms;i>0;i--)   for(j=110;j>0;j--);
       
        //注意分号 
        } 
        void 
        delay_10us
        (u16 ten_us
        ) 
        { 
          
        while
        (ten_us
        --
        )
        ; 
        } 
        void 
        main
        (
        ) 
        { 
          DC_Motor
        =
        1
        ; 
        delay_ms
        (DC_MOTOR_RUN_TIME
        )
        ; DC_Motor
        =
        0
        ; 
        } 
       

实验现象

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章