Está en la página 1de 9

SISTEMA INALÁMBRICO PARA LA REALIZACIÓN DE

PEDIDOS, CONTROL DE INVENTARIO Y
FACTURACIÓN CON APLICACIÓN PARA
RESTAURANTES Y SIMILARES
Juan David Uribe, Nicolás Revollo y Víctor Hugo Borrero
Director: Elkin Eduardo García

Resumen — En este proyecto se realiza un sistema
que permite tomar los pedidos de un restaurante, I. INTRODUCCION
bar o similar, almacenándolos en una base de
datos con el ánimo de utilizar esta información
posteriormente, por ejemplo, para la facturación
de cuentas. La adquisición de los pedidos es
D entro del rol de funcionamiento de
restaurantes, bares y discotecas de gran
tamaño y con un elevado número de clientes, se
realizada por el mesero quien cuenta con un hace necesario crear un sistema que permita
módulo llamado Wireless Order, este módulo se manejar la información de una forma más eficiente
comunica de forma inalámbrica con un dispositivo que la lograda con los procesos tradicionales. Para
central llamado Control Order, quien es el la correcta administración de este tipo de
encargado de la recepción de los pedidos y el establecimientos es importante tener un acceso
envío a un ordenador por medio del puerto USB. sencillo a información como: ventas por día,
Dentro del ordenador los datos son manejados por ventas realizadas por mesero, número de platos
los programas Visual Basic y Microsoft Access, el vendidos de cada tipo, cantidad de botellas
objetivo principal de este proyecto es disminuir el vendidas de cada marca y tipo de licor, etc. Con
tiempo que tarda el mesero en llevar la orden a la este tipo de información se facilita realizar la
cocina y realizar una adecuada organización de los contabilidad de los negocios, se pueden realizar
datos utilizando bases de datos. análisis estadísticos que permiten hacer
proyecciones sobre el comportamiento de la
Abstract— This project has been developed as a clientela, identificar cuales son los productos más
system in which the user can take orders in vendidos, de cuales es necesario tener una mayor
different places such as restaurants, pubs or clubs reserva y “medir” la capacidad de trabajo de los
keeping it in a database that allows to use the meseros según la cantidad de ventas realizadas.
information for example to make the receipts.
Using the module “Wireless Order” the waiter Por medio de este proyecto se desarrolló un
places the order, this module has wireless sistema que proporciona las herramientas
communication to a central device called adecuadas para optimizar la administración y
“Control Order”, which is in charge of taking the operación de restaurantes, bares, discotecas y
orders and send them to a computer through the establecimientos similares. Con el sistema creado
USB bus, the database is managed by Visual se pueden realizar pedidos y la facturación de
Basic and Microsoft Access Software. The main cuentas, al implementar una comunicación
objectives of this project are to decrease the time inalámbrica entre los módulos que componen el
in which the waiter takes the order to the kitchen producto creado.
and to make appropriate organization of the
information in a central database. Para el fortalecimiento del establecimiento es
conveniente reducir los tiempos de atención al
Índice de Términos – Automatización de cliente, este tiempo puede ser dividido de la
Restaurantes, Universal Serial Bus (USB), siguiente forma:
Transmisión de RF, Bases de Datos, Interfaz
Gráfica Visual Basic.
1. Tiempo que tarda el mesero en ir a la
mesa y entregar la carta.
2. Tiempo que tarda el mesero en tomar el
pedido.
3. Llevar el pedido a la cocina y/o a la barra
de bebidas.
4. Preparar los alimentos y/o bebidas. CONTROL ORDER
C
5. Llevarlos a la mesa. Módulo LCD O
N
T Receptor /
R
M icrocontro lador Transm isor
O
Teclado L Microcontro lador USB

El primer y cuarto tiempo se pueden disminuir A
Receptor /
C
contratando más personal o reduciendo las labores WIRELESS ORDER
Transm isor C
E
de cada empleado, el segundo tiempo depende del S
O
cliente por lo cual disminuirlo está fuera del Módulo LCD
A
COMPUTADOR

alcance del proyecto, mientras que el tercer y L

SISTEMA OPERATIVO
quinto tiempo dependen básicamente del mesero. Teclado
M icrocontro lador
M
E &
Mediante el sistema que se diseñó, cada mesero Receptor /
D
I ACCESS
O
va a suprimir el tercer tiempo, pues los pedidos WIRELESS ORDER
Transm isor

