You are not registered yet. Please click here to register!


 
 
plc storereviewsdownloads
This board is for PLC Related Q&A ONLY. Please DON'T use it for advertising, etc.
 
Try our online PLC Simulator- FREE.  Click here now to try it.

---------->>>>>Get FREE PLC Programming Tips

New Here? Please read this important info!!!


Go Back   PLCS.net - Interactive Q & A > PLCS.net - Interactive Q & A > LIVE PLC Questions And Answers

PLC training tools sale

Reply
Thread Tools Display Modes
Unread December 2nd, 2019, 06:35 PM   #1
zorbio
Member
United States

zorbio is offline
 
Join Date: Apr 2019
Location: North Carolina
Posts: 5
Process sequencing using Allen Bradley

I have a process that has smaller processes, but I am not sure how to best utilize the ladder logic in this situation. I want to make it somewhat modular so that its easier to change things if needed down the road, and with safety in mind.

I assume using SQI/SQO from the Allen Bradley library is the best route to go, but I cannot seem to find a solid way to integrate them, or if I should ignore those functions?


Is there a ladder logic **** type place that I can look at to get inspiration?
  Reply With Quote
Unread December 2nd, 2019, 06:55 PM   #2
Paully's5.0
Lifetime Supporting Member
United States

Paully's5.0 is offline
 
Join Date: Jan 2006
Location: WI
Posts: 2,119
Quote:
Originally Posted by zorbio View Post
I have a process that has smaller processes, but I am not sure how to best utilize the ladder logic in this situation. I want to make it somewhat modular so that its easier to change things if needed down the road, and with safety in mind.

I assume using SQI/SQO from the Allen Bradley library is the best route to go, but I cannot seem to find a solid way to integrate them, or if I should ignore those functions?


Is there a ladder logic **** type place that I can look at to get inspiration?
SQI/SQO...lol the ol' college traffic light problem. If you are using ControlLogix/ComplactLogix platform then my go to is using Rockwell's Phase Manager and applying batch (ISA-88) principles. This won't tell you how to write ladder but it does help break down the processes and show how you can create modular pieces of code in a "standard" way.

Give this a read.
  Reply With Quote
Unread December 2nd, 2019, 07:17 PM   #3
zorbio
Member
United States

zorbio is offline
 
Join Date: Apr 2019
Location: North Carolina
Posts: 5
I like the idea behind the Phase Manager, what I don't like is that it seems like it is DLC versus part of the ControlLogix package. I guess if the price is right I don't mind using it.

I have a Java background so writing the logic isn't the problem for me, its just organizing it in a way that is easy to work with and not ridiculous. Granted, java is quite ridiculous in its own right...

Thank you for the FOMP book quite a good read thus far!

Last edited by zorbio; December 2nd, 2019 at 07:45 PM.
  Reply With Quote
Unread December 2nd, 2019, 08:35 PM   #4
saultgeorge
Lifetime Supporting Member
United States

saultgeorge is offline
 
Join Date: Jul 2015
Location: Detroit
Posts: 245
I may not understand exactly what you're trying to accomplish, but perhaps some AOI's are in order. Easily changed, and can be placed anywhere in the main logic. Hope this helps.
__________________
"4 out of 5 Great Lakes prefer Michigan."
"I brake for no apparent reason."
  Reply With Quote
Unread December 2nd, 2019, 08:48 PM   #5
harryting
Lifetime Supporting Member
United States

harryting is offline
 
harryting's Avatar
 
Join Date: May 2002
Location: Puget Sound
Posts: 2,090
I see what you are asking but don't have a tidy answer for you. When I transitioned from DCS scripting to programming PLC ladder, it was difficult since ladder doesn't handle sequence naturally. That's why for programming sequential operation in ladder, you need to program a "sequence machine" first. You can use sequencer block or I prefer to build my own. There are some example of sequence over at Mr.PLC, I think.

ISA-88 is a good place to start. It gives you a framework on how to break thing up.

Once you have a rough concept of ISA88, group your IO up into control-modules, then write out how your sequence on paper. The sequence will enable/disable control-modules.
  Reply With Quote
Unread December 3rd, 2019, 08:41 AM   #6
parky
Member
United Kingdom

parky is offline
 
Join Date: Oct 2004
Location: Midlands
Posts: 1,450
One of the best I ever did was a batching process but it had 14 tanks (+ other processes like CIP etc.) This was based on selecting recipes from an SQL Server, downloading it to the tank(s) depending on what recipe for what tank.
I created a task handler for each tank is basically consisted of a small sequence controlled by an integer for example:
0 = IDLE
1 = Starting
2 = Running
3 = Held
4 = Held on Exception
5 = Resuming
6 = Abandoning
7 = Abandoned
This displayed a message on the screen of the status of the task.
Once written as a function block it can be called for each tank or operation so write once use many times, all that was required was to populate the function block with the associated variables.
Next was to write a Unit process block, this again was driven by an integer in a sequence word, this would do the following: ignoring the first 100 states (i.e. 0= Idle, 2 = ??? & so on) when Unit process was started by the task it would go through the motions of 0 - 100 then jump to 5000, this was increment stage. It would load the stage recipe i.e. stage 1, then jump back to say 101, step 101 would check the ingredient type and force the UP seq to a value of the ingredient type for example:
1000 to 1200 Water addition
1300 to 1500 manual addition
1600 to 1900 Starch Addition and so on
I split the sequence numbers into 10 so that If I needed to add another step there were spares.
Example 1010 = Snapshot tank weight,
1020 = Open Water valves
1030 = check water against set point - in-flight
1040 = Close main water valve
1050 = check in-flight
1060 = Close Trickle valve
1070 = Verify Weight
etc. etc.
1080 = shut down UP
1100 weight error
This means that if the process weight was under you could then either manually add more water then jump back to 1070 to check weight or bypass to accept or abort.
This way I could program one tank, debug it then just copy for other tanks and populate the blocks with the relevant addresses.
As far as recipe handling it meant that the recipe could have multiple additions of the same ingredient but at any stage of the recipe. by the way the recipes had up to 16 stages and up to 7 ingredients.
all outputs were driven in one block by either seq number range or internal markers.
  Reply With Quote
Reply
Jump to Live PLC Question and Answer Forum

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Topics
Thread Thread Starter Forum Replies Last Post
Controller Task in Allen Bradley Iman LIVE PLC Questions And Answers 4 June 8th, 2014 05:56 AM
allen bradley to siemens irondesk40 LIVE PLC Questions And Answers 6 February 16th, 2014 11:34 AM
Allen Bradley for temperature control again irondesk40 LIVE PLC Questions And Answers 12 November 15th, 2013 03:01 PM
Learning Allen Bradley mbferrari LIVE PLC Questions And Answers 9 March 11th, 2009 01:25 PM
Simulator, Simulation, Shadow Code Terry Woods LIVE PLC Questions And Answers 1 January 2nd, 2005 02:40 PM


All times are GMT -5. The time now is 03:39 AM.


.