A complete and practical guide to SCADA systems software from design to software development
1. Introduction 2. The Elements of SCADA Software 3. Practical Procedures for SCADA Software Development 4. Documentation for SCADA Systems 5. Tagnames and Signal Naming Conventions 6. Developing the Application Program Databases 7. Process Control Logic Descriptions 8. User Operations Reference Manual 9. Guidelines for Controller Application Programming 10. Guidelines for Workstation Application Programming 11. System Integration, Commissioning, and Checkout 12. Sample Project - Applying the Principles Appendix A Glossary Appendix B TSNC Dictionaries Appendix C Sample Process Control Logic Description Appendix D Complete Listings for Sample Program
Stuart McCrady is a Certified Engineering Technologist in the field of Electronics and Physics Engineering, as well as a Certified Professional Educator in the field of technical training for adults. He spent the first two years of his career in electronics, installing and servicing both large mainframe computer systems and small minicomputers. He then shifted to software programming in automation systems. This field of minicomputer programming required developing application software in machine or assembly language, executing at the hardware level. Field devices such as limit switches, pushbuttons, and solenoid valves, were connected to custom designed hardware interface boards installed inside the minicomputers. From the minicomputers of the 1970s to the PLCs and HMIs of today, Stuart has worked with a broad range of technologies using a variety of hardware and software platforms. He was involved in the design and implementation of more than 50 SCADA type projects. As his career progressed, Stuart acquired both more experience and more responsibility in the field of system integration and SCADA systems consulting. Stuart has served as programmer, project leader, project administrator, consultant, department manager, and SCADA system designer. Throughout his career, Stuart strove to establish programming standards and design methodologies that could be applied to any SCADA application. In the mid-1970s, he developed a program design and documentation system which he called FLOCODE, which resembled high level languages such as C, but was written in plain English. The purpose of the system was to allow the programmer to design software using English-like statements using structured programming constructs such as: If-Then-Else and Do-While/Do_Until. He applied this method to his own programming at both the high level language and the machine level language; this design documentation then became the comments and program description once the program was completed. Later, Stuart was involved in the establishment of a systematic tagging system for signal names which would work both for hardware signals as well as internal software points. In addition, a system of structured descriptions was developed for the PLCs which described the operations in simple English, but referenced key signals and operating parameters; this documentation served as the design document for the PLC programming. Stuart expanded this combination of systems into the complete design and documentation system which is the focus of his book: 'Designing SCADA Application Software: A Practical Approach'. In addition to this book on Designing SCADA Application Software, Stuart has published articles in trade magazines, as well as presented a paper on the application of computer control systems in the water treatment plants at an American Water Works Association convention. In 2006, Stuart made another shift in his career, becoming a full time instructor/trainer. Stuart taught courses at the community college level and at the trade school level; courses included: electronics, residential wiring, digital logic circuits, communication networks, electro-pneumatic control systems, electrical motors and motor control circuits, and PLC programming. Since 2011, Stuart has been traveling throughout Canada and the United States, teaching PLC and HMI programming in cities across both countries. His extensive experience in the industry has served him well in the classrooms, as he is able to bring real world experiences into the classroom such that the students not only understand the programming material, but also understand how the concepts are applied.