rcbus_packet_format

RCBus. Formato

Conexiones:

Conector Radio control para servos estandar.

  • GND    (0V)
  • VCC     (+3.3V, opcional +5V)
  • DATOS (TX & RX, 0 a +3.3V)

 

Nivel Señal:

0 a 3.3V max. 

 

Lógica:

Serial Port TTL. 

Nivel lógico en reposo “0”: 3.3V

Nivel lógico activo “1”: 0V

 

Formato:

115200,8,N,1

Velocidad: 115.200b

 

Paquete V:3.10: 

SOH, DIR_DEST, DIR_FONT, ID, OBJ, CMD, LONG, DATA (PAYLOAD), CSUM

  • SOH:                     1 Byte. Start Of Heading: 01h
  • DIR_DEST: Si la dirección destino es 0 AND 31, es un paquete de datos broadcast, (a todos)

  • IP8_FONT:          1 Byte. Dirección Fuente paquete 2 a 31. dir 0 propia, 1 no se usa. (Bits 5,6,7 → reservado router.)

  • ID:                          1 Byte. Identificacion paquete. Numero secuencial desde el Master o equipo Fuente.

  • OBJ:                    1 Bit 7=1 → implica contestacion del dispositivo.

  • CMD:                   1 Byte. Propiedad o comando. Bit 7=1 = WR. Bit 7=0=RD (opcional).

  • LONG:              1 Byte. Cantidad bytes en cuerpo DATOS. Longitud minima: 0 bytes.  Long max. 128BytesNo se cuenta CSUM.

  • DATOS:                n Bytes. Cuerpo de Datos. Longitud variable indicada en LONG.

    • OBJ_PROP:       2 Bytes. Propiedad objeto. Opcional. 
  • CSUM:                 1 Byte. Suma 8bits (AND 0FFh ó 255d) desde SOH (1) hasta ultimo dato.

Después de cada paquete hay un tiempo de reposo de al menos 300-400uSeg.

 RXD2, RXD3, RXLRS. Paquetes:

1 seg = 40 ciclos de 25mSeg

Obj_xlrsServos:

mSeg 5, en todos los ciclos de 25mSeg (40Hz). Filtrar con SOH, OBJ, CMD.

SOH (01H), DEST (00H), FONT (0EH), ID (xx), Obj_xlrsServos (77H), CMD (“W” ó 57H), LONG (29H), Obj_Property (01H,44H), DATA (16xInteger): SRV1,SRV2,….SRV16, CSUM (xx)

 

Datos de servos:

Los datos de servos en el paquete que envia el receptor tienen que procesarse para obtener el valor real del servo.

Valores SRV1…SRV16 en decimal:

Servo en Reposo=       0, valor SRVx = 3000

Servo                = +500, valor SRVx = 4000

Servo                = -500, valor SRVx  = 2000

Como recuperar los valores de los servos:

Valor real servo=(SRVx-3000)/2

 Hardware RCBus:

Lectura y escritura: Es muy sencillo, básicamente solo hay que unir el TX y RX a través de un diodo para sumar las señales en un solo hilo.

Sólo lectura: Si solo vamos a leer datos del RCBus simplemente conecte el pin RX de la UART de su microcontrolador o del convertidor USB si es para PC.

El protector de estatica U3, es opcional.

La resistencia R24 de 47 a 100 Ohmios en serie protege los pins del microcontrolador. Es opcional. Si vamos a conectar mas de 14 unidades al RCBus es preferible bajarla de 47 a 22 ohmios.

La resistencia R24 de 10k de polarización es necesaria al menos en uno de los equipos (los modulos XLRS ya la tienen dentro) por lo que es opcional. si se van a conectar mas de 4 unidades es preferible que cada una tenga su resistencia de polarizacóon.

El diodo D1, es preferible que tenga baja caida. un diodo schottky como un BAT54 es adecuado. 

Email:  dmd@dmd.es

Teléfono:  +34 961450346 (sólo Español)

Teléfono:  615 18 50 77 (sólo Español).

Skype:  Vicente_dmd. (Inglés).

Skype:  beatriz_dmd. (Español).

 

www.dmd.es

www.xlrs.eu

tienda.dmd.es