Host Engineering Forum
 
*
Welcome, Guest. Please login or register.
Did you miss your activation email?
May 21, 2012, 07:32:12 pm


Login with username, password and session length


Pages: [1] 2
  Print  
Author Topic: Another New User  (Read 4008 times)
malexand
Newbie
*
Posts: 5


« on: November 13, 2008, 04:04:54 pm »

Hello,

I am embarking on writing a program for my DL05 PLC that will control a small sanding operation. Components included are: 2 swing clamps, linear actuator, air manifold, precision regulator, and sanding machine. The actuator, and 2 swing clamps are controlled by compressed air which is regulated by the manifold. The flow of this process will be:

1. Operator puts part in fixture and presses start button on sander
2. PLC program begins:
   a. Sander turns on
   b. Swing clamp contact on manifold engages, air flows to two clamps holding part in fixture
   c. Actuator contact on manifold engages, air flows to actuator extending actuator (moving part to sandpaper)
   d. Precision regulator holds air pressure to actuator at 20 lbs.
   e. Actuator moves part to make contact with sandpaper, held in this position for 6 seconds
   f. After 6 seconds, 2nd actuator contact on manifold engages, air flows to actuator retracting actuator (moving part away from sandpaper)
   g. Sander turns off
   h. 2nd swing clamp contact on manifold engages, supplies air to both clamps to release clamp from holding part
3. Operator takes part off of fixture, puts next part on
4. Operator presses start button, process starts again
 
As I am not at all familiar with DirectSoft5 or any PLC language, I have been going through the training manual to get an idea on how to begin writing a program for this. Any help on how to go about creating a program that could perform those tasks would be helpful.

Thanks for taking the time to read this,
Mike A
Logged
Controls Guy
Internal Dev
****
Posts: 1134


Darth Ladder


« Reply #1 on: November 13, 2008, 06:03:54 pm »

Whatever you do with the PLC, it sounds like this machine will have the ability to clamp and or sand some guy's hand, so you'll want to make sure you use some safety rated hardware in addition to the PLC to make sure that can't happen.
Logged

I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.
malexand
Newbie
*
Posts: 5


« Reply #2 on: November 14, 2008, 08:44:23 am »

Thats a good point! Currently we have plexiglass shields that encase the system. Adding a contact for when the shields are closed or open would be a great safety device - so that only when the shields are in a closed, locked position will the program run.
Logged
milldrone
Full Member
***
Posts: 38


I'm changing my attitude to thumbs up


« Reply #3 on: November 14, 2008, 10:42:47 am »

I am embarking on writing a program for my DL05 PLC that will control a small sanding operation. Components included are: 2 swing clamps, linear actuator, air manifold, precision regulator, and sanding machine. The actuator, and 2 swing clamps are controlled by compressed air which is regulated by the manifold. The flow of this process will be:

1. Operator puts part in fixture and presses start button on sander
2. PLC program begins:
   a. Sander turns on
   b. Swing clamp contact on manifold engages, air flows to two clamps holding part in fixture
   c. Actuator contact on manifold engages, air flows to actuator extending actuator (moving part to sandpaper)
   d. Precision regulator holds air pressure to actuator at 20 lbs.
   e. Actuator moves part to make contact with sandpaper, held in this position for 6 seconds
   f. After 6 seconds, 2nd actuator contact on manifold engages, air flows to actuator retracting actuator (moving part away from sandpaper)
   g. Sander turns off
   h. 2nd swing clamp contact on manifold engages, supplies air to both clamps to release clamp from holding part
3. Operator takes part off of fixture, puts next part on
4. Operator presses start button, process starts again

The first thing that needs to be done when writing a PLC program is to make a description of the process. I'm having a little difficulty with your description. It might just be a terminology thing. I going to attempt to write a description of your process from what I have just read. I will also ask some questions along the way.

