INI文件配置

针对machine.ini的配置说明,这里仅汇总了日常使用中常用的配置,更多配置请查阅 LinuxCNC官方配置文档open in new window

[EMC]

机床的基础配置信息。

参数示例值可选值说明
MACHINEmachinemachine机床的名称
DEBUG00,1调试模式
VERSION1.11.1版本号,目前只能为1.1

[DISPLAY]

机床的人机交互显示配置信息。

参数示例值可选值说明
DISPLAYhaluihalui显示类型
CYCLE_TIME0.1-人机交互界面刷新频率
POSITION_OFFSETRELATIVE显示的坐标系
POSITION_FEEDBACKACTUAL显示的坐标值
ARCDIVISION6464~256 弧形路径分割段数
GRIDS10mm 20mm ...网格参考线预设值
MAX_FEED_OVERRIDE1.51.2 最大进给速度倍率
MIN_SPINDLE_OVERRIDE0.30.5 主轴最小速度倍率
MAX_SPINDLE_OVERRIDE1.51.0 主轴最大速度倍率
DEFAULT_LINEAR_VELOCITY50.0.25 默认的线性速度
MIN_LINEAR_VELOCITY0.01 最小的线性速度
MAX_LINEAR_VELOCITY66.6671.0 最大的线性速度
DEFAULT_ANGULAR_VELOCITY13.333.25 默认的角速度
MIN_ANGULAR_VELOCITY0.01 最小的角速度
MAX_ANGULAR_VELOCITY16.6671.0 最大的角速度
PROGRAM_PREFIX../../files../../filesGCODE目录
INCREMENTS500mm,.01mm...1mm,.5in, ...可用的增量值

WARNING

ARMCNC数控系统自带人机交互界面,所以DISPLAY的值设置为halui即可。 G-code程序文件的存储目录PROGRAM_PREFIX保持默认../../files即可。

[FILTER]

机床的过滤程序、后处理程序配置,可以在加载文件时通过一个过滤程序来处理这些文件。这个过滤程序可以执行各种任务,范围可以从简单到复杂。可以为每种文件类型配置一个PROGRAM_EXTENSION来告诉机床系统,对于某个特定的文件扩展名,我们要使用哪个过滤程序。

1、如果您的后处理器输出文件全部大写,您可能需要添加以下行:

PROGRAM_EXTENSION = .NGC XYZ Post Processor

2、如果你需要图像到G-code转换器的支持,您可能需要添加以下行:

PROGRAM_EXTENSION = .png,.gif,.jpg # Greyscale Depth Image
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode

3、如果你需要自定义G-code的支持,您可能需要添加以下行:

PROGRAM_EXTENSION = .gcode 3D Printer
gcode = /home/armcnc/linuxcnc/convert.py

3、如果你需要指定一个Python语言解析器,您可能需要添加以下行:

PROGRAM_EXTENSION = .py Python Script
py = python

WARNING

Python语言解析器的本质是生成或输出G-code代码,当你使用Python作为过滤器时,应该使用print函数输出相关的G-code命令。

[PYTHON]

机床的Python脚本设置,提供了与Python的集成,允许用户使用Python脚本进行各种任务,如自定义操作、处理数据或与外部设备交互。

参数示例值可选值说明
PATH_APPEND../../scripts/python../../scripts/python指定Python脚本搜索路径
TOPLEVELtoplevel.pytoplevel.py 脚本路径

WARNING

如果配置了PATH_APPEND,则[FILTER]中的Python解析器从当前配置的路径中查找程序脚本,而不是在LinuxCNC的默认资源目录中查找。

[RS274NGC]

G-code编程语言的标准配置。

参数示例值可选值说明
SUBROUTINE_PATH../../scripts/ngc../../scripts/ngcG-code子程序的搜索路径
PARAMETER_FILEmachine.varmachine.var 参数文件位置
HAL_PIN_VARS10,1G-code程序是否能读取HAL引脚的值
REMAP--G-code命令重映射的配置

WARNING

其中的REMAP是用于G-code命令的重映射,该配置允许存在多个。

示例一:REMAP = M428 modalgroup=10 ngc=428remap

其中M428为自定义的G-code命令,用于打开RTCP功能,modalgroup=10这指定了M6命令属于的模态组(10这个数字源于RS274NGCopen in new window规范),428remap为关联的.ngc脚本文件。

示例二:REMAP = M6 modalgroup=10 python=Def_Name

实现了换刀程序,其中M6这是要被重映射的G-code命令,通常用于工具更换,modalgroup=10这指定了M6命令属于的模态组(10这个数字源于RS274NGCopen in new window规范),python=Def_Name系统当遇到M6命令时,不要使用默认的处理,调用Python脚本中的Def_Name来处理,通过print输出相关的G-code命令。

