Hello, gentlemen!

Few months ago I started my attempts in getting genserkins module
working also with linear joints.
Finally I can report that some success has been achieved!
1) I downloaded source code from git, checked out version 2.4.6,
substituted genserkins.c and genserkins.h files and compiled it with
run-in-place
Both genserkins.c and genserkins.h files are here:
http://www.cutting.lv/fileadmin/user_upload/genserkins.c
http://www.cutting.lv/fileadmin/user_upload/genserkins.h

2) I have created modified pumagui virtual machine model to change
joint 0 from rotary to angular and change the looks of joint 0 a
little-bit.
The file is located here:
http://www.cutting.lv/fileadmin/user_upload/pumagui

3) I took sample config of simulated puma arm and adjusted them - in
INI file I changed limits and changed from ANGULAR to LINEAR for
AXIS_0
HAL file has experienced little more changes (now it is very similar
to puma560 HAL file).
Both files are here:
http://www.cutting.lv/fileadmin/user_upload/puma.ini
http://www.cutting.lv/fileadmin/user_upload/puma_sim_6.hal

I have been jogging the arm and trying to run the default g-code file
as well to check for the arm's behavior.
The result that I have achieved:
1) everything is fine in joint mode, joints home just as I want them
to do, no issues here (because kinematics module does not affect joint
mode);
2) in world mode I have 2 problems:
    a) there is a 90 degree mismatch between "actual" Cartesian space
and "intended" one - "actual" X is pointing, where Y should be and Y
is pointing in -X direction. I am convinced that problem is in "bad"
alignment of joint 0 against Cartesian coordinates. So I tried
changing alpha and theta values in HAL file to get the correct
placement, but I feel like I have been able to get _all possible_
orientations, but the correct one.
    b) I have set scale parameter for joint 0 and it is ok in joint
mode, but not ok in world mode. Basically, there is huge difference in
movement amount between joint and world modes, when movement happens
in joint 0. It makes me feel that there is something wrong in the
kinematics module.
    c) after homing and switching to world mode EMC shows that B
position is 90. I thought that it should change as I adjust alpha
and/or theta values for joints 3, 4 and 5, but no - it does not change
at all!
    d) jogging joints 3,4 and 5 works correctly. jogging axes A, B or
C does not... It behaves strangely - jogging A and C in positive
direction cause moving joint 3 in positive and negative directions
respectively.


I would like to ask, if someone could take a look at those files and
test them and let me know of results.
Thanks!

Viesturs

------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload 
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve 
application availability and disaster protection. Learn more about boosting 
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to