基于ATmega328P带有Grbl控制器的触摸屏控制面板电路设计
发布时间:2020-03-20
分享到:
基于ATmega328P带有Grbl控制器的触摸屏控制面板电路设计
发布时间:2020-03-20
分享到:

消费型CNC机器和开源固件在很短的时间内就走了很长一段路,但在获得第一台CNC机器后仍然缺少一些我想要的功能。尽管MPG手轮在运行Mach或LinuxCNC的机器上很常见,但在基于USB的CNC机器上却大多缺失。它们通常也由笔记本电脑而不是单用途工业设备驱动。我开始这个项目是为了将MPG与Grbl一起使用,但是它很快就成长为成熟的CNC控制面板。

硬件
硬件包括10英寸电阻触摸屏,硬件LED循环启动,进给保持和循环停止按钮,自定义宏按钮,主轴打开和主轴关闭,模拟点动操纵杆,点动控制旋钮,进给倍率和主轴倍率旋钮,紧急情况停止,当然还有一个MPG手轮。硬件输入全部馈入ATmega328P微控制器。数字输入通过3个菊花链式8位移位寄存器传递。ATmega328P将所有按钮,触摸屏,旋钮等的状态发送给在树莓派的硬件串行针脚上定期固定Raspberry Pi。

选择组件后,PCB设计在KiCAD中进行布局,几周后,PCB带有铝制SMT模板。模板使在基于烤箱的回流焊炉中轻松焊接所有表面安装组件成为可能。

在等待PCB的同时,开始在FreeCAD中对外壳进行CAD建模。设计中使用的所有数字常量都存储在FreeCAD电子表格中。设计中的各种文件都链接到同一电子表格,因此在一个位置更改设计参数将立即更新设计中的所有文件。

外壳是从CNC上的12“ x24” 1/4“ ABS单张纸上切下来的。使用FreeCAD Path工作台进行CAM工作。在同一应用程序中同时使用CAD和CAM还可更改设计参数自动更新刀具路径路径工作台支持大多数常见的加工操作以及自适应清除和修整。

触摸屏集成
该软件是用C ++编写的,并且大量使用了Qt。该软件从微控制器读取触摸屏事件,并通过使用libevdev创建uinput设备将其提交给Linux内核。这使得电阻式触摸屏可以看作是应用程序的常规输入设备。

通用介面
该应用程序的左侧具有页面导航按钮,右侧具有状态小部件,该状态小部件在所有页面上均可用。它具有DRO和最常用功能的按钮。

 

 

文章来源hackaday

加入微信技术交流群

技术交流,职业进阶

关注电路设计技能公众号

了解最新技术方案

加入电路城 QQ 交流群

与技术大牛交朋友

讨论