Curso Arduino

bueno pues vamos a arrancar este curso de este curso de arduino donde el objetivo dentro del curso es trabajar con este tipo de placas y evidentemente con los sensores y con los actuadores que vienen con este con estas placas es decir motores sexuales lumínicos sensores de ultrasonidos o de infrarrojos lo que sea en primer lugar vas a ver que en todo momento dentro de este curso yo voy a tener por una parte esta pantalla que básicamente es una webcam que tengo por aquí vale estas son mis manos y luego por otra parte a continuación iría abriendo otra serie de pestañas como otra serie de ventanas como por ejemplo ventanas para editar algo de código o por ejemplo navegadores web vamos a empezar hablando de arduino arduino no es sólo esta placa sino que como puedes ver aquí esta placa es la original que es arduino uno de hecho es la edición sm de mayoría de ser de ediciones que son prácticamente todas iguales está por ejemplo tienes un botoncito de reiniciar que es el botoncito de ahí si nos metemos en la página de arduino voy a abrir voy a abrir para que el navegador y busco arduino word el giro al revés valen boards arduino fíjate que me estoy yendo a la página de arduino efe a la página oficial a la página original y bueno en primer lugar tenemos por aquí lo que se llama las buenas las arduino all there boards vale y ahora a continuación lo que haré es entrar en las nuevas pero básicamente son todas prácticamente iguales pues como te decía tenemos la arduino 1 que si te fijas el gráfico es igual de uno al otro tenemos la web y la nube tenemos la sim y la tenemos la arduino ong que nos lleva un led incorporado al hablaremos del led tenemos en definitiva una serie de placas ahora veremos cuáles son las diferencias entre cada una de ellas vamos a ir a productos arduino y si nos fijamos por ejemplo pues aquí tenemos lo que te decía la arduino 1 la arduino leonardo la arduino 10 101 dentro de unas cuantas clases lo que voy a hacer es enseñarte la arduino nano que la tengo por aquí en una cajita ahora de hecho la saco para que veas de hecho la voy a poner al lado de la ruina 1 para que veas la diferencia entre tamaño le voy a hacer click dentro de arduino 1 y voy a ver qué es lo que tiene esta es la arduino una revisión 3 ale que es la que tengo por cierto la podemos comprobar lo podemos comprobar si no aparece por la parte de delante lo tenemos por la parte de atrás vale entonces ahora en cuanto se enfoque la cámara si se enfoca porque mezcla ahora y si te fijas es arduino una revisión 3 que es la última versión de la placa perdona por esto rosado aquí pero te voy a decir tal cual es chicle el chicle porque en algún momento dado pues he utilizado chicle para pegar la placa a algún otro componente y ahí hablaremos de esto en cuanto al precio de estas placas no es que te lo diga yo es que lo tienes aquí en la propia página web el precio ronda puede variar evidentemente de una tienda a otra ronda los 20 euros y os quiero decir que no es una placa cara desde el punto de vista de que te puedes permitir comprarte una nueva placa para cada proyecto de arduino que hagas pero hay una cosa que quiero dejar claro desde el principio y es que tiene esta placa vale esta placa por cierto en algunas versiones últimas te la venden con esta placa de metacrilato que está muy bien porque hay veces que según lo que hagamos la parte de abajo se puede sobrecalentar ya las hemos hecho vamos a la hora del tema de la electricidad y si me voy a tex tex lo primero de lo que vamos a hablar es de que la placa tiene un voltaje de operación de 5 voltios eso quiere decir que dentro de la placa internamente funciona con 5 voltios el voltaje de entrada se recomienda que esté entre 7 y 12 voltios con un límite por bajo de 6 si le metemos menos de 6 dejará de funcionar y un límite por arriba de 20 no te recomiendo meterle más de 20 voltios a la placa la puedes quemar si quemas la placa pues bueno son 20 euros que has quemado quiero decir no te vas a arruinar y la placa no va a explotar cuando se quema pues hace un pequeñito es un poquito de un mito y ya está vale no pasa nada más pero de esta misma forma lo que te voy a decir es que cuando trabajamos con arduino no dejamos de trabajar con un sistema eléctrico que está claro que internamente trabaja con 5 voltios eso quiere decir que se conecta un cable de aquí y hago un cortocircuito con uno de aquí ahora luego comentaré esto o si toco con los dos a la vez y mi cuerpo hace de conductor pues bueno son 5 voltios vale no me voy a quedar frito en el sitio pero son 5 voltios en definitiva vale entonces deberemos siempre tener una serie de consideraciones con respecto a nuestra protección y yo siempre lo que recomiendo es mientras estés manipulando en la placa para comentar eso desconecta la corriente y cuando tengas ya todo conectado conectas la corriente como verás a lo largo del curso pues te voy a dar una serie de consejos que son de sentido común o sea no tiene más misterio vale es como cuando estás cambiando una bombilla en casa o cuando estás tocando algo de la electricidad que siempre las recomendaciones quita los plomos y toca lo que quieras y lugar es que es de sentido común en aroma y no es básicamente lo mismo siguiente cuestión estamos trabajando con una placa que no es que te lo diga yo momento que ponga el teclado un poquito más adelante que no es que te lo diga yo sino que lo estás viendo aquí en las especificaciones de la página oficial con 32 kilobytes no megas ni tampoco gigas 1 32 kb de ram de los cuales 05 se usan para el bootloader eso quiere decir que te quedan libres para ti 31 5 esto en principio puede parecer un poco de risa quiero decir un ordenador normal tiene 48 16 gigas de ram gigabyte y estos son kilobytes no son ni siquiera megas son 32 kilobytes una de las características de arduino con respecto a otras placas es precisamente es la escasa cantidad de memoria también ahora verás en qué situaciones nos afecta y en qué situaciones no y la velocidad del reloj es de 16 megahercios es decir la velocidad de un ordenador normal ronda los 3 gigahercios por núcleo y tienen varios núcleos en cambio aquí lo que tenemos es un solo núcleo de 16 megahercios qué es lo que te quiero decir por lo que te quiero decir es que esta placa arduino no es un ordenador ni pretende serlo sino es una placa que tiene una cantidad bastante mínima de ram que te puedo decir que pues podría tener más no te digo que no y el procesador podría y podría ser de más velocidad entonces el precio sería diferente vale durante este curso otra cosa que te digo es que voy a estar hablando no sólo de arduino sino de otras alternativas como por ejemplo raspberry en todo el mundo pero estamos hablando de arduino pero qué pasa con la raspberry entonces una raspberry como puedes ver ahí no son 20 euros son 30 a partir de 35 euros pero una raspberry es un ordenador de bolsillo o sea realmente es un ordenador de verdad y cuando digo de verdad quiero decir que por ejemplo tienes 2 4 y 8 gb de ram mientras en arduino tienes 32 tiene el soporte para dos monitores en definitiva lo que no y el procesador que ahora lo veremos por aquí el aparecerá pero el procesador pues es un procesador no exactamente igual de potente que el de una torre de un ordenador pero vale pero creo yo sí quiero arduino y hablaremos de raspberry yo sí quiero arduino no es porque me quiero montar un ordenador es porque quiero construir una serie de dispositivos mecatrónicos entonces eso se puede hacer con raspberry también se puede hacer pero igual no necesito ahora iremos hablando de en qué casos pero igual no necesito tanta potencia como la que tiene un ordenador bien pues continuamos con lo que sería la conexión de arduino entonces al vino tiene dos formas de obtener alimentación entonces voy a girar la placa voy a acercarla un poco a ver si tengo suerte y la cámara enfoca y tengo este conector que tenemos aquí que acepta un máximo máximo recomendado de 12 voltios y tengo este conector de aquí que es el conector el típico conector de impresora de hecho tengo el típico cable de impresora aquí que es el que entra correctamente mi recomendación es la siguiente este cable nos va a dar dos cosas nos va a dar alimentación limitada por sobre todo por los amperios ahora hablaremos de ello y también nos va a dar conexión de datos con el ordenador cuando yo estoy creando un proyecto de arduino como ahora veremos a continuación necesito en todo momento transferir datos desde el ordenador hasta la placa pero cuando ya he programado la placa porque esto que tengo aquí en las manos no deja de ser una placa programable pero ya no quiero tenerlo conectado al ordenador quiero que esto funcione solo y probablemente en ese caso ya verás me interesará pues un momento me interesará tener cosas como estas de tener cosas como un pack de pilas que con el positivo y el negativo pueda conectar con un cable por cierto hablaremos de soldadura con muchísimo cuidado hablemos de soldadura vale hablaremos de esto por ejemplo le hablaremos de un pack que tengan soldado un par de cables que vayan a un conector de corriente y que en un momento dado pues podamos un momento que nos viviendo podamos conectar por aquí en el momento que faltan dos pilas más pero vale entonces en primer lugar vamos a empezar con el ordenador voy a dejarme esto por allí y más adelante hablaremos del tema de alimentación bien esto que veía es este pequeño cable es de un motor que tengo aquí y tú dirás eso es rosa que es pues más chicle efectivamente pero bueno ya veremos el tema el chileno entonces de momento lo que voy a hacer es conectar el dispositivo conectar la placa arduino el ordenador voy a conectar acción y lo primero que veo es que aparece por ahí un led acuérdate que a su momento había comentado que hay modelos de placas que te las vender sin les vale y luego tenemos aquí el botón de on vale el led de hoy no sé si se ve muy bien pero es un led que básicamente nos informa de que la placa está encendida que podrás pensar que es una chorrada pero realmente no lo es porque hay veces que cuando la placa no funciona dice que no funciona porque no está encendida en línea la corriente no funciona porque me he equivocado al programarla porque no funciona vale con lo cual me las contantes viene bien tener un led como ese vale si tengo arduino si tengo la placa a continuación me hace falta algo para código que haya el ordenador y meterlo a la placa a través del cable usb hay varias formas de programar la placa yo os recomiendo aparte fíjate que incluso aquí hay una pegatina que me dice tienes un nuevo y disponible y lo puedes descargar de arduino punto o hereje pues me voy a arduino punto o hereje o arduino punto cc de hecho se redirige a ruinosos vale y me voy a descargar el live entonces software online tools no ya sé que está muy de moda el tema de trabajar directamente en la nube yo actualmente soy más para ciertos casos como este de descargarme la herramienta así que pinchó en download me siguen ofreciendo el tema de code online pero yo no quiero trabajar con codo online y me puedo bajar el arduino y de o bien para windows como instalador o bien para como app de windows o bien para mac o bien para linux el arduino y es exactamente igual yo en este caso como estoy trabajando con mac pues lo que he hecho es descargarlo para mac vale pero evidentemente tú lo que tienes que hacer es descargar te lo para la plataforma que sea que con la que estés trabajando una vez que tengo esto una vez que he descargado el ide y me lo he instalado es cuando a continuación puedo buscarlo entre los programas instalados vale entonces vemos que si busco arduino pues encontraremos que tengo tengo un programa llamado arduino así que hago doble clic siempre que cuento esto por cierto suele haber alguien que pregunta oye pero yo he oído que arduino también se puede programar con el lenguaje de programación visual scratch mi respuesta es sí también se puede programar mediante el lenguaje de programación scratch y de hecho es mucho más fácil de programar para niños no te digo que no pero para nosotros que somos adultos yo lo que suelo hacer es empezar los cursos programando como realmente ese programa arduino que es mediante código y un lenguaje muy parecido hace y luego en un momento dado dentro del curso como voy a hacer en este curso lo que hago es mostrar la parte de arduino con scratch para que se sepa que existe esa parte vale pero ya te digo que arduino con scratch para niños para docencia para niños me parece muy bien pero claro para adultos si tú luego te va a ser una empresa con lo que aprendas en este curso hacer proyectos de arduino como en una empresa te van trabajando con el scratch terán-deportivo pero qué haces sabes ya vamos a ver pero claro pero si luego por ejemplo pues tú después de este curso te dedicas a dar docencia para niños de arduino pues te vendría muy bien saber que hay scratch ya que cada cosa para lo que sirve realmente bien vamos a ver antes de hacer nada más te voy a decir que este es el entorno de desarrollo de arduino es un pequeño y de realmente y deviene de integrated de pelotero y lo venden vieron mento sea entorno de desarrollo integrado y lo primero que te voy a decir es que cada proyecto de arduino se llama sketch básicamente en castellano un boceto o un bosquejo esto tiene sus de su sentido y su razón de ser y es porque se supone que en arduino no hacemos proyectos finales hacemos prototipos ahora dominó es una plataforma de prototipado electromecánico por tanto como el producto es un prototipo el código es un sketch es un boceto vale pero más adelante hablaré de la diferencia ante un prototipo y un proyecto final y la diferencia entre un sketch y un programa final bien entonces a continuación lo que voy a hacer es lo siguiente antes de empezar a explicarte esto voy a reiniciar la placa porque si te digo la verdad yo ahora mismo no tengo ni puñetera idea que hay dentro de esta placa quiero decirte con esto que yo tengo unas cuantas placas aquí en casa dentro de las placas estarán guardado el último programa que yo guarde porque una placa la puedes desconectar después de haberle metido un programa y pueden pasarnos en seis meses y cuando vuelves a conectar la placa recuerda el programa que tenía pero que nos recuerda soy yo vale entonces lo que voy a hacer es que me voy a ir a archivo me voy a ir a ejemplos y lo primero que te voy a decir es que él y arduino y ve viene con una cantidad increíble de muestras de código lo cual vienen muy bien para copiar y pegar bueno en este caso lo que voy a hacer es empezar con basics y empezar con un proyecto que se llama bling date cuenta que es que están por orden alfabético vale con lo cual primero debería ser bling aunque está el tercero pulso bling y lo que ocurre es que aparece esto que tenemos aquí ahora voy a poner por encima ahora hablo de este código vale y antes de decirte nada más antes de explicarte todo este código de aquí lo que voy a hacer es por una parte si quieres vamos a hacer las cosas bien voy en primer lugar a verificar verificar lo que hace es comprobar si el código tiene errores o no evidentemente este código no va a tener errores porque es el código oficial quiero decir es el código que viene del propio desarrollador pero no es mala costumbre acostumbrarnos a hacer clic y validar y una vez que el código haya sido validado momento que está compilando el programa como puedes ver vale me dice vamos a verlo me dice mira después de haberlo compilado para empezar no hay errores porque si hubiera errores aparecerán ahí abajo me dice el sketch usa el 2% del espacio de almacenamiento del programa el máximo es 32 mil bytes vale los 32 casos que te decía antes las variables usan 9 bytes de la memoria dinámica ahora hablaremos de esto dejando en 2039 bytes para las variables locales insisto al hablaremos de esto el máximo es 2048 bikes es decir no tienes 32 casas para las variables tienes dos casas para las variables pero insisto una vez más ahora hablaremos de eso bien una vez que le dado a verificar es cuando a continuación le voy a dar a este botón de aquí que es subir a la placa en principio este botón de aquí el botón de bling asume ese botón que hay ahí arriba a la derecha asume que la placa está correctamente conectada que a veces puede ser que no yo de momento le voy a dar a subir vale y efectivamente dice vamos a ver can not open device pues mira tenía miedo de que el programa reconociera correctamente la placa y no me diera error pero me ha dado error con lo cual casi mejor porque así te puedo enseñar cómo se arregla ese error ese error se arregla desde equipo desde herramientas vamos a ver aquí donde pone puerto y fíjate que en el puerto en este caso me reconoce el usb módem porque de alguna forma se han quedado con que la última vez que lo conecte tenía el usb módem efe a 131 pero fíjate que el que tengo actualmente es el usb módem efe a 121 vale con lo cual si alguna vez te da el error del puerto simplemente el puerto se cambia desde ahí desde herramientas luego hay una opción y yo particularmente si te digo la verdad nunca he usado que es la opción de bluetooth porque cuando uso bluetooth una placa de arduino no es para cargar programas si no es para conectarme con otros dispositivos pero vale pero está ahí entonces lo que hago es que me conecto aquí a usb módem y vuelvo a lanzar el programa y si todo va bien ahora no debe dar a luz vamos a verlo y ahora si te fijas ahora si te fijas el led parpadea ok lo cual quiere decir que entre que el led parpadea porque evidentemente este es que se llama blink y que aquí no ha habido ningún error ya tenemos el sketch correctamente cargado dentro de la placa base ya nos hemos asegurado en primer lugar siempre que hemos conectado correctamente la placa al ordenador bien ahora una vez que tenemos esto voy a dejar la placa que encima de la mesa y me voy a ir a hacer grande este sketch para ver todo el código bien de este sketch lo primero que te voy a decir es que esto que estamos viendo aquí es un comentario esto que estamos viendo aquí es un comentario de una única línea mientras que este empieza con barra asterisco asterisco barra es un comentario de múltiples líneas lo cual quiere decir que esto no es código informático esto es un comentario dejado en inglés para que lo lea una persona humana en este caso nosotros este es un comentario insisto de una sola línea para que lo lea una sola persona humana angles si me lo permites lo primero que voy a hacer porque claro cuando alguien empezar a subir lo primero que dice es madre mía cuánto código es que esto no es código vale eso lo primero que voy a hacer es borrar el comentario a ver el comentario es importante porque acredita quien ha hecho el programa en qué momento y acredita de quién es el programa entonces yo al borrar el comentario no me quiero apropiar del programa no quiero negar la autoría de kean etro el programa pero lo que quiero simplificar el código para que veáis quedarme con un archivo que sea lo más pequeño posible siguiente cuestión vemos el este comentario que dice la función de setup se ejecuta ones se ejecuta una vez cuando pulsas el botón de reset el botón de reset es ese de ahí es el botón redondito o cuando le das potencia a la placa es decir cuando quito el cable y lo vuelvo a poner mientras que la función del loop se ejecuta over and over again forever o sea se ejecuta una y otra vez otra vez para siempre vale lo cual quiere decir que lo que ocurra aquí va a ejecutarse para siempre en otros lenguajes de programación esto de aquí el loop se llama tal cual así se llama un loop en otros lenguajes de programación es necesario que desde el setup se llame al loop curiosamente cuando programamos videojuegos los videojuegos se programan así que es con una función de inicialización y una función de luz que va dando vueltas y por que cuando se programa un videojuego la red setup llama a la de loop en este caso no en arduino no hace falta que la de setup llame a luz porque el loop ya se llama el solito esto de aquí se llaman funciones más adelante y de hecho más adelante dentro de poco vas a ver que podemos crearnos nuestras propias funciones pero cuidado nuestras propias funciones se pueden llamar como tú quieres que se llamen – setup y look set up hilux son dos palabras reservadas que no podemos utilizar porque el programa cuando lea que hay una función setup va a empezar por ahí y cuando lea que hay una función loop va a empezar a ejecutarla una y otra y otra vez vale bien y ahora a continuación dentro de que este código por cierto está bastante comentado vale con lo cual prácticamente voy a leer los comentarios pero voy a decir qué es lo que hace este código este código en primer lugar lo que dice es que va a inicializar el pin digital led built in the building es también una palabra reservada que es ese de ahí como output como salida es decir es el es de ahí se va a utilizar para sacar información tú podrías decir como que para sacar información es que acaso se puede meter información desde un led no la respuesta es no lo que te quiero decir es que hay otros muchos pins como son estos de aquí que se pueden utilizar para sacar o para meter y hay que decirle a la placa para que se va a usar ese pin valen 3 en este caso el pin del led building se dice que es de output cuando realmente no hay otra opción vale pero es una buena costumbre hacerlo así y ahora tengo el digital raid que lo que hace es escribir tengo digital raid y digital read digital raid para escribir o lo que es lo mismo enviar señal y digital read para leer señal ahora mismo de momento lo que estamos haciendo es escribir por cierto esto que estás viendo que estoy haciendo es muy mala costumbre vale esto de meter el dedo por aquí en medio de la placa a mitad del funcionamiento pues no es una costumbre y esto de tocar esta cajita de metal vale tampoco es buena costumbre yo yo juraría que cada equis tiempo sino tanto un calambrazo vale igual te digo que es la mala costumbre y tú no debes hacerlo bien ahora led built in se pone en modo hair modo height de hecho fíjate que el comentario lo que hace es que hi es el nivel de voltaje y claro si aún le le das voltaje el led se enciende esto es de cajón digital right let building low lo que hace es que apaga el led haciendo que el voltaje sea escaso cuando no hay voltaje cuando no hay corriente evidentemente el led no tiene suficiente energía como para encenderse y una cosa muy importante en arduino es esta instrucción que no te digo que la vamos a usar en todos nuestros programas garbino pero igual en prácticamente todos que es el delay el delay es el tiempo que el programa se espera para ejecutar entre esta línea y esta línea si hay un delay aquí es el tiempo que se espera entre ejecutar esta línea y volver a empezar el loop en este caso está a 1.000 en prácticamente todos los programas otros lenguajes de programación que yo conozco el tiempo se miden milisegundos lo cual quiere decir que si estás viendo ahí 1000 se queda encendido un segundo entero ahora a continuación voy a bajarlo a 100 ten en cuenta que es pero como algunos segundos así cuidado cuidado he intentado guardar pero cómo como este archivo es una de las plantillas me ha dicho que no lo puedo guardar porque son lectura pues lo que voy a hacer es que me voy a ir al escritorio hola me voy a ir al escritorio me voy a crear una carpeta llamada curso arduino y voy a guardar esto como 01 blink 01 permíteme que guarde como 001 por si acaso así que está bien entonces ahora le doy a subir fíjate lo que es lo que he hecho de la misma forma que he dicho antes que tocar la placa en todo momento es una mala costumbre de la misma forma te digo que antes de subir un sketch a la placa es una buena costumbre guardar entonces guardar ese archivo y salvar vale o como ves en la tecla rápida command s o si estás en windows control ese vale pues envío vale fíjate ahora fíjate ahora entre un momento ahora en cuanto acabe de subir y fíjate que ahora el parpadeo es mucho mayor para pero técnicamente es de 0,1 segundos a lo cual hay que sumar el 0,1 segundos más el 0,1 segundos a 0,2 segundos lo cual quiere decir que este leer está parpadeando cinco veces cada segundo por cierto habrás visto que cuando le dado el botón de subir estos dos leds se han encendido brevemente voy a darle otra vez al botón de subir fíjate en esos dos leds esos dos leds son los que me dicen que la placa está recibiendo información a partir de él morales que prácticamente no se ha visto se ha visto un segundo y no sólo está recibiendo información a partir de él el ordenador vale entonces ya tenemos un primer programa y está funcionando vale tenemos un primer programa mediante el cual hemos conseguido hacer que la placa haga algo de hecho fíjate que le voy a dar al botón de reiniciar para comprobar que reinicia y vuelve a arrancar pero probablemente esto que yo he hecho ahora mismo aquí en la pantalla es un poco aburrido aburrido desde el punto de vista de que bueno realmente lo único que ha hecho es que parpadea un led pero la gracia que tiene arduino es precisamente poder utilizar cosas una serie de cosas que se llaman actuadores y que se llaman sensores momento voy a hacer un esquema y ahora lo vas a ver vale pues voy a hacer un nuevo proyecto lo voy a llamar arduino y te voy a decir que en arduino básicamente tenemos tres cosas tenemos las placas donde estamos empezando ahora mismo trabajando con arduino uno y ahora ahora voy a abrir la caja la caja de los juguetes ya la vez que tengo por aquí el arduino nano a parte de placas tengo sensores y tengo también actuadores los sensores meten información dentro de arduino los actuadores realizan algún tipo de acción esto es en gran medida estos tres grandes grupos son en gran medida los componentes que vamos a tener dentro de un sistema arduino voy a guardar esto voy a minimizar este esquema y como te digo un segundo porque tengo por aquí un cajón de sastre luego ya no lo voy a poner en pantalla porque porque para qué pero aparte es que no cabe porque el cajón es grande tengo por ejemplo algunas otras placas esto que estás viendo aquí es una placa zoom de bq pero que si te fijas es un arduino o sea tiene el puerto de entrada tiene un micro usb en lugar de un usb de impresora pero es lo mismo y tengo por aquí una serie de puertos adicionales que no tiene una placa arduino uno pero a la vez es una placa que no es estándar vale la voy a dejar por aquí en algún momento donde la usaré y verás para qué sirven todos estos puertos que hay aquí aunque también te voy a decir que tengo tengo tengo tengo tengo por aquí un silo momentín ya lo tengo enredado de cables tengo por aquí un shield momento que tenía por aquí un sensor conectado tengo por aquí un sil que hace eso este es el que se conecta a la placa de arduino lo que hace es precisamente darle arduino todos estos conectores pero hablemos de éste no es muy caro creo que son 10 ó 15 euros estuvieras no tienes un poco maltratado pues también puede ser posible entendía los de mourinho vamos a ver vamos a ver que tengo por aquí cosas tengo otro sur por aquí pues quería quería quería enseñarte – tengo otra placa por aquí vale otra placa esta cual esta también es una revisión 3 pues creo que esta será una original será una revisión 1 que por cierto es realmente al final es lo mismo tampoco te creas tú que hay mucha diferencia el botón de reset está ahí en lugar de estar ahí quería enseñarte era para fastidiar no lo voy a encontrar él arduino nano porque él arduino nano además es que es bonito de ver así que sé que eso que estás oyendo mira mi navidad esto que estás viendo aquí por ejemplo es una placa arduino nano lo tenemos por aquí el momento que lo pueda leer a ver si la cámara puede enfocar que ahí se ha enfocado durante un momento ahora si la cámara enfoca a liberarse ahí arriba en el texto que pone que es un arduino mini para proyectos para ciertos tipos de proyecto está muy bien pero fíjate que sólo para alimentar me encuentro con que no hay entrada de alimentación a la entrada de alimentos eres una patilla de éstas mientras quién arduino uno viene muy cómodo conectar el cable usb y empezar a funcionar vale por eso te digo que esta placa el arbi no mini o el nano pues son muy chulas porque son pequeñitas pero cuidado porque tienen sus inconvenientes a la voy a dejar por aquí pero pero como te digo de lo principal que quiero empezar hablando es de por ejemplo actuadores entonces voy a por ejemplo un actuador vamos a ver vamos a empezar con algo sencillo voy a empezar con un led esto que tienes aquí es un led parece un led de limón vale un led amarillo los tengo en múltiples colores voy a despejar un poquito esto los tengo en múltiples colores tengo amarillo tengo los clásicos rojos le tengo verdes por ahí mira un verde normal aquí en definitiva por eso vale hay leer de múltiples colores precio no muy caros si nos vamos a precio vamos a ver por ejemplo busco leds y me voy a shopping y no esto no esto no lets arduino aunque no son técnicamente de arduino pero bueno después mirar por ejemplo este led vale 0 64 y de hecho me parece caro en el sentido de que aquí esto sí para que si lo compras individual te sale caro pero si compras packs por ejemplo fíjate que por 149 euros tienes 20 tienes 20 20 les vale de donde eres por cierto y te lo digo porque yo soy de valencia entonces por ejemplo si fueras de valencia te podría dar una serie de tiendas de referencia en el sentido de que si no sabes dónde y para comprar el dispositivo es puesto de viaje de direcciones en madrid por ejemplo no lo tengo tan localizado sí que te puedo decir que hay tiendas online electa selecta donde yo suelo comprar y me funciona bastante bien entonces por ejemplo pues buscas aquí leds sí pero no pero no porque no es esto lo que quiero leer arduino [Música] bueno esto se parece un poquito más pero o sí aquí pero juraría que no lo nuestro otra cosa vale pues bueno sí pero no porque este es muy bestia vamos ahí hay padres de leerse en los que por eso por uno o dos euros tienen pues esos quince veinte de estos vale sigamos vamos allá ahora lo que quiero es que de entrada momento de entrada no se active este le de aquí sino que se activen estos leds de aquí vale dicho esto lo primero que vamos a ver es que para activar un led tiene que haber un diferencial de potencia entre esta patilla la larga que es el positivo aunque lo podemos cambiar y la patilla corta y evidentemente cuando esa diferencia de potencia se encuentra aquí dentro de este medio es cuando el led se enciende si te digo esto lo siguiente que te voy a decir es que si nos fijamos en la placa veremos que hay una serie de puertos aquí aquí arriba que son los puertos digitales de hecho en algunas placas si giras la placa ahí te dice que es el grupo de puertos digitales por aquí abajo tenemos los puertos analógicos y tenemos los puertos de potencia entonces en potencia bueno tenemos una entrada salida de referencia tenemos un reset aunque nunca lo utilizado porque nunca se manda al caso de querer reiniciar la placa desde un programa pero bueno mucho puede hacer y los puertos de power entonces los puertos de power tenemos igual si lo giro igual lo ver es un poco mejor mira toque bien tengo el puerto de 33 voltios el puerto de 5 voltios que es el que más se suele utilizar y dos puertos de ground vale entonces en este caso voy a utilizar 5 voltios en el momento en el que trabajamos con leds por cierto de la misma forma que ocurre cuando trabajamos con otros componentes es interesante trabajar con resistencias con resistencias electrónicas para poder controlar la potencia del led no lo voy a hacer hoy no la resistencia son estas cositas de aquí y el problema de las resistencias es que el amperaje el amperaje no el moralo somió es la resistencia vienen definidos por el código de color que tiene la resistencia es una de las cosas no te digo más difíciles pero sí más desagradables de la parte de electrónica al entonces lo que voy a hacer es que te digo para que este pack pues eso por uno o dos euros tienes 800 millones de estos de resistencias en el ejercicio que voy a hacer hoy lo que voy a hacer es no utilizar resistencias pero evidentemente soy consciente de que una forma de controlar el voltaje que le pasamos a la al led es precisamente con uso de estas resistencias ahora yo te digo voy a quitar momento esto yo te digo que en estos puertos tengo lo que llamaríamos la señal vale y en estos puertos tengo el voltaje entonces qué es lo que hago bueno pues lo que voy a hacer en este caso o tengo por aquí también la masa lo que voy a hacer en este caso es conectar una patilla del led aquí y otra patilla del led aquí pero claro como lo puedo hacer no llega no me llega físicamente cuando tenemos este caso lo que solemos hacer lo que solemos hacer es usar una cosa que se llama un break board momento aquí hay diferentes tipos de modelos yo voy a usar uno que es bastante largo si tú tienes alguno en casa probablemente tendrás alguno más corto yo también tengo alguno más corto por aquí pero ahora mismo no lo veo tendrían alguna otra cajita vale entonces bueno voy a usar este de aquí de hecho este que tengo esto como de plástico translúcido lo más los más normales son de color blanquito y como te digo mientras que aquí tengo hasta 65 pistas creo que son los normales tienen hasta 30 pistas cuáles son más o menos la mitad pero ya te digo que son exactamente iguales un break board funciona de la siguiente forma por una parte estos carriles de aquí están conectados en vertical todos estos de aquí esos canales de aquí están conectados en vertical y estos canales de aquí están conectados en horizontal así que a continuación voy a usar cablecitos vamos a usar cablecitos y bueno vamos a ver voy a conectar este led por ejemplo el rojo en la pista 15 vamos a estas dos pistas en la pista vamos a acercarlo en la pista 15 y en la pista 13 ahora a continuación voy a un par de cables y tos esto es por ejemplo unos cuantos cablecitos cojo en este caso 2 y me aseguro que estos cables sean macho macho porque necesito que estos cables sean macho macho de hecho verás que para otras cosas usaremos cables hembra hembra entonces el cable hembra hembra es este de aquí el cable macho macho es este de aquí pero evidentemente el texto evidentemente si la placa tiene aquí un puerto hembra y el bread board tiene un puerto hembra tienes puerto y tiene puertos hembra pues necesita un cable macho macho para poder conectar vale entonces a continuación voy a conectar esto al 15 fíjate que está conectado en la misma hilera vale está conectado en la misma hilera 15 y es lo conecto por ejemplo por ejemplo pero acuérdate del número lo conecto al puerto 8 puedes ver ahí vale lo he conectado al puerto 8 ahora el otro cable lo conecto desde la pista correspondiente vamos a verlo a ver que la mano es que encima no veo un pimiento haré vale lo conecto a la pista 13 y aquí lo conecto al ground lo he conectado a una de las dos pistas ground en la placa arduino la original no pues te voy a decir que recordaba que sólo había un ground pero nunca ellos lo recordaba más vale ya tengo esto ya tengo el leve ahora luego lo cambiamos al rojo y al verde y al tal ok pues voy a conectar evidentemente al conectar esto no va a hacer nada no hace nada únicamente hace un bling en la leb y ahora a continuación lo que voy a hacer es programar la placa para que saque información importante por el puerto 8 y a partir de ahí pues pueda arrancar vale pueda arrancarlo a ver el momento voy a parar vale pues a continuación lo que voy a hacer es en arduino voy a hacer un nuevo sketch ahora no voy a partir de una plantilla sino que voy a partir desde uno desde cero hago esto grande vale boya en arduino preferencias en arduino en preferencia a su momento y que arranque en las preferencias ahora cuando quieren arrancar la lengua y personal ha arrancado ahora y lo que quiero es que el tamaño de la fuente del editor pues esté a 16 porque así el código probablemente lo verás mejor esperanza la mayor tamaño vale pues como te decía ahora a continuación voy a hacer lo siguiente por una parte y volviendo a lo que hemos hecho antes ping mode voy a escribir lo siguiente voy a escribir ping mode y ahora específico el número del puerto que acuerda es que puerto usado hace un momento el 8 correcto vale pues pongo 8 y le digo que es de tipo output no voy a leer sino que voy a escribir a continuación en el loop lo que hago es decir lo siguiente digital right en el puerto 8 quiero algo quiero un delay de 1000 milisegundos quiero un digital raid en el puerto 8 de löw y quiero un delay de 1000 milisegundos básicamente he hecho lo mismo que hacía el programa anterior con el led pero con un leve externo si yo ejecuto este programa me va a dar error se te ocurre porque es algo que no esté correcto pues verás es muy sencillo pero a la vez es determinante de la misma forma que hay otros lenguajes de programación como por ejemplo python donde no hay que poner punto y coma al final de las líneas hay que tener en cuenta que el lenguaje con el que ese programa en arduino deriva prácticamente directamente de cee y eso quiere decir que se espera que yo ponga un punto y coma al finalizar cada instrucción te acuerdas lo que te he dicho antes bueno primero voy a guardar voy a guardarlo en jose vicente en escritorio en curso arduino blink muy bien pues lo voy a guardar como 002 leer y voy a darle a verificar y al verificar me va a dar errores entonces fíjate que de hecho el programa me intenta ayudar un poquito y me dice expected punto y coma o se me colon que se llama before delay entonces lo que tengo que hacer es poner punto y coma al finalizar cada una de las líneas de instrucción siempre los voy a guardar le doy a verificar y si todo ha ido bien y debe ser que sí si todo bien me dice que ok muy bien ahora a continuación viene el momento clave de de ponerlo para de subirlo así que lo estoy subiendo vamos a ver si funciona vamos a ver ok vale vamos a ver digital right ok por aquí voy a dar la vuelta al leve pero la vuelta a las patillas voy a asegurarme de que lo he conectado ahora sí vale ahí lo tenemos lo había conectado las patillas al revés entonces ahora si nos damos cuenta por cierto que el led también te digo que la cala la cámara lo que hace es actuar un poco como de filtro el led está haciendo máxima potencia tampoco es muy incómodo de ver también te lo digo yo lo estoy viendo ahora mismo si lo enfoco de frente sí que me molesta un poco la vista pero bueno esto cuando trabajamos con algún curso presencial pues sí que digo no miréis muy fijamente al led no es que os vais a quedar ciegos evidentemente pero sí que os puede llegar a molestar aleara lo bueno que tiene la cámara es que está impidiendo que te llegue a molestar ya tengo un primer led con lo cual a continuación lo que voy a hacer es conectar más leds vale vamos a continuación bien y si con esto más leds el ejercicio de conectar led se hace para lo siguiente vamos a ver se conectó más leds por ejemplo voy a conectar este aquí a ver que no veo bien a ver que lo tengo que ver yo pero también tú o sea un cachondeo vamos a esto por aquí ahora veremos lo conectado correctamente que igual no patilla larga patilla corta y quieto con lo cual patilla larga patilla de corta y el verde patilla larga patilla corta más que nada es luego para acordarme ok tengo el rojo el verde y el azul claro como te puedes imaginar cada una de las patillas de señal la voy a conectar a alguno de estos puertos de aquí vale vale que los dos primeros no deberían usarse pero tengo hasta 13 puertos lo cual y por cierto tengo un grande aquí de regalo en este caso tengo un grande hay un ground aquí y un ground aquí con lo cual no me hace falta compartir gran pero en alguna ocasión me podría hacer falta así que voy a hacer lo siguiente el ground es el negro así que yo lo que voy a hacer es que el ground lo voy a poner aquí en este carril que te he comentado que corre en horizontal necesito más cables [Música] no tengo la típica bolsita pero estos son hembras con lo cual esto es no voy a buscar cables cables macho qué cable más extraño que voy a encontrar hay mucho bien llegarán habrá cables macho imposible bueno voy a cojer cables macho de otro tipo de este tipo de aquí sin cabecita los cables macho más y más vales ya está ya van saliendo vale vamos a ver el rojo originalmente el rojo está conectado al puerto 8 así que este de aquí lo voy a conectar al puerto 9 y este de aquí lo voy a conectar al puerto ahora ahora este va a la masa ahora me hacen falta cables pequeñitos dame un segundo mirar me hacen falta cables pequeñitos como este o como este vale porque son cables donde yo únicamente lo que quiero es conectar esta parte de aquí con esa parte de ahí voy a desconectar la corriente por cierto lo conecto aquí vale bajo ese pequeño también londres este es super pequeñito calculo que llega a meter calculo que llegara si es que llega y algún otro cablecito pequeñito nota mental para esta noche ordenar los cables y otro cable pequeñito otro cable pequeñito como ese y ves que es macho macho el minúsculo lo que voy a hacer es y conectarlo desde aquí hasta hoy ok calculo que habrá entrado espero que haya entrado no he entrado en un segundo que se resiste si se resiste bueno muy bien fantásticos 101 entre otros vamos a verlo vamos a verlo vale tengo aquí lo siguiente tengo aquí que todos los puertos de masa 1 el naranja el verde y el rojo están yendo a este canal de aquí que es donde estoy trayendo la masa el ground es de la placa base y ahora cada uno de estos tres que es este de aquí y los dos amarillos están yendo a los puertos 7 8 perdón a 8 9 y 10 ahora voy a abrir fritz y es un programa precisamente de dibujar diagramas eléctricos y así utilizamos ese programa para documentar la solución que estamos adoptando vale pues ahora para continuación lo que voy a hacer es este programa lo voy a guardar como y lo voy a guardar como 0 0 3 3 leds y así como era luego evidentemente te voy a subir el código de los programas pues verás qué es lo que hemos hecho en cada caso entonces extendemos este programa y como te puedes imaginar que estoy usando los puertos 8 9 y 10 pues uso el puerto 8 el puerto 9 y el puerto 10 ahora a continuación voy a decir lo siguiente digital right 8 y 10 en modo high y luego digital raid 8 9 y 10 en modelo si todo ha ido bien y no me ha equivocado con ningún cable ahora veremos que puede ser que sí conecto la placa de momento únicamente se enciende el de rojo porque todavía no es subir sketch a la placa le doy a verificar vamos a primero comprobar por cierto cuando le das a subir primero verifica y luego sube el riego porque con el tiempo luego te acostumbras a directamente subir vale pero bueno al principio es bueno primero verificar y luego subir entonces le damos a subir y si todo ha ido bien ahora se encenderán los tres leds a la vez vale se encienden el rojo el verde y el azul es de lo que hace es que los enciende los tres a la vez espera un segundo con los tres encendidos y a continuación los apaga todos de nuevo a la continuación voy a variar un poquito el programa donde lo que voy a hacer es lo siguiente en primer lugar y volvamos a poner comentarios en mayúsculas en primer lugar apago los leds y lo que hago es que los tres los pongo a low y me espera un segundo a continuación lo que quiero hacer es que solo el led número 8 el 8 es el rojo por ejemplo vale pues lo pongo en height y me espero un segundo ahora a continuación quiero el 8 en low y el 9 en hair quiero que vayan rodando los dos leds y me espero un segundo ahora a continuación quiero hacer esto quiero el 9 en low y el 10 en high y por último bueno yo creo que la 77 que ya vamos a tirarlo 1 2 y 3 espera un segundo 1 2 y 3 de hecho este me lo puedo cargar y así vamos a ver como continuamente vamos a ver los leds en funcionamiento vale ya tengo esto por aquí ahora lo que me gustaría es que estos leds corrieran más rápido lo que puedo hacer es que el delay lo puedo bajar voy a partirlo por 10 voy a subir el sketch como podemos ver ahí tengo una pequeña fiesta de leds voy a poner 300 o sea momento está subiendo y 300 y ahora qué es lo que está ocurriendo aquí vamos a hablar de lo que comentaba antes el sistema esto de las variables en un momento dado es interesante utilizar variables hay dos tipos de variables las variables globales que existen tanto dentro del set-up como dentro del loop las globales y las variables locales que son las que solo existen o dentro de este por dentro de este en este caso me voy a ir arriba del todo y digo minas que cada vez que hago un cambio tengo que cambiar aquí y cambiar aquí y cambiar aquí es un rollo lo que quiero hacer es utilizar una variable para que más adelante solo lo cambia en un sitio y se me cambie todo a la vez así que voy a escribir lo siguiente en primer lugar tengo que especificar el tipo de la variable el tipo de dato en este caso va a ser un número entero así que escribo inc a continuación inventé un nombre vive un nombre para la variable en av agua vale pues agua entonces muy importante la palabra int viene de integer que quiere decir entero número entero en inglés tú siempre que veas una palabra que está en inglés es que no la puedes cambiar vale tú no puedes cambiar pin maule no puedes cambiar output no puedes cambiar de digital wright pero siempre que veas algo en castellano es que sí que lo puedes cambiar por tanto de igual que hay poca agua que ponga localiza que bueno lo que sea que quieras que ponga entonces digo int agua es igual a por ejemplo 400 y entonces yo ahora vengo por aquí copio agua y lo pego aquí y lo pego aquí y lo pego aquí ejecutó fíjate qué variables globales usan 9 bytes date cuenta que si ahora recargo fíjate que me va a decir el cuidado si me falta un punto y coma mal me falta un punto y coma entonces me va a decir bueno la pared celular usa el 9 bikes se ve que esta que he usado ha sido ha usado muy poca memoria pues fíjate que ahora yo he cambiado a 400 y lo que está haciendo es que yo lo escribo en un sitio y automáticamente me lo aplica en tres sitios hoy por ejemplo pongo 1400 lo cambio en un sitio en un solo sitio quiero decir le doy a recargar y fíjate como fíjate como ahora está uno con cuatro segundos en cada cambio de fase lo que te quiero decir con esto principalmente lo que te quiero decir con esto es que como puedes ver aquí como puedes ver en la pantalla lo que está ocurriendo es que yo realizó un cambio en un único sitio y se me cambia en tres como podría haber sido en 30 sitios ya que son las variables los vales son ayudantes nos permiten al igual que las variables en cualquier otro lenguaje de programación poder utilizarlas más adelante claro que también te digo que cuando por ejemplo programamos en el curso de payton yo soy mucho menos estricto con el tema de las variables porque digo mira sabes que tenemos 8 gb de ram quiere decir crear las variables que te dé la gana que no te vas a acabar la ram en arduino la cosa cambia en arduino yo siempre digo mucho cuidado ten mucho cuidado porque hay 32 cast para variables con lo cual la memoria en la memoria no es infinita voy a pasar a otro ejercicio por lo cual antes de pasar a este ejercicio a otro ejercicio quiero decir voy a utilizar un servomotor dudas de algo relacionado con los leds antes de cambiar pues los leds son muy bonitos los trabajaremos más adelante de momento me han servido para hacer una primera demostración entre algún tipo de actuador un led es un actuador no es que actúe mucho pero bueno es un diagnosticador más que otra cosa entonces voy a decir por aquí que uno de los actuadores que hemos visto son leds sobre luces que se encienden y se apagan como ya verás más adelante como te digo parece que no sirven para nada pero realmente sí que sirven ahora en esta siguiente parte de la clase quiero hablar de otro actuador diferente un clásico que es el servomotor entonces voy a 90 y 99 calma calma calma antes de antes de pasar al siguiente ejercicio te había dicho que quería utilizar un programa llamado fritz sing fritz y no tengo instalado qué raro pues bueno lo vayamos a descargar entonces me voy a descargar este freak sing es un software de código abierto es libre download no teniendo un loan y así pero no quiero nada o sea interesante pendón low claro con paypal y lo pagó y además creo que tengo a los casos que tengo saldo en cuenta de paypal como para pagar pero además porque parece que me quiera saltar el pago pero sí de pago esto es a ver a ver o según bien me lo voy a bajar más que nada para que veas que hay algún sitio donde todavía se puede encontrar de forma gratuita momento que acaba de descargar hago clic bueno y te digo el porqué de fritz sing es muy sencillo y es que este montaje que hemos hecho que evidentemente pues no tiene más misterio no tiene mucha mucha ciencia pero yo ahora cojo con los dedos lo desconectó y tú igual llegas mañana dices hoy lo que habíamos hecho en la clase entonces como en proyectos de arduino lo más normal es en todo momento estar montando y desmontando fritzinger es una forma de dejar constancia de lo que hemos hecho de dejar un esquema entonces es un momento que está verificando fritz zinc lo que voy a hacer es crear el esquema de una forma muy sencilla aunque creo que ya lo habrá utilizado alguna alguna otra vez y así pues eso vamos dejando como una documentación de lo que hemos hecho mientras tanto mientras arranca fritz chingón o lo que voy a hacer es sacar del bolso de mary poppins pues voy a sacar alguna algún servomotor vale tenemos ese tipo de servomotores a ver alguno más pequeñito los servomotores siempre son muy delicados desde el punto de vista en el que consumen bastante electricidad consumen bastante sean bastantes amperios y luego tengo este de aquí que es uno más pequeñito no puede abrirse con la mano menezes ahora a ver a ver es un servomotor de este es el de 180 y este es de 360 entonces los servomotores de 360 están pensados para correr continuamente por ejemplo para hacer ruedas y los de 180 están pensados para poder controlar perfectamente el ángulo con el que giras el servomotor entonces son parecidos pero no funcionan exactamente igual como ahora a continuación vas a ver fritz en un momento antes de nada vamos a abrir esto si se consigue abrir está abriéndose está costando la vida bueno vale 2007 2014 igual se ve que está descargando la versión antigua pero da igual porque para lo que quiero hacer como te puedes imaginar sirve exactamente igual y vamos a ir al esquema y en el esquema para dejar documentado el ejercicio anterior vamos a ir a regar boards ah vale vamos a meter una placa arduino aquí vale y como recordamos lo que he hecho es que he cogido un led lo he conectado al era él era el 15 no era el 15 esto lo he conectado aquí he metido otro leve y lo he conectado al este dejas cambiar el color si este ha sido de color hielo y he metido otro aquí a perdón este no esté aquí esté aquí vale este ha sido de color gris vale lo que hecho a continuación es un cable un cable un cable en cable meter este este al 8 este al 9 este al 10 este al ground vale y ahora este aquí esté aquí y este aquí si hace falta lo que hago es que parto para que se vea claramente por donde ha ido cada uno de los cables seguridad vale yo que sé algo así ok vale con lo cual ahora lo que voy a hacer es guardar esto lo guardo en el escritorio el curso arduino ha guardado el led y tres leves muy bien pues a la guardando ya puedo cerrar por aquí y ahora es cuando vamos a ver el tema de el servomotor ballet el servomotor lo primero que te voy a decir bueno aparte de que voy a desconectar todo esto y esto lo desconectó lo dejo aquí y ahora veremos dónde metro desconectó toda la muerte cada uno de los dos servos llevan estas tres entradas si nos fijamos en el lateral vaya por dios ninguno de estos lleva a un esquema no pasa nada los esquemas en internet mira justo yo a dos que no tiene ningún tipo de esquema en internet podemos encontrar los esquemas que nos dicen que uno de estos una patilla es para los cinco voltios porque como te digo los servos tienden a consumir bastante electricidad otro es para la señal y otro es para el ground para la masa vemos como en las tres hembras van juntas pero aquí no puedo conectarlas las tres juntas vale entonces es por esto que hay otras placas como el azul que fíjate que vienen ya preparadas para que yo pueda conectar este conector directamente ahí metido vale ahora comprenderás porque hay otras placas que tienen ese conector o como te decía yo en ocasiones uso seals como éste pero hoy no lo voy a usar porque no asumo que tú lo tengas o sea para para que luego pueda estar el ejercicio donde si te fijas tengo las conexiones en grupos de tres y yo puedo conectar eso y quedarme así de ancho vale pero como ya te digo ahora luego te digo la referencia de éste shield pero hoy de momento no lo voy a usar porque no asumo que lo tengas de momento lo que voy a hacer es sacar 3 cablecitos macho si tengo voy a desconectar esto si tengo tres hembras por aquí y tengo hembras por aquí pues voy a usar cables macho entonces vamos a ver en primer lugar voy a [Música] en primer lugar fíjate en este caso la placa azul me lo va a archivar me va a activar el sistema de colores fíjate que el marrón es ground el rojo es voltaje y el amarillo es signal es señal vale no resolver esa y las letras de ground voltaje y signal entonces se me va a olvidar vale me lo repito a mí mismo porque es una verdad entonces cojo el marrón y lo meto en ground la placa lo meto en una de las patillas de grau ahora a ver se enfoca no enfoca no enfoca no enfoca enfoca hay enfoque siguiente cojo la patilla del medio la patilla del medio de dolores que es el voltaje y lo meto en voltaje y como puedes ver ahí he metido la primera se enfoca he metido la primera en ground la segunda he metido en los 5 voltios y en tercer lugar voy a uno de estos cables el tercer puerto voy a poner por ejemplo en el puerto 8 lo cual me va a dar un pequeño problema porque recuerda que hace un momento había utilizado el puerto 8 para algo con lo cual es posible que la placa le intenten vierna señal que no toca pero bueno veremos dejo esto por aquí a ver si no me tumba e esto lo sacó de la pantalla volver a meter vuelvo a meter en otro una idea de lo que va a hacer ha hecho como un amago de hacer algo bien y ahora a continuación de hecho ahora mismo realmente en el programa le está enviando como si fuera la señal de un led cuando el servomotor no sabe cómo interpretar eso vale entonces te voy a decir que te voy a decir que hay por aquí vamos a ver esta patata [Música] vale tengo por aquí en el en los proyectos de proyecto observó servo y cnop suite la verdad es que no quiero ninguno de éstos uno de estos el que quiero lo voy a hacer desde cero a ver sensores no no no no no no control no voy a ser uno desde cero porque vale pues hala archivo nuevo este lo voy a guardar en donde donde estás mejor se centre en escritorio en curso harto vino 00 30 180 empezamos de 180 y digo lo siguiente vamos a ver manejar un servo para el programa es más difícil de lo que parece lo primero que hay que hacer es poner almohadilla incluye menor que servo punto h qué es lo que está haciendo bueno lo que está haciendo es cargar un archivo de librería que ya está en arduino no lo tienes que tienes que sacar de ninguna otra parte que se llama servo que es el que define cómo se manejan los servos ahora yo digo servo esa palabra no la puedes cambiar pero las siguientes que la puedes cambiar en viéndote una palabra para hacer referencia a tu motor thiago un motor vale un motor es una palabra un poco confusa porque también está en inglés pero bueno vamos a poner motor y ya está entonces en primer lugar y déjame que te comenté en primer lugar cargo la librería de ser vos creo una instancia del servo la instancia es una palabra un poco delicada más adelante de explicar qué quiere decir de momento porque la primera clase para no agobiar ahora vamos a ver voy a decir qué en el inicio motor punto a touch el puerto 8 le hemos puesto no pues el puerto 8 o sea con el número que quieras el número que cojas aquí es el que tienes que poner en el programa ahora a continuación voy a decir lo siguiente motor puntos raid inventé un ángulo y un ángulo de 180 45 vamos allá pues yo creo que ya está yo creo que no me falta nada vamos a primero validar bien qué pasa ser promotor boira servomotor oiga bolt setup servomotor ese es el problema vale le falta un punto y coma verificamos ok vale fíjate que este usa más memoria que antes y eso es porque quieras que no utilizar eso se ha llevado un buen porcentaje de la memoria un 2% que tú dirás bueno me queda un 98 pero estos programas se van a complicar vale y ahora lo voy a subir fíjate ahí mira mira en el servomotor voy a ponerlo en un lateral para dejar espacio para el vídeo ok vamos a darle [Música] es visto en nuestros visto parte se ha escuchado un sonido como se ha movido a 45 grados claro no está alineado por cierto vamos a ver que son 0 grados pero cuando cargo fíjate ahí vamos a ver qué hace y cataplines vale esos son cero grados ok ahora 45 4 lanzó a la debe girar 55 grados bueno más o menos no es muy preciso pero vale vamos a ver 90 grados vamos a verlo imagine le diría a los 45 muy precisos pero vale y que por ejemplo 180 era con 180 se debe ir a la otra parte y se va a la otra parte bien ahora quiero hacer un programa que sea un pelín más complejo lo que quiero es lo siguiente quiero que el servomotor vaya de una parte a otra creo que vaya haciendo así para ello lo que voy a hacer es declarar una variable en ángulo que va a ser igual a cero y ahora lo que voy a hacer es ángulo y aquí cuidado ángulo más más ángulo más más es un operador de incremento que lo que hace es que cada vez por aquí que cada vez que pase por aquí le añada un valor vamos a comprobarlo como pulso cargar cuidado vale porque lo desconectar porque se va a ir a cero por cierto sí exacto exacto pero en perdon perdon perdon perdon perdon perdon perdon un delay de 500 un momento les han estado viendo un poco loco porque si no lo estaba haciendo a toda velocidad no sé si ves como cada medio segundo va girando un poquito vamos a ponerle cada 50 milisegundos pero era tiki tiki tiki tiki lo estás viendo como poco a poco va girando claro qué es lo que va a ocurrir en 180 porque en 180 ya no es capaz de cumplir si se queda frito cuando vuelva a ser un múltiplo de 360 volverá al principio y vuelve pero esto que acabo de hacer no mola nada bien te lo digo en el momento bueno ahora un momento ahora volverá y volverá a girar pero no mola nada no mola nada porque le estoy mira ves y ahora vuelve a girar pero ya te digo no no me gusta hacer eso y la razón por la que no me gusta hacer eso es porque le estoy dando ángulos que son inválidos y en este servo no pasa nada proyectos donde se puede romper a ver qué cuesta dos euros quiero recordar pero no es cuestión entonces voy a aumentar un poquito este programa diciendo lo siguiente vale voy a aumentar el programa diciéndole que si ángulo sí es cierto qué ángulo es mayor que ciento perdón es menor que 180 en ese caso ángulo más más a ver y hacer una cosa inc dirección es igual a cero si ángulo es mayor que 180 dirección es igual a 1 y si ángulo sí es cierto qué ángulo es menor que cero en ese caso dirección es igual a 0 ahora sí dirección es igual a cero en ese caso ángulo más más y si dirección es igual a 1 en ese caso ángulo menos menos a lo cual tú me dirás que no acabas de entender muy bien que acabo de hacer aquí pero no pasa nada porque hará a continuación quiero primero poner lo primero en funcionamiento y luego te explico qué es esto de los ships voy a ponerlo en marcha a ver si lo he hecho bien o lo he hecho al revés que a veces pasa que lo hago al revés hay un punto y coma que falta punto y coma y ya está vale vamos a verlo y entonces si te fijas ahora va en esa dirección y si todo va bien cuando llegue al final va a volver al principio y ahora vuelve al principio y cuando llegue al final y lo que va a hacer es volver al principio es un ser un poco antiguo creo que el cero la parte de ser no la coge muy bien no sé creo que no tendría tocado algún golpe en algún momento no lo sé vale entonces mientras esto va rodando te voy a contar una serie de cosas vamos a ver para empezar lo que estoy haciendo es definir un ángulo y una dirección y establecer una serie de condiciones de ejecución el eve es un incondicional de hecho si miras en el curso de payton verás que lo hemos explicado paso a paso entonces lo que hago es si el ángulo es mayor que 180 así esto es cierto en ese caso la dirección tenga de la vuelta pero si el ángulo es menor que cero en ese caso la dirección es hacia arriba dirección cero es hacia arriba dirección o no es hacia abajo entonces por último a continuación dirección si dirección es la dirección natural en este caso ve subiendo de ángulo y si la dirección es la dirección invertida en ese caso ves bajando de ángulo valero es lo que quiere decir este programa pero por si esto no fuera suficiente te voy a decir que a mí este movimiento no me gusta demasiado no sé si lo ves pero este movimiento es muy [Música] es muy lineal o sea fíjate que la pala no aceleran y frena cada vez que cada vez que llega al principio te das cuenta sino que llega con la misma dirección y eso para ciertos movimientos en robótica puede ser un poquito fastidiado entonces a mí me gusta hacer un cuando te digo a mí me gusta siempre que me digas tira a mí me gusta que decir que no te va a gustar tales control entonces a mí me gusta hacerlo con trigonometría yo sé que tú habrás oído trigonometría haber hecho y hasta ahora me gusta pero ahora vas a ver que para este ejercicio concreto a hacerlo con trigonometría viene bastante bien para eso voy a crear un nuevo proyecto no voy a guardar lo voy a guardar como o sea vigente escritorio curso de payton no curso de arduino y lo guardó como 004 cervo 180 s no voy a copiar el código que tengo porque tampoco voy a empezar desde cero cuando realmente este ejercicio es una evolución del ejercicio anterior y ahora lo que voy a hacer es revisar dónde están las la librería de matemática vale entonces vengo por aquí y digo arduino más sin vale y ahí está el seno de un radial y a continuación te voy a decir una cosa el seno gráfica del seno el seno tiene esta gráfica en tres claro si te fijas yo con esta gráfica lo que puedo hacer es que el servomotor ves como acelera llega frena ves se puede hacer un movimiento más natural entonces lo que voy a hacer es lo siguiente contador esto fuera y ahora digo el motor punto digital right y digo un momento quiero flow de contador arte explicó la diferencia digital right donde se me ha quedado el seno me voy a la referencia de arduino y pongo symposia ésta y requiere flow por eso he escrito flotará verás otro explicó y pongo sin de el contador y por último contador más igual 0.1 vamos allá vamos voy a comprobar primero que funcione y ahora ahora vamos a analizarlo y aquí falta un punto y coma vamos a ver qué pasa cuál es el problema que aquí falta un punto y coma qué facilidad tengo para olvidarme puntos y coma y espera que aquí qué pasa ser bajas no member digital wright perdón es que será right si es grave vamos acá y ahora qué te pasa y allí me ha dejado un punto y coma en el sastre del programa vamos allá fíjate que el programa y por qué te pasa no es ángulo es contador álava ven algunas formas plane y ahora si todo va bien si todo va bien hola valero no sé si va muy lento o muy rápido y cuidado y cuidado el seno x 180 es importante muy rápido muy lento lo veremos al estar dado cuenta como lo que hace es que frena y acelera ya no es lineal sino sino que empieza poco a poco y para poco a poco voy a hacer una cosa vale verás lo voy a corregir porque la gráfica del seno va desde menos 1 hasta 1 entonces lo que voy a hacer es que esto es bien no es más suelo por 90 vamos a ver ahora ahora ahora un poco como una especie de espejo o sea como una especie de limpiaparabrisas de coche a joves ahora sí no se ve eso no sé si te das cuenta de que cada vez que llega a un extremo es como que para poco a poco y acelera poco a poco el movimiento es más amortiguado que antes entonces esta es la razón por la cual me gusta hacer este ejercicio con una función trigonométricas y no con una función lineal porque de cara a al propio aparato es más sano para el propio mecanismo que acelera y que frene y que no que haga pues una aceleración lineal vale por cierto una cosa decirte y es que toco el cervo y está caliente no quema evidentemente pero quieras que no pues es un dispositivo electromecánico y con el rato adquiere un poquito de temperatura no sé medir t con los dedos a cuánto estará pero no sé igual está a 20 grados más o menos 20 o 25 por ahí de la misma forma que la placa arduino con el rato si la tocamos por bajo pues también se puede calentar un poquito digo lo de los serbios porque el tema de los serbios es delicado desde el punto de vista de que si metemos muchos servos a la vez es cuando se puede fastidiar la cosa es cuando se puede sobrecalentar la placa bueno ya tengo un servo de 180 vamos a continuación a por el servo de 360 te iré explicando poco a poco conforme avance el curso qué es esto de los contadores qué es esto de los chips que he puesto antes pero sí que te voy a explicar una cosa antes de pasar al siguiente ejercicio y es que antes he puesto una variable de tipo i y tipo entero pero ahora si te fijas la variable tiene decimales veces si tienes decimales no puede ser una variable de tipo entero tiene que ser una variable de tipo flow de tipo flow flotante lo cual quiere decir que admite decimales si quieres siempre puedes sacar la página oficial de la documentación de arduino y poner arduino data times y al poner de veras que en la propia documentación bueno tengo aquí las partes a ver hola no obtengo el link y me describe qué es lo que admite pues dije mira me admite vamos a ver también te números desde este hasta éste admite negativos no te puedes pasar de 32.000 por arriba ni de 32.000 por abajo pues vale de la misma forma bueno de hecho si quito el link creo que llegaremos a la página porque no me pasó de listo donde medirán a ver de la tradición arduino no es la página oficial pero bueno aquí vale una tablita donde me dice todos los tipos de datos que puedo utilizar vale entonces pero en el de antes fíjate que había usado un en un in que llega hasta 32 mil cuando podría haber usado un byte que llegaba hasta 255 más que nada insisto esto hoy en la clase número 1 no es importante pero conforme avancemos más sí que lo será qué es la memoria que usan nuestros programas pero antes de que acabe la clase quiero por lo menos que me haya dado tiempo a enseñarte el servomotor de 360 vale por tanto ahora no me voy a enrollar demasiado con el tema del flow team entero ya habrá tiempo pero sí que quiero poner en funcionamiento el otro servo así que vamos a ver voy a desconectar esto voy a desconectar esto voy a traer el otro servo tengo algunos servos que están rotos y no sé si habré pillado uno roto lo digo porque lo he cogido de la caja que estaba sin usar y me parece muy extraño que yo tenga un servo sin usar vale lo cual vamos a verlo luego porque a los cerebros de machacado bastante largo de los años tengo que comprar nuevos llaves son unos pocos euros a ver sí voy a poner una pala más que nada porque como ves tengo ahí el eje del motor pero si pone a rodar o te lo acercó mucho la cámara no va a saber nada entonces voy a poner una pequeña pala simplemente para que puedas ver cuando rota este después de un dame un segundo por fa y el caso es que no como si tú lo sabes pero cuando está bien mira voy a esta pequeña pala de cuatro brazos simplemente para meterlo aquí no voy a hacer nada más pero pero esta pequeña pala cuando el motor se ponga a rodar te va a permitir ver correctamente bueno pues pues a continuación lo que voy a hacer es lo siguiente vamos a ver voy a crear un nuevo proyecto voy a guardarlo voy aa [Música] pam pam pam voy aquí voy a escritorio voy a curso de arduino voy a 005 y servo 360 túnez copio el código por cierto que el código para un servomotor de 360 es el mismo que el código para un motor de 20 180 pero la interpretación no es la misma y es la siguiente voy a decir motor raid todo esto fuera motor punto raid y voy a escribir el número cero así que ahora cojo los tres cables y digo de memoria de memoria te digo que el marrón era la masa era el ground en un segundo por fa que voy a abrir la persiana para que entre más luz porque está cayendo la tarde como te decía el marrón a la masa esto me voy a quitar de aquí el rojo al voltaje a 5 voltios lo conectado a y uno al grado del otro a los 5 voltios lo puedes ver y la señal en el número 8 madre mía porque digo madre mía porque ahora sí que lleva la señal de base ya no sé qué va a hacer igual se va a volver loco las entradas no hacen nada lo cual me preocupa ya que igual es que está apretado vamos a tocarlo de todas formas si no hace nada lo cual igual significa que está pecado igual significar que lo he conectado mal si lo he conectado mal voy a desconectarlo en primer lugar y voy a hacer lo siguiente en internet voy a buscar servo parallax teams para la ex stand observó este es un verbo de la marca como ves ahí para las edades de tu si te fijas es el mismo y se generalmente por aquí aquí suele venir la especificación de que representa cada patita entonces en este caso el blanco es signal lo cual es correcto el red es power supply pues sí es correcto y el black es ground así que lo conecta correctamente si usted lo conecta correctamente pues mira voy a otro servo voy a otro que tengo por aquí qué es una rueda cómo no con chicle y tiene pinta de que esté ser vuestra petado voy a dejarlo aparte porque lo tengo que tirar entonces ahora hemos dicho que white es signal hemos dicho que red es power es el rojo y hemos dicho que black es ground vale este ser vos y que debe estar en funcionamiento ahora sé si porque ha hecho hay al correcto no te gusta lo que faltaba o sea no podría ocurrir un caso peor de que se me ahogar al mismo que tener mala suerte lo conecto y nos estás viendo que el servo ésta estaba girando si estás viendo que ese enfoque que el servo está girando hacia un lado no estoy está el raid en cero ahora voy a poner right uno el servo para sigue y ahora voy a poner menos 1 y ahora aún vale menos 90 – 90 al momento y haber 90 venga ahí si te fijas el número lo que suele hacer es indicar tanto la dirección como la velocidad ahora pongo 180 era irá hacia el otro lado ayer no ves fíjate que ahora está yendo a contra del reloj perdón a favor del reloj si ahora pongo cero irá a contra del reloj y si lo pongo en 90 que prácticamente sería el medio digamos que separa aunque realmente no se para a tiene un poquito de extremos de inercia de la misma forma puedo reutilizar parte del código que he utilizado antes el del seno y el coseno flow de una flota contador ya lo tengo y ya está y voy a esto [Música] pero para texto haré vamos a verlo y no sé si ves cómo va cambiando de dirección voy a ponerle un poquito menos de parar un poquito más lento a ver ahora me ha parecido que a se ha parado bruscamente ay vale has visto no me seas visto como ha parado pero no ha parado de cualquier forma ha parado poco a poco a ver a ver si llega al tope otra vez fíjate las aspas negras ahí no se has visto que ha parado poco a poco y luego ha arrancado poco a poco vale eso a ver voy a parar un momento voy a quitar la alimentación para que no haga rollito date cuenta de una cosa esta rueda de hecho está impresa en una impresora 3d antes de este curso usaremos algún otro tipo de rueda que podamos comprar en tiendas pero también te explicaré el tema de impresión 3d pero date cuenta que lo que antes parecía un capricho realmente no lo es es decir si esto es un motor y tiene una rueda asociada date cuenta que ahí hay unos tornillos y por tanto sobre estas ruedas están ejerciendo una serie de presiones mecánicas de tensiones mecánicas no es lo mismo para una rueda arrancar poco a poco que arrancar de golpe evidentemente arrancando de golpe el mecanismo se fuerza mucho más vale entonces por eso esto que estaba haciendo antes y lo que acabo de hacer ahora el seno y el coseno de la trigonometría te puede parecer un capricho matemático pero te aseguro que no lo es sé que requiere de cierta explicación atenderé poco a poco la explicación de por qué trabajar con un seno y con un coseno pero desde el punto de vista de la electrónica lo que hace es que los dispositivos electrónicos y los dispositivos mecánicos se desgasten menos porque el sistema es capaz de arrancar poco a poco y de parar poco a poco bueno pues

Deja una respuesta

Tu dirección de correo electrónico no será publicada.