serán enviados a la cocina y barra de bebidas de
Figura 1. Diagrama en Bloques del Proyecto.
forma remota e inalámbrica, de esta forma se
disminuirán las labores asignadas a cada mesero
reduciendo también el primero de los tiempos y A. Módulo Wireless Order
logrando así una mayor eficiencia en el proceso de
servicio y atención al cliente. El bloque llamado Wireless Order representa el
módulo con el cual cuenta cada mesero para
Por otra parte un problema frecuente que se realizar los pedidos, cada módulo de este tipo está
presenta en este tipo de establecimientos, dividido por varios bloques internos encargados de
especialmente en bares y discotecas, consiste en llevar a cabo funciones específicas. El elemento
que la cuenta de una mesa normalmente no la más importante de este módulo es el
cancela solo una persona, sino que cada cliente microcontrolador PIC 18F452 [1], es responsable
cancela lo que consumió él y sus acompañantes; del procesamiento de los datos y de la interacción
mediante una identificación con un número para con los otros elementos del módulo.
cada cliente, se permite manejar un tipo de
facturación personalizada ofreciendo un valor El bloque Receptor / Transmisor de RF
agregado al cliente final. implementado con los dispositivos TLP / RLP434
[2], es el encargado de comunicarse con el módulo
El sistema desarrollado está compuesto por los Control Order mediante modulación digital ASK
siguientes módulos: [3], su función consiste en enviar los datos
relacionados con los pedidos digitados por el
• Wireless Order: Utilizado por el mesero mesero y realizar un Handshake con el Control
para tomar los pedidos de los clientes. Sus Order indicando si la transmisión fue o no
principales funciones son: Adquisición de exitosa.
pedidos, proveer los medios necesarios
para la visualización de la información El bloque de visualización está compuesto por el
(Menú) y realizar la transmisión de la módulo LCD de 2 líneas, cada una con 16
información mediante RF. caracteres, a través de este display se visualizan
los mensajes o instrucciones para el usuario y los
16 productos almacenados en la memoria del
• Control Order: Es el módulo encargado de
microcontrolador que controla el módulo. La
recibir la información que es transmitida
principal función de este bloque es mostrar los
por el Wireless Order, adicionalmente
datos al usuario final de la forma más sencilla
envía los datos a la base de datos que se
posible.
encuentra en el PC a través del puerto USB.
El mesero interactúa con el Wireless Order
mediante un teclado alfanumérico de 16
caracteres, escogiendo la información que desea
II. DESARROLLO
transmitir acorde con el pedido de cada cliente.
Este bloque se llamó “Adquisición de Pedidos”. El
E l sistema realizado está dividido en dos
bloques básicos que corresponden a cada uno
de los módulos desarrollados, estos bloques son
teclado utilizado en este bloque es un periférico de
entrada y su comunicación con el
microcontrolador es unidireccional
mostrados en la figura 1.
Como se expuso anteriormente, una de las
principales funcionalidades provistas por el
Wireless Order permite enviar el pedido de forma
inalámbrica mediante señales de RF utilizando
modulación ASK [3], esta información se organizó
en dos bytes que contienen los siguientes datos:
mesero que realizó el pedido, mesa en la que se B. Módulo Control Order
encuentra el cliente, identificador de cliente y
producto que se ordenó. Las principales funciones del módulo Control
Order son las siguientes:
En la figura 2 se observa el formato del datagrama
enviado por el módulo Wireless Order al Control • Transmisión y Recepción de datos
Order. mediante RF.
• Comunicación con el Ordenador.

