ATC: carousel.comp with Servo drive

More
21 Sep 2023 08:51 #281286 by akg1904
Hi,

I have gone through many ATC posts with carousel(by Andy) and I am thinking of using the same for my ATC.
But I have some question regarding this:
1. I have a servo drive and motor which is EtherCAT based and want to use this for my ATC.Is there a way I can use it for ATC using Carousel.
2. Does Carousel support AXIS or Joint? As I can make my ATC additional Axis and control it.

As much as I can understand carousel, it mainly controls ATC using GPIO, but as I have EtherCAT based Servo drive and Motor, I don't know how to use GPIO to control it.

If anyone has some Insight please suggest me and help me figure it out.

Regards
Abhishek  

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

More
14 Oct 2023 09:23 #282971 by andypugh
Does the ATC have sensors for tool position. or would it use the servo encoder?
The latest version of "carousel" has a "counts" mode where the feedback is stepgen steps or encoder counts. That ought to work with the servo in position control mode. It's probably best to work with a scale of 1 at the driver and tell carousel how many counts there are between pockets.
You can home to the encoder index, or to a sensor on the ATC.

I think you will be the first to try this, so feel free to come back if you need more help. Now that I have replied I should see other posts immediately.
The following user(s) said Thank You: besriworld, wellingtoncsouza, akg1904

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

More
16 Oct 2023 12:39 #283123 by akg1904
Hi Andy,

Thanks for the reply
As I have absolute servo encoder drive, I will not be using any sensors.
So I think I will have to keep track of encoder count.
I will come back again after some initial test.

Regards
Abhishek

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

More
28 Feb 2024 16:16 #294699 by routerman22
did you figure this out? I'm also eyeballing this

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

More
29 Feb 2024 10:01 #294758 by TimP
I also have EtherCAT setup and I have managed to do this using it as regular axis and some M code rewrite, as it shown by talla83 in his vids.

But i don't like that there is additional axis shown in ui, so would be happy to see it's done with carousel comp.

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

More
29 Feb 2024 10:32 #294760 by routerman22
yeah my quick research afterwards showed me that you just need to do it in G-code. it is also simpler like that. And use that as your M6 remap. This is also how it is done in several industrial machines i looked at.

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

More
27 Jun 2024 11:58 #303891 by wellingtoncsouza
any news about this?

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

More
21 Aug 2024 14:56 #308299 by jimwhiting
I'm just starting the same task.

Leadshine EL8 drive with absolute encoder on a Haas SL-10 retro fit. (12 pocket carousel).

 
The following user(s) said Thank You: wellingtoncsouza

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

More
27 Aug 2024 10:33 #308783 by jimwhiting
Hi,

So I have the carousel module driving my ethercat servo. I have connected the index-enable and setup the drive to allow the homing mode onboard the drive (mode 3 to index to a home switch and then the Z signal off the encoder). This indexes to a single home switch which is present on a cam on the backside of the 12 tool carousel. This bit works great.

What doesn't work great so far is the home offset - it moves, but it is quite violent... I appear to be missing a setting to control the acceleration/velocity of the moves on the carousel. The settings I have found so far will slow it down during homing, but appear to not affect the position mode once homed.

Likewise I have the jog forwards and reverse working, however still quite violent compared to what I would like.

I'm missing something simple... (Drive has been tuned with the auto tune from Leadshine).
###############
# Carousel 0  #
###############

setp cia402jpw.2.csp-mode 1
setp cia402jpw.2.pos-scale 100
#setp cia402jpw.2.velo-scale 10

setp cia402jpw.2.ini-ferror [JOINT_2]FERROR
setp cia402jpw.2.ini-min-ferror [JOINT_2]MIN_FERROR

#from servo(ethercat) to cia402
net 2-statusword      lcec.0.2.cia-statusword => cia402jpw.2.statusword
net 2-opmode-display  lcec.0.2.opmode-display => cia402jpw.2.opmode-display
net 2-drv-act-pos     lcec.0.2.actual-position => cia402jpw.2.drv-actual-position
net 2-drv-act-velo    lcec.0.2.actual-velocity => cia402jpw.2.drv-actual-velocity

#from cia402 to servo(ethercat)
net 2-controlword         cia402jpw.2.controlword => lcec.0.2.cia-controlword
net 2-modes-of-operation  cia402jpw.2.opmode => lcec.0.2.opmode
net 2-drv-target-pos      cia402jpw.2.drv-target-position => lcec.0.2.target-position
net 2-drv-target-velo     cia402jpw.2.drv-target-velocity => lcec.0.2.target-velocity

# Carousel connections
net 2-carousel-home carousel.0.index-enable cia402jpw.2.home
#net 2-enable  carousel.0.active cia402jpw.2.enable
net 2-pos-cmd  carousel.0.counts-target cia402jpw.2.pos-cmd
net 2-pos-fb-s32 carousel.0.counts conv-float-s32.0.out
net 2-pos-fb  conv-float-s32.0.in   <= cia402jpw.2.pos-fb
net 2-vel-cmd carousel.0.motor-vel cia402jpw.2.velocity-cmd

setp carousel.0.fwd-dc 0.01
setp carousel.0.rev-dc -0.01
setp carousel.0.decel-time 1
setp carousel.0.align-dc 0

setp carousel.0.scale 100
setp carousel.0.home-offset 10
# END

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

More
29 Aug 2024 04:27 #308919 by spumco

What doesn't work great so far is the home offset - it moves, but it is quite violent... I appear to be missing a setting to control the acceleration/velocity of the moves on the carousel. The settings I have found so far will slow it down during homing, but appear to not affect the position mode once homed.

Likewise I have the jog forwards and reverse working, however still quite violent compared to what I would like.

 


Andy Pugh may chime in a more accurate response, but I think carousel.comp doesn't manage velocity or accel/decel when set to 'counts' mode and the counts-target pin is used.

In the velocity modes fwd-dc, rev-dc, align-dc pins all affect the motor velocity, but there don't appear to be specific accel/decel settings.

If you read the online manual (I suspect you've done so already), 'counts' mode can be used as either a position or velocity command.  I suspect that because you are using the counts-target pin via ethercat the servo sees a position command and moves there (and stops) at fastest possible speed.

In my counts-mode carousel config the position is sent to a stepgen (itself in position mode), and the stepgen runs at the max values.  So velocity & accel are adjusted in the stepgen setting, not with carousel.comp pins or parameters.

So I think in your case the easiest thing would be to adjust the servo drive to limit the max velocity and accel.  You'd treat the servo drive essentially like I'm using my stepgen settings.

An alternative would be to put your servo in velocity mode - like a 'dumb' motor - and switch your carousel config to output a velocity & direction command to a PID component, and the PID output is sent to the drive.  Velocity & accel would be adjusted in the PID.
The following user(s) said Thank You: jimwhiting

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

Time to create page: 0.164 seconds
Powered by Kunena Forum