Abstract
Many of the problems experienced with the design and installation of modern industrial process control systems do not stem from the hardware used but from the software design process. Technological advances in hardware reliability and functionality have far outpaced our ability as control engineers to create software with comparable reliability and functionality. Common practices in software design for the programmable logic controller (PLC) entail little or no structured analysis and design, produce documentation at the end of a project if at all, create the inability to accurately predict development time and cost, and cause needless defects in control. Large, complex systems require a more rigorous engineering approach and methodology applied to software design. Small systems likewise can benefit from a more structured design environment, although these may be built using traditional methods. A software engineering approach and structured methodology is examined as it was applied to a project involving software modifications in a beer-blending facility with 24 networked PLCs. The approach is iterative in nature, featuring extensive use of models with levels of detail to deal with complexity. The methodology includes data flow diagrams, a data dictionary, state transition diagrams and is hierarchical in nature. Logical development is stressed prior to any coding. Benefits include the ability to communicate the system design requirements to management, peers and to the user prior to implementation, and to produce front-end documentation. Increased peer review is possible via walkthroughs. Defects in logic may be found earlier in the project through the construction of logical, “paper” system models.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.