Signal generator FY2200S Series Communication Protocol
telecommunication
Descripción completa
Interaksi Manusia Dan Komputer
It is a summary of some User Interface Design key points
Descrição: telecommunication
GT06 - GPS Tracker Communication Protocol blue berry protocol ports data packetsFull description
GT06 - GPS Tracker Communication Protocol blue berry protocol ports data packets
T24 document
Protocolo de comunicacion GPS CellocatorFull description
Contec Pule Oximeter Communication Protocol Bluetooth pin 7762Full description
user interface instructions for aml8726 mx
Uni sim notesDescripción completa
Dynamark Communication Protocol User Guide
Dynamark Communication Protocol THIS PAGE INTENTIONALLY LEFT BLANK
2
L027952 Issue 5 July 2014
Dynamark Communication Protocol THIS PAGE INTENTIONALLY LEFT BLANK
2
L027952 Issue 5 July 2014
Dynamark Communication Protocol
CONTENTS Page GENERAL .......................................................... ................................................................. .................................. 7 CHANGES COMPARED TO DYNAMARK 2 SOFTWARE VERSIONS ..................................................... 7 MULTI HEAD INTEGRATION ................................................................. ........................................................ 8 INTERFACE CONFIGURATION ..................................................................................................................... 8
TESTING THE TCP/IP I NTERFACE FROM FROM A REMOTE PC WITH MS WINDOWS....................................................... 8 TESTING THE RS232 I NTERFACE FROM FROM A R EMOTE EMOTE PC WITH MS WINDOWS ..................................................... 10 TUTORIAL ......................................................................................................................................................... 12
SIMPLE I NTERFACE COMMUNICATION .............................................................................................................. 12 TRANSACTIONS ................................................................................................................................................. 14 HOW TO USE MESSAGES......................................................... ................................................................. .......... 15 COMMAND REFERENCE ............................................................... ................................................................ 16
Dynamark Communication Protocol THIS PAGE INTENTIONALLY LEFT BLANK
6
L027952 Issue 5 July 2014
Dynamark Communication Protocol
General The interface to the Dynamark software is based on TCP/IP via Ethernet. It is also possible to use the UTF8 based protocol via RS232-connection (null modem). With separate gateway tools it is possible to use this interface with a different protocol or using other hardware interfaces (e.g. Databases, PLCs). These tools are background services responsible for forwarding messages from one interface and protocol to another.
Changes compared to Dynamark 2 software versions The interface is based on the version that has been used for years in Dynamark 2, however due to the different system architecture of Dynamark 3 systems a number of commands (and the corresponding messages) have been removed: CHANGEINI LOADINI OEMSELECT RESETINSERT SETDEBUG SETOCRDATA SHOWHELP SYSTEMUPDATE GETACTIVEPROJECT
Also Authentication Support has been moved towards the remote server authentication procedure that uses a different communication channel and a different protocol – please refer to appendix D. Because of this the following commands (and the corresponding messages) are now unsupported: ACKNSIGNATURE AUTHLOGIN CHANGEPASSWORD GETLOGOUTUSER GETUSER GROUPLOGIN INVOKELOGIN SETELECTRSIGN SETLOGIN SETLOGOUTTIMER
Finally, the Logging support has been moved towards the remote server logging procedure that uses a different communication channel and a different protocol – please refer appendix E. Because of this the following commands (and the corresponding messages) are now unsupported: CLEANLOG GETSTATISTICS LOGACTION RESETSTATISTICS
L027952 Issue 5 July 2014 7
Dynamark Communication Protocol
Multi Head Integration In multi head configuration commands will be distributed to the connected controllers. Many of the commands can be used as without multi head configuration but some commands were modified.
Interface Configuration The interface can be configured in the settings area of the Dynamark software.
Follow the topic key Dynamark 2 Interface.
and navigate to the menu Settings / Communications /
Below that key locate three different sections – the general settings, the TCP/IP interface settings and the RS232 interface settings. To change one or other interface, check the enable checkbox and apply the change with OK – the changes will be applied immediately.
Testing the TCP/IP Interface from a remote PC with MS Windows Connect the remote PC to the laser controller using standard 100MBit RJ45 network cabling (using a network-hub or a simple cross-cable). Configure the PC for the same logical network as the laser controller. By default the laser controller is configured to use DHCP on the 2 nd network adapter (the first one is reserved for the panel and by default configured to 192.168.57.2/255.255.255.0). The remote PC will need to be configured to another address belonging to this logical network. The way to configure the network addresses of your remote PC is different in the different versions of MS Windows operating systems; therefore it is only described for the MS Windows 2000 or MS Windows XP systems: Navigate to the control panel of the remote PC and double-click "Network and Dial-up Connection", "Local area Connection", "Properties" and "Internet Protocol (TCP/IP)". One should now see the TCP/IP settings which should be changed according to the explanations above. Afterwards press "OK" two times to close and apply the TCP/IP settings.
8
L027952 Issue 5 July 2014
Dynamark Communication Protocol
As the network protocol has been configured a TELNET client can now be started such as TELNET.EXE or HYPERTERMINAL which again comes with MS WINDOWS. In the following we describe how to set up a TCP/IP socket-connection to the laser controller using HYPERTERMINAL: This application can be found (if installed) in the start menu of MS Windows in "Programs" / "Accessories" / "Communications". Enter a new connection by giving any name to the connection and selecting TCP/IP in the "Connect Using" section. As "Host Address" please enter the IP address of the laser controller and as "Port Number" the number configured in the laser controller (20000 by default).
L027952 Issue 5 July 2014 9
Dynamark Communication Protocol
After applying these settings navigate to the ASCII Setup (it can be accessed by the Properties entry of the File-menu and the "Settings" button in this dialog). It has to be configured as follows: Send line ends with line feeds: Append line feeds to incoming line ends: Wrap lines that exceed terminal width:
yes yes yes
Now press the CONNECT button of the HYPERTERMINAL toolbar and should be connected to the laser controller; you can now enter the commands as described in the following chapters.
Testing the RS232 Interface from a Remote PC with MS Windows Please connect the remote PC using standard Null-Modem cabling. A RS232 terminal client like HYPERTERMINAL can be started which again comes with MS Windows. In the following is described how to set up a RS232 connection to the laser controller using HYPERTERMINAL: This application can be found (if installed) in the Start menu of MS Windows in "Programs" / "Accessories" / "Communications". Enter a new connection by giving any name to the connection and selecting the COM-port of your Null-Modem cable in the "Connect Using" section. Configure the RS232 communication settings in the next dialog window – these these have to fit to the settings configured in the Dynamark setup. By default these settings are the following: Bits Per Second: 9600 Data Bits: 8 Parity: None Stop Bits: 1 Flow Control: None
10
L027952 Issue 5 July 2014
Dynamark Communication Protocol
After applying these settings please navigate to the ASCII Setup (it can be accessed by the Properties entry of the File-menu and the "Settings" button in this dialog). It has to be configured as follows: Send line ends with line feeds: Append line feeds to incoming line ends: Wrap lines that exceed terminal width:
yes yes yes
Press the CONNECT button of the HYPERTERMINAL toolbar and should be connected to the laser controller. Start entering the commands as described in the following chapters.
L027952 Issue 5 July 2014 11
Dynamark Communication Protocol
Tutorial Simple Interface Communication In the previous chapter it was shown how to set up a connection between a remote peer and the laser controller. Ensure that the connection is working properly by entering any character which shall reappear at once as echo from the laser controller (as long as the echo is turned on). If you press ENTER (which should be configured as carriage-return plus linefeed) without previously entering a command an error message (ERROR nnnn) will appear. Now it is time to try some remote control commands. As a first step, load different previously stored marking layouts into the controller: Create three different messages and store them in the selected message store using the names 1, 2 and 3. Now enter in the remote terminal: LOADPROJECT store:/1 [ENTER] OK LOADPROJECT store:/2 [ENTER] OK LOADPROJECT store:/3 [ENTER] OK t can now be seen that different outputs can be opened from a remote peer. Also check that an error (ERROR 9) will be returned when trying to load a message that does not exist. Now try another example: Create a fourth message called "My Example" and try to load it again: LOADPROJECT store:/My Example [ENTER] ERROR 2 This example did not work as expected because we gave one parameter (the filename) as two (the space character separates commands and parameters). In these cases (or always if wanted), use the "-character; so the correct way would be: LOADPROJECT "store:/My Example" [ENTER] OK The next step will normally be to enable marking on such a message that has been successfully loaded into the laser controller – here we need to use the MARK-command. Try the following: LOADPROJECT store:/1 [ENTER] OK MARK START [ENTER] OK This example loads message 1 from the selected message store and enables marking.
12
L027952 Issue 5 July 2014
Dynamark Communication Protocol
In most applications these two commands should be sufficient; anyway sometimes there is a need to change the contents of text or MRC objects after loading a message. Create another message called 5 and insert a text object called "Text 1" and a MRC object called "Barcode 1" into this message and save it. The following example shows the loading of a message, the changing of the contents of MRC and text and the enabling of the marking. LOADPROJECT store:/5 [ENTER] OK SETTEXT "Text 1" "New Text" [ENTER] OK SETTEXT "Barcode 1" "New Barcode" [ENTER] OK MARK START [ENTER] OK The text should be printed as "New Text" and the human readable contents of the MRC object should be "New Barcode". Text contents or other object attributes can be changed while marking is enabled. Note that the OK result of a SETTEXT command or other message changing commands only advises that the attribute has been set properly. There would not be any indication that the message contained the new data, if a new print were to be triggered straight away. If such information is required, refer to HOW TO USE MESSAGES.
L027952 Issue 5 July 2014 13
Dynamark Communication Protocol Transactions
Previous examples showed how to load marking layouts, change text within those layouts and how to enable marking. In reality, messages may be much larger than the examples given earlier, with many more text content changes. More and more SETTEXT or SETDATA commands can be added before enabling marking, but this practice leads to an unwanted mixture of communications, containing half of the old and half of the new contents. This problem is overcome by using the Transaction function. By using this Transaction function, the next change can be prepared by sending all SETTEXT/ SETDATA commands and setting them "live" at a defined time with the EXECTRANS command. As already explained previously this is another command that returns OK after successfully having set all attributes; it does not advise that the new data has already been compiled and set ready for printing. Example: Load one of the messages from the previous examples and enable marking. LOADPROJECT store:/5 [ENTER] OK MARK START [ENTER] OK Start printing and carry out a few test prints, then enter the following commands, triggering prints whilst entering them: BEGINTRANS [ENTER] OK SETTEXT "Text 1" "Domino AG" [ENTER] OK SETTEXT "Barcode 1" "Domino Laser GmbH" [ENTER] OK EXECTRANS [ENTER] OK Note that the old print commands will be seen even after the SETTEXT command has executed. The new contents will not be displayed before the EXECTRANS command has been executed.
14
L027952 Issue 5 July 2014
Dynamark Communication Protocol How to use Messages
Previous chapters described that (while marking is enabled) the OK result of a command like SETTEXT which changes the marking contents will not advise that this new content is now ready for marking. Note that after every change the laser controller software needs to recompile the complete layout data (e.g. vectorize the text contents) and send them to the real time marking controller within the laser controller. It may be useful to know when these new contents are really ready to print. In APPENDIX C it can be seen that message-id 1 can be used for getting this information. The laser controller sends data over the open interface connection without a previous request, so the normal request-answer concept is broken in some way. If a TCP/IP connection is used, it is recommended to use a second connection for these messages, to prevent client software confusion when a message comes in whilst another command is being sent. As there are a lot of messages and just a few of them are normally needed, each message has to be enabled separately with the SETMSG command. Returning to the problem described earlier: In the following example we enable a message, change text contents and want to know when the controller is ready again with the new data: SETMSG 1 1 [ENTER] OK LOADPROJECT store:/5 [ENTER] OK MARK START [ENTER] OK BEGINTRANS [ENTER] OK SETTEXT "Text 1" "Domino AG" [ENTER] OK SETTEXT "Barcode 1" "Domino Laser GmbH" [ENTER] OK EXECTRANS [ENTER] OK MSG 1 The MSG 1 that is sent from the laser controller advises when new data is active and ready to print. In the second example that follows, notification of every print start is required. Enter these commands directly after having completed the previous example.
SETMSG 2 1 [ENTER] OK Now after every print start, a notification will be provided. e.g. the following results will be provided after having triggered three prints::
MSG 2 MSG 2 MSG 2 Refer to Appendix C to obtain further runtime information from the laser controller.
L027952 Issue 5 July 2014 15
Dynamark Communication Protocol Command Reference
General The protocol is UTF-8-based. Every command starts with its token which can be of different length (e.g. SETTEXT), followed by additional parameters (separated from each other using blanks; if needed, a parameter can be quoted using “) and terminated by a Carriage -Return and a Linefeed character. If the echo is turned on (default) the laser software will send back every line it receives, in addition to any responses it generates itself, even if the content of the line is not understood or generates an error. If you are sending large amounts of data (e.g. with SETXML), you should turn off the echo. Attention: It is important to understand that the interface protocol expects that the client application waits until the responses to commands are received - this means that it is not permissible for a client application to send the next command while the laser software is still sending the response to the previous command!
16
L027952 Issue 5 July 2014
Dynamark Communication Protocol
ASSIGNPARAMSET Command
ASSIGNPARAMSET Description
Assigns the settings of the parameter set to the parameter set . This can be used if you have a lot of objects within your message for which the laser parameters have to be modified without reassigning the name of the parameter set to all objects. Attention: The settings of the destination parameter set will be overwritten! Parameter Description
destination
name of parameter set to be overwritten
source
name of parameter set which values shall be used for copying
Result Description:
Success:
OK
Fault:
ERROR
Properties:
Transaction-Command
no
Implemented since version
Dynamark 3 Backend 1.0
Examples
ASSIGNPARAMSET "Slow" "Fast" assigns all the parameters of the parameter set "Fast" to the parameter set "Slow" See also:
GETPARAMSETS Multi Head Extension:
Fault:
ERROR …
L027952 Issue 5 July 2014 17
Dynamark Communication Protocol BACKUP Command
BACKUP Description
Generates backup containing data as specified in the mode-parameter and stores this data under the path that is given as second parameter (write access grants needed). Parameter Description
mode
mode=0 (system backup) sets, system-configuration, fonts „File-I/OError“ will be returned
mode=1 (audit trail export) – please refer to
the remote logging server functionality. mode=2 (status log export) – please refer to the remote logging server functionality. path
Path to the destination.
Result Description:
Success:
OK
Fault:
ERROR
Properties:
Transaction-Command
no
Implemented since version
Dynamark 3 Backend 1.0
Examples
BACKUP 0 “\hard disk\data” creates a complete system backup and stores it into the folder “\hard disk\data”. See also:
RESTORE Multi Head:
Not supported
18
L027952 Issue 5 July 2014
Dynamark Communication Protocol
BEGINTRANS Command
BEGINTRANS Description
Starts a transaction. All the transaction-commands following will be added to the transaction-list instead of their immediate execution. The transaction list will be executed by sending the EXECTRANS-command. If a ROLLBACKTRANS-command is sent, all commands within the list are removed without any additional action. Transactions are normally used for performance-reasons as the marking layout will not be recompiled and transferred to the marking engine while the commands of the list are executed. This saves compilation time and prohibits the laser to print half of the old data and half of the new if triggered while the update takes place. The result of BEGINTRANS can only be OK if no previously started transaction is still open (transactions are automatically closed with a ROLLBACKTRANS if the connection gets lost). Parameter Description Result Description:
Success:
OK
Fault:
ERROR
Properties:
Transaction-Command
no
Implemented since version
Dynamark 3 Backend 1.0
Examples
BEGINTRANS LOADPROJECT "BILBO.DPRJ" SETTEXT "Hometown" "Hobbingen" MARK START EXECTRANS This example loads the message BILBO.DPRJ, sets the contents of a text-object called "Hometown" to "Hobbingen" and enables marking. See also:
EXECTRANS, ROLLBACKTRANS Multi Head Extension:
Fault:
ERROR …
L027952 Issue 5 July 2014 19
Dynamark Communication Protocol
BUFFERCLEAR Command
BUFFERCLEAR Description
This command clears all records from the remote queue (filled with the BUFFERDATA command). It works similarly to BUFFERREVOKE, i.e. it sends out MSG 31 notifications for discarded records. Parameter Description Result Description:
Success:
OK
Fault:
ERROR
Properties:
Transaction-Command
No
Implemented since version
Dynamark 3 Backend 1.0
See also:
BUFFERDATA, GETBUFFERSTATUS, BUFFERREVOKE, MSG 27, MSG 31 Multi Head Extension:
Fault:
ERROR …
20
L027952 Issue 5 July 2014
Dynamark Communication Protocol
BUFFERDATA Command
BUFFERDATA ... Description
This command inserts a record into the remote queue. For synchronization purposes, every record can be provided with a unique, numeric ID that will be returned by the messages 25, 27 and 31. If not needed, the ID can be set to “-1” in order to automatically generate these IDs internally. If you use the automatic ID generation (ID=-1) there is a limitation of 9999 records that can be preloaded. Parameter Description
ID
Unique identifier of the data record. Set this value to -1 if unique identifier is not necessary
text
These parameters contain the coding data. Note that until Dynamark 3.2, the number of texts was limited to 10.