Micrologix PLC to Telesis Printer TMC470

Delkster

Lifetime Supporting Member
Join Date
Dec 2011
Location
Kentucky
Posts
11
Any one have any experience getting a Micrologix 1400 to communicate with a
Telesis TMC470 Printer? If so what communication protocol did you use? Any info on setup would be great? I am struggling for a few weeks now. Also any way to do a loop back test on the rs-232 port on the TMC470 tp prove it works?

Thank You.
 
You can always try testing the rs232 communications using your computer's serial port (or USB adapter). I prefer PuTTY (www.putty.org) since HyperTerminal is no longer readily available. The terminal app can send ascii to the TMC470 by simply typing in some stuff or you can connect to the 1400 and see what the PLC is sending out. Make sure the serial comm settings are matching. Usually the default 9600-8-1 is fine. Use a NULL adapter if necessary so that the receive pin is connected to the transmit pin on the other end.

But what if you're not sure your serial ports work on your computer? If you have 2 serial ports (or 2 USB adapters), you can link them together with a Null serial cable and have two PuTTY terminals talk to each other just to make sure that the serial ports are okay.

What's nice about the 1400, you can also use Ethernet TCP Socket communications if the PLC is farther away.
 
Last edited:
Which protocol do you plan to use? Programmable or Extended? Also, what is the source of the data that will be printed?

Both Telesis protocols use printed along with unprinted characters. The PLC can handle the printed ASCII fairly easily, but the unprinted require a bit more work and often display oddly in Logix500.

If the strings to be printed are being generated on a PC or HMI, let that device craft the full message the printer needs and just load it into a ST9 file and AWT it in the PLC.

Shawn
 
Programmable, Only need to go from PLC to Printer. Also I was looking at
message type V. (Variable text) An example of serial number I would like to send from plc would be: 180327001 (year, month, day of month, 3 digit serial #). So the source would be a long integer converted to a string from the plc as shown above. I would prefer to go printed...How can I setup TMC470 and PLC for printed ASCII. I was not aware of the printed / unprinted setup, so please excuse my ignorance. Also serial cable from PLC to printer, (2-2, 3-3, 5-5,) or
(2-3, 3-2, 5-5) ? By the way thanks for the help hard to find anyone that has worked directly with Telesis Printers... feel free to bombard me with info as I will be onsite in a few days to hash out logic ! Also not sure it matters you menitoned HMI / PC, but everything is generated on the PLC side and I am assuming I can just load the long integer into my string (ST9) of the ASCII AWT funtion ?
 
Full disclosure, I never used one of these printers. I'm just reading from their manual and I have some ASCII and hex experience with MicroLogix. Below is using the Extended protocol. I can't find a message format for the Programming protocol.

Type this into a string file and try to AWT it to the printer.

Code:
\1 \31 \2 01180327001 \3 \d

Then AWT the following to the printer

Code:
\1 \47 \d

It should hopefully print "180327001" They don't provide an example in their documentation.


Printed vs. unprinted refers to the ASCII character set. Get yourself an ASCII table. It shows the relationship between the Decimal, Hexadecimal, Octal, and actual character. Some of these characters were used in signaling to the printers and are not actually printed. Carriage retuen is one example.
 
Last edited:
String sent out from AWT or AWA can use "^" to emulate the ctrl key. The TMC470 says to use the Programmable Protocol when connected by rs232. This requires a starting character (STX) and end character (13). The manual describes other values to dictate other options, but the STX and 13 are essential.

For RS500 programs, add these at the start and end of the string:
^B = STX
^M = 13

There is also the option to use AWA which will automatically append specific characters.
 
\ tells the ML1400 to transmit that character as hexadecimal.

For example. If you transmit \d, a carriage return is sent on the wire. Literally, 0d is sent on the wire.

If you transmit d, the hex value 64 is sent on the wire.

Using what I provided, look at an ASCII table to see where I got the 64 from. Hopefully it will help you understand the relationship between ASCII characters, printed characters, unprinted characters, what you actually see in a ST9 file that you will be transmitting, and what will actually be transmitted down the wire to the printer.
 
Last edited:
The string entry allows the use of "\" before the hex code to represent the character when you type it into the sting. The result ends up showing the "keyboard entry" command.

Example:
\02 changes to ^B = STX
\0d changes to ^M = Carriage Return/Enter

If entering character using hex in RS500, you must include the 0.

Here's one of many links to the ascii table. This one is helpful:
https://www.cisco.com/c/en/us/td/docs/ios/fundamentals/command/reference/cf_book/cf_ap1.html
 
In Shawn_75's post after looking at the ASCII table

the first code: \1 \31 \2 01180327001 \3 \d
makes since :\1= start of heading
\31 = 1
\ 2 = start of txt
01(TMC470 omits first 2 digits) then 1180227001 should display.
\3 = end of txt
\d = carriage return

Note sure why we are doing second code set.. please explain?
2nd code: \1 = start of heading
\47 = G (not sure what this is ?)
\d = carriage return

I am assuming both styles of ASCII communication will work from Dadadadeo and Shawn_75 they are just different ways of doing using ML1400 / RS500 ?
 
Jimtech67 thanks for the info... I have an available port on the ML1400 db9.

I will keep that in mind for future projects moving larger ASCII strings.
 
jimtech67 I am communicating with most devices using ethernet/IP including

programming laptop and HMI communication...so the old school serial port is

available for the printer communication.

Not to mention the Prosoft Card seems to be an unecesary $1500 solution..

We can easily write plc code and use the available serial port for minimal

cost.
 
In Shawn_75's post after looking at the ASCII table

the first code: \1 \31 \2 01180327001 \3 \d
makes since :\1= start of heading
\31 = 1
\ 2 = start of txt
01(TMC470 omits first 2 digits) then 1180227001 should display.
\3 = end of txt
\d = carriage return

Note sure why we are doing second code set.. please explain?
2nd code: \1 = start of heading
\47 = G (not sure what this is ?)
\d = carriage return

I am assuming both styles of ASCII communication will work from Dadadadeo and Shawn_75 they are just different ways of doing using ML1400 / RS500 ?

The first command loads your string into the first preset/memory location. The second command tells it to actually print. I'm guessing that you can configure it to print from the first preset using the unit's keyboard interface. I figured we'd eventually get to that.

Also, Dadadadeo is correct. You can use the caret symbol to access the nonprinting characters in RSL500. I didn't use them due to keeping consistency in your string. When you send that G, there is no caret to use. I also am not sure if you can mix the \hex codes along with regular ascii in the same AWT. The printer gives you 3 seconds to send a command, so if you need to you can use multiple AWTs. One AWT to send the data prior to the string, one to send the string, and one to send the final data of the string. Also, you may need to send "\01" instead of "\1" as Dadadadaeo said for all the single character hex strings. As before, I figured we'd get to that eventually.
 

Similar Topics

:huh: i don't know master password and i tried "1234" too but it didn't worked i want to upload new program but i think its password protected and...
Replies
7
Views
955
We have this sub-system that was installed back in 2009, was never used, the building that used it was shutdown shortly after installation, and...
Replies
3
Views
1,136
Hi guys, Could i connect simatic WinCC runtime with Micrologix 1400 PLC via Modbus?
Replies
0
Views
1,225
Hello, After searching the web a bit, I am still not quite sure how I should go about wiring up this controller. It is mostly built for 120V AC...
Replies
5
Views
1,984
Hi all Looking for some help please so I was connected to my MicroLogix 1000 threw rslinks had no issue. I download a program now this program...
Replies
46
Views
12,933
Back
Top Bottom