Puma 6 axis Robotic Arm with Mesa 7i80/7i40

More
27 Oct 2024 23:51 - 30 Oct 2024 19:05 #313340 by jonesmg1
I have been using LinuxCNC for a long time for my Mill and Lathe setup and parallel controlled stepper motors but this new project is making me a little crazy (it was straight forward on my other machines). 

I was given (in an incomplete state) a Kawasaki Robotics/PUMA 200 arm which has a Mesa 7i80 controller with 7i40 daughter cards running the servo motors.  

CORRECTION:   I believe this is more appropriately identified as a PUMA 260 arm - if that makes a difference

I have things "moving" generally with INI and HAL files from the previous owner and of the axes respond generally to control (I don't know enough about servos with LinuxCNC/mesa  but I am having all kinds of issues with Joint #1 the "shoulder" joint (the rotation, waist pillar joint in the center is Joint 0).  With a higher P value (200-300ish) the motors will hold it in position and move it up (positive direction) but when I reverse direction it stutters, pops up a follow error and estops.  I can very slowly/carefully/intermittently move the joint down but it eventually errors out.   I have a feeling that there needs to be some kind of asymmetric control of the positive/negative direction for this joint due to gravity/weight of the mechanism. 

I'm not even sure where to start here (I've been combing through some of the documentation leveraging my previous knowledge of LinuxCNC - which is a little rusty to begin with) or what questions to ask.   

Does anyone have a similar setup who would be willing to share their configuration, or maybe help me formulate some intelligent questions and find the answers. 

Thank you, 

Michael Jones
Last edit: 30 Oct 2024 19:05 by jonesmg1.

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

More
29 Oct 2024 02:49 #313405 by Deckerjwd
so I'm not familiar with PUMA 200, but most robots have brakes, i have had all kinds of trouble with them. I would look at them and any counterbalance system. if it has a counterbalance and the brake is on often you can get it to move up but not back down.

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

More
30 Oct 2024 04:09 #313469 by jonesmg1
 
 

The system does have brakes which I have disabled (the joint free drops when it gets the follow error)

it doesn’t have a physical counterbalance that I can tell, maybe the gearbox has some sort of clutch?  

When idle, the motors are able to hold the joint in place even if I push on it.

I have a feeling that there’s something off  between the motors and encoders.   When it moves, it seems to be miscalculating the actual vs expected travel - but that’s just gut feeling.   It sometimes errors moving up, but not always.. it always errors moving down.  
Attachments:

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

More
30 Oct 2024 13:00 #313481 by tommylight
Check encoder PPR, make sure the scaling is correct, then we can move to tuning.
In the meantime, upload the config files here so we can have a look, just in case something is off.

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

More
30 Oct 2024 18:16 #313506 by jonesmg1
Here's the files.   I'll work on verifying the encoders shortly.  

File Attachment:

File Name: SMAB-LinuxCNC.zip
File Size:8 KB
Attachments:

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

More
31 Oct 2024 00:21 #313515 by PCW
One thing you might try is setting the PID MAX_OUTPUT to say 9.5 (95% of full scale)
As the 7I40 cannot have 100% duty cycle (the high side MOSFET bootstrap
requires a continuous PWM signal)

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

More
01 Nov 2024 20:48 #313624 by jonesmg1
Good point.. I've set all of the axes to 9.5 but it didn't resolve my issue.

 

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

More
01 Nov 2024 20:54 - 01 Nov 2024 21:03 #313625 by jonesmg1
I attached a digital angle finder to the axes, moved it a specific amount (45 degrees), calculated how many encoder steps were read, divided by the number of degrees and entered that number into the joint config in the ini under encoder scale.   The numbers I entered were only a couple encoder ticks off from what was already there.

Is there some other spot to enter the encoder resolution/scale/ppr?

I am unable to find any documentation whatsoever on the specs for the encoders: Tamagawa TS1902N117 or TS3083

I am also considering swapping 2 of the joint connections to see if the issue follows the daughtercard.
 
Last edit: 01 Nov 2024 21:03 by jonesmg1.

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

More
01 Nov 2024 21:00 #313626 by PCW
Do you get overcurrents on the 7I40 (red LEDs blinking)?
Also are the 7I40 current limits set to the high range?

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

More
01 Nov 2024 21:04 - 02 Nov 2024 05:18 #313627 by jonesmg1
Good thought.  I'll check tonight - I sort of made an assumption that the previous owner checked that, but that's probably not a safe assumption.

I checked the jumpers, they were all set to Low (default)  I set the jumper to high and it didn’t make any difference.  

There are no red lights, just green and amber.  

I was told by the previous owner that half of two of the 7i40s don’t work.  This joint is on the working half of one if those cards.  I’m wondering if there might be more wrong with that card than I originally thought.   

The next test I guess is to swap two joints.  
Attachments:
Last edit: 02 Nov 2024 05:18 by jonesmg1.

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

Time to create page: 0.143 seconds
Powered by Kunena Forum