domingo, 7 de abril de 2013

Arduino-Ultrasonidos Robot

He acabado mi primera prueba con el robot R3-D3 que tenía acoplado un sensor de ultrasonidos. Inicialmente era un poco impreciso y no detectaba muy bien las distancias. Las pruebas antes de montarlo las he hecho para que la lectura del sensor de ultrasonidos me la diese por el monitor serie del Arduino. En estas pruebas, he visto que a veces no era muy exacto. Me he puesto a buscar por Internet y he encontrado una página web con una nueva librería para el sensor, la verdad es que la colaboración en Internet y el hardware de código libre es fantástico, cada día me gusta más y me sorprende gratamente. Con esta nueva librería el sensor ha mejorado mucho y podía medir distancias más pequeñas y con mayor precisión.
Inicialmente he montado todo de forma rápida sobre el robot, sin pasar bien los cables ni ser muy cuidadoso, tenía ganas de ver si funcionaba. Pero el objetivo era poder ver que el software de control funcionaba y si es así, ya vendrá después el montaje final. Dejo una foto de cómo estaba el robot para la primera prueba.


En la prueba lo he configurado para que a los 40 cm el sensor mande una señal a los motores de cada lado de forma inversa, lo que produce un giro en el robot y pueda evitar la colisión. El problema es que a veces se queda atrapado y me gustaría añadir lógica en el algoritmo de control para que fuera capaz de detectar que está parado y entonces pueda dar marcha atrás.
Cuando tenga todo el sketch acabado lo publicaré porque es código libre, por si alguien quiere reutilizarlo.
Mi idea es que el robot sea capaz de forma autónoma de moverse, pero también quiero que pueda pasarse a control manual y se pueda dirigir desde una página web, el robot llevara una web cam y el control se podrá hacer viendo las imágenes en la página web. Esa parte es la que tendrá que hacer la Raspi y tendrá que comunicarse con el Arduino.

martes, 2 de abril de 2013

Shield de Adafruit

Me acaba de llegar una shield de Adafruit para conectar los pines GPIO (General Purpose Input Output) de la Raspberry PI al mundo exterior. Además en la tienda habitual donde compro, me han cambiado un display Oled que tenia defectuoso. Lo he cambiado por uno mas grande TFT con touchscreen porque el anterior era muy pequeño y me gusta la opción de touchscreen. Ya tengo algunas ideas en mente para poder empezar a hacer algunos nuevos circuitos.
Los componentes de la shield son la placa PCB de fibra que ya viene totalmente preparada para insertar componentes y conectores. En el texto que aparecía en la tienda hablaba de que en 15 minutos puedes soldar todos los componentes y que soldar es muy fácil. Estoy de acuerdo, pero en mi caso he necesitado un poco más de tiempo. Con la emoción de la llegada, no he mirado ninguna foto, ni ningún esquema, he puesto todos los componentes sobre la mesa y he agarrado el soldador, y upss manos a la obra. He comenzado por el primer conector, el mas grande justamente el que conecta con el bus GPIO. Cuando he acabado de soldar todos los pines he mirado una foto y me he dado cuenta de que estaba colocado al revés. Inicialmente he pensado en tirar la placa, porque no tengo desoldador, pero he pensado que podría conseguir quitar de nuevo el conector.
Tengo algo parecido a un desoldador, es del tipo que se arma un muelle y presionado un botón hace una succión inmediata. Es bastante ortopédico porque hay que calentar el estaño y justo en el momento en que funde, se le aplica el desoldador para succionar el estaño. Con paciencia todo se puede y dos horas después y con la ayuda de tira de desoldar he conseguido quitar todo el estaño y voila!!! Conector libre.
Lo he montado todo de nuevo pero mirando bien las fotos para no volver a cometer errores y finalmente lo he conseguido. 
Ahora me estoy peleando en lado Arduino para montarlo todo y tenerlo preparado para comunicar vía serie el Arduino y la Raspi. Pero hablaremos en el próximo post cuando lo tenga preparado.