Bipod setup

More
10 Aug 2010 12:10 #3672 by andypugh
Replied by andypugh on topic Re:Bipod setup
dab77 wrote:

ok, that's what i was looking about, but help me, what number should i write in debug mode?

Try increasing it by one.
What does dmesg say at the moment?
I really am not clear if EMC is crashing out, or if you are just getting following errors.

in fact if i set the two joints manually at a possible value (distance between the two motors is 800mm, so 600 per joint is a possible value), i can now go to world mode, but as soon as i try to jog in world mode it return a follow error. just two times happened that it moved along the x-world axis,but without stopping, right to the limit and then stop. only in that direction, but just two times on 50 tryings.:

In joint mode the joints jog independently, and kinematics is ignored.
In world mode you jog in artesian space, so following errors here indicate that the axis positions do not match the commanded positions.
Set up a bunch of halmeters, and look at the axis, joint and motor command and feedback positions.
The possibilities are that your forwards and inverse kinematics are not actually inverses of each other (have you proved that yet, with manual calculations?) or that the feedback loop in your HAL file is set up wrong.

Please Log in or Create an account to join the conversation.

More
10 Aug 2010 23:57 #3676 by dab77
Replied by dab77 on topic Re:Bipod setup
talking about /var/log/dmesg? now i'm on another pc, i'm going to copy/paste as possible.
then you said to change the debug mode in rtapi.conf, but where is this file? i have one into the source code, but should i compile the entire EMC2 after?
or is it ok to change debug level into the .ini file?
i've found these levels:
/* Note: these may be hard-code referenced by the GUI (e.g., emcdebug.tcl).
   If you change the assignments here, make sure and reflect that in
   the GUI scripts that use these. Unfortunately there's no easy way to
   get these into Tk automatically */
    extern int EMC_DEBUG;
#define EMC_DEBUG_CONFIG            0x00000002
#define EMC_DEBUG_VERSIONS          0x00000008
#define EMC_DEBUG_TASK_ISSUE        0x00000010
#define EMC_DEBUG_NML               0x00000040
#define EMC_DEBUG_MOTION_TIME       0x00000080
#define EMC_DEBUG_INTERP            0x00000100
#define EMC_DEBUG_RCS               0x00000200
#define EMC_DEBUG_INTERP_LIST       0x00000800
#define EMC_DEBUG_ALL               0x7FFFFFFF	/* it's an int for %i to work 
						 */
if so...which? the first?

last question (thank you to giving these helps!):
what is the feedback loop in the HAL file?

thanks again. i'm going to turn on the EMC2 pc..

Please Log in or Create an account to join the conversation.

