amobbs.com 阿莫电子技术论坛

标题: 用stc15w和旧光驱移植arduino写字机GRBL之五:G_Code [打印本页]

作者: XTXB    时间: 2018-11-25 09:34
标题: 用stc15w和旧光驱移植arduino写字机GRBL之五:G_Code
本帖最后由 XTXB 于 2018-11-26 09:21 编辑

用stc15w4k32s4和旧光驱移植arduino写字机GRBL连载:
[attach]439400[/attach]
用stc15w4k32s4和旧光驱移植arduino写字机GRBL之一:机架搭建
https://www.amobbs.com/thread-5701202-1-1.html

用stc15w4k32s4和旧光驱移植arduino写字机GRBL之二:PCB制作
https://www.amobbs.com/thread-5701573-1-1.html

用stc15w4k32s4和旧光驱移植arduino写字机GRBL之三:Bresenham算法
https://www.amobbs.com/thread-5701994-1-1.html

用stc15w4k32s4和旧光驱移植arduino写字机GRBL之四:FIFO算法
https://www.amobbs.com/thread-5702730-1-1.html

用stc15w4k32s4和旧光驱移植arduino写字机GRBL之五:G_Code
GRBL主循环数据流向过程如下:
[attach]439402[/attach]
GRBL的G代码常用命令如下,用NCVIEWER打开:方框.nc,双击左边代码,会自动打开记事本,修改保存后可返回查看器查看:
[attach]439401[/attach]
GRBL的G代码解析在gcode.cpp,主要完成以下任务:
1,解析M指令和G指令。
2,将线段预处理后调用mc_line()。
3,将圆弧预处理后调用mc_arc()(G代码的XYR弧转化为XYIJK弧的数学模型如下)。
[attach]439403[/attach]
其中函数Void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8_t axis_1,   
uint8_t axis_linear, float feed_rate, uint8_t invert_feed_rate, float radius, uint8_t isclockwise)
各个变量解释如下:
起点坐标 position,终点坐标target  圆心相对于起始点的偏移向量offset,轴,轴进给速度,进给速率含义标志位,弧半径radius,旋转方向 isclockwise


作者: int    时间: 2018-11-27 12:26
哇!厉害了大佬!
作者: gmyu    时间: 2018-11-27 14:56
有stm32的才有兴趣
作者: XTXB    时间: 2018-11-28 18:27
这个GRBL对硬件资源需求不高,一个串口,2个定时器就可以,程序大部分都是算法,算法搞通了,平台移植差别不大,初步估计,用C语言写AVR ,STC, STM 程序,95%的代码都可以直接使用。
作者: flash3g    时间: 2018-11-28 19:49
发现一个错误,在05编号 G1 F30.0000这里,应该是 //将速度F设置为 30

[attach]439875[/attach]
作者: XTXB    时间: 2018-11-28 20:00
是的,当时确实对这个F理解不清楚
作者: wxlcj    时间: 2018-11-28 20:12
收藏了,等有空,也试试。
作者: sunbest80    时间: 2018-11-29 12:26
学习了,
作者: su33691    时间: 2018-11-30 14:45
也想将GRBL移植到STC8上,可惜不懂AVR。
作者: XTXB    时间: 2018-11-30 17:51
su33691 发表于 2018-11-30 14:45
也想将GRBL移植到STC8上,可惜不懂AVR。

主要是算法思路,跟单片机关系真的不大,咱们一起玩吧
作者: kms2hh    时间: 2018-11-30 21:33
非常好的资料,楼主辛苦, 学习了
作者: lcmdw    时间: 2018-12-1 09:00
学习!   
作者: armok.    时间: 2023-10-25 16:16
帖子移动通知:
原分论坛:8051/STC32【已下线】
目标分论坛:51单片机
移动时间:0小时之后




欢迎光临 amobbs.com 阿莫电子技术论坛 (https://www.amobbs.com/) Powered by Discuz! X3.4