ARD (ASCII read)

The ARD instruction reads ASCII characters from the input buffer and stores them into a string.
Languages supported: Function block diagram, ladder diagram, structured text.
This instruction applies to the L20E, L50E, and L70E controllers.
Operation details:
  • The ARD instruction runs until all of the characters in the ASCII buffer are received. If another  ASCII instruction is executed, it is queued until ARD is finished.
  • To cancel the ARD instruction, execute an ACL instruction.
  • To prevent the ARD instruction delaying the ASCII queue while it waits for the required number of characters, use the results of an ACB instruction to trigger the ARD instruction.
  • Status of the instruction can be extracted from the control bit of the instruction instance (for example, ARD_1.controlbit). This shows if the instruction is blocking the ASCII instruction queue waiting for more characters:
    • 7th bit = Instruction is enabled.
    • 6th bit = Instruction is in the queue.
    • 5th bit = Instruction is done.
    • 3rd bit = Instruction has an error.
ARD
ARD
ARD parameters
Parameter
Parameter Type
Data Type
Description
IN
Input
BOOL
Rung input state.
  • TRUE: When Rising Edge is detected, start the instruction block with the precondition that the last operation is complete.
  • FALSE: The instruction block is idle.
ARDInput
Input
Read characters from the buffer. The maximum is 82.
Use the ARDARL data type to define the Channel, Length, and Cancel parameters for the ARDInput.
Q
Output
BOOL
Indicates when the buffer read is ongoing or complete.
Outputs of this instruction are updated asynchronously from the program scan. Output Q cannot be used to re-trigger the instruction because IN is edge triggered.
  • TRUE: The function block is complete.
  • FALSE: The function block is not complete.
Destination
Output
ASCIILOCADDR
The string element where the characters are stored.
NumChar
Output
UINT
The number of characters.
Error
Output
BOOL
Indicates the existence of an error condition.
  • TRUE: An error is detected.
  • FALSE: No error.
ErrorID
Output
UINT
A unique numeric that identifies the error. The errors for this instruction are defined in ABL error codes.
ARD error codes
Error code
Error description
03
Transmission cannot be completed because the Clear-to-Send signal was lost.
06
Illegal parameter was detected.
07
Cannot complete ASCII send or receive because channel configuration has been shut down using the channel configuration dialog.
08
Cannot complete ASCII Write due to an ASCII transmission already in progress.
09
ASCII communication requested is not supported by current channel configuration.
10
The Cancel was set, stopping instruction execution. No action required.
11
The requested length for the string is either invalid, a negative number, greater than 82, or 0. Applies to ARD and ARL function blocks.
13
The requested (.LEN) in the control block is a negative number or a value greater than the string size stored with the source string. Applies to AWA and AWT function blocks.
14
The ACL function block was canceled.
16
Serial port is not supporting RTS or CTS control lines.

ARD examples

ARD function block diagram example
ARD function block diagram example
ARD ladder diagram program example
ARD ladder diagram program example
ARD structured text example
ARD structured text example
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.
Normal