1. Operator presses start button.
2. "Sander motor" output from the PLC turns on. Do we need a time delay for the motor to come up to speed? If this is an electric motor, You do realize that the PLC cannot turn this on directly but will need some sort of interface?
3. "Swing clamp down" output turns on in the PLC. Do we need some time delay before the next step? Also you are saying there is two "contacts" as you are calling them for the clamps. Are they "clamp" and "unclamp"  or are they two coils one for each clamp?
4. "Actuator extend" output from the PLC turns on. Do we wait six seconds from this moment or do we wait until the actuator is in position? If we wait six seconds when it's in position then we need a in position sensor.
5. "Actuator retract" output from the PLC turns on. Are you sure there is two coils for the actuator? Extend and retract? do we need a time delay after the retract output has been turned on before the next step or is there a home sensor?
6. Turn  off the "sander motor output from the PLC. Do we need another time delay before the next step?
7. "Swing clamp up" output from the PLC turns on.

The safety aspects Controls Guy mentioned need to addressed. Safety is done outside the PLC, not in the program.

We need details on the nature  of the loads the PLC is expected to control. 120V AC, 24VDC, amps ect.

Do you want help writing the program? This is an excellent type of project to start learning PLCs with! Or do you just want the code? I'm hoping you want just some nudges from us to get you started. I'm sure we will do our best to help you.     
 
Logged

Vaughn
malexand
Newbie
*
Posts: 5


« Reply #4 on: November 14, 2008, 01:14:37 pm »

This is all great stuff and I appreciate the feedback already  Wink Once my automation expert comes back from vacation on Monday I will write up a better, more detailed description of what I actually want to have happen. To answer your question, I would like to learn how to write the program with some assistance as I will have to write more of them in the future for different product lines. Thanks again!

Mike
Logged
Controls Guy
Internal Dev
****
Posts: 1134


Darth Ladder


« Reply #5 on: November 14, 2008, 02:33:58 pm »

There are specially built (fault tolerant) safety relays and wiring practices that you can use to guarantee the final design is safe.  Some brands are Pilz, Allen Bradley, STI/Omron, Banner, etc.  As milldrone pointed out you don't want to rely on a standard PLC to provide safety (although there are safety rated PLC's).  Since it's your first design, you might want to get an experienced controls engineer to look it over before you build it, or if the sales engineer for the safety hardware is technical enough, he can probably help you make sure you're applying it correctly.
Logged

I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.
malexand
Newbie
*
Posts: 5


« Reply #6 on: November 17, 2008, 04:30:31 pm »

Alright thanks again Controls for the input - I will be looking into some sort of safety implements for this design.

In response to your questions milldrone:

2. Yes a 3 second time delay is needed. I have spoken to my automation guy here and we will have to get a contactor for the motor to turn on.

3. A 2 second time delay will be necessary for the swing clamps. Only 1 signal will be needed for controlling air to 2 different tubes (clamp up and down).

4. Again a 2-3 second delay will be necessary after the actuator extends. That amount of time will guarantee that there is proper contact between part and sanding drum. Nothing will change for the next 6 seconds as the part is being sanded.

5. Just like the clamps, only one signal will be used for both retract and extend on the actuator. A 2 second time delay will be needed before the next step.

6. Another 2 second delay would be appropriate at this point - again we will have to find a suitable contactor to accomplish this.

This PLC is the DL05 D0-05AR model and will have 24VDC loads.

I hope this clears up some of my vague descriptions and I would like to thank you again for taking the time to look at this. Since I am pretty new to this, any help in starting a program would be appreciated.
Logged
milldrone
Full Member
***
Posts: 38


I'm changing my attitude to thumbs up


« Reply #7 on: November 18, 2008, 11:12:10 am »

malexand,

This looks like a perfect EDRUM application. Two ladder logic rungs and your done. I tried this with conventional ladder and I was using 5 rungs. Read up on the EDRUM function. Then reply back and we will get started then.
Logged

Vaughn
malexand
Newbie
*
Posts: 5


« Reply #8 on: November 19, 2008, 09:41:22 am »

I agree milldrone, this looks like a perfect application for the EDRUM function. I found a great article on it at http://www.automationdirect.com/static/manuals/d006userm/ch6.pdf . Looks like it will be a good way to reduce the number of ladder rungs in my program. Does it matter that I am using DL05? That article was DL06 specific but I hope it works for earlier versions. Can't wait to get started!

Mike
Logged
milldrone
Full Member
***
Posts: 38


