Arduino

OpenToll

OpenToll One

Este pasado febrero de 2020 hemos cumplido un importante hito en el proyecto OpenToll al culminar la cuarta y mejorada versión del hardware y del firmware. Con este motivo, queremos hacer un repaso y contaros todo lo que evolucionó este proyecto desde sus comienzos, hace cinco años. Nos gustaría compartir la historia completa: (Puedes hacer clic en las imágenes para verlas a tamaño completo.)

Los orígenes

En mayo de 2015 contactaron con nosotros los responsables del departamento de Sistemas de las Autopistas Radial 4 de Madrid y AP-36. Tras diez años de operar y mantener las vías de peaje habían ido obteniendo un valiosísimo conocimiento que les permitió, por aquel entonces, tener claro cómo sería su sistema de control de vía de peaje ideal. Habían podido comprobar de primera mano qué funcionaba de los sistemas que operaban, qué no y qué podría mejorarse y tenían claro que debían reemplazar los, por entonces ya obsoletos sistemas presentes, por una nueva alternativa moderna y basada en Hardware Libre, lo que les permitiría tener una independencia absoluta de un suministrador en concreto. Bajo esta premisa, nos encargaron que preparásemos un curso de microcontroladores basados en Arduino. Al finalizar la formación, nos hicieron partícipes de sus planes y nos invitaron a colaborar en el proyecto. Ellos aportarían todo su conocimiento, experiencia previa y recursos y nosotros diseñaríamos, bajo su dirección, tanto el Hardware como el firmware de control empleando exclusivamente tecnologías libres.

Primeros prototipos

Prototipo OpenTollOpenToll actualmente es un completo sistema de control de vías de peaje para autopistas pero empezó como una prueba de concepto, donde apenas se conmutaba una salida desde un Arduino Uno para controlar barreras de entrada y salida. Este proyecto, por aquel entonces sin nombre ni gran perspectiva de recorrido se fue enriqueciendo con nuevas funcionalidades poco a poco. Pronto se controlaban los semáforos, las cortinas de clasificación, marquesinas, diversos sensores... Esa placa de Arduino —finalmente una Mega 2560—, junto con varios módulos externos y un buen montón de cables, se consolidó como un ambicioso proyecto: Sustituir los obsoletos sistemas de control de vías presentes en AP36 y R4 por un moderno sistema basado en Hardware Abierto con Arduino y otras tecnologías libres. En la foto de la izquierda se puede ver el primer prototipo conectado a una vía manual (sin clasificación automática). Durante esta primera fase, tuvimos el privilegio de recibir el asesoramiento y los consejos que nos brindaron desde el departamento de Sistemas y también desde el departamento de Mantenimiento, formado por profesional altamente cualificad y con muchísima experiencia que nos pudo indica cómo sería su sistema ideal. Con estas premisas comenzamos a evolucionar el proyecto.

¡RASARD

En julio de 2016 nació ¡RASARD, donde se integró todo el hardware en una PCB propia, se refactorizó el código para que fuera escalable, se crearon los repositorios de control de versiones necesarios para la correcta gestión del flujo de trabajo y se añadieron numerosas mejoras en el firmware como parte del proceso de feedback recibido desde el Cliente. También se añadió capacidad para controlar nuevos elementos de la vía. Tras algunos meses de trabajo creando desde cero el hardware necesario para intercomunicarse con dispositivos heterogéneos y múltiples protocolos nació la versión v0.1, de la que se fabricaron dos unidades, suficientes para hacer pruebas de laboratorio y campo y validar todo el trabajo realizado.

OpenToll v0.1Como suele ser habitual con las placas de cierta complejidad, esta primera versión contenía fallos, que aún permitiéndonos probar todo el hardware, eran suficientemente graves como para tener que corregirlos en una siguiente versión. Entre los fallos que tenía, como podréis apreciar en la foto de la derecha, se encontraban que el patillaje del microcontrolador auxiliar estaba invertido así como las huellas de los relés (que tuvieron que ser soldados por la cara inferior) y también los conectores de los puertos serie (Nota a los lectores: los conectores Sub-D en formato IDC siguen otro orden de numeración que no resulta muy intuitivo a la hora de asignar las pistas).

OpenToll v0.3Todo ello quedó solventado en la versión v0.2, de la que también se hicieron sólo dos unidades, para confirmar la corrección de los errores antes mencionados. Tanto la versión v0.1 como la v0.2 se soldaron a mano y no se hizo una tirada en fábrica.

¡RASARD v0.3

OpenToll v0.3Las placas de las versiones v0.1 y v0.2 quedaron instaladas en algunas vías y sirvieron de banco de pruebas para ir realizando el entorno gráfico para el peajista e ir mejorando aspectos del funcionamiento de la electrónica. Durante este tiempo, comenzamos a realizar algunos cambios en el hardware y se creó la versión v0.3 de la electrónica de la cual se realizó un pedido de veinticinco unidades. En esta ocasión la fabricación de las PCBs fue a cargo de una fábrica y a nosotros nos llegaron ya perfectamente montadas y listas para ensamblar en bastidor de diecinueve pulgadas. Estas unidades eran ya un producto completo, con su carcasa metálica, serigrafía, puntos de fijación, planificación de los elementos de panel, cableado interno, elección de terminales y conectores, gestión térmica y de cableado...

