当前位置: 首页 > article >正文

linuxCNC(三)ini配置文件说明

[EMC]
  # 配置的版本号, 大于1.1会触发配置检查
  VERSION = 1.1
  
  # 机器名字
  MACHINE = OFF-CNC
  
  # 调试等级, 0代表不打印信息
  DEBUG = 0

# 关于用户界面的设置, 不同的界面可能有不同的参数值
# 主要有AXIS, GMOCCAPY, Touchy, QtVCP’s QtDragon and Gscreen这
# AXIS可用于常规电脑与显示器
# Touchy用于触屏
# GMOCCAPY两者都行, 且支持很多其他硬件控制器的连接
[DISPLAY]
  # 用户界面的名称
  # 可以是以下其中一种(全小写)
  # axis, touchy, gmoccapy, gscreen, tklinuxcnc, qtvcp, qtvcp-qtdragon, qtvcp-qtplasmac
  DISPLAY = gmoccapy
  
  # DRO显示位置偏移的方式. 可以是RELATIVE(相对于工件坐标系)MACHINE(机器坐标系)
  POSITION_OFFSET = RELATIVE
  
  # DRO显示位置的方式. 一般填COMMANDED, 代表LCNC请求电机运转到此位置
  # 也可以是ACTUAL, 用于显示电机编码器反馈的实际位置
  # ACTUAL可能造成在页面上 轴的位置会有0.001的上下跳动, 这个不影响的, 觉得烦可以换成COMMANDED
  POSITION_FEEDBACK = ACTUAL
  
  # 最大进给速率 1.2表示120%
  MAX_FEED_OVERRIDE = 1.2
  
  # 最小主轴转速速率
  MIN_SPINDLE_OVERRIDE = 0.5
  
  # 最大主轴转速速率
  MAX_SPINDLE_OVERRIDE = 1.2
  
  # 存放G代码文件的默认文件夹位置
  PROGRAM_PREFIX = ../../nc_files/
  
  # 启动页上展示的图像
  INTRO_GRAPHIC = linuxcnc.gif
  
  # 启动页上显示图像的时间, 单位为秒
  INTRO_TIME = 2
  
  # 界面刷新时间 100毫秒通常是个不错的数值
  CYCLE_TIME = 100
  
  # 每次点动时可选择的移动距离
  INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm

# AXIS和GMOCCAPY支持把特定格式的文件, 通过特定程序打开, 生成RS274NGC规范的G代码, 再由机器去执行
# 比如把png图案雕刻出来
[FILTER]
  PROGRAM_EXTENSION = .png,.gif,.jpg,.txt,.TXT Grayscale Depth Image
  PROGRAM_EXTENSION = .py Python Script
    png = image-to-gcode
    gif = image-to-gcode
    jpg = image-to-gcode
    py = python

[RS274NGC]
  # 存放一些运行参数的文件
  PARAMETER_FILE = parameters.var

[EMCMOT]
  # 运动控制器名称
  EMCMOT = motmod
  
  # 基本任务与伺服任务的周期, 单位为纳秒
  # 这两项的取值可以参考LCNC延迟测试的结果
  # 详见UP[脏兮兮MrDirty]的视频https://www.bilibili.com/video/BV1RC411g7DC
  # 不过由于走总线控制, 对延迟的要求比较低, 这个值可以填大一点 (意味着不挑电脑硬件)
  # 理论上不超过4ms都可用, 也就是4000000 (来自群友[彬_^__^_]测试)
  BASE_PERIOD = 100000
  SERVO_PERIOD = 1000000
  
  # 运动控制器中, 实时任务确认收到非实时任务的消息的超时时间, 单位为秒
  COMM_TIMEOUT = 1.0

# 任务执行器的配置, 写死 不用改
[TASK]
  TASK = milltask
  CYCLE_TIME = 0.010

[HAL]
  # 启动时执行的.hal文件
  # 可配置多个, LCNC按顺序读取
  HALFILE = OFF-CNC.hal
  HALFILE = mpg.hal
  
  # LCNC提供一个系统库用于检查hal配置, 在弹出框里输出调试检查信息
  # POSTGUI_HALFILE参数指定的hal文件不会被检查
  # HALFILE = LIB:halcheck.tcl [nopopup]
  # 执行单条hal命令. 可配置多条, 会在所有HALFILE执行完毕后再按书写顺序依次执行
  # HALCMD = command
  # LCNC正常退出时执行的hal文件, 不保证必定执行, 慎用
  # SHUTDOWN = shutdown.hal
  # 在界面程序完成HAL引脚创建后执行的hal文件
  # Touchy, AXIS, Gscreen, GMOCCAPY支持这项功能
  # POSTGUI_HALFILE = example.hal
  # 界面程序中HAL引脚的配置, 这里写死
  HALUI = halui

