Siemens HMI setup with MicroLogix 1400

Good day.

I am Karl-Heinz.
I tried to set up a siemens 700 comfort HMI to connect with an Allen Bradly Micro Logix 1400 plc. I have followed all the instructions and information to the letter but cannot seems to get it to communicate or, I have a tag issue.
Connecting an Allen Bradley PLC to a Siemens HMI (solisplc.com)
Can you please help me?

1 Like

Hi Karl! Welcome to the forum :smiley:

Can you please provide more detail about the error messages you’re getting? Perhaps screenshots, etc …

Thanks!

Thank you. :smiley:

This is my HMI.

PH INPUT button must get visible when the physical input is made. and same goes for PH OUTPUT button.

The HMI INPUT button always appear on the screen and must set the HMI OUTPUT bit and the HMI OUTPUT button must also get visible.
Once you press the HMI OUTPUT button it resets the bit that was set by the HMI INPUT button.
The HMI INPUT button tag that I used from the plc are B3:00 and that is working fine. But all the other that are input, and output does not want to work. Meaning the buttons visibility on the HMI don’t get activated when they are triggered in the plc.
Once you press the HMI OUTPUT button and also when the physical input is triggered on the plc.

It seems that I cannot upload screen shots.
The tag table format that I used on Tia portal is as follow.
connection ALENBRADLY DataTape bool
Address:
B3:0/0 This one is working.
I0:0/2
O0:0/2
O0:0/3

Thank you for your help I appreciate it.

Hey, Karl! How are you doing?

I’m happy to see our tutorial is helping you. I believe the main issue here is that you’re trying to interact with physical Input and Output data. This is not recommended and will not work properly most of the time, when talking about communication between devices.

What’s usually done, is to do I/O Mirroring. This way, you’ll interact with memories (B3:0/1) and this memory will energize your physical output (O0:0/2). This is a programming non-spoken rule, meant to make your controller always do the final interaction with physical devices (sensors and actuators).

So your logic should look something like:

Inputs:
XIC (I0:0/2) OTE (B3:0/1)

Outputs:
XIC (B3:0/2) OTE (O0:0/2)
XIC (B3:0/3) OTE (O0:0/3)

In the HMI side, utilize B3:0/1 when referring to the input signal and set B3:0/2 / 3 when you want to set the digital outputs.

Please reach back to us if there’s anything else we can help with, or if the code runs well now. Thanks!

1 Like

Hi Letacio,
I am doing fine thanx and you.?
Thank you for your time to help me.

So, meaning I/O mirroring?
RUNG 0000 XIC (I0:0/2) …OTE(B3:0/1)
RUNG 0002 XIC (B3:0/1)…OTE(O0:0/2)

1 Like

I’m doing just fine, thanks!

Yes, that’s right. Just care to utilize individual memories (B3:X/Y) for each I/O. The main purpose of I/O mirroring is to refer to memories instead of working directly at Inputs and Outputs.

1 Like