[EMCMOT]

机床运动控制器相关配置。

参数示例值可选值说明
EMCMOTmotmod-运动控制器名称
COMM_TIMEOUT1.01.0通信超时时间,单位为秒
BASE_PERIOD20000050000基础周期时间,单位为纳秒
SERVO_PERIOD10000001000000伺服周期时间,单位为纳秒

[EMCIO]

机床I/O(输入/输出)相关配置。

参数示例值可选值说明
EMCIOioio输入/输出模块
CYCLE_TIME0.1000.100输入/输出运行周期,单位为秒
TOOL_TABLEmachine.tblmachine.tbl 刀具表文件路径

[TASK]

机床任务管理和调度相关的设置。

参数示例值可选值说明
TASKmilltaskmilltask任务类型
CYCLE_TIME0.0100.010任务的运行周期,单位为秒

[HAL]

机床硬件抽象层配置。

参数示例值可选值说明
HALFILEmachine.halmachine.halHAL配置文件的路径

[TRAJ]

机床运动中轨迹规划模块配置。

参数示例值可选值说明
COORDINATESXYZXYZ,XYZAC,XYZBC...使用的坐标轴
LINEAR_UNITSmmmm,inch线性轴单位
ANGULAR_UNITSdegdeg,rad,... 旋转轴单位
CYCLE_TIME0.0100.010轨迹更新周期,单位是秒
POSITION_FILEmachine.positionmachine.position 存储关节位置的文件

[KINS]

机床关节与运动学配置。

参数示例值可选值说明
JOINTS33-9 关节数量
KINEMATICStrivkins运动学模块

WARNING

常用的运动学模块有trivkinsxyzac-trt-kinsxyzbc-trt-kins等, 可以通过man kins命令查阅更多运动学模块的信息。

[AXIS_letter]

机床运动轴配置,其中letter可根据机床类型设置为X、Y、Z、A、B、C、U、V、W字母,例如:AXIS_X

参数示例值可选值说明
MAX_VELOCITY66.6671.2 最大速度
MAX_ACCELERATION400.020.0 最大加速度
MIN_LIMIT-200.0-1000 最小位置限制
MAX_LIMIT200.01000

WARNING

针对MIN_LIMITMAX_LIMIT的一些其他说明:

1、运动轴必须先被归零才能启用这个软限制。归零是一种将机器的某个部分设置到已知位置的过程。

2、对于具有无限旋转的旋转轴(如A、B、C轴),如果没有为该轴设置MAX_LIMIT,则会使用一个非常大的负值(-1e99)或者正值(1e99),这实际上表示没有实际的最小最大限制。

[JOINT_num]

机床运动轴关节配置,用于定义机器中物理关节(通常是电机驱动的关节)的参数和行为,其中num代表关节的编号,设置范围为0[KINS]JOINTS的配置值 - 1,例如[KINS]JOINTS=3这意味着你的机器有3个关节。因此,你可以(并且应该)在配置文件中为这三个关节提供配置,分别为JOINT_0JOINT_1JOINT_2

参数示例值可选值说明
TYPELINEARLINEAR,ANGULAR 关节类型
HOME0.00.0初始位置、零位
MAX_VELOCITY66.6671.2 最大速度
MAX_ACCELERATION6001.2 最大加速度
STEPGEN_MAXACCEL600.021.0 步进发生器的最大加速度
SCALE16004000 脉冲数量(比例因子)
FERROR1.01.0 最大跟随误差
MIN_LIMIT-200.0-1000 最小位置限制
MAX_LIMIT200.01000 最大位置限制
HOME_OFFSET170.00.0 零位偏移量
HOME_SEARCH_VEL20.0100回零速度
HOME_LATCH_VEL5.00.0 到达回零锁定位置速度
HOME_FINAL_VEL600.0 到最终回零位置速度
VOLATILE_HOME10,1 是否失去归零状态
HOME_IGNORE_LIMITSYESYES,NO 回零时忽略限位
HOME_USE_INDEXNOYES,NO使用编码器信号引导回零
HOME_SEQUENCE0回零顺序
BACKLASH00.0000 背隙补偿

WARNING

针对MIN_LIMITMAX_LIMIT的一些其他说明:

1、对于具有无限旋转的旋转关节(如A、B、C轴),如果没有为该关节设置MAX_LIMIT,则会使用一个非常大的负值(-1e99)或者正值(1e99),这实际上表示没有实际的最小最大限制。