大学之前就希望做一个激光雕刻机,我对 JAVA 也非常感兴趣,正好呢树莓派有 pi4j 作为支持,那么刚好这次 e 络盟举行这个比赛,就打算用树莓派和 java 做一个激光雕刻机。我也希望通过这次比赛让更多的人知道 pi4j,希望更多的人通过 pi4j 和树莓派做出好的项目。

01

项目介绍

我本人是物联网专业的,雕刻机涉及到的内容比较广泛,也是边做边查资料,项目有不足,还请包涵。由于使用 java 编写的,所以树莓派需要安装 pi4j。

1. 将需要雕刻的文字或者图通过软件转换为 GCode 代码

2. 将 GCode 代码文件传入树莓派内,执行对应的 GCode 指令。

3. 将文字或者图通过树莓派控制 X 和 Y 轴的步进电机通过 X 轴的激光器在纸上雕刻出来。

02

算法介绍

那么如何将 GCode 代码转化成驱动步进电机正反转的指令呢,这就需要通过编写代码去解释 GCode 代码了。

二维激光雕刻机中用到算法只有:直线插补算法和圆弧插补算法。我们都知道在二维中所有的图和文字都是由直线和弧线组成,但是 X 和 Y 轴是不可能直接去画一条非 X 和 Y 平行直线的,那么我们就需要通过不断进给 X 和 Y 轴步进电机去画直线或弧线。

直线插补算法图示,可以看到如果画一条直线的话,需要 X 和 Y 轴不断正方向的进给,去画一条视觉上的直线。

圆弧插补算法也是类似,通过算法驱动步进电机使他画一个圆弧出来。

03

APP 端和服务器端

树莓派工作之前先从公网服务器获取工作模式,树莓派端有两种工作模式:本地工作模式和远程工作模式。

本地工作模式:执行树莓派本地的 GCode 代码(断网情况下默认本地模式)

远程工作模式:执行 APP 端发送过来的 GCode

如果要进行远程工作模式,需要先在 APP 端点击远程模式按钮,然后点击 SEND 按钮将 GCode 代码传入树莓派端。

03

实体电路

04

系统版本

RASPBIAN STRETCH LITE 4.9

05

项目展示

X 轴 Y 轴步进电机的驱动模块 L298N

激光器的控制模块

树莓派

雕刻机支架,网上买的亚克力支架,带的有两个光驱滑台

06

演示动画