More
11 Aug 2010 01:19 #3677 by dab77
Replied by dab77 on topic Re:Bipod setup
this is the output of dmesg after trying to move in world mode:
[ 1332.733810] I-pipe: Domain RTAI registered.
[ 1332.733819] RTAI[hal]: <3.6.1> mounted over IPIPE-NOTHREADS 2.0-04.
[ 1332.733821] RTAI[hal]: compiled with gcc version 4.2.4 (Ubuntu 4.2.4-1ubuntu3).
[ 1332.733827] RTAI[hal]: mounted (IPIPE-NOTHREADS, IMMEDIATE (INTERNAL IRQs DISPATCHED), ISOL_CPUS_MASK: 0).
[ 1332.733829] PIPELINE layers:
[ 1332.733831] f8b78000 9ac15d93 RTAI 200
[ 1332.733833] c0383180 0 Linux 100
[ 1332.746535] RTAI[malloc]: global heap size = 2097152 bytes, <BSD>.
[ 1332.746895] RTAI[sched]: loaded (IMMEDIATE, UP, USER/KERNEL SPACE: <with RTAI OWN KTASKs>, kstacks pool size = 524288 bytes.
[ 1332.746900] RTAI[sched]: hard timer type/freq = 8254-PIT/1193180(Hz); default timing: periodic; linear timed lists.
[ 1332.746903] RTAI[sched]: Linux timer freq = 250 (Hz), CPU freq = 3000199000 hz.
[ 1332.746906] RTAI[sched]: timer setup = 2010 ns, resched latency = 2688 ns.
[ 1332.825666] RTAI[math]: loaded.
[ 1332.912923] config string '0x378 out  '
[ 1355.817361] 22873: ERROR: joint 1 following error
[ 1365.983847] RTAI[math]: unloaded.
[ 1366.043787] SCHED releases registered named ALIEN RTGLBH
[ 1366.060382] RTAI[malloc]: unloaded.
[ 1366.159720] RTAI[sched]: unloaded (forced hard/soft/hard transitions: traps 0, syscalls 0).
[ 1366.162279] I-pipe: Domain RTAI unregistered.
[ 1366.162286] RTAI[hal]: unmounted.
dab-cnc@dab-cnc-desktop:~$ 

Please Log in or Create an account to join the conversation.

More
11 Aug 2010 01:31 - 11 Aug 2010 01:36 #3678 by dab77
Replied by dab77 on topic Re:Bipod setup
...and that's what i got in the terminal after setting the debug mode to "maximum":
dab-cnc@dab-cnc-desktop:~$ emc /home/dab-cnc/emc2/configs/Prova_Bipod/Prova_Bipod.ini
EMC2 - 2.4.3
Machine configuration directory is '/home/dab-cnc/emc2/configs/Prova_Bipod'
Machine configuration file is 'Prova_Bipod.ini'
Starting EMC2...
(time=1281489154.398608,pid=16847): Registering server on TCP port 5005.
(time=1281489154.398746,pid=16847): running server for TCP port 5005 (connection_socket = 3).
iocontrol: machine: 'Prova_Bipod'  version 'unknown'
task: machine: 'Prova_Bipod'  version 'unknown'
NML_INTERP_LIST::append(nml_msg{size=24,type=EMC_TRAJ_SET_TERM_COND}) : list_size=1, line_number=0
NML_INTERP_LIST::append(nml_msg{size=84,type=EMC_TRAJ_SET_ORIGIN}) : list_size=2, line_number=0
NML_INTERP_LIST::append(nml_msg{size=20,type=EMC_TRAJ_SET_ROTATION}) : list_size=3, line_number=0
emcTaskPlanInit() returned 0
NML_INTERP_LIST::append(nml_msg_ptr{size=12,type=EMC_TASK_PLAN_SYNCH}) : list_size=1, line_number=0
emcTaskPlanSynch() returned 0
NML_INTERP_LIST::append(nml_msg{size=24,type=EMC_TRAJ_SET_TERM_COND}) : list_size=2, line_number=0
NML_INTERP_LIST::append(nml_msg{size=84,type=EMC_TRAJ_SET_ORIGIN}) : list_size=3, line_number=0
NML_INTERP_LIST::append(nml_msg{size=20,type=EMC_TRAJ_SET_ROTATION}) : list_size=4, line_number=0
emcTaskPlanInit() returned 0
Issuing EMC_TASK_PLAN_SYNCH -- 	 (+516,+12,    +0,)
emcTaskPlanSynch() returned 0
Issuing EMC_TRAJ_SET_TERM_COND -- 	 (+222,+24,    +0,    +2,0.000000,)
Issuing EMC_TRAJ_SET_ORIGIN -- 	 (+224,+84,    +0,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,)
Issuing EMC_TRAJ_SET_ROTATION -- 	 (+226,+20,    +0,0.000000,)
Issuing EMC_TASK_PLAN_SET_BLOCK_DELETE -- 	 (+518,+16,    +1,\001,)
Issuing EMC_TASK_PLAN_SET_OPTIONAL_STOP -- 	 (+517,+16,    +2,\001,)
Issuing EMC_TASK_SET_MODE -- 	 (+504,+16,    +3,    +3,)
NML_INTERP_LIST::append(nml_msg_ptr{size=12,type=EMC_TASK_PLAN_SYNCH}) : list_size=1, line_number=0
emcTaskPlanSynch() returned 0
Issuing EMC_TASK_PLAN_SYNCH -- 	 (+516,+12,    +0,)
emcTaskPlanSynch() returned 0
Issuing EMC_TASK_SET_MODE -- 	 (+504,+16,    +4,    +2,)
NML_INTERP_LIST::append(nml_msg_ptr{size=12,type=EMC_TASK_PLAN_SYNCH}) : list_size=1, line_number=0
emcTaskPlanSynch() returned 0
Issuing EMC_TASK_PLAN_SYNCH -- 	 (+516,+12,    +0,)
emcTaskPlanSynch() returned 0
Issuing EMC_TASK_PLAN_OPEN -- 	 (+506,+268,    +5,/usr/share/axis/images/axis.ngc,)
emcTaskPlanOpen(/usr/share/axis/images/axis.ngc) returned 0
*********************************WARN_ONCE*********************************
File r300_render.c function r300Fallback line 470
Software fallback:ctx->Line.StippleFlag
***************************************************************************
Issuing EMC_TRAJ_SET_MAX_VELOCITY -- 	 (+207,+20,    +6,500.000000,)
Issuing EMC_TRAJ_SET_SPINDLE_SCALE -- 	 (+233,+20,    +7,0.000000,)
Issuing EMC_TRAJ_SET_SCALE -- 	 (+209,+20,    +8,0.000000,)
Issuing EMC_TRAJ_SET_TELEOP_ENABLE -- 	 (+230,+16,    +9,    +0,)
Issuing EMC_TRAJ_SET_SCALE -- 	 (+209,+20,   +10,1.000000,)
Issuing EMC_TRAJ_SET_SPINDLE_SCALE -- 	 (+233,+20,   +11,1.000000,)
Issuing EMC_TRAJ_SET_SCALE -- 	 (+209,+20,   +12,1.000000,)
Issuing EMC_TRAJ_SET_SPINDLE_SCALE -- 	 (+233,+20,   +13,1.000000,)
Issuing EMC_TASK_SET_STATE -- 	 (+505,+16,   +14,    +2,)
NML_INTERP_LIST::append(nml_msg_ptr{size=12,type=EMC_TASK_PLAN_SYNCH}) : list_size=1, line_number=0
emcTaskPlanClose() called at emc/task/emctask.cc:141
emcTaskPlanSynch() returned 0
Issuing EMC_TASK_PLAN_SYNCH -- 	 (+516,+12,    +0,)
emcTaskPlanSynch() returned 0
Issuing EMC_TASK_SET_STATE -- 	 (+505,+16,   +15,    +4,)
Issuing EMC_TRAJ_SET_TELEOP_ENABLE -- 	 (+230,+16,   +16,    +0,)
Issuing EMC_AXIS_HOME -- 	 (+123,+16,   +17,    +0,)
Issuing EMC_AXIS_HOME -- 	 (+123,+16,   +18,    +1,)
Issuing EMC_AXIS_HOME -- 	 (+123,+16,   +19,    +2,)
Issuing EMC_AXIS_JOG -- 	 (+124,+24,   +20,    +1,154.566667,)
Issuing EMC_AXIS_ABORT -- 	 (+120,+16,   +21,    +1,)
Issuing EMC_AXIS_JOG -- 	 (+124,+24,   +22,    +1,154.566667,)
Issuing EMC_AXIS_ABORT -- 	 (+120,+16,   +23,    +1,)
Issuing EMC_AXIS_JOG -- 	 (+124,+24,   +24,    +1,154.566667,)
Issuing EMC_AXIS_ABORT -- 	 (+120,+16,   +25,    +1,)
Issuing EMC_AXIS_JOG -- 	 (+124,+24,   +26,    +0,154.566667,)
Issuing EMC_AXIS_ABORT -- 	 (+120,+16,   +27,    +0,)
Issuing EMC_TRAJ_SET_TELEOP_ENABLE -- 	 (+230,+16,   +28,    +1,)
[b]
Issuing EMC_TRAJ_SET_TELEOP_VECTOR -- 	 (+231,+84,   +29,154.566667,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,)
joint 0 following error
emc/task/taskintf.cc 611: Error on axis 0, command number 120
[/b]
NML_INTERP_LIST::append(nml_msg_ptr{size=12,type=EMC_TASK_PLAN_SYNCH}) : list_size=1, line_number=0
NML_INTERP_LIST::append(nml_msg_ptr{size=12,type=EMC_TASK_PLAN_SYNCH}) : list_size=1, line_number=0
NML_INTERP_LIST::append(nml_msg_ptr{size=12,type=EMC_TASK_PLAN_SYNCH}) : list_size=1, line_number=0
Issuing EMC_TASK_PLAN_SYNCH -- 	 (+516,+12,    +0,)
emcTaskPlanSynch() returned 0
Shutting down and cleaning up EMC2...
(time=1281489287.359523,pid=16847): Deleting 5 channels from the NML_Main_Channel_List.
(time=1281489287.359556,pid=16847): Deleting emcCommand NML channel from NML_Main_Channel_List.
(time=1281489287.359566,pid=16847): deleting NML (1)
(time=1281489287.359575,pid=16847):  delete (CMS *) 80521E8;
(time=1281489287.359591,pid=16847): rcs_shm_close(shm->key=1001(0x3E9),shm->size=8192(0x2000),shm->addr=0xB7DB6000)
(time=1281489287.359624,pid=16847): deleting CMS (emcCommand)
(time=1281489287.359636,pid=16847): free( data = 8052B00);
(time=1281489287.359646,pid=16847): Leaving ~CMS()
(time=1281489287.359655,pid=16847):  CMS::delete(80521E8)
(time=1281489287.359663,pid=16847):  CMS::delete successful.
(time=1281489287.359671,pid=16847): Leaving ~NML()
(time=1281489287.359680,pid=16847): NML channel deleted from NML_Main_Channel_List
(time=1281489287.359687,pid=16847): Deleting emcStatus NML channel from NML_Main_Channel_List.
(time=1281489287.359695,pid=16847): deleting NML (2)
(time=1281489287.359728,pid=16847):  delete (CMS *) 8057AB8;
(time=1281489287.359737,pid=16847): rcs_shm_close(shm->key=1002(0x3EA),shm->size=16384(0x4000),shm->addr=0xB7DB2000)
(time=1281489287.359753,pid=16847): deleting CMS (emcStatus)
(time=1281489287.359763,pid=16847): free( data = 80583D0);
(time=1281489287.359772,pid=16847): Leaving ~CMS()
(time=1281489287.359780,pid=16847):  CMS::delete(8057AB8)
(time=1281489287.359787,pid=16847):  CMS::delete successful.
(time=1281489287.359794,pid=16847): Leaving ~NML()
(time=1281489287.359810,pid=16847): NML channel deleted from NML_Main_Channel_List
(time=1281489287.359819,pid=16847): Deleting emcError NML channel from NML_Main_Channel_List.
(time=1281489287.359825,pid=16847): deleting NML (3)
(time=1281489287.359832,pid=16847):  delete (CMS *) 805C8D0;
(time=1281489287.359839,pid=16847): rcs_shm_close(shm->key=1003(0x3EB),shm->size=8192(0x2000),shm->addr=0xB7DB0000)
(time=1281489287.359855,pid=16847): deleting CMS (emcError)
(time=1281489287.359865,pid=16847): free( data = 805D1E8);
(time=1281489287.359874,pid=16847): Leaving ~CMS()
(time=1281489287.359882,pid=16847):  CMS::delete(805C8D0)
(time=1281489287.359889,pid=16847):  CMS::delete successful.
(time=1281489287.359896,pid=16847): Leaving ~NML()
(time=1281489287.359913,pid=16847): NML channel deleted from NML_Main_Channel_List
(time=1281489287.359920,pid=16847): Deleting toolCmd NML channel from NML_Main_Channel_List.
(time=1281489287.359927,pid=16847): deleting NML (4)
(time=1281489287.359933,pid=16847):  delete (CMS *) 805F638;
(time=1281489287.359941,pid=16847): rcs_shm_close(shm->key=1004(0x3EC),shm->size=1024(0x400),shm->addr=0xB7DAF000)
(time=1281489287.359956,pid=16847): deleting CMS (toolCmd)
(time=1281489287.359966,pid=16847): free( data = 805FF50);
(time=1281489287.359975,pid=16847): Leaving ~CMS()
(time=1281489287.359983,pid=16847):  CMS::delete(805F638)
(time=1281489287.359990,pid=16847):  CMS::delete successful.
(time=1281489287.359997,pid=16847): Leaving ~NML()
(time=1281489287.360027,pid=16847): NML channel deleted from NML_Main_Channel_List
(time=1281489287.360034,pid=16847): Deleting toolSts NML channel from NML_Main_Channel_List.
(time=1281489287.360041,pid=16847): deleting NML (5)
(time=1281489287.360048,pid=16847):  delete (CMS *) 80607D0;
(time=1281489287.360056,pid=16847): rcs_shm_close(shm->key=1005(0x3ED),shm->size=8192(0x2000),shm->addr=0xB7DAD000)
(time=1281489287.360071,pid=16847): deleting CMS (toolSts)
(time=1281489287.360080,pid=16847): free( data = 80610E8);
(time=1281489287.360089,pid=16847): Leaving ~CMS()
(time=1281489287.360105,pid=16847):  CMS::delete(80607D0)
(time=1281489287.360114,pid=16847):  CMS::delete successful.
(time=1281489287.360122,pid=16847): Leaving ~NML()
(time=1281489287.360130,pid=16847): NML channel deleted from NML_Main_Channel_List
(time=1281489287.360140,pid=16847): deleting NML (1)
(time=1281489287.360149,pid=16847): Leaving ~NML()
(time=1281489287.360157,pid=16847): NML::operater delete(8052008)
(time=1281489287.360167,pid=16847): NML channel deleted from Dynamically_Allocated_NML_Objects
(time=1281489287.360272,pid=16847): deleting NML (2)
(time=1281489287.360283,pid=16847): Leaving ~NML()
(time=1281489287.360289,pid=16847): NML::operater delete(8057938)
(time=1281489287.360307,pid=16847): NML channel deleted from Dynamically_Allocated_NML_Objects
(time=1281489287.360316,pid=16847): deleting NML (3)
(time=1281489287.360324,pid=16847): Leaving ~NML()
(time=1281489287.360330,pid=16847): NML::operater delete(805C6D0)
(time=1281489287.360337,pid=16847): NML channel deleted from Dynamically_Allocated_NML_Objects
(time=1281489287.360346,pid=16847): deleting NML (4)
(time=1281489287.360353,pid=16847): Leaving ~NML()
(time=1281489287.360359,pid=16847): NML::operater delete(805F4B8)
(time=1281489287.360366,pid=16847): NML channel deleted from Dynamically_Allocated_NML_Objects
(time=1281489287.360375,pid=16847): deleting NML (5)
(time=1281489287.360383,pid=16847): Leaving ~NML()
(time=1281489287.360390,pid=16847): NML::operater delete(8060650)
(time=1281489287.360405,pid=16847): NML channel deleted from Dynamically_Allocated_NML_Objects
Cleanup done
in BOLD the error after: homing, changing to world mode, and trying to jog the x axis to positive amount.

understand something?

thanks!
Last edit: 11 Aug 2010 01:36 by dab77.

Please Log in or Create an account to join the conversation.

More
11 Aug 2010 01:40 #3679 by dab77
Replied by dab77 on topic Re:Bipod setup
then:
i tryed to write down the kins formulas into the datasheet, and the results are perfectly the same.

HELP!:blink:

Please Log in or Create an account to join the conversation.

More
11 Aug 2010 09:39 #3688 by andypugh
Replied by andypugh on topic Re:Bipod setup
dab77 wrote:

what is the feedback loop in the HAL file?.

There should be some lines similar to (this is from memory, don't copy this)
net signame1 axis.0.motor-pos-cmd => stepgen.0.posn
net pos-feedback stepgen.0.posn-fb => axis.0.motor-pos-fb

This checks that the difference between what the controller is asking of the system, and what the stepgen can actually achieve is within the following error limits.

The first thing to check is why you are getting a following error, is it actually true?

What is your following error limit? Is the feedback loop in place? What do you see if you watch the posn-cmd, posn-fb and f-error pins for the axes in halscope?

Please Log in or Create an account to join the conversation.

Time to create page: 0.157 seconds
Powered by Kunena Forum