El módulo Control Order está compuesto por un
bloque interno Receptor / Transmisor de RF
Figura 2. Datagama utilizado para la comunicación entre el encargado de comunicarse, mediante modulación
Wireless Order y Control Order. ASK [3], con cada uno de los Wireless Order que
se tengan activos en el establecimiento. Como se
El preámbulo está compuesto por 30 unos lógicos explicó en el literal A, se implementó un simple
que se envían para lograr que el canal de protocolo de handshake que le permite al mesero
comunicaciones se establezca y generar así una ser informado sobre posibles fallas de transmisión
sincronización, después de este preámbulo se debido a colisiones y pérdida de información.
envía un bit de inicio, que es un cero lógico el
cual indica que los próximos dos bytes que van a Para la funcionalidad que provee la comunicación
llegar son los datos del pedido. con el Ordenador en el que se encuentra la base de
datos, se decidió utilizar el protocolo USB debido
Se utiliza codificación por ancho de pulso para a las altas prestaciones de este bus como lo son:
lograr la sincronización entre el transmisor y altas velocidades de transferencia, facilidad plug-
receptor, esta codificación consiste en enviar una and-play, alta escalabilidad, Hot-pluggable y a la
señal de periodo constante y para la afinidad del mercado de la informática con este
representación de datos binarios se modifica el estándar. Debido a que la aplicación desarrollada
ciclo útil de la señal, la representación de un uno no tiene altos requerimientos de velocidad para la
lógico es la señal con ciclo útil de 0.75 y para la transmisión de los datos entre el Control Order y
representación de un 0 lógico es la señal con ciclo el Ordenador, se decidió utilizar la tasa de
útil de 0.25, en la figura 3 se observa la transferencia Full-Speed definida en [4], de igual
transmisión de 111010100. forma, como se transmite un volumen de datos
pequeño en cada transferencia y no se tienen las
necesidades de una aplicación “Real-Time” se
utilizó el tipo de transferencia Interrupt [4].

Figura 3 Ejemplo de codificación por ancho de pulso de la El elemento más importante del módulo Control
señal binaria 111010100. Order es el microcontrolador PIC 18F2550 [5],
El pedido (datagrama) es enviado dos veces por el cuya principal característica es que posee los
Wireless Order con el ánimo de proveer la módulos necesarios para implementar la
redundancia necesaria para garantizar una comunicación a través del puerto USB. Este
comunicación libre de errores, cuando el Control microcontrolador facilita la implementación del
Order recibe los dos datagramas los compara, si estándar USB versión 2.0 mediante el SIE (Serial
los dos bytes de información son iguales envía Interface Engine) y el transceptor interno que
una señal de ACK indicando que el proceso de acondiciona las señales transmitidas a este puerto.
transmisión fue realizado exitosamente, si la
comparación de la información muestra que los Para la comunicación con el Ordenador a través
bytes recibidos no son iguales, enviará una señal del bus USB se configuraron cuatro endpoints y
de NAK, solicitando de esta forma una dos pipes en el módulo Control Order, los
retransmisión que será realizada automáticamente primeros dos endpoints (identificados con el
por el Wireless Order involucrado en la número cero), son utilizados para las
comunicación. Si el módulo del mesero no recibe transferencias de Control que le permiten al Host
ninguna señal, él automáticamente retransmitirá la USB obtener la información más relevante del
información, si nuevamente no obtiene ninguna dispositivo y configurarlo, los otros dos endpoints
respuesta mostrará un mensaje indicándole al (identificados con el número uno), se utilizan para
mesero que ha ocurrido un error. las transferencias por Interrupción en las cuales se
envían los dos bytes descritos en el literal A. Cada
uno de los endpoints configurados tiene un buffer
en el que se almacena la información recibida o la
información que se quiere transmitir hacia el Host, ubicando al dispositivo en el estado
estos buffers son independientes y cada uno es “Dirección”.
configurado y controlado por cuatro registros del 6. El Host pide los 18 bytes correspondientes al
microcontrolador que son conocidos como BD descriptor del dispositivo.
(Buffer Descriptor). La figura 4 muestra un 7. El Host pide los 9 bytes del descriptor de
ejemplo del buffer y BD asociado con el endpoint configuración.
cero, la dirección del buffer en este caso es igual a 8. El Host pide los descriptores de cadena si
500H y el tamaño del paquete será de 40H = 64 fueron especificados.
bytes[5].
Cuando se ha terminado el octavo paso de este
proceso el dispositivo estará configurado y listo
para ser utilizado.

Para la segunda situación se envía la información
que recibió el Control Order a través de RF desde
el módulo Wireless Order. Después de comprobar
que los dos bytes de información llegaron sin
errores, estos bytes son copiados en el espacio de
la memoria del microcontrolador que es conocido
como “USB RAM” en donde se encuentran los
buffers de los endpoints. Mediante los registros de
Figura 4. Ejemplo del Buffer y BD del endpoint Cero. control de este buffer se configura la transmisión.
En este momento el microcontrolador quedará
Básicamente la comunicación entre el Control esperando a que el Host lo atienda para enviar la
Order y el Ordenador se realiza en dos posibles información digitada por el mesero desde el
situaciones: módulo Wireless Order.

