domingo, 7 de mayo de 2017

Evalución de #TC1017


Mañana sera nuestro examnen final y practcamente con eso habremos terminado el curso.
Esta entrada la he dedicado para evaluar a @ken_bauer y el curso los cuales en este mi segundo semestre en Tec he visto que rompen todos los esquemas de educación que he visto, porque te da completa libertad de aprender a tu ritmo y hacer las actividades a tu ritmo, en mi caso me favoreció este sistema, porque me gustan estos temas y no dejaba que las actividades se me atrasaran mas de una semana.

En conclusión, es un curso totalmente diferente a los demás, con metas establecidas al final del curso y un profesor que asume el puesto de un alumno mas 😃

viernes, 5 de mayo de 2017

Proyecto final (Entrada actualizable)



       Hola, estoy muy ansioso por escribir esta entrada, ya que en ella podre poner todo el trabajo que esta detrás de un robot, el cual he querido construir casi desde 0, así que no se diga mas y comencemos.

Nota!
La entrada se ira actualizando según pueda subir mis resultados.

Contexto:

     Desde hace algunos años había querido hacer algo que involucrara movimiento y señales inalambicaras, debido a mi poco tiempo libre y a mis conocimientos superbasicos de programación, no había podido hacer nada, ahora con dos cursos de programación y la clase de Ken kenscourses.com alfin he podido hacer lo que había pensado.

Comencemos!

       Antes de salir de la prepa me compre una impresora 3D, una Prusa I3, si están interesados en crear una este link muestra como crear una de forma fácil.

Desde antes de comprar la impresora había estado buscando bancos de base de modelos, una pagina que encontré y me gusto fue Thingiverse.com



Ya que todos los modelos son gratuitos y de uso libre, es una comunidad abierta en la web, existe una categoria de robotica de donde encontré un modelo que me gusto y le vi potencial para modificarlo a mi gusto.


En sus instrucciones viene todo lo que se necesita, desde partes físicas, impresiones y el código, pero si tomo todo lo que me ofrecen, donde queda la parte de diversión donde modelas y te emocionas cuando unas cuantas líneas de código funcionan, así que solo tomare la esencia básica del diseño, porque encanto lo vi, se me vinieron a la mente mil y una posibles modificaciones. Todas mis ideas las tengo anotadas en una libreta, por motivos de tiempo he podido desarrollar todas para su versión V.0.3 y espero tenerlas todas para la V.2.0 y seguir mejorándolo.

Modificaciones:
    
       Lo primero que note fue que las cabezas de los tornillos así como sus tuercas quedaban fuera del modelo, entonces decidí modificaras para que quedaran dentro de la estructura y se escondieran, los archivos que el proporciona están en FreeCAD, pero como no se trabajar con ese formato, importe los STL a Google Sketchup ya que este lo tengo en mi computadora y se como usarlo







Antes de realizar las modificaciones a las partes tenía que saber la medida real de las tuercas y la flecha del servo, por lo que hice una clase de calzas para verificar que todo quedara en su lugar, además de si alguien más quisiera imprimirlo, con esto está seguro que las tuercas servos que él tiene son similares a los míos.
Calza de flecha de servo


Calza vista radiografía


Calza de tuercas y tornillo


Calza vista radiografía

Comparación del antes y después de la modificación


Original
Modificación para las tuercas


Original - Vista radiografía


Vista radiografía

Esta parte del robot la deje igual porque no implica muchos cambios.


Pieza original
Rotada y con lineas de centro
Vista radiografía
Vista radiografía















Impresión

Sección rápida de cómo se utiliza una impresora 3D y algunos consejos propios.
       Mi impresora tiene una boquilla de 3mm, la utilizo para obtener detalles más finos, pero hasta una boca de 5mm puede tener resultados similares,

Tipo de "nozzle"

el filamento que tengo es ABS, lo compre para hacer piezas de mayor duración y el gris por ser color base, también he trabajado con PLA y encontré resultados similares, cabe recalcar que el ABS tiene mejor acabado y resistencia, pero es mucho más difícil de trabajar con él, por lo que si eres nuevo en 3D primero trabaja un poco con ABS antes de imprimir piezas más complicadas.

Comparación entre PLA y ABS


El infill define qué porcentaje de la pieza quieres que este llena de material, un 0% significa solo los bordes y un 100% es una pieza sólida, mi recomendación es trabajar con el 5% para los modelos de prototipo con este relleno nos permite una solidez media como deformidades leves sin desperdiciar tanto filamento, en este caso yo utilice el 15% de infill para hacerlo resistente y liviano, normalmente estoy acostumbrado a usar el 25% de relleno, la forma de relleno fue rectilinear (los tipos y forma de relleno son temas para otra ocasión).


Una de las desventajas de la impresión FFF fused filament fabrication (fabricación con filamento fundido) es que no puedes imprimir nada en el aire, 


