PROTOCOLO DS-CDMA ORIENTADO A LA GESTIÓN DE UN AUDITORIO Carlos Monzo Sánchez, Jose Antonio Morán Moreno, Santiago Planet Garcia, Javier Gonzalvo Fructuoso Departamento de Comunicaciones y Teoría de la Señal Enginyeria i Arquitectura La Salle – Universitat Ramon Llull e-mail: {cmonzo, moran, splanet, gonzalvo}@salleurl.edu Abstract - In this paper a new DS-CDMA protocol, oriented to auditory management, is presented. Design bases and a study of the main design parameters are presented. Channel coding, frequency channelization and frame structure, among others, are described to be used in our communication system. Moreover, simulation software is developed in order to help the network manager to take measurements of the principal system parameters and manage the performance of different devices such as speakers and microphone arrays. I. INTRODUCCIÓN El objetivo es disponer de un protocolo de comunicaciones que utilice DS-CDMA1 como tecnología de acceso al medio, que en nuestro caso será el aire, de manera que nos sirva para realizar la gestión de un auditorio. Por gestión se entenderá todas las comunicaciones existentes, ya sean de control como de información. El auditorio simulado dispone de una serie de altavoces y arrays de micrófonos, así como de una unidad central que será por donde pasen, y se controlen, todas las comunicaciones. Como complemento al diseño del protocolo se han implementado un conjunto de aplicaciones tanto para demostrar cómo se realizaría la gestión del sistema así como herramientas de simulación para dar soporte al administrador de la red en el momento de dimensionar la misma. Por lo que respecta al uso de los arrays, considerando que su estudio no es la finalidad de este trabajo, su objetivo sería el de utilizar un procesado en array para detectar el ángulo de llegada que pudiera darnos una información más completa del origen de la fuente de voz. Según [1] el uso de diferentes técnicas y algoritmos empleando arrays de micrófonos nos puede indicar este ángulo con señales de voz en entornos reales. II. PROTOCOLO DE COMUNICACIONES A. Bases del diseño El diseño se ha basado en la aplicación de propuestas de implementación realizadas en diferentes trabajos y el estudio de diversas tecnologías existentes en el mercado, como son el estándar de telefonía móvil de segunda generación IS-95 CDMA y el de tercera generación CDMA 2000 como evolución del anterior, familia de especificaciones IEEE 802.11 y Bluetooth. B. Conexiones y canales Fig. 1. Esquema del auditorio La ventaja que se espera conseguir es disponer de un sistema sin cables para la transmisión de información y de control utilizando DS-CDMA, disminuyéndose así tanto costes de instalación como de manteniendo por tener los equipos alta movilidad y por tanto libertad para la reubicación; como por la facilidad de acceso a un interlocutor que deseara participar en la conversación gracias a la utilización de una serie de arrays de micrófonos, que captarán la voz sin necesidad de acceder hasta él físicamente. El sistema se ha diseñado considerando las comunicaciones existentes entre altavoces, arrays de micrófonos y la unidad central, de manera que el esquema de conexionado quedaría como se puede ver a continuación: Fig. 2. Conexiones y canales 1 Direct Sequence-Code Division Multiple Access Se puede observar como todas las comunicaciones pasan por la unidad central, equipo que será desde donde el administrador de la red podrá monitorizar lo que está sucediendo en el sistema al igual que controlar los distintos dispositivos que forman parte del mismo. Por lo que hace referencia a los canales definidos, una vez considerados los diferentes elementos, tenemos un canal de tráfico por donde circulará tanto la información de voz captada por los arrays de micrófonos como la información de voz que irá hacia los diferentes altavoces, y un canal de control por donde circularán las instrucciones de gestión como por ejemplo es el estado de actividad de cada dispositivo. C. Consideraciones sobre la capacidad De manera general, el procedimiento de cálculo de la capacidad se realiza como sigue. Conociendo la fórmula de cálculo de la capacidad en un sistema CDMA [2] podríamos hacer una aproximación a la ganancia de proceso que deberá haber para poder así decidir la longitud de la secuencia pseudoaleatoria (PN). Se hallará la ganancia del sistema partiendo del tipo de modulación que se utilizará y del valor de BER necesario dentro de la aplicación en la que se esté trabajando. A partir de estas premisas se podrá saber cual es la relación Eb/N0 a partir de gráficas BER en función de Eb/N0. A partir del número de conexiones que existirán, se puede plantear la longitud de la secuencia PN, teniendo en cuenta diversos factores, como por ejemplo el de coste computacional. A continuación se muestra el cálculo de la capacidad, o número de usuarios, teniendo en cuenta los diferentes factores que se podrían considerar en su cálculo, siendo éstos los efectos de carga (η ) , de sectorización (λ ) y de actividad de voz (ν ) . Además se puede tener en cuenta el ruido de fondo con una potencia (γ ) y densidad de potencia (γ 0 ) determinadas debido a interferencias espurias y ruido térmico: M = 1+ (W R ) ⎛ 1 ⎞ ⎛1⎞ ⎛ γ ⎟⎟ ⋅ λ ⋅ ⎜ ⎟-⎜⎜ 0 ⋅ ⎜⎜ ⎛ Eb ⎞ ⎝1+ η ⎠ ⎝ ν ⎠ ⎝ Eb ⎜⎜ ⎟ ' ⎟ N 0 ⎠ ⎝ ⎞ ⎛W ⎞ ⎟ ⋅ ⎜ ⎟ (1) ⎟ ⎝R⎠ ⎠ donde: M : número de usuarios W : ancho de banda de transmisión R : velocidad binaria Eb : energía por bit N 0 ' : densidad de potencia de ruido debida a usuarios η : factor debido a efectos de carga λ : factor debido a efectos de sectorización ν : factor debido a efectos de actividad de voz γ 0 : densidad de potencia (ruido térmico, espurias…) D. Vocoder El vocoder propuesto para ser utilizado está basado en la especificación IS-127 EVRC [3]. Este vocoder proporcionará una calidad de 13 kbps con una velocidad de 8 kbps. La voz se codificará en tramas de 171 bits cada 20 ms, obteniéndose así una velocidad de 8550 bps. A parte se añadirán 1 bit de compatibilidad para datos de señalización y secundarios, 12 bits de CRC y 8 bits de cola [2][4]. E. Secuencias PN Las secuencias PN que se utilizarán en el sistema presentado son secuencias Gold con fase inicial optimizada según MSQCC/CO2 [5], que presenta una mejor SNR y además es la que más enfatiza las propiedades de correlación cruzada. Es recomendable, partiendo de que dichas secuencias las encontraremos representadas en forma de matriz de M filas por N columnas, se comience la asignación de las mismas desde la primera fila en adelante, puesto que la optimización se realizó cogiendo a ésta como referencia fija para optimizar al resto. F. Sincronización y detección Se propone utilizar un esquema combinado de adquisición y detección para un sistema de comunicaciones multiusuario [6]. La finalidad de este esquema no es solamente la de minimizar la interferencia multiusuario en la detección, sino también la de minimizar el efecto multiusuario en la etapa de adquisición. La adquisición y tracking se resuelven con una estructura adaptativa multiresolutiva [6]. Una vez el receptor está sincronizado, un detector estima el subespacio interferente para minimizar su interferencia. La etapa de detección aporta información de la distorsión del canal y la realimenta para mejorar la robustez del sistema de adquisición. G. Niveles de potencia Como se ha dicho en el apartado de bases del diseño, los niveles de potencia se han extraído tomando como referencia Bluetooth y WLAN (802.11b/802.11g), de forma que se disponga de cobertura suficiente en el interior del recinto. H. Banda y canales de frecuencia El sistema descrito trabaja en la banda ISM (2.4 GHz), que según el CNAF3 se encuentra entre 2400 y 2483.5 MHz. Esta banda está destinada a aplicaciones industriales, científicas y médicas, de manera que es de libre utilización, por tanto habrá que tener en cuenta que podemos recibir interferencia del resto de aplicaciones que trabajen sobre estas frecuencias. I. Codificación de canal Para aumentar la calidad del enlace, se aplican dos tipos de codificación de canal. El primero de ellos es un código convolucional para la corrección de errores y el segundo se trata de un código de redundancia cíclica (CRC) que se utilizará para la medida de la calidad de cada una de las tramas de información enviada. Se ha tenido en cuenta en su diseño parámetros como la distancia libre o la ganancia de proceso y se han realizado estudios de BER utilizando la modulación seleccionada para ver la eficacia obtenida. 2 3 Minimun Mean-Square Cross-Correlation/Cross-Optimal Cuadro Nacional de Atribución de Frecuencias J. Sincronización de trama Se utilizará una cabecera transmitida en la trama de información. Se trata de una cabecera de 16 0’s y 1’s alternados, de manera que comparando en recepción la información recibida con el valor de la cabecera podremos encontrar el punto exacto de inicio de la trama. Para evitar que en los datos a enviar aparezca una secuencia igual a la cabecera se dispone de un algoritmo similar al “bit stuffing”, pero con la diferencia que en lugar de añadir bits los modificaremos en transmisión, recuperando la secuencia original en recepción. K. Control de potencia El control de potencia es esencial para facilitar la operación de un sistema CDMA debido a que todos los usuarios comparten la misma banda RF, de modo que cada usuario ve al resto como ruido y por tanto no interesa que ninguno interfiera innecesariamente sobre el resto. Con el control de potencia se vence el problema del nearfar y se maximiza la capacidad. Nuestro sistema será estático, debido a que una vez ubicados los equipos éstos no se moverán mientras operen, de forma que la necesidad de velocidad en el control de potencia no será elevada. Así, se utilizará la medida del FER (Frame Error Rate) calculado en la unidad central desde los arrays de micrófonos, dado que solamente habrá problemas de near-far en este enlace, para enviar los ajustes de potencia necesarios. III. PARÁMETROS DEL SISTEMA A continuación se muestran los diferentes parámetros del sistema, cuya discusión se ha hecho en el apartado anterior. Se proponen los diferentes valores a utilizar ya sea de longitud de secuencia PN o las funciones generadoras para el código convolucional. A. Capacidad del sistema Conociendo la fórmula de cálculo de la capacidad en un sistema CDMA [2] podríamos hacer una aproximación a la ganancia de proceso que deberá haber para poder así decidir la longitud de la secuencia pseudoaleatoria (PN). Se hallará la ganancia del sistema partiendo que la modulación que se utilizará será una DBPSK y que el BER mínimo necesario para aplicaciones de voz está en torno a 10-3. A partir de estas premisas se podrá saber cual es la relación Eb/N0 a a partir de la gráfica que podemos ver en la siguiente figura: L. Control automático de micrófonos De toda la información recibida desde los distintos arrays de micrófonos solamente se utilizará la que se hubiera captado con mayor nivel de presión sonora (SPL). Esta información se normalizará según un valor de referencia, el considerado de audición normal ( SPL = 70 dB ), y se enviará en cada trama de información para que la unidad central elija cual de los arrays utilizará como fuente de información. M. La trama de datos Las tramas de datos tienen una longitud de 416 bits cada 20 ms, obteniéndose así una velocidad de 20.8 kbps. Estas tramas son diferentes para el canal de tráfico y de control debido a que tienen un objetivo distinto dentro del sistema de comunicaciones [7]. Para el canal de tráfico se tiene: Fig. 3. Trama de datos sobre el canal de tráfico Por otro lado, para el canal de control: Fig. 5. BER frente Eb/N0 para DBPSK A partir de la gráfica anterior se observa que para un BER igual a 10-3 se obtiene una relación Eb/N0 de 7.9 dB, valor que será el que utilicemos en la ecuación de cálculo de la capacidad. Por otro lado tenemos que cada uno de los enlaces, ya sea entre unidad central y altavoces o bien arrays de micrófonos y unidad central, se transmitirán por dos canales de frecuencia diferentes, de forma que la capacidad se calculará para cada uno de ellos. Se plantea un número de conexiones de 9 por cada canal, teniendo en cuenta canales de tráfico y control, de manera que se puede ver que con una secuencia PN de longitud igual a 63 tenemos cubiertas las necesidades, facilitando igualmente el proceso de sincronización con la PN y relajando los requisitos de potencia de cálculo. A continuación se muestra el cálculo de la capacidad suponiendo que la interferencia debida al resto de "usuarios" hace despreciable el efecto del ruido térmico, que no hay reutilización de frecuencias por el hecho de no haber más celdas, que no se utiliza sectorización y que el factor de actividad de voz es 1: M = 1+ Fig. 4. Trama de datos sobre el canal de control (W R ) (Eb N0 ) = 1+ 63 7.9 10 = 11.2 ⇒ 11 usuarios (2) 10 Se puede observar que se alcanza el objetivo de capacidad, a pesar que hay que tener en cuenta que dicha capacidad podrá aumentar por el hecho de aplicar en recepción algún tipo de detector multiusuario, provocando una reducción de la interferencia, y también habrá que considerar el hecho que se utilizará codificación de canal para aumentar la calidad del enlace, pudiéndose así elevar el número de usuarios o bien mantenerlo en el caso de tenerse en cuenta el ruido de fondo. de interés, como son la simulación para el control del auditorio, control automático de micrófonos, niveles de presión sonora captados por los micrófonos, pérdidas de trayecto radioeléctrico en interiores y simulaciones del efecto near-far sobre el BER. B. Secuencias PN Como se ha comentado anteriormente, las secuencias que se utilizan son de longitud 63, disponiendo de 65 secuencias diferentes. Éstas serán secuencias Gold con fase inicial optimizada según MSQCC/CO. C. Niveles de potencia El margen de niveles de potencia seleccionados está entre 0 y 20 dBm para conseguir una cobertura entre 10 y 100 metros respectivamente. Estos valores coinciden con los dados en la especificación de Bluetooth [8], consiguiéndose así una cobertura máxima similar a la de 802.11b trabajando en interiores de edificios. D. Banda y canales de frecuencia El ancho de banda mínimo necesario será de BWmin=1.3104 MHz, que se aproximará a 1.4 MHz. Las frecuencias centrales definidas son para el enlace entre unidad central y altavoces de 2445 MHz y para el enlace entre arrays de micrófonos y unidad central de 2455 MHz. E. Codificación de canal El código convolucional tiene como parámetros k = 1, n = 2, K = 9 (bits de entrada, bits de salida y longitud de influencia o “constraint length”) y funciones generadoras (561,753) expresadas en octal, obteniéndose una distancia libre d free = 12 [9] y ganancia del código de: ⎛k ⎞ G = 10 log10 ⎜ d free ⎟ = 7.78 dB ⎝n ⎠ (3) donde: k : bits de entrada n : bits de salida d free : distancia libre Para evitar ráfagas de error se utiliza entrelazado de bloque con una matriz de 25 filas y 16 columnas. La información a enviar se coloca columna a columna y después se lee fila a fila. En el caso de ser necesaria una reducción del retraso introducido y cantidad de memoria requerida se podría plantear el uso de un entrelazado convolucional. Por otro lado, se dispone de un CRC de 12 bits generado a partir de la información de voz generada por el vocoder. El polinomio generador utilizado es el siguiente: G (x ) = x 12 + x 11 + x 10 + x 9 + x 8 + x 4 + x + 1 (4) IV. SOFTWARE Como complemento al protocolo de comunicaciones, se dispone de una serie de aplicaciones [7] para la simulación y dimensionado de una red de características similares a la aquí presentada. De esta manera el responsable de la red podrá tener una idea a priori de cuales serán sus necesidades. Este software, implementado en Matlab 6.5, consta de cinco interfaces gráficas en las que se tratan diversos temas Fig. 6. Niveles de presión sonora captados por los micrófonos V. CONCLUSIONES Se ha realizado el diseño de un protocolo para comunicaciones DS-CDMA en el interior de un auditorio. Se han contemplado los diferentes aspectos a tener en cuenta para alcanzar con éxito nuestro objetivo, y se han generado una serie de aplicaciones de ayuda al dimensionado del sistema. Disponiendo de este protocolo se puede pensar en diferentes aplicaciones a las que lo podríamos aplicar. Estas aplicaciones son por ejemplo una red domótica donde podríamos controlar los diferentes elementos que la forman, un sistema de alarmas donde aprovecharíamos las características de facilidad de instalación y reubicación de los dispositivos, o bien una combinación de componentes pertenecientes a distintas aplicaciones, donde todos ellos pudieran ser gestionados por nuestro sistema. REFERENCIAS [1] [2] [3] [4] [5] [6] [7] [8] [9] J. Gonzalvo, J.A. Morán and J. Melenchón, “Detección del ángulo de llegada con un array microfónico”, URSI-03, A Coruña, 2003 S. C. Yang, “CDMA RF System Engineering”, 1st.ed., United States of America: Artech House, Inc., 1998 TIA/EIA/IS-127, “Enhanced Variable Rate Codec, Speech Service Option 3 for Wideband Spread Spectrum Digital Systems”, Telecommunications Industry Association, 1997 TIA/EIA/IS-2000.2-A, “Physical Layer Standard for CDMA2000 Standards for Spread Spectrum Systems”, Telecommunications Industry Association, 2000 K. H. A. Kärkkäinen, “Influence of various PN sequence phase optimization criteria on the SNR performance of an asynchronous DSCDMA system”, IEEE MILCOM, pp. 641-646, 1995 R. M. Alsina, J.A. Morán and J.C. Socoró, “Multiresolution adaptative structure for acquisition and detection in DS-SS digital receiver in a multiuser environment”, ISSPA, 2003 C. Monzo, “Disseny d’un protocol per comunicacions DS-CDMA orientades a la gestió d’un auditori”, PFC, Barcelona: Enginyeria i Arquitectura La Salle (URL), 2003 Bluetooth 1.1 Core Specifications, “Specification of the Bluetooth System”, Bluetooth, 2001 J. G. Proakis, “Digital Communications”, 3rd.ed., New York: McGrawHill, 1995