• Cuando se configura el dispositivo.
• Cuando se envía la información C. Base de Datos e Interfaz Gráfica
relacionada con el pedido.
Después de que se haya completado el proceso de
Cuando el dispositivo se conecta al puerto USB, enumeración al que se hace referencia en el literal
el Host deberá configurarlo según sus B, el Host tiene la información completa de los
características y requerimientos específicos, esta descriptores de la función. El sistema operativo
información se encuentra almacenada en varios (SO), en este caso windows XP reconoce que el
descriptores que son enviados por el Control dispositivo conectado al puerto USB es de tipo
Order tras la solicitud del Host. El proceso Human Interface Device (HID) [6]. Para realizar
mediante el cual se configura el dispositivo es con éxito el intercambio de información entre el
conocido como Enumeración y está compuesto dispositivo y el Host es necesario que éste use
por los siguientes pasos: drivers tipo HID que se encuentran en el core de
Windows XP.
1. El Host o Hub detecta la conexión del
dispositivo a través de las resistencias de pull- Los drivers que proporciona el SO son una
up que éste posee. El Host espera por lo agrupación de Applications Programming
menos 100ms permitiendo que se termine el Interface (APIs) [7] que ejecutan diversas
proceso de inserción y que sea estable la acciones sobre un mismo tema. El SO carga
alimentación del dispositivo. En este estado el automáticamente todos los drivers que poseen
dispositivo está en el estado “Encendido”. funciones relacionadas para manejar dispositivos
2. EL Host reinicia el dispositivo para llevarlo al HID para que después puedan ser invocados desde
estado “Por Defecto”. En este momento el lenguajes de alto nivel como Visual Basic.
dispositivo se comunicará a través de la
dirección por defecto cero. Para el desarrollo del software Control Order se
3. El Host pide los primeros 64 bytes del usó la librería mcHID.dll de acceso gratuito en
descriptor del dispositivo. Internet. Esta librería fue desarrollada por
4. Después de recibir los primeros 8 bytes del Mecanique UK [8], y agrupa APIs especiales cuya
descriptor del dispositivo, el Host realiza otro principal función es la de facilitar la comunicación
reset del bus. y el intercambio de información entre dispositivos
5. Ahora el Host efectúa un comando para HID que usan microcontroladores de la familia
asignarle al dispositivo una dirección única, 18fxx5x, y el Host.
El programa que se desarrolló en Visual Basic el programa está listo para leer información y
consta básicamente de 2 secciones. La primera es almacenarla en la base de datos, si no, el programa
el formulario donde está el programa principal no inicializa.
que realiza todos los procedimientos y llamadas a
las funciones y la segunda es un modulo de clase 2. Lectura y almacenamiento de los datos
donde se realizan las declaraciones de las APIs y
la base de datos. A continuación se explica como Cuando el Host en el ciclo de polling, atiende al
se invoca una funcion API [7], además de la dispositivo y éste tiene información para
estructura de la base de datos. transmitirle, el driver encargado de la
comunicación genera un mensaje de notificación.
Una función API se invoca a través de la Una vez el programa haya sido notificado, invoca
sentencia Declare, donde se especifica en qué al API que se encarga de almacenar la información
librería está la función, qué parámetros se le leída en un buffer de memoria del Host. A
envían y qué tipo de variable retorna. Éstas continuación los bytes transmitidos se copian en
pueden ser llamadas en cualquier momento de un vector donde se encuentran todos los datos
ejecución del programa si se declaran de manera enviados por el Wireless Order en transacciones
global. Como se dijo anteriormente en éste anteriores. Cada posición del vector corresponde a
módulo también se define y se invoca la base de un byte de información y se van almacenando
datos, ésta se desarrolló en Microsoft Access que según el orden de llegada, es decir el último byte
es una aplicación de Microsoft Office. La que llegó está en la última posición del vector.
estructura correspondiente se ilustra en la Después de esto viene el proceso de
siguiente tabla. decodificación. La penúltima posición del vector
es el primer byte almacenado y éste contiene la
CAMPO DESCRIPCION
TIPO DE información del mesero, el cliente y la mesa,
DATO mientras que la última posición es el segundo byte
a0 Hora en la que se tomó el Fecha/Hora
pedido que contiene la información correspondiente al
a1 Fecha en la que se tomó el Fecha/Hora producto. Esto es mostrado en la interfaz gráfica y
pedido almacenado en la base de datos en los campos
a2 Orden de pedido Texto descritos anteriormente.
a3 Producto pedido Texto
a4 Mesero que realizó el Texto
pedido 3. Generación de reportes.
a5 Mesa a la cual corresponde Texto
el pedido Después de tener la información de los pedidos
a6 Cliente que realizó el Texto almacenada en la base de datos, sigue el proceso
pedido
a7 Valor del producto pedido Moneda
de generación de reportes. Esto consiste en
a8 Muestra si está activo o Texto realizar búsquedas de registros que cumplan
facturado ciertos criterios. Estas búsquedas que se realizan
Tabla 1. Estructura de la base de datos sobre la base de datos se logran ejecutando
sentencias SQL [9]. El resultado de la búsqueda
En el formulario principal está el programa que será mostrada en la interfaz gráfica.
permite interactuar con el dispositivo HID, a
través de las funciones declaradas en el módulo de
clase. El programa se puede dividir en 3 procesos III. ESPECIFICACIONES
importantes. El primero es el de conexión y
desconexión, el segundo es de lectura y A continuación se exponen las especificaciones
almacenamiento de la información en la base de eléctricas del módulo Control Order.
datos y el tercero es la generación de reportes.
• Voltaje de entrada: 12V DC.
1. Conexión y desconexión • Corriente de entrada sin estar conectado
al puerto USB: 14mA.
En el momento en que se carga el formulario se • Corriente de entrada estando conectado al
invoca el API encargado de establecer la conexión puerto USB sin actividad RF: 32mA.
con el dispositivo, si la función notifica que el • Corriente de entrada estando conectado al
proceso fue exitoso se procede a leer la puerto USB con actividad RF: 38mA.
información correspondiente de los
identificadores del dispositivo. Para que el Las especificaciones eléctricas del módulo
programa solamente funcione con nuestro Wireless Order se muestran a continuación:
producto, se declararon 2 variables que tienen el
valor del ID del fabricante y el ID del producto
• Voltaje de entrada: 8.4V DC.
que tiene el microcontrolador 18F2550 en su
memoria de programa. Si estos valores coinciden,
• Corriente de entrada sin estar encendida similares a los presentados en restaurantes, bares y
la luz del display y sin estar realizando similares. Se realizaron tres pruebas para
transmisiones: 16mA. determinar el alcance de RF en tres escenarios
• Corriente de entrada con la luz del distintos, el primero de ellos al aire libre, el
display encendida y sin estar realizando segundo en un ambiente cerrado y el último en un
transmisiones: 144mA. ambiente cerrado pero ubicando el Control Order
• Corriente de entrada sin estar encendida y los Wireless Order en pisos distintos. A
la luz del display y realizando continuación se exponen los resultados obtenidos.
transmisiones: 33mA.
• Corriente de entrada con la luz del A. Pruebas en ambiente cerrado – Mismo
display encendida y realizando Nivel
transmisiones: 161mA.
Las pruebas realizadas en este ambiente
Debido a que la batería que se está utilizando es consistieron en realizar 40 transmisiones desde
recargable con una autonomía de 170mAh, dos puntos distintos (con dos Wireless Order
suponiendo que el 80% del tiempo el modulo se distintos) de un apartamento con un solo nivel y
encuentra sin realizar transmisiones y con la luz un área aproximada de 104m2, específicamente se
del display apagada, el 15% del tiempo el módulo realizaron 3 pruebas de este tipo atravesando como
se encuentra sin realizar transmisiones y con la luz máximo 4 paredes.
del display encendida, el 4% del tiempo el módulo
se encuentra realizando transmisiones con la luz
del display apagada y el 1% del tiempo el módulo
se encuentra realizando transmisiones y con la luz
del display prendida, se obtendría que la que la
corriente promedio sería de 37.33 mA.
Tabla 2. Resultados Obtenidos Pruebas Ambiente Cerrado –
Mismo Nivel
Si la corriente promedio es de 37.33mA y la
autonomía de duración de la batería es de Desde cada uno de los módulos Wireless Order se
170mAh, obtendríamos que la carga de la batería realizaron 20 transmisiones en cada una de las
dura en promedio 4.55 horas, para determinar este pruebas, obteniendo un total de 120 transmisiones
tiempo se utilizó la ecuación 1. en el ambiente cerrado – mismo nivel. La cuarta
columna de la tabla anterior (Cantidad Errores)
indica cuantas transmisiones, de las 20 realizadas,
170mAh fueron “No Exitosas” en la primera transmisión y
= 4.55h (1)
requirieron que el “mesero” retransmitiera el
37.33mA
pedido enviado. Una transacción “No Exitosa” se
debe entender como una transmisión en la que se
La velocidad de transmisión de datos desde el envió un pedido, dicho pedido no llegó al módulo
Wireless Order al Control Order y viceversa es de Control Order y el “mesero” fue informado de
1Kbps teniendo en cuenta que el datagrama esto para que retransmitiera el pedido tomado. En
cuenta con 30 bits de preámbulo, uno de inicio y la quinta columna (Retransmisiones x 1) se indica
16 de datos, obtendríamos que la velocidad de cuantos pedidos de los que no llegaron en la
transmisión de solo los datos es de 340 bps, esta primera transmisión, llegaron correctamente en la
velocidad se calcula en la ecuación número 2. segunda transmisión. La sexta columna
(Retransmisiones x 2) se muestra cuantos pedidos
16bits × 1Kbps de los que no llegaron en la primera, ni en la
≈ 340bps (2) segunda transmisión llegaron en la tercera
47bits
transmisión.
El datagrama total tiene 47bits de tamaño, Aunque las 120 transmisiones no se realizaron
teniendo en cuenta que cada tiempo de bit es de 1 desde los mismos puntos, y el lector puede
mseg, se tiene que el envió de un datagrama dura considerar como un error manejar los datos
47mseg. obtenidos como si provinieran de una única
prueba, es importante recordar que el objetivo de
estas tres pruebas consistía en calcular el
IV. RESULTADOS porcentaje de fallas en las que se requiere realizar
retransmisiones para el ambiente cerrado – mismo
C on el ánimo de mostrar los resultados
obtenidos, es necesario realizar pruebas que
permitan ver su funcionamiento en ambientes
nivel.
La ecuación 3 muestra un cálculo del porcentaje distancia del Control Order, el resultado de esta
de transmisiones en las que se recibió prueba se muestra en la tabla 4.
exitosamente la información en el primer intento.

 120 − 9  (3)
