Computers for industrial control and automation systems

RB 700 Standard/Advance Analog inputs and ouputs

Analog inputs/outputs

RB700 Advance and R700 Standard have four analog inputs 0-10V and two analog outputs 0-10V. Analog inputs and outputs are controlled by SPI interface (/dev/spidev0.1). SPI settings:

  • mode bits: CPHA = 1, CPOL = 0,
  • bits per word: 8,
  • max. speed 2 MHz.

Analog outputs

The following figure shows write analog outputs frame. Each rectangle represents one byte.

0x4F AO1[7:0] AO1[15:8] AO2[7:0] AO2[15:8]

Fig. 1. Write analog outputs frame

The value 1000 corresponds to the output voltage 10V. If the fifteenth bit of the output value is 1 then the output is ignored. Frame timeout is 100ms.

Example 1

Set both analog outputs:
AO1 = 10.0V ⇒ 1000 ⇒ 0x03E8
AO2 = 5.0V ⇒ 500 ⇒ 0x01F4

0x4F 0xE8 0x03 0xF4 0x01

Fig. 2. Write analog outputs frame - example 1

Example 2

Set only A01:
AO1 = 10.0V ⇒ 1000 ⇒ 0x03E8

0x4F 0xE8 0x03 0x00 0x80

Fig. 3. Write analog outputs frame - example 2

Example 3

Set only A02:
AO2 = 5.0V ⇒ 500 ⇒ 0x01F4

0x4F 0x00 0x80 0xF4 0x01

Fig. 4. Write analog outputs frame - example 3

Analog inputs

The following figure shows read analog inputs frame. Each rectangle represents one byte.

0x41 AI1[7:0] AI1[15:8] AI2[7:0] AI2[15:8] AI3[7:0] AI3[15:8] AI4[7:0] AI4[15:8]

Fig. 5. Read analog inputs frame

Between the first two bytes (0x41 and AI1[7:0]) should be a delay at least 100 µs.

The voltage at the analog input can be calculated from the formula:

Vin = ((AI[15:8] ← 8) OR AI[7:0]) · 10.065 / 1023.0

where:

  • "← 8" - left shift by 8 bits,
  • "OR" - bitwise OR.
Back to Top