lunes, 11 de noviembre de 2019

Planos: eléctricos y despiece acotado

Hola a tod@s.

Para el diseño final de nuestros proyectos además de los planos acotados, las herramientas y fases de fabricación, tendremos que añadir los planos eléctricos de los diferentes componentes del proyecto.

En la siguiente web podemos encontrar una imagen resumen de los más utilizados:


En esta otra web aparecen algunos algo más avanzados.


Con esta simbología podremos hacer nuestros propios esquemas eléctricos como los de los siguientes ejemplos:

Desde un sencillo encendido de una bombilla con interruptor:


A algunos más complejos como este temporizador ajustable 1-10 minutos.


En nuestro caso al incluir arduino en muchos de nuestros proyectos, los esquemas eléctricos tendrán un esquema parecido al de la siguiente figura:


Podemos realizar nuestros esquemas con un procesador de texto, como Word por ejemplo, incluyendo imágenes y utlizando las librearías de símbolos. También existen aplicaciones específicas online con las que podemos diseñar e incluso probar circuitos de manera bastante sencilla.

Dos ejemplos son: 

CIRCUIT LAB Que también es simulador

y

EasyEDA con muchas opciones de diseño y librerías


En los siguiente vídeos podemos ver como iniciarse en el uso de CircuitLab:




El esquema eléctrico también podremos realizarlo de manera detallada en tinkercad circuits: https://www.tinkercad.com/ Un ejemplo de como podría quedar nuestro ascensor:



Además de los planos eléctricos tendremos que realizar un despiece acotado de cada de las piezas que vamos a construir para nuestro proyecto. En la siguiente imagen podemos ver un ejemplo de despiece acotado de todas las piezas que componen un rodillo de campana:



Un saludo,
Raúl.



miércoles, 23 de octubre de 2019

Evolución de 5 Programas de control del coche robótico

Hola a tod@s.

En este tema vamos a ver, en 5 fases, como ir añadiendo comandos a la programación del coche robótico controlado por bluetooth para empezar simplemente haciéndole avanzar y parar y terminar controlando todos sus movimientos además de la activación del modo autónomo de detección de obstáculos con ultrasonido y servomotor.

Empezaremos por realizar una aplicación móvil que mande diferentes letras a arduino mediante bluetooth que posteriormente nos servirán para decidir el modo de funcionamiento del coche.

Un ejemplo de diseño de la aplicación con app inventor podría ser este.


Y el código de la misma el que ya hemos visto con el listpicker de conectar al bluetooth y el botón de desconectar además del resto de botones que enviarán letras para cada acción:
Aunque en la imagen del diseño se ha incluido un slider de control del giro en este tema no veremos todavía como usarlo.





En arduino empezaremos por el programa más sencillo posible que hace simplemente avanzar al coche hacia adelante o pararlo.



Es imprescindible saber que led activa cada una de las ruedas en su correspondiente sentido de giro. Y también es importante que conectemos los cables a los pines PWM de arduino (alguno de los siguientes: 3,5,6,9,10,11) que nos van a permitir controlar la potencia de encendido más adelante.

En el siguiente programa daremos un paso más allá añadiendo la posibilidad de que el coche vaya hacia atrás y gire a izquierda o derecha.




En este punto es importante añadir la función "parar" que apaga los 4 leds y que usaremos antes de indicar cada movimiento ya que si del movimiento anterior arrastramos un encendido por ejemplo de derecha_atras y en el nuevo movimiento sin apagar ese led encendemos el de derecha_alante la rueda se quedará quieta ya que estará recibiendo esas dos señales al mismo tiempo.

El siguiente paso será añadir giros no en redondo si no en arco, para ello aprochamos la posibilidad que nos dan los pines PWM de encenderlos con un valor de intensidad entre 0 y 255. En el ejemplo encendemos una rueda al máximo de potencia y la otra a la mitad dandole un valor de encendido al pin digital de 127. Esto para los 4 giros amplios que nos quedan para controlar totalmente el robot.


El siguiente paso consistirá en añadir la posibilidad de que el coche se mueva de manera autónoma detectando obstáculos mediante el sensor de ultrasonidos colocado en la parte delantera.

Para ello añadiremos dos componentes a nuestro arduino, el sensor de ultrasonidos y el servo motor sobre el que va instalado.


Para poder programar este modo de funcionamiento tendremos que generar dos nueva variables, una que guardará la distancia y otra que guardará el modo de funcionamiento seleccionado. Se definen 5 modos de funcionamiento:
El modo 0 es en el que no se usa el ultrasonido y se controla el robot con las funciones explicada antes.
El modo 1 es en el que el coche al detectar un obstáculo a 20cm o menos gira siempre hacia la izquierda para evitarlo.
El modo 2 es en el que el coche al detectar un obstáculo a 20cm o menos gira siempre hacia la derecha para evitarlo.
El modo 3 es en el que el coche al detectar un obstáculo a 20cm o menos gira aleatoriamente a la izquierda o a la derecha para evitarlo.
El modo 4 es en el que el coche al detectar un obstáculo a 20cm o menos utilizará el servo motor para mover el ultrasonido a un lado y a otro para saber hacia que lado tiene menos obstáculos y dirigirse hacia ese lado.



