精华内容
下载资源
问答
  • grbl

    千次阅读 2015-10-18 13:01:50
    注意:这个grbl官方说只能在 168 和 328P 的芯片上使用,168由于芯片空间较小,只用用0.51版的grbl。推荐用UNO r3 1、到https://github.com/grbl/grbl下载grbl的源代码,解压到一个文件夹中。 2、下载安装winavr...
           第一次发帖...之前上论坛都是查资料的,发现gcode这一块资料比较少

           先说一下Gcode:
           Gcode在工业控制上用的很多,是一种通用的控制指令,数控机床上经常用,在我diy雕刻机(打印机之类的)的时候要用到,遇到不少问题,研究了好几天把问题基本都解决了。
           发个帖子,为以后需要用到的人提供点帮助。

           arduino上,我找到的有两种Gcode编译器,GRBL和gcode_interpreter。

           GRBL限制比较大,用的是arv的C语言写的,有目前较新的版本是0.8c,能用在328P的芯片上(UNO),其他的芯片能用的不多,MEGA2560就不行了。缺点是安装麻烦,需要用到winavr生成hex文件,再用XLoader上传到UNO上。优点是效率高,功能强大,可设置加速度等。

          gcode_interpreter,优点是大多arduino都能用,用的是arduino语言写的,只要下载好代码,用arduino的IDE编译下载到板上就能用了。

          先说简单的gcode_interpreter,http://sourceforge.net/projects/cncarduino/ 这是下载地址。
    一共有5个文件,我们主要看的是_init.ino文件,这个文件保存的是我们要用的PIN的定义
    #define X_STEP_PIN 2
    #define X_DIR_PIN 3
    #define X_ENABLE_PIN 4

           这段代码设置了2,3,4管脚控制一个步进电机,2用来输出一次脉冲,让步进电机走一步,3用来控制方向,4用来开关步进电机(这个脚可以悬空不接,实际上控制步进电机的就是2根线step和dir,最后还有一根地线GND)。这个地方涉及到步进电机的驱动问题,这个需要用到驱动板,不能用传统的arduino控制步进电机的方法(除非改程序),这里推荐使用easydriver(X宝有,比较贵,但是比工业用的便宜吧)。Y_*,Z_*几个管脚也是一样的,看你用几个轴了。我们完全可以按照上面的默认管脚接线,不用改代码....
    接下来需要设置的就是
    #define X_STEPS_PER_INCH 400
    #define X_STEPS_PER_MM 16.0
    #define X_MOTOR_STEPS 200
          这个是设置步进电机属性的代码,#define X_STEPS_PER_INCH 400 是X轴转动400步,行程1英尺,
    #define X_STEPS_PER_MM 16.0是16步1毫米的意思
    #define X_MOTOR_STEPS 200 是步进电机200步走完一圈的意思(这个跟步进电机的型号有关,一般都是200)
         设置完,下载到arduino里面就能用了。X,Z轴的设置和X的一样。
         可以在arduino的串口监视器里面输入 “X10” 不包括引号,点击发送,要是安装成功 你会发现X轴的电机走了10英尺(默认是以英尺为单位)。“X-10”X轴的电机反方向走10英尺。
         附一个我自己做的gcode控制画图的视频链接.视频中我用的是mega2560,gcode_interpreter。
    http://pan.baidu.com/share/link?shareid=441374&uk=755352556

    GRBL
    注意:这个grbl官方说只能在 168 和 328P 的芯片上使用,168由于芯片空间较小,只用用0.51版的grbl。推荐用UNO r3
    1、到https://github.com/grbl/grbl下载grbl的源代码,解压到一个文件夹中。
    2、下载安装winavr,用grbl 的0.7版以上的,注意winavr一定要是20100110版的(比较难下2007版的居多,我把它上传到网盘里了供大家方便下载:http://pan.baidu.com/share/link?shareid=445050&uk=755352556,),不然编译会出错,在arduino运行的时候会显示EEPROM读取错误,不能在arduino断电以后保存设置(程序利用EEPROM保存相关设置,gcode_interpreter没有这个设置,要改设置只能改代码)
    3、打开winavr的notepad,新建空工程,将grbl的源代码全部添加到工程里。
    4、进行相关管脚的设置,在config.h文件里面,在添加的文件里面找到config.h,双击打开修改
    5、设置方法
    #define X_STEP_BIT 2 // pin2
    #define Y_STEP_BIT 3
    #define Z_STEP_BIT 4
    #define X_DIRECTION_BIT 5
    #define Y_DIRECTION_BIT 6
    #define Z_DIRECTION_BIT 7
    看到这几句宏定义很熟悉吧,和前面的相似,不说了,其实完全可以不用改,按官方的设置接线就行,省了不少麻烦
    6、在winavr的 programmers notepad 菜单栏点击tools->make all,将代码编译,生成hex文件(就在代码所在的文件夹)。
    名字叫grbl.hex
    7、用XLoader->下载地址: http://xloader.russemotto.com/ 把hex文件下载到arduino上
    8、安装完成,在arduino的IDE界面打开串口监视器,就会返回信息“ Grbl 0.8c '$' *****”(**里面的字我忘了)说明安装成功了。
    输入“$”,发送,就会显示菜单,输入“$$”发送,就会显示设置页面,比如"$0=500"发送,就会将X轴电机设置为500步每毫米。更多的设置大家可以自己在软件里看,每条指令后面还是会有解释的,相信大家都能看懂。

    希望对需要的人能有所帮助吧,原来在弄这两个的时候没什么头绪,国内网站几乎查不到资料,辛苦好几天总结出来的经验,其中可能会有我理解不对的地方,但是两个gcode编译器我都是亲自测试能用的。



    5个文件.png (2.63 KB, 下载次数: 808)












    五个文件

    五个文件

    电路图.png (91.01 KB, 下载次数: 267)












    电路图

    电路图
    
    第一次发帖...之前上论坛都是查资料的,发现gcode这一块资料比较少

    先说一下Gcode:
    Gcode在工业控制上用的很多,是一种通用的控制指令,数控机床上经常用
    在我diy雕刻机(打印机之类的)的时候要用到,遇到不少问题,研究了好几天把问题基本都解决了。
    发个帖子,为以后需要用到的人提供点帮助。

    arduino上,我找到的有两种Gcode编译器,GRBL和gcode_interpreter。

    GRBL限制比较大,用的是arv的C语言写的,有目前较新的版本是0.8c,能用在328P的芯片上(UNO),其他的芯片能用的不多,MEGA2560就不行了。缺点是安装麻烦,需要用到winavr生成hex文件,再用XLoader上传到UNO上。优点是效率高,功能强大,可设置加速度等。

    gcode_interpreter,优点是大多arduino都能用,用的是arduino语言写的,只要下载好代码,用arduino的IDE编译下载到板上就能用了。

    先说简单的gcode_interpreter,http://sourceforge.net/projects/cncarduino/ 这是下载地址。
    一共有5个文件,我们主要看的是_init.ino文件,这个文件保存的是我们要用的PIN的定义
    #define X_STEP_PIN 2
    #define X_DIR_PIN 3
    #define X_ENABLE_PIN 4

    这段代码设置了2,3,4管脚控制一个步进电机,2用来输出一次脉冲,让步进电机走一步,3用来控制方向,4用来开关步进电机(这个脚可以悬空不接,实际上控制步进电机的就是2根线step和dir,最后还有一根地线GND)。这个地方涉及到步进电机的驱动问题,这个需要用到驱动板,不能用传统的arduino控制步进电机的方法(除非改程序),这里推荐使用easydriver(X宝有,比较贵,但是比工业用的便宜吧)。Y_*,Z_*几个管脚也是一样的,看你用几个轴了。我们完全可以按照上面的默认管脚接线,不用改代码....
    接下来需要设置的就是
    #define X_STEPS_PER_INCH 400
    #define X_STEPS_PER_MM   16.0
    #define X_MOTOR_STEPS    200
    这个是设置步进电机属性的代码,#define X_STEPS_PER_INCH 400 是X轴转动400步,行程1英尺,
    #define X_STEPS_PER_MM   16.0是16步1毫米的意思
    #define X_MOTOR_STEPS    200 是步进电机200步走完一圈的意思(这个跟步进电机的型号有关,一般都是200)
    设置完,下载到arduino里面就能用了。X,Z轴的设置和X的一样。
    可以在arduino的串口监视器里面输入 “X10” 不包括引号,点击发送,要是安装成功 你会发现X轴的电机走了10英尺(默认是以英尺为单位)。“X-10”X轴的电机反方向走10英尺。
    附一个我自己做的gcode控制画图的视频链接.视频中我用的是mega2560,gcode_interpreter。
    http://pan.baidu.com/share/link?shareid=441374&uk=755352556

    GRBL
    注意:这个grbl官方说只能在 168 和 328P 的芯片上使用,168由于芯片空间较小,只用用0.51版的grbl。推荐用UNO r3
    1、到https://github.com/grbl/grbl下载grbl的源代码,解压到一个文件夹中。
    2、下载安装winavr,用grbl 的0.7版以上的,注意winavr一定要是20100110版的(比较难下2007版的居多,我把它上传到网盘里了供大家方便下载:http://pan.baidu.com/share/link?shareid=445050&uk=755352556,),不然编译会出错,在arduino运行的时候会显示EEPROM读取错误,不能在arduino断电以后保存设置(程序利用EEPROM保存相关设置,gcode_interpreter没有这个设置,要改设置只能改代码)
    3、打开winavr的notepad,新建空工程,将grbl的源代码全部添加到工程里。
    4、进行相关管脚的设置,在config.h文件里面,在添加的文件里面找到config.h,双击打开修改
    5、设置方法
         #define X_STEP_BIT           2  // pin2
         #define Y_STEP_BIT           3
         #define Z_STEP_BIT           4
         #define X_DIRECTION_BIT      5
         #define Y_DIRECTION_BIT      6
         #define Z_DIRECTION_BIT      7
         看到这几句宏定义很熟悉吧,和前面的相似,不说了,其实完全可以不用改,按官方的设置接线就行,省了不少麻烦
    6、在winavr的 programmers notepad 菜单栏点击tools->make all,将代码编译,生成hex文件(就在代码所在的文件夹)。
    名字叫grbl.hex
    7、用XLoader->下载地址: http://xloader.russemotto.com/ 把hex文件下载到arduino上
    8、安装完成,在arduino的IDE界面打开串口监视器,就会返回信息“ Grbl 0.8c '$' *****”(**里面的字我忘了)说明安装成功了。
    输入“$”,发送,就会显示菜单,输入“$$”发送,就会显示设置页面,比如"$0=500"发送,就会将X轴电机设置为500步每毫米。更多的设置大家可以自己在软件里看,每条指令后面还是会有解释的,相信大家都能看懂。

    希望对需要的人能有所帮助吧,原来在弄这两个的时候没什么头绪,国内网站几乎查不到资料,辛苦好几天总结出来的经验,其中可能会有我理解不对的地方,但是两个gcode编译器我都是亲自测试能用的。

    5个文件.png(2.63 KB, 下载次数: 808)

    2013-5-25 22:48 上传

    点击文件名下载附件

    五个文件

     

    电路图.png(91.01 KB, 下载次数: 267)

    2013-5-25 23:34 上传

    点击文件名下载附件

    电路图

     

    
    展开全文
  • 该资源适合GRBL0.8以上版本,可以正常兼容最新的GRBL1.1F版本。以前的grbl controler,包括3.6.1版本都在GRBL1.1F上没法使用,典型的是设置界面无响应,虽然有数据返回,但是界面无显示,
  • Grbl Candle

    2018-12-19 22:19:21
    使用Qt编写的G-Code可视化器的GRBL控制器应用程序。 支持的功能: 通过控制台命令,窗体上的按钮,小键盘控制基于GRBL的cnc-machine。 监控cnc-machine状态。 加载,编辑,保存和发送G代码文件到cnc-machine。 ...
  • arduino grbl

    2018-10-15 18:30:58
    激光雕刻机使用的固件程序,arduino nano uno grblGrbl Controller软件(有送)打开NC代码文件,可以烧刻图案了
  • Understanding Grbl

    2021-01-10 06:05:24
    <div><p>I have read somewhere on github that there is no bit left for anymore code in grbl. how far this is true. How can i add more code to grbl for development?</p><p>该提问来源于开源项目:...
  • GRBL_ARM GRBL 移植到 Arm 处理器
  • grbl字典&grbl;中文注释

    2018-01-16 21:19:45
    grbl字典,对专业名词有专门文档收集解释,对英文的解释只是原汁原味的翻译,不误导读者思维。
  • stm32 grbl

    2019-01-24 18:37:51
    stm32下移植的grbl控制系统,Grbl是一款针对Arduino/AVR328芯片的嵌入式G代码编译和运动控制器。
  • GRBL雕刻记录

    2018-09-25 22:18:41
    GrblController
  • GRBL源代码

    2018-07-23 19:40:01
    grbl的全部源代码和注释解析。
  • grbl controller 3.4.6

    2016-05-30 20:10:46
    grbl controller 3.4.6
  • Grbl is a no-compromise, high performance, low cost alternative to parallel-port-based motion control for CNC milling. This version of Grbl runs on an Arduino with a 328p processor (Uno, Duemilanove, ...
  • grbl for EDM

    2021-01-10 04:55:04
    Only portion of grbl I used was the G code interpreter from some early grbl version and did my own motion controls. <p>To see videos and explanations of the wire EDM system and its use, mechanics and...
  • GRBL四:GRBL框架解析

    万次阅读 多人点赞 2015-06-30 16:39:24
    GRBL四:GRBL框架解析 GRBL0.8版本中有个doc文件夹,下面是关于GRBL大致的框架介绍 1.commands.txt介绍GRBL命令 2.pinmapping.txt介绍GRBL引脚映射 3.resources.txt介绍GRBL用到资源 4.structure.txt介绍GRBL框架 ...

                                             GRBL四:GRBL框架解析

    GRBL0.8版本中有个doc文件夹,下面是关于GRBL大致的框架介绍
    1.commands.txt介绍GRBL命令
    2.pinmapping.txt介绍GRBL引脚映射
    3.resources.txt介绍GRBL用到资源
    4.structure.txt介绍GRBL框架
    4.1英文如下
    The general structure of Grbl
    =============================
    4.1.1The main processing stack:



    1.'protocol'        : Accepts command lines from the serial port and passes them to 'gcode' for execution.
                        Provides status responses for each command. Also manages run-time commands set by
                        the serial interrupt.
                        接收串口命令传递给gcode执行,给命令提供应答,通过串口中断管理程序命令
                      
    2.'gcode'           : Recieves gcode from 'protocol', parses it according to the current state
                        of the parser and issues commands via '..._control' modules
                        从1接收G代码,解析G代码
    3.'spindle_control' : Commands for controlling the spindle.
                                   主轴控制,雕刻机的主轴带刀的轴,与XYZ无关,M3,4,5有关于主轴正反转停止命令
    4.'motion_control'  : Accepts motion commands from 'gcode' and passes them to the 'planner'. This module
                        represents the public interface of the planner/stepper duo.
                          从2接收运动命令将其传递给5,相当于一个发出命令的高层接口

    5.'planner'         : Receives linear motion commands from 'motion_control' and adds them to the plan of 
                        prepared motions. It takes care of continuously optimizing the acceleration profile
                        as motions are added.
                        从4接收线性运动的命令,并将其添加到准备运动计划中(计算的数据写入唤醒缓冲区)
                        随着运动不断被添加负责优化计算加速度分布图

    6.'stepper'         : Executes the motions by stepping the steppers according to the plan.
                              执行动作,用两个定时器来控制三个轴完成相应的动作

    4.1.2Supporting files:


    'config.h'        : Compile time user settings
                            一些全局变量的宏定义,例如MINIMUM_STEPS_PER_MINUTE最低每分钟跳动多少下,也就是最低 
                            频率就在这里声明的

    'settings'        : Maintains the run time settings record in eeprom and makes it available
                        to all modules.
                        全局中主要的参数设置,$$命令打印出来的参数都是这里设置的
                        上电读取EEPROM的值,如果读取失败调用default值,都在这里

    'eeprom'          : A library from Atmel that provides methods for reading and writing the eeprom with 
                        a small addition from us that read and write binary streams with check sums used 
                        to verify validity of the settings record.
                        存放参数的作用,有关于EPROM的读写函数
    'nuts_bolts.h'    : A collection of global variable definitions, useful constants, and macros used everywhere
                          一些全局变量的定义

    'serial'          : Low level serial communications and picks off run-time commands real-time for asynchronous 
                        control.
                        串口控制台

    'print'           : Functions to print strings of different formats (using serial)
                       打印不同格式的字符串函数在这里定义的
    大致框架如下所示






    展开全文
  • 【SOL开源】GRBL_0.8c_stm32f10x GRBL简单的说就是一款基于Arduino的开源雕刻机控制软件。可以解析标准G代码并控制相应的步进电机运动。GRBL效率高,成本低,因此大部分DIY激光雕刻机和自制CNC都会使用GRBL作为主控...
  • grbl设置教程.docx

    2020-03-19 19:38:08
    grbl v1.1 lasergrbl代码设置 中文版 简单易懂 带你玩转grbl ArduinoUNO Grbl基本操作指令
  • GRBL控制器 用于MATLAB的GRBL Gcode发送器! 该项目是为机电一体化课程创建的,因为还没有在线的MATLAB GRBL控制器。 GUI的目标是提供许多与其他GRBL控制器相同的功能,并添加特定于我们项目的其他功能。 用户可以...
  • GRBL固件代码

    2017-10-02 18:34:38
    Grbl是一款针对Arduino/AVR328芯片的嵌入式G代码编译和运动控制器。 Grbl是性能高,成本低,基于并口运动控制,用于CNC雕刻。它可以运行在Vanilla Arduino (Duemillanove/Uno) 。 控制器由C编写并优化,利用了AVR ...
  • 这是带有GRBL V1.1的CNC机床的离线控制器。 它执行基本功能,例如: -显示机器状态-移动轴-汽车之家($ H) -解锁grbl($ X) -使位置0(所有轴上为G92) -读取MicroSD并将命令发送到计算机-实时修改机器的运动速度...
  • Grblcontroller361

    2016-01-24 00:45:03
    Grblcontroller361.一激光软件包
  • grbl-master

    2014-08-28 13:36:47
    grbl-master,用于激光雕刻机,grbl开源项目
  • GRBL-Plotter README deutsch A GCode sender for GRBL under windows, using DotNET 4.0 (should also work with Windows XP) Written in C# VisualStudio 2019. If you like GRBL-Plotter, show it to me with a ...
  • GrblController中文版

    2019-01-04 14:12:44
    Grbl361中文版,亲测能用~ 找了好多个版本 现在分享出来~
  • #Grbl 0.9j /慢跑 来自c't Hacks的GRBLize CNC控制更新/品牌:4/2014 适应GRBL版本0.9j 状态消息和命令处理的标准格式,如官方的Grbl构建 点动程序现在由中断控制,电动机运行中无故障 大大提高了性能 加速度值和...
  • 适用于ESP32的Grbl(CNC控制器) 项目概况 Grbl_ESP32开始作为一个端口到ESP32。 ESP32的强大功能使该固件的发展远远超出了8位AVR控制器的限制。 以下是一些当前功能 马达 最多控制6个坐标轴(XYZABC) 每个轴可以...
  • nanodlp grbl 控制方案

    2018-11-28 22:27:20
    GRBL 在nanodlp光固化系统中的应用与设置办法,可联系本人寻求更多资源
  • GRBL学习笔记2--grbl Arduino烧写

    万次阅读 2018-05-16 09:43:26
    注意:在开始之前,从ArduinoIDE中删除先前的Grbl库安装。否则,将有编译问题!在Linux上路径 /root/Arduino/libraries。 1. 下载Grbl源代码. git clone https://github.com/grbl/grbl.gitNote:Arduino mega2560 ...

    注意:在开始之前,从ArduinoIDE中删除先前的Grbl库安装。否则,将有编译问题!在Linux上路径 /root/Arduino/libraries

     1.  下载Grbl源代码

    . git clone https://github.com/grbl/grbl.git

    Note:Arduino mega2560 下载网址:git clone https://github.com/gnea/grbl-Mega.git

    . 解压下载的文件,得到grbl-XXX的文件夹,其中XXX是发行版。 

     2. 启动Arduino IDE

    . 确保使用最新版本的ArduinoIDE!   

    3. 将Grbl作为库加载到ArduinoIDE中

    . 单击 sketch下拉菜单,导航到加载库(Include Library)并选择添加一个.ZIP库..

    . 选择Grbl-XXX文件夹中的名为Grbl文件夹

    重要信息:该文件夹仅包含源文件和示例目录。如果您不小心选择.zip文件或错误的文件夹,您将需要导航到您的Arduino库,删除错误,然后重新执行步骤3。

    4.打开Grbl Upload Arduino示例

    . 单击文件(File)下拉菜单,导航到示例(Examples)Examples->第三方库示例(下拉最下方)Grbl,然后选择GrblUpload。

    5.确定您的Arduino COM端口

    · 您的Arduino将是USB串行端口

    6.将Grbl编译并上传到您的Arduino。

    ·        将您的Arduino Uno/Mega2560连接到您的计算机。

    ·        确保您的电路板已在Tool->Board菜单中设置为Arduino Uno/Mega2560,并在Tool->SerialPort中正确选择了串行端口。

    ·        点击上传(upload),Grbl应该编译并刷进到你的Arduino!(使用UploadUsing Programmer菜单命令刷程序。)

    ·    arduino <wbr>IDE <wbr>1.8.2编译GRBL <wbr>V1.1实际操作


    高级用户:大多数用户使用Grbl的默认程序就足够了,但您可以通过编辑Arduino库(而不是下载)文件夹中的config.h文件来自定义Grbl。该文件启用或禁用所有Grbl的附加编译时选项。 文件中有他们功能描述。 编辑并保存后,只需按照上述步骤即可刷您的自定义Grbl程序!

      7.验证

      打开Arduino串口检测或其他GRBL控制软件,选择串口,选择波特率115200点击链接,出现下

      图所示的状态说明上传成功。

    arduino <wbr>IDE <wbr>1.8.2编译GRBL <wbr>V1.1实际操作
    展开全文
  • grbl1.1配置教程

    2018-12-11 14:55:55
    grbl1.1f 版本配置教程,详细解释每个设置的含义,帮助你更好的配置机器

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 692
精华内容 276
关键字:

Grbl