极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: eagler8

【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)

[复制链接]
 楼主| 发表于 2019-8-23 11:25:55 | 显示全部楼层

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。

实验九十八: L298N电机驱动板模块直流步进电机智能机器人小车模组

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 15:16:02 | 显示全部楼层
L298N
是专用驱动集成电路,属于H桥集成电路,与L293D的差别是其输出电流增大,功率增强。其输出电流为2A,最高电流4A,最高工作电压50V,可以驱动感性负载,如大功率直流电机,步进电机,电磁阀等,特别是其输入端可以与单片机直接相联,从而很方便地受单片机控制。当驱动直流电机时,可以直接控制步进电机,并可以实现电机正转与反转,实现此功能只需改变输入端的逻辑电平。

L298N芯片可以驱动两个二相电机,也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源来调节输出电压;可以直接用单片机的IO口提供信号;而且电路简单,使用比较方便。

L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7V电压。4脚VS接电源电压,VS电压范围VIH为+2.5~46V。输出电流可达2A,可驱动电感性负载。1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,本实验装置我们选用驱动一台电动机。5,7,10,12脚接输入控制电平,控制电机的正反转。EnA,EnB接控制使能端,控制电机的停转。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 15:20:03 | 显示全部楼层


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 15:24:56 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 15:47:06 | 显示全部楼层


L298N特性参数   
      类型: 半桥
  输入类型:非反相
  输出数:4
  电流-输出/通道:2A
  电流-峰值输出:3A
  电源电压:4.5V~46V
  工作温度:-25°C~130°C
  安装类型:通孔
  封装/外壳:MulTIwatt-15(垂直,弯曲和错列引线)
  供应商设备封装:15-MulTIwatt
  包装:管件
  器件型号L298N
  制造商STMicroelectronics
  产品型号MotionMotorControl

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 16:02:38 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 16:22:38 | 显示全部楼层

L298N电机驱动板模块的参数
1.驱动芯片:L298N双H桥直流电机驱动芯片
2.驱动部分端子供电范围Vs:+5V~+35V ; 如需要板内取电,则供电范围Vs:+7V~+35V
3.驱动部分峰值电流Io:2A
4.逻辑部分端子供电范围Vss:+5V~+7V(可板内取电+5V)
5.逻辑部分工作电流范围:0~36mA
6.控制信号输入电压范围:
   低电平:-0.3V≤Vin≤1.5V 
   高电平:2.3V≤Vin≤Vss
7.使能信号输入电压范围:
   低电平:-0.3≤Vin≤1.5V(控制信号无效)
   高电平:2.3V≤Vin≤Vss(控制信号有效)
8.最大功耗:20W(温度T=75℃时)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 16:37:35 | 显示全部楼层
模块电原理图





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 16:56:06 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 16:58:10 | 显示全部楼层


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 17:08:07 | 显示全部楼层
L298N电机驱动模块性能特点:
  1:可实现电机正反转及调速。
  2:启动性能好,启动转矩大。
  3:工作电压可达到36V,4A。
  4:可同时驱动两台直流电机。
  5:适合应用于机器人设计及智能小车的设计。

情况一:用L298N驱动两台直流减速电机的电路。引脚A,B可用于PWM控制。如果机器人项目只要求直行前进,则可将IN1,IN2和IN3,IN4两对引脚分别接高电平和低电平,仅用单片机的两个端口给出PWM信号控制使能端A,B即可实现直行、转弯、加减速等动作。

情况二:用L298实现二相步进电机控制。将IN1,IN2和IN3,IN4两对引脚分别接入单片机的某个端口,输出连续的脉冲信号。信号频率决定了电机的转速。改变绕组脉冲信号的顺序即可实现正反转。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 17:29:21 | 显示全部楼层


注意事项:
1.当你的驱动电压(上图标识为12V输入,实际可以接受的输入范围是7-12V)为7V-12V的时候,可以使能板载的5V逻辑供电,当使用板载5V供电之后,接口中的+5V供电不要输入电压,但是可以引出5V电压供外部使用。(这种即为常规应用!)
2.当驱动电压高于12V,小于等于24V(芯片手册中提出可以支持到35V,但是按照经验一般298保守应用最大电压支持到24V已经很了不起!)时,比如要驱动额定电压为18V的电机。首先必须拔除板载5V输出使能的跳线帽。然后在5V输出端口外部接入5V,5V使能即 一个电平为5V的控制信号,当此信号输入有效时,且电机驱动模块中电源供电正常时,电机驱动模块输出电流。否则即使电源供电正常,电机上也无电流。电压对L298N内部逻辑电路供电。(这种是高压驱动的非常规应用!)
3、L298N供电的5V如果是用另外电源供电的话,(即不是和单片机的电源共用),那么需要将单片机的GND和模块上的GND连接在一起,只有这样单片机上过来的逻辑信号才有个参考0点。此点非常重要,请注意。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 17:37:14 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-23 18:12:57 | 显示全部楼层


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-8-24 15:38:39 | 显示全部楼层
  1. /*
  2. 【Arduino】108种传感器模块系列实验(98)
  3. 实验九十八: L298N电机驱动板模块直流步进电机智能机器人小车模组
  4. 项目一:使用arduino中的analogWrite生产pwm波,这里analogWrite
  5. 可输入的数字为0-255当然电机低于某个电压就会不转了,大家可以更改数
  6. 值来试一下,这种方法的缺点是无法修改pwm的频率
  7. */

  8. int input1 = 5; // 定义uno的pin 5 向 input1 输出
  9. int input2 = 6; // 定义uno的pin 6 向 input2 输出
  10. int enA = 10; // 定义uno的pin 10 向 输出A使能端输出

  11. void setup() {
  12. pinMode(input1,OUTPUT);
  13. pinMode(input2,OUTPUT);
  14. pinMode(enA,OUTPUT);
  15. }

  16. void loop() {
  17.   digitalWrite(input1,HIGH); //给高电平
  18.   digitalWrite(input2,LOW);  //给低电平
  19.   analogWrite(enA,200);
  20. }
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-6 13:54 , Processed in 0.043299 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表