Si el usuario manda un comando que activa alguna de las funciones que no son de modo ultrasonido es importante que añadamos en cada una de ellas el hecho de que el "ultra_mode" pasa a ser 0.


Para el resto de letras enviadas por la aplicación activaremos los diferentes modos de funcionamiento que hemos comentado.

Los modos 1 y 2 funcionan de manera sencilla:



El 3 incluye el uso de número aleatorios y redondeo:


Y por último el modo 4 nos llevará a crear dos nuevas variables para comparar las distancia y el uso del comando detach y attach del servo para evitar que este vibrando cuando no lo usamos. Como este comando no existe en bitbloq lo añadimos con el código verde que nos permite introducir código arduino directamente.




Con esta última versión del programa tendremos un buen repertorio de formas de controlar el coche robot tanto de manera directa como autónoma.

En temas posteriores veremos como poder modificar algunos parámetros como el ángulo de los giros para el modo dirigido o cambiar la distancia de detección de obstáculos para el modo autónomo.

Un saludo,
Raúl.

lunes, 7 de octubre de 2019

Proyecto Ascensor. 4º TPRPT

Hola a tod@s.

Para realizar el proyecto del ascensor hemos comenzado repasando las fases del proyecto tecnológico y la diferente documentación a preparar a la hora de afrontar un proyecto.
Para repasar el diseño y presentación de ideas mediante croquis hemos practicado dibujando estos dos ejemplos antes de presentar nuestro propio croquis con la propuesta del ascensor.


Croquis obtenido del pdf de la web 


 

Croquis obtenido del pdf de la web

Hemos elegido estos dos ejemplos porque entre ambos reúnen las características más importantes que debe tener un croquis completo, el cual nos debe informar de la forma del objeto, su partes, funcionamiento y medidas o cotas.

Como decíamos, una vez realizados los dos croquis de ejemplo hemos realizado el de nuestra propuesta de diseño para el ascensor teniendo en cuenta que debe ser un ascensor que tenga planta baja y dos plantas más por encima, cada una de ellas con paradas a 10cm y 20cm. 

Para la evaluación de las diferentes fases del proyecto en la primera parte se ha creado la siguiente rúbrica:


La rúbrica incluye todas las partes referentes a la elaboración de la documentación del proyecto, construcción de la maqueta y programación de la misma.

A continuación vamos a ver los primeros pasos de programación de arduino usando bitbloq: https://bitbloq.bq.com/#/ para conseguir programar nuestro ascensor de 3 paradas (planta baja, primera y segunda).

Lo primero como siempre será comprobar si somos capaces de crear y cargar el clásico programa de parpadeo (blink) de un led conectado al pin 13 de nuestra placa:



Con el fin de aprender un nivel más avanzado de programación y practicar con el uso de las variables nos hemos propuesto el reto de conseguir que nuestro led haga cada vez parpadeos más lentos. En la siguiente imagen puede verse una forma de solucionar este ejercicio:


Por último, para iniciarnos en el uso de los condicionales, nos hemos puesto el reto de conseguir que  desde los 100ms de parpadeo el led parpadee mas lento y que cuando haga un parpadeo de encendido 1000ms pase a ir cada vez más rápido hasta los 100ms y así sucesivamente.


El siguiente paso para iniciarnos en los componentes de nuestro semáforo será la programación de los botones/pulsadores.
Es muy importante aprender a conectar el pulsador a la protoboard y arduino para que funcionen correctamente. Para ello necesitaremos 3 cables y una resistencia. La conexión directa a arduino se realiza de la siguiente manera:


Cuando tengamos varios botones las conexiones de todos ellos a 5V y GND las haremos en la protoboard.

Comenzaremos por un programa sencillo en el que al pulsar un botón consigamos encender una luz.



Como puede verse en el código usamos una variable de estado "boton_baja" (para declarar variables de tipo entero hay que usar las funciones avanzadas) que tomar el valor del boton que hemos conectado.

Un siguiente paso sería añadir dos botones y dos leds más para así tener los 3 pulsadores que usaremos en nuestro semáforo. En este ejemplo tenemos 3 botones activando 3 leds de colores diferentes:




Hasta ahora para que el led esté encendido hemos tenido que estar pulsando el botón constantemente. En el siguiente programa basado en el anterior nos proponemos conseguir que esto no sea necesario y que una pulsación del botón deje el led ya encendido todo el tiempo que es lo que es un futuro querremos que haga el motor del ascensor.