[HALUI]
  # 由halui.mdi-command-00引脚触发的MDI命令
  # 第一条是halui.mdi-command-00, 第二条就是halui.mdi-command-01, 依次增长
  # MDI_COMMAND = G53 G0 X0 Y0 Z0

# LCNC能在UI界面启动前执行其他程序, 可加上一定时间延迟执行 以允许UI依赖中某些行为的执行
[APPLICATIONS]
  # 延迟时间, 单位为秒
  # DELAY = 0
  # appname [arg1 [arg2 …]]
  # APP = halshow my.halshow

[TRAJ]
  # 主轴数量, 要与运动模块的num_spindles参数一致
  SPINDLES = 1
  
  # 坐标系统, 只允许填X, Y, Z, A, B, C, U, V, W这些字母
  # 允许多次写入轴名称(例如龙门机床的X Y Y Z)
  # 一般X对应joint0, Y对应joint1, 按此顺序对应
  COORDINATES = X Y Z
  
  # 线性轴的[机器单位], 可以是mm或inch
  LINEAR_UNITS = mm
  
  # 旋转轴的[机器单位], 可以是deg, degree(每圆360), rad, radian (2π每圆), grad, gon (400边每圆)
  # 在RS274NGC中, A-、B-和C-单词总是以度表示
  ANGULAR_UNITS = degree
  
  # 线性轴JOG时的初始速率, 单位为每秒机器单位(就是毫米), AXIS中显示的值等于每分钟机器单位
  DEFAULT_LINEAR_VELOCITY = 100
  
  # 线性轴JOG时的加速度, 单位为每秒机器单位
  DEFAULT_LINEAR_ACCELERATION = 120.0
  
  # 任意线性轴的最大速度, 单位为每秒机器单位, 显示的值为每分钟机器单位
  MAX_LINEAR_VELOCITY = 120.0
  
  # 任意线性轴的最大加速度, 单位为每秒机器单位
  MAX_LINEAR_ACCELERATION = 1500.0
  
  # 如果设置了此项, 则会将关节位置存储在此文件中
  # 这样机器就能以关机时的位置直接启动(前提是断电期间电机位置没有发生改动)
  # 以达成模拟绝对值编码器的功能, 避免了归位的需求
  # POSITION_FILE = position.txt
  
  # LCNC默认 在运行MDI或程序前 用户必须将机器以JOG方式归位
  # 设置为1则代表不需要归位即可运行MDI或程序
  NO_FORCE_HOMING = 0
  
  # 代表X Y Z A B C U V W 9个轴的原点位置, 可以省略未使用轴的位置数值
  HOME = 0 0 0 0 0 0 0 0 0
  
  # JOG点动时允许绕过探针跳闸检查
  NO_PROBE_JOG_ERROR = 0
  
  # 在归位过程中允许绕过探针跳闸检查
  NO_PROBE_HOME_ERROR = 0

[KINS]
  # 指定系统中运动类型(电机)的数量
  # 例如, 每个轴都有一个电机的trivkins XYZ机床有3个关节
  # 龙门式机器的两个轴上各有一个电机, 第三个轴上有两个电机,4个关节
  # GUI可以使用此配置变量来设置指定给运动模块(motmod)的关节数(num_joints)
  JOINTS = 3
  
  # 运动学模块
  # 参考示例来配置, 跟你用几轴有关
  KINEMATICS = trivkins coordinates=xyz

[AXIS_X]
  # 轴类型, 线性轴(LINEAR)还是旋转轴(ANGULAR)
  TYPE = LINEAR
  
  # 最大速度
  MAX_VELOCITY = 20
  
  # 最大加速度
  MAX_ACCELERATION = 100.0
  
  # 轴运动的最小极限, 软限位, 超限时控制器中止轴运动
  # 生效需要归位
  # 对于无限旋转的旋转轴(如ABC), 值填-1e99
  MIN_LIMIT = -50.0
  
  # 轴运动的最大极限, 软限位, 超限时控制器中止轴运动
  # 生效需要归位
  # 对于无限旋转的旋转轴(如ABC), 值填1e99
  MAX_LIMIT = 50.0
  
