Welcome to the forums!
There are a couple of different ways to do this, but most likely you’ll want to look at the PAC Control User’s Guide (form 1700) for starters and use a communication handle in your strategy. Chapter 10 has a section called “Communication Commands.”
Are you using the built-in 232 port on the controller itself, or a serial module plugged into the rack? The built-in port would have a comm handle value something like: “ser:0,115200,n,8,1” (port 0, baud rate of 115,200, no parity, 8 data bits, and 1 stop bit) and a serial module would start with “tcp:” followed by an IP address and port number of that module. Details in form 1700.
Typically the commands you’d use would be “Open Outgoing Communication” followed by something like: “Transmit String” (I just wrote a chart that did just those two commands, the second in a loop, to blast out messages over and over).
For the receiving part, as you suggested, you’d likely use “Get Number of Characters Waiting” most likely in a loop with a delay. When that number waiting is enough for your purposes, you might use “Receive N Characters” before you start parsing the incoming data. That’s it!
Depending on the data that’s coming in and how values are separated, you can leverage the EOM (end of message) character to parse data as you receive it – for example using the “Receive String Table” command. This can be a lot quicker than writing your own logic for parsing.
What does your incoming data look like and what will you do with it? (Just curious!)