
Visit our shop for nerds in control lifestyle products.
- PC reliability?
- Windows, real time
- PID loops
- PCs vs. PLCs
- Replacing people
- MS 'monopoly'?
- Software quality
- Where do we go from here?
- Why pay?
www.control.com/rss
Grafcet was developped in France in the mid-80s to allow development of sequential process flow diagrams and programming. It was incorporated as SFC (sequential file chart) in Allen-Bradley PLC-5, then under the same name in IEC61131-3.
It allows programmers to define the sequential process through a number of Steps (states where you want your process to be, and where actions are taken) and Transitions (conditions that will allow the evolutioon of the process from one step to the next. It also defines strict rules of evolution for the sequence: 2 steps in descending order must never be active at the same time; conditions for a Transition are not taken into account unless it is to trigger passage between 2 steps it is attached to...
Here is a link to a short but very clear manual on Siemens' format of Grafcet, S7-Graph:
http://support.automation.siemens.com/WW/skm/pdfviewer.asp?HitsPer Site=10&ehbid=html_76%2Fehb%2F14921091%2Ehtm&query=S7%2DGraph+man ual&lang=en&nodeid=14919021&page=1&view=new
It should give you a good idea of what I am talking about. You can also look up plcopen.org for more explanations of SFC. Do a google on Grafcet; most links will be in French, but there will be some in English.
Hope this helps,
Daniel Chartier
There is a lot of errors in what I just read about GRAFCET (SFC) and I advise you to go back to your studies to understand the power of this tool.
GRAFCET's primary function is to to analyse and communicate with process people. It became a language because it was easier to directly use its structure in a PLC than trying to translate it into ladder (one of the worst language in the world).
The IEC1131 standard which as been written by the major companies in the automation industry in order to comply with their products is incomplete. The GRAFCET international standard is the IEC848 and the even more complete standard is the French one, NF C03-190. To be a real specialist, you must understand the petry nets which are the base for the GRAFCET.
Ref: http://www.lurpa.ens-cachan.fr/grafcet/generalites/presentation_uk.html
Grafcet was designed as a means of documenting sequential manufacturing processes. Essentially, it is a type of flow chart for describing a machine sequence. Some PLC programming software will allow you to write the PLC program by drawing grafcet diagrams.
While grafcet can be described as a type of "flow chart", it is different than traditional flow charts in being oriented towards a specific use. The advantages it has over traditional flow charts are:
1) It is much more compact. That is, it takes fewer symbols to express the same logic. This can result in a smaller diagram, which allows you to get a better overview of the process without getting lost in the details. Even a fairly complex sequence can be shown in a couple of pages. A sequence for a simple machine should fit on one page.
2) A typical machine sequence has steps where you do action 'a' until condition 'x', where upon you proceed to action 'b' until condition 'y'. The symbols in grafcet are oriented to this, which means you don't have to draw out complex looped decisions blocks over and over again as you would if you used conventional flow charts.
3) Grafcet shows parallel and alternate logic paths in a clear and simple manner. This includes showing how the process diverges and converges in complex sequences with many things operating in parallel, or where different sequence segments are used for different conditions. This may sound complicated when described as text, but the diagrams are actually fairly simple to look at.
The limitation of grafcet is that it isn't suited to all applications. Grafcet is good for things that can be described as "sequences". It isn't good for describing complex mathematical algorithms, which are better addressed by conventional flow charts.
If you are familiar with state diagrams, grafcet uses similar concepts. A gracet "step" is equivalent to a state diagram "state". Both use "transitions" to move between "steps" or "states". Grafcet also has additional symbols to better show how sequences of steps operate in parallel (or alternate paths).
Some machine functions are better addressed by state diagrams than by grafcet. For example, describing the transitions between machine modes (manual, auto, start-up, shut-down etc.) are often better done with state diagrams. The operating sequence of the machine is usually better done with grafcet. The result is that you often end up using both methods to describe a machine. Generally, processes that branch out in many directions from a few states are better done with state diagrams, while processes that proceed in a more linear pattern are better done with grafcet.
I've used grafcet (and state diagrams) and highly recommend it as it helps to find the sequence design bugs in advance so that you get the program right the first time. What you need to make sure you do though is to draw the grafcet diagram FIRST, and THEN write the PLC program. You also need to keep the diagram up to date as you go along if you make any changes. If you are using PLC software that allows you to write the program using grafcet, then that is inherent in the programming process. If you are drawing the diagrams manually, though it can be very difficult and time consuming to reverse engineer your PLC program after the fact to update the diagram.
When the project is done, the grafcet diagram should go in the documentation that you deliver to the customer. Most non-programmers can understand a grafcet diagram fairly readily (this was the reason they were invented) and it is a great aid in helping them to understand how the machine works.
If you are not using PLC software that programs in grafcet, there is software which will help you draw grafcet diagrams. There were some (expensive) third party add-ins to MS-Visio, but these seem to have dissappeared since Microsoft bought Visio. There are free templates for Dia, but I don't happen to like Dia very much (not that I like MS-Visio either though) and don't recommend it.
I've drawn a lot of grafcet diagrams just using the drawing functions in word processors. The symbols are just boxes and lines, so it's not that hard. Once you've set up one box or line, you can just cut and paste it over and over again. Once you've had some practice with this, you can draw the diagram fairly quickly this way.
There aren't a lot of free references for how grafcet works. The Siemens S7-200 PLC programming manual has some simple examples of grafcet (SFC) diagrams to help explain how their "Sequence Control Relay" instructions work. This is also a good example of how to manually convert a grafcet chart into ladder logic.
There are some examples at: "http://doelan-gw.univ-brest.fr:8080/grafcet/index.html"
The book "Programming Industrial Control Systems Using IEC 1131-3" (by R.W. Lewis, published by the IEE) has a chapter on grafcet (SFC).
--
Steve Myres, PE
Automation Solutions
(480) 232-6862 Mobile
(480) 813-1145 Office
http://www.urswriter.com/SFCDraw/sfc_draw_home.shtml
Francis
www.controldraw.co.uk
Best Regards,
/SW
- Listen in: Watching a migration in progress
- HMI/SCADA: Microsoft Fluent technology helps enhance Proficy iFIX 5.0
- HMIs: NASCAR pit crews, Vista users get Simatic options
- HMI: Monitors, graphic panel improve images, offer ruggedness
- Software: Improve chemical processes, predictive modeling, viscosity simulation
- Listen in exclusive: Wonderware Innovation Partners to create vertical software faster
- Listen in exclusives: Wonderware launches innovator program; Kepware helps Wonderware
- Speedier production management application development
- Downtime avoidance: Proactive support services seek to eliminate diagnostic delays
- OPC server software enables multi-vendor substation automation
Users of this site are benefiting from open source technologies, including PHP, PostgreSQL and Apache. Be happy.
Patronize our advertisers!



