Mostrando entradas con la etiqueta software. Mostrar todas las entradas
Mostrando entradas con la etiqueta software. Mostrar todas las entradas

lunes, 11 de enero de 2010

C-Aplicacion de sensores en el trafico de vehiculos

Este ha sido el titulo de mi exposicion de hoy para la asignatura Bases Metodologicas de los Sistemas de Software del Master ISIA.
Le propuse al profesor este tema porque pensaba hacer un trabajo sobre la regulacion de intersecciones con semaforos aplicando sensores wireless, pero mirando articulos vi que se podia ampliar el tema y asi se lo propuse, admitiendomelo.
El buscar articulos fue algo complicado ya que si buscas "trafico wireless" te salen un monton de articulos hablando sobre el trafico "informatico", no el de vehículos.
El trabajo final, de donde he extraido la exposicion, ya lo tengo casi listo y abarca los siguientes temas:
1-Montaje de un sistema de monitorizacion wireless: Describo los pasos que siguio el equipo de la Universidad de Montana para el montaje de su red para el sistema de trafico inteligente.
2-Cinemometros: Describo el funcionamiento de los radares y su evolucion.
3-Regulacion semaforica: Describo como se aplican formulas matematicas para regular automaticamente un cruce semaforico (en la realidad poco se aplica y la teoria, a mi parecer, falla). Tambien como ha ido evolucionando el recuento de vehiculos desde que se hacia con lapiz y papel a los sensores que se ubican en el suelo.
4-Vehiculos automaticos: Describo los avances de investigacion en este tema y hago alusion a un sistema bayesiano para un ejemplo utilizando multisensores.
5-Carreteras inteligentes y vehiculos inteligentes: Breve descripcion de conceptos ya que el tema aun esta solamente planteado pero nadie se decide a meterle mano.
6-Conclusion y trabajos futuros: Prefiero no decirlo.

Llevo practicando la exposicion desde el sabado, lo cual me ha dado bastante seguridad pues sabia en todo momento de que hablaba. El problema lo tuve ayer y hoy por la mañana ya que, acostumbrado a hablar poco, el hacerlo durante 20 minutos seguidos me ha dejado sin voz. El uso de antiinflamatorios y el cambiar los 20 km. de ayer por solo 6 para no pillar frio me han permitido poder acabar la exposicion.

Sobre el trabajo futuro prefiero no hablar ya que, cada vez que saco una idea para una tesis, llega alguien y me la echa a perder. El ejemplo mas claro fue el uso del ASKER para ver como ayudaba a desarrollar la mente y llego el Brain-Training para arruinarme el invento.

Si alguien esta interesado en este tema o necesita hacer un trabajo y se quiere ahorrar tiempo copiando el mio, podeis pedirmelo por aqui. No prometo mucho, pero a la gente le ha gustado.

jueves, 5 de noviembre de 2009

C-Errores de software: Mariner 1

Yo aun no habia nacido cuando en el año 1962 se iba a lanzar la sonda Mariner 1 para un viaje a Venus. Hace ya muchos años de aquello, asi que cualquiera que sepa que sobre el 1975 tener un ordenador de 64k (capacidad que ahora multiplica muchas veces cualquier movil que regalen en cajas de galletas) era lo maximo aspirable, puede imaginar que posiblemente eso era lo que tenia la NASA en el 1962. Cuando yo tuve mi Amstrad 64k con casette alla por el 1985 hacia bastantes virguerias con el (creo que era uno de los pocos que lo usaba para estudiar mas que jugar, de hecho me lo lleve para estudiar en la facultad aunque no consegui sacarle partido), asi que tampoco podia considerarse una memoria ridicula.
Volvemos a la NASA. El cohete que portaba la sonda despego y al poco tiempo empezo a desviarse de la trayectoria. Como el sistema de correccion manual fallo, al final optaron por destruir el cohete y con el la sonda, lo cual equivalia a una millonada de la epoca y el consiguiente varapalo en su lucha contra la Union Sovietica (sobre esto, aunque sea irme por las ramas, dire que la NASA se gasto una pasta en inventar un boli que escribiera en el espacio, por eso de los problemas de la gravedad, mientras que los sovieticos fueron muchisimo mas listos y se llevaron un lapiz).
Al analizar lo sucedido, segun lo que trascendio (que no tiene porque ser verdad ni tampoco mentira), se indico que fue por culpa de un fallo en la trasliteracion de una formula de una pizarra al ordenador. Segun la informacion mas exhaustiva que he encontrado, el codigo era FORTRAM (que desconozco totalmente) y el error fue este:
...
IF (TVAL .LT. 0.2E-2) GOTO 40
DO 40 M = 1, 3
W0 = (M-1)*0.5
X = H*1.74533E-2*W0
DO 20 N0 = 1, 8
EPS = 5.0*10.0**(N0-7)
CALL BESJ(X, 0, B0, EPS, IER)
IF (IER .EQ. 0) GOTO 10
20 CONTINUE
DO 5 K = 1. 3 (cuando tenia que haber escrito: DO 5 K = 1, 3 !!!UNA COMA POR UN PUNTO!!!)
T(K) = W0
Z = 1.0/(X**2)*B1**2+3.0977E-4*B0**2
D(K) = 3.076E-2*2.0*(1.0/X*B0*B1+3.0977E-4*
*(B0**2-X*B0*B1))/Z
E(K) = H**2*93.2943*W0/SIN(W0)*Z
H = D(K)-E(K)
5 CONTINUE
10 CONTINUE
Y = H/W0-1
40 CONTINUE
...

Viendo los numeros, uno al que le suenan algo estas cosas, ve que los decimales empleados tenian muy baja exactitud (E-4), con lo cual era normal que se desviara. Si se tiene en cuenta que puede haber fallos de orden la la diezmilesima, en 1 km. no se nota apenas, pero en un viaje al espacio puede acabar en el planeta vecino porque el error se multiplicaria. Lo de la coma no se como afectaria, pero lo otro seguro que si.
Es considerado uno de los 10 fallos informaticos mas graves de la historia y con razon. Afortunadamente los fallos en mis programas no salen tan caros.