background image

Section 4.  Programming the SDM-SIO4

4-2

The hex. number must always be two ASCII characters.

Control characters can be entered for all commands in a similar way:

 

^M is carriage return, ^J line feed etc.

 

^^ means ^

 

"" means "

 

]] means ]

 

&& means &

 

&0d means line feed

 

&hex,hex used to enter 2-character hex. codes (0-9, A-F)

4.3  Basic Commands

fltst [string number] ["filter definition"]

This command stores a filter definition to a string number 0..255.

Example:  

fltst 22 "ccci[x]Fs"

The above example stores the filter definition in filter string 22.

See Section 3 for filter types.

strst [string number] ["string definition"]

This command stores a user text string definition to a string number 0..255.

Example:  

strst 22 """This is a string""^M^J"

The above example stores the string definition "This is a string"

crlf 

in string 22.

This string will include the two quotation marks, as shown.

fmtst [string number] ["format definition"]

This command will store a formatter definition to a string number 0..255.

Example:  

fmtst 22 "i[volts=]f4:2"

   

(result would be, for example,

volts=12.7

)

The above example stores the formatter definition in string 22.

See Section 3 for formatter types.

strdelete [string number]

This command deletes a stored filter, formatter or text string 0..255 from
memory.

NOTE

Summary of Contents for SDM-SIO4

Page 1: ...INSTRUCTION MANUAL SDM SIO4 4 Channel Serial I O Interface Revision 2 04 C o p y r i g h t c 1 9 9 6 2 0 0 4 C a m p b e l l S c i e n t i f i c I n c ...

Page 2: ...of all other warranties expressed or implied including warranties of merchantability or fitness for a particular purpose CAMPBELL SCIENTIFIC INC is not liable for special indirect incidental or consequential damages Products may not be returned without prior authorization The following contact information is for US and International customers residing in countries served by Campbell Scientific Inc...

Page 3: ...on and Grounding 2 2 2 4 Power on Tests the Status LED 2 3 3 Understanding How the SDM SIO4 Handles Data 3 1 3 1 Introduction 3 1 3 1 1 Method of Entering Special Control Characters 3 1 3 2 Input Filters 3 2 3 2 1 Filter Types 3 2 3 3 Output Formatting 3 6 3 3 1 Simple Output Formatter 3 6 3 3 2 Output Format Strings 3 7 4 Programming the SDM SIO4 4 1 4 1 Command Line Operation and Structure 4 1 4...

Page 4: ...anual Handshake Mode 5 11 5 2 19 Command 2049 Set Communications Parameters 5 11 5 2 20 Command 2054 Set Up Receive Filter 5 13 5 2 21 Command 2304 Transmit String and or Data to Device 5 13 5 2 22 Command 2305 Transmit Byte s 5 15 5 3 SDM SIO4 Configuration Examples 5 15 5 3 1 Sensors Where the Datalogger Can Request Data by Sending a Prompt or Using a Handshaking Line 5 17 5 3 2 Sensors Which Se...

Page 5: ...ns of the Talk Through Mode C 1 C 1 Limitations C 1 Figures 1 1 Schematic Diagram of the SDM SIO4 1 2 Tables 1 1 SDM SIO4 Serial Port Pin Configuration 1 3 2 1 Address Settings 2 1 2 2 Status LED Error Codes 2 3 3 1 Fixed Strings Currently Allocated 3 8 ...

Page 6: ...SDM SIO4 Table of Contents iv This is a blank page ...

Page 7: ... communications For further information please refer to one of the standard textbooks on this subject 1 1 What is the SDM SIO4 The SDM SIO4 is a device that is connected to a datalogger through the datalogger SDM port The SDM port is specific to Campbell Scientific dataloggers and acts as a high speed data exchange mechanism On some dataloggers it is a dedicated port on others it is implemented us...

Page 8: ... Ports To Other Ports 1 À PORT Handshake Control Tx Buffer Rx Buffer Command Line Control Datalogger Command Control CRC SIG Driver Format Driver User Strings CRC SIG Driver Filter Driver Converted Data Buffer 1 0 0 K K K Handshake Line Command Line Switch Status LED Datalogger can Execute Command Line Commands Rx Tx Data HS SDE C1 C2 C3 to SDM port of datalogger Control Lines Data Lines FIGURE 1 ...

Page 9: ...D type connectors your connections will be different from those shown above Please either refer to your earlier Manual or contact Campbell Scientific for further details Serial Port Buffers Each serial port has a receive Rx buffer a transmit Tx buffer and a processed data storage buffer It is important to understand these buffers as their size can determine how often data must be collected from th...

Page 10: ...s The speed at which data is transferred is under the control of the datalogger and this can vary with other activities in the datalogger and also the length of the SDM cables The typical transfer speed to and from the SDM is one byte per millisecond Multiple SDM SIO4s can be connected to the datalogger in parallel with other SDM SIO4s or other SDM devices The only difference would be the SDM addr...

Page 11: ...on on power up 1 3 Talk Through Mode Recent versions of the CR10X and CR23X datalogger operating systems allow a user while connected to the datalogger to switch to a talk through mode via either a direct or a remote telecommunication connection This allows users to communicate with a device connected to one of the four serial ports of the SDM SIO4 as if they were directly connected to that device...

Page 12: ...Section 1 Introduction 1 6 This is a blank page ...

Page 13: ...he 12V supply and take static prevention precautions before removing the lid 2 1 Setting the SDM Address The 4 x 2 way block of jumpers close to the D connectors selects the SDM address of the SDM SIO4 This address ranges from 0 to 15 The four selector blocks are numbered on the PCB silk screen as 1 2 4 and 8 8 is closest to the D connectors This is in binary format as shown in Table 2 1 TABLE 2 1...

Page 14: ...are shorted the port is set to 5V logic The inputs to the SDM SIO4 are compatible with either logic level or RS232 signals 2 3 Connections to the SDM SIO4 Connect the SDM port to the datalogger SDM terminals as described under SDM Port in Section 1 Use a short low capacitance screened cable The 12V supply can normally be taken from the 12V supply input to the datalogger Make up cables for the RS23...

Page 15: ...4 serial port Please contact Campbell Scientific for further details Even if ground loops can be prevented the length of cables that can be used for RS232 signals is limited to a few tens of meters the exact length depending on the RS232 driver hardware and the cable used Short haul modems can be added to the SDM SIO4 to allow cables up to several kilometers to be used and in addition providing gr...

Page 16: ...Section 2 Installation and Hardware Set Up 2 4 This is a blank page ...

Page 17: ...oint numbers This minimizes the time it takes for the datalogger to get the data and so allows the datalogger to load the data values into its memory with minimal processing 3 1 Introduction For collection of data from an intelligent sensor the datalogger programming is typically broken down into several steps which might be 1 Set up and configure the serial ports e g baud rate parity handshaking ...

Page 18: ...ters will also convert the required data into a form that the datalogger can use For example the sensor may output the unusual complex string Sample data 12 3 23 567 0xAB 12 4 From this string you may only require to record the hexadecimal number 0xAB A filter can be set up to strip out only this number and then convert it to a 4 byte floating point number which the datalogger can use The datalogg...

Page 19: ...he time out is stopped and set to zero If n 0 then this stops the time out and the filter will operate with no time out While the time out is active the SDM SIO4 will not shut down into the low power state unless the filter is complete or the time out has finished Note it best to start the time out after a trigger command B n n n Carry out a bit field to floating point conversion The SDM SIO4 gets...

Page 20: ...Leading spaces and the signs and are allowed before the number but any integer which contains non numeric characters e g 23A5 will produce an error and return 99999 nn Discard n bytes n can be in the range of 0 255 Nn Read n bytes n can be in the range of 0 255 not converted to Campbell Scientific floating point pn Hexadecimal byte should be here n number of bytes to convert n 1 to 3 hex pairs to ...

Page 21: ...he data converted in the data set available to the datalogger This also means that data after this is available to the datalogger as soon as the SDM SIO4 has converted each value If the end of the data set is at the end of the filter string then this filter is not required as the end of the filter string is always the end of a data set Yn Converts binary value s to Campbell Scientific floating poi...

Page 22: ...he selected serial port Because the formatter is programmable almost any string can be output from the serial port either by programming the datalogger or by using the command line 3 3 1 Simple Output Formatter This can be set up by the datalogger and allows data to be transmitted out of the SDM SIO4 in a number of simple formats It is not necessary to use the command line mode to use these format...

Page 23: ... of the n number is bigger than the field width the SDM SIO4 still sends it even though it is longer than the set field width If the formatter string asks for more values than the datalogger sends because Instruction 113 specifies fewer values then the SDM SIO4 sends a number of characters to the port e g for a field width of 4 it sends Minimum field width 2 digits maximum field width 15 character...

Page 24: ...Program Example This program example will output the battery voltage and panel temperature received from the datalogger input locations to port 2 on the SDM SIO4 using the SDM SIO4 Output Formatter The user defined format string which is entered in the command line mode see Section 4 is as follows fmtst 123 z261 f6 2 i Battery z257 f6 1z273 Typical example output from this formatter string is Temp...

Page 25: ...f carriage return line feed Table 1 Program 01 2 Execution Interval seconds get battery voltage 1 Batt Voltage P10 1 2 Loc Batt_v get panel temperature 2 Internal Temperature P17 1 1 Loc Temp_C send battery voltage and temperature to port 2 on the SDM SIO4 3 SDM SIO4 P113 1 1 Reps 2 0 Address 3 2 Send Receive Port 2 4 2304 Command see Section 5 for explanation of 5 9123 1st Parameters Command 2304...

Page 26: ...Section 3 Understanding How the SDM SIO4 Handles Data 3 10 This is a blank page ...

Page 27: ...can be activated while the datalogger is running a program which communicates with the SDM SIO4 However all datalogger activity related to port 1 is ignored Complicated or long string definitions are best set up by editing a text file which includes the string definition commands This file can then be sent out to the SDM SIO4 once it is configured in the command line mode The SDM SIO4 can accept m...

Page 28: ... See Section 3 for filter types strst string number string definition This command stores a user text string definition to a string number 0 255 Example strst 22 This is a string M J The above example stores the string definition This is a string crlf in string 22 This string will include the two quotation marks as shown fmtst string number format definition This command will store a formatter def...

Page 29: ...ific s SIG COM PC program portset port baud data length stop bits parity handshake mode delay This sets up the port 1 4 to the communication format you require port means the port number 1 4 to set up For details of the other parameters baud delay see Appendix B reset The SDM SIO4 is set to a known default state All strings filters and formatters are erased ports are set to 9600 baud 1 stop bit no...

Page 30: ...er of SDM commands the datalogger sent to the SDM SIO4 that the SDM SIO4 did not recognize This counter may be incremented when the program is first compiled in the datalogger due to the auto speed detection of the datalogger PORT1 4 These four sets of values are the current port settings in the order as below Baud rate setting Data length setting Stop bit setting Parity bit setting Handshake mode...

Page 31: ...alk through mode errorres This resets all error counters bytewr address byte This is used by Campbell Scientific for test purposes and writes a byte to the memory of the SDM SIO4 The address and bytes to write must be in base 10 decimal integer The address range is 0 65535 and the byte is from 0 255 testio test This is used by Campbell Scientific for test purposes Each test command is carried out ...

Page 32: ...Section 4 Programming the SDM SIO4 4 6 This is a blank page ...

Page 33: ... rep 08 Starting input location 09 Multiplier 10 Offset 5 1 Instruction 113 Parameters 5 1 1 Parameter 1 Reps This specifies the number of times you wish this command to repeat for each SDM SIO4 connected to the datalogger with sequential addresses This will normally be set to one 5 1 2 Parameter 2 Address This is the address of the SDM SIO4 that the instruction applies to See Section 2 Installati...

Page 34: ...l incoming and outgoing data The multiplier should normally be set to 1 000 if left at 0 000 then zero value data will be stored 5 2 Commands and Options Parameters 4 5 and 6 For many of the command options listed below it is necessary to leave a small delay before calling another instance of the instruction which communicates with the SDM SIO4 This is required to allow the SDM SIO4 to process the...

Page 35: ...ry 0 low 1 good a flag If the value returned was for example 1281 then it would have the following meaning 12 watch dog resets 8 invalid commands 1 battery level good The second value returned shows whether or not data is available from a specific port A non zero digit indicates that data is available whereas a zero signifies that no data is available Command 5 is explained in detail later When a ...

Page 36: ...ommand requests the SDM SIO4 to send the specified values reps number of floating point values it has already received from the RS232 device relevant to the port specified into input locations 99999 is stored if no value is available For example this command could be used to get data converted using input filter strings of type d D f F pn bn u vn wn and B n n see Section 3 5 2 6 Command 5 Status T...

Page 37: ... per repetition 2 5 2 7 Command 6 Flush Transmit Buffer This command flushes the SDM SIO4 transmit buffer of data it is waiting to send Values per repetition 0 5 2 8 Command 7 Activate Command Line This command simulates pressing the push button on the SDM SIO4 which activates the command line mode on the port determined by the mode If the mode parameter of P113 is 0 the command line will be on th...

Page 38: ...Values per repetition 1 5 2 13 Command 320 Send Byte Data to SDM SIO4 This command transmits bytes of data one per input location to the SDM SIO4 for retransmission The values in the input location should be in the range 0 255 5 2 14 Command 321 Execute Command Line Command By using P113 command 321 it is possible to execute a command line command from the datalogger program This is done by loadin...

Page 39: ... with command 321 while accessing the command line via one of the SDM SIO4 ports Program Example for P113 Command 321 An example of executing a command line command to store the following filter string as shown below The filter string is fltst 25 ffCc test flag one If clear then set up the SDM SIO4 P91 1 21 2 30 load command line string into consecutive locations P65 Bulk load 1 102 f 2 108 l 3 11...

Page 40: ...e command line command This P113 instruction in most cases would not be required and would generally be used in development of the datalogger program P113 1 1 2 0 3 1 4 67 Command to get return error codes 5 0 6 0 7 1 8 20 Location to store return code 9 1 10 0 set flag one so that set up will only be done once P86 1 1 end of set up P95 If you use the RAMTEST command you will have to wait a minimu...

Page 41: ...IO4 to the RS232 device The byte must be in the range of 0 255 for binary code Values per repetition 0 5 2 17 Command 1026 Serial Port Status This command requests the SDM SIO4 to send the current output level of status lines number of framing errors number of parity errors and number of overruns This is sent to the datalogger as four Campbell Scientific floating point numbers to consecutive input...

Page 42: ...ow many times the line has been broken or disconnected First Command Option Reset Error Counters When command 1026 is specified in parameter 4 of Instruction 113 this additional option can be used parameter 5 of Instruction 113 to force the error counters to be reset to zero This means that command 1026 requests data from the SDM SIO4 and can also be used to send these reset commands to the SDM SI...

Page 43: ...from SDM SIO4 RTS 0 Leave as set previously 1 Clear RTS to low 2 Set RTS to high DTR 0 Leave as set previously 1 Clear DTR to low 2 Set DTR to high Values per repetition 0 A 2ms delay is required after this command before the next SDM SIO4 command is started 5 2 19 Command 2049 Set Communications Parameters This command sets the baud rate data length stop bits parity and handshake mode as follows ...

Page 44: ...p bits odd parity Data Length 0 Leave as set previously 1 5 data bits 2 6 data bits 3 7 data bits 4 8 data bits Baud Rate 0 Leave as set previously 1 300 baud 2 600 baud 3 1200 baud 4 2400 baud 5 4800 baud 6 9600 baud 7 19200 baud 8 32400 baud 9 76800 baud Second Command Option Parameter 6 This option is used to set the handshaking delay in units of 50ms The accuracy is 50ms 0ms The range is 0 254...

Page 45: ...ination character if set 8 Transmit a user defined string 0 255 or fixed string 256 511 9 String filter type See Filter Strings in Section 2 3 String Number or Character Code If input mode 9 is chosen this is the user defined filter string number 0 255 or fixed filter string 256 511 used for the filter if the string is not allocated the filter will not operate If input mode 8 is chosen this number...

Page 46: ...e 8 is chosen then this is the user defined string 0 255 or fixed string 256 511 If output modes 1 to 4 are chosen then this specifies the delimiter character as an ASCII code 0 255 999 means character not enabled Second Command Option Parameter 6 This is used for filter set up if data is expected back after output Input mode String number or character delimiter code x x x x Input Mode 0 No filter...

Page 47: ... the bytes carriage return line feed CrLf to port one Values per repetition 0 5 3 SDM SIO4 Configuration Examples Although the serial port configurations can be set up using the command line many users may prefer to set up the ports from their program This would normally be done once when the program is first compiled The instruction can be placed within a logical block which only runs when a spec...

Page 48: ...eters 7 0 Values per Rep 8 0000 Loc _________ 9 1 0 Mult 10 0 0 Offset set up a simple filter 1999 search for floating point number 3 SDM SIO4 P113 1 1 Reps 2 0 Address 3 1 Send Receive Port 1 4 2054 Command 5 1999 1st Parameters 6 0 2nd Parameters 7 0 Values per Rep 8 0000 Loc _________ 9 1 0 Mult 10 0 0 Offset the set up filter command requires a delay of 4ms the nearest we can get is 10ms with ...

Page 49: ...hods of obtaining data from an intelligent RS232 device depending on the sensor type as indicated below 5 3 1 Sensors Where the Datalogger Can Request Data by Sending a Prompt or Using a Handshaking Line For these sensors the measurement would consist of three phases 1 For software controlled sensors use the datalogger instruction to send out a command string to request data using commands 0320 10...

Page 50: ... way of entering control characters for carriage return linefeed into a string The following program example works as follows 1 The first P113 sets up a simple filter to search for floating point numbers 2 The first parameter of this command is used to transmit a string which will prompt the sensor into taking measurements and then transmitting the numbers to the SDM SIO4 3 A delay is required by ...

Page 51: ...0 Delay W Ex units 0 01 sec 3 4 Delay After Ex units 0 01 sec 4 0 mV Excitation get data from SDM SIO4 and put into locations 1 and 2 3 SDM SIO4 P113 1 1 Reps 2 0 Address 3 1 Send Receive Port 1 4 4 Command 5 0 1st Parameters 6 0 2nd Parameters 7 2 Values per Rep 8 1 Loc number 9 1 0 Mult 10 0 0 Offset At zero minutes into a 10 minute interval set the output so that the data from the sensor will b...

Page 52: ...llection in mid transmission Thus by polling the SDM SIO4 using command 1 it is possible to see if data has been received and if so use a second call of the datalogger SDM SIO4 instruction to collect the available data Example CR10X Program without Polling or Interrupts This simple program is an example for sensors that send data at random intervals If no data was available when the datalogger ask...

Page 53: ...1 is Low 2 30 Then Do set the filter up 2 SDM SIO4 P113 1 1 Reps 2 0 Address 3 1 Send Receive Port 1 4 2054 Command 5 9200 1st Parameters 6 0 2nd Parameters 7 0 Values per Rep 8 0000 Loc _________ 9 1 0 Mult 10 0 0 Offset filter set up requires a delay 3 Excitation with Delay P22 1 1 Ex Channel 2 0 Delay W Ex units 0 01 sec 3 1 Delay After Ex units 0 01 sec 4 0 mV Excitation set flag one so setup ...

Page 54: ...ds Instantaneous values stored to final storage 9 Sample P70 1 2 Reps 2 1 Loc Voltage Table 2 Program 02 0 0000 Execution Interval seconds Table 3 Subroutines End Program Example CR10X Program using the Polling Method This program will deal with sensors that send data at random intervals The program polls the SDM SIO4 to see if data is available and only stores the data then A typical filter that ...

Page 55: ... 2 Execution Interval seconds do filter set up only if flag one is clear 1 If Flag Port P91 1 21 Do if Flag 1 is Low 2 30 Then Do set up string filter 2 SDM SIO4 P113 1 1 Reps 2 0 Address 3 1 Send Receive Port 1 4 2054 Command 5 9200 1st Parameters 6 0 2nd Parameters 7 0 Values per Rep 8 0 Loc _________ 9 1 0 Mult 10 0 0 Offset delay required by filter set up command 3 Excitation with Delay P22 1 ...

Page 56: ... 30 Then Do get voltages into locations 3 and 4 if poll was true 8 SDM SIO4 P113 1 1 Reps 2 0 Address 3 1 Send Receive Port 1 4 4 Command 5 0 1st Parameters 6 0 2nd Parameters 7 2 Values per Rep 8 3 Loc voltage1 9 1 0 Mult 10 0 0 Offset set the output flag so the data can be store to final storage 9 Do P86 1 10 Set Output Flag High Flag 0 time stamp 10 Real Time P77 1 1111 Year Day Hour Minute Sec...

Page 57: ...Section 1 for details This should be connected to control port 8 for this example A typical filter that could be used is as follows fltst 200 t data A5xff This filter works as follows t data this filter waits for an exact string match before it starts the next filter In this case it is waiting for the sensor to send the string data A5 this filter sets up a 250ms filter time out This time out shoul...

Page 58: ...ired by filter setup command 4 Excitation with Delay P22 1 1 Ex Channel 2 0 Delay W Ex units 0 01 sec 3 1 Delay After Ex units 0 01 sec 4 0 mV Excitation set flag one high so the filter set up is only done once 5 Do P86 1 11 Set Flag 1 High end of IF 6 End P95 Table 2 Program 02 0 0000 Execution Interval seconds Table 3 Subroutines interrupt routine for control port 8 1 Beginning of Subroutine P85...

Page 59: ... end of interrupt routine 6 End P95 End Program Where multiple ports are being used the first instruction would have to be command 1 to see which port has data followed by a second call or calls to collect the data 5 4 Outputting Datalogger Data The SDM SIO4 can be used to drive displays printout devices and other output only systems In this case after the initial configuration as above either sim...

Page 60: ...es are available within the field space This outputs an ASCII space i Battery This outputs the word between the brackets z257 This outputs the fixed string Voltage space This outputs an ASCII space f6 1 This takes the value from location 2 and outputs it The output field has a total width of 6 characters 1 decimal place is available within the field z273 This outputs the fixed string CrLf carriage...

Page 61: ...ally flush the input buffer it is advisable to include instructions to flush the buffers within the configuration section of the program 5 6 Return Error Codes These return error codes are used by the command line and by the datalogger command 67 0 No error 1 String not enclosed in double quotes 2 String 255 characters long 3 Out of string memory 4 Unknown error 5 String not allocated 6 String poi...

Page 62: ...Section 5 Programming the Datalogger 5 30 This is a blank page ...

Page 63: ...ceives except for the checksum bytes The two separate Checksums CRCs or Signatures are then compared and if the two match exactly then the data received should be error free 6 2 Received Data No checksum will detect 100 of all errors The more sophisticated the algorithm the better the error detection The signature that the sensor returns can be in many different data types for example ASCII decima...

Page 64: ... data is ready for the datalogger to collect but if they do not match the data will be removed as it will be considered to be corrupt data if no other data is ready for the datalogger to collect then 99999 for floating point or 255 for single byte characters will be stored into the datalogger input location From the programmer s point of view the datalogger could be set up to do one of the followi...

Page 65: ...tches what is sent from the sensor Frequency is not removed from the receive buffer x this filter marks the start of a data set in other words the data will only be available for the datalogger to collect when the complete string is received correctly g2 this is the filter that tells the SDM SIO4 to use the CRC16 CCITT algorithm It initializes the CRC16 CCITT algorithm to start calculation on any ...

Page 66: ...aud rate etc have been set The sensor outputs its string every second Only the parameter values to be entered into the appropriate instructions are shown Table 1 Program 01 1 0 Execution Interval seconds test flag 1 if not set tell the SDM SIO4 to use filter string 100 1 If Flag Port P91 1 21 Do if Flag 1 is Low 2 30 Then Do tell the SDM SIO4 to use filter string 100 2 SDM SIO4 P113 1 1 Reps 2 0 A...

Page 67: ... Rep 8 1 Loc _________ 9 1 Mult 10 0 Offset if the value in location 1 is greater than zero then there must be data this assumes only one sensor is connected to the SDM SIO4 7 IF X F P89 1 1 X Loc _________ 2 3 3 1 F 4 30 Then Do if data is available then get the value and put into location 2 8 SDM SIO4 P113 1 1 Reps 2 0 Address 3 1 Send Receive Port 1 4 4 Command 5 0 1st Parameters 6 0 2nd Parame...

Page 68: ...al with and this time would be multiplied by the number of characters you expect to receive while the algorithm is being calculated This factor would generally constitute the most significant delay 1 2 CRC16 and CRC16 CCITT 0 159ms char 3 CRC16 CCITT IBM 0 159ms char 4 CRC32 0 369ms char 5 CSI Signature 0 077ms char 6 Checksum using modulo 256 0 066ms char 7 Checksum using modulo 8192 0 071ms char...

Page 69: ... signature calculation for all characters until formatter Gn is encountered n can be in the range of 0 255 The signature types supported are shown below 0 No Signature type used 1 CRC16 standard Polynomial x16 x15 x2 1 2 CRC16 CCITT standard Polynomial x16 x12 x5 1 3 CRC16 CCITT IBM Tag Receiver 4 CRC32 standard Polynomial x32 x26 x23 x22 x16 x12 x11 x10 x8 x7 x5 x4 x2 x 1 5 CSI Signature CR10X us...

Page 70: ...r this can be 0 255 is the start of the format string g1 is the formatter that instructs the SDM SIO4 to use the CRC16 algorithm It initializes the CRC16 to start calculation from here on any characters i 123456789 is the formatter that will transmit the string 123456789 to whichever port Instruction P113 requires While this string is being processed by the SDM SIO4 the CRC16 will be calculated on...

Page 71: ...also means it will all be done within one P113 datalogger instruction This is not the only way to do it It is possible to calculate a CRC signature across a number of formatter strings and therefore a number of P113 Datalogger instructions This could be done by using command line commands and a datalogger program as shown below Formatter strings stored by using the command line FMTST 100 g1 FMTST ...

Page 72: ...7 0 Values per Rep 8 0000 Loc _________ 9 1 Mult 10 0 Offset a minimum delay of 3 8ms is required after this command 4 Excitation with Delay P22 1 1 Ex Channel 2 0 Delay W Ex units 0 01 sec 3 1 Delay After Ex units 0 01 sec 4 0 mV Excitation send the ASCII characters Y and Z to port 1 5 SDM SIO4 P113 1 1 Reps 2 0 Address 3 1 Send Receive Port 1 4 2305 Command 5 89 1st Parameters 6 98 2nd Parameter...

Page 73: ...he timings for the algorithms are shown below These timings are in addition to the normal formatter delay times a Time to set up an algorithm using formatter g is No of Ports 0 0656ms b The time using the different algorithms is shown below Note that this is the time that is needed for each character that the formatter has to deal with and so this time would be multiplied by the total number of ch...

Page 74: ... 226ms 8 16 bit ASCII hex 0 355ms 9 32 bit ASCII hex 0 613ms The above timings are preliminary d With the CRC32 and CRC16 CCITT there is a extra 0 19ms for an additional calculation This is required as part of the CRC algorithm The total extra processing time above the SDM SIO4 s normal delays is calculated by the following Total time in µsec needed before the next P113 is started a one from b one...

Page 75: ...3 I 105 i 10 CONTROL J 42 74 J 106 j 11 CONTROL K 43 75 K 107 k 12 CONTROL L 44 76 L 108 l 13 CONTROL M 45 77 M 109 m 14 CONTROL N 46 78 N 110 n 15 CONTROL O 47 79 O 111 o 16 CONTROL P 48 0 80 P 112 p 17 CONTROL Q 49 1 81 Q 113 q 18 CONTROL R 50 2 82 R 114 r 19 CONTROL S 51 3 83 S 115 s 20 CONTROL T 52 4 84 T 116 t 21 CONTROL U 53 5 85 U 117 u 22 CONTROL V 54 6 86 V 118 v 23 CONTROL W 55 7 87 W 11...

Page 76: ...This is a blank page ...

Page 77: ...d 8 600 baud 9 1200 baud 10 2400 baud 11 4800 baud 12 9600 baud 13 19200 baud 14 38400 baud 15 76800 baud If the baud rate is higher than 9600 on two or more ports the SDM SIO4 may not be able to reliably collect data when there is a lot of simultaneous input activity of more than 16 bytes without delays This limitation can normally be overcome by careful planning of when data is requested from th...

Page 78: ...lay n x 50ms after CTS is set transmission stops if CTS falls 3 DTR and RTS are always set ignore CTS 4 XON XOFF software handshake The SDM SIO4 will XON again if no more XOFFs are sent after a time out of n x 50ms This mode is only functional for data transmissions from the SDM SIO4 If an RS232 device sends large amounts of data and it can only be controlled by XON XOFF techniques it must be impl...

Page 79: ...his will usually result in out of range values being stored if data is being read from that port by the program The talk through mode is terminated by a 40 second time out The timeout is reset by characters being sent from the PC to the SDM SIO4 via the datalogger If no characters are received after 40 seconds the talk through mode will be cancelled and all ports returned to normal operation When ...

Page 80: ...Appendix C Limitations of the Talk Through Mode C 2 to complete and then start a new talk through session and use the command LASTERROR to get the result code see Section 4 4 ...

Page 81: ...This is a blank page ...

Page 82: ... campbellsci com br suporte campbellsci com br Campbell Scientific Canada Corp CSC 11564 149th Street NW Edmonton Alberta T5M 1W7 CANADA www campbellsci ca dataloggers campbellsci ca Campbell Scientific Ltd CSL Campbell Park 80 Hathern Road Shepshed Loughborough LE12 9GX UNITED KINGDOM www campbellsci co uk sales campbellsci co uk Campbell Scientific Ltd France Miniparc du Verger Bat H 1 rue de Te...

Reviews: