ArCan por fín a la venta!

Publicado en General.

Ya es posible comprar las primeras unidades de ArCan, con el poco presupuesto del que dispongo solo he podido fabricar 30.

He conseguido que el precio unitario “Ready to Use” sea de 30€ y están verificadas al 100%. Si alguien quiere algún tipo de configuración distinta a la completa que lo especifique, por ejemplo, solo la PCB o únicamente con los componentes SMD montados, etc. Cualquiera de estas opciones podrían ser algo más económicas. Los gastos de envío no están incluidos.

Comprar es tan facil como escribir un correo electronico a buy@arcan.es especificando las unidades, la configuración, el nombre y la dirección del interesado y tan pronto como sea posible me pondré en contacto para fijar los detalles.

En el futuro intentaré automatizar este proceso, pero en fechas tan cercanas al concurso apenas me queda tiempo.

Espero que las disfrutéis ^^

Comentarios (0) Mar 29 2009


ArCan funcionando al 100%

Publicado en General.

He estado todo el fin de semana probando la nueva Revisión de ArCan, y los resultados han sido EXCELENTES.

Comentarios (0) Mar 23 2009


1º Versión de la librería

Publicado en General.

Por fin he terminado la 1º versión de la librería, ¡me ha costado bastante trabajo!. Aunque mi intención es ir explicando paso por paso todos los entresijos con los que me he encontrado a lo largo del desarrollo de esta, ahora mismo se me hace imposible porque el día 2 de Abril tengo que presentar el proyecto en el concurso local de Málaga y me queda aún mucho trabajo por delante. Por cierto estáis todos invitados!

Mientras tanto, por si queréis ir echando un ojo podéis descargarla en la Forja.

http://forja.rediris.es/frs/download.php/1222/ArCan_v1.00.tar.gz

Comentarios (1) Mar 23 2009


Los nuevos prototipos!

Publicado en General.

Gracias a Ingelabs tengo el placer de presentaros la RevD_e0 de la PCB de ArCan.

Corresponden a la última versión del esquemático publicado, de momento parece que todo funciona!

Espero que durante el fin de semana me de tiempo a montar y probar todas las PCB’s. Os mantendré informado.

Estoy super contento!!! 🙂

Comentarios (2) Mar 19 2009


El nuevo Hardware!

Publicado en General.

Hoy vamos a comentar las partes que componen el nuevo esquemático de ArCan. Los que hayan descargado el PDF, habrán visto que lo he ordenado en bloques claramente diferenciados, con el objetivo de facilitar la comprensión a la comunidad e intentar hacer esto lo más didáctico posible. Los 7 bloques son:

  1. Alimentación de entrada: Este es el bloque más sencillo, ya que aprovechamos la fuente de alimentación que implementa Arduino. Todos los circuitos seleccionados en ArCan son compatibles a 5V. Tiene un condensador para dar más estabilidad al Shield, y un led que indica que se está alimentando correctamente.
  2. Oscilador: Se ha elegido un oscilador de 8MHz para el CAN-Controller. Es el montaje recomendado por el fabricante y lo podemos encontrar en el Datasheet, “Figure 8-1” pag. 53; los valores para los condensadores están extraídos de la “Tabla 8-2” pag. 54.
  3. Reset: El reset se produce a valor lógico ‘0’, por tanto tiene una resistencia pull-up que mantiene un ‘1’ lógico constante, excepto cuando presionamos el pulsador.
  4. Buffer Led: Simplemente son dos leds que se pueden controlar, como vimos en un ejemplo, desde el MCP2515, pudiendo añadirles la funcionalidad que queramos a través de la programación de Arduino, o dejar al CAN-Controller que los maneje para simbolizar que los buffer de recepción están llenos.
  5. CAN Core: Sin duda el corazón de ArCan. Podemos ver 4 elementos claramente diferenciados:
    1. MCP2515, Es el CAN-Controller y se encarga de toda la gestión CAN.
    2. MCP2551, Es el transceiver, y su objetivo es hacer de “traductor” entre las señales CAN, y las que puede entender el MCP2515.
    3. Reductor de ruido: esta parte es opcional, en ocasiones si el cable que se utiliza no es lo suficientemente bueno, no está trenzado o estamos operando en entornos muy ruidosos,  podemos tener problemas en la comunicación; este elemento nos va a filtrar la señal mejorando la relación Señal/Ruido.
    4. Mediante este jumper habilitamos la resistencia terminadora del bus, así nos ahorramos conectarlas de forma externa. Solo dos elementos de nuestra red deben ternerlo habilitado, concretamente los que están en el extremo.
  6. Alimentación para los Sensores: Como inicialmente el diseño está pensado para sensórica distribuida y aplicaciones domóticas, es posible que los usuarios quieran “aprovecharse” de la alimentación de Arduino. En este caso he añadido 2 conectores 5.08(Screw) tipo atornillable, protegidos por un fusible, para evitar daños que se puedan producir en Arduino/ArCan por culpa de sobrecorrientes.
  7. Conectores E/S: Todos los pines libres de propósito general de Arduino, los he expandido a conectores de 5.08(Screw) tipo atornillables, para  facilitar todo el conexionado de sensores/actuadores al Shield.

