1 00:00:03,819 --> 00:00:07,099 Tengo 14 años y estudio tercero de la ESO 2 00:00:07,099 --> 00:00:12,019 y estoy aquí para hablar un poco de la programación y el control en los robots móviles. 3 00:00:13,419 --> 00:00:16,719 Aunque es obvio, todo robot necesita un programa para funcionar. 4 00:00:17,920 --> 00:00:21,000 Los programas se ejecutan en un procesador incluido en el propio robot. 5 00:00:22,519 --> 00:00:25,120 Nosotros, la manera que nosotros tenemos para programar, 6 00:00:25,739 --> 00:00:27,620 primero analizamos lo que el robot tiene que hacer 7 00:00:27,620 --> 00:00:30,420 y escribimos mediante un lenguaje de programación. 8 00:00:31,160 --> 00:00:35,149 Hay muchos tipos de lenguajes y controladores, 9 00:00:35,329 --> 00:00:37,270 para os robots móviles, pero 10 00:00:37,270 --> 00:00:39,649 con os que nosotros hemos utilizado son os seguintes. 11 00:00:40,289 --> 00:00:41,210 Como controladores, 12 00:00:41,329 --> 00:00:42,890 el RCX, el NXC de Lego 13 00:00:42,890 --> 00:00:45,369 e agora estamos trabajando con 14 00:00:45,369 --> 00:00:47,090 la tarjeta Alcades API. 15 00:00:48,689 --> 00:00:49,009 Vemos 16 00:00:49,009 --> 00:00:51,689 en os lenguajes 17 00:00:51,689 --> 00:00:53,369 que hemos programado son el RoboLar, 18 00:00:53,609 --> 00:00:55,070 el NQC e el CX. 19 00:00:57,009 --> 00:00:57,689 Nostros primeros 20 00:00:57,689 --> 00:00:59,689 pasos fueron aprendiendo a programar con Logo, 21 00:01:00,409 --> 00:01:01,770 que es un lenguaje muy antiguo 22 00:01:01,770 --> 00:01:03,929 que seguramente ninguno habréis oído hablar de él. 23 00:01:05,329 --> 00:01:10,430 Desde os anos 80 se diseñou originalmente para ensañar matemáticas e geometría aos nenos. 24 00:01:11,489 --> 00:01:14,870 Está derivado do LIS, que é un lenguaje de inteligencia artificial. 25 00:01:16,370 --> 00:01:22,170 É un lenguaje para aprender onde o aluno asume o papel do profesor e aprende de sí mesmo 26 00:01:22,170 --> 00:01:26,129 e se comunica con o ordenador mediante un lenguaje natural. 27 00:01:29,180 --> 00:01:34,980 Aprende de formas sencillas con conceptos como defunción, iteración e estructuración. 28 00:01:34,980 --> 00:01:39,569 este é o primer controlador 29 00:01:39,569 --> 00:01:42,129 en que nos empezamos a facer cosas 30 00:01:42,129 --> 00:01:44,390 aquí podes ver as características 31 00:01:44,390 --> 00:01:46,709 ten un procesador de 8 bits 32 00:01:46,709 --> 00:01:49,950 32 kb de memoria RAM 33 00:01:49,950 --> 00:01:51,129 onde guarda todo 34 00:01:51,129 --> 00:01:52,989 o firmware, os programas 35 00:01:52,989 --> 00:01:54,989 os datos dos sensores, todo 36 00:01:54,989 --> 00:01:57,629 tres portos de entrada para os sensores 37 00:01:57,629 --> 00:01:59,430 e tres portos de entrada para os motores 38 00:01:59,430 --> 00:02:01,950 para poder descargar os programas 39 00:02:01,950 --> 00:02:03,530 se comunica con unha torre 40 00:02:03,530 --> 00:02:04,549 mediante inflarrojos 41 00:02:04,549 --> 00:02:06,329 isto é unha desventaja 42 00:02:06,329 --> 00:02:08,789 almacena hasta cinco programas. 43 00:02:10,129 --> 00:02:10,569 O firmware, 44 00:02:10,849 --> 00:02:12,349 os programas e os datos en RAM 45 00:02:12,349 --> 00:02:14,389 se perden cando se van as pilas. 46 00:02:15,669 --> 00:02:16,830 Tiene un altavoz integrado 47 00:02:16,830 --> 00:02:17,849 para producir sonidos. 48 00:02:21,219 --> 00:02:23,099 O firmware é un programa 49 00:02:23,099 --> 00:02:24,960 só por o hecho que se pode descargar. 50 00:02:26,099 --> 00:02:27,419 É o programa que se encarga 51 00:02:27,419 --> 00:02:28,819 da gestión do RCX. 52 00:02:30,379 --> 00:02:31,580 O firmware se guarda 53 00:02:31,580 --> 00:02:32,319 na memoria RAM. 54 00:02:32,719 --> 00:02:34,139 Cando se van as pilas, desaparece. 55 00:02:35,840 --> 00:02:37,280 Se actualiza mediante un programa 56 00:02:37,280 --> 00:02:39,199 que reside na memoria ROM 57 00:02:39,199 --> 00:02:40,500 do RTX 58 00:02:40,500 --> 00:02:43,419 é o programa de descarga 59 00:02:43,419 --> 00:02:45,139 é o programa de descarga 60 00:02:45,139 --> 00:02:47,840 Dada a arquitectura abierta 61 00:02:47,840 --> 00:02:48,680 do RTX 62 00:02:48,680 --> 00:02:50,360 se han desarrollado distintos firmware 63 00:02:50,360 --> 00:02:51,539 ademais do oficial de Lego 64 00:02:51,539 --> 00:02:54,419 Actualmente tenemos tres versiones 65 00:02:54,419 --> 00:02:59,479 O firmware 2.0 66 00:02:59,479 --> 00:03:00,340 é o máis extendido 67 00:03:00,340 --> 00:03:01,259 é o firmware de Lego 68 00:03:01,259 --> 00:03:03,840 funciona como unha máquina virtual 69 00:03:03,840 --> 00:03:05,740 reporta multitareas 70 00:03:05,740 --> 00:03:09,259 A nosa non resulta moi estable 71 00:03:09,259 --> 00:03:11,919 Executa os bytecodes que se generan 72 00:03:11,919 --> 00:03:13,379 En la compilación de un programa 73 00:03:13,379 --> 00:03:18,780 O Fax Firmware 74 00:03:18,780 --> 00:03:20,139 É un firmware moito máis rápido 75 00:03:20,139 --> 00:03:22,740 100% compatible con o de Lego 76 00:03:22,740 --> 00:03:25,919 Pode chegar a ser 77 00:03:25,919 --> 00:03:27,219 Hasta 10 veces máis rápido 78 00:03:27,219 --> 00:03:30,340 Incorpora unhas características adicionales 79 00:03:30,340 --> 00:03:31,919 O mellor control da velocidade 80 00:03:31,919 --> 00:03:35,819 O último é o Firmware 2.9 81 00:03:35,819 --> 00:03:38,460 Está incluído con a última versión de regular 82 00:03:38,460 --> 00:03:39,620 la 2.9 83 00:03:39,620 --> 00:03:42,580 y es la respuesta del EGO ante el PARS firmware 84 00:03:42,580 --> 00:03:44,360 el firmware 85 00:03:44,360 --> 00:03:46,639 es un firmware muy rápido 86 00:03:46,639 --> 00:03:48,080 y eficaz, soporta 87 00:03:48,080 --> 00:03:50,080 255 velocidades 88 00:03:50,080 --> 00:03:52,520 control proporcional y operaciones en coma 89 00:03:52,520 --> 00:03:53,479 freudante por solo 90 00:03:53,479 --> 00:03:56,960 después de logo 91 00:03:56,960 --> 00:03:58,800 nosotros continuamos 92 00:03:58,800 --> 00:03:59,860 programando en un 93 00:03:59,860 --> 00:04:03,159 está basada en Labio 94 00:04:03,159 --> 00:04:05,580 también soporta la portitarea 95 00:04:05,580 --> 00:04:08,659 tiene algunas herramientas adicionales 96 00:04:08,659 --> 00:04:10,680 como el servidor web, registro de datos 97 00:04:10,680 --> 00:04:11,620 y audición. 98 00:04:13,060 --> 00:04:14,300 Permite realizar programas 99 00:04:14,300 --> 00:04:16,279 muy sencillos y de forma muy rápida. 100 00:04:17,399 --> 00:04:19,120 Si no se ve muy ordenado, 101 00:04:19,860 --> 00:04:20,680 puede complicar mucho 102 00:04:20,680 --> 00:04:22,480 el trabajo en programas más grandes. 103 00:04:23,879 --> 00:04:24,360 Con él 104 00:04:24,360 --> 00:04:25,639 trabajamos durante un año 105 00:04:25,639 --> 00:04:28,600 y lo usamos para nuestra primera competición. 106 00:04:31,019 --> 00:04:32,819 NQC es un poco más complicado 107 00:04:32,819 --> 00:04:33,439 que Robolab. 108 00:04:34,560 --> 00:04:35,519 Está basado en texto, 109 00:04:35,519 --> 00:04:37,060 la sintaxis es muy parecida 110 00:04:37,060 --> 00:04:39,399 a C, pero con menos 111 00:04:39,399 --> 00:04:41,240 potencia. Funciona 112 00:04:41,240 --> 00:04:43,120 no modo consola en Windows, Linux 113 00:04:43,120 --> 00:04:44,060 e Mac OS. 114 00:04:45,459 --> 00:04:47,079 Brice C é un entorno de desarrollo 115 00:04:47,079 --> 00:04:49,120 que nos permite trabajar con toda a comunidade 116 00:04:49,120 --> 00:04:50,959 con modidade con o NQC. 117 00:04:53,259 --> 00:04:54,420 Despois do NQC 118 00:04:54,420 --> 00:04:56,439 pasamos ao Bricos, onde 119 00:04:56,439 --> 00:04:58,220 realizamos algúns ejercicios 120 00:04:58,220 --> 00:05:00,879 e Bricos non é un lenguaje 121 00:05:00,879 --> 00:05:02,500 sino un sistema operativo que reside 122 00:05:02,500 --> 00:05:03,560 no próprio RCX. 123 00:05:04,459 --> 00:05:06,300 Se pode programar en C ou en C++ 124 00:05:06,300 --> 00:05:08,800 al carecer de firmware 125 00:05:08,800 --> 00:05:10,319 é moito máis rápido e eficaz 126 00:05:10,319 --> 00:05:11,459 se comunica directamente 127 00:05:11,459 --> 00:05:14,139 al igual que en el caso de la LQC 128 00:05:14,139 --> 00:05:15,699 con bricos podemos usar 129 00:05:15,699 --> 00:05:18,379 el entorno BCC para combinar 130 00:05:18,379 --> 00:05:19,500 y descargar compradas 131 00:05:19,500 --> 00:05:24,639 este es el siguiente controlador 132 00:05:24,639 --> 00:05:25,319 que hemos usado 133 00:05:25,319 --> 00:05:27,180 se llama NXT, es nuevo 134 00:05:27,180 --> 00:05:30,740 el cerebro de este NXT 135 00:05:30,740 --> 00:05:32,399 es un procesador 136 00:05:32,399 --> 00:05:34,139 A7 de 32GB 137 00:05:34,139 --> 00:05:36,180 tiene memoria flash 138 00:05:36,180 --> 00:05:38,540 ya no se nos van los datos cuando se van las pilas 139 00:05:38,540 --> 00:05:42,420 y tiene una velocidad de funcionamiento 140 00:05:42,420 --> 00:05:43,639 de 48 MHz 141 00:05:43,639 --> 00:05:46,560 antes nos comunicábamos con el 142 00:05:46,560 --> 00:05:48,600 ordenador mediante enclarojos 143 00:05:48,600 --> 00:05:50,579 y para descargar los programas necesitábamos 144 00:05:50,579 --> 00:05:51,040 un atorno 145 00:05:51,040 --> 00:05:54,240 ahora se descarga con el tubo de un cable 146 00:05:54,240 --> 00:05:55,079 y con porto USB 147 00:05:55,079 --> 00:05:58,259 tiene un procesador de 8 bits solamente para 148 00:05:58,259 --> 00:05:59,279 las entradas y salidas 149 00:05:59,279 --> 00:06:01,779 incluye también nuevos motores y sensores 150 00:06:01,779 --> 00:06:03,860 tiene tecnología 151 00:06:03,860 --> 00:06:07,040 se poden descargar programas ao robot 152 00:06:07,040 --> 00:06:08,699 seno que concederlo cerca do ordenador. 153 00:06:10,779 --> 00:06:12,259 O lenguaje deste NXT 154 00:06:12,259 --> 00:06:13,879 é unha herramienta 155 00:06:13,879 --> 00:06:16,540 que se chama Lego Maestro NXT 156 00:06:16,540 --> 00:06:18,500 e permite programas 157 00:06:18,500 --> 00:06:19,920 de unha forma rápida e sencilla 158 00:06:19,920 --> 00:06:20,620 montajes. 159 00:06:22,180 --> 00:06:24,079 A programación é moi vistosa. 160 00:06:24,680 --> 00:06:26,199 Cando faces exercicios fáciles 161 00:06:26,199 --> 00:06:28,339 sencillos resulta moi fácil 162 00:06:28,339 --> 00:06:30,420 pero con exercicios máis complexos 163 00:06:30,420 --> 00:06:32,459 se perde a sencillez e a claridade. 164 00:06:33,860 --> 00:06:42,860 Este é o Robola 2.9, sirve tanto para el RX como para el NXT, incorpora as súas propias versiones de firmware. 165 00:06:42,860 --> 00:06:48,860 Actualmente é a herramienta gráfica máis potente tanto para el RX como para el NXT. 166 00:06:48,860 --> 00:06:53,550 Soporta todos os sensores de Lego, novos e antigos. 167 00:06:53,550 --> 00:07:02,550 Mejora moito o manejo das tareas e incluye novos prestaciones, como o controle proporcional e o ajustador. 168 00:07:02,550 --> 00:07:23,850 Unha forma comun para programar o RCX en NXT permite programar en un C moito máis potente que en NQC, utiliza un firmware propio moito máis potente que as versiones originales, incluye herramientas de depuración e en actualidade é unha herramienta máis potente para programar o RCX en NXT. 169 00:07:23,850 --> 00:07:26,350 o que estamos facendo agora 170 00:07:26,350 --> 00:07:27,970 é intentar programar o DSP 171 00:07:27,970 --> 00:07:30,170 con o lenguaje C 172 00:07:30,170 --> 00:07:32,569 trabajamos con a tarjeta 173 00:07:32,569 --> 00:07:33,189 da DSP 174 00:07:33,189 --> 00:07:35,410 o programamos directamente en C 175 00:07:35,410 --> 00:07:39,029 usando librerías para o control dos periféricos 176 00:07:39,029 --> 00:07:40,470 a día de eso nos conseguimos 177 00:07:40,470 --> 00:07:41,670 que nosos robos se forman 178 00:07:41,670 --> 00:07:43,889 se muevan de maneira controlada 179 00:07:43,889 --> 00:07:44,790 pero pouco fixada 180 00:07:44,790 --> 00:07:48,310 as conclusións que nos sacamos 181 00:07:48,310 --> 00:07:50,050 é que é necesario analizarmos 182 00:07:50,050 --> 00:07:52,689 os problemas antes de intentar resolverlos 183 00:07:52,689 --> 00:07:54,850 porque senón é moi costoso 184 00:07:54,850 --> 00:07:56,569 que con os controladores 185 00:07:56,569 --> 00:07:58,410 o 20X e o NXT 186 00:07:58,410 --> 00:08:00,170 depois aprende o suficiente 187 00:08:00,170 --> 00:08:02,610 e que con a tarjeta 188 00:08:02,610 --> 00:08:04,069 al KSP nos vai permitir 189 00:08:04,069 --> 00:08:06,209 programar logo moitos máis potentes eficaces