PLCS.net - Interactive Q & A

PLCS.net - Interactive Q & A (http://www.plctalk.net/qanda/index.php)
-   LIVE PLC Questions And Answers (http://www.plctalk.net/qanda/forumdisplay.php?f=2)
-   -   AB Kinetix 300 homing question (http://www.plctalk.net/qanda/showthread.php?t=113582)

lurby January 2nd, 2018 04:15 PM

AB Kinetix 300 homing question
 
Happy New Year

I have a question about homing an AB Kinetix 300 servo drive. I am attempting to run this drive in position mode. The servo motor is connected to a ball screw which in turn is connected to a slide with a tool mounted to it. I need to define a home position before I can give a position for the motor to travel to. There appear to be several homing options in the book but they all require motion to a switch or a marker on the encoder. My method would be touching off the tool and then defining that point as my home position. I was thinking of jogging back and forth until I reached the point that I wanted to call home and then pressing a "home switch"

The only method that I see that does not require movement prior to homing is method 35. This is "immediate homing" This will happen as soon as I enable the drive though. That might not be correct. Is there a way that I can use the immediate home method but specify when it will take place? Is there another method that I am missing?

Ken Roach January 2nd, 2018 04:46 PM

Is there a controller associated with the Kinetix 300 that could send it configuration messages, or are you running it as a total standalone device ?

I think the "Define Home" feature is what you want. That tells the drive "where you are right now is Home", and you can trigger it over the Output network connection, or by literally wiring a digital input to a button or relay and defining that input's function as "Define Home".

I would have to experiment a little bit with the HomeOffset parameter and to determine the difference between asserting a "Define Home" input versus asserting a "Start Homing" input with the Homing Mode set for Mode 35 (Immediate Homing).

I am reasonably confident that Immediate Homing does not simply assert that the position at powerup or when the drive is Enabled is Home.

lurby January 2nd, 2018 07:38 PM

I just read KB 448128 which talks about Define Home. This is what it says:

Define Home is different then actually homing your axis. It does not provide any motion. It simply changes the Actual Position (and actual position EC) to the value entered in the Home Offset parameter (the actual position EC then reads the number of encoder counts for that position) and sets the Homed status bit to 1.
Define Home does not function when Reference Source is in either Current or Velocity mode (0 or 1). Also, the drive has to be enabled.

That is exactly what I am looking for but I do not know where to find it.

I am controlling this system with a Micrologix 1100 over Ethernet IP using messaging instructions. I know that the CompactLogix is the better way to do this but I am not familiar with that level of programming. I have done this a few times so far using velocity mode and it has worked great. I want to give my system more flexibility and that is why I want to change to position.

How do I set up this "Define Home" ??

Ken Roach January 2nd, 2018 08:05 PM

Ideally you would wire up a relay output on the MicroLogix to one of the discrete inputs on the Kinetix 300, then set up that discrete input's function as "Define Home".

Easy to do, simple to test and troubleshoot.

If this were a CompactLogix, you would have an I/O connection to the drive over Ethernet and you could just set the "Define Home" bit True.

With a MicroLogix 1100 it's a little harder because they can't create I/O connections over Ethernet. And in fact, the usual Ken-does-not-recommend-this-and-gets-grumpy-when-you-ask method of writing to the Output Assembly of a Kinetix 300 over EtherNet/IP explicit messaging performs a write to nonvolatile memory, which will wear out that Flash memory component after just 1 million writes, so it's not appropriate for start/stop control. **

But it should be OK for defining the Home position, as long as you won't be doing this frequently. Even every 30 minutes it shouldn't wear out for 50+ years.

I don't have an RSLogix 500 instance handy right now so I can't give you a perfect example, but the basic idea is that you would set up a MSG instruction that performs the CIP Generic - Write Attribute Single command, and aim it at the Output Assembly, which is Class 0x04 (CIP Assembly Object), Instance 114 (decimal), Attribute 3 (decimal) and is 52 bytes long. The data payload would have the Define Home bit (I think that's Byte 00, Bit 03) set True.


** that bit about writing to NVRAM may be incorrect and is the subject of contradictory information in the user manuals and knowledgebase. Best to be conservative and only do these writes on demand.

lurby January 2nd, 2018 10:36 PM

I was intending to use a push button to establish "home" any way. I could hard-wire it directly to the drive and then set the function to "define home"

Would I set up the homing method as 35 or would the "define home" override that?

Thank you for your help by the way...

kekrahulik January 3rd, 2018 07:45 AM

Just to clarify - "immediate homing" means that when the drive is given a home command, it will immediately "home" at the current position (it will not try to move to find home). The servo will establish the current position as value "home offset value".

So if your home offset is 0.00 and you give the drive a home command, then the drive will establish that position as 0.00.

So homing would essentially be instantaneous.

I haven't used a ML1000 for servos and I haven't played with 300's, but that is general AB terms.

Ken Roach January 3rd, 2018 09:58 AM

Quote:

I could hard-wire [a pushbutton] directly to the drive and then set the function to "define home"
Exactly.

The Home Mode settings (to sensor, to torque, or immediate) require a "Start Homing" command or input. I think that he "Define Home" function operates independently of the Home Mode.


All times are GMT -5. The time now is 08:40 PM.

.