Siemens PLC through TCP to Zebra Printer

If you mean the return value "7000" on e.g. TSEND instruction it should mean that no active job is performed. Normally send action is requested via rising edge on REQ input. Then status is changed from 7000 to something different (7001 or 7002 could be). Then since it is done it goes back to 7000.

So status output is changed for only very short time so you could not be able to see it in online view. A year ago I made software for S7-1500 with Zebra printer - it is working.

For commissioning I would highly recommend to use some terminal application (I used Hercules Setup utility). Via this you can try both - TCP server, client and check if your TSEND instruction is working properly = you receive ASCI string into terminal. And vice versa I used terminal app to setup string for printer. Via terminal I connected to Zebra - which is TCP server - and then you can send strings and see the printer output.

I can share the software for S7-1500. Unfortunately not for S7-300 but in principle it should be the same. I only use instruction TSEND_C which is more simple as it combines TCON, TDISCON and TSEND in one instrucion. Before I used TSEND and was working as well.
 
Last edited:
If you mean the return value "7000" on e.g. TSEND instruction it should mean that no active job is performed. Normally send action is requested via rising edge on REQ input. Then status is changed from 7000 to something different (7001 or 7002 could be). Then since it is done it goes back to 7000.

So status output is changed for only very short time so you could not be able to see it in online view. A year ago I made software for S7-1500 with Zebra printer - it is working.

For commissioning I would highly recommend to use some terminal application (I used Hercules Setup utility). Via this you can try both - TCP server, client and check if your TSEND instruction is working properly = you receive ASCI string into terminal. And vice versa I used terminal app to setup string for printer. Via terminal I connected to Zebra - which is TCP server - and then you can send strings and see the printer output.

I can share the software for S7-1500. Unfortunately not for S7-300 but in principle it should be the same. I only use instruction TSEND_C which is more simple as it combines TCON, TDISCON and TSEND in one instrucion. Before I used TSEND and was working as well.

Can you post your s7_1500 project with tsend_c? I've been trying to connect to hercules to test the functionality but looks like I might have some issue with the port configuration. Would be nice to be able to rule out the programming side of things.
 
Can you post your s7_1500 project with tsend_c? I've been trying to connect to hercules to test the functionality but looks like I might have some issue with the port configuration. Would be nice to be able to rule out the programming side of things.

Hello,

no problem but I can not upload complete backup here. Here is the link on google drive:

https://drive.google.com/file/d/1BKJ-xDi6eC1D7gMqxDqYm3OMyrc2AYQQ/view?usp=sharing

If not working let me know.

See attached image where to find the important part of code ...

2020-11-14_115133.png
 
Zebra with PLC S7-1500

For me the following method worked well:

1) use Zebra designer to set up your label which you need to print

2) try to print it using the Zebra designer to see the result

3) then print to file the prepared label, in file you can find the exact ZPL code which has to be sent to printer via TCP

4) in the ZPL code identify the field you need to change

5) try to use terminal application (e.g. like I mentioned Hercules setup utility worked well for me) and test TCP connection to printer

6) try to print the ZPL code using terminal app, if working ok you are ready to use TCP connection in PLC
(check the printer config via web interface, I used the port 6101)

7) the worst work is to compose the complete ZPL code in PLC as it is string.

See the pictures ...

For support u can contact me one [email protected] (also Google hangouts chat possible)

2020-11-14_120222.png 2020-11-14_115728.png 2020-11-14_115922.png 2020-11-14_120613.png
 
Last edited:
For me the following method worked well:

1) use Zebra designer to set up your label which you need to print

2) try to print it using the Zebra designer to see the result

3) then print to file the prepared label, in file you can find the exact ZPL code which has to be sent to printer via TCP

4) in the ZPL code identify the field you need to change

5) try to use terminal application (e.g. like I mentioned Hercules setup utility worked well for me) and test TCP connection to printer

6) try to print the ZPL code using terminal app, if working ok you are ready to use TCP connection in PLC
(check the printer config via web interface, I used the port 6101)

7) the worst work is to compose the complete ZPL code in PLC as it is string.

See the pictures ...

For support u can contact me one [email protected] (also Google hangouts chat possible)

Thanks for all that info! I'll check it out
 

Similar Topics

Hi guys! I am facing problem while fetching IP of simatic s7 1200 PLC. It gives me info like: Source:SiemensN_0e:fc::f0 Destination:LLDP...
Replies
7
Views
8,383
Hi, I am wanting to control a set of (4) micromaster 440 drives depending upon various events etc. The control of the motors are to be either...
Replies
46
Views
12,978
Hello, I have a question. Is it possible to set up communication between a Allen Bradley PLC and a Siemens PLC through profibus. It's because...
Replies
3
Views
10,676
Good morning fellow sea captains and wizards, I am being asked to do the above and obtain 4 values from each slave, I know about the MRX and MWX...
Replies
27
Views
561
Hey guys, I have to take an upload of a program on an S71200 PLC to change a hardware config option and then redownload the program with this...
Replies
3
Views
110
Back
Top Bottom