Para finales de esta semana llegan los prototipos directamente de fábrica, si todo funciona correctamente para principios del mes que viene puede que tenga las primeras unidades a la venta, como he dicho en post anteriores espero que salgan por 25€-30€ como máximo.

Espero que os guste y si tenéis alguna duda respecto al Hardware o a su funcionamiento ya sabéis… “Comentarla”

Comentarios (2) Mar 16 2009


Nueva Revisión del esquemático!

Publicado en General.

Tras mucho trabajo, ya podéis descargar la nueva revisión del esquemático de ArCan.

Arcan_shematic_RevC

En esta semana voy a intentar comentar todas las partes del Hardware y empezaré con la configuración del MCP2515. Muy pronto seremos capaces de enviar un mensaje CAN.

Os deseo una buena semana!

Comentarios (0) Mar 16 2009


Error en el esquemático!

Publicado en General.

He encontrado un nuevo error en el esquemático de ArCan, el problema está en que se encuentran cruzados los pines de transmisión del controlador CAN, MCP2515, con los del transceiver, MCP2551. Quedando conectados erróneamente de esta forma:

TXCAN (pin 1 del MCP2515) — > RXD (pin 2 del MCP2551)
RXCAN (pin 2 del MCP2515) — > TXD (pin 1 del MCP2551)

La conexión adecuada es:

TXCAN (pin 1 del MCP2515) — > TXD (pin 1 del MCP2551)
RXCAN (pin 2 del MCP2515) — > RXD (pin 1 del MCP2551)

En estas fotillos podéis ver la modificación que he realizado sobre los prototipos caseros:

Pero… por fin ArCan FUNCIONA!!! Adelantaros que ya he enviado un mensaje CAN entre los dos Arduinos.

Estoy trabajando en una nueva revisión del esquemático y de la PCB, donde se corrigen todos los problemas que me he encontrado a lo largo del diseño y he añadido algunas mejoras; esta reversión será prácticamente en su totalidad SMD,  y a dos caras. Espero publicarlo todo a lo largo del fin de semana.

Comentarios (2) Mar 13 2009


Gran noticia!!! ArCan encuentra patrocinador…

Publicado en General.

Hoy ha sido un gran dia para el proyecto ArCan, por fín alguien se ha interesando activamente por él y ha decidido contribuir económicamente en su desarrollo. El patrocinador en cuestión es Ingelabs, empresa con base tecnológica y alto potencial innovador que desarrolla su actividad en el sector de la ingeniería electrónica.

Desde Ingelabs se apuesta por la investigación continua y el desarrollo de nuevos productos innovadores como herramienta fundamental para mantener la ventaja competitiva. Por esta razón, la empresa invierte una parte significativa de sus recursos en actividades de I+D.

Gracias a ellos, se van a fabricar unos prototipos finales, que precederan al climax del proyecto, algo que sin su ayuda no podría realizar.

Una vez verificados y funcionando correctamente, haré una pequeña serie que pondré a la venta sin ánimo de lucro a través de este Blog. El objetivo es que todas las personas que esten interesadas puedan hacerse con un Shield ArCan y participar en el desarrollo del proyecto de forma activa, o resolver cualquier duda que le pueda surgir en la implementación de las aplicaciones usando CAN-Bus.

Una vez más, GRACIAS Ingelabs.

Comentarios (1) Mar 09 2009


Seguimos adelante!

Publicado en General.

Después del gran avance de la semana pasada, he dedicado estos dias a estudiar a fondo el datasheet del MCP2515. Ya aprendimos como escribir en los registros de este, sin embargo, el interfaz SPI de nuestro controlador CAN implementa 9 OpCodes distintos. Podemos verlos en la siguiente tabla:

En el ejemplo anterior el único OpCode que usamos fue WRITE (0x02), sin embargo, puede que lo correcto hubiese sido emplear el OpCode “Bit Modify” y modificar solo los bit necesarios. Por si surgiese la duda, el registro BFPCTRL es de esos registros que permiten el uso de este comando.

