大学之前就希望做一个激光雕刻机,我对 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
演示动画