Hi all, I'm in process to setup my 5 axis milling machine (gantry construction), and I managed to configure all axes, so I can home all of them and then switch to world. There I can enter some code to test all axes and they run with no problem with G0 speed (3000mm/min linear) all at the same time.
The only problem I am stuck on, and run out of idea, is when I try to jog (in world mode), where I can do that only with speeds below around 400mm/min, If i go higher, I immediately get Joint following error message.What is also confusing me is when I jog with low speed and on the end of jog stepper stops and makes small move in opposite direction of jog direction. This is happening only in world mode.I played around with values of FERROR and MIN_ERROR ... As I am switching from Mach3, I can remember there I had to set some debounce delay on limit/home switches, but I think in this case here I would get error messages of limit/home switch being triggered or it could cause also Joint following error? Here are links to my .ini and .hal files. http://www.sendspace.com/file/iez45p http://www.sendspace.com/file/ku6xw7 Regards! Pasted INI and HAL: [EMC]MACHINE = my-5axisDEBUG = 0 [DISPLAY]DISPLAY = axisEDITOR = geditPOSITION_OFFSET = RELATIVEPOSITION_FEEDBACK = ACTUALMAX_FEED_OVERRIDE = 1.2INTRO_GRAPHIC = emc2.gifINTRO_TIME = 2PROGRAM_PREFIX = /home/tomaz/emc2/nc_filesINCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm [FILTER]PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth ImagePROGRAM_EXTENSION = .py Python Scriptpng = image-to-gcodegif = image-to-gcodejpg = image-to-gcodepy = python [TASK]TASK = milltaskCYCLE_TIME = 0.010 [RS274NGC]PARAMETER_FILE = emc.var [EMCMOT]EMCMOT = motmodCOMM_TIMEOUT = 1.0COMM_WAIT = 0.010BASE_PERIOD = 25000SERVO_PERIOD = 1000000 [HAL]HALFILE = my-5axis.halPOSTGUI_HALFILE = custom_postgui.hal [TRAJ]AXES = 6COORDINATES = X Y Z A B CLINEAR_UNITS = mmANGULAR_UNITS = degreeCYCLE_TIME = 0.010DEFAULT_VELOCITY = 30.00MAX_LINEAR_VELOCITY = 50.00 [EMCIO]EMCIO = ioCYCLE_TIME = 0.100TOOL_TABLE = tool.tbl #X[AXIS_0]TYPE = LINEARHOME = 0.0MAX_VELOCITY = 47.5MAX_ACCELERATION = 60.0STEPGEN_MAXACCEL = 80.0SCALE = -266.666666667FERROR = 1MIN_FERROR = .5MIN_LIMIT = 0.0MAX_LIMIT = 1705.0HOME_OFFSET = 0.0HOME_SEQUENCE = 1HOME_SEARCH_VEL = -5.00000HOME_LATCH_VEL = 2.00000HOME_IGNORE_LIMITS = YES #Y[AXIS_1]TYPE = LINEARHOME = 0.0MAX_VELOCITY = 47.5MAX_ACCELERATION = 60.0STEPGEN_MAXACCEL = 80.0SCALE = -266.666666667FERROR = 1MIN_FERROR = .5MIN_LIMIT = 0.0MAX_LIMIT = 1160.0HOME_OFFSET = 0.000000HOME_SEQUENCE = 0HOME_SEARCH_VEL = -5.00000HOME_LATCH_VEL = 2.00000HOME_IGNORE_LIMITS = YES #Z[AXIS_2]TYPE = LINEARHOME = 0.0MAX_VELOCITY = 40.0MAX_ACCELERATION = 60.0STEPGEN_MAXACCEL = 67.5SCALE = 200.0FERROR = 1MIN_FERROR = .5MIN_LIMIT = -475.0MAX_LIMIT = 0.0HOME_OFFSET = 0.0HOME_SEQUENCE = 0HOME_SEARCH_VEL = 5.00000HOME_LATCH_VEL = -2.00000HOME_IGNORE_LIMITS = YES #X1[AXIS_3]TYPE = LINEARHOME = 0.0MAX_VELOCITY = 47.5MAX_ACCELERATION = 60.0STEPGEN_MAXACCEL = 80.0SCALE = -266.666666667FERROR = 1MIN_FERROR = .25MIN_LIMIT = 0.0MAX_LIMIT = 1705.0HOME_OFFSET = 0.0HOME_SEQUENCE = 1HOME_SEARCH_VEL = -5.00000HOME_LATCH_VEL = 2.00000HOME_IGNORE_LIMITS = YES #B[AXIS_4]TYPE = ANGULARHOME = 0.0MAX_VELOCITY = 500MAX_ACCELERATION = 100.0STEPGEN_MAXACCEL = 110.0SCALE = -166.666666667FERROR = 1MIN_FERROR = .25MIN_LIMIT = -130.0MAX_LIMIT = 130.0HOME_OFFSET = 17.000HOME_SEQUENCE = 1HOME_SEARCH_VEL = 5.00000HOME_LATCH_VEL = -2.00000HOME_IGNORE_LIMITS = YES #C[AXIS_5]TYPE = ANGULARHOME = 0.0MAX_VELOCITY = 500MAX_ACCELERATION = 100.0STEPGEN_MAXACCEL = 110.0SCALE = -166.666666667FERROR = 1MIN_FERROR = .25MIN_LIMIT = -185.0MAX_LIMIT = 185.0HOME_OFFSET = 60.000HOME_SEQUENCE = 1HOME_SEARCH_VEL = 5.00000HOME_LATCH_VEL = -2.00000HOME_IGNORE_LIMITS = YES -------------------------- loadrt gantrykins setp gantrykins.joint-0 0setp gantrykins.joint-1 1setp gantrykins.joint-2 2setp gantrykins.joint-3 0setp gantrykins.joint-4 4setp gantrykins.joint-5 5 loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXESloadrt probe_parportloadrt hal_parport cfg="0xe800 out 0xec00 in "setp parport.0.reset-time 500loadrt stepgen step_type=0,0,0,0,0,0 addf parport.0.read base-threadaddf parport.1.read base-threadaddf stepgen.make-pulses base-threadaddf parport.0.write base-threadaddf parport.0.reset base-threadaddf parport.1.write base-thread addf stepgen.capture-position servo-threadaddf motion-command-handler servo-threadaddf motion-controller servo-threadaddf stepgen.update-freq servo-threadnet spindle-cmd <= motion.spindle-speed-out #X axissetp parport.0.pin-02-out-invert 1net xstep => parport.0.pin-02-outsetp parport.0.pin-02-out-reset 1 setp parport.0.pin-03-out-invert 1net xdir => parport.0.pin-03-out #X1 axissetp parport.0.pin-04-out-invert 1net astep => parport.0.pin-04-outsetp parport.0.pin-04-out-reset 1 setp parport.0.pin-05-out-invert 1net adir => parport.0.pin-05-out #Y axisnet ystep => parport.0.pin-06-outsetp parport.0.pin-06-out-reset 1 net ydir => parport.0.pin-07-out #Z axisnet zstep => parport.0.pin-14-outsetp parport.0.pin-14-out-reset 1 net zdir => parport.0.pin-01-out #Bsetp parport.0.pin-17-out-invert 1 net bstep => parport.0.pin-17-outsetp parport.0.pin-17-out-reset 1 net bdir => parport.0.pin-16-out #Csetp parport.0.pin-08-out-invert 1 net cstep => parport.0.pin-08-outsetp parport.0.pin-08-out-reset 1 net cdir => parport.0.pin-09-out #inputsnet estop-ext <= parport.0.pin-10-innet min-home-y <= parport.1.pin-04-innet min-home-z <= parport.1.pin-06-innet min-home-x <= parport.1.pin-03-innet min-home-a <= parport.1.pin-02-innet min-home-b <= parport.1.pin-08-innet min-home-c <= parport.1.pin-07-in #joint 0setp stepgen.0.position-scale [AXIS_0]SCALEsetp stepgen.0.steplen 1setp stepgen.0.stepspace 0setp stepgen.0.dirhold 27272setp stepgen.0.dirsetup 8272setp stepgen.0.maxaccel [AXIS_0]STEPGEN_MAXACCELnet xpos-cmd axis.0.motor-pos-cmd => stepgen.0.position-cmdnet xpos-fb stepgen.0.position-fb => axis.0.motor-pos-fbnet xstep <= stepgen.0.stepnet xdir <= stepgen.0.dirnet xenable axis.0.amp-enable-out => stepgen.0.enablenet min-home-x => axis.0.home-sw-innet min-home-x => axis.0.neg-lim-sw-in #joint 3setp stepgen.3.position-scale [AXIS_3]SCALEsetp stepgen.3.steplen 1setp stepgen.3.stepspace 0setp stepgen.3.dirhold 27272setp stepgen.3.dirsetup 8272setp stepgen.3.maxaccel [AXIS_3]STEPGEN_MAXACCELnet apos-cmd axis.3.motor-pos-cmd => stepgen.3.position-cmdnet apos-fb stepgen.3.position-fb => axis.3.motor-pos-fbnet astep <= stepgen.3.stepnet adir <= stepgen.3.dirnet aenable axis.3.amp-enable-out => stepgen.3.enablenet min-home-a => axis.3.home-sw-innet min-home-a => axis.3.neg-lim-sw-in #joint 1setp stepgen.1.position-scale [AXIS_1]SCALEsetp stepgen.1.steplen 1setp stepgen.1.stepspace 0setp stepgen.1.dirhold 27272setp stepgen.1.dirsetup 8272setp stepgen.1.maxaccel [AXIS_1]STEPGEN_MAXACCELnet ypos-cmd axis.1.motor-pos-cmd => stepgen.1.position-cmdnet ypos-fb stepgen.1.position-fb => axis.1.motor-pos-fbnet ystep <= stepgen.1.stepnet ydir <= stepgen.1.dirnet yenable axis.1.amp-enable-out => stepgen.1.enablenet min-home-y => axis.1.home-sw-innet min-home-y => axis.1.neg-lim-sw-in #joint 2setp stepgen.2.position-scale [AXIS_2]SCALEsetp stepgen.2.steplen 1setp stepgen.2.stepspace 0setp stepgen.2.dirhold 27272setp stepgen.2.dirsetup 8272setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCELnet zpos-cmd axis.2.motor-pos-cmd => stepgen.2.position-cmdnet zpos-fb stepgen.2.position-fb => axis.2.motor-pos-fbnet zstep <= stepgen.2.stepnet zdir <= stepgen.2.dirnet zenable axis.2.amp-enable-out => stepgen.2.enablenet min-home-z => axis.2.home-sw-innet min-home-z => axis.2.neg-lim-sw-in #joint 4setp stepgen.4.position-scale [AXIS_4]SCALEsetp stepgen.4.steplen 1setp stepgen.4.stepspace 0setp stepgen.4.dirhold 27272setp stepgen.4.dirsetup 8272setp stepgen.4.maxaccel [AXIS_4]STEPGEN_MAXACCELnet bpos-cmd axis.4.motor-pos-cmd => stepgen.4.position-cmdnet bpos-fb stepgen.4.position-fb => axis.4.motor-pos-fbnet bstep <= stepgen.4.stepnet bdir <= stepgen.4.dirnet benable axis.4.amp-enable-out => stepgen.4.enablenet min-home-b => axis.4.home-sw-in#net min-home-b => axis.4.neg-lim-sw-in #joint 5setp stepgen.5.position-scale [AXIS_5]SCALEsetp stepgen.5.steplen 1setp stepgen.5.stepspace 0setp stepgen.5.dirhold 27272setp stepgen.5.dirsetup 8272setp stepgen.5.maxaccel [AXIS_5]STEPGEN_MAXACCELnet cpos-cmd axis.5.motor-pos-cmd => stepgen.5.position-cmdnet cpos-fb stepgen.5.position-fb => axis.5.motor-pos-fbnet cstep <= stepgen.5.stepnet cdir <= stepgen.5.dirnet cenable axis.5.amp-enable-out => stepgen.5.enablenet min-home-c => axis.5.home-sw-in#net min-home-c => axis.5.neg-lim-sw-in net estop-out <= iocontrol.0.user-enable-outnet estop-ext => iocontrol.0.emc-enable-in loadusr -W hal_manualtoolchangenet tool-change iocontrol.0.tool-change => hal_manualtoolchange.changenet tool-changed iocontrol.0.tool-changed <= hal_manualtoolchange.changednet tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.numbernet tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared ---------------- ------------------------------------------------------------------------------ Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex infrastructure or vast IT resources to deliver seamless, secure access to virtual desktops. With this all-in-one solution, easily deploy virtual desktops for less than the cost of PCs and save 60% on VDI infrastructure costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users