This commit is contained in:
Thaddeus-Maximus
2026-04-03 15:58:58 -05:00
commit f3953d66ae
1516 changed files with 586639 additions and 0 deletions

15
configs/sim.gscreen/README Executable file
View File

@@ -0,0 +1,15 @@
Gscreen is a customizable operator screen for LinuxCNC.
Built with python, GLADE, and GTK
Usable with touchscreens or a mouse.
These show the native look of Gscreen.
gscreen.ini
-Imperial milling screen,
-includes optional gladevcp panels
gscreen_lathe.ini
-Imperial basic lathe
gscreen_mm.ini
-Metric milling screen

15
configs/sim.gscreen/README_es Executable file
View File

@@ -0,0 +1,15 @@
Gscreen es una pantalla de operador personalizable para LinuxCNC.
Construido con python, GLADE, y GTK
Utilizable con pantallas táctiles o un mouse.
Estos .ini muestran el aspecto nativo de Gscreen.
gscreen.ini
-Pantalla de fresado imperial,
-incluye paneles opcionales de gladevcp
gscreen_lathe.ini
-Torno básico imperial.
gscreen_mm.ini
- Pantalla de fresado métrico.

View File

@@ -0,0 +1,321 @@
<?xml version="1.0"?>
<interface>
<!-- interface-requires gladevcp 0.0 -->
<requires lib="gtk+" version="2.16"/>
<!-- interface-naming-policy project-wide -->
<object class="GtkWindow" id="window1">
<child>
<object class="GtkHBox" id="hbox1">
<property name="visible">True</property>
<child>
<object class="HAL_Table" id="hal_table1">
<property name="visible">True</property>
<property name="n_rows">4</property>
<property name="n_columns">3</property>
<child>
<object class="HAL_SpinButton" id="hal_spinbutton1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="invisible_char">&#x25CF;</property>
<property name="adjustment">adjustment3</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
<child>
<object class="HAL_HBox" id="hal_hbox1">
<property name="visible">True</property>
<child>
<object class="HAL_LED" id="hal_led1">
<property name="visible">True</property>
<property name="pick_color_on">#f88096020000</property>
<property name="pick_color_off">#00002724ffff</property>
</object>
<packing>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="HAL_LED" id="hal_led2">
<property name="visible">True</property>
</object>
<packing>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="HAL_VBar" id="hal_vbar1">
<property name="visible">True</property>
<property name="bg_color">#bebebebebebe</property>
<property name="z1_border">0.80000001192092896</property>
<property name="z0_border">0.69999998807907104</property>
<property name="z1_color">#ffffffff0000</property>
<property name="min">10</property>
<property name="force_width">30</property>
<property name="invert">True</property>
<property name="z2_color">#ffff00000000</property>
<property name="z0_color">#0000ffff0000</property>
</object>
<packing>
<property name="position">2</property>
</packing>
</child>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
</packing>
</child>
<child>
<object class="HAL_VScale" id="hal_vscale1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="orientation">vertical</property>
<property name="adjustment">adjustment2</property>
</object>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
</packing>
</child>
<child>
<object class="HAL_Label" id="hal_label1">
<property name="visible">True</property>
<property name="label" translatable="yes">label</property>
<property name="text_template">%.02f</property>
<property name="label_pin_type">1</property>
</object>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
<child>
<object class="HAL_Label" id="hal_label2">
<property name="visible">True</property>
<property name="label" translatable="yes">label</property>
</object>
<packing>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
<child>
<object class="HAL_RadioButton" id="hal_radiobutton2">
<property name="label" translatable="yes">radiobutton</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="draw_indicator">True</property>
<property name="group">hal_radiobutton1</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
</packing>
</child>
<child>
<object class="HAL_RadioButton" id="hal_radiobutton1">
<property name="label" translatable="yes">radiobutton</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
</packing>
</child>
<child>
<object class="HAL_LED" id="hal_led4">
<property name="visible">True</property>
<property name="on_color">green</property>
</object>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
</packing>
</child>
<child>
<object class="HAL_LED" id="hal_led5">
<property name="visible">True</property>
<property name="led_blink_rate">500</property>
</object>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
</packing>
</child>
<child>
<object class="HAL_CheckButton" id="hal_checkbutton1">
<property name="label" translatable="yes">checkbutton</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="draw_indicator">True</property>
</object>
</child>
<child>
<object class="HAL_HBar" id="hal_hbar1">
<property name="visible">True</property>
<property name="bg_color">#bebebebebebe</property>
<property name="z1_border">0.85000002384185791</property>
<property name="z0_border">0.69999998807907104</property>
<property name="force_height">20</property>
<property name="max">50</property>
<property name="z1_color">#ffffffff0000</property>
<property name="z2_color">#ffff00000000</property>
<property name="z0_color">#0000ffff0000</property>
</object>
<packing>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
</packing>
</child>
<child>
<object class="HAL_HScale" id="hal_hscale2">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="adjustment">adjustment5</property>
</object>
<packing>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
</packing>
</child>
</object>
<packing>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkVBox" id="vbox1">
<property name="visible">True</property>
<property name="orientation">vertical</property>
<child>
<object class="HAL_Button" id="hal_button1">
<property name="label" translatable="yes">button</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
</object>
<packing>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="HAL_ToggleButton" id="hal_togglebutton1">
<property name="label" translatable="yes">togglebutton</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
</object>
<packing>
<property name="position">1</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child>
<object class="HAL_HScale" id="hal_hscale1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="adjustment">adjustment1</property>
</object>
<packing>
<property name="position">3</property>
</packing>
</child>
<child>
<object class="GtkHBox" id="hbox2">
<property name="visible">True</property>
<child>
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="label" translatable="yes">Scale</property>
</object>
<packing>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="HAL_SpinButton" id="hal_spinbutton2">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="invisible_char">&#x25CF;</property>
<property name="adjustment">adjustment4</property>
</object>
<packing>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="position">4</property>
</packing>
</child>
<child>
<object class="HAL_ProgressBar" id="hal_progressbar1">
<property name="visible">True</property>
<property name="scale">180</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">5</property>
</packing>
</child>
</object>
<packing>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
</object>
<object class="GtkAdjustment" id="adjustment1">
<property name="upper">100</property>
<property name="step_increment">1</property>
<property name="page_increment">10</property>
<property name="page_size">10</property>
</object>
<object class="GtkAdjustment" id="adjustment2">
<property name="upper">100</property>
<property name="step_increment">1</property>
<property name="page_increment">10</property>
<property name="page_size">10</property>
</object>
<object class="GtkAdjustment" id="adjustment3">
<property name="upper">100</property>
<property name="step_increment">1</property>
<property name="page_increment">10</property>
</object>
<object class="GtkAdjustment" id="adjustment4">
<property name="upper">1000</property>
<property name="step_increment">1</property>
<property name="page_increment">10</property>
</object>
<object class="GtkAdjustment" id="adjustment5">
<property name="upper">100</property>
<property name="step_increment">1</property>
<property name="page_increment">10</property>
<property name="page_size">10</property>
</object>
</interface>