[JOINT_0]
  # 轴类型, 线性轴(LINEAR)还是旋转轴(ANGULAR)
  TYPE = LINEAR
  
  # MAX_VELOCITY = 10.0
  # MAX_ACCELERATION = 50.0
  # 齿轮间隙补偿, 机器单位
  BACKLASH = 0.0000
  
  # 同[AXIS_L]. 区别是[JOINT_n]的这两项必须等于或超过[AXIS_L]中的
  # 在归位前, 会强制执行此限位检查, 归位后才会开启[AXIS_L]的限位检查
  MIN_LIMIT = -50.0
  MAX_LIMIT = 50.0
  
  # 允许关节在非常低的速度下偏离指令位置的差值, 机器单位
  # 随着速度的增加, 跟随误差的量也向FERROR值增加
  MIN_FERROR = 0.2
  
  # 最大允许跟随误差
  # 如果指令位置和传感器位置的差值超过该值, 控制器将禁用伺服计算, 将所有输出设置为0.0, 并禁用放大器
  # 如果配置了MIN_FERROR, 则使用速度比例跟随误差
  # 如果总是出现关节跟随报错, 则可以适当调大此值
  FERROR = 1.5
  
  # 关节在完成归位序列后将到达的位置
  HOME = 0
  
  # 归位位置偏移
  HOME_OFFSET = 0
  
  # 初始归位速度, 机器单位每秒, 符号表示行进方向
  # 0代表假设当前位置是机器的原始位置
  # 如果您的机器没有归位开关, 您将希望将此值保留为零
  HOME_SEARCH_VEL = 0.0
  
  # 到原点开关闩锁位置的回原点速度, 机器单位每秒, 符号表示行进方向
  HOME_LATCH_VEL = 0.0
  
  # 从原点闩锁位置到原点位置的速度, 机器单位每秒
  # 如果为0或不包含在关节中, 则使用快速移动速度, 必须是正数
  HOME_FINAL_VEL = 1
  
  # 如果该关节的编码器具有索引脉冲, 且运动卡具有该信号的规定, 则可以将其设置为YES
  # 当设置为YES时, 它将影响所使用的归位模式的类型
  # 目前, 除非您在速度模式和PID下使用StepGen, 否则无法使用步进器进行索引
  HOME_USE_INDEX = NO
  
  # 当您使用限位开关作为归位和限位开关时, 应设置为YES
  # 当设置为YES时, 回零时将忽略该关节的限位开关
  # 您必须配置归位, 以便在归位移动结束时, 归位/限位开关不处于切换状态, 否则您将在归位移动后收到限位开关错误
  HOME_IGNORE_LIMITS = NO
  
  # 表明关节使用绝对编码器
  # 在请求归位时, 当前关节值设置为HOME_OFFSET
  # 如果此项设置为1, 机器通常最终移动到HOME值处, 如果设置为2则不进行最终移动
  HOME_ABSOLUTE_ENCODER = 1
  
  # 定义归位序列, 值必须从0, 1-1开始, 每次可+1指定随后的序列, 不可跳过序列号
  # 如果省略此项, 则Home All功能将不会对关节进行归位
  # 通过为多个关节指定相同的序列号, 可以同时归位这些关节
  # 负序列号用于推迟具有该序列号的所有关节的最终移动
  HOME_SEQUENCE = 0

[AXIS_Y]
  TYPE = LINEAR
  MAX_VELOCITY = 20
  MAX_ACCELERATION = 100.0
  MIN_LIMIT = -50.0
  MAX_LIMIT = 50.0
  
[JOINT_1]
  TYPE = LINEAR
  BACKLASH = 0.0000
  MIN_LIMIT = -50.0
  MAX_LIMIT = 50.0
  MIN_FERROR = 0.2
  FERROR = 1.5
  HOME = 0
  HOME_OFFSET = 0
  HOME_SEARCH_VEL = 0.0
  HOME_LATCH_VEL = 0.0
  HOME_FINAL_VEL = 1
  HOME_USE_INDEX = NO
  HOME_IGNORE_LIMITS = NO
  HOME_ABSOLUTE_ENCODER = 1
  HOME_SEQUENCE = 0

[AXIS_Z]
  TYPE = LINEAR
  MAX_VELOCITY = 20
  MAX_ACCELERATION = 100.0
  MIN_LIMIT = -50.0
  MAX_LIMIT = 50.0
  
