3-axis servo application-how would you do it?

No disrespect to Peter, who I always read with interest. But to the OP... if you're going to skip the PLC entirely and replace it with a motion controller, give YOURSELF a LOT of time to do that first program.
A lot of time will only be needed if one tries to program before planning. There is no substitute for writing down the sequence of events or making a flow chart no matter what tool you use.

Did you look at the video? It is easy to see that the program is written in steps using a state machine where you issue a command and wait for something to happen before going on to the next step. If you can write the sequence of events on paper it is easy to program. On a PLC you must create the state machine. You program the RMC using structured text in a state machine.

There was another recent thread involving simply going back and forth between two bins. That would be easy using our controller. It would be easy to see the sequence of steps being executed.

Did you see the ability to track the other axis in the flying shear video? RH68 has concerns about one axis knowing what the other is doing. That isn't a problem with the RMC since everything is controlled by one CPU.

Did you see the trends/plots? The trends are FAR superior to what is available on any PLC that I have seen. What PLC do you know of that logs commands and calculations at sub millisecond intervals as shown in an event log. PLC scan times aren't that fast. Did you see the red marker move from state to state? Does a PLC do this? Maybe if it has sequential function charts.

Motion controllers are great... but they do not program at all like PLCs.
That is true. Motion control applications usually require state machines most PLCs do not have state machines built in.

However you do it, factor in some extra time and effort for the motion part on those first few systems.
If the sequence of events can be broken down into steps where a command is given and one waits for a condition to go on top the next step then it is easy. Whether programming on a PLC or motion controller this must be done first or you end up with situations like the recent going back and forth between two bins thread.
 
I did forget to ask if the OP has had any experience programming motion controllers. Maybe he does, that will help a lot.

Pete, I love MC's for co-ordinated axes and specialized tasks that you guys have already solved for me. And, I have programmed AB PLCs as state machines for years now. In fact, I have a hard time programming in any other way. I also use a lot of subroutines.

But. I've done a couple of machines in the last two years for our plant that were mostly motion, so we used Parker motion controllers for all of it - no PLC. Developing the "logic" is no different than on a PLC, sure. My mantra for a long time has been "If you can't write it down, you don't understand it." So yeah, you need an idea of what you're doing, and how, before you just start cutting code.

But it really was true, for me anyway, that knowing what I wanted the code to do, and then making the logic do it, took a while. Especially the first time. Multithreading is great, I always buffer IO anyway so that helped. But passing info between threads, as necessary, and working out how to loop, and when, and especially handling interrupts like, say, an E-Stop... not quite the same as on a PLC. And gee, what if the task that your IO is in stops running? Or your motion? And did EPL and CANOpen even come up at powerup? LOL.

There is always just leaning the syntax and mechanics of using the language, whatever it may be.

I will say, that if the OP wants co-ordinated motion on two or more axes, then an MC is the way to go. That is already worked out; just enter the endpoints, constraints and go. And parameterize it, and bang, your pick/place is good for whatever x, z, t you enter. Electromechanical pick and places have a lot to offer, if the cost is justified.

I'm not suggesting that a PLC should be used. I'm just saying, if it's the first time you're doing it, factor that in.
 
Last edited:
I don't have any experience with programming motion controllers. I get the jist of it by looking at different controllers but the syntax is very confusing to me since I'm used to ladder logic. I ran the idea by my rep of using the Kinetix K300 drives and a Micrologix 1400 plc and we are pursuing that route now. Since this is my first servo application I definitely going to have to lean on my rep for programming help or hire a temporary programmer. I'd really like to learn to do it myself though.
 
Does anyone here have experience with Ormec and thier XD indexing drives? I spoke to them yesterday about the project and they said it could be done with 3 of their XD drives and an HMI screen, no plc needed. Waiting to here back about motor/drive sizes and prices. Searched on here but found very little info about them.
 
I have used the Delta Motion Controller and highly recommend them. They are easy to learn and program. I wish I had one on this project I'm working on now.

I've also used the Compumotor and wouldn't recommend them. They don't have a long term enough commitment to their products and their support folds if you find the problem is in their product.
 

Similar Topics

Hi guys, I have a simple (I think) application involving 2 SureServo SVA-2040 drives. What I want to do is to control the master servo with a...
Replies
0
Views
1,805
I have to rollout a common CLX PLC program to a dozen or more installations, but each installation uses a different HMI front end. Some WW, some...
Replies
8
Views
885
Dear All: I have the flashing red light on the FDBK indicator. The manual said that it means: The axis servo loop error tolerance has been...
Replies
2
Views
647
Hi PLC experts :) I’m working on a project in studio 5000 Logix designer with several servo motors, I'm trying to set the properties for them...
Replies
1
Views
827
Hello automation experts, I'm trying to learn about servo axis control in AB ControlLogix PLCs (L33ERMS). Attached is an example of a servo...
Replies
4
Views
1,082
Back
Top Bottom