PEXITO PRIMERA TX =   *100% = 92.5%
 120 

La siguiente ecuación muestra el cálculo del
Tabla 4. Resultados Obtenidos Pruebas a dos pisos de distancia
porcentaje de transmisiones en las que se recibió
exitosamente la información en el segundo
intento. Como se mostró en la tabla 2, 7 Con esta prueba se obtiene el siguiente porcentaje
transmisiones no fueron exitosas en el primer de éxito para el primer intento.
intento.
128−3
TX = *100%=97.65%
PEXITOPRIMERA (6)
 7  (4)  128 
PREQUERIR UNA RETRANSMISIÓN =  *100% = 5.83%
 120 
Mediante estas pruebas se demostró que el sistema
La ecuación 5 muestra el cálculo del porcentaje de tiene la capacidad de realizar pedidos desde pisos
“pedidos” en los que se requirieron realizar 2 distintos, obteniendo un alto porcentaje de
retransmisiones para que la información llegara al transmisiones exitosas en el primer intento. Estos
módulo Control Order. Como se mostró en la resultados se obtienen como consecuencia de la
tabla 2, dos “pedidos” se debieron retransmitir dos frecuencia de transmisión utilizada en los módulos
veces para que fueran exitosas. desarrollados, debido a que el tamaño de la
longitud de onda es grande en comparación con la
longitud de onda para transmisores que operan a
 2  (5)