Finalmente vamos a conectar un motor de rotación continua y programar la forma de controlarlo mediante los botones que hemos estado usando anteriormente para las luces. Además de las opciones de giro del motor en sentido horario y antihorario y la opción de pararlo, usaremos el bloque verde de bitbloq que nos permite escribir código directo de arduino para poder usar las opciones attach y detach que no existen en bitbloq.





El siguiente paso será añadir a nuestro arduino los sensores que detecten la posición exacta del ascensor en cada momento para así saber en que planta está y poder darle las ordenes adecuadas al motor para que el ascensor vaya a la planta desde la que se le llama.

Un saludo,
Raúl.

lunes, 8 de abril de 2019

4º TPRPT Control de la casa domótica con el móvil

Buenos días.

En esta entrada vamos a ver las diferentes fases para conseguir controlar nuestra casa domótica con el teléfono móvil.

El primer paso será cambiar el nombre y el pin al módulo bluetooth de nuestra placa zumkit de BQ. Para ello seguiremos los pasos del siguiente vídeo:


El siguiente paso será sincronizar el módulo bluetooth con nuestro teléfono móvil, activando el bluetooth del teléfono, buscando el dispositivo por su nuevo nombre y sincronizando con el nuevo pin.

Una vez sincronizado el dispositivo pasaremos a crear la aplicación con AppInventor. Para usar AppInventor es necesario tener una cuenta de gmail. AppInventor pedirá acceso directo a la cuenta de gmail, es por eso que recomiendo que creéis una solo para trabajar con esta web. Para simplificar los primeros pasos de conexión podéis importar este programa en el que ya están creados el ListPicker de conectar y el botón de desconectar. Podéis descargarlo en vuestro ordenador y una vez dentro de appinventor importar el archivo .aia de proyecto.

A este programa básico habrá que añadirle en un principio dos botones: Encender y apagar, que manden vía bluetooth información para que luego arduino la use para realizar las acciones de encender y apagar un led. En principio una forma sencilla de hacer esto es enviar las letras A para el encendido y B para el apagado.



Cuando tengamos terminada la aplicación debemos instalarla en el móvil, para ello hay que descargarla mediante el código QR o descargar el archivo .apk en el ordenador y enviarlo por mail al móvil o si lo conectamos con el cable usb al ordenador copiando y pegando el archivo. La opción de usar el código QR es muy cómoda. Una de las mejores aplicaciones gratuitas para leer códigos QR es QR Code Reader.

Solo nos queda programar la placa para que reciba la información del bluetooth. Para ello vamos a usar bitbloq y de momento hasta que veamos como usar el componente Bluetooth de bitbloq, las conexión vía bluetooth las vamos a realizar con el componente Puerto Serie. Es importante confirmar que el Baudrate del puerto serie es el mismo que el del bluetooth, en principio 9600 por defecto en los módulos HC-06.



Lo siguiente será programar los componentes. Para ello usaremos una variable "datos" que recibe la información del bluetooth y la almacena. Cuando la variable contenga algún dato (longitud>0) comprueba si es A o B para encender o apagar el led y a continuación borra el dato de la variable,


Es importante tener en cuenta que al usar el puerto de serie para las conexiones bluetooth será necesario que los pines 0 y 1 de nuestra placa no tengan nada conectado.

En este vídeo puede verse una explicación de todo lo anterior con un sencillo programa de encendido y apagado de un led para una placa similar a la que estamos usando en nuestro proyecto la zumkit de BQ que lleva el bluetooth incorporado: https://www.youtube.com/watch?v=ZBgyckmSsWc

Una vez realizado este sencillo programa y comprobado que somos capaces de comunicarnos entre el teléfono móvil y la placa empezaremos a desarrollar la aplicación específica para el control del semáforo que deberá realizar al menos las siguientes funciones:

  • Encender y apagar las diferentes luces de la casa desde el móvil.
  • Abrir y cerrar la puerta del garaje.
  • Activar y desactivar la alarma.
  • Cambiar el valor de noche para el encendido automático de las luces exteriores/farola.

Una vez tengamos en funcionamiento estas opciones intentaremos incorporar otras como sensores de temperatura, etc.

Un saludo,
Raúl.

sábado, 16 de febrero de 2019

TIN 1 - Aplicación móvil para el control del semáforo

Buenos días.

En las siguientes entradas se puede acceder a los tutoriales de las diferentes fases de programación para conseguir crear una aplicación móvil que permita controlar desde el teléfono muchos de los parámetros del semáforo que hemos diseñado, construido y programado:

Conexión por bluetooth a arduino y envío de las primeras señales de control:

http://iespalti.blogspot.com/2017/12/semaforo-conexion-bluetooth-arduino-y.html

