How to Program a Siemens S7-300 Programmable Logic Controller

Do you have a Siemens S7-300 Programmable Logic Controller that you are not familiar with but you need to program it NOW! Following is a quick set of instructions I have put together to help you get started programming a Siemens S7-300 PLC.

After loading the programming software and connecting a Siemens MPI cable between your programming computer and the PLC, open SIMATIC Manager by clicking the icon on the desktop. The STEP 7 Wizard: “New Project” window will open. It is easier to use the Wizard to setup communications with your PLC, but I chose to take the scenic route. I figured I would learn more this way. So, close the STEP 7 Wizard window by clicking Cancel. If there are any other windows or projects open, close them. We want to start with a totally new program.

Create a new project by clicking the new project button on the toolbar in the upper left corner of your screen.

The New Project window opens. Here you will see any existing programs located on your computer. Near the bottom of the window, you will see the Name: input form. Type whatever you want to name your new project and click OK.

A new window will open showing the name of your project at the top. You will also see your project in the window on the left hand side of the screen at the top. Right click your project and choose “Insert New Object”. Choose the device you will be programming. We will be using the SIMATIC 300 Station so choose that selection.

You will now see SIMATIC 300 appear in the right window of your screen. It should be highlighted blue. Click anywhere in the window to make the blue go away. Double click SIMATIC 300 and it will move to the left window and “Hardware” will appear in the right window.

Double click “Hardware” and two (maybe three) new windows will open. On the left will be SIMATIC 300 – (the name of your project). The window on the right will be the catalog of parts.

Look in the right window, the parts catalog, and click the plus sign beside SIMATIC 300.

Click the plus sign beside RACK – 300. Click and drag the Rail onto the left window. You will now see the Slots window appear. This is where we will place our PLC components.

We will first choose our CPU. Looking at the parts catalog, in the SIMATIC 300 tree, choose the CPU that you are using. We are using the CPU – 300 so click the plus sign beside that choice.

Now look at the front top left of your PLC. This is where you will find the PLC model. I will use CPU313C-2 DP as an example since this is the model PLC that I use.

Find this CPU in your parts catalog and click the plus sign. You will now see some part numbers.

Look back at your PLC. Locate the door covering the MPI port. This will be the bottom left side of the PLC. At the bottom of the door you will find the part number. The part number for the PLC I am using as an example is 313-6CF03-0AB0.

Find this part number in the parts catalog. You will notice this is another folder. Open it and you will see V2.0 and V2.6. Look back at the PLC, open the door covering the MPI port, and right above the MPI port you will see V2.6.3.

Go back to the parts catalog and click V2.6. Notice how a slot in the left hand window will highlight green. I believe it will be slot #2. (Slot #1 is reserved for power supplies.) This is where you will drag and drop your CPU. (Notice the software will not let you put the CPU in any other slot but slot #2.)

When you release the mouse button over slot #2, a new window will open, “Properties – PROFIBUS interface”. Click new, a new window opens, click Ok, and then click OK again. We are not setting up a network at this time.

You will now see your CPU and associated hardware listed.

Double click in the Slot that list your DI16/DO16 (Digital Input/Digital Output).

A window with three tabs will open. The first tab will be General, the second tab will be Addresses and the third tab will be Inputs.

Open the tab “Addresses”. We need to change the default addresses. Do this by unchecking the System Default button and changing 124 (or whatever address you have) to 0. Do this for both the Inputs and Outputs.

We now need to change the Node Address. Go back to the window where you double clicked DI16/DO16 and double click in Slot 2, the CPU 313-2DP slot.

The Properties – CPU 313C-2DP window will open.

Look down the window a little over half way and find the Interface area and click on Properties. Another window, “Properties – MPI interface CPU 313-2DP” will open.

Change the address to meet your specific criteria. I know that my laptop, which I am using to program my PLC, is always addressed as 1 and my target PLC is usually addressed as 2. You will probably be the same.

Now click MPI(1) and click OK. Click OK again to close the Properties window.

Save and Compile by clicking the icon located on the left of the toolbar.

Download the hardware configuration to the PLC by clicking the download icon located on the toolbar.

A window titled “Select Target Module” should open. Click OK.

Another window titled “Select Node Address” will open. You should see listed your node address for the PLC you are working with as you configured it in a previous step. If not, click view and click on whatever node address appears and click OK.

Switch back to SIMATIC manager (by clicking the tab on the taskbar).

Click on Options. Choose Set PG/PC Interface. Choose PC Adapter (Auto).

Click Properties. A new window will open, displaying either Automatic Bus Profile Detection or Local Connection. Click Local Connection and choose USB. Now choose Automatic Bus Profile Detection and change the address to 30. You can check your connection now by clicking Start Network Detection. If a new window opens displaying Network Type = MPI, Transmission Rate = 187.5kbps, you have established communications with your S7-300. Click Close. Click OK. Click OK.

It is now time to start programming. Looking at the SIMATIC Manager window, click the plus sign located beside SIMATIC 300(1), click the plus sign beside CPU 313C-2DP, click the plus sign beside S7 Program(1). Now click on Blocks and you will see System data and OB1 appear in the right window on your screen.

Double click on OB1 and a new window will open named Properties – Organization Block

Here you can choose how you want to program, in LAD (ladder), STL (statement list), or FBD (function block diagram). Choose which you want to use and click OK.

Double click OB1 again and the LAD/STL/FBD programming window will open.

You can now start programming.

I have these same instructions with pictures on my website at