PREQUERIR DOS RETRANSMISIÓNES =   *100% = 1.66% una frecuencia mayor, esta longitud de onda
 120 
mayor resulta en que las señales no se atenúan de
Para fines comerciales consideramos que el forma considerable cuando atraviesan obstáculos.
porcentaje de éxito de transmitir en el primer
intento tiene que ser aproximadamente del 90%, C. Pruebas en ambiente abierto
siendo consecuentes con esta especificación, se
puede concluir que el sistema desarrollado El objetivo para el cual se diseñaron y se
satisface las expectativas de un usuario final realizaron estas pruebas, es saber la máxima
promedio. distancia a la cual el Control Order puede recibir
información de manera correcta de los 2 módulos
B. Pruebas en ambiente cerrado – Distintos Wireless Order en un ambiente al aire libre.
Niveles
Para lograr esto se ubicó el Control Order en un
Algunos de los restaurantes y bares operan en sitio donde no hubiera interferencia visual por
construcciones con más de una piso, para simular parte de ningún objeto. A continuación, se fijaron
este escenario se decidió realizar pruebas en una cuatro puntos de referencia separados entre ellos
casa, realizando transmisiones desde dos distintos 10 m para que desde ahí se hicieran las
pisos, el Control Order siempre permaneció en el transmisiones de pruebas. En la tabla 5 se
primer piso y se realizaron transmisiones desde muestran los resultados para el módulo 1 y en la
los Wireless Order a un piso de distancia y luego tabla 6 para el módulo2.
a dos pisos de distancia del Control Order, la
primera prueba consistió en realizar 64 pedidos
desde cada Wireless Order a un piso de distancia
del Control Order, el resultado se muestra en la
tabla 3.

