Dear All, what could be the reason that on Ubuntu 10.04 with EMC 2.4.6 I always get an error when i want to start old configuration from EMC 2.3... see error message below + HAL and INI file (this are files made by pncconf - new one and if i want to load a thread with period of 80000 us this message appears:
89882.332322] RTAI[sched]: timer setup = 999 ns, resched latency = 2944 ns. [89882.332390] RTAI[usi]: enabled. [89882.371583] RTAI[math]: loaded. [89882.441085] HAL_LIB: ERROR: new thread period 80000 is less than clock period 999999 [89882.441090] THREADS: ERROR: could not create thread 'slow-thread' [89882.730937] RTAI[math]: unloaded. [89882.763416] SCHED releases registered named ALIEN RTGLBH [89882.796259] RTAI[malloc]: unloaded. [89882.896018] RTAI[sched]: unloaded (forced hard/soft/hard transitions: traps 0, syscalls 0). [89882.899015] I-pipe: Domain RTAI unregistered. [89882.899063] RTAI[hal]: unmounted. HAL file: # Generated by PNCconf at Sun Jan 16 10:33:41 2011 # If you make changes to this file, they will be # overwritten when you run PNCconf again loadrt trivkins loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES #počasnejši thread za classicladder loadrt threads name1=fast-thread period1=80000 loadrt probe_parport loadrt hostmot2 loadrt hm2_pci config="firmware=hm2/5i20/SVST8_4.BIT num_encoders=4 num_pwmgens=4 num_stepgens=0" setp hm2_5i20.0.pwmgen.pwm_frequency 100000 setp hm2_5i20.0.pwmgen.pdm_frequency 100000 setp hm2_5i20.0.watchdog.timeout_ns 10000000 loadrt hal_parport cfg="0x0378 out" loadrt charge_pump loadrt near addf parport.0.read servo-thread addf charge-pump fast-thread addf parport.0.write servo-thread addf hm2_5i20.0.read servo-thread addf motion-command-handler servo-thread addf motion-controller servo-thread loadrt pid num_chan=3 addf pid.0.do-pid-calcs servo-thread addf pid.1.do-pid-calcs servo-thread addf pid.2.do-pid-calcs servo-thread alias pin pid.0.Pgain pid.x.Pgain alias pin pid.0.Igain pid.x.Igain alias pin pid.0.Dgain pid.x.Dgain alias pin pid.0.bias pid.x.bias alias pin pid.0.FF0 pid.x.FF0 alias pin pid.0.FF1 pid.x.FF1 alias pin pid.0.FF2 pid.x.FF2 alias pin pid.0.deadband pid.x.deadband alias pin pid.0.maxoutput pid.x.maxoutput alias pin pid.0.enable pid.x.enable alias pin pid.0.command pid.x.command alias pin pid.0.feedback pid.x.feedback alias pin pid.0.output pid.x.output alias pin pid.0.index-enable pid.x.index-enable alias pin pid.1.Pgain pid.z.Pgain alias pin pid.1.Igain pid.z.Igain alias pin pid.1.Dgain pid.z.Dgain alias pin pid.1.bias pid.z.bias alias pin pid.1.FF0 pid.z.FF0 alias pin pid.1.FF1 pid.z.FF1 alias pin pid.1.FF2 pid.z.FF2 alias pin pid.1.deadband pid.z.deadband alias pin pid.1.maxoutput pid.z.maxoutput alias pin pid.1.enable pid.z.enable alias pin pid.1.command pid.z.command alias pin pid.1.feedback pid.z.feedback alias pin pid.1.output pid.z.output alias pin pid.1.index-enable pid.z.index-enable alias pin pid.2.Pgain pid.s.Pgain alias pin pid.2.Igain pid.s.Igain alias pin pid.2.Dgain pid.s.Dgain alias pin pid.2.bias pid.s.bias alias pin pid.2.FF0 pid.s.FF0 alias pin pid.2.FF1 pid.s.FF1 alias pin pid.2.FF2 pid.s.FF2 alias pin pid.2.deadband pid.s.deadband alias pin pid.2.maxoutput pid.s.maxoutput alias pin pid.2.enable pid.s.enable alias pin pid.2.command pid.s.command alias pin pid.2.feedback pid.s.feedback alias pin pid.2.output pid.s.output alias pin pid.2.index-enable pid.s.index-enable addf near.0 servo-thread addf hm2_5i20.0.write servo-thread addf hm2_5i20.0.pet_watchdog servo-thread # external output signals net charge-pump <= charge-pump.out net charge-pump => parport.0.pin-01-out # external input signals # --- ESTOP-EXT --- net estop-ext <= hm2_5i20.0.gpio.032.in # --- MAX-HOME-X --- net max-home-x <= hm2_5i20.0.gpio.037.in_not # --- MIN-HOME-X --- net min-home-x <= hm2_5i20.0.gpio.048.in_not # --- MAX-HOME-Z --- net max-home-z <= hm2_5i20.0.gpio.049.in # --- MIN-HOME-Z --- net min-home-z <= hm2_5i20.0.gpio.061.in_not #******************* # AXIS X #******************* setp pid.x.Pgain [AXIS_0]P setp pid.x.Igain [AXIS_0]I setp pid.x.Dgain [AXIS_0]D setp pid.x.bias [AXIS_0]BIAS setp pid.x.FF0 [AXIS_0]FF0 setp pid.x.FF1 [AXIS_0]FF1 setp pid.x.FF2 [AXIS_0]FF2 setp pid.x.deadband [AXIS_0]DEADBAND setp pid.x.maxoutput [AXIS_0]MAX_OUTPUT net x-index-enable <=> pid.x.index-enable # ---PWM Generator signals/setup--- setp hm2_5i20.0.pwmgen.00.output-type 3 setp hm2_5i20.0.pwmgen.00.scale [AXIS_0]OUTPUT_SCALE net xenable => pid.x.enable => charge-pump.enable net xoutput pid.x.output => hm2_5i20.0.pwmgen.00.value net xpos-cmd axis.0.motor-pos-cmd => pid.x.command net xenable axis.0.amp-enable-out => hm2_5i20.0.pwmgen.00.enable # ---Encoder feedback signals/setup--- setp hm2_5i20.0.encoder.00.counter-mode 0 setp hm2_5i20.0.encoder.00.filter 1 setp hm2_5i20.0.encoder.00.index-invert 0 setp hm2_5i20.0.encoder.00.index-mask 0 setp hm2_5i20.0.encoder.00.index-mask-invert 0 setp hm2_5i20.0.encoder.00.scale [AXIS_0]INPUT_SCALE net xpos-fb <= hm2_5i20.0.encoder.00.position net xpos-fb => pid.x.feedback net xpos-fb => axis.0.motor-pos-fb net x-index-enable axis.0.index-enable <=> hm2_5i20.0.encoder.00.index-enable # ---setup home / limit switch signals--- net max-home-x => axis.0.home-sw-in net min-home-x => axis.0.neg-lim-sw-in net max-home-x => axis.0.pos-lim-sw-in #******************* # AXIS Z #******************* setp pid.z.Pgain [AXIS_2]P setp pid.z.Igain [AXIS_2]I setp pid.z.Dgain [AXIS_2]D setp pid.z.bias [AXIS_2]BIAS setp pid.z.FF0 [AXIS_2]FF0 setp pid.z.FF1 [AXIS_2]FF1 setp pid.z.FF2 [AXIS_2]FF2 setp pid.z.deadband [AXIS_2]DEADBAND setp pid.z.maxoutput [AXIS_2]MAX_OUTPUT net z-index-enable <=> pid.z.index-enable # ---PWM Generator signals/setup--- setp hm2_5i20.0.pwmgen.02.output-type 3 setp hm2_5i20.0.pwmgen.02.scale [AXIS_2]OUTPUT_SCALE net zenable => pid.z.enable net zoutput pid.z.output => hm2_5i20.0.pwmgen.02.value net zpos-cmd axis.2.motor-pos-cmd => pid.z.command net zenable axis.2.amp-enable-out => hm2_5i20.0.pwmgen.02.enable # ---Encoder feedback signals/setup--- setp hm2_5i20.0.encoder.02.counter-mode 0 setp hm2_5i20.0.encoder.02.filter 1 setp hm2_5i20.0.encoder.02.index-invert 0 setp hm2_5i20.0.encoder.02.index-mask 0 setp hm2_5i20.0.encoder.02.index-mask-invert 0 setp hm2_5i20.0.encoder.02.scale [AXIS_2]INPUT_SCALE net zpos-fb <= hm2_5i20.0.encoder.02.position net zpos-fb => pid.z.feedback net zpos-fb => axis.2.motor-pos-fb net z-index-enable axis.2.index-enable <=> hm2_5i20.0.encoder.02.index-enable # ---setup home / limit switch signals--- net min-home-z => axis.2.home-sw-in net min-home-z => axis.2.neg-lim-sw-in net max-home-z => axis.2.pos-lim-sw-in #******************* # SPINDLE S #******************* setp pid.s.Pgain [SPINDLE_9]P setp pid.s.Igain [SPINDLE_9]I setp pid.s.Dgain [SPINDLE_9]D setp pid.s.bias [SPINDLE_9]BIAS setp pid.s.FF0 [SPINDLE_9]FF0 setp pid.s.FF1 [SPINDLE_9]FF1 setp pid.s.FF2 [SPINDLE_9]FF2 setp pid.s.deadband [SPINDLE_9]DEADBAND setp pid.s.maxoutput [SPINDLE_9]MAX_OUTPUT net spindle-index-enable <=> pid.s.index-enable # ---PWM Generator signals/setup--- setp hm2_5i20.0.pwmgen.03.output-type 3 setp hm2_5i20.0.pwmgen.03.scale [SPINDLE_9]OUTPUT_SCALE net spindle-vel-cmd => pid.s.command net spindle-output pid.s.output => hm2_5i20.0.pwmgen.03.value net spindle-enable => pid.s.enable net spindle-enable => hm2_5i20.0.pwmgen.03.enable net spindle-vel-fb => pid.s.feedback # ---Encoder feedback signals/setup--- setp hm2_5i20.0.encoder.03.counter-mode 0 setp hm2_5i20.0.encoder.03.filter 1 setp hm2_5i20.0.encoder.03.index-invert 0 setp hm2_5i20.0.encoder.03.index-mask 0 setp hm2_5i20.0.encoder.03.index-mask-invert 0 setp hm2_5i20.0.encoder.03.scale [SPINDLE_9]INPUT_SCALE net spindle-revs <= hm2_5i20.0.encoder.03.position net spindle-vel-fb <= hm2_5i20.0.encoder.03.velocity net spindle-index-enable <=> hm2_5i20.0.encoder.03.index-enable # ---setup spindle control signals--- net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps net spindle-vel-cmd <= motion.spindle-speed-out net spindle-enable <= motion.spindle-on net spindle-cw <= motion.spindle-forward net spindle-ccw <= motion.spindle-reverse net spindle-brake <= motion.spindle-brake net spindle-revs => motion.spindle-revs net spindle-at-speed => motion.spindle-at-speed net spindle-vel-fb => motion.spindle-speed-in net spindle-index-enable <=> motion.spindle-index-enable # ---Setup spindle at speed signals--- net spindle-vel-cmd-rps => near.0.in1 net spindle-vel-fb => near.0.in2 net spindle-at-speed <= near.0.out setp near.0.scale .9 #****************************** # connect miscellaneous signals #****************************** # ---charge pump signals--- #net estop-out => charge-pump.enable # ---coolant signals--- net coolant-mist <= iocontrol.0.coolant-mist net coolant-flood <= iocontrol.0.coolant-flood # ---probe signal--- net probe-in => motion.probe-input # ---digital in / out signals--- # ---estop signals--- net estop-out <= iocontrol.0.user-enable-out net estop-ext => iocontrol.0.emc-enable-in # ---toolchange signals for custom tool changer--- net tool-number <= iocontrol.0.tool-prep-number net tool-change-request <= iocontrol.0.tool-change net tool-change-confirmed => iocontrol.0.tool-changed net tool-prepare-request <= iocontrol.0.tool-prepare net tool-prepare-confirmed => iocontrol.0.tool-prepared INI file: # Generated by PNCconf at Sun Jan 16 10:33:41 2011 # If you make changes to this file, they will be # overwritten when you run PNCconf again [EMC] MACHINE = Struznica DEBUG = 0 [DISPLAY] DISPLAY = axis POSITION_OFFSET = RELATIVE POSITION_FEEDBACK = ACTUAL MAX_FEED_OVERRIDE = 2.000000 MAX_SPINDLE_OVERRIDE = 1.000000 MIN_SPINDLE_OVERRIDE = 0.500000 INTRO_GRAPHIC = emc2.gif INTRO_TIME = 2s PROGRAM_PREFIX = /home/kom/emc2/nc_files INCREMENTS = 10mm 5mm 1mm .5mm .1mm .05mm .01mm LATHE = 1 POSITION_OFFSET = RELATIVE POSITION_FEEDBACK = ACTUAL DEFAULT_LINEAR_VELOCITY = 10 MAX_LINEAR_VELOCITY = 250 MIN_LINEAR_VELOCITY = 1 DEFAULT_ANGULAR_VELOCITY = 0.250000 MAX_ANGULAR_VELOCITY = 1.000000 MIN_ANGULAR_VELOCITY = 0.010000 EDITOR = gedit GEOMETRY = xyz [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 = emc.var [EMCMOT] EMCMOT = motmod COMM_TIMEOUT = 1.0 COMM_WAIT = 0.010 SERVO_PERIOD = 1000000 # [HOSTMOT2] # This is for info only # DRIVER0=hm2_pci # BOARD0=5i20 # CONFIG0="firmware=hm2/5i20/SVST8_4.BIT num_encoders=4 num_pwmgens=4 num_stepgens=0" [HAL] HALUI = halui HALFILE = Struznica.hal SHUTDOWN = shutdown.hal [HALUI] [TRAJ] AXES = 3 COORDINATES = X Z LINEAR_UNITS = mm ANGULAR_UNITS = degree CYCLE_TIME = 0.010 DEFAULT_VELOCITY = 10.00 MAX_LINEAR_VELOCITY = 250.00 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = tool.tbl #******************** # Axis X #******************** [AXIS_0] TYPE = LINEAR HOME = 0.0 FERROR = 0.5 MIN_FERROR = 0.5 MAX_VELOCITY = 250.0 MAX_ACCELERATION = 1000.0 P = 0.55 I = 0.02 D = 0.001 FF0 = 0.0 FF1 = 0.004 FF2 = 0.000035 BIAS = 0.0001 DEADBAND = 0.0 OUTPUT_SCALE = -1.0 OUTPUT_OFFSET = 0.0 MAX_OUTPUT = 10.0 INPUT_SCALE = -1000.0 MIN_LIMIT = -10.0 MAX_LIMIT = 55.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -25 HOME_LATCH_VEL = 5 HOME_FINAL_VEL = 1.5 HOME_USE_INDEX = YES HOME_IGNORE_LIMITS = YES HOME_SEQUENCE = 0 #******************** # Axis Z #******************** [AXIS_2] TYPE = LINEAR HOME = 0.0 FERROR = 0.5 MIN_FERROR = 0.5 MAX_VELOCITY = 250.0 MAX_ACCELERATION = 1000.0 P = 0.38 I = 0.03 D = 0.0000 FF0 = 0.000 FF1 = 0.00385 FF2 = 0.00001 BIAS = 0.000 DEADBAND = 0.0 OUTPUT_SCALE = -1.0 OUTPUT_OFFSET = 0.0 MAX_OUTPUT = 10.0 INPUT_SCALE = -1000.0 MIN_LIMIT = -10.0 MAX_LIMIT = 100.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -25 HOME_LATCH_VEL = 5 HOME_FINAL_VEL = 1.5 HOME_USE_INDEX = YES HOME_IGNORE_LIMITS = YES HOME_SEQUENCE = 1 #******************** # Spindle #******************** [SPINDLE_9] MAX_VELOCITY = 2850 MAX_ACCELERATION = 50.0 P = 1.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 0.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 OUTPUT_SCALE = 1.0 OUTPUT_OFFSET = 0.0 MAX_OUTPUT = 10.0 INPUT_SCALE = 2000.0 Best regards. Klemen ------------------------------------------------------------------------------ Protect Your Site and Customers from Malware Attacks Learn about various malware tactics and how to avoid them. Understand malware threats, the impact they can have on your business, and how you can protect your company and customers by using code signing. http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ Emc-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-users
