1. Hardware Configuration

After opening SIMATIC Manager, the “New Project Assistant” window may appear. You can simply close it, as we will create the project manually.

Right-click in the project area and select:

Insert → Station → SIMATIC 300 Station

For this project, I will use an S7-300 station.

1.1 Adding the Hardware

After creating the station, select it and double-click Hardware to open the HW Config editor.

On the right side, you will find the Hardware Catalog. If the catalog is not visible, go to:

View → Catalog

From the Hardware Catalog, navigate to:

SIMATIC 300 → RACK-300

Select the Rail and drag it into the configuration window.


For the S7-300 hardware

configuration, I added the required modules and arranged them according to the standard rack layout. The following image shows the complete hardware arrangement, including the power supply, CPU 313, and I/O modules.

Make sure that the selected CPU and its order number match the CPU you intend to use.

1.2 Adding the Digital I/O Module

If the project requires additional digital inputs and outputs, navigate to:

SIMATIC 300 → SM-300

Select the required digital input/output module and place it in the appropriate slot.

For this DOL motor control project, the digital inputs will be used for commands such as Start and Stop, while a digital output will control the motor contactor.

1.3 Saving and Compiling the Hardware Configuration

After placing all required modules, save the hardware configuration and compile it using:


Station → Save and Compile

The hardware configuration is now ready for programming in STEP 7.

2. Configuring the PLC Program

After completing the hardware configuration, save and compile the station.

Next, return to the SIMATIC Manager and open the S7 Program under the configured CPU.

The main program will be created in OB1 (Organization Block 1). This is where I will implement the basic logic for controlling the motor.

2.1 Creating the Motor Control Logic

For this project, I will use Ladder Logic (LAD) to program the motor control sequence.

I will use two push buttons:

  • Start — Normally Open (NO): used to start the motor.
  • Stop — Normally Closed (NC): used to stop the motor.

The PLC output will control the motor contactor. I will also use a self-holding circuit so that the motor remains running after releasing the Start button.

Creating the Ladder Network

To start programming, double-click OB1 in the S7 program. A window will appear; in the Language section, select CONT to program using LAD (Ladder Logic), then click OK.

The Ladder Logic editor will open.From the instruction toolbar, I will select the required contacts and place them in the network.

For the motor control circuit, I will use:

  • A Normally Closed contact for the Stop button.
  • A Normally Open contact for the Start button.
  • A Normally Open contact associated with the motor output for the self-holding circuit.
  • A coil for the motor contactor output.

2.2 Assigning Inputs and Outputs

The next step is to assign addresses to the physical inputs ''E'' and outputs ''A''.

For example:

  • Start push button → Digital Input
  • Stop push button → Digital Input
  • Motor contactor → Digital Output

The exact addresses depend on the digital I/O module used in the hardware configuration.

2.3 Defining the Mnemonics

After setting up the program structure, double-click the Symbol Table. A window will open where you can define the names (mnemonics) for the inputs and outputs used in the program.

For example, you can assign descriptive names such as:

  • START → Start push button
  • STOP → Stop push button
  • MOTOR → Motor contactor

This makes the program easier to read and understand instead of working only with absolute addresses.

Personally, I prefer this method because it is a quick and convenient way to define the symbols before starting the Ladder programming.

Save the block, then close the window.

2.4 PLC Simulation...

Read more »