My issue is trying to receive data from a Datalogic PM9500 barcode scanner onto a Siemens ET200S (IM151-8 PN/DP) CPU using a serial interface card (6ES7 131-4BD01-0AB0) with the ASCII Protocol.
The software that I'm using to program the PLC is TIA Portal V14. I made use of the built-in function block S_RCV to try and receive the data into a data block that I have created. I connected the Datalogic's base charger unit directly into the PLC's SI module. (I cut the DB9 plug off) So, Pin 5 (RXD) of the SI module is connected to the Tx wire (Brown) of the scanner, the Tx is also connected, as well as the ground, to the SI module, however, I only require the Rx. There is no flow control.
Upon scanning a barcode, the Rx LED on the SI card flashes, indicating that something was received. I have tested the scanner using a terminal program called "Hercules", and I am receiving what I should be when I scan something.
The parameters such as Parity, Stop Bits, and Baud Rate, etc, of the scanner corresponds to that of the SI module as well.
I paramatized the S_RCV block as follows:
1.) EN_R is always ON.
2.) R is defaulted to the instance DB that was created with the function block's tag.
3.) LADDR is set to "100" as that is the start address of my SI Module as defined in the device configuration.
4.) DB_NO is set to "2" as it is the number of the data block I created for storing the received data.
5.) DBB_NO is set to "0", which I understand to be the data blocks offset start point from where to start inputting the data.
The rest of the NDR, ERROR, LEN, and STATUS outputs of the function block are also defaulted to the instance DB tags. I only want to see if I'm receiving the data from the barcode scanner into the datablock.
I created an array of bytes and I also tried with characters from 0 to 30 to store the data. As I mentioned, the problem comes when I'm trying to scan something, the RX LED on the SI module pulses, but when I monitor for any changes in the Function Block, as well as for any changes in the Datablock itself, nothing happens at all.
I don't know what If I'm missing something, this has been bugging me for some time now, I'm quite new to the whole programming scene, I would appreciate any help I could, get also I've attached the project file too. =)