Sign in to follow this  
Followers 0
MartB

Ideas, thoughts, suggestions?

6 posts in this topic

This landed in my inbox this morning and I'm told it's a primer for an upcoming project that I will be providing programming for, so I thought I'd share this information with you and see if anyone has done anything like this before (I hate to re-invent the wheel). "Empty pallet (single) transfer cart mounted on 50 foot long rail. Cart position to be controlled by ILR Distance sensor utilising 4-20 mA output. This is to ensure cart knows it's position at all times even in the event of power loss or e-stop. 3HP SEW Eurodrive gear brakemotor (Inverter Motor). At 60Hz the motor will travel 350fpm. The cart is designed for dynamic braking only. The brake will only be used to hold position during pallet transfer. Cart movement to be designed with ramp up/ramp down curve. There is no doubt that e-stop will loose the load, this is not an issue. Short movement is not expected to reach full speed. Inverter can be controlled like a closed loop vector. Laser will be mounted off cart with reflector mounted on cart." My first reaction is that I need better feedback, but never having worked with a laser distance sensor before I may be wrong. I am also a little concerned that the customer says that the inverter can be controlled "like" a closed loop vector?? Looking at a preliminary layout it looks like the cart will stop at 13 positions (all fixed) and minimum distance between them being 2 feet, although obviously some are from one end of the rail to the other. I would appreciate any ideas, thoughts or suggestions you guys may have. Mart B

Share this post


Link to post
Share on other sites
Hi Mart, We do much the same thing with a cart on rails. Our cart moves product from one location to another. We use a SLC 5/04, AB drive and SIC lasers and one main drive motor. All of our equipment is mounted on the cart. The lasers send 4-20 mA to the SLC analog input card. On day 1, we manually drove the cart to each location and recorded the value from the lasers and stored those as "laser values" for each location. We have 14 locations spread across approximately 130 feet. The logic is pretty simple. We send the SLC a destination from another PLC (integer 1 - 14). The destination is used to load a known "laser value" into a register that we then use to either drive the cart north or south (depending on where it is now), set up limit instructions with +/- tolerances to create fast, medium, slow (creep) speed zones as well as an "at destination" tolerance window. As the cart's location approaches the destination target it goes from fast to medium to slow (creep) speed then finally the drive is stopped and the brake applied once we're in the destination tolerance window. Edited by wildswing

Share this post


Link to post
Share on other sites
Sounds like a very similar application. How do you set up your limit instructions? I'm not sure where you're going with that idea, or I'm just not understanding it correctly (more likely this option). How do you decide where to slow down the cart to slow speed? Some of my distances are closer together than others and the cart would never make full speed between them, so I'm thinking I might have to have a bunch of conditions for moving from 1 to 7 or from 2 to 3, etc. Mart B

Share this post


Link to post
Share on other sites
Ok, let's see if I can get more specific. Let's assume the number we get from the laser ranges from 0 - 1000. We get a destination for rack 7. Lets' also assume the laser value for rack 7 is 500. We use EQU and MOV instructions to move the known laser value to a "target" register, let's call it N7:10 [if target = 7 then move 500 to N7:10]. Then there's a series of ADD and SUB block that create the upper and lower limits for those windows I mentioned earlier. Those values are saved in N7:7, 8, 9, 11, 12, & 13. Further on we have LIM instructions that use combinations of these as high and low limits to check if the current laser value is within those limits. Those LIM instructions simply turn on discrete bits identifying "in the medium speed zone", "in the slow speed zone", "on target". Then using combinations of those bits, we tell the drive to go fast, medium, creep or stop. In my example the target is 500, so medium speed will be 470 - 530, slow speed will be 480 - 520 and the creep will be 490 - 510 and finally the "at target window will be 495 - 505. High speed is anything outside these limits. Those are used as the high and low limits We arrived at our numbers by experimenting. We kept it at the higher speeds as long as possible without overshooting the target window.

Share this post


Link to post
Share on other sites
Excellent information, thanks for the help - it's all becoming much clearer now. Except.................my local AB guy informs me that I can use an SSI compaitble laser sensor and a 1756-M02AS card in my ControlLogix rack and then treat it like any other motion axis - so consequently I'm totally confused again ! But oh well - just another day at the office. Seriously though, thanks for the explaination Wildswing, it has helped. Mart B

Share this post


Link to post
Share on other sites
If anyone has some example code that they can afford to post to give me a kickstart I'd appreciate it. I've got a pretty good idea of what to do, I just need a good boot up the booty to get going Thanks Mart B Edited by MartB

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0