When programming PLCs, PACs, or other controllers, it’s beneficial to have a PC-based software with the following 3 features to ensure your material handling equipment runs flawlessly.
Over the years of working at Bastian Solutions, I have helped concept, design, and implement many different types of machines. These machines vary widely in complexity from simple standalone equipment to large scale fully automated SCADA (supervisory control and data acquisition) driven systems.
Early in the design phase, I start deciding what platform I will be using for the project: PLC (programmable logic controller), PAC (programmable automation controller), or PC (computer). You may think the decision of which platform to use is driven solely by the type of system, but I look at this in a different way. My platform decision has many factors based on the details of the project such as type of I/O, amount of I/O, and amount of data to be collected, but I also weigh my decision based on the software that drives the platform. The three top features I look for on the software side of a platform decision are:
- Types of instructions offered
- Variety of programming languages supported
- Scalability and reusability
Software that provides a wide variety of instruction types is very important. Depending on the size and scope of a project, programming controllers can get very complicated fast, especially if you are limited to very basic instructions. Having a wide variety of pre-built instructions allows a programmer to mitigate the complexity and streamline the code. Also, in addition to having a variety of pre-built instructions, it is very helpful to have software that allows for custom-built instructions that can be reused within the code.
Having a variety of programming languages available is also very important in a software package. Personally, I like to use software that has, at a minimum, ladder logic, structured text, and Sequence Function Charts (SFCs). Over the years, I have found that certain programming languages work better for different tasks of a project.
A great example of the benefits of multiple languages is on projects that have machines that need to operate very sequentially. In these instances, SFCs can be used instead of ladder logic to provide a very robust and streamlined method for controlling a sequence of operation. SFCs also allow for easier troubleshooting of issues experienced with a given sequence.
Another quick example is the use of structured text to program sockets for communication to external applications. This can be done in ladder logic, however, it is much cleaner and efficient in structured text.
Scalability and Reusability
The final feature I look for in software is scalability and reusability. As I mentioned earlier, the size and scope from project to project often varies greatly. Being able to use the same software across many different size platforms is very important. Software that works for a variety of platforms allows a programmer to generate standards that can be used from project to project. These standards not only improve the reliability of a system but also allow for much quicker implementation of any given project.
In addition to scalability, it is very important that the software keep up with the ever-changing operating systems they run on. For example, many companies are experiencing issues with Windows XP now that Microsoft is no longer supporting the program. This proves the importance of having platforms with software that can keep up with changing operating systems.
Please contact us if you need help selecting the right controller or software for your system automation. We have a full controls engineering staff that can assist.