用stc15w和旧光驱移植arduino写字机GRBL之五:G_Code
本帖最后由 XTXB 于 2018-11-26 09:21 编辑用stc15w4k32s4和旧光驱移植arduino写字机GRBL连载:
用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主循环数据流向过程如下:
GRBL的G代码常用命令如下,用NCVIEWER打开:方框.nc,双击左边代码,会自动打开记事本,修改保存后可返回查看器查看:
GRBL的G代码解析在gcode.cpp,主要完成以下任务:
1,解析M指令和G指令。
2,将线段预处理后调用mc_line()。
3,将圆弧预处理后调用mc_arc()(G代码的XYR弧转化为XYIJK弧的数学模型如下)。
其中函数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
哇!厉害了大佬! 有stm32的才有兴趣{:smile:} 这个GRBL对硬件资源需求不高,一个串口,2个定时器就可以,程序大部分都是算法,算法搞通了,平台移植差别不大,初步估计,用C语言写AVR ,STC, STM 程序,95%的代码都可以直接使用。 发现一个错误,在05编号 G1 F30.0000这里,应该是 //将速度F设置为 30
是的,当时确实对这个F理解不清楚 收藏了,等有空,也试试。 学习了, 也想将GRBL移植到STC8上,可惜不懂AVR。 su33691 发表于 2018-11-30 14:45
也想将GRBL移植到STC8上,可惜不懂AVR。
主要是算法思路,跟单片机关系真的不大,咱们一起玩吧 非常好的资料,楼主辛苦, 学习了{:handshake:}{:handshake:} 学习! 帖子移动通知:
原分论坛:8051/STC32【已下线】
目标分论坛:51单片机
移动时间:0小时之后
页:
[1]