[JOINT_2]
  TYPE = LINEAR
  BACKLASH = 0.0000
  MIN_LIMIT = -50.0
  MAX_LIMIT = 50.0
  MIN_FERROR = 0.2
  FERROR = 1.5
  HOME = 0
  HOME_OFFSET = 0
  HOME_SEARCH_VEL = 0.0
  HOME_LATCH_VEL = 0.0
  HOME_FINAL_VEL = 1
  HOME_USE_INDEX = NO
  HOME_IGNORE_LIMITS = NO
  HOME_ABSOLUTE_ENCODER = 1
  HOME_SEQUENCE = 0

# [SPINDLE_<num>]  <num>0开始, 最大为num_spindles-1
# num_spindles由[TRAJ]SPINDLES设置
# 默认情况下, 主轴正转和反转的最大速度约为2147483000RPM
# 默认情况下, 主轴正转和反转的最小速度为0RPM
# 默认情况下, 增量为100RPM
[SPINDLE_0]
  # 主轴最大正转速度, 单位为RPM
  MAX_FORWARD_VELOCITY = 1000
  
  # 主轴最小正转速度, 单位为RPM
  MIN_FORWARD_VELOCITY = 0
  
  # 主轴最大反转速度, 单位为RPM
  MAX_REVERSE_VELOCITY = 1000
  
  # 主轴最小反转速度, 单位为RPM
  MIN_REVERSE_VELOCITY = 0
  
  # 设置主轴速度增量/减量的步长, 每个主轴的值可能不同
  # 此设置对AXIS和Touchy有效
  INCREMENT = 100

[EMCIO]
  # IO控制器程序的名称
  EMCIO = io
  
  # EMCIO将运行的周期, 单位为秒, 将其设置为0.0或负数将设定EMCIO完全不休眠
  # 通常无需更改此项
  CYCLE_TIME = 0.100
  
  # 存储刀具信息的文件
  TOOL_TABLE = tool.tbl
  
  # 3个数指定执行换刀时要移动到的XYZ位置
  # 6个数指定XYZABC位置, 9个数指定XYZABCUVW位置
  # 可以组合起来, 例如将主轴向上与更改位置结合起来, 则可以先移动Z,然后移动X和Y
  TOOL_CHANGE_POSITION = 0 0 20
  
  # 值为1, 主轴将在换刀期间保持开启状态
  # 对于材料装于主轴而非刀具的车床等机器非常有用
  TOOL_CHANGE_WITH_SPINDLE_ON = 0
  
  # 值为1, Z轴将在换刀之前移动到机器零. 这与发出G0 G53 Z0相同
  TOOL_CHANGE_QUILL_UP = 0
  
  # 这适用于无法将刀具放回原来的刀库位置中的机器
  # 例如, 将在用中的刀具与主轴中的刀具交换的机床
  RANDOM_TOOLCHANGER = 0

http://www.kler.cn/a/413102.html

相关文章:

  • 数据结构-图-领接表存储
  • Qt桌面应用开发 第八天(综合项目一 飞翔的鸟)
  • C语言实例_12之求一正整数分解质因数
  • Pytorch使用手册-Build the Neural Network(专题五)
  • 人体特定吸收率 (SAR) 分布建模
  • scala模式匹配
  • 解决 S3 文件复制时的 “can‘t start new thread“ 错误
  • CListCtrl::InsertItem和临界区导致程序卡死
  • C++-qt经验
  • Android 桌面窗口新功能推进,聊一聊 Android 桌面化的未来
  • Unity 中 多种资源加载方式的优缺点
  • MySQL(8)【聚合函数 | group by分组查询】
  • 衡山派D133EBS 开发环境安装及SDK编译烧写镜像烧录
  • Scala中字符串
  • 选修课(Java Python JS C++ C )
  • 【汇编语言】call 和 ret 指令(一) —— 探讨汇编中的ret和retf指令以及call指令及其多种转移方式
  • 搜索引擎中广泛使用的文档排序算法——BM25(Best Matching 25)
  • 【从零开始的LeetCode-算法】3206. 交替组 I
  • 《Opencv》基础操作<1>
  • 天通物联网应用:首创渐进式图片压缩算法,实现1000倍高效图传,可一键拨打天通电话
  • C#开发合集
  • CentOS8.5.2111(8)LAMP部署综合实验
  • Linux之网络基础
  • 图片预览 图片上传到服务器
  • FFmpeg 简介与编译
  • 第12章 手写Spring MVC