There are several languages available to write a PLC program, such as Ladder Logic, Function Block Diagrams, Structured Text, and Sequential Function Charts.
They all have its pros and
cons, but sometimes the programmer may be forced to choose one of these
languages for different reasons. One of the reasons could be the requirement from
the client that is receiving the system, another is the easiness to read,
troubleshoot and maintain, or even limitations in the programming software that
depending on the licenses may not have all of these languages available.
The goal of this post is to
write a simple Sequential Function Chart (SFC) program, also known as GRAFCET in some
countries, in Ladder Logic. Ladder Logic is probably the most common PLC programming language
used in the industry and it has become popular for its simplicity.
This is the basic principle of a SFC: There are Steps with specific Actions and the system moves from one Step to another when the transitions are met. For example in the system below, the System that is currently at Step-010 will move to Step-020 if the condition of the transition is True. The transitions are typically states from the system, such as the value from a digital input, a specific state from the robot, a timer, counter value, etc.
Some of the highlights of this standard are:
- Standardization of machine states and tags.
- Clear and well defined sequential flow.
- Functional programming of the control system.
- Modularity that makes it easier to operate, troubleshoot and maintain.
- Easier to integrate the automated system not depending on specific vendor and OEMs.
- Horizontal integration with other systems in the production line
- Vertical integration of the PackML systems with higher level industrial applications such as SCADA, MES and OEE.
- Wikipedia https://en.wikipedia.org/wiki/PackML
- OMAC implementation guide: http://omac.org/wp-content/uploads/2016/11/PackML_Unit_Machine_Implementation_Guide-V1-00.pdf and additional content http://omac.org/workgroups/packml-resources/
- Siemens templates https://support.industry.siemens.com/cs/document/109475572/simatic-cpg-template?dti=0&lc=de-AT
and https://support.industry.siemens.com/cs/document/49970441/simatic-simotion-omac-packml-v3-machine-and-unit-states?dti=0&lc=en-WW - Rockwell Automation programming quick start https://literature.rockwellautomation.com/idc/groups/literature/documents/qs/iasimp-qs018_-en-p.pdf
No comments:
Post a Comment