Unable to use values received at rx tx

Maybe configuring the serial port (stop/start/parity bits) is necessary if these don’t match the standard used on the Arduino. See, for example, How to configure Start/Parity/Stop bits for Serial Communication - Programming Questions - Arduino Forum

Visual_Kol:
I have gone back to Hardware Serial, removing SoftwareSerial from the picture.

Good idea.
I can't help but feel that your problems may be at the other end but, since the makers have Arduino code, you should be able to use that verbatim, and the real problem is understanding how to use it. Further, this software serial stuff is just a result of misunderstanding.

The delay(50) is because PLC is sending data at every 50 milliseconds. And I send just ONE Character from PLC so ARDUINO should perfectly match with that.

No, you do not need a delay.

The Arduino is always ready to receive a character, and Serial.available will tell you whether one has arrived.

jremington:
No, you do not need a delay.

Actually I was following the Nick_Pyner's suggestions from #2 & #4.

Nick_Pyner:
you should be able to use that verbatim, and the real problem is understanding how to use it.

I don't understand this, can you please elaborate on that one?

6v6gt:
Maybe configuring the serial port (stop/start/parity bits) is necessary

On plc or arduino? And if on arduino, how to do that?

Actually I was following the Nick_Pyner's suggestions from #2 & #4.

You misunderstood Nick's point. You do not need a delay.

Maybe configuring the serial port (stop/start/parity bits) is necessary

On the Arduino. Consult the Arduino reference guide entry on Serial.begin() for instructions.

This:

#define DF1baud 9600
#define DF1format SERIAL_8N1

tells you the Baud rate and exact serial port configuration.

I don't understand this, can you please elaborate on that one?

The word "verbatim" means follow the instructions exactly as written.

Visual_Kol:
I don't understand this, can you please elaborate on that one?

I don't know anything about your PLC. The link you provided had some code from the manufacturer, using hardware serial. Why don't you use it?

Nick_Pyner:
The link you provided had some code from the manufacturer, using hardware serial. Why don't you use it?

Tried this today. It's not working. But actually the demonstration given in that link was for Micrologix 1000 which has a single Rs232 communication port, whereas I'm using Micrologix 1400 having 2 such ports. And I'm using the second port. The PLC program given with this demo, doesn't specify any communication channel.
Then I went for a standard Modbus Communication with same circuit and Arduino as master and PLC as slave. Still it also doesn't work.

So finally I think I need to buy a new original uno and test again.

Visual_Kol:
So finally I think I need to buy a new original uno and test again.

Unless you have exercised some serious and very specific physical abuse that you are not telling us about, you are probably wasting your time and money. All we are talking about here is hardware serial communication. This involves the on-board uart that is shared between the serial monitor and pins 0,1. The fact that you have never said you are unable to upload a programme rather suggests that it is 100% kosher. As I said, you might look at the other end and, if you want to throw money at the problem, that would be a good place to start.

Further, Arduino has only one serial connection, it only talks to its own port and has no idea what is on the other side. It doesn't care how many serial ports the PLC has, it just needs to be connected to the right one, and in the proper manner.