1 00:00:09,330 --> 00:00:16,949 Es un tipo de motor especial, normalmente si lo vemos desde arriba, tiene una forma así, el eje de salida está aquí, en un lado, 2 00:00:18,050 --> 00:00:23,230 y normalmente lo que tiene suele ser una especie de aguja de esta forma de plástico, 3 00:00:24,750 --> 00:00:33,429 y lo que ocurre es que esto va a girar 180 grados, ¿vale? Va a girar 180 grados o nada. 4 00:00:33,429 --> 00:00:58,229 Entonces, si estamos a 0 grados, sería en esta posición. Supongamos que esta punta de aquí es la que está indicando la que va a girar. Pues si estamos a 0 grados, estaríamos aquí. Si lo ponemos a 90 grados, estaría apuntando hacia arriba. ¿Vale? Y si lo ponemos en 180 grados, estaría al revés. Es decir, con la punta que antes estaba aquí, hacia el otro lado. 5 00:00:58,229 --> 00:01:04,329 Y solamente va a hacer ese giro, va a hacer medio giro en una dirección y medio giro en la dirección contraria, ¿vale? 6 00:01:04,450 --> 00:01:11,010 Y yo le voy a poder indicar cuántos grados quiero que esto gire, ¿vale? ¿Entendido? 7 00:01:11,750 --> 00:01:22,129 Entonces, tiene tres conexiones, uno va al positivo, a 5 voltios, otro va al negativo, a tierra, 8 00:01:22,129 --> 00:01:31,909 y luego hay una tercera que va a un pin, ¿vale? de nuestro arduino. Va, es el cable de señal, 9 00:01:32,409 --> 00:01:46,109 ¿de acuerdo? Bien, y ese cable de señal se va a activar con una señal digital, por lo 10 00:01:46,109 --> 00:01:57,189 tanto, ese pin será un pin digital. ¿Vale? Esto es un servo. Yo no digo un motor, pero 11 00:01:57,189 --> 00:02:04,030 en lugar de girar siempre en la misma dirección de forma continua, va a ser un giro controlado 12 00:02:04,030 --> 00:02:10,449 entre 0 y 180 grados. Solamente media vuelta. Y yo le voy a poder indicar a través de este 13 00:02:10,449 --> 00:02:19,370 pin, ¿cuánto quiero que gire? ¿Ok? Entonces, ¿cómo va a ser el montaje? Pues fijaros, 14 00:02:20,509 --> 00:02:25,930 por un lado, por un lado, vamos a poner aquí a la derecha el montaje que vamos a hacer, 15 00:02:31,039 --> 00:02:44,430 voy a ponerlo aquí en medio, ¿vale? Este es el servomotor, o servo. En mi placa de 16 00:02:44,430 --> 00:03:08,370 Arduino tengo mis conexiones analógicas de la A0 a la A5, mis conexiones digitales, tengo 17 00:03:08,370 --> 00:03:21,129 un ground y aquí tengo a mitad de camino un 5 voltios y luego debajo tengo dos. Yo 18 00:03:21,129 --> 00:03:29,229 siempre, voy a pintar mi placa de arduino en esta posición, ¿vale? Por aquí la enchuco 19 00:03:29,229 --> 00:03:34,289 al transformador de corriente para alimentar mi robot. Este es un USB, que es para poder 20 00:03:34,289 --> 00:03:40,729 programar. Y luego tengo mis pines de montaje, mis pines analógicos y mis pines digitales. 21 00:03:41,509 --> 00:03:49,810 Bueno, el montaje, observamos que va a utilizar el PIN número 9. 13, 12, 11, 10, 9. 22 00:03:52,500 --> 00:03:54,900 para el 0, para el cable de datos del 0 23 00:03:54,900 --> 00:03:57,650 ¿vale? 24 00:03:59,430 --> 00:04:00,629 y después 25 00:04:00,629 --> 00:04:04,770 este será mi servo 26 00:04:04,770 --> 00:04:08,370 ¿vale? 27 00:04:09,770 --> 00:04:10,409 y 28 00:04:10,409 --> 00:04:13,669 tenemos que conectar 29 00:04:13,669 --> 00:04:15,770 un cable a 0 30 00:04:15,770 --> 00:04:18,350 y otro cable 31 00:04:18,350 --> 00:04:22,509 a 5 voltios 32 00:04:22,509 --> 00:04:25,649 ¿vale? de forma que el positivo 33 00:04:25,649 --> 00:04:28,050 el VCC va a estar a 5 34 00:04:28,050 --> 00:04:30,189 el GND va a estar a 0 35 00:04:30,189 --> 00:04:33,720 ¿por qué no mueve? 36 00:04:33,800 --> 00:04:34,939 porque está en el momento en que está 37 00:04:34,939 --> 00:04:37,980 ¿de acuerdo? 38 00:04:41,959 --> 00:04:48,939 bien, por lo tanto el servo 39 00:04:48,939 --> 00:04:50,939 normalmente está siempre a 0 grados 40 00:04:50,939 --> 00:04:52,180 está en posición horizontal 41 00:04:52,180 --> 00:04:54,839 y cuando yo le indique 42 00:04:54,839 --> 00:04:56,399 que quiero que se mueva, se va a mover 43 00:04:56,399 --> 00:04:58,480 y se va a colocar en la posición que le diga 44 00:04:58,480 --> 00:05:00,079 después 45 00:05:00,079 --> 00:05:02,839 tenemos que hacer el montaje para el LDR 46 00:05:02,839 --> 00:05:05,199 si estuvisteis en la clase de ayer 47 00:05:05,199 --> 00:05:14,879 os acordaréis que el LNR se monta igual que un botón, por lo tanto tengo que ponerle una 48 00:05:14,879 --> 00:05:29,899 patilla a 5 voltios, lo voy a sacar de aquí, eso son 5 voltios, y la otra patilla tiene 49 00:05:29,899 --> 00:05:39,069 que ir a un pin analógico, ¿en cuál lo ha puesto el libro? ¿en el A0? Seguramente, 50 00:05:39,069 --> 00:05:52,740 pero bueno, me aseguro, sí, en el A0, ¿vale? Pues lo conectamos al A0, ¿vale? Y además, 51 00:05:53,540 --> 00:06:01,300 también, desde este mismo pin, sacaremos una resistencia, que es la resistencia de 52 00:06:01,300 --> 00:06:12,459 pull-down a 0 voltios, ¿vale? Esa resistencia de pull-down, en este caso, me dicen que la 53 00:06:12,459 --> 00:06:23,379 ponga de 10K, como son las resistencias de pull-down que hemos estudiado. 10 mil ohmios. 54 00:06:25,720 --> 00:06:32,319 Con lo cual ya tengo mi montaje. Por un lado la resistencia variable de resistencia lumínica 55 00:06:32,319 --> 00:06:38,699 montada con el mismo montaje que un botón, es decir, una patilla positivo y la otra patilla 56 00:06:38,699 --> 00:06:43,660 tanto a la conexión de lazos como a través de una resistencia de humedad o cajero. 57 00:06:45,459 --> 00:06:46,920 Y luego tengo el servo. 58 00:06:47,920 --> 00:06:54,759 El servo, teniendo en cuenta que tiene tres patillas, una positiva, una negativa y una señal de control que hemos conectado al píldor. 59 00:06:55,459 --> 00:06:55,699 ¿Vale? 60 00:06:57,000 --> 00:06:57,399 ¿De acuerdo? 61 00:06:58,259 --> 00:06:59,259 ¿Y ahora qué vamos a hacer? 62 00:07:00,300 --> 00:07:02,519 Bueno, pues vamos a hacer lo siguiente. 63 00:07:03,160 --> 00:07:04,699 Vamos a... 64 00:07:05,540 --> 00:07:06,980 Voy a borrar ya esta parte del servo. 65 00:07:06,980 --> 00:07:24,120 ¿Vale? Ya habéis entendido cómo funciona. 0 grados, 90 grados, 180 grados. ¿Qué vamos a hacer? Vamos a hacer el siguiente programa. Y siempre vamos a hacer un programa que hacemos lo primero. Un diagrama de cruz. Para saber cómo se tiene que comportar. 66 00:07:24,120 --> 00:07:26,199 lo primero que voy a hacer 67 00:07:26,199 --> 00:07:28,220 voy a definir una variable 68 00:07:28,220 --> 00:07:29,800 donde yo voy 69 00:07:29,800 --> 00:07:32,360 a meter la cantidad de luz 70 00:07:32,360 --> 00:07:33,920 que hay en el ambiente, ¿vale? 71 00:07:33,980 --> 00:07:36,300 el valor que yo reciba del sensor 72 00:07:36,300 --> 00:07:37,939 por el acero, entonces 73 00:07:37,939 --> 00:07:39,660 voy a hacerme una variable 74 00:07:39,660 --> 00:07:42,339 que en una lámpara 75 00:07:42,339 --> 00:07:44,439 que tengo originalidad, le voy a llamar 76 00:07:44,439 --> 00:07:49,769 luz, el valor que esté 77 00:07:49,769 --> 00:07:52,170 leyendo mi sensor de luz 78 00:07:52,170 --> 00:07:54,329 mi sensor de intensidad luminica 79 00:07:54,329 --> 00:07:55,970 por lo tanto 80 00:07:55,970 --> 00:07:57,129 ¿qué es lo primero que voy a hacer? 81 00:07:57,129 --> 00:08:06,769 Lo primero que voy a hacer es, dentro de la variable luz, voy a meter, leer, y hacer. 82 00:08:08,509 --> 00:08:15,189 Por tanto, voy a leer cuánto vale el dato que me esté llegando por a cero, por el analogico cero, 83 00:08:15,889 --> 00:08:21,370 que es lo que me está llegando del sensor, y el valor lo voy a imaginar dentro de la variable luz. 84 00:08:21,370 --> 00:08:31,000 vale, ahora 85 00:08:31,000 --> 00:08:32,519 ¿qué tengo que hacer? 86 00:08:32,940 --> 00:08:33,639 pues fijaros 87 00:08:33,639 --> 00:08:38,990 sí, sí, sí, lo vamos a hacer 88 00:08:38,990 --> 00:08:41,669 fijaros en lo que voy a hacer 89 00:08:41,669 --> 00:08:42,809 si la luz 90 00:08:42,809 --> 00:08:44,590 está a cero 91 00:08:44,590 --> 00:08:47,049 si la cantidad de luz está a cero 92 00:08:47,049 --> 00:08:48,889 esto no se tiene que mover 93 00:08:48,889 --> 00:08:51,350 si la luz estuviera al máximo 94 00:08:51,350 --> 00:08:53,309 esto se tiene que ir 95 00:08:53,309 --> 00:08:54,450 a 180 grados 96 00:08:54,450 --> 00:08:56,769 ¿vale? al máximo 97 00:08:56,769 --> 00:08:58,610 y si está a medias 98 00:08:58,610 --> 00:09:09,649 tenemos dos posiciones intermedias, veis que el cerdo tiene cuatro posiciones, el 0, el 180, bueno, ¿cuántos grados son estos? 99 00:09:09,850 --> 00:09:17,919 180 entre el 4, ¿no? Para saber, ¿vale? ¿Cuánto sería cada uno? 100 00:09:23,399 --> 00:09:30,620 Cogemos la calculadora, no, entre 3, perdón, son 3 franjas, desde 0 sería la primera franja, 101 00:09:30,620 --> 00:09:37,759 son 180 entre 3, son 60, no me falta calculadora para eso, vale, 60 grados. 102 00:09:38,360 --> 00:09:56,250 Entonces fijaros, lo voy a pintar aquí, en esta esquinita, lo que voy a hacer es, mi flecha o mi punta del servo va a estar en 0 grados si estamos a oscuras, 103 00:09:56,250 --> 00:10:06,070 ¿Vale? Por eso le hemos puesto la luna. Si estamos totalmente iluminados, si estamos con el Sol, tiene que girar hasta los 180 grados. 104 00:10:06,909 --> 00:10:17,450 Pero en caso de que estemos por aquí con la velocidad intermedia, en este caso tiene que girar 60 grados y en este caso tiene que girar 120 grados. 105 00:10:17,450 --> 00:10:20,210 ¿Vale? 0, 60, 120 y 180 106 00:10:20,210 --> 00:10:20,950 ¿No? 107 00:10:22,490 --> 00:10:24,289 Son intervalos de 60 grados 108 00:10:24,289 --> 00:10:25,990 0, 60 grados 109 00:10:25,990 --> 00:10:27,970 120 grados y 160 grados 110 00:10:27,970 --> 00:10:29,370 ¿Si o no? 111 00:10:29,990 --> 00:10:31,690 Vale, entonces 112 00:10:31,690 --> 00:10:34,149 ¿Qué tengo que hacer ahora? Voy a comprobar 113 00:10:34,149 --> 00:10:40,379 Si la luz 114 00:10:40,379 --> 00:10:42,480 La cantidad de luz 115 00:10:42,480 --> 00:10:45,000 Es menor 116 00:10:45,000 --> 00:10:46,220 ¿Vale? 117 00:10:46,220 --> 00:10:47,740 Y ahora, yo no sé 118 00:10:47,740 --> 00:10:50,139 Porque como vimos ayer, no tengo calibrado 119 00:10:50,139 --> 00:10:52,500 mi sensor de luz 120 00:10:52,500 --> 00:10:54,500 por lo tanto tengo que calibrarlo 121 00:10:54,500 --> 00:10:56,200 ¿vale? para calibrarlo 122 00:10:56,200 --> 00:10:58,399 tengo que saber cuánto está midiendo en cada posición 123 00:10:58,399 --> 00:11:00,320 inicialmente no lo sé 124 00:11:00,320 --> 00:11:02,519 me lo voy a inventar, sé seguro que esto es 0 125 00:11:02,519 --> 00:11:04,399 y esto es 126 00:11:04,399 --> 00:11:05,279 1024 127 00:11:05,279 --> 00:11:08,399 el dato que me va a dar mi sensor 128 00:11:08,399 --> 00:11:09,860 a través del puerto a 0 129 00:11:09,860 --> 00:11:11,600 voy a estimar 130 00:11:11,600 --> 00:11:13,379 que esto van a ser 131 00:11:13,379 --> 00:11:15,620 pues yo que sé 132 00:11:15,620 --> 00:11:17,840 300 y esto 600 133 00:11:17,840 --> 00:11:19,960 ¿vale? por poner un número 134 00:11:19,960 --> 00:11:33,080 Y luego ya lo cambiamos. Este rango que estoy poniendo aquí en un círculo es el número que yo voy a leer desde mi sensor. 135 00:11:33,320 --> 00:11:43,279 Ayer vimos, pero si no estuvisteis lo repito, que cualquier sensor analógico me va a dar valores entre 0 y 1024, ¿vale? 136 00:11:44,200 --> 00:11:51,700 De aquello que esté midiendo, si no mide nada, me va a dar un 0 y si me lo mide totalmente, me va a dar 1024. 137 00:11:51,700 --> 00:12:08,700 Por ejemplo, supongamos un sensor de distancia. Si mi sensor de distancia mide, si el rango de funcionamiento es entre los 3 centímetros y 1 metro, eso quiere decir que si yo tengo una cosa más lejos de 1 metro no me entero de que está. 138 00:12:09,500 --> 00:12:19,860 Porque no está dentro de mi rango, no puedo detectarlo. No llega a detectarlo. Y si está más cerca de 3 centímetros tampoco lo detecta porque no tiene distancia suficiente para poderlo medir. 139 00:12:19,860 --> 00:12:26,299 Entonces, mi sensor de distancia mide entre 3 centímetros y 1 metro, por ejemplo. 140 00:12:27,379 --> 00:12:33,679 ¿Qué pasa? Si yo tengo un objeto a 2 metros, no me lo medirá, me dará 1 metro de distancia, que es el máximo. 141 00:12:34,279 --> 00:12:35,940 Si lo tengo a 1 metro y medio, me seguirá dando 1 metro. 142 00:12:36,019 --> 00:12:37,460 Si lo tengo a 1 metro, me va a dar 1 metro. 143 00:12:37,580 --> 00:12:40,779 Pero si lo tengo a 80 centímetros, como ya está dentro de mi rango, 144 00:12:41,340 --> 00:12:55,480 si lo tengo a 30 centímetros, vuelve a no darme el valor correcto. 145 00:12:55,480 --> 00:13:07,970 Entonces, ¿cómo me va a ofrecer eso el sensor cuando me lo informe a la placa? 146 00:13:08,470 --> 00:13:10,710 Dándome un número entre 0 y 1024. 147 00:13:11,610 --> 00:13:20,230 Si mi rango tiene, en el caso de la distancia, desde 3 centímetros a 1 metro, 148 00:13:21,289 --> 00:13:24,409 pues cuando estemos aquí en 3 centímetros me va a dar un número 0. 149 00:13:24,990 --> 00:13:28,110 Y cuando estemos en 1 metro me va a dar un 1024, que es el máximo. 150 00:13:28,110 --> 00:13:29,909 si estamos a mitad del camino 151 00:13:29,909 --> 00:13:31,389 me va a dar un movimiento de 12 152 00:13:31,389 --> 00:13:33,549 es decir, yo voy a medir 153 00:13:33,549 --> 00:13:35,429 y voy a ver 154 00:13:35,429 --> 00:13:37,850 de mi rango donde estoy 155 00:13:37,850 --> 00:13:39,450 y ese número es el que yo me voy a dar 156 00:13:39,450 --> 00:13:42,009 a qué altura estoy de mi rango, entre 0 y 1024 157 00:13:42,009 --> 00:13:44,409 en este caso, por ejemplo, tenemos un sensor 158 00:13:44,409 --> 00:13:45,230 de luminosidad 159 00:13:45,230 --> 00:13:47,870 la oscuridad total 160 00:13:47,870 --> 00:13:49,429 es 0 161 00:13:49,429 --> 00:13:52,090 y la luminosidad total, cuando estamos de día 162 00:13:52,090 --> 00:13:54,009 a pleno día, es 1024 163 00:13:54,009 --> 00:13:56,149 ¿y qué pasa si bajamos las presiones 164 00:13:56,149 --> 00:13:57,190 y dejamos media luz? 165 00:13:57,190 --> 00:13:59,169 porque vamos a tener un valor por aquí en medio 166 00:13:59,169 --> 00:14:03,830 dependiendo de que 167 00:14:03,830 --> 00:14:05,629 y se les va a funcionar de esa forma 168 00:14:05,629 --> 00:14:07,990 y me va a dar un número que está entre 100 y 1024 169 00:14:07,990 --> 00:14:11,009 yo lo que he dicho es que como no sé exactamente 170 00:14:11,009 --> 00:14:11,809 cómo funciona 171 00:14:11,809 --> 00:14:14,649 voy a suponer que si el número 172 00:14:14,649 --> 00:14:15,970 está por debajo de 300 173 00:14:15,970 --> 00:14:18,610 yo lo voy a considerar que estoy aquí 174 00:14:18,610 --> 00:14:20,129 en el momento 175 00:14:20,129 --> 00:14:22,309 en el que, por ejemplo 176 00:14:22,309 --> 00:14:24,730 imagínate si yo aquí voy a poner 100 177 00:14:24,730 --> 00:14:26,610 vale 178 00:14:26,610 --> 00:14:28,610 si el valor de la luz 179 00:14:28,610 --> 00:14:30,289 es menor de 100, yo lo voy a hacer 180 00:14:30,289 --> 00:14:32,570 en el momento en el que pase de 100 181 00:14:32,570 --> 00:14:34,830 que ya estoy en pelumbra, ya hay algo de luz 182 00:14:34,830 --> 00:14:35,870 me voy aquí 183 00:14:35,870 --> 00:14:38,990 en el momento en el que pase de 300 184 00:14:38,990 --> 00:14:39,990 me voy aquí 185 00:14:39,990 --> 00:14:42,309 y en el momento en el que pase de 600 186 00:14:42,309 --> 00:14:43,690 me voy aquí, ¿vale? 187 00:14:44,210 --> 00:14:46,450 es decir, voy a ir indicando siempre 188 00:14:46,450 --> 00:14:47,610 el siguiente paso 189 00:14:47,610 --> 00:14:50,509 por lo tanto, yo establezco 190 00:14:50,509 --> 00:14:53,029 mis rangos de funcionamiento y ahora los tengo que 191 00:14:53,029 --> 00:14:54,269 programar 192 00:14:54,269 --> 00:14:56,769 ¿qué digo? si la luz es menor que 100 193 00:14:56,769 --> 00:15:00,309 si salgo por el sí 194 00:15:00,309 --> 00:15:03,950 si la luz es menor que 100 195 00:15:03,950 --> 00:15:05,190 ¿qué tengo que hacer? 196 00:15:06,750 --> 00:15:07,230 dejarlo 197 00:15:07,230 --> 00:15:09,230 en 0 grados 198 00:15:09,230 --> 00:15:11,049 ¿vale? entonces el 0 199 00:15:11,049 --> 00:15:14,830 lo voy a poner a 0 grados 200 00:15:14,830 --> 00:15:17,759 ¿vale? 201 00:15:18,720 --> 00:15:20,360 con lo cual, si yo mido la luz 202 00:15:20,360 --> 00:15:21,600 y la luz es muy poquita 203 00:15:21,600 --> 00:15:24,240 por debajo de 100, el 0 lo dejo en 0 204 00:15:24,240 --> 00:15:25,200 que es la luna 205 00:15:25,200 --> 00:15:26,960 si no 206 00:15:26,960 --> 00:15:30,539 Tengo que hacer otra comprobación 207 00:15:30,539 --> 00:15:33,220 Si la luz 208 00:15:33,220 --> 00:15:34,860 Ya sé que no es menor que 100 209 00:15:34,860 --> 00:15:37,120 Es decir, es mayor que 100 210 00:15:37,120 --> 00:15:38,419 Pero puede ser menor que 300 211 00:15:38,419 --> 00:15:44,070 De momento ya sé que no es menor que 300 212 00:15:44,070 --> 00:15:46,110 ¿La luz es menor que 300? 213 00:15:48,330 --> 00:15:48,730 ¿Vale? 214 00:15:49,470 --> 00:15:50,370 Si es que sí 215 00:15:50,370 --> 00:15:52,909 Entonces 216 00:15:52,909 --> 00:15:56,450 El servo lo tengo que poner 217 00:15:56,450 --> 00:15:57,509 ¿A cuánto? A 60 218 00:15:57,509 --> 00:16:12,120 Y entonces, si la luz está por aquí, en esta zona, ¿vale? En este valor, entre 100 y 300, ¿va a ser menor que 100? No. 219 00:16:12,840 --> 00:16:18,159 ¿Va a ser menor que 300? Sí. Entonces, me va a ir a 60 grados, porque va a coger la segunda salida así. 220 00:16:19,659 --> 00:16:34,730 ¿Vale? Tercera, si no es menor que 300, preguntamos, voy a hacer así, voy a poner la salida así. 221 00:16:34,730 --> 00:16:39,350 Luz menor que 600, que es el siguiente rango. 222 00:16:40,629 --> 00:16:53,230 Si es que sí, si es que sí, pongo el servo en 120. 223 00:16:53,230 --> 00:17:01,399 Y si es que no, ya solo me queda la opción de que sea mayor que 600, ¿vale? 224 00:17:02,039 --> 00:17:03,600 Por lo tanto, va a estar aquí. 225 00:17:03,600 --> 00:17:20,599 entonces, el servo lo voy a mover hacia el centro. Y después, cuando termine de hacer eso, volvemos a otro. 226 00:17:20,599 --> 00:17:31,599 Entonces, fijaros. Mido la luz que me está llevando el sensor. Si la luz es muy, muy, muy poquita, pongo el servo en cero. 227 00:17:31,599 --> 00:17:34,359 Si no es muy, muy poquita 228 00:17:34,359 --> 00:17:37,079 Pero es relativamente baja 229 00:17:37,079 --> 00:17:39,420 Pongo el F1 en 60 230 00:17:39,420 --> 00:17:42,099 Si no es relativamente baja 231 00:17:42,099 --> 00:17:44,339 Pero aún no es demasiado alta 232 00:17:44,339 --> 00:17:45,680 Lo pongo en 120 233 00:17:45,680 --> 00:17:48,599 Y si no es 234 00:17:48,599 --> 00:17:51,279 Tan alta 235 00:17:51,279 --> 00:17:52,940 Pues por el F1 en 180 236 00:17:52,940 --> 00:17:53,880 ¿Vale? 237 00:17:54,640 --> 00:17:56,339 Pues este es el programa que vamos a hacer 238 00:17:56,339 --> 00:17:58,059 Tiene tres condiciones 239 00:17:58,059 --> 00:18:00,900 Que me permiten filtrar en qué zona estoy 240 00:18:00,900 --> 00:18:10,920 aquí y aquí y aquí, ¿vale? Y además, vamos a ponerle aquí en medio un paso adicional 241 00:18:10,920 --> 00:18:25,829 que es para poderlo calibrar, ¿vale? Escribir luz en el monitor serial, ¿vale? Para indicarle 242 00:18:25,829 --> 00:18:32,730 a mí que yo lo pueda leer, que yo lo pueda leer cuál es el valor que está leyendo y 243 00:18:32,730 --> 00:18:40,970 así lo podré calibrar. Vamos a hacer ese programa. Primero tenemos que hacer el montaje en Tinkercad y luego vamos a programarlo así, ¿vale? 244 00:18:41,950 --> 00:18:52,849 Por lo tanto, paso a Tinkercad. Si lo tenéis, podéis venir conmigo a Tinkercad o podéis arrancarlo a vuestro 245 00:18:52,849 --> 00:18:59,240 ordenador, creamos un nuevo circuito y lo primero es hacer el montaje. 246 00:18:59,240 --> 00:19:06,369 Lo primero es hacer el montaje 247 00:19:06,369 --> 00:19:08,529 Por lo tanto, para hacer el montaje 248 00:19:08,529 --> 00:19:10,250 Lo primero que voy a necesitar son 249 00:19:10,250 --> 00:19:12,430 Mi placa de control 250 00:19:12,430 --> 00:19:17,730 Y mi placa de pruebas 251 00:19:17,730 --> 00:19:19,390 Siempre es lo mismo 252 00:19:19,390 --> 00:19:22,650 Esto ya tiene que salir solo 253 00:19:22,650 --> 00:19:23,890 ¿Vale? 254 00:19:24,410 --> 00:19:25,650 Porque siempre es lo mismo 255 00:19:25,650 --> 00:19:35,390 Vale, tengo mi placa de pruebas 256 00:19:35,390 --> 00:19:37,170 Los voy a girar 257 00:19:37,170 --> 00:19:38,910 Y ya sabéis que a mí me gusta trabajar en vertical 258 00:19:38,910 --> 00:19:52,910 lo primero que voy a hacer es ponerle los 5 voltios a mi placa de protoboa conectados al 259 00:19:52,910 --> 00:20:02,289 más de forma que este cable que voy a poner en rojo le voy a llevar 5 voltios a toda esta 260 00:20:02,289 --> 00:20:08,089 primera columna que está ahí en verde y luego el 0 voltios que es el ground que tengo aquí 261 00:20:08,089 --> 00:20:10,589 me lo voy a llevar por la parte de arriba 262 00:20:10,589 --> 00:20:15,799 a la otra columna que está al lado 263 00:20:15,799 --> 00:20:16,819 que es la que pone menos 264 00:20:16,819 --> 00:20:19,059 y lo voy a hacer con un par de negro 265 00:20:19,059 --> 00:20:21,960 ¿vale? 266 00:20:23,359 --> 00:20:24,799 entonces ya tengo mi placa 267 00:20:24,799 --> 00:20:26,579 con corriente eléctrica 268 00:20:26,579 --> 00:20:28,359 a 5 voltios en el positivo 269 00:20:28,359 --> 00:20:30,019 y a 0 voltios en el negativo 270 00:20:30,019 --> 00:20:32,160 ahora tengo que hacer los montajes 271 00:20:32,160 --> 00:20:34,119 tanto de el servo 272 00:20:34,119 --> 00:20:36,160 como de mi 273 00:20:36,160 --> 00:20:38,579 LDR 274 00:20:39,299 --> 00:20:40,819 cogemos 275 00:20:40,819 --> 00:20:48,099 la fotoresistencia, esto ya lo hicimos ayer, la giramos, la coloco por ejemplo, en mi caso 276 00:20:48,099 --> 00:20:54,420 la de Brenner es de 16 y 27, lo podéis poner donde os dé la gana, la 27 la conectamos 277 00:20:54,420 --> 00:21:11,750 a positivo, hemos dicho, la otra patilla la sacamos al analógico cero, que está aquí, 278 00:21:11,750 --> 00:21:19,730 y además 279 00:21:19,730 --> 00:21:22,009 una resistencia 10K de pull down 280 00:21:22,009 --> 00:21:24,210 a 0, por lo tanto la resistencia 281 00:21:24,210 --> 00:21:26,170 la conecto aquí en medio 282 00:21:26,170 --> 00:21:28,349 de 10K 283 00:21:28,349 --> 00:21:36,230 y la conectamos 284 00:21:36,230 --> 00:21:38,430 de 10K a 0 285 00:21:38,430 --> 00:21:42,089 ese es el montaje del LDR 286 00:21:42,089 --> 00:21:44,230 siempre es igual, es como lo tenéis 287 00:21:44,230 --> 00:21:46,349 en el libro, como lo hicimos ayer 288 00:21:46,349 --> 00:21:48,150 y es como tenéis 289 00:21:48,150 --> 00:21:49,789 que memorizarlo, es igual que un botón 290 00:21:49,789 --> 00:22:20,950 el verde a la 0, al analógico 0, es lo que hemos dicho, aquí a la patilla de arriba del terminal del LDR, vale, el LDR tiene dos patillas, la primera, si lo tenéis ahí el esquema, la primera patilla del LDR, ¿dónde va?, a 5 voltios, y la otra va al A0 y también a 1,610 K, que va a 0, 291 00:22:21,170 --> 00:22:29,230 ¿Vale? Pues es eso mismo. ¿Vale? Y ahora voy a hacer el montaje del servomotor. Para 292 00:22:29,230 --> 00:22:40,670 eso tengo que coger un servomotor y sacarlo ahí arriba. Voy a buscarlo. Aquí tenemos 293 00:22:40,670 --> 00:22:53,000 el micro de servomotor. ¿Vale? Entonces lo voy a girar. Ahí está. Perfecto. Lo voy 294 00:22:53,000 --> 00:23:15,490 voy a poner aquí, por ejemplo, y ahora el micro servomotor le vamos a poner, este es 295 00:23:15,490 --> 00:23:22,230 el cable de señal, veis que ahí pone señal, aquí pone potencia y aquí pone tierra, pues 296 00:23:22,230 --> 00:23:31,319 cogemos la tierra, que es la de 0 voltios, por lo tanto, de mi placa de 0, la potencia 297 00:23:31,319 --> 00:23:38,759 son 5 voltios, pues lo ponemos a 5 voltios. Y el cable de señales en este caso, ¿a cuál 298 00:23:38,759 --> 00:23:57,769 iba? Al pin 9, ¿verdad? Pues lo conectamos al pin 9, ¿vale? Y ya tengo mi servomotor 299 00:23:57,769 --> 00:24:06,490 conectado a la placa. Ya tengo el montaje hecho. Esto que yo he hecho aquí es lo mismo 300 00:24:06,490 --> 00:24:10,210 que tenéis en el libro 301 00:24:10,210 --> 00:24:16,509 aquí dibujado. 302 00:24:17,130 --> 00:24:17,410 ¿Vale? 303 00:24:18,109 --> 00:24:19,150 Es esto mismo. 304 00:24:20,990 --> 00:24:22,309 Si seguís los cables 305 00:24:22,309 --> 00:24:24,930 veréis que hago lo mismo que está hecho. 306 00:24:26,190 --> 00:24:26,750 ¿Vale? 307 00:24:26,809 --> 00:24:28,930 El positivo, negativo y el cable amarillo 308 00:24:28,930 --> 00:24:29,509 al 9. 309 00:24:30,150 --> 00:24:32,730 Y el LDR con un cable verde al acero. 310 00:24:33,309 --> 00:24:33,549 ¿Vale? 311 00:24:34,130 --> 00:24:36,529 Y por el otro lado una resistencia que va 312 00:24:36,529 --> 00:24:37,569 al 0,5. 313 00:24:38,569 --> 00:24:41,660 Pues ya tenemos ahí nuestro 314 00:24:41,660 --> 00:24:45,740 nuestro micro servomotor vamos a empezar a trabajar con él 315 00:24:45,740 --> 00:24:48,660 qué vamos a hacer 316 00:25:08,680 --> 00:25:12,680 lo primero que tengo que hacer es definir las variables ya sabéis que para poder 317 00:25:12,680 --> 00:25:18,309 almacenar un valor en una variable entonces vamos a crear la variable 318 00:25:18,309 --> 00:25:25,240 ¿cómo se llama la variable que vamos a usar nosotros? 319 00:25:32,009 --> 00:25:34,009 ¿cómo se llama la variable? 320 00:25:34,009 --> 00:25:50,359 luz, es donde voy a almacenar el valor que yo lea del LDR, pues creamos una variable, le damos el nombre, luz, esto es una cajita donde yo voy a almacenar valores, 321 00:25:50,359 --> 00:26:06,019 y lo primero que voy a hacer es definir esa variable, darle un valor, ¿vale? y el valor, lo que voy a hacer es, de las entradas, coger lo que leamos en el pasador analógico a 0, ¿vale? 322 00:26:07,019 --> 00:26:26,980 Fijaros que este primer bloque que tengo ahí, definimos la variable luz que la he creado y le vamos a poner el valor leer pasador analógico AC. 323 00:26:26,980 --> 00:26:40,099 Con lo cual voy a coger aquí el valor que me está entregando mi sensor de luz, voy a leerlo y lo voy a cortar dentro de la caja con el nombre luz. 324 00:26:41,759 --> 00:26:59,119 Bien, ya tengo el valor. Ahora que tengo que empezar a hacer las condiciones, voy a empezar a hacer sí, entonces, si no, porque es una condición que tiene salida sí, salida no. 325 00:26:59,740 --> 00:27:13,660 ¿Qué es lo que voy a comprobar? Primero, cojo un bloque de comparación de las matemáticas y le digo, la variable luz es menor que 100, bueno, antes de esto habíamos hecho una cosa que es escribir en el monitor serie. 326 00:27:13,839 --> 00:27:26,900 Entonces voy a ponerle ese bloque que está aquí y imprimir en el monitor serie y le vamos a imprimir la variable luz, lo que acabamos de leer, para que yo lo pueda ver. 327 00:27:26,900 --> 00:27:48,220 El monitor serie, como dijimos ayer, está aquí abajo. Y aquí en esta ventanita me van a ir mostrando el valor que lee, ¿vale? Del sensor. Entonces, cogemos nuestra variable, almacenamos el valor de lo que lea desde el LDR, lo imprimimos por el monitor serie para que yo pueda verlo y calibrar el sensor. 328 00:27:48,220 --> 00:27:50,359 y ahora le digo 329 00:27:50,359 --> 00:27:53,119 si la variable es menor que 100 330 00:27:53,119 --> 00:27:55,039 estos valores 331 00:27:55,039 --> 00:27:56,779 los estoy poniendo a huevo, luego los cambiaré 332 00:27:56,779 --> 00:27:59,200 entonces, ¿qué tengo que hacer? 333 00:27:59,740 --> 00:28:01,019 pues mirad, lo que tengo que hacer es 334 00:28:01,019 --> 00:28:02,640 girar el servomotor 335 00:28:02,640 --> 00:28:04,400 girar el servo 336 00:28:04,400 --> 00:28:06,420 que tengo en el pasador 9 337 00:28:06,420 --> 00:28:10,000 a 0 grados 338 00:28:10,000 --> 00:28:12,380 ¿vale? entonces lo pongo en 0 grados 339 00:28:12,380 --> 00:28:14,240 si es menor que 100 340 00:28:14,240 --> 00:28:16,539 si no, tengo que poner 341 00:28:16,539 --> 00:28:18,660 otra comparación, por lo tanto 342 00:28:18,660 --> 00:28:36,809 me cojo otro bloque de estos. Si no, si la variable luz es menor, hemos dicho que 300, 343 00:28:38,710 --> 00:28:53,319 ¿qué tengo que hacer? Poner el servo en 60 grados. Si no, es decir, si salgo por el 344 00:28:53,319 --> 00:28:56,960 voy a el de 600, es otra comparación 345 00:28:56,960 --> 00:28:59,319 voy a coger otro bloque de comparación 346 00:28:59,319 --> 00:29:01,839 si entonces, si no 347 00:29:01,839 --> 00:29:07,470 si la luz 348 00:29:07,470 --> 00:29:12,880 es menor que 600 349 00:29:12,880 --> 00:29:15,119 entonces 350 00:29:15,119 --> 00:29:19,619 servo, ¿a cuánto hay que ponerlo? 351 00:29:24,170 --> 00:29:26,049 el servo está en el pasado número 9 352 00:29:26,049 --> 00:29:39,400 giramos el servo que está en el 9 353 00:29:39,400 --> 00:29:44,460 a 120 grados 354 00:29:44,460 --> 00:29:47,720 y si no, ya estamos por encima de 600 355 00:29:47,720 --> 00:29:50,839 pues entonces tiramos el servo a 180 356 00:29:50,839 --> 00:29:55,430 el servo que está en el 9 357 00:29:55,430 --> 00:30:01,089 vale, entonces con este programa 358 00:30:01,089 --> 00:30:10,720 ahí lo vemos entero 359 00:30:10,720 --> 00:30:15,099 lo que hago es leer el pasador analógico 360 00:30:15,099 --> 00:30:18,160 a 0, que es donde tengo conectado mi LDR 361 00:30:18,160 --> 00:30:20,019 y almaceno el valor dentro de la variable 362 00:30:20,019 --> 00:30:23,089 dentro de esa cajita que puedo guardar. 363 00:30:23,410 --> 00:30:25,869 El valor lo imprimo por el monitor serie para que yo pueda verlo. 364 00:30:26,410 --> 00:30:27,769 Eso ahora veamos que lo utilizaré 365 00:30:27,769 --> 00:30:29,609 para calidad. Si la luz 366 00:30:29,609 --> 00:30:31,670 es menor que 100, entonces lo pongo a 0 grados. 367 00:30:32,250 --> 00:30:33,329 Si no es menor que 100, 368 00:30:33,950 --> 00:30:35,230 si es menor que 300, 369 00:30:35,730 --> 00:30:38,009 entonces lo pongo a 60 grados. 370 00:30:38,430 --> 00:30:39,690 Pero si no es menor que 371 00:30:39,690 --> 00:30:41,809 300, si es menor que 600, 372 00:30:41,809 --> 00:30:42,950 lo pongo a 120. 373 00:30:43,789 --> 00:30:45,450 Y si no es menor que 374 00:30:45,450 --> 00:30:47,990 600, es mayor que 600, por lo tanto, 375 00:30:48,809 --> 00:30:49,470 lo pongo a 180. 376 00:30:49,470 --> 00:30:53,049 ¿Vale? Y entonces estoy girando el servo en función de la luz que detengo. 377 00:30:54,049 --> 00:30:54,349 ¿Vale? 378 00:30:58,319 --> 00:30:58,720 Bien. 379 00:30:59,660 --> 00:31:00,599 Vamos a probarlo. 380 00:31:01,880 --> 00:31:02,539 A ver si funciona. 381 00:31:07,599 --> 00:31:08,700 Voy a poner esto más cerquita. 382 00:31:11,470 --> 00:31:21,509 Ahí, por ejemplo, para que no me... 383 00:31:21,509 --> 00:31:23,230 Esto lo voy a meter un poco por dentro. 384 00:31:24,750 --> 00:31:25,650 Y esto lo voy a meter. 385 00:31:25,930 --> 00:31:27,809 Vale. Pues vamos a ver qué pasa. 386 00:31:28,609 --> 00:31:29,690 Iniciamos la simulación. 387 00:31:30,829 --> 00:31:33,309 Voy a ponerme aquí el monitor serie para ver cuánto me está midiendo. 388 00:31:33,309 --> 00:31:36,390 ¿vale? y entonces 389 00:31:36,390 --> 00:31:39,109 ahora mismo me está midiendo 54 390 00:31:39,109 --> 00:31:41,130 ¿vale? yo tengo la oscuridad 391 00:31:41,130 --> 00:31:42,809 total y me está midiendo 392 00:31:42,809 --> 00:31:43,890 54 393 00:31:43,890 --> 00:31:46,910 entonces cuando está en oscuridad total no me da 0 394 00:31:46,910 --> 00:31:48,809 me da 54, ya lo dije ayer 395 00:31:48,809 --> 00:31:51,309 que depende del fabricante del LDR 396 00:31:51,309 --> 00:31:52,029 y tal, a veces 397 00:31:52,029 --> 00:31:55,430 no da los valores exactos de 0 y 1024 398 00:31:55,430 --> 00:31:56,750 y si me lo llevo 399 00:31:56,750 --> 00:31:58,529 un poco más para arriba 400 00:31:58,529 --> 00:32:00,630 ¿veis? el servo 401 00:32:00,630 --> 00:32:01,789 va girando 402 00:32:01,789 --> 00:32:10,089 y se pondrá en la posición que corresponda 403 00:32:10,089 --> 00:32:10,809 que será el 180 404 00:32:10,809 --> 00:32:18,940 ¿por qué está haciendo 405 00:32:18,940 --> 00:32:20,880 tanto salto? 406 00:32:21,099 --> 00:32:22,359 porque no le hemos puesto 407 00:32:22,359 --> 00:32:25,140 porque le estamos haciendo comprobaciones continuas 408 00:32:25,140 --> 00:32:27,339 entonces lo que voy a hacer es 409 00:32:27,339 --> 00:32:29,640 ponerle aquí al final 410 00:32:29,640 --> 00:32:31,420 un bloque de espera 411 00:32:31,420 --> 00:32:32,880 que sea 412 00:32:32,880 --> 00:32:34,019 esperando un segundo 413 00:32:34,019 --> 00:32:36,880 que me mida la luz una vez por segundo solo 414 00:32:36,880 --> 00:32:39,200 y así le da tiempo al servo a viajar 415 00:32:39,200 --> 00:32:39,920 de un lado al otro 416 00:32:39,920 --> 00:32:43,319 entonces, si yo inicio la simulación 417 00:32:43,319 --> 00:32:47,640 vale, si yo esto ahora lo muevo 418 00:32:47,640 --> 00:32:53,579 vale, veis, ahora va más rápido 419 00:32:53,579 --> 00:32:58,039 y va hasta el 180, pero esto está mal calibrado 420 00:32:58,039 --> 00:33:01,819 fijaros que yo, esto es muy poquita luz 421 00:33:01,819 --> 00:33:06,240 y ya estoy en 854, entonces lo voy a calibrar, el primer valor a qué altura 422 00:33:06,240 --> 00:33:10,039 quiero que sea, pues mirad, quiero que sea por ahí, más o menos, un poquito menos 423 00:33:10,039 --> 00:33:18,380 por ahí. Fijaros que yo tengo un valor de 897. Entonces, cuando lo esté calibrando, 424 00:33:19,180 --> 00:33:27,460 voy a decir, vale, esta primera franja son 900. ¿Por qué? Porque en 897 yo estoy hasta 425 00:33:27,460 --> 00:33:35,279 altura. ¿Vale? Lo estoy calibrando. Después, el siguiente salto quiero que sea como por 426 00:33:35,279 --> 00:33:52,140 aquí, y esos son 954, pues entonces le pongo aquí 960, por ejemplo, ¿vale? Y ya a partir 427 00:33:52,140 --> 00:33:58,059 de 960 va a ser mucho más. Entonces, vuelvo al programa, paramos la simulación, ya lo 428 00:33:58,059 --> 00:34:02,779 tengo calibrado, ya sé las franjas en las que se me va a mover y qué valores tengo 429 00:34:02,779 --> 00:34:10,500 en cada caso, y en mi programa le voy a cambiar los valores estos límite, el 300, se lo voy 430 00:34:10,500 --> 00:34:23,639 a cambiar por un, ¿cuánto era? 900, ¿no? Y el otro, por un 960, ¿vale? Entonces fijaros 431 00:34:23,639 --> 00:34:30,280 que ahora, que ya lo tengo calibrado, cuando inicie la simulación, voy a quitar esto para 432 00:34:30,280 --> 00:34:43,789 que no me estorbe. Yo puedo coger mi fotoresistencia. Vale, ahora está simulando. Vale, voy a poner 433 00:34:43,789 --> 00:34:51,730 un poco más de luz para que lo veáis bien. Y ahora fijaros que ahora sí que va a funcionar 434 00:34:51,730 --> 00:34:59,070 bien. Mientras que yo esté en la primera zona, se va a ir a la posición de más o 435 00:34:59,070 --> 00:35:05,969 menos hay luz, en el momento en que pase del primer tercio, ¿vale? Se va a ir a la posición 436 00:35:05,969 --> 00:35:11,429 donde hay más luz y cuando vayamos más o menos hacia el último tercio es cuando ya 437 00:35:11,429 --> 00:35:21,289 se va a ir a tope, ¿vale? Y si baja, pues según donde esté, se colocará en la posición 438 00:35:21,289 --> 00:35:28,670 que corresponda, ¿vale? Si bajamos más se pondrá en la posición que corresponda y 439 00:35:28,670 --> 00:35:38,389 si apagamos a tope la luz pues se irá haciendo, ¿vale? Entonces ahora ya simplemente si lo 440 00:35:38,389 --> 00:35:53,579 queremos hacer perfecto pues le podemos poner, por ejemplo, tenemos la simulación, le vamos 441 00:35:53,579 --> 00:36:12,019 a poner en esta posición, ¿vale? Le podemos poner noche, por ejemplo, ¿vale? Le ponemos 442 00:36:12,019 --> 00:36:18,860 que es de noche, en la siguiente posición, que estaba por aquí más o menos, le ponemos 443 00:36:18,860 --> 00:36:29,320 que es penumbra oscura, por ejemplo, o le ponemos los simbolitos de las nubes, ¿vale? 444 00:36:29,320 --> 00:36:40,639 Eso ya como queramos. Para esta altura le ponemos poca luz y aquí le ponemos mucha 445 00:36:40,639 --> 00:36:51,719 luz a tope. ¿Vale? Y entonces ahora, con esos, yo cojo, los simulo y ahora fijaros 446 00:36:51,719 --> 00:37:00,880 que directamente me va a ir a indicar, ¿vale? Pues en este caso, si estamos por ahí, vamos 447 00:37:00,880 --> 00:37:08,980 a estar en la penumbra oscura. Si le damos más luz, nos vamos a poca luz y si nos vamos 448 00:37:08,980 --> 00:37:15,400 a tope, pues nos vamos a mucha luz. Y hemos hecho nuestro indicador de luz. Fijaros que 449 00:37:15,400 --> 00:37:32,480 es exactamente lo que nos pedía la práctica 4, que hiciéramos un sistema de indicación 450 00:37:32,480 --> 00:37:34,260 de la cantidad de luz que se está detectando.