Primeros parámetros de control del semáforo:

http://iespalti.blogspot.com/2017/12/controlando-el-semaforo-desde-el-movil-1.html

Siguientes parámetros: Controlando con el móvil el tiempo de encendido de las luces.

http://iespalti.blogspot.com/2018/01/controlando-con-el-movil-el-tiempo-de.html


Control avanzado del semáforo: Cambio de modo botón a modo secuencia y control del sonido con el móvil
http://iespalti.blogspot.com/2018/01/cambio-de-modo-boton-modo-secuencia-y.html

Un saludo,
Raúl.

domingo, 28 de octubre de 2018

4ºESO TPRPT Proyecto Casa Domótica

Buenos días.

En esta entrada vamos a repasar todo lo que hemos estado viendo en referencia al proyecto de la asignatura TPRPT de 4ºESO: Una casa domótica.

Para este proyecto cada grupo ha diseñado su propia casa de un máximo de 200m2 mediante Floorplaner y después han presentado el proyecto en un documento de texto con las imágenes de los planos y su explicaciñon, así como las tablas con gráficos de superficies reales de la casa y cáculo del material necesario para construirla a escala 1/50.

En el siguiente documento puede verse y descargarse la rúbrica del proyecto:


RÚBRICA PROYECTO CASA DOMÓTICA


En este enlace tenemos documentos de ejemplo de los planos y cálculos a realizar para obtener el documento de proyecto final:

Carpeta con documentos ejemplo diseño Casa Domótica


Por último una serie de vídeos que nos han servido para iniciarnos en Floorplanner y coger ideas para la construcción de las maquetas:

https://www.youtube.com/watch?v=njJID65elJI


Enlace a vídeo ejemplo casa domótica:

https://www.youtube.com/watch?v=UPihzzR_OZg&feature=youtu.be




Enlace a vídeo ejemplo casa de 2 plantas:

https://www.youtube.com/watch?v=xrgz8RU6zcs&feature=youtu.be



Otros ejemplos:








En la siguiente entrada para 4ºESO nos iniciaremos en AppInventor con el tutorial que se encuentra en el siguiente enlace (sacado de la web https://codeweek.eu/docs/spain/guia-iniciacion-app-inventor.pdf):


Un saludo,
Raúl.

jueves, 18 de octubre de 2018

Semáforo Tecnología Industrial I

Buenos días.

En esta entrada vamos a repasar la primera parte del proceso de programación de un semáforo con Arduino en el que nuestro semáforo funcionará de manera cíclica alternando las luces de coches y peatones de manera que la luz de peatones parpadee al final de su ciclo y además se produzca un sonido para las personas invidentes cuando el semáforo este en verde peatones siempre y cuando no sea de noche.

Posteriormente añadiremos al semáforo la posibilidad de trabajar en modo "peatón pulse" añadiendo un botón y finalmente mediante el teléfono móvil interaccionaremos con el semáforo para poder cambiar los parámetros, recibir las información del mismo, cambiar entre los diferentes modos de funcionamiento o apagar el semáforo.

Todo lo anterior vamos a programarlo sin usar en ningún momento la función "esperar" o "delay" de Arduino con el fin de que el programa no sufra ninguna pausa y pueda recibir información de los sensores o bluetooth de manera inmediata.

El proyecto se completará con la creación de una maqueta en la que incorporaremos todos los componentes electrónicos en piezas diseñadas por nosotros e impresas en 3D.

En el siguiente enlace puede verse la rúbrica de evaluación del proyecto.


Hemos repasado entradas del curso pasado para ver como conectar los componentes e iniciarnos en la programacuón usando "obtener tiempo de ejecución".

Conexión de LEDs:

http://iespalti.blogspot.com/2017/10/conexiones-arduino-para-el-proyecto.html

Programación usando "tiempos de ejecución" en lugar de "esperar":

http://iespalti.blogspot.com/2017/10/programacion-proyecto-semaforo.html

Con esta información el siguiente paso ha consistido en realizar el programa más básico de funcionamiento sin parpadeos ni sonido, simplemente la alternancia entre las luces.


Un siguiente paso es el de crear un parpadeo en la parte final del encendido del semáforo de peatones. En la siguiente imagen puede verse como entre los 3000 y 6000 milisegundos de encendido del verde peatones (rojo coches) se hace parpadear la luz verde de peatones.



El siguiente paso de este modo es el de añadir el sonido del zumbador a la programación. En esta imagen puede verse la parte de código correspondiente al apagado y encendido del zumbador.



Por último para evitar que el zumbador pueda quedar activado en caso de que la luminosidad baje cuando está sonando hemos añadido una condición al inicio del programa:


La siguiente fase del programa consistirá en mantener el mismo juego de luces, parpadeo y sonido pero en el modo "peatón pulse".

Un saludo,
Raúl.