Carcasa !RASARDEsta versión ha estado plenamente funcional en producción en vías de peaje durante tres años (desde enero de 2017), sin malfuncionamientos o interrupciones, más que los mantenimientos planificados. Además, ha servido como prueba de campo para inspirar nuevas funcionalidades que serán implementadas en posteriores versiones. Fue para nosotros una verdadera satisfacción ver en producción vías en las dos autopistas con nuestro sistema durante una operación salida, sin incidencias.

OpenToll: Versión V0.4

Tras el éxito de las versión anterior, se nos solicitaron unas ambiciosas ampliaciones en las funcionalidades de la electrónica. Esto incluía mejoras de funcionamiento, ampliación de capacidad de entradas/salidas y varias recomendaciones por parte del equipo de mantenimiento de las vías para facilitar su trabajo. Con esta lista creamos las especificaciones para la nueva versión. Entre las mejoras sugeridas se encontraban: un nuevo sistema de alimentación dual 24VDC/230VAC, inclusión de un Linux embebido, (para lo cual empleamos el módulo embebido Raspberry PI Compute Module), un nuevo sistema de red Ethernet con mayor capacidad de conexiones, un sistema de visualización del estado de la vía para mantenimiento, mejoras de expansión de entradas/salidas y una pantalla táctil TFT en lugar de la anterior LCD alfanumérica.

Placas auxiliares OpenTollEsta nueva versión v0.4, completamente rediseñada, renovó la imagen pasando a llamarse OpenToll, y fue desarrollada inspirándonos en el hardware anterior pero con numerosos cambios en casi todos los bloques funcionales. Fueron numerosos meses de trabajo, desarrollando pequeñas placas de prototipado para probar los nuevos bloques, en especial los más críticos como el nuevo ordenador embebido. Contando con ésta, se tuvieron que desarrollar un total de cuatro placas periféricas adicionales, para funciones como la expansión o el nuevo sistema de alimentación.

Para este nuevo proyecto tuvimos que realizar una gran tarea de planificación de plazos y asignación de recursos, así como coordinación y gestión de pedidos, siendo una tarea crítica para la correcta consecución del proyecto en los plazos marcados. Se separaron y ordenaron las diferentes tareas para optimizar tiempos, personal y material, asistidos por programas de ordenador.

Tras bastantes meses de trabajo, llegaron las PCB de cada una de estas placas, que fueron ensambladas, montadas, probadas y validadas, anotando pequeñas correcciones necesarias de cara a la versión final. También, y con vista a futuras mejoras, se dejaron previstos posibles añadidos que no estaban claros en esa fecha.

Tests OpenTollDurante el desarrollo de estas versiones, tuvimos muy presente que queríamos implementar un nuevo sistema de trazabilidad, que nos permitiese conocer las incidencias de cada elemento individual en cada conjunto y así evaluar probabilidades estadísticas de nuevas incidencias en otros sistemas. Por ello cada placa diseñada contaba con un sistema de números de serie únicos.

Tests OpenTollPara que el sistema de trazabilidad fuese eficaz se requería de un sistema de pruebas de calidad exhaustivo que no dejase elementos al azar. Por ello se diseñó en paralelo hardware específico para poder realizar pruebas de calidad de forma eficaz a todos los elementos, como cableado o placas sin lógica de control. Se diseñó un protocolo de pruebas individuales y especializadas para llegar a la fase de montaje conociendo el estado de cada elemento a ensamblar. En la imagen de la izquierda se puede apreciar uno de estos sistemas de control de calidad en funcionamiento probando la placa Expansora.

OpenToll: Versión V0.4B

Con todos los cambios realizados a la espera de la orden de comenzar con la producción en masa, se avanzó a la versión v0.4B de la cual se fabricó una unidad que estuvo en producción mientras se continuaba el desarrollo de la parte del software y del firmware mejorado del proyecto. Durante este tiempo se pudo certificar que tanto el rendimiento como el comportamiento en campo fueron los esperados.

Al mismo tiempo que se probaba este último prototipo, también estábamos realizando prototipos de la renovada carcasa final, también para bastidor de diecinueve pulgadas, que contendría las cinco PCB de las que consta el sistema completo.

Carcasas OpenTollCon los prototipos de carcasa ya recibidos y teniendo cada una de las PCB, pudimos afinar el cálculo de las longitudes de los cableados de interconexión, así como calcular el método óptimo para realizar la fabricación (proceso que queda detallado en el vídeo que os dejamos al final del artículo). Esta información sirvió para poder realizar los pedidos necesarios de cableados y conectores. Con todo más que revisado, se comenzó la fabricación de todo el material necesario para el montaje de las cien unidades de Opentoll.

