LinuxCNC V 2.7.15
I owned since 2015 a 3040 cnc using the original controller, it has steppers and 6 limit switches wired in parallel one on each end of the axis' At one time i had it working before ' fixing" it and of course that configuration went someplace into the bit bucket. it actually carved in a PCB the "LinuxCNC" Axis opens with in the display at 134.7 mm long so i think then is was working. it was sent with a non working copy of Mach3. I am more interested in LinuxCNC but am a bit lost. I have read many messages in the forum and also am on the mailing list, today I printed out the PDF manual, all 715 pages of it to have to make notes in.
I was close to making fine adjustments with a 3 lb cross peen hammer but decided to ask here
Now for the issues
I got it homing so far and it homes to the left front corner of the router with the Z axis up top. The axis display also shows the " Bit" in the right position. But after it will not jog very far just a few millimeters. Looking at the Mill Configuration on Page 22 of the 2.7.15 PDF manual and using the computer keyboard to jog the down arrow key sends the Y axis in the - direction, the axis display goes +
The left arrow key sends the X in the - direction, the Axis display goes +
I am including the .hal, .ini and the only machine specifications i have for it.
Gary3040.ini
# Generated by stepconf 1.1 at Fri Aug 28 16:45:57 2020
# If you make changes to this file, they will be
# overwritten when you run stepconf again
[EMC]
MACHINE = Gary3040
DEBUG = 0
[DISPLAY]
DISPLAY = axis
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
ARCDIVISION = 64
GRIDS = 10mm 20mm 50mm 100mm 1in 2in 5in 10in
MAX_FEED_OVERRIDE = 1.2
MIN_SPINDLE_OVERRIDE = 0.5
MAX_SPINDLE_OVERRIDE = 1.2
DEFAULT_LINEAR_VELOCITY = 3.00
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 30.00
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/gary/linuxcnc/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
PYVCP = custompanel.xml
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[RS274NGC]
PARAMETER_FILE = linuxcnc.var
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 41666
SERVO_PERIOD = 1000000
[HAL]
HALUI = halui
HALFILE = Gary3040.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal
[HALUI]
# add halui MDI commands here (max 64)
[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 3.00
MAX_VELOCITY = 30.00
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 28.5004560073
MAX_ACCELERATION = 50.0
STEPGEN_MAXACCEL = 62.5
SCALE = 400.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -0.001
MAX_LIMIT = 370.0
HOME_OFFSET = 5.000000
HOME_SEARCH_VEL = 10.000000
HOME_LATCH_VEL = -1.250000
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 1
[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 100.0
STEPGEN_MAXACCEL = 125.0
SCALE = -400.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = 0.0
MAX_LIMIT = 390.0
HOME_OFFSET = 5.000000
HOME_SEARCH_VEL = 10.000000
HOME_LATCH_VEL = -1.250000
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 2
[AXIS_2]
TYPE = LINEAR
HOME = 55.0
MAX_VELOCITY = 15.0
MAX_ACCELERATION = 30.0
STEPGEN_MAXACCEL = 37.5
SCALE = 400.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = 0.0
MAX_LIMIT = 56.0
HOME_OFFSET = 56.000000
HOME_SEARCH_VEL = 5.000000
HOME_LATCH_VEL = 1.250000
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0
Gary3040.hal
# Generated by stepconf 1.1 at Fri Aug 28 16:45:57 2020
# If you make changes to this file, they will be
# overwritten when you run stepconf again
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt hal_parport cfg="0xe010 out"
loadrt stepgen step_type=0,0,0
loadrt classicladder_rt numPhysInputs=15 numPhysOutputs=15 numS32in=10 numS32out=10 numFloatIn=10 numFloatOut=10
addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf parport.0.write base-thread
addf stepgen.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf classicladder.0.refresh servo-thread
addf stepgen.update-freq servo-thread
net spindle-cmd-rpm <= motion.spindle-speed-out
net spindle-cmd-rpm-abs <= motion.spindle-speed-out-abs
net spindle-cmd-rps <= motion.spindle-speed-out-rps
net spindle-cmd-rps-abs <= motion.spindle-speed-out-rps-abs
net spindle-at-speed => motion.spindle-at-speed
net probe-in => motion.probe-input
net xenable => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
setp parport.0.pin-03-out-invert 1
net xdir => parport.0.pin-03-out
net ystep => parport.0.pin-04-out
setp parport.0.pin-05-out-invert 1
net ydir => parport.0.pin-05-out
net zstep => parport.0.pin-06-out
setp parport.0.pin-07-out-invert 1
net zdir => parport.0.pin-07-out
net estop-ext <= parport.0.pin-10-in
net both-home-x <= parport.0.pin-11-in-not
net both-home-y <= parport.0.pin-12-in-not
net both-home-z <= parport.0.pin-13-in-not
net probe-in <= parport.0.pin-15-in
setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 1
setp stepgen.0.dirhold 35000
setp stepgen.0.dirsetup 35000
setp stepgen.0.maxaccel [AXIS_0]STEPGEN_MAXACCEL
net xpos-cmd axis.0.motor-pos-cmd => stepgen.0.position-cmd
net xpos-fb stepgen.0.position-fb => axis.0.motor-pos-fb
net xstep <= stepgen.0.step
net xdir <= stepgen.0.dir
net xenable axis.0.amp-enable-out => stepgen.0.enable
net both-home-x => axis.0.home-sw-in
net both-home-x => axis.0.neg-lim-sw-in
net both-home-x => axis.0.pos-lim-sw-in
setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 1
setp stepgen.1.dirhold 35000
setp stepgen.1.dirsetup 35000
setp stepgen.1.maxaccel [AXIS_1]STEPGEN_MAXACCEL
net ypos-cmd axis.1.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.1.position-fb => axis.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable axis.1.amp-enable-out => stepgen.1.enable
net both-home-y => axis.1.home-sw-in
net both-home-y => axis.1.neg-lim-sw-in
net both-home-y => axis.1.pos-lim-sw-in
setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 1
setp stepgen.2.dirhold 35000
setp stepgen.2.dirsetup 35000
setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCEL
net zpos-cmd axis.2.motor-pos-cmd => stepgen.2.position-cmd
net zpos-fb stepgen.2.position-fb => axis.2.motor-pos-fb
net zstep <= stepgen.2.step
net zdir <= stepgen.2.dir
net zenable axis.2.amp-enable-out => stepgen.2.enable
net both-home-z => axis.2.home-sw-in
net both-home-z => axis.2.neg-lim-sw-in
net both-home-z => axis.2.pos-lim-sw-in
net estop-out <= iocontrol.0.user-enable-out
net estop-ext => iocontrol.0.emc-enable-in
loadusr -W hal_manualtoolchange
net tool-change iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-changed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
# Load Classicladder without GUI (can reload LADDER GUI in AXIS GUI
loadusr classicladder --nogui custom.clp
3040 cnc specs
Main technical details forCNC 3040Z-DQ V2 are as below:
CNC 3040Z-DQ V2 technical detailes
X,Y,Z Working Area: 275×385×55mm
Max. Feeding height: ≤70mm
Outside dimension 610×480×400mm
Table size 530×320mm
Lathe structure 6061/6063 Aluminium alloy
Stepping motor two-phase 57/1.8A
Drive unit: 1204 Ball Screw
Sliding unit:: Chromeplate shaft
Maximum speed: 0-4000mm/min
Engraving speed: 300-2500mm/min
Repeat positioning
Accuracy:
0.05mm
Spindle motor: spindle motor with direct current(200w)
Spindle speed: 1000~8000RPM/MIN
Cutting tool-holder: ER11/3.175mm
Interface: Parallel port
Software Compatability: Mach3/Emc2,(Type3,Wentai, ArtCAM)
Command code: G code/.nc/.ncc/.tab/.txt
Thanks for any insight and suggestions you can privode
Gary Fiber K8IZ