I'm changing my attitude to thumbs up


« Reply #9 on: November 19, 2008, 11:34:47 am »

malexand,

My copy of the DL05 manual says the EDRUM is supported. So this should work. I do not have a DL05 at my desk to test. I only have a DL06.

So you will need a way to "maintain" (for logic reasons) a momentary push on the start button. Then "dropout" when the cycle is complete.

Then the EDRUM's enable input would use this "maintained logic" to enable the timing. The reset input would use the opposite state of this "maintained logic". A "leading edge" version of this same "maintained logic" is a good choice for the "jog" input. The only thing left is to list the times in each step and assign the steps to the outputs. Do not forget to put in a "end of cycle" bit in the EDRUM.

Need more of a nudge?

I'm hoping you have the DL05 somewhere that you can program it and watch what happens. The outputs do not need to be connected. The DL06 I mentioned earlier in my post is actually my spare. I use it to test programs, not just sit on the shelf.     
Logged

Vaughn
Vernon Leeper
Full Member
***
Posts: 22



« Reply #10 on: November 23, 2008, 08:34:38 pm »

malexand,
I just finished a vacuum forming machine last month, kind of sounds the same. Used an 05AR, programmed in stage but, because I was using a DV1000 for the opperators to set timers and check part count, didn't know if an EDRUM would have worked, would have been a lot easier.  Can EDRUM timers be changed with some sort of HMI or do you just use it for fixed amouts?
The programmed is saved, your welcome to it just modify it to what you need. As for safety, I used a E-stop in front of everything, the machine will not run unless the E-stop is pulled, all you can do is power it up.
Vern.
Logged

Yep, as a matter of fact i did ride the short bus.
And I liked it too.
Controls Guy
Internal Dev
****
Posts: 1134


Darth Ladder


« Reply #11 on: November 24, 2008, 12:05:41 am »

No, you can only enter constants for time values in a DRUM, not use a V like you can in a normal timer.
Logged

I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.
Vernon Leeper
Full Member
***
Posts: 22



« Reply #12 on: November 24, 2008, 09:31:34 pm »

Bummer, If you could "on the fly" adjust timers in a drum through a HMI would work wonders for some processes. Don't you think, you could eliminate a few rungs. If it did work, then it would have made my vacuum former so much easier. The proceess steps are all time based operations like a drum. I needed some way for the setup tech to adjust heat times, vacuum, and cool times, other wise I would have to drag out a laptop for every setup. Oh well, it works.
Logged

Yep, as a matter of fact i did ride the short bus.
And I liked it too.
Controls Guy
Internal Dev
****
Posts: 1134


Darth Ladder


« Reply #13 on: November 25, 2008, 10:27:59 am »

Bummer, If you could "on the fly" adjust timers in a drum through a HMI would work wonders for some processes. Don't you think, you could eliminate a few rungs. If it did work, then it would have made my vacuum former so much easier. The proceess steps are all time based operations like a drum. I needed some way for the setup tech to adjust heat times, vacuum, and cool times, other wise I would have to drag out a laptop for every setup. Oh well, it works.

Well, what I've done a lot that would work for you is to use an EDRUM, setting only any fixed, non adjustable timers in the drum itself, and allow 16 relays for the step completion events.    Then the completion conditions are written immediately below the drum, and can include a normal timer if necessary, which can have a V-register for a setpoint, that can be set from an MMI.

Or, while it's not quite as flexible, if the only reason you're doing it is to allow time adjustment, you could chuck the C coils as completion conditions and just use the timer done bits.
« Last Edit: November 25, 2008, 10:34:54 am by Controls Guy » Logged

I retract my earlier statement that half of all politicians are crooks.  Half of all politicians are NOT crooks.  There.
b_carlton
Internal Dev
****
Posts: 387



WWW
« Reply #14 on: November 25, 2008, 12:23:20 pm »

I suggest Stage programming. It has much more opportunity for documenting the individual events. You can transition based on a varitey of factors, not just time. The time could be easily adjustable. If you need flexibility then this is the way to go.
Logged

An output is a PLC's way of getting its inputs to change.
Pages: [1] 2
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM