InduSoft Webinar Customizable Comm Driver: TXRX June 26, 2014
Jun 19, 2015
InduSoft WebinarCustomizable Comm Driver: TXRX
June 26, 2014
AGENDA
Agenda
InduSoft (Andre Bastos – QA Manager)– TXRX Driver: Introduction – Configuring the Driver Settings– Receiving RX messages– Sending TX messages– Exchanging information through TX and RX messages– Live Demo throughout the slides– Tips/Tricks and troubleshooting– Q & A
Webinar Initial Considerations
– If you have questions, please send them to the Chat and/or the Q & A window
– The audio may fail sometimes. Give it a few seconds and it will come back
– Even though you may see only yourself on the attendee’s list, there are much more people attending the Webinar, but we don’t make their names public
– After the Webinar, you will receive a brief survey about how we did and, if you help us by filling that survey, we will mail you one of our Webinar Series T-Shirts
– The Webinar is recorded and you will be able to watch and any other Webinar by going to our web site at http://www.indusoft.com/Support/Video-Library/Webinars
TXRX Driver: the challenge
Identifying the need of a custom driver– Have you ever faced a challenge where you want to communicate
with a device, either using Serial or Ethernet communications, but
you can’t find the right communication driver that would work with it?
– Examples are: • Vision Systems/Cameras• Serial Printers• Scales• Barcode Scanners• RFID Scanners• Sensors• Gauges• Some GPS systems
TXRX Driver: Enabling Connectivity
Integrating devices to your HMI project– As long as these devices have either Ethernet or Serial
interfaces (including USB emulating a COM port), you can
create an interface for these devices with InduSoft Web
Studio using the Customizable Communication Driver called
TXRX
Serial COM PORTBinary
WiFiASCII
Ethernet ASCII
TXRX Driver: CapabilitiesFeatures
– Works on any Windows OS, including WinCE, Embedded Standard and Compact,
Servers
– Advanced configuration allows communicating with virtually any device
– Communicates over:
• Ethernet – TCP/IP
• Serial – COM Ports
• Ethernet UDP/IP using Serial Encapsulation
• USB – Emulating a COM Port
– Sends Strings of ASCII Chars, with or without ETX chars, with up to 1024 characters
– Sends Binary/HEX messages
– Receives solicited and unsolicited Binary and ASCII messages
– For receiving, it can be configured for
• Receiving an specific number of chars
• Receiving an ETX (end of Text) char
• Consider the receiving message complete once a certain interval of time is elapsed
TXRX Driver: Adding to the project
Inserting the TXRX driver in your project– On the Development Environment, go to the COMM Tab,
– Right-click on the Drivers folder and select Add/Remove drivers– Find the TXRX driver, select it and click on the Select button
TXRX Driver: Choosing the right SettingsSerial
– Good if the device that you are trying to communicate with has a RS-232, RS-485/422 port capable
or exchanging information
– Also good if the device has a USB connection and a device driver that can emulate a COM Port.
Several Barcode/RFID readers have this capability
– To configure the Driver for Serial Mode, open the Driver Settings and configure the TCP/IP Port field
value to 0 – If you configure any other value there, the driver will act as Ethernet, opening that
specific port
– IMPORTANT: The Serial Communication settings MUST match with the ones on the device that you
are trying to communicate with, which means, the same Baud Rate, Data Bits, Stop Bits and Parity
TXRX Driver: Choosing the right Settings
Ethernet (Native TCP/IP)– Good if the device that you are trying to connect with communicates over Ethernet
through TCP/IP
– To configure the Driver for TCP/IP Mode, open the Driver Settings and configure the
TCP/IP Port field value to the TCP port value of the device that you are going to
communicate with. Don’t leave it with 0, otherwise, the driver will start in Serial mode
– IMPORTANT: When you configure a TCP Port number, the driver will open that TCP
port in Listening mode when in Runtime mode
TXRX Driver: Choosing the right SettingsUDP/IP through Serial Encapsulation
– Good if the device that you are trying to connect with communicates over Ethernet through UDP/IP
– To configure the Driver for UDP/IP Mode, open the Driver Settings and configure the TCP/IP Port
field value to 0
– Configure the Serial Encapsulation mode to None
– Configure the Device IP Address and the UDP Port Number that will be used on your
communication
– Note: you can communicate with more than 1 device if you configure the IP Address also on the
driver Worksheet, followed by the port number and the pipe char. E.g. 192.168.1.11:9600|
RX: Receiving MessagesConcepts
– When the driver is receiving a message, once it considers that the message is complete, it will
load the message into the tag configured on the Driver Sheet
– It is a SLAVE configuration: you DON’T use neither the Enable Read when Idle nor the Read
Trigger fields. The Read Completed field can be used to show that a message was received
– On the driver Settings you can configure a few Settings that will be used both when receiving and
sometimes also when you are sending a message
• ETX – Character that will be used to consider that the message is complete when the worksheet it
configured to do so. Also added to the end of a outgoing message
• Interval between char – this value can be used by one of the possible ways to consider that
message is complete (Header RXTIMEOUT->next slide)
RX: Receiving Messages
Headers: RXn, RXTIMEOUT, ETX– Allows the user to configure the worksheets with the tags that will
receive the messages sent by the device, Solicited or Unsolicited
– You can configure a Standard Driver Sheet with one of the below
headers to receive messages:
• RXn – Used when the driver will always receive the same number of
characters per message.
• ETX – Used when the message will always have one or 2 characters
(bytes) that define the End of TeXt. E.g. 0D 0A (Line Feed and Carriage
Return)
• RXTIMEOUT – Used when there is not a specific size of the message,
or a ETX character. Whenever the time between the bytes are being
received is longer than the Timeout between char, the driver will
consider the message to be completed
RX: Receiving Messages in ASCII mode
Address field:– Nothing: the received message will be treated as ASCII written to the
Tag configured on the Tag Field
• NOTE: in ASCII, if the driver receives the byte with the value 0x00, it
will consider it the end of the String
Parsing the incoming message– If you want to treat the message the is arriving, writing part of the
message in some tags, and part in other tags, you can configure the
following parameters:
• L:<n> – Length, in bytes, of the part of the message that will be written to
the Tag Configured in the Tag Field
• S:<char> – In case the message has separators, such as CSV
messages, enter here the Hexadecimal code for the separator.
RX: Receiving Messages in HEX mode
Address field:– H: the received message will be treated as HEX and the byte values
will be written to the Tag configured on the Tag Field separated by
spaces (e.g. 0A 41 42 00 00 0D 0A)
Parsing the incoming message– If you want to treat the message the is arriving, writing part of the
message in some tags, and part in other tags, you can configure the
following parameters:
• HL:<n> – Length, in bytes, of the part of the message that will be
written to the Tag Configured in the Tag Field
• HS:<char> – In case the message has separators, such as CSV
messages, enter here the Hexadecimal code for the separator.
TX: Sending MessagesConcepts– A Driver Sheet with a String Tag and one of the 2 available Headers
will be the one used to send the messages
– Use either Enable Write on Tag Change or Write Trigger to send
the value from the Tag configured on the Tag Name field to the device
– On the Station field, you will configure which device will receive the
message
– If you configure the ETX field, it will be sent along with the Tag Value
– The Write Completed field can be used to let the user know that the
sending operation has been completed
TX: Sending Messages
Header:– TX: the value of the Tag configured in the Tag Name field will be
sent as a String in ASCII
• NOTE: If configure an ETX char in the Driver Settings, that
value will be sent at the end of the message
– HTX: the value of the Tag configured in the Tag Name field will be
converted into HEX codes, separated by spaces, (e.g. 0A 0B 1F
FF FF 0A 0D) and sent to the device
TXRX: Receiving after sending
Several times, you may have to first send a message and wait for the reply..
Use 1 worksheet to Send (TX)…– Configure a worksheet with a header using either TX or HTX,
– Configure the IP_Address:Port on the Station field
– Decide how you will send (Trigger or Tag Change)
Use another worksheet for Receiving Send (RX)…– Configure a header with one of the RX options
– Once the TX message is sent, you may expect the incoming message
on the tag configured on that worksheet
TXRX: Tips and Tricks
Troubleshooting sending and receiving messages
Sometimes it mays seem that you are not receiving the expected messages.
You may want to use a 3rd party software to make sure that the connection between you
and the device is happening
– For WinXP, you can use HyperTerminal. Using it, you can send messages from other
computer into yours and see if you receive them.
– You can also use HyperTerminal to send messages to the device and see if they
receive it.
This helps you identify if you are misconfiguring something in the driver or if it is something
else, like Firewall, cables, and so forth
– For Win7/8 and newer, there is no built-in tool. Several people use one called PUTTY (
www.putty.org), which can do a lot of the things that the HyperTerminal used to do
– You can also use Telnet from a remote computer (you have to enable it on the Control
Panel->Add Remove Programs->Turn on and off Windows components
Q & A
HOW TO CONTACT INDUSOFT
Email(US) [email protected](Brazil) [email protected](Germany) [email protected]
Support [email protected] site
(English) www.indusoft.com(Portuguese) www.indusoft.com.br(German) www.indusoft.com.de
Phone +1 (512) 349-0334 (US) +55-11-3293-9139 (Brazil) +49 (0) 6227-732510 (Germany)
Toll-Free 877-INDUSOFT (877-463-8763) (US & Canada) Fax +1(512) 349-0375
Germany
USA
Brazil
Contact InduSoft Today