Tabla 5. Resultados obtenidos Wireless Order 1

Tabla 3. Resultados Obtenidos Pruebas a un piso de distancia

La segunda prueba consistió en realizar 64
pedidos desde cada Wireless Order a dos pisos de Tabla 5. Resultados obtenidos Wireless Order 2
En cada punto de referencia se hicieron 16 Control Order, para hacer esta prueba se hace
transmisiones que corresponden al número de necesario desinstalar los controladores del Control
platos disponibles en el Wireless Order. Para el Order cada vez que se conecte y desconecte , ya
módulo 1 a los 10m todas las transmisiones que si se conecta por segunda vez sin desinstalar
fueron exitosas, a los 20m y a los 30m 2 los controladores este detecta el dispositivo, pero
transmisiones fueron no exitosas, y a los 40m no le es necesario instalarlo.
ninguna transmisión fue exitosa. Para los 20m
solo fue necesaria una retransmisión y para los
30m dos retransmisiones. Para el modulo 2 a los
10 m todas las transmisiones fueron exitosas, a los
20 m hubo un error que con la primera
Figura 5. Mensaje de WinXP cuando reconoce por primera vez
retrasmisión fue suficiente para recibir con éxito el Control Order.
el pedido, lo mismo sucedió a los 30 m, y a los 40
m no se recibió ningún pedido de las 16 La segunda prueba que se realizó consistió en
transmisiones realizadas. Como a los 40 m no fue conectar y desconectar el Control Order en 50
exitosa ninguna transmisión y a los 30 m fue alto ocasiones sin desinstalar los controladores, el
el porcentaje de las transmisiones exitosas se 100% de las pruebas fueron exitosas.
hicieron pruebas desde los 35 m con los dos
módulos enviando información de manera
intercalada evitando las transmisiones V. CONCLUSIONES
simultáneas. Transmitimos 2 veces cada producto,
completando 32 por cada módulo y 64 en total. En El Sistema realizado cumple con los objetivos
este caso 37 transmisiones fueron exitosas y 27 propuestos en el Proyecto de Grado, ya que desde
erróneas. los módulos Wireless Order se están realizando
los pedidos logrando identificar la mesa, el cliente
Después de realizar los cálculos de porcentaje de específico y el producto solicitado, también los
transmisiones exitosas en el primer intento y datos están siendo reconocidos e ingresados
como se dijo anteriormente, concluimos que la satisfactoriamente a la base de datos y en ésta se
máxima distancia a la cual el porcentaje de generan los reportes de ventas, adicionalmente el
envíos exitosos en el primer intento es de 90% es código de detección de errores implementado para
de 30m. la transmisión de RF fue exitoso, ya que el
operador del módulo Wireless Order sabrá cuando
D. Pruebas Realizadas Base de Datos hay un error.
Para evaluar el desempeño de la base de datos y Los procesos de un restaurante, bar o similar que
verificar su correcto funcionamiento no se fueron optimizados mediante este proyecto fueron
requirieron realizar pruebas adicionales, se los siguientes: Eliminación del tiempo requerido
reutilizó la información recolectada en las pruebas por el mesero para llevar el pedido a la cocina,
explicadas en el literal A. Como se mencionó supresión de los medios tradicionales para la toma
anteriormente se realizaron 120 transmisiones en de pedidos, las cuentas de una misma mesa son
el Ambiente Cerrado – Mismo Nivel, 384 en el separadas permitiendo crear cuentas
Ambiente Cerrado – Distintos Niveles y 192 en el independientes y la información de los pedidos se
Ambiente Abierto, para obtener un total de 696 centraliza en un solo archivo permitiendo un fácil
transmisiones o pedidos, el 100% de los datos acceso a los usuarios (por ejemplo el
enviados desde los módulos Wireless Order administrador).
fueron almacenados en la base de datos sin
presencia de errores. Este proyecto de Grado es un importante avance
para el desarrollo de la automatización de
E. Pruebas Sistema Operativo restaurantes en Colombia, ya que el precio de
sistemas similares a nuestro proyecto están
Las pruebas que se hicieron con respecto al alrededor de 3 ó 4 veces el precio de nuestro
sistema operativo consistieron en verificar que el sistema, esto se estimó según [11], esta relación
sistema operativo en nuestro caso el Windows costo beneficio hace factible que los propietarios
Xp[5], detectara el Control Order cuando es de restaurantes opten por realizar una
conectado mediante un puerto USB por primera automatización en su establecimiento.
vez, en la figura 64 se muestra el mensaje de
detección arrojado por el Windows XP cuando se La comunicación a través del puerto USB se
conecta el Control Order por primera vez, esta realizó de forma exitosa a la tasa de transferencia
prueba se hizo 25 veces y en las 25 veces el Full-Speed [4], aprovechando todas las
sistema operativo detectó correctamente el prestaciones de este bus como lo son las
facilidades plug-and-play, Hot pluggable, alta [3] M. Schwartz, Information Transmission,
escalabilidad y la afinidad del mercado de la Modulation, and Noise, 4/e, McGraw Hill,
informática con este estándar. 1990.
[4] Universal Serial Bus Specification, Revision
El sistema desarrollado puede ser mejorado en 2.0, April 27 / 2000. Disponible en internet en
varios aspectos con el objetivo de acercarse más a www.usb.org .
los requerimientos de un producto comercial, [5] Microchip, Inc. Microprocessor PIC
como por ejemplo, aumentar la cantidad de 18F2455/2550/4455/4550 User’s Manual
productos, utilizar transceptores de RF que Part Number: mc671uk.
soporten comunicación full duplex, implementar [6] Device Class Definition for Human Interface
un sistema para que el cliente pueda realizar sus Devices, Version 1.11, Junio 27 / 2001.
pagos por medio de tarjeta débito o crédito a [7] http://www.msdn.microsoft.com, información
través del módulo Wireless Order, efectuar un sistemas operativos Microsoft.
código de redundancia cíclica para la corrección [8] http://www.mecanique.co.uk/ Proveedores de
de errores, entre otros. software
[9] http://www.sql.org Información de lenguage
El sistema desarrollado se desempeña de forma de acceso a bases de datos.
exitosa realizando transmisiones de datos en [10] Los Restaurantes de la economía
ambientes con obstáculos (paredes, muebles, Colombiana, ACODRÉS – Asociación
placas de concreto, electrodomésticos, puertas, Colombiana de la industria Gatronómica.
etc), alcanzando las distancias necesarias para [11] Soluciones Moviles, Tango Software House
cubrir los distintos ambientes de diferentes tipos Inc, disponible en Internet en
de restaurantes (campestres, cerrados, mixtos, http://www.tangosofthouse.com
etc). En caso de requerir mayores distancias de [12] Laipac, Inc. Datasheet RLP/TLP 434,
transmisión se pueden reemplazar los dispositivos de transmisión inalámbrica,
transmisores de RF por unos de mayor potencia, disponible en Internet en
como por ejemplo el TLP434A fabricado por [12], http://www.laipac.com..
estos transmisores son compatibles con los
receptores utilizados en este proyecto, de esta
forma su adaptación es muy sencilla.

Este proyecto está diseñado para optimizar las
tareas de un restaurante, bar o similar,
adicionalmente, el sistema desarrollado puede
adaptarse a otro tipo de aplicaciones que requieran
transmitir información de forma remota desde
múltiples puntos hacia un ordenador para ser
procesada posteriormente. Algunos ejemplos de
estas aplicaciones se presentan en cultivos de
flores, supermercados, bodegas, etc.

El esquema diseñado para la transmisión de
información a través de RF fue exitoso, se
implementó un sencillo sistema de redundancia
que reconoce la presencia de errores,
retransmitiendo la información desde el Wireless
Order de forma automática e informándole al
mesero cuando se vuelve a presentar un error para
que éste retransmita el pedido de forma manual.

VI. REFERENCIAS

[1] Microchip, Inc. Microprocessor PIC
18F242/252/442/452 User’s Manual Part
Number: 39564a.
[2] Laipac, Inc. Datasheet RLP/TLP 434,
dispositivos de transmisión inalámbrica,
disponible en Internet en
http://www.laipac.com.