viernes, 29 de octubre de 2010

Prueba en autódromo y cosas por hacer

Hoy fuimos al autódromo a probar el proyecto, con idea de ver y grabar la posición y velocidad de un auto.

Desde un principio suponíamos que no iba a funcionar muy bien (considerando que el proyecto envía las coordenadas cada 30", un tiempo demasiado largo para un auto yendo a altas velocidades).

Para empeorar las cosas, nos olvidamos el programador de AT89S52 (el martes se lo quedó el grupo de Alan), y aunque lo hubiéramos tenido, la netbook que llevaron no tenía puerto serie ni paralelo.


Cosas por hacer:
  • Documentación
  • Averiguar por qué no envíaba nada el rastreador
  • Implementar DNS para evitar problemas si cambia la IP del servidor
  • Contratar un pack de navegación GPRS (personal vende uno de 1MB por una semana a $5) y ver cuánto se reducen los costos por megabyte.
  • Acordarse de cerrar el hyperterminal antes de intentar usar el AtmelWrite (no avisa si el puerto está cerrado)
  • Agregar en la información que se manda la altitud, vx, vy, cant. satélites usads y los segundos en los cuales se tomó la posición (para poder asegurar cuándo estuvo ahí)
  • Ver si se puede arreglar el "detector de batería baja" de la placa principal ya hecha
  • Soporte multiusuario y multirastreador (Web) - Casi listo
  • Calcular costo real por paquete 

miércoles, 20 de octubre de 2010

Progreso en Gabinete y Documentos

Ayer martes elegimos un gabinete, terminamos de agujerear y atornillar todo en su lugar. Probamos el proyecto con el gabinete cerrado y, luego de arreglar algunos falsos contactos en los bornes de las baterías, logramos hacer que rastree perfectamente. Arreglamos un bug del rastreador que no mandaba el signo de las coordenadas correctamente.

Hoy miércoles empezamos y terminamos la vista del proyecto en SketchUp.

















También empezamos a hacer la vista explosiva en Flash, con una grilla isométrica a 30 y 60°.

martes, 12 de octubre de 2010

Gran progreso

Hoy logramos hacer que el modem GSM se conecte a internet via GPRS, y envíe un paquete UDP a un servidor. El servidor graba el horario y otra información en este formato.

10/12/2010,18:24:02 -3436.5829 -05825.7872 57,1 4
10/12/2010,18:24:57 -3436.5924 -05825.7855 57,1 4
10/12/2010,18:25:03 -3436.5918 -05825.7844 57,1 4
...
Fecha, hora, latitud, longitud, altitud, cant. satélites usados.














Automáticamente se sincroniza con la página web, permitiendo ver el recorrido en tiempo real.
 
Por lo tanto, nuesto proyecto está casi cerca de su completado, solamente falta pulir algunos detalles.

    domingo, 10 de octubre de 2010

    Información a enviar

    Cada 30 segundos deberíamos mandar al servidor un paquete con:
    • ID del rastreador (2 bytes)
    • Latitud (4 bytes)
    • Longitud (4 bytes)
    • Altitud (2 bytes)
    • Cant. Satelites usados (1 byte)
    • Otros datos (indicador batería baja, algún sensor extra) (1 byte)
    • Checksum (2 bytes)
    Eso suma 16 bytes de información, más los 20 bytes del protocolo IP, más los 8 bytes del protocolo UDP son 44 bytes por paquete. 

      martes, 5 de octubre de 2010

      Progreso

      Hoy logramos leer la ubicación desde el GPS, también pudimos hacer que se mande en un SMS cada 30 segundos.

      Eso significa que la parte física del proyecto está lista, solo falta terminar y pulir la programación.

      Siguiendo lo que nos dijo Rubén, si llegamos a tiempo deberíamos hacer una placa que integre todo (y de paso arregle algunos bugs) para que quede más prolijo.

      Ahora estamos intentando hacer que se conecte via UDP a un servidor para enviarlas y así gastar menos crédito. Hoy Dropbox (el sistema que usamos para mantener versiones de todos los archivos del proyecto) estuvo con problemas así que mucho no pudimos avanzar

      martes, 28 de septiembre de 2010

      Progreso y modos de operación

      Hoy logramos hacer andar el programador ISP para el microcontrolador (agregamos dos conectores en la placa para tener 5v).

      Hasta ahora estamos pensando en hacer 3 modos distintos de operación para el rastreador:
      • Modo 1:
        • Cada vez que cierto número llama al número del rastreador, éste le responde con un SMS indicando los datos (longitud, latitud, velocidad, rumbo, entre otros).
      • Modo 2:
        • Cada N segundos, se envia por SMS a la central un mensaje conteniendo su posición
      • Modo 3:
        • Cada N segundos, se envia via GPRS un mensaje con su posición
      Con el modo 1 y 2 estamos limitados a la cantidad de mensajes que podemos mandar. A 40 centavos cada mensaje, incluso mandar 1 mensaje por hora cuesta "nada más" 288 pesos mensualmente.

      El modo 3 es el que más nos interesa, porque eliminamos la necesidad de tener un celular servidor que reciba mensajes de todos, haciendo que el modem se conecte a internet y envíe directamente los datos. A 20 bytes aproximados por mensaje, 2 mensajes por minuto cuestan aproximadamente 45 pesos, algo mucho mejor y totalmente posible de hacer.

      Ya conseguimos la antena, por lo que se podría decir que la parte física del proyecto está terminada (solo faltaría conseguir una caja y fijar todo ahí, quizás revestida con metal para hacer una especie de jaula de faraday - si vemos que el micro se reinicia o algo así)

        miércoles, 22 de septiembre de 2010

        Progreso

        Hoy construimos el programador ISP para el microcontrolador AT89S52 (para evitar tener que remover el mismo del zócalo cada vez que los programamos) en una placa experimental.

        El diseño es sencillo, puede ser encontrado acá, usa el puerto serie (cosa interesante ya que en las pcs donde comúnmente tenemos proyecto final no hay puerto paralelo) y es barato; reciclamos la placa en la que teníamos el max232 anteriormente.

        Todavía no logramos hacerlo andar (no lo probamos mucho tampoco porque en las horas que no estuvo Dani no teníamos ni osciloscopio ni tester) pero ya lo lograremos.

        En las otras horas logramos programar el micro para que detecte tramas NMEA conteniendo las coordenadas (empieza con $GPGGA y termina con \n), y guardarlas en un buffer. Ahora faltaría analizarlas y hacer algo con ellas (parseo, compresión delta, etc...) y luego mandarlas.

        Respecto a la comunicación con la central, logramos recibir SMS perfectamente. Estamos pensando en aprovechar que el módulo g20 soporta GPRS y tiene una pila TCP/IP para lograr que los datos se envíen por ahi.

        martes, 24 de agosto de 2010

        Algunos problemas y soluciones

        Hoy continuamos el proyecto luego de 3 semanas sin actividad.

        El conector para el módulo GPS había absorbido parte del pegamento que usamos para pegarlo laterlamente, lo que impedía conectar correctamente la placa. Intentamos limpiarlo con alcohol, un alfiler y una mecha de 0.5...

        Decidimos desoldar el conector y reemplazarlo por uno nuevo que por suerte habíamos comprado. Lo pudimos hacer sin que se rompiera ninguna pista. Lo cambiamos y hicimos el cable de conexión.

        Conectamos el cable correctamente y así terminamos la parte física de nuestro proyecto... Solo falta comprar una antena (ya que la que estaba en el colegio tenía un conector más grande), pero por suerte ya sabemos donde (en el mismo lugar que compramos el módulo gps - el que está cerca de parque chas)

        martes, 13 de julio de 2010

        Progreso con GPS

        En la primer hora conseguimos el dinero y fuimos a comprar el módulo GPS ET-332 ... Hicieron descuento del 5% por pagar en efectivo, por lo que usamos la plata restante para comprar un conector extra (6x2 a 0.5thou de separación).

        Luego diseñamos y armamos una placa para adaptarla a un conector 6x2 estándar.















        Como no habían mechas de un tamaño tan chico (0.5 mm sería lo mejor) decidimos doblar las patas y transformarlo en un conector para montaje superficial.

        Lo pegamos en la placa adaptadora, la próxima clase lo soldaremos y ya probaremos la comunicación con el módulo de GPS.

        martes, 6 de julio de 2010

        Progreso 6/7

        Hoy instalamos el integrado faltante, usamos el mismo programa que teníamos en el proto y anduvo perfectamente (salvo la "detección" de inicialización del modem GSM que usa polling y a veces falla- la proxima clase la reescribiremos usando interrupciones): se envió sin problemas un SMS (la recepción no nos importa por ahora)

        Averigüamos del tema GPS, esto es lo que conseguimos en el mercado local y en el colegio:

        • FV-4A (SMT, sin antena) a 42 dólares + iva (electrocomponentes)
        • Antena a 17 dólares + iva (electrocomponentes)
        • Globalsat ET-332 (DIP, sin antena) a 146 pesos (cika)
        • Globalsat BT-328 (SMT, sin antena) a 260 pesos / 270 en placa de desarrollo con conector DIP (cika)
        • Antena Globalsat AT65 a 61 pesos (cika)
        • Módulo GPS usado en un proyecto final del año 1998- No logramos recibir datos del mismo (la supuesta señal RS232 enviada por el módulo se mantiene en 0v- cuando debería ser -12v cuando no envía nada)
        Mañana veremos si podemos usar el que ya hay en el colegio (o por lo menos aprovechar su antena si no logramos que funcione el módulo) o si no iremos a comprar el de $146... Mañana le preguntaremos al profesor ya que hoy estuvo ausente.

        sábado, 3 de julio de 2010

        Novedades

        El viernes fui a SYC electrónica (paraná 274) a comprar el integrado faltante (74HCT157). Cada uno salió $1.47.

        Por otro lado, averigüé en electrocomponentes (solís 225) y me dijeron que vendían módulos GPS marca San Jose (El modelo exacto no me lo acuerdo) a 42 dólares cada uno.

        martes, 29 de junio de 2010

        Progreso diario

        • Agujereado de pads para montaje en gabinete
        • Pedido y entrega de componentes para impreso
        • Crimpeado de conectores (principal->conversor, conversor->modem, principal->pc) (6+6+5)
        • Terminado de ensamblaje de placas (solo falta el multiplexor)
        • Armado vínculo con G20
        • Falta el GPS, testear el hardware y programación del software del micro

        martes, 22 de junio de 2010

        Progreso 22/6

        • Agujereado de placa RS232-TTL: Tuvimos algunos problemas porque otro grupo rompió la mecha así que tuvimos que usar una un poco más gruesa.
        • Pedido de componentes: Pedimos y recibimos todos los componentes para realizar la placa RS232-TTL, no había disponibilidad de conectores polarizados así que usamos las habituales tiras de pines.
        • Comienzo de soldado de placas: Comenzamos a soldar los zócalos en ambas placas, terminamos de soldar la placa RS232-TTL, hubo un pequeño problema con un capacitor electrolítico de filtro que era demasiado grande y chocaba contra el conector, decidimos no soldarlo y más adelante ver si afecta al funcionamiento.
        • Comenzamos a preparar los conectores (2 de 6 pines) que se usarán para interconectar la placa RS232-TTL con la principal y con el módem GSM y módulo GPS.
        • Encontramos en Ebay módulos de GPS usados ("light used") a unos increíbles 12 dólares incluyendo envío (bajo considerando que en el mercado local empresas como MCElectronics venden algo similar a no menos de $200.0 argentinos) y antenas GPS a <15 dólares

        martes, 15 de junio de 2010

        Gran progreso

        Hoy hicimos las siguientes cosas:
        • Hicimos la placa con el max232 (hubieron algunos problemas con tracks que se ensancharon, pero logramos solucionarlos con un destornillador plano)
        • Logramos comunicación autónoma (sin intervención de la pc) entre el microcontrolador y el módem GSM. Después de algunos intentos fallidos de enviar mensajes de texto logramos hacerlo (había que eliminar un \n después de especificar el número)

          miércoles, 9 de junio de 2010

          Probando comunicaciones

          Hoy comenzamos a diseñar la programación del micro y probamos si podiamos lograr que se comunicara con el modem GSM sin intervención humana. Primero probamos el módulo G20 desde la pc, consiguiendo correctamente enviar un mensaje. Luego programamos el micro para que intentara enviar un mensaje. No consiguiendo esto intentamos buscar si había comunicación entre el micro y el modem GSM.
           
          Un día despues: Pequeño Avance.

          Hoy logramos un avance pqueño, no pudimos probar la comunicación entre el micro y el modulo GSM pero afinamos el circuito del protoboard (ahora es mucho más presentable), y diseñamos la placa para la comunicación de GSM a micro y GPS a micro (y viceversa), con un MAX232.












          La próxima clase la construiremos y probaremos.

          martes, 1 de junio de 2010

          Problema y Éxitos

          Despues de pasarnos varias clases intentando descubrir la razón de por qué no andaba el microcontrolador (demasiado ruido en alimentación, cristal malo, regulador malo), el programador dejó de reconocer al micro, no lo podíamos programar.

          Aparentemente el ChipMax2 necesita más de 1A cuando está programando el microcontrolador, ya que el transformador provisto supuestamente entregaba esa corriente máxima. Cuando intentábamos programarlo empezaba a salir un ruido de adentro del programador. Logramos solucionarlo improvisando un transformador con la fuente constante de 12v@2A y el conector que tuvimos que cortar del transformador original.


          Por otro lado, el excelente programa que usabamos para programar el microcontrolador por defecto cargaba los archivos (sin importar la extensión) como si fuesen binarios, por lo que al cargar los HEX directamente estabamos programando al microcontrolador erróneamente. Cambiando una opción al cargar el archivo se solucionó.

          Finalmente, logramos hacer parpadear un LED en la pata 1 del micro. Después logramos hacer andar el comparador de voltaje (aunque el zener para la referencia no entraba en la "zona zener" incluso cuando circulaban 9 mA a través de él), por lo que el microcontrolador ya puede saber cuando su tensión baja de 8V y así poder avisar a la central.

          miércoles, 19 de mayo de 2010

          Progreso del mes de mayo

          4 de mayo: Creación de circuito impreso. Progreso codificando y decodificando mensajes PDU.

          11 de mayo: Petición de herramientas al pañol. Entrega de componentes y armado de protoboard.

          18 de mayo: Prueba de modem GSM G20/G24. Comienzo de la programación del microcontrolador. Problemas de ruido por usar un protoboard viejo.

          25 de mayo: Feriado

          miércoles, 28 de abril de 2010

          División de tareas

          El proyecto AlephTrack se divide en cuatro partes:

          • Dispositivo a rastrear:
            • Diseño de PCB: 100%
            • Programación: 90%
            • Diseño de caja y Armado: 100%
            • Prueba y debugging: 50%
          • Interfaz web:
            • Sistema de usuarios: 100%
            • Vista básica: 100%
            • Vista avanzada: 50%
            • Acceso móvil: 0%
          • Servidor:
            • Recepción de paquetes UDP: 100%
            • Integración con interfaz web: 100%
          • Otras:
            • Elección de nombre: 100%
            • Diseño de logo: 100%
            • Manual de Transferencia Técnica: 90%
            • Manual del Usuario: 50%
            • Pedido de componentes: 100%
           A medida que complemos tareas iremos marcándolas.

          martes, 27 de abril de 2010

          Diseño de circuito impreso

          Terminamos de diseñar el circuito impreso:










          Programamos un pseudo simulador de un módulo de GPS, útil para probar nuestro programa principal:














          Cada unos segundos el simulador envía una cadena de texto correspondiente a una cadena NMEA 0183 (más información)

          martes, 13 de abril de 2010

          Novedades

          Diseñamos un nuevo logo:







          Rediseñamos la interfaz gráfica del área de clientes:












          Utilizamos un GPS y guardamos una ruta en un archivo de texto, desde el área de clientes la mostramos.

          viernes, 9 de abril de 2010

          Creación de sitio web y progreso del software

          Finalmente hemos registrado el dominio que utilizaremos para hacer las pruebas, alephtrack.com.ar.

          Debido a que está en un hosting casero (lo que permite que podamos correr programas nuestros - más adelante el que lea los mensajes del celular principal y actualize la base de datos) es posible que no esté disponible las 24 horas del día.

          Por otro lado, hemos comenzado la programación de la aplicación web. Usamos la API de Google Maps para así poder mostrar mapas satelitales y superponer rutas y puntos sobre ellos.

          Una captura de pantalla del sistema actualmente implementado:














          (Hacer click en la imagen para agrandar)

          martes, 6 de abril de 2010

          Diagramas de bloques

          Explicación gráfica del proyecto:

          Gran escala:








          Pequeña escala:










          (Hacer click en la imagen para agrandar)

          martes, 30 de marzo de 2010

          Introducción al proyecto

          El sistema de rastreo AlephTrack tiene como finalidad permitir el rastreo y la localización (y el posterior registro) de los movimientos de un dispositivo. Este dispositivo puede ser adjuntado a vehículos, cargas, personas, etc.

          Algunos de los usos posibles son:
          • Recupero y seguridad de vehículos
          • Control de transportes y cargas
          • Localización de personas con alzheimer