me explico, como la impresión parte de una cama plana hacia arriba y va imprimiendo capa por capa hacia arriba teóricamente en la capa 0 se puede imprimir todo, pero en la capa 1 debe de existir algo debajo de esta para poder estar ahí, imaginemos que vas a imprimir un modelo de ti, de forma que estés parado y con tus brazos separados del cuerpo, la impresora en la capa 0 imprimirá solo tus plantas de los pies, de las capas 1 a 5 hasta tu tobillo y así consecutivamente, pero llegara una capa donde se tendrán que imprimir las yemas de tus dedos y estas de donde se van a apoyar si tus brazos aún no están impresos y aún menos pegados a tu torso, aquí es donde entran los soportes,


Los soportes son estructuras de apoyo removibles las cuales nos ayudan a imprimir en lugares donde la capa anterior no había nada o bien reforzar las estructuras que ya teníamos, hay formas de evitar utilizarlas como crear ángulos menores de 45° (algunas veces puede ser hasta 50°). Porque los menciono, en una parte de nuestro robot necesitaremos utilizar algunos soportes.


Yo empecé imprimiendo esta pieza porque es la que no necesito cambios, su impresión es rápida, las cuatro piezas las hice de una vez porque no tienen sentido (derecha o izquierda) y así terminamos más rápido



Sistema operativo

Ahora que les he estado hablando de la parte física me pasaré a la parte del software, que al fin y acabo esto es de lo que trata la materia.


Los encarados de hacer mover el robot son unos motores llamados servos o servomotores, los cuales a diferencia de los motores ordinarios, estos pueden girar ciertos grados específicos y además mantener su posición, gracias al ancho de pulso (PWM) que se le envié al pin de control.


La imagen de arriba corresponde a los anchos de pulso y sus respectivas posiciones en servos estándar, en el mercado existen dos modelos de servos que se consideran de uso común: el Sg90 y el Mg90, que pertenecen a la categoría de micro-servos,  


La IDE de Arduino se compone de dos partes principales el void setup() donde se declaran las variables por única y primera vez, y la segunda parte en el void loop() es donde el código correrá en un loop infinito

IDE - Arduino

Lo primero que debemos de incluir la librería servo.h, la cual nos ayudara a controlar la posición de nuestros servos, de otro modo tendríamos que utilizar otros comandos, después declararnos servos y sus nombres, yo por practicidad los declare por números partiendo de izquierda a derecha en sentido horario viendo desde arriba al robot, así los números impares quedaron para los servos encargados de mover las patas de arriba abajo y los pares, encargados del movimiento de izquierda a derecha

-Comunicación por Bluetooth-

-Prueba de funcionamiento-
e




Paginas de ayuda:


Programas necesarios:

martes, 2 de mayo de 2017

Where is my banana?




No soy muy fan de trabajar con string, pero debido a que tengo que saber trabajar con ellas. y que lo veo como un reto personal, es que he decidido hacer las actividades relacionadas con strings, así que comencemos  


Como ya lo habia comnetado antes, no se me da muy bien los strings, por eso acudi al blog de Fabricio y al de María José para tener un poco mas de ayuda



Al final inserte unos caracteres ascii con la palabra banana y una banana debajo que me encontré en Internet, se me hiso que quedaba a la situación, solo que el compilador se volvio loco con unos caracteres y no supo como imprimir algunas lineas ;(

  

Paginas de ayuda:

miércoles, 26 de abril de 2017

Mi propia biblioteca


Las bibliotecas son lugares donde comúnmente podemos encontrar muchos libros, a la par en una librería de progradación podemos encontrar muchas funciones, para después utilizarlas o no, pero saber que están presentes ahi dentro

Al enseñarle Ken el avance del proyecto sugirió que todas las acciones que realiza el robot se podrían agrupar en una función con el nombre de su acción y después hacer la recopilación de funciones en una librería, me pareció muy buna su idea.

En ese momento no sabia como hacer una, solo se que tenia la extensión .h, pero con una rápida consulta a internet vi que era muy fácil hacerlo, solo es programar el nombre de tus funciones y que van a hacer cada una, y en ves de guardarlo con la extensión .cpp lo cambiamos por .h, el archivo resultante lo guardamos en la dirección de las librerías de nuestro compilador y listo, ya tenemos nuestra propia librería, en mi caso Adalll.h

Programacionenc.net

lunes, 24 de abril de 2017

Lo tienes que hacer

Había estado aplazando el WSQ08 – Yo Soy 196 porque había oído que estaba algo difícil, pero al final ya que lo he hecho, me he dado cuenta que no es tan difícil como dicen, así que comenzamos:

Esta es la actividad:





El proceso para realizar este fue un poco diferente a los otros ya que teníamos que descargar una libreria para poder utilizar numero muy grandes, pero gracias a los vídeos que Ken nos proporciono y la ayuda de Fabricio porfin lo puede hacer :D




Paginas de ayuda:

jueves, 20 de abril de 2017

jueves, 6 de abril de 2017

Rivers of Babylon


El #wsq10 trata de calcular la raíz cuadrada de un numero por el método Babylon que es el siguiente:
Y aqui el codigo:


jueves, 30 de marzo de 2017

Mi personalidad

Hoy en clase entes del examen, nuestro profesor nos puso un pequeño test para saber nuestra personalidad, y mi resultado fue: