User manual
Publication LOGIX-AP010B-EN-P - May 2010 31
Chapter
2
Software Conversions - Program Structure
Introduction
The Siemens S5 controller is programmed with the Step 5 software package,
while Rockwell Automation’s Logix controllers are programmed with the
RSLogix 5000 software package.
This chapter explains the differences between the structure of a Step 5 PLC
program and an RSLogix 5000 project and provides guidance in converting an
S5 program to a RSLogix 5000 project.
There are two components in an S5 PLC program; the logic contained in
modules such as function blocks, and the memory variables that store data
related to this logic. The Code Area consists of Program Blocks (PB),
Function Blocks (FB), Extension Function Blocks (FX) and Organization
Blocks (OB). The Data Storage area consists of Data Blocks (DB), Extended
Data Blocks (DX), and Flag Words (FW). This chapter looks at how these two
components are implemented in Step 5 and RSLogix 5000 software, and seeks
to give an understanding of the optimal method of converting the structure of
a Step 5 program to an RSLogix 5000 project.
Organization Blocks/Logix
Tasks
This comparison of Step 5 Organization Blocks and RSLogix 5000 tasks is
designed to introduce the structure of an RSLogix 5000 project to the S5 user.
Step 5 uses Organization Blocks (OBs) as the top level in the hierarchy of
program calls. These OBs are called by the controller’s operating system and all
user function blocks and program blocks are called from these OBs.
In RSLogix 5000 software, the equivalent project elements to these OBs are
called Tasks. In Step 5 there are three types of OBs and the table below details
the equivalent RSLogix 5000 tasks for each Step 5 OB type.
Step 5 OB RSLogix 5000
Task
Description
Program Cycle OB Continuous Task The code is executed cyclically,
recommencing executing the code from
the beginning when the last instruction
has been executed.
Cyclic Interrupt OB Periodic Task The code is executed at defined time
intervals.
Hardware Interrupt OB Event Task The code is executed in response to a
defined event.