Montaje OpenTollPara la fabricación de la mayoría de las PCB, pudimos enviar a fábrica un protocolo de pruebas que debía superar cada placa, asegurando así la calidad del material fabricado. Aún así, todos los materiales recibidos fueron sometidos a pruebas internas dentro de nuestras instalaciones con un protocolo más exhaustivo. Absolutamente todo el material recibido fue comprobado, inventariado y certificado individualmente, dejando un registro de trazabilidad de los controles de calidad efectuados. En la foto de la izquierda se puede ver una foto-composición con los comprobadores de cables que diseñamos para el control de calidad de los mismos.

Montaje OpenTollQueremos hacer especial mención a la estupenda comunicación y gran servicio proporcionado por las empresas que nos han realizado PCB, cableado o carcasas. Ha sido realmente grata la experiencia de colaboración con ellas, y han conseguido que este reto resulte mucho más sencillo. Por supuesto, también queremos agradecer a los departamentos de Sistemas y Mantenimiento de R4 y AP36 por su incansable trabajo y esfuerzos para que este proyecto se materializase. Que este proyecto, que al comenzar quedaba tan lejano y tan complejo, haya podido concluirse ha sido exclusivamente gracias a ellos.

Una vez recibido todo el material (y a falta de dos semanas de la fecha de entrega), empezó la fase de montaje de las unidades. Catorce frenéticos días para el ensamblado de todas las unidades, que según iban siendo finalizadas, eran apuntadas en el sistema de trazabilidad con los resultados de un pequeña comprobación de funcionamiento globales.

Empaquetado OpenTollAl finalizar el proceso de ensamblado, llegó el momento de la comprobación final y la certificación del sello de garantía, que sellaba la unidad con la seguridad de que todo había sido comprobado. Los detalles finales, como la pegatina de producto personalizada o las cajas de embalaje con el logotipo del producto y la empresa, fueron tratados con el mismo cuidado y mimo que el resto del proceso de diseño y fabricación.

Hemos creado una galería en nuestra cuenta de flickr con bastante documentación gráfica del proceso. También hemos preparado un vídeo con el proceso de montaje de una unidad de OpenToll One que os dejamos a continuación. Esperamos que os emocione tanto como a nosotros:

Kit curso Arduino Básico

Kit Sindormir.net para curso básico Arduino Online

Descripción

Sindormir.net S4A Mini Board

Este es el kit empleado para realizar el curso Arduino Básico y que también necesitarás si vas a realizar el curso Online o si vienes a cursos avanzados sin haber pasado por el básico. Con estos componentes podrás realizar todas las prácticas del curso. Los componentes incluidos los tienes a continuación:

  • Entradas:
    • 1 Potenciómetro lineal 10K
    • 4 Pulsadores
    • 2 LDR
  • Salidas:
    • 10 LEDs
    • 1 Altavoz
    • 1 Módulo Relé Sindormir.net
    • 1 display 7 segmentos cátodo común
    • 2 Transistores BJT NPN BC547B
  • Pasivos:
    • 13 resistencias de 1K
    • 6 resistencias de 10K
  • Otros materiales:
    • 1 Placa Arduino UNO oficial
    • 1 Protoboard de 830 puntos con zócalo para Arduino UNO
    • 1 Cuaderno 100 páginas
    • Faja de 40 cables
    • Un cable USB para Arduino
    • Llavero y pegatinas de Sindormir.net ;)

Compra

El kit tiene un precio de 50€ IVA incluido y puede comprarse presencialmente en nuestras instalaciones o podemos realizar el envío a tu domicilio, con un coste extra de 9€ en concepto de portes y manipulación para España (península y baleares).

Compra tu kit

S4A Mini Board

Sindormir.net S4A Mini board

Descripción

Sindormir.net S4A Mini Board

Esta placa es una shield para su uso con Arduino, específicamente diseñada para ser usada en el Curso Cero de Programación. Proporciona de forma cómoda y rápida acceso a los siguientes sensores y actuadores:

  • Entradas:
    • 2 Potenciómetros
    • 2 Pulsadores
    • 1 LDR
  • Salidas:
    • 2 Servomotores (Servomotores no incluidos)
    • 2 LED en modo digital
    • 1 LED en modo PWM
    • 1 Zumbador
  • Conexiones:
    • Cabeceras de conexión para Arduino UNO
    • Pines de alimentación (5V y masa)
    • Pines de E/S de Arduino no utilizados por la shield

Es compatible con placas Arduino con capacidad para shield, como las placas UNO, Leonardo o Mega. No requiere la instalación de ninguna librería específica.

Compra

La placa está disponible en diferentes modalidades:

  • Kit PCB sin montar, componentes necesarios e instrucciones de montaje. Precio 15€.
  • Placa montada y comprobada. Precio 25€
  • Taller de soldadura para su montaje, kit incluido. Precio 29€

Tanto la placa o el kit puede comprarse presencialmente en nuestras instalaciones o podemos realizar envío a domicilio, con un coste extra de 10€ en concepto de portes y manipulación.

Kit S4A Mini Board
Placa S4A Mini Board montada
Taller de montaje de S4A Mini Board

Descarga

Todos los ficheros de diseño de KiCad están disponibles en la página del proyecto en Github.

Imágenes placa final

Sindormir.net S4A Mini Board

Han confiado en nosotros