248
configs/sim.gscreen/gscreen.ini Executable file
View File

@@ -0,0 +1,248 @@
# EMC controller parameters for a simulated machine.
# General note: Comments can either be preceded with a # or ; - either is
# acceptable, although # is in keeping with most linux config files.
# General section -------------------------------------------------------------
[EMC]
# Version of this INI file
VERSION = 1.1
# Name of machine, for use with display, etc.
MACHINE = LinuxCNC-HAL-SIM-AXIS
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
#DEBUG = 0x7FFFFFFF
DEBUG = 0
# Sections for display options ------------------------------------------------
[DISPLAY]
; -c sets the glade and handler file to load -d is to display extra debug messages
; In this case the glade and handler file are named gscreen so we don't need -c
DISPLAY = gscreen
# Cycle time, in milliseconds, that display will sleep between polls
CYCLE_TIME = 100
# Highest / lowest value that will be allowed for overrides, 1.0 = 100%
MAX_SPINDLE_OVERRIDE = 2.0
MIN_SPINDLE_OVERRIDE = .5
MAX_FEED_OVERRIDE = 2.0
# Max and default jog speeds in units per second
MAX_LINEAR_VELOCITY = 1.2
DEFAULT_LINEAR_VELOCITY = .5
# list of selectable jog increments
INCREMENTS = 1 in, 0.1 in, 10 mil, 1 mil, 1mm, .1mm, 1/8000 in
# set up 3 user popup message dialogs
MESSAGE_BOLDTEXT = NONE
MESSAGE_TEXT = This is a statusbar test
MESSAGE_TYPE = status
MESSAGE_PINNAME = statustest
MESSAGE_BOLDTEXT = NONE
MESSAGE_TEXT = This is a yes no dialog test
MESSAGE_TYPE = yesnodialog
MESSAGE_PINNAME = yndialogtest
MESSAGE_BOLDTEXT = This is the short text
MESSAGE_TEXT = This is the longer text of the both type test. It can be longer then the status bar text
MESSAGE_TYPE = okdialog status
MESSAGE_PINNAME = bothtest
# set up 2 embedded gladeVCP panels
#EMBED_TAB_NAME = Embedded 1
#EMBED_TAB_LOCATION = vcp_box
#EMBED_TAB_COMMAND = gladevcp -x {XID} -t Redmond vcp_box.glade
#EMBED_TAB_NAME = Embedded 2
#EMBED_TAB_LOCATION = notebook_mode
#EMBED_TAB_COMMAND = gladevcp -x {XID} -t Redmond gladevcp-test.ui
# Prefix to be used
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
# Introductory graphic
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
# if you press the 'tooleditor' button then this program will be launched
# leave it commented out if you prefer Gscreens tooleditor.
#TOOL_EDITOR = tooledit
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python3
# Task controller section -----------------------------------------------------
[RS274NGC]
# File containing interpreter variables
PARAMETER_FILE = sim.var
# Motion control section ------------------------------------------------------
[EMCMOT]
EMCMOT = motmod
# Timeout for comm to emcmot, in seconds
COMM_TIMEOUT = 1.0
# BASE_PERIOD is unused in this configuration but specified in core_sim.hal
BASE_PERIOD = 0
# Servo task period, in nano-seconds
SERVO_PERIOD = 1000000
# Hardware Abstraction Layer section --------------------------------------------------
[TASK]
# Name of task controller program, e.g., milltask
TASK = milltask
# Cycle time, in seconds, that task controller will sleep between polls
CYCLE_TIME = 0.001
# Part program interpreter section --------------------------------------------
[HAL]
# The run script first uses halcmd to execute any HALFILE
# files, and then to execute any individual HALCMD commands.
#
# list of hal config files to run through halcmd
# files are executed in the order in which they appear
HALFILE = core_sim.hal
HALFILE = sim_spindle_encoder.hal
HALFILE = axis_manualtoolchange.hal
HALFILE = simulated_home.hal
# list of halcmd commands to execute
# commands are executed in the order in which they appear
# Single file that is executed after the GUI has started. Only supported by
# AXIS at this time (only AXIS creates a HAL component of its own)
# POSTGUI_HALFILE = test_postgui.hal
HALUI = halui
# Trajectory planner section --------------------------------------------------
[HALUI]
#No Content
[TRAJ]
COORDINATES = X Y Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
DEFAULT_LINEAR_VELOCITY = 1.2
MAX_LINEAR_VELOCITY = 2.4
POSITION_FILE = position.txt
# Axes sections ---------------------------------------------------------------
# First axis
[EMCIO]
# Name of IO controller program, e.g., io
EMCIO = io
# cycle time, in seconds
CYCLE_TIME = 0.100
# tool table file
TOOL_TABLE = sim.tbl
TOOL_CHANGE_POSITION = 0 0 0
TOOL_CHANGE_QUILL_UP = 1
[KINS]
KINEMATICS = trivkins
JOINTS = 3
[AXIS_X]
MIN_LIMIT = -40.0
MAX_LIMIT = 40.0
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
[JOINT_0]
TYPE = LINEAR
HOME = 0.000
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
BACKLASH = 0.000
INPUT_SCALE = 4000
OUTPUT_SCALE = 1.000
MIN_LIMIT = -40.0
MAX_LIMIT = 40.0
FERROR = 0.050
MIN_FERROR = 0.010
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 20.0
HOME_LATCH_VEL = 20.0
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = NO
HOME_SEQUENCE = 1
HOME_IS_SHARED = 1
# Second axis
[AXIS_Y]
MIN_LIMIT = -40.0
MAX_LIMIT = 40.0
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
[JOINT_1]
TYPE = LINEAR
HOME = 0.000
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
BACKLASH = 0.000
INPUT_SCALE = 4000
OUTPUT_SCALE = 1.000
MIN_LIMIT = -40.0
MAX_LIMIT = 40.0
FERROR = 0.050
MIN_FERROR = 0.010
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 20.0
HOME_LATCH_VEL = 20.0
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = NO
HOME_SEQUENCE = 1
# Third axis
[AXIS_Z]
MIN_LIMIT = -8.0
MAX_LIMIT = 0.0001
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
[JOINT_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
BACKLASH = 0.000
INPUT_SCALE = 4000
OUTPUT_SCALE = 1.000
MIN_LIMIT = -8.0
MAX_LIMIT = 0.0001
FERROR = 0.050
MIN_FERROR = 0.010
HOME_OFFSET = 1.0
HOME_SEARCH_VEL = 20.0
HOME_LATCH_VEL = 20.0
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = NO
HOME_SEQUENCE = 0
HOME_IS_SHARED = 1
# section for main IO controller parameters -----------------------------------

View File

@@ -0,0 +1,98 @@
[EMC]
VERSION = 1.1
MACHINE = LinuxCNC-HAL-SIM-AXIS
DEBUG = 0
[DISPLAY]
DISPLAY = gscreen
LATHE = 1
OPEN_FILE = ""
CYCLE_TIME = 0.100
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
MAX_SPINDLE_OVERRIDE = 1.0
MAX_LINEAR_VELOCITY = 1.2
DEFAULT_LINEAR_VELOCITY = .25
PROGRAM_PREFIX = ../../nc_files/
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
#EDITOR = geany
INCREMENTS = 1 in, 0.1 in, 10 mil, 1 mil, 1mm, .1mm, 1/8000 in
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python3
[RS274NGC]
PARAMETER_FILE = sim.var
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
BASE_PERIOD = 50000
SERVO_PERIOD = 1000000
[TASK]
TASK = milltask
CYCLE_TIME = 0.001
[HAL]
HALUI = halui
HALFILE = LIB:basic_sim.tcl
POSTGUI_HALFILE = lathe_postgui.hal
[TRAJ]
COORDINATES = X Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
DEFAULT_LINEAR_VELOCITY = 1.2
MAX_LINEAR_VELOCITY = 2.4
POSITION_FILE = position.txt
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = lathe.tbl
TOOL_CHANGE_POSITION = 0 0 0
TOOL_CHANGE_QUILL_UP = 1
[KINS]
KINEMATICS = trivkins coordinates=xz
JOINTS = 2
[AXIS_X]
MIN_LIMIT = -40.0
MAX_LIMIT = 40.0
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
[AXIS_Z]
MIN_LIMIT = -8.0
MAX_LIMIT = 0.0001
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
[JOINT_0]
TYPE = LINEAR
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
MIN_LIMIT = -40.0
MAX_LIMIT = 40.0
HOME_SEARCH_VEL = 20.0
HOME_LATCH_VEL = 20.0
HOME_SEQUENCE = 1
[JOINT_1]
TYPE = LINEAR
MAX_VELOCITY = 4
MAX_ACCELERATION = 100.0
MIN_LIMIT = -8.0
MAX_LIMIT = 0.0001
HOME_SEARCH_VEL = 20.0
HOME_LATCH_VEL = 20.0
HOME_SEQUENCE = 0

View File

@@ -0,0 +1,220 @@
# EMC controller parameters for a simulated machine.
# General note: Comments can either be preceded with a # or ; - either is
# acceptable, although # is in keeping with most linux config files.
# General section -------------------------------------------------------------
[EMC]
# Version of this INI file
VERSION = 1.1
# Name of machine, for use with display, etc.
MACHINE = LinuxCNC-HAL-SIM-AXIS
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
# DEBUG = 0x7FFFFFFF
DEBUG = 0
# Sections for display options ------------------------------------------------
[DISPLAY]
; -c sets the glade and handler file to load -d is to display extra debug messages
; In this case the glade and handler file are named gscreen so we don't need -c
DISPLAY = gscreen
# Cycle time, in milliseconds, that display will sleep between polls
CYCLE_TIME = 100
# Highest / lowest value that will be allowed for overrides, 1.0 = 100%
MAX_SPINDLE_OVERRIDE = 2.0
MIN_SPINDLE_OVERRIDE = .5
MAX_FEED_OVERRIDE = 2.0
# Max and default jog speeds in units per second
MAX_LINEAR_VELOCITY = 20
DEFAULT_LINEAR_VELOCITY = 8
# list of selectable jog increments
INCREMENTS = .01mm, .1mm, 1mm, 10mm
# Prefix to be used
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
# Introductory graphic
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python3
# Task controller section -----------------------------------------------------
[RS274NGC]
# File containing interpreter variables
PARAMETER_FILE = sim_mm.var
# Motion control section ------------------------------------------------------
[EMCMOT]
EMCMOT = motmod
# Timeout for comm to emcmot, in seconds
COMM_TIMEOUT = 1.0
# BASE_PERIOD is unused in this configuration but specified in core_sim.hal
BASE_PERIOD = 0
# Servo task period, in nano-seconds
SERVO_PERIOD = 1000000
# Hardware Abstraction Layer section --------------------------------------------------
[TASK]
# Name of task controller program, e.g., milltask
TASK = milltask
# Cycle time, in seconds, that task controller will sleep between polls
CYCLE_TIME = 0.001
# Part program interpreter section --------------------------------------------
[HAL]
# The run script first uses halcmd to execute any HALFILE
# files, and then to execute any individual HALCMD commands.
#
# list of hal config files to run through halcmd
# files are executed in the order in which they appear
HALFILE = core_sim.hal
HALFILE = sim_spindle_encoder.hal
HALFILE = axis_manualtoolchange.hal
HALFILE = simulated_home.hal
# list of halcmd commands to execute
# commands are executed in the order in which they appear
#HALCMD = save neta
# Single file that is executed after the GUI has started. Only supported by
# AXIS at this time (only AXIS creates a HAL component of its own)
#POSTGUI_HALFILE = test_postgui.hal
HALUI = halui
# Trajectory planner section --------------------------------------------------
[HALUI]
#No Content
[TRAJ]
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
DEFAULT_LINEAR_VELOCITY = 15
MAX_LINEAR_VELOCITY = 30
DEFAULT_LINEAR_ACCELERATION = 508
MAX_LINEAR_ACCELERATION = 508
POSITION_FILE = position_mm.txt
# Axes sections ---------------------------------------------------------------
# First axis
[EMCIO]
# Name of IO controller program, e.g., io
EMCIO = io
# cycle time, in seconds
CYCLE_TIME = 0.100
# tool table file
TOOL_TABLE = sim_mm.tbl
TOOL_CHANGE_POSITION = 0 0 50.8
[KINS]
KINEMATICS = trivkins
JOINTS = 3
[AXIS_X]
MIN_LIMIT = -254
MAX_LIMIT = 254
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508
[JOINT_0]
TYPE = LINEAR
HOME = 0.000
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508
BACKLASH = 0.000
INPUT_SCALE = 157.48
OUTPUT_SCALE = 1.000
MIN_LIMIT = -254
MAX_LIMIT = 254
FERROR = 1.27
MIN_FERROR = .254
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 127
HOME_LATCH_VEL = 25.4
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = NO
HOME_SEQUENCE = 1
HOME_IS_SHARED = 1
# Second axis
[AXIS_Y]
MIN_LIMIT = -254
MAX_LIMIT = 254
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508
[JOINT_1]
TYPE = LINEAR
HOME = 0.000
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508
BACKLASH = 0.000
INPUT_SCALE = 157.48
OUTPUT_SCALE = 1.000
MIN_LIMIT = -254
MAX_LIMIT = 254
FERROR = 1.27
MIN_FERROR = .254
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 127
HOME_LATCH_VEL = 25.4
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = NO
HOME_SEQUENCE = 1
# Third axis
[AXIS_Z]
MIN_LIMIT = -50.8
MAX_LIMIT = 101.6
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508
[JOINT_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508
BACKLASH = 0.000
INPUT_SCALE = 157.48
OUTPUT_SCALE = 1.000
MIN_LIMIT = -50.8
MAX_LIMIT = 101.6
FERROR = 1.27
MIN_FERROR = .254
HOME_OFFSET = 25.4
HOME_SEARCH_VEL = 127
HOME_LATCH_VEL = 25.4
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = NO
HOME_SEQUENCE = 0
HOME_IS_SHARED = 1
# section for main IO controller parameters -----------------------------------

View File

@@ -0,0 +1,34 @@
.background {
color: #ffffff;
background-color: #232323;
}
*:active {
color: #dadada;
background-color: #151515;
}
*:disabled {
color: #151515;
background-color: #303030;
}
*:hover {
color: #fcfcfc;
background-color: #003263;
}
*:checked {
color: #fcfcfc;
background-color: #002849;
}
button, notebook tab label {
border: 1px solid #808080;
margin:1px;
}
*button:active {
color: #dadada;
background-color: #151515;
}

View File

@@ -0,0 +1,197 @@
***********************************
old Gtk2 styling
kept for obtaining original styling
***********************************
style "default"
{
GtkButton::default_border = {0, 0, 0, 0}
GtkButton::default_outside_border = {0, 0, 0, 0}
GtkButton::child_displacement_x = 0
GtkButton::child_displacement_y = 1
GtkButton::default_spacing = 4
GtkButton::focus-padding = 0
GtkCheckButton::indicator_size = 8
GtkMenuBar::internal-padding = 1
GtkMenuBar::shadow_type = out
GtkHandleBox::shadow_type = out
GtkMenuItem::selected_shadow_type = etched-in
GtkPaned::handle_full_size = 1
GtkPaned::handle_size = 4
GtkRadioButton::indicator_size = 10
GtkRange::slider_width = 12
GtkRange::stepper_size = 10
GtkRange::stepper_spacing = 0
GtkRange::trough_border = 0
GtkScrollbar::has_backward_stepper = 1
GtkScrollbar::has_secondary_backward_stepper = 0
GtkScrollbar::min_slider_length = 10
GtkToolbar::shadow_type = out
GtkWidget::focus-line-width = 1
GtkWidget::focus_padding = 1
GtkWidget::interior_focus = 1
GtkWidget::internal_padding = 2
GtkEntry::cursor_color = "#fcfcfc"
GtkEntry::secondary_cursor_color = "#fcfcfc"
GtkTextView::cursor_color = "#fcfcfc"
GtkTextView::secondary_cursor_color = "#fcfcfc"
GtkEntry::cursor_aspect_ratio = 0.1
GtkEntry::cursor_aspect_ratio = 0.1
xthickness = 1
ythickness = 1
base[ACTIVE] = "#2f519a"
base[INSENSITIVE] = "#303030"
base[NORMAL] = "#121212"
base[PRELIGHT] = "#002849"
base[SELECTED] = "#003263"
bg[ACTIVE] = "#151515"
bg[INSENSITIVE] = "#303030"
bg[NORMAL] = "#232323"
bg[PRELIGHT] = "#003263"
bg[SELECTED] = "#002849"
fg[ACTIVE] = "#dadada"
fg[INSENSITIVE] = "#151515"
fg[NORMAL] = "#ffffff"
fg[PRELIGHT] = "#fcfcfc"
fg[SELECTED] = "#fcfcfc"
text[ACTIVE] = "#fcfcfc"
text[INSENSITIVE] = "#fcfcfc"
text[NORMAL] = "#fcfcfc"
text[PRELIGHT] = "#fcfcfc"
text[SELECTED] = "#fcfcfc"
}
widget_class "*" style "default"
style "menustyle" = "default"
{
xthickness = 2
ythickness = 2
}
widget_class "*BonoboDockItem" style "menustyle"
class "*BonoboDockItem" style "menustyle"
widget_class "*ToolBar" style "menustyle"
class "*ToolBar" style "menustyle"
widget_class "*MenuBar" style "menustyle"
class "*MenuBar" style "menustyle"
style "button" = "default"
{
xthickness = 2
ythickness = 2
engine "xfce"
{
smooth_edge = true
grip_style = none
boxfill
{
fill_style = gradient
orientation = vertical
shade_start = 1.25
shade_end = 1.00
}
}
}
widget_class "*Button*" style "button"
class "*Button*" style "button"
widget_class "*button*" style "button"
class "*button*" style "button"
widget_class "*OptionMenu*" style "button"
class "*OptionMenu*" style "button"
# widget_class "*Tree*" style "button"
# class "*Tree*" style "button"
# widget_class "*GtkScale*" style "button"
# class "*GtkScale*" style "button"
style "sbstyle" = "default"
{
xthickness = 2
ythickness = 2
engine "xfce"
{
smooth_edge = true
grip_style = none
boxfill
{
fill_style = gradient
orientation = automatic
shade_start = 1.25
shade_end = 1.00
}
}
}
widget_class "*Scrollbar*" style "sbstyle"
class "*Scrollbar*" style "sbstyle"
widget_class "*GtkScale*" style "sbstyle"
class "*GtkScale*" style "sbstyle"
style "progress" = "default"
{
xthickness = 2
ythickness = 2
}
widget_class "*GtkProgress*" style "progress"
class "*GtkProgress*" style "progress"
style "menuitem" = "default"
{
xthickness = 1
ythickness = 2
}
widget_class "*MenuItem*" style "menuitem"
class "*MenuItem*" style "menuitem"
style "flat" = "default"
{
xthickness = 2
ythickness = 2
}
widget_class "*HandleBox" style "flat"
# This is for the window borders (xfwm4 & metacity)
#
style "titlebar"
{
bg[SELECTED] = "#003263"
fg[SELECTED] = "#ffffff"
bg[INSENSITIVE] = "#002849"
fg[INSENSITIVE] = "#9a9ada"
}
widget "xfwm" style "titlebar"
class "MetaFrames" style "titlebar"
widget_class "MetaFrames" style "titlebar"
# These custom themed widget require the widget name
# to match in the glade file
style "halsourceview" = "default"
{
base[SELECTED] = "#FFFFFF" # highlight color
text[NORMAL] = "#000000" # normal gcode text
base[INSENSITIVE] = "#d7d7d7" # gcode background 'insensitive'
base[NORMAL] = "#d7d7d7" # gcode background 'sensitive'
bg[INSENSITIVE] = "#999999" # gcode line number background 'insensitive'
bg[NORMAL] = "#999999" # gcode line number background 'sensitive'
}
widget "*.*.gcode_view" style "halsourceview"
style "tooledit" = "default"
{
base[NORMAL] = "#d7d7d7" # background color
bg[NORMAL] = "#d7d7d7" # header color
text[NORMAL] = "#000000" # text
fg[NORMAL] = "#ffffff" # header text
}
widget "*.tooledit1*" style "tooledit"
widget "*.tooledit1*.GtkButton" style "default"
widget "*.offsetpage1*" style "tooledit"
widget "*.offsetpage1*.GtkButton" style "default"

10
configs/sim.gscreen/lathe.tbl Executable file
View File

@@ -0,0 +1,10 @@
T1 P1 D0.100000 Z+0.100000 I+95.000000 J+155.000000 Q1 ;
T2 P2 D0.100000 I+85.000000 J+25.000000 Q2 ;
T3 P3 D0.100000 I+275.000000 J+335.000000 Q3 ;
T4 P4 D0.100000 I+265.000000 J+205.000000 Q4 ;
T5 P5 D0.100000 I+210.000000 J+150.000000 Q5 ;
T6 P6 D0.100000 X+0.500000 Z+0.500000 I+120.000000 J+60.000000 Q6 ;
T7 P7 D0.100000 I-30.000000 J+30.000000 Q7 ;
T8 P8 D0.100000 I+240.000000 J+300.000000 Q8 ;
T9 P9 D0.100000 Q9 ;
T10 P10 D0. ; demo zero diameter

View File

@@ -0,0 +1,3 @@
net spindle-speed-limited gscreen.spindle-readout-in
net spindle-at-speed gscreen.spindle-at-speed

View File

@@ -0,0 +1,16 @@
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000
0.00000000000000000

4
configs/sim.gscreen/sim.tbl Executable file
View File

@@ -0,0 +1,4 @@
T1 P1 D0.125000 Z+0.511000 ;1/8 end mill
T2 P2 D0.062500 Z+0.100000 ;1/16 end mill
T3 P3 D0.201000 Z+1.273000 ;#7 tap drill
T98876 P543 Z+0.100000 ;big tool number

119
configs/sim.gscreen/sim.var Executable file
View File

@@ -0,0 +1,119 @@
5161 0.000000
5162 0.000000
5163 0.000000
5164 0.000000
5165 0.000000
5166 0.000000
5167 0.000000
5168 0.000000
5169 0.000000
5181 0.000000
5182 0.000000
5183 0.000000
5184 0.000000
5185 0.000000
5186 0.000000
5187 0.000000
5188 0.000000
5189 0.000000
5210 0.000000
5211 0.000000
5212 0.000000
5213 0.000000
5214 0.000000
5215 0.000000
5216 0.000000
5217 0.000000
5218 0.000000
5219 0.000000
5220 1.000000
5221 0.000000
5222 0.000000
5223 0.000000
5224 0.000000
5225 0.000000
5226 0.000000
5227 0.000000
5228 0.000000
5229 0.000000
5230 0.000000
5241 0.000000
5242 0.000000
5243 0.000000
5244 0.000000
5245 0.000000
5246 0.000000
5247 0.000000
5248 0.000000
5249 0.000000
5250 0.000000
5261 0.000000
5262 0.000000
5263 0.000000
5264 0.000000
5265 0.000000
5266 0.000000
5267 0.000000
5268 0.000000
5269 0.000000
5270 0.000000
5281 0.000000
5282 0.000000
5283 0.000000
5284 0.000000
5285 0.000000
5286 0.000000
5287 0.000000
5288 0.000000
5289 0.000000
5290 0.000000
5301 0.000000
5302 0.000000
5303 0.000000
5304 0.000000
5305 0.000000
5306 0.000000
5307 0.000000
5308 0.000000
5309 0.000000
5310 0.000000
5321 0.000000
5322 0.000000
5323 0.000000
5324 0.000000
5325 0.000000
5326 0.000000
5327 0.000000
5328 0.000000
5329 0.000000
5330 0.000000
5341 0.000000
5342 0.000000
5343 0.000000
5344 0.000000
5345 0.000000
5346 0.000000
5347 0.000000
5348 0.000000
5349 0.000000
5350 0.000000
5361 0.000000
5362 0.000000
5363 0.000000
5364 0.000000
5365 0.000000
5366 0.000000
5367 0.000000
5368 0.000000
5369 0.000000
5370 0.000000
5381 0.000000
5382 0.000000
5383 0.000000
5384 0.000000
5385 0.000000
5386 0.000000
5387 0.000000
5388 0.000000
5389 0.000000
5390 0.000000

119
configs/sim.gscreen/sim.var.bak Executable file
View File

@@ -0,0 +1,119 @@
5161 0.000000
5162 0.000000
5163 0.000000
5164 0.000000
5165 0.000000
5166 0.000000
5167 0.000000
5168 0.000000
5169 0.000000
5181 0.000000
5182 0.000000
5183 0.000000
5184 0.000000
5185 0.000000
5186 0.000000
5187 0.000000
5188 0.000000
5189 0.000000
5210 0.000000
5211 0.000000
5212 0.000000
5213 0.000000
5214 0.000000
5215 0.000000
5216 0.000000
5217 0.000000
5218 0.000000
5219 0.000000
5220 1.000000
5221 0.000000
5222 0.000000
5223 0.000000
5224 0.000000
5225 0.000000
5226 0.000000
5227 0.000000
5228 0.000000
5229 0.000000
5230 0.000000
5241 0.000000
5242 0.000000
5243 0.000000
5244 0.000000
5245 0.000000
5246 0.000000
5247 0.000000
5248 0.000000
5249 0.000000
5250 0.000000
5261 0.000000
5262 0.000000
5263 0.000000
5264 0.000000
5265 0.000000
5266 0.000000
5267 0.000000
5268 0.000000
5269 0.000000
5270 0.000000
5281 0.000000
5282 0.000000
5283 0.000000
5284 0.000000
5285 0.000000
5286 0.000000
5287 0.000000
5288 0.000000
5289 0.000000
5290 0.000000
5301 0.000000
5302 0.000000
5303 0.000000
5304 0.000000
5305 0.000000
5306 0.000000
5307 0.000000
5308 0.000000
5309 0.000000
5310 0.000000
5321 0.000000
5322 0.000000
5323 0.000000
5324 0.000000
5325 0.000000
5326 0.000000
5327 0.000000
5328 0.000000
5329 0.000000
5330 0.000000
5341 0.000000
5342 0.000000
5343 0.000000
5344 0.000000
5345 0.000000
5346 0.000000
5347 0.000000
5348 0.000000
5349 0.000000
5350 0.000000
5361 0.000000
5362 0.000000
5363 0.000000
5364 0.000000
5365 0.000000
5366 0.000000
5367 0.000000
5368 0.000000
5369 0.000000
5370 0.000000
5381 0.000000
5382 0.000000
5383 0.000000
5384 0.000000
5385 0.000000
5386 0.000000
5387 0.000000
5388 0.000000
5389 0.000000
5390 0.000000

24
configs/sim.gscreen/sim_mm.tbl Executable file
View File

@@ -0,0 +1,24 @@
T1 P1 Z0.511 D3 ;3mm end mill
T2 P4 Z0.1 D1.5 ;1.5mm end mill
T3 P3 Z1.273 D5 ;5mm tap drill
T4 P2 Z10 D16 ;16 mm schaftfräser
T5 P5 Z25 D25 ;25'er fräser
T6 P6 Z6 D6 ;tool 6
T7 P7 Z7 D7 ;7
T8 P8 Z8 D8 ;8
T9 P9 Z9 D9 ;9
T10 P10 Z10 D10 ;10
T11 P11 Z11 D11 ;11
T12 P12 Z12 D12 ;12
T13 P13 Z13 D13 ;13
T14 P14 Z14 D14 ;14
T15 P15 Z15 D15 ;15
T16 P16 Z16 D16 ;16
T17 P17 Z17 D17 ;17
T18 P18 Z18 D18 ;18
T19 P19 Z19 D19 ;19
T20 P20 Z20 D20 ;20
T21 P21 Z21 D21 ;21
T22 P22 Z22 D22 ;22
T23 P23 Z23 D23 ;23
T24 P24 Z24 D24 ;24

106
configs/sim.gscreen/vcp_box.glade Executable file
View File

@@ -0,0 +1,106 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<requires lib="gtk+" version="2.16"/>
<!-- interface-requires gladevcp 0.0 -->
<!-- interface-naming-policy project-wide -->
<object class="GtkWindow" id="window1">
<property name="can_focus">False</property>
<child>
<object class="GtkTable" id="table1">
<property name="width_request">300</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="n_rows">2</property>
<property name="n_columns">2</property>
<child>
<object class="HAL_Meter" id="hal_meter1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="bg_color">#ffffffffffff</property>
<property name="label">RPM</property>
<property name="majorscale">500</property>
<property name="max">3000</property>
<property name="minorscale">100</property>
<property name="z0_color">#0000ffff0000</property>
<property name="z1_color">#ffffffff0000</property>
<property name="z2_color">#ffff00000000</property>
</object>
</child>
<child>
<object class="GtkHBox" id="hbox1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<child>
<object class="HAL_LED" id="hal_led1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="led_blink_rate">0</property>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="HAL_LED" id="hal_led3">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="led_blink_rate">0</property>
<property name="pick_color_off">#f6e0ebe201e9</property>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="HAL_LED" id="hal_led2">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="led_blink_rate">0</property>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
<packing>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
<child>
<object class="State_Label" id="state_label1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">label</property>
<property name="false_text">Imperial</property>
<property name="true_text">Metric</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
</packing>
</child>
<child>
<object class="Status_Label" id="status_label1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">label</property>
<property name="text_template">User System = G%s</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
</object>
</child>
</object>
</interface>