LinuxCNC中的gmoccapy界面设置

gmoccapy是Debian2.7镜像里面自带 的一个界面,相对AXIS来说复杂了一点,我根据官网提供的手册,发现手册中讲述的都是依据代码来修改和使用界面的,没有简单的初步使用教程,经过初步的摸索得出以下使用步骤。

环境是 VMware+debian2.7镜像。

1、建立Gmoccapy界面,并放在在桌面上。单击桌面左上角的《应用程序菜单》,选择《CNC》最后单击红色圈里面的LinuxCNC Contig Picker
在这里插入图片描述
2、接着便出现下图,选择图中的gmoccapy .注意 Create desktop Shortcut 要勾选,这个选项是在桌面创建快捷方式的,方便我们下次使用。
在这里插入图片描述
3、由于这个分辨率的问题,我打开之后无法完全显示出完整的界面,这里只需要把 VMware 全屏,然后又把LinuxCNC全屏就可以看到完整的界面,可是这样,鼠标就无法移到Windows环境下了,这个也给我截图带来了不便,如下图
在这里插入图片描述
所以我又从官方给的PDF文档中截图,截取了完整的页面
在这里插入图片描述
见下图:单击紧急急停按钮《数字1》接着单击开始很暂停按钮《数字2》
在这里插入图片描述
4、单击左下角的数字3 ,这个是调节刀具归零的按钮。
在这里插入图片描述
接着便出现下列按钮,其中第一个《数字4》是全部归位按钮,就是把刀具回到一开始的绝对位置 ,其余三个 分别是X轴、Y轴、Z轴归位按钮,
在这里插入图片描述
下图是还没归位的刀具位置界面,界面里面的数字显示的是红色的
在这里插入图片描述
下图是刀具归位后的界面,数字显示的是绿色的
在这里插入图片描述
5、单击桌面右边的,电脑和机画面的按钮,图中的第一个按键
在这里插入图片描述
接着便出现如下图所示的画面,数字 5,
在这里插入图片描述

在接下来出现的界面里面电机 example 文件夹,出现下图所示画面,随便选择一个文件双击打开,注意 这里的png后缀名的是图片,.ngc后缀名的是RS274格式的G代码
我选择了,图片格式的
在这里插入图片描述
双击之后出现下图。注意要勾选右上角的反转图案这个按钮,不然等下在预览图里面是无法观察到这个类似黑洞的甜甜圈图案。至于在实际的应用场合中是否选择反转要具体问题具体分析。
在这里插入图片描述

单击确定按钮之后等10多秒后,出现下图,这个时间的大小和你电脑的性能相关
在这里插入图片描述
在这里插入图片描述
6、注意观察桌面的左下角,出现下图所示按钮。从左边往右边数:第一个是文件导入按钮,第二个是开始运行按钮,三个是停止按钮,第四个是暂停按钮。
在这里插入图片描述
单击开始运行按钮,便出现下图所示
在这里插入图片描述
机器已经开始模拟雕刻了
在这里插入图片描述
这个是放大之后的。

到了这一步,基本上已经是初步完成了简单运行gmoccapy这个界面了,期间我遇到刀具无法归位的情况。还没有其他解决办法,我选择了关闭gmoccapy然后再次重启,下图的错误就没有了
在这里插入图片描述

如果你解决了这个问题请私聊我我的个人资料里面有我QQ号码,或者给我留言,谢谢啦

### LinuxCNC GUI开发教程及自定义界面设计 在LinuxCNC中进行GUI开发,通常会结合Python语言和PyQt图形库来实现。以下是对相关内容的详细说明: #### 1. 开发环境与工具选择 LinuxCNC支持多种编程语言和图形库用于界面开发,其中推荐使用Python结合PyQt[^1]。Python作为一种脚本语言,具有面向对象、公开免费、跨平台可移植等优点。PyQt是Python与Qt图形库的结合体,提供了丰富的模块、良好的跨平台支持以及信号与槽机制,非常适合用于开发复杂的用户界面。 #### 2. LinuxCNC代码结构概述 LinuxCNC的源码结构清晰地划分了各个功能模块,包括命令解释器、运动规划、任务控制器、轨迹规划、硬件抽象层等[^2]。这些模块为开发者提供了底层支持,使得上层GUI可以通过调用LinuxCNC提供的Python接口与任务控制器通信,并监视状态信息和错误信息。 #### 3. 自定义界面开发步骤 以下是基于Gmoccapy界面的自定义开发流程示例: - **启动Gmoccapy界面**:通过桌面左上角的应用程序菜单,选择《CNC》并启动LinuxCNC Contig Picker,勾选“Create desktop Shortcut”以创建快捷方式[^3]。 - **界面调整**:如果分辨率不足导致界面无法完全显示,可以将VMware设置为全屏模式,并将LinuxCNC窗口最大化。 - **紧急按钮与控制按钮**:单击紧急停止按钮(数字1),然后启动或暂停任务(数字2)。 - **刀具归零操作**:通过调节刀具归零按钮(数字3),可以实现刀具的全部归位或单独X轴、Y轴、Z轴归位。 - **界面元素扩展**:开发者可以根据需求修改现有按钮的功能或添加新的控件。 #### 4. PyQt结合LinuxCNC开发实例 以下是一个简单的PyQt代码示例,展示如何通过Python调用LinuxCNC接口实现基本的界面交互: ```python import sys from PyQt5.QtWidgets import QApplication, QPushButton, QVBoxLayout, QWidget from PyQt5.QtCore import QObject, pyqtSignal class LinuxCNCInterface(QObject): status_updated = pyqtSignal(str) def __init__(self): super().__init__() self.status = "Idle" def start_task(self): print("Starting task...") self.status = "Running" self.status_updated.emit(self.status) def stop_task(self): print("Stopping task...") self.status = "Idle" self.status_updated.emit(self.status) class CNCControl(QWidget): def __init__(self): super().__init__() self.init_ui() def init_ui(self): layout = QVBoxLayout() self.start_button = QPushButton("Start") self.start_button.clicked.connect(self.on_start_clicked) layout.addWidget(self.start_button) self.stop_button = QPushButton("Stop") self.stop_button.clicked.connect(self.on_stop_clicked) layout.addWidget(self.stop_button) self.setLayout(layout) self.linuxcnc_interface = LinuxCNCInterface() self.linuxcnc_interface.status_updated.connect(self.on_status_updated) def on_start_clicked(self): self.linuxcnc_interface.start_task() def on_stop_clicked(self): self.linuxcnc_interface.stop_task() def on_status_updated(self, status): print(f"Status updated: {status}") if __name__ == "__main__": app = QApplication(sys.argv) window = CNCControl() window.show() sys.exit(app.exec_()) ``` 此代码展示了如何通过PyQt创建一个简单的界面,包含启动和停止按钮,并通过信号与槽机制与LinuxCNC接口进行交互[^1]。 #### 5. 注意事项 - 确保开发环境已正确安装Python、PyQt以及LinuxCNC的相关依赖。 - 在设计界面时需充分考虑用户体验,合理布局控件并提供必要的反馈信息。 - 测试阶段应验证界面与底层功能的兼容性,确保所有交互逻辑正常运行。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值