Como creo que es bastante interesante conocer todas las posibilidades que tenemos para manejar el controlador, deberíamos echar un pequeño vistazo a las páginas 65, 66, 67, donde vienen muy bien especificados como usar cada uno de los OpCodes, no obstante voy a sintetizar mucho la información y explicarlo uno a uno, para facilitar en la medida de lo posible el manejo a la comunidad.

  1. RESET: tan solo debemos enviar 0xC0. Resetea todos los registros, y coloca al MCP2515 en “Modo Configuración”, en futuras entradas trataremos el “Modo de Configuración” más ampliamente.
  2. READ: para leer un registro basta con enviar 0x03 seguido de la dirección del registro a leer, 0xaddress, y acontinuación enviamos un dummy (basura) para así recoger en SPDR el valor del registro leido.
  3. READ RX BUFFER: Podríamos decir que se trata de un “acceso directo” a los registros de control de los buffers de recepción de mensajes CAN. Su uso puede resultar un poco extraño, tendríamos que enviar 0b10010nm0 donde ‘n’ y ‘m’ nos marcaría el buffer al que queremos acceder. En la siguiente tabla vemos las combinaciones posibles:

    Como en el comando READ, finalizamos enviando un dummy para poder recoger el valor del registro en SPDR.
  4. WRITE: Ya lo hemos usado, pero  no está de más verlo de nuevo. Enviamos 0x02 seguido de la dirección del registro que deseamos modificar, 0xaddress,  y terminando con el dato a escribir.
  5. LOAD TX BUFFER: Este comando es otro “acceso directo” a los registros que van a controlar los buffers de emisión de datos via CAN. En este caso debemos enviar 0b01000abc seguido del dato que deseamos cargar, ‘a’, ‘b’ y ‘c’ usa un mecanismo similar al de READ RX BUFFER, la tabla para acceder a los distintos BUFFER de transmisión es:
  6. REQUEST-TO-SEND(RTR): Básicamente es la que da la orden de empezar la transmisión de los datos que están almacenados en los buffers. Su funcionamiento es tan simple como enviar un solo comando, 0b10000nnn donde colocando un ‘1’ en alguno de los n, daremos permiso a ese buffer para empezar la transmisión.
  7. READ STATUS: Este comando nos entrega el registro de estado de nuestro controlador CAN, se envia 0xA0, y enviamos un dummy, ahora podemos recoger el resultado de la lectura del SPDR, pero tenemos que tener una pequeña cosa en cuenta, debemos enviar un dummy más, porque tal como está implementado, el comando envía por duplicado el registro de estado. En este caso puede que la forma más sencilla de tratar con este comando sea enviando 0xA0 seguido de 2 dummys, y posteriormente recoger en SPDR el registro de estado.
  8. RX STATUS: Bastante similar al comando anterior con la salvedad que en este caso estamos interesados en consultar el estado de recepción. Se procede de igual forma pero en este caso el OpCode a enviar es 0xB0, y lo que recibimos es:
  9. BIT MODIFY: Este es el comando que más envío de datos require, se procede de la siguiente forma, enviamos 0x05 seguido de la dirección del registro que queremos modificar, 0xaddress, posteriormente enviamos la máscara de bits, que es donde codificaremos cuales son los bit que deseamos modificar, por ejemplo 0x81 (0b10000001) con esta máscara solo modificamos el primer y el último bit, a continuacion enviamos el dato a modificar 0xdata.

Estos son los nueve posibles comandos que tenemos disponibles, en el archivo ArCan_def.h teneis los #defines de todos.

A partir de ahora creo que tenemos la base teórica y práctica para empezar a configurar ArCan e intentar enviar un mensaje via CAN, sin duda esto será lo que se aborde en las posteriores entradas.

Comentarios (0) Mar 05 2009


Primera prueba!

Publicado en General.

Por fin he obtenido resultados, la sensación es muy satisfactoria y me gustaría compartirla con la comunidad, justo ahora a las 18,10h. del 25 de Febrero de 2009 ,he conseguido establecer mi primer contacto con ArCan, muy sencillo sin duda (ha encendido un led), pero sin embargo creo que es un gran avance.

He establecido comunicación via SPI y he enviado el comando para escribir en el registro BFPCTRL, que es donde se encuentran mapeados los leds de ArCan, y los he activados.

Podeis bajaros el programa de ejemplo desde la Forja del proyecto, donde publicaré todas las novedades de forma instantanea, o a través del siguiente enlace:

Forja RedIris: ArCan_P1.rar

El programa está comentado y todas las definiciones están colgadas en la Forja.

Espero que os guste y si teneis alguna duda la dejais en los comentarios. La responderé gustosamente.

Comentarios (0) Feb 25 2009