Arduino UNO开发板、Arduino CNC Shield V3.0扩展板、A4988驱动板、grbl固件使用教程
前言
CNC Shield V3.0可用作雕刻机,3D打印机等的驱动扩展板,板上一共有4路步进电机驱动模块的插槽,可驱动4路不进电机,而每一路步进电机都只需要2个IO口,也就是说,6个IO口就可以很好的管理3个步进电机,使用起来非常的方便,告别传统步进电机操作繁琐。将Arduino CNC Shield V3.0插到Arduino UNO上,并且安装GRBL固件就可以快速DIY一台CNC雕刻机出来。
1. 开发板封装
下图显示了GRBL使用的Arduino引脚的功能
GRBL Pin Layout:
参考https://github.com/gnea/grbl/wiki/Connecting-Grbl
Arduino CNC Shield V3.0除了拥有GRBL所有功能引脚外,还设计了一些额外引脚,实现更多功能。其原理图如下图所示:
额外引脚:
- 限位开关销已经折叠起来,这样每个轴都有一个“顶部/+”和“底部/-”。这使得为每个轴安装两个限位开关更容易。(用于常开开关)
- EStop–这些引脚可以连接到紧急停止开关。这与Arduino板上的复位按钮相同。(我们建议安装一个额外的紧急按钮,切断所有机械的电源。一个真正的紧急按钮)
- 主轴和冷却液控制有自己的引脚。
- 外部GRBL命令引脚已经中断,允许您添加暂停/保持,恢复和中止按钮。
- 串行引脚(D0-1)和I2C引脚(A4-5)有自己的断开引脚,用于将来的扩展。I2C以后可以通过软件来控制诸如主轴转速或热控制之类的事情。
- 版本3.00的电路板增加了一个跳线来配置第四个轴(克隆另一个轴或从引脚D12-13运行)、通信头(RX+TX,I2C)和步进控制头(运行4个步进器所需的所有引脚)
2. 硬件安装
根据实际情况连接各组件,例如电机、限位开关、激光器、电机驱动器等。
在进行硬件安装过程需要注意一下几点:
1)电源的正负极切勿接反了,否则会烧坏你的设备,甚至发生火灾
2)电机驱动器的方向切记不要插反,否则会烧毁主板和驱动器,具体安装方向请参照驱动器数据手册并结合Arduino CNC Shield V3.0确定,本文以A4988作为电机驱动,其与Arduino CNC Shield V3.0连接方向如图所示
A4988支持全细分、1/2细分、1/4细分、1/8细分、1/16细分。每种细分方式通过Arduino CNC Shield V3.0的三个排针M0、M1、M2来设置,跳线帽盖到排针上代表高电平,不盖代表低电平。为了提高雕刻的精确度,采用16细分,需要用三个跳线帽将M0、M1、M2都盖上。如图
M0 | M1 | M2 | 细分数 |
---|---|---|---|
Low | Low | Low | 1 |
High | Low | Low | 2 |
Low | High | Low | 4 |
High | High | Low | 8 |
High | High | High | 16 |
细分数与电机转速的关系,以下图为例:
3) Arduino CNC Shield V3.0的输入电压是DC 12V-36V,不要输入高于36V的电压。虽然输入电压允许最高36V,不意味着什么情况下都可以用36V,因为有些电机驱动器的供电电压(VMOT)低于36V,例如A4988,它的供电电压是8-35V,如果此时使用36V供电的话就会烧坏驱动器。所以在选择电源的时候要查看对应电器驱动器的数据手册。下面列举几种常用的驱动器供电电压参数。
A4988
因为A4988内置了译码器,我们可以可以通过控制器的2个引脚来控制步进电机,一个控制旋转方向,另一个控制步数。A4988提供了五种不同的微步控制:全步(full-step),半步(haft-step),四分一步(quarter-step),八分之一步(eight-step)和十六分之一步(sixteenth-step)。此外,它还配备了一个调节电流输出、过热保护和过流保护的电位计。A4988的逻辑电压范围是:3~5.5V,如果配备较好的散热条件每相最大电流可达2A,在没有配备散热器的情况下,每相连续电流最好控制在1A范围内。
A4988驱动模块右上侧的两个引脚(VMOT、GND)是外部供电引脚,目的是能给电机提供足够的动力输出,供电范围:8-35V,此处使用一个47uf的电解电容来保护驱动板免受瞬时电压的冲击;
右下侧的VDD和GND我们需要将它连接到Arduino控制板的5V电源和GND引脚上;
1A和1B引脚连接到步进电机的一相,2A和2B引脚连接到步进电机的另一相;
左下角的STEP和DIR连接至Arduino控制板的P3和P4引脚,这两个针脚主要用于控制电机的运动。DIR(Direction)引脚控制转动方向,STEP针脚用于控制电机旋转的步数控制。
下一个是SLEEP针脚,低电平使能使模块处于休眠模式,当电机不工作时,它可以最大程度地降低功耗,默认为高电平。
RESET针脚,如果这个针脚的输入是低电平,那么所有的微步设置都将被忽略掉。因此上图将SLEEP和RESET针脚连接起来,目的是将RESET针脚设置为高电平,以便模块可控。
MS1, MS2 和 MS3针脚用于微步设置,如下图所示。
ENABLE针脚用于打开和关闭场效应管的输出,低电平打开,高电平关闭。
参考https://www.basemu.com/a4988_pinout_and_how_to_use.html
DRV8824/DRV8825
TMC2100
软件安装
下载地址 https://lasergrbl.com/download/
安装LaserGRBL软件,打开Tools>> Flash Grbl Firmware;
选择好固件版本,和串口号,点击OK进行烧录固件;
烧录完成后,点击Grbl>> Grbl配置;
注意这三个参数
它们的含义是步进电机带动滑块运动1mm控制器需要给出的脉冲个数。
公式如下:参数=[(360/步进电机步距角)*驱动器选择细分数]/丝杆的螺距,例如下面这个步距角就是1.8度
点击连接,可手动控制电机运动
参考:
https://osoyoo.com/zh/2017/04/07/arduino-uno-cnc-shield-v3-0-a4988/
https://kookye.com/2017/04/09/arduino-uno-arduino-cnc-shield-v3-0a4988-installation-guide/
https://www.geek-workshop.com/thread-39359-1-1.html
Arduino UNO开发板、Arduino CNC Shield V3.0扩展板、A4988驱动板、grbl固件使用教程的更多相关文章
- 如何使用Arduino UNO开发板编程ATtiny85
最近在Youtube上看了一个GreatScott制作的有关如何使用Attiny85的精彩教程,之后我购买了一片Attiny85 IC.但是,我花了很长时间尝试在它上面运行一个简单的LED闪烁的代码. ...
- 使用Atmel Studio编程Arduino Uno开发板
使用Atmel Studio 7编程Arduino Uno开发板非常简单.Arduino Uno开发板是使用AVR微控制器的嵌入式应用开发的著名平台之一. 大多数人通常会使用Arduino自己的软件工 ...
- 详解Arduino Uno开发板的引脚分配图及定义(重要且基础)
首先开发板实物图如下: 在本篇文章中,我们将详细介绍Arduino开发板的硬件电路部分,具体来说,就是介绍Arduino Uno开发板的引脚分配图及定义.Arduino Uno微控制器采用的是Atme ...
- 01.arduino uno开发板入门
01.所需工具 -Ariduino uno开发板一块 -对应的usb数据线 -杜邦线若干 -一些用以测试的电子元器件 02.安装arduino IDE 打开官网链接https://www.arduin ...
- Arduino UNO仿真开发环境设置和仿真运行
一. Proteus仿真平台简介 Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司).它不仅具有其它EDA工具软件 ...
- 基于Proteus仿真的Arduino学习(1)——Arduino Uno最小系统及LED的简单使用
一.前言: A.Arduino简介 Arduino是由一个欧洲开发团队于2005年冬季开发.其成员包括Massimo Banzi.David Cuartielles.Tom Igoe.Gianluc ...
- 2.6 基于ARDUINO UNO+MC20的路径显示功能
需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...
- ESP8266开发之旅 基础篇③ ESP8266与Arduino的开发说明
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- Arduino Uno微控制器采用的是Atmel的ATmega328
参考:https://www.yiboard.com/thread-831-1-1.html 在本篇文章中,我们将详细介绍Arduino开发板的硬件电路部分,具体来说,就是介绍Arduino Uno开 ...
随机推荐
- C# 在PDF中添加墨迹注释Ink Annotation
PDF中的墨迹注释(Ink Annotation),表现为徒手涂鸦式的形状:该类型的注释,可任意指定形状顶点的位置及个数,通过指定的顶点,程序将连接各点绘制成平滑的曲线.下面,通过C#程序代码介绍如何 ...
- 基于3U PXIe的ZU7EV图像编解码设计方案
1.板卡简介 基于3U PXIe的ZU7EV图像编码卡用于加固设备的图像接入,编解码采集存储.用于机载.舰载.车载等工作场景,支持工业级温度工作.(此方案是由北京太速设计的,已应用到实际领域) 2.主 ...
- matlab文件处理
1.读取文件(按行读取) fid = open('file_name');while(~feof(fid)) line = fgetl(fid); % 读取一行数据 endfid.close(); 2 ...
- MYSQL时代是否将结束
前言 已知MariaDB预计于今年下半年将以spac形式完成上市,最近也看了不少文章,发现MariaDB正在以一个迅猛的速度超越mysql,mysql 可以说是开源数据库中最具代表性的一个,甚至可以说 ...
- 云原生 PostgreSQL - CrunchyData PGO 教程:创建、连接、删除 Postgres 集群
入门 作为安装的一部分,请确保您已完成以下操作: 分叉 Postgres Operator 示例存储库并将其克隆到您的主机. https://github.com/CrunchyData/postgr ...
- java运行原理、静态代理和动态代理区分
1.java的编译和运行原理: ■ 编译:将源文件 .java 文件,通过编译器(javac 命令) 编译成 字节码文件 .class 文件. ■ 运行,通过类加载器(以二进制流形式)把字节码加载进J ...
- 让你的Linux像黑客帝国的画面一样炫酷
#sudo apt-add-repository ppa:hollywood/ppa #sudo apt-get install hollywood #sudo apt-get install ...
- 五分钟,手撸一个Spring容器!
大家好,我是老三,Spring是我们最常用的开源框架,经过多年发展,Spring已经发展成枝繁叶茂的大树,让我们难以窥其全貌. 这节,我们回归Spring的本质,五分钟手撸一个Spring容器,揭开S ...
- 如何让测试RFC2544更便捷——RFC2544测试实操
关键词:RFC2544:吞吐量测试:时延测试:丢包率:背靠背. 作为一名网络测试人员,大家肯定熟知一个测试标准,那就是RFC2544,RFC2544通过提供一个测试网络设备的测试标准,并规定了一系列测 ...
- 免费报表软件下载推荐------值得办公小白下载的Web报表工具
Smartbi免费报表软件更是国内报表产品的新高峰,它直接使用Excel作为报表设计器,易用性.功能性.运行速度都得到了大幅提升,遥遥领先竞品.该产品以"真Excel"为最大特色, ...