Software and Hardware


SCL is a Structured Control Language designed by Siemens for use on Siemens branded PLCs. The programming language is a high-level textual programming language based upon a hybrid combination of PASCAL and aspects of standard programming on PLCs [1]. SCL also includes various elements of typical PLCs such as inputs, outputs, timers, bit memory, block calls etc. which greatly extends the flexibility of applications the S7 can deal with.

Using text based programming gives a significant advantage as much more complex mathematical equations can be written. It also allows for complex programs that took numerous lines of ladder logic to be written in a single lines of text. It can be implemented directly into the Organisational Blocks as well as both Function Calls (FC) and Function Blocks (FB). This allows the other types of languages to interact with it independent on what language ether are using to run. The SCL environment also allows the use of conditional loops; IF, FOR, and WHILE.

You can use blocks programmed using SCL side by side with Statement List (STL), Ladder Logic (LAD), and Function Block Diagram (FBD) blocks. This means that a block written in SCL can call a block written in STL, LAD, or FBD. In the same way, SCL blocks can be called by STL, LAD, or FBD programs [1].


GRAPH is a Siemens based programming language that gives a a more visualized way of programming. Graph takes its roots from State Machine Design in the fact that it is made up of States and Transitions, this allows the programmer to lay out each step the program will undertake and the events that much happen to force the PLC into that state. In GRAPH a step is equivalent to a state and contains a series of actions that must be undertaken before leaving. Transitions are written in Ladder Logic to relate each state and contain the conditions which must be met to leave that state.

S7-GRAPH may be purchased as a separate package for the S7 model PLCs although Function Blocks are able to be programmed with GRAPH within the standard TIA Portal environment without this extra software.

Multi-Point Interface (MPI)

1234 MPI is a data communication cable that allows multiple devices to interact with one another. It was developed by Siemens designed for use with there PLC’s and PLC accessories. This type of communication is most commonly seen in industry when a backup PLC may be needed to keep something in operation if the other fails. It is also a good means of centralizing one point for which all the PLC’s can be monitored. MPI is designed for half duplex signals meaning that only one signal can travel down the line at once which can result in miscommunication if to much is being sent at once, this can generally be solved by using a Profibus type communication, which is much more common in a larger scale environment to the ENG305 facilities.


Untitled-1 HMI or Human Machine Interface is a visual interface commonly used within the process control industry which enables the user to visually manipulate/monitor certain aspects of the system in which is is linked to. There are various models and sized displays designed for controllers although within this project the Siemens TP177 is used to display the response of the system in real time [4]. The TP177 is a 5.7″ touch screen display with 256KB of usable memory, allowing touch based interaction within its windows based environment.