“Motor Control Shield”的版本间的差异

来自Waveshare Wiki
跳转至: 导航搜索
(替换文字 - 「 {|style="width:auto" | {|class="at-c" style="table-layout:fixed;border-radius:100px;width:100%;border:2px solid #{{{bordercolor}}}" |- |class="bg-Joinus roundy-100 hide" style="table-layout:fixed;border-radius:100px;padding:10px;width:1)
(文本替换 - 替换“<h1>售后</h1>”为“<h1>技术支持</h1>”)
 
(未显示2个用户的17个中间版本)
第1行: 第1行:
 +
<div class="wiki-pages blue-color">
 +
<div class="tabberlive  newwsnav" id="wsnavbar">
 +
<ul class="tabbernav">
 +
<li class="nav-link">[[#myintro|说明]]</li>
 +
<li class="nav-link">[[#myresources|资料]]</li>
 +
<li class="nav-link">[[#myfaq|FAQ]]</li>
 +
<li class="nav-link">[[#mysupport|售后]]</li>
 +
</ul>
 +
</div>
 
<div class="tabber">
 
<div class="tabber">
<!--<div class="tabbertab" title="说明"></div>-->
 
<div class="tabbertab" title="资料">
 
 
{{外围模块|colorscheme=blue
 
{{外围模块|colorscheme=blue
 
|name = Motor Control Shield
 
|name = Motor Control Shield
|img=[[File:Motor-Control-Shield.jpg|360px |alt=Motor-Control-Shield|link=http://{{SERVERNAME}}/shop/Motor-Control-Shield.htm | Motor Control Shield]]
+
|img=[[File:Motor-Control-Shield.jpg|360px |alt=Motor-Control-Shield|link=https://{{SERVERNAME}}/shop/Motor-Control-Shield.htm | Motor Control Shield]]
 
|category1=电机
 
|category1=电机
 
|brand=Waveshare
 
|brand=Waveshare
第10行: 第17行:
 
|interface1 = I/Os
 
|interface1 = I/Os
 
}}
 
}}
 +
<div class="tabbertab" title="说明" id="myintro">
 +
 +
<h1>说明</h1>
 +
 +
==产品概述==
 +
本产品是基于 Arduino/ NUCLEO 的点击驱动扩展板,板载双桥驱动芯片 L293D,能够同时驱动四路直流电机或两路步进电机。<br/>
 +
提供 Arduino 和 STM32 控制例程<br/>
 +
==产品特性==
 +
*可同时驱动四路直流电机或两路步进电机<br/>
 +
* 电机驱动电源可通过调休配置为 5V 或可调电源<br/>
 +
:o 使用 5V 电源驱动电机时,可同时驱动 4 路 5V 直流电机<br/>
 +
:o 使用可调电源驱动电机时,可同时驱动两路 1.25V-6.45V 直流电机<br/>
 +
*采用双桥驱动芯片 L293D<br/>
 +
:o 该芯片可同时驱动两路直流电机或一路步进电机<br/>
 +
:o 4 路 H 桥,每路 H 桥输出电流为 600mA,峰值电流可达 1.2A<br/>
 +
:o 自带 ESD 保护<br/>
 +
==接口说明==
 +
 +
{|border=2; style="width:500px;"         
 +
|-style="background:#36A5E8; color:white;" align="center"   
 +
|引脚
 +
|功能
 +
|- align="center"   
 +
|M1A|| rowspan="8"|直流电机/步进电机控制脚
 +
|- align="center" 
 +
|M1B
 +
|- align="center" 
 +
|M2A
 +
|- align="center" 
 +
|M2B
 +
|- align="center" 
 +
|M3A
 +
|- align="center" 
 +
|M3B
 +
|- align="center" 
 +
|M4A
 +
|- align="center" 
 +
|M4B
 +
|- align="center" 
 +
|M1EN||M1A, M1B 使能控制
 +
|- align="center" 
 +
|M2EN||M2A, M2B 使能控制
 +
|- align="center" 
 +
|M3EN||M3A, M3B 使能控制
 +
|- align="center" 
 +
|M4EN||M4A, M4B 使能控制
 +
|}
 +
 +
</div>
 +
=STM32使用教程=
 +
<div class="tabbertab" title="STM32使用教程">
 +
{{Motor Control Shield for STM32 use}}
 +
</div>
 +
=Arduino使用教程=
 +
<div class="tabbertab" title="Arduino使用教程">
 +
{{Motor Control Shield for Arduino use}}
 +
</div>
 +
 +
<div class="tabbertab" title="资料" id="myresources">
 +
 +
<h1>资料</h1>
 +
 
===文档===
 
===文档===
*[[:File: Motor Control Shield User Manual CN.pdf | 用户手册]]
+
*[https://{{SERVERNAME}}/w/upload/8/88/Motor_Control_Shield-Schematic.pdf 原理图]<br>
*[http://{{SERVERNAME}}/w/upload/8/88/Motor_Control_Shield-Schematic.pdf 原理图]<br>
+
 
 
===程序===
 
===程序===
*[[:File:Motor_Control_Shield_Code.7z |示例程序]]<br>
+
*[https://www.waveshare.net/w/upload/b/ba/Motor_Control_Shield_Code.7z 示例程序]<br>
 +
 
 
===数据手册===
 
===数据手册===
*[http://{{SERVERNAME}}/w/upload/4/4a/L293D-datasheet.pdf L293D-datasheet]<br/>
+
*[https://{{SERVERNAME}}/w/upload/4/4a/L293D-datasheet.pdf L293D-datasheet]<br/>
*[http://{{SERVERNAME}}/w/upload/9/93/LM2596R-5.0-datasheet.pdf LM2596R-5.0-datasheet]<br/>
+
*[https://{{SERVERNAME}}/w/upload/9/93/LM2596R-5.0-datasheet.pdf LM2596R-5.0-datasheet]<br/>
*[http://{{SERVERNAME}}/w/upload/b/b8/AMS1117-datasheet.pdf AMS1117-datasheet]
+
*[https://{{SERVERNAME}}/w/upload/b/b8/AMS1117-datasheet.pdf AMS1117-datasheet]
<br /><big>批量下载教程——请戳<big><big><big>☛</big></big></big></big>[[File:download-icon.png|link=批量下载教程]]
+
 
 +
 
 +
 
 +
</div>
 +
<div class="tabbertab" title="FAQ" id="myfaq">
 +
 
 +
<h1>FAQ</h1>
 +
<br />{{Motor-Control-Shield-FAQ}}</div>
 +
<div class="tabbertab" title="售后" id="mysupport">
  
<!--{{Join_us}}-->
+
<h1>技术支持</h1>
 +
<br />
 +
{{Service20}}</div>
 
</div>
 
</div>
<div class="tabbertab" title="FAQ"><br />{{Motor-Control-Shield-FAQ}}</div>
 
<div class="tabbertab" title="售后"><br />{{Service11}}</div>
 

2022年8月11日 (四) 16:51的最新版本

Motor-Control-Shield
{{{name2}}}
{{{name3}}}
功能简介
特性 L293D 电机控制板
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 I/Os

说明

产品概述

本产品是基于 Arduino/ NUCLEO 的点击驱动扩展板,板载双桥驱动芯片 L293D,能够同时驱动四路直流电机或两路步进电机。
提供 Arduino 和 STM32 控制例程

产品特性

  • 可同时驱动四路直流电机或两路步进电机
  • 电机驱动电源可通过调休配置为 5V 或可调电源
o 使用 5V 电源驱动电机时,可同时驱动 4 路 5V 直流电机
o 使用可调电源驱动电机时,可同时驱动两路 1.25V-6.45V 直流电机
  • 采用双桥驱动芯片 L293D
o 该芯片可同时驱动两路直流电机或一路步进电机
o 4 路 H 桥,每路 H 桥输出电流为 600mA,峰值电流可达 1.2A
o 自带 ESD 保护

接口说明

引脚 功能
M1A 直流电机/步进电机控制脚
M1B
M2A
M2B
M3A
M3B
M4A
M4B
M1EN M1A, M1B 使能控制
M2EN M2A, M2B 使能控制
M3EN M3A, M3B 使能控制
M4EN M4A, M4B 使能控制

STM32使用教程

我们提供的例程是基于STM32F103RBT6,提供的连接方式是对应的STM32F103RBT6的引脚为例,如果有需要使用其他STM32,请按实际引脚连接

硬件连接

STM32F103RB连接引脚对应关系
Motor STM32 直流电机 步进电机
M1A PA10 直流电机 1 步进电机 1
M1B PB3
M2A PB5 直流电机 2
M2B PB4
M3A PA8 直流电机 3 步进电机 2
M3B PA9
M4A PA6 直流电机 4
M4B PA5
M1EN PB10 M1A, M1B 使能控制
M2EN PC7 M2A, M2B 使能控制
M3EN PB6 M3A, M3B 使能控制
M4EN PA7 M4A, M4B 使能控制

软件说明

例程是基于HAL库进行开发的。 请在资料里面下载程序,找到XNUCLEO-F103RB程序文件目录,打开Motor_Control_Shield_Code\XNUCLEO-F103RB

直流电机

  • 打开DC_Motor/MDK-ARM/DC_Motor.uvprojx文件

Motor DC 1.jpg

  • 编译下载即可

Motor DC 2.jpg

现象

四路直流电机同时旋转。

步进电机

  • 打开Stepper_Motor/MDK-ARM/Stepper_Motor.uvprojx文件

Motor Stepper 1.jpg

  • 编译下载即可

Motor Stepper 2.jpg

现象

两路步进电机依次旋转一周。

Arduino使用教程

本例程已经在Arduino uno上测试通过,直接按下表连接Arduino uno即可

硬件连接

STM32F103RB连接引脚对应关系
Motor Arduino 直流电机 步进电机
M1A D2 直流电机 1 步进电机 1
M1B D3
M2A D4 直流电机 2
M2B D5
M3A D7 直流电机 3 步进电机 2
M3B D8
M4A D12 直流电机 4
M4B D13
M1EN D6 M1A, M1B 使能控制
M2EN D9 M2A, M2B 使能控制
M3EN D10 M3A, M3B 使能控制
M4EN D11 M4A, M4B 使能控制

安装编译软件(Windows教程)

arduino IDE 安装教程

运行程序

在我们提供的资料里面下载程序,并解压,再进入Motor_Control_Shield_Code/Arduino目录下

直流电机

  • 对于直流电机而言:M1EN、M2EN、M3EN、M4EN 接至了 Arduino 的 D6、D9、D10、D11,

这些引脚具有 PWM 功能,因此控制 PWM 的占空比可以控制直流电机的转速。

  • analogWrite(uint8_t pin, int value)为写模拟引脚函数,对于参数 value 而言当设置为 0 时,输出

低电平,设置为 255 时输出占空比为 100%的高电平。

  • 打开DC_Motor/DC_Motor.ino,选择Arduino型号跟端口好,再进行编译下载。

Motor-Control-Shield-3.jpg

  • 以一个直流电机为例:设置管脚为输出状态,然后配置初始状态,D12 管脚设置为低电

平,D13 设置为高电平(当然这两个管脚可以反过来,那么电机转动方向也将改变),D11 输 出高电平使能 L293 驱动芯片。

  • 在 loop()函数中设置 D11 的 PWM 占空比为 50%(value = 128 即 50%),也就间接的控制了电机转

动速度。

现象

四路直流电机同时旋转。

步进电机

  • 以 28BYJ-48 步进电机为例 : 该电机是一个五线四相八拍电机。
  • 因为使用的为 M1A、M1B、M2A、M2B 来模拟时序控制,因此需要控制 M1EN、M2EN 为高电

平使能 L293 芯片。

  • 查阅 28BYJ-48 相关资料可以发现如下这样的两个表格:
1 2 3 4 5 6 7 8
P1-红 VCC VCC VCC VCC VCC VCC VCC VCC
P2-橙 GND GND GND
P3-黄 GND GND GND
P4-粉 GND GND GND
P5-蓝 GND GND GND
供电电压 相数 相电阻Ω 步进角度 减速比 启动频率P.P.S 转矩g.cm 噪声dB 绝缘介电强度
5V 4 50±10% 5.625/64 1:64 ≥550 ≥200 ≤35 600VAC
  • 第一个表说明了电机的四相八拍是如何控制的:
  • 四相分别是 A,B,C,D,若要使 A 相导通则需要控制橙线接地,即控制 M1A 低电平。
  • 类似的控制其他几个引脚,如果把四个控制引脚看作成 4 位 bit 连续数据,那么用 8 个字节即可

表示这组逻辑的控制(橙线为最低位):

Char BeatCode[8] = { //Stepper motor eight eight beat code
 0x0E, 0x0C, 0x0D, 0x09, 0x0B, 0x03, 0x07, 0x06
};
  • 第二个表说明了控制的频率:
  • 可以看到步进电机的启动频率,步进电机在空载情况下能够正常启动的最高脉冲频率,如果脉

冲频率高于该值,电机就不能正常启动。给出的参数是≥550,单位是 P.P.S,即每秒脉冲数,
这里的意思就是说:电机保证在你每秒给出 550 个步进脉冲的情况下,可以正常启动。那么
换算成单节拍持续时间就是 1s/550=1.8ms,那么每个节拍的间隔大于该值即可转动,不过延时
越久,电机转动一步所用的时间将会变长。

  • 得到了上述信息即可以转动步进电机,但无法精确控制,28BYJ-48 是减速电机,其内部有四级

减速,减速比为 1:64,转子转 64 圈,最终输出轴才会转一圈,也就是需要 64*64=4096 个
节拍输出轴才转过一圈,如果每步 2ms,那么 2ms*4096=8192ms,需要 8 秒多才能够转一圈。
但是实际上硬件上的减速比不一定符合标称值,这里采取经验值:4076 个节拍,实际误差万分
之 0.56。

  • 打开Stepper_Motor/Stepper_Motor.ino选择Arduino型号跟端口好,再进行编译下载。

Motor-Control-Shield-2.jpg

现象

两路步进电机同时旋转。

FAQ



  • 因为可调稳压芯片使用的是AMS1117-ADJ,它的最大输出电流是800MA,对于一般的小功率电机,每个大概需要300MA的电流,功率达不到,此时可选择使用5V的电源供电。


IN1 为高电平, IN2为低电平,电机正转

IN1 为低电平, IN2为高电平,电机反转

PWM为电机速度控制

如果IN1和IN2同时为高电平或底电平,电机不转

正反转取决于电机的实际接法

技术支持


联系人:黄工
QQ:2850151199
EMAIL:2850151199@qq.com
电话:0755-83040712
微信:扫下方二维码添加
Service20-Weichat.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证