martes, 14 de agosto de 2012

Robotica


Qué es la robótica ?


La robótica es la ciencia de ingeniería y la tecnología de los robots (entendiendo al robot como una máquina capaz de realizar tareas de manera autónoma o semi autónoma), relacionada con la electrónica, la mecánica y el software. Es una ciencia cada vez más popular por desarrollar verdaderas inteligencias capaces de realizar muchas labores humanas o simplemente facilitarlas. La robótica se encarga no sólo de diseñar robots, sino también de fabricarlos, aplicarlos y disponerlos estructuralmente.
El término robot como concepto fue introducido por el escritor checo Karel Capek en su obra R.U.R publicada en 1920. En los años treinta se comenzó a difundir por Europa y luego por el resto del mundo, alcanzando gran popularidad. Hoy, el robot es descrito como una máquina programable, que puede ser móvil o articulada. El primero de ellos, llamado Unimate, fue instalado en 1961para levantar piezas calientes de metal y apilarlas.
Un robot puede funcionar con energía hidráulica, eléctrica o neumática. Los que utiliza la industria son casi todos de la primera generación de robots y su funcionamiento está totalmente limitado a la programación, sin poder realizar ningún tipo de decisión propia. Los movimientos que realizan están codificados en un programa elaborado matemáticamente o a partir de los movimientos de un instructor que se almacenan en la memoria de un ordenador. La siguiente generación de robots, salidos de laboratorios, poseen algún grado de inteligencia artificial, con la que pueden tomar decisiones lógicas. Por ejemplo, pueden encontrar el camino más corto para realizar sus tareas, luego de analizar la situación. Hoy, los robots con inteligencia artificial pueden sostener juegos de ajedrez reñidos con los grandes maestros, incluso retener más información que un médico y así ayudarle a establecer diagnósticos.
El robot, de manera práctica (llevado del concepto a la acción), nació en los años sesenta y desde entonces se ha desarrollado de manera increíble, sin presentar ningún indicio de estancamiento, lo que sugiere el increíble potencial de la robótica. Los primeros fueron desarrollados para aplicaciones industriales, espaciales y submarinas, pero de a poco fueron ganando terrenos hasta realizar tareas humanas en servicios y oficinas e incluso algunos que pueden realizar tareas del hogar. Los robots representan una opción más barata, precisa y confiable que los humanos en numerosos trabajos. Además, son ideales en las labores que representan un riesgo para una persona. Sus usos más frecuentes son en fabricación, ensamblaje, empaquetamiento, transporte, exploraciones espaciales y terrestres, cirugía, armamento, investigación de laboratorio, seguridad y producción masiva de productos industriales y de consumidor.


Algoritmo

Algoritmo


En matemáticasciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus y este a su vez del matemático persa Al-Juarismi1 ) es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad.2 Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia.1

En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos ejemplos enmatemática son el algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver un sistema lineal de ecuaciones.

Definición formal


En general, no existe ningún consenso definitivo en cuanto a la definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten los datos de un problema (entrada) en una solución (salida).1 2 3 4 5 6 Sin embargo cabe notar que algunos algoritmos no necesariamente tienen que terminar o resolver un problema en particular. Por ejemplo, una versión modificada de la criba de Eratóstenes que nunca termine de calcular números primos no deja de ser un algoritmo.7

A lo largo de la historia varios autores han tratado de definir formalmente a los algoritmos utilizando modelos matemáticos como máquinas de Turing entre otros.8 9 Sin embargo, estos modelos están sujetos a un tipo particular de datos como son números, símbolos o gráficas mientras que, en general, los algoritmos funcionan sobre una vasta cantidad deestructuras de datos.3 1 En general, la parte común en todas las definiciones se puede resumir en las siguientes tres propiedades siempre y cuando no consideremos algoritmos paralelos:7
Tiempo secuencial. Un algoritmo funciona en tiempo discretizado –paso a paso–, definiendo así una secuencia de estados "computacionales" por cada entrada válida (laentrada son los datos que se le suministran al algoritmo antes de comenzar).
Estado abstracto. Cada estado computacional puede ser descrito formalmente utilizando una estructura de primer orden y cada algoritmo es independiente de su implementación (los algoritmos son objetos abstractos) de manera que en un algoritmo las estructuras de primer orden son invariantes bajo isomorfismo.
Exploración acotada. La transición de un estado al siguiente queda completamente determinada por una descripción fija y finita; es decir, entre cada estado y el siguiente solamente se puede tomar en cuenta una cantidad fija y limitada de términos del estado actual.
En resumen, un algoritmo es cualquier cosa que funcione paso a paso, donde cada paso se pueda describir sin ambigüedad y sin hacer referencia a una computadora en particular, y además tiene un límite fijo en cuanto a la cantidad de datos que se pueden leer/escribir en un solo paso. Esta amplia definición abarca tanto a algoritmos prácticos como aquellos que solo funcionan en teoría, por ejemplo el método de Newton y la eliminación de Gauss-Jordan funcionan, al menos en principio, con números de precisión infinita; sin embargo no es posible programar la precisión infinita en una computadora, y no por ello dejan de ser algoritmos.10 En particular es posible considerar una cuarta propiedad que puede ser usada para validar la tesis de Church-Turing de que toda función calculable se puede programar en una máquina de Turing (o equivalentemente, en un lenguaje de programación suficientemente general):10
Aritmetizabilidad. Solamente operaciones innegablemente calculables están disponibles en el paso inicial.

DEFINICION DE ALGORITMO: 

define algoritmo como un conjunto ordenado y finito de operaciones que permite hallar la solución de un problema. Método y notación en las distintas fórmulas del cálculo. El algoritmo constituye un método para resolver un problema mediante una secuencia de pasos a seguir. Dicha secuencia puede ser expresada en forma de diagrama de flujo con el fin de seguirlo de una forma más sencilla. 
De acuerdo con el concepto anterior, el algoritmo podría estar incluido en la definición de programa de ordenador de la Ley de Propiedad Intelectual (TRLPI), al referirse a éste como toda secuencia de instrucciones o indicaciones destinadas a ser utilizadas, directa o indirectamente, en un sistema informático para realizar una función o una tarea o para obtener un resultado determinado, cualquiera que fuere su forma de expresión y fijación. 

Sin embargo, ciertas características de los algoritmos hacen que no puedan ser calificados como programas de ordenador. (Ver recuadro) La consecuencia de estas características es la exclusión del algoritmo del ámbito de protección del derecho de autor, en la medida en que éste constituye una idea, un método de cálculo o una función, afectado por el artículo 96.4 del TRLPI. 

Por otro lado, Preámbulo de la Directiva 91/250/CEE de 1991 sobre la protección jurídica de los programas de ordenador establece que: "en la medida en que la lógica, los algoritmos y los lenguajes de programación abarquen ideas y principios, estos últimos no estarán protegidos con arreglo a la presente Directiva." 

Además, en un Memorandum de 1994 de la OMPI (WIPO) Organización Mundial de la Propiedad Intelectual, se manifestaba: "Es perfectamente cierto que el derecho de autor no protege los algoritmos, sino únicamente las expresiones concretas de los mismos. Precisamente por eso, el derecho de autor puede ofrecer una protección apropiada a los programas de ordenador, sin crear obstáculos infranqueables a la creación independiente de nuevos programas". 

No obstante, existen excepciones a nivel jurisprudencial basadas en la doctrina del "look and feel", que establecen la existencia de plagio cuando se reproduce la estructura, secuencia y disposición de los datos integrados en un programa de ordenador. Estas excepciones podrían aplicarse en el caso de combinaciones de algoritmos o cuando el nivel de complejidad de un algoritmo fuese muy alto. 

miércoles, 8 de agosto de 2012

Robot Lego

Lego Mindstorms Lego Mindstorms con tres sensores (tacto, luz y rotación) y un motor eléctrico. Algunas de las piezas incluidas en Lego Mindstorms y su CD. Lego Mindstorms es un juego de robótica para niños fabricado por la empresa Lego, el cual posee elementos básicos de las teorías robóticas, como la unión de piezas y la programación de acciones, en forma interactiva. Este robot fue comercializado por primera vez en septiembre de 1998. Comercialmente se publicita como «Robotic Invention System», en español Sistema de Invención Robotizado (RIS). También se vende como herramienta educacional, lo que originalmente se pensó en una sociedad entre Lego y el MIT. La versión educativa se llama «Lego Mindstorms for Schools», en español Lego Mindstorms para la escuela y viene con un software de programación basado en la GUI de Robolab.1 Lego Mindstorms puede ser usado para construir un modelo de sistema integrado con partes electromecánicas controladas por computador. Prácticamente todo puede ser representado con las piezas tal como en la vida real, como un elevador o robots Aplicacion:

Diagramacion o Maquetacion


a maquetación, también llamada a veces diagramación, es un oficio del diseño editorial que se encarga de organizar en un espacio, contenidos escritos, visuales y en algunos casos audiovisuales (multimedia) en medios impresos y electrónicos, como libros, diarios y revistas. Estrictamente, el acto de maquetar tan solo se relaciona con la distribución de los elementos en un espacio determinado de la página, mientras que el diseño editorial incluye fases más amplias del proceso, desde el proyecto gráfico, hasta los procesos de producción denominados pre-prensa (preparación para impresión), prensa (impresión) y post-prensa (acabados). Sin embargo, usualmente todo el aspecto gráfico de la actividad editorial y periodística se conoce por el término maquetación. En el caso de un diario, la maquetación sigue los objetivos y líneas gráficas y editoriales de ese impreso. Las principales líneas editoriales para la maquetación de un diario incluyen la jerarquización de los artículos por orden de importancia. Las consideraciones gráficas incluyen legibilidad e incorporación balanceada y no-obstructiva de los anuncios publicitarios. La edición incorpora principios del diseño gráfico que, a su vez, es una profesión independiente o presente en licenciaturas relacionadas con el diseño, más allá de ser una disciplina que hace parte del currículo de profesiones como el periodismo, la publicidad y algunos cursos de arquitectura en universidades y facultades. Otros términos que sirven para referirse al proceso de maquetación son: layout, makeup o pasteup.

Podemos considerar al diseño gráfico como la: organización armoniosa de elementos gráficos con el objetivo de cumplir una función de comunicación visual. Esos elementos gráficos son el texto y la imagen. Estos dos elementos convierten al mensaje impreso en un mensaje bimedia, en el decir de Moles éste sería, por lo tanto, un mensaje multimedia.

El diseño gráfico se concibe para ser plasmado sobre soportes bidimensionales: papel, cartón, plástico, etc.; sin embargo estos soportes pueden ser convertidos a objetos tridimensionales: envases, dispensadores, merchandising, etc. Esto significa que el diseñador también tiene una concepción tridimensional con respecto al uso del diseño. Habría que concordar con Moles cuando afirma que un libro, un folleto, una revista o un periódico, desde el momento que es manipulado para ser observado adquiere un carácter tridimensional, el desglose, el paso de una página a otra implican factores ergonómicos previos en su concepción.

Diagramación

Diagramar es distribuir, organizar los elementos del mensaje bimedia (texto e imagen) en el espacio bidimensional (el papel) mediante criterios de jerarquización (importancia) buscando funcionalidad del mensaje (fácil lectura) bajo una apariencia estética agradable (aplicación adecuada de tipografías y colores).

La diferencia

Los conceptos diseño y diagramación involucran el problema de la composición. En realidad, la diferencia entre uno y otro es el papel que cumple cada uno en la edición periódica de la publicación. Mientras que el diseñador establece las pautas de la diagramación: formato, cajas de diagramación, tipografías, tamaño, estilo, formateo de párrafos, sangrías; propone color corporativo para textos, tratamiento de la imagen (sangrados, recuadros o aplicaciones especiales), criterios compositivos, en fin, todos los detalles que componen una publicación; el diagramador los aplica en cada una de las ediciones posteriores. 

Como vemos el diagramador resuelve la organización de las páginas de acuerdo con las normas ya establecidas por el diseñador en el manual de diseño. Es posible que el mismo diseñador también pueda encargarse de la diagramación, pero las responsabilidades son distintas. Un buen diagramador es el que respeta esas normas, precisamente su creativividad radica en la capacidad para ofrecer múltiples posibilidades de presentación bajo una norma establecida.


Tutorial HTML




NOTA PREVIA


La primera versión de este trabajo se desarrolló en el marco de mi trabajo como becario en la Escuela de Ingenieros de Telecomunicación, durante mayo de 1995. Tanto su creación como su posterior mantenimiento son una aportación personal desinteresada a la comunidad hispanohablante de Internet, y no están ligadas a ningún interés comercial.
No está permitido copiar o modificar este manual sin autorización expresa de su autor (o sea, yo :-). Se permite hacer enlaces a este manual desde páginas personales y comerciales, con la única restricción de que en las páginas de origen de dichos enlaces no haya lugar a confusión sobre la autoría y motivación de este manual.

QUÉ ES HTML

HTML (HyperText Markup Language) es un lenguaje muy sencillo que permite describir hipertexto, es decir, texto presentado de forma estructurada y agradable, con enlaces (hyperlinks) que conducen a otros documentos o fuentes de información relacionadas, y con inserciones multimedia (gráficos, sonido...) La descripción se basa en especificar en el texto la estructura lógica del contenido (títulos, párrafos de texto normal, enumeraciones, definiciones, citas, etc) así como los diferentes efectos que se quieren dar (especificar los lugares del documento donde se debe poner cursiva, negrita, o un gráfico determinado) y dejar que luego la presentación final de dicho hipertexto se realice por un programa especializado (como Mosaic, o Netscape).

CÓMO ESPECIFICAR EFECTOS DEL TEXTO

La mayoría de los efectos se especifican de la misma forma: rodeando el texto que se quiere marcar entre dos etiquetas o directivas (tags, en inglés), que definen el efecto o unidad lógica que se desea. Las etiquetas están formadas por determinados códigos metidos entre los signos < y >, y con la barra / cuando se trata de la segunda etiqueta de un efecto (la de cierre). Por ejemplo: <efecto> para abrir y</efecto> para cerrar. Ciertas directivas sólo se ponen una vez en el lugar del texto donde queramos que aparezca el efecto concreto. Esto es lo que ocurre, por ejemplo, cuando queremos poner un gráfico, caso en el que se usa algo parecido a <poner_gráfico_aquí> (más adelante ya veremos la directiva concreta que se utiliza).A veces es necesario ofrecer datos adicionales en una directiva. Por ejemplo, cuando se define un hiperenlace hay que especificar su destino. Para ello se incluyen parámetros en la directiva inicial (la de apertura), de la siguiente forma: <efecto parametro1 parametro2 ...>. La directiva de cierre, caso de ser necesaria, queda como antes: </efecto>.
Más adelante en el presente documento se muestra el efecto de las directivas más usadas en la creación de un documento HTML. Para cada una de ellas, primero se muestra el texto fuente, y bajo éste, el efecto que produce.


ESTRUCTURA BÁSICA DE UN DOCUMENTO HTML

Un documento HTML comienza con la etiqueta <html>, y termina con </html>. Dentro del documento (entre las etiquetas de principio y fin de html), hay dos zonas bien diferenciadas: el encabezamiento, delimitado por <head> y </head>, que sirve para definir diversos valores válidos en todo el documento; y el cuerpo, delimitado por <body> y </body>, donde reside la información del documento.La única utilidad del encabezamiento en la que nos detendremos es la directiva <title>, que permite especificar el título de un documento HTML. Este título no forma parte del documento en sí: no aparece, por ejemplo, al principio del documento una vez que este se presenta con un programa adecuado, sino que suele servir como título de la ventana del programa que nos la muestra. Por ejemplo, en el encabezamiento de este manual se ha especificado:
<title>Manual práctico de HTML</title>
en minúsculas. Obsérverse que el título que encabeza este texto se ha escrito con mayúsculas, para distinguirlo del título global del documento.El cuerpo de un documento HTML contiene el texto que, con la presentación y los efectos que se decidan, se presentará ante el hiperlector. Dentro del cuerpo son aplicables todos los efectos que se van a mencionar en el resto de esta guía. Dichos efectos se especifican exclusivamente a través de directivas. Esto quiere decir que los espacios, tabulaciones y retornos de carro que se introduzcan en el fichero fuente no tienen ningún efecto a la hora de la presentación final del documento. Por ejemplo, escribiendo:
Estas
      palabras
forman          una
    frase.
producimos exactamente lo mismo que con:
Estas palabras forman una frase.
A la hora de la verdad lo que se ve es:Estas palabras forman una frase.

En resumen, la estructura básica de un documento HTML queda de la forma siguiente:
<html>
<head>
<title>Título</title>
</head>
<body>
Texto del documento, menciones a gráficos, enlaces, etc.
</body>
</html>

ESTILOS Y EFECTOS BÁSICOS

Como ya hemos dicho, la estructura lógica del texto y los diferentes efectos que se le apliquen se especifican mediante directivas. En este punto vamos a repasar algunas de las más importantes. En cada uno de los casos que veremos, primero se presenta el texto original HTML, es decir, lo que nosotros editamos, con las directivas situadas en los lugares adecuados; y después se presenta el efecto que dichotexto fuente produce una vez que se interpreta y se representa con el programa adecuado.

TÍTULOS

Mediante los títulos, en sus diferentes niveles de importancia, podemos definir el esqueleto del documento, su estructura básica.
<h1>Mucha importancia</h1>

Mucha importancia

<h2>Menos importancia</h2>

Menos importancia

<h3>Mucha menos importancia</h3>

Mucha menos importancia


ATRIBUTOS DEL TEXTO

Mediante estos atributos determinamos el estilo y el tipo de letra que tendrá la presentación del documento final.El primero en el que nos deberíamos detener es el texto normal entendiendo como tal el que no tiene ninguna característica especial. Para definir un párrafo como normal no es necesario poner ninguna etiqueta. Lo único que hay que tener en cuenta, como ya se ha dicho antes, es que al presentar el documento se hace caso omiso de los espacios, tabulaciones y retornos de carro que se encuentren en el texto fuente. Por ello cuando se quiera forzar un final de línea es necesario utilizar dos directivas especiales: <p> para marcar un fin de párrafo, y <br> para un único retorno de carro. La diferencia entre ambas es que la separación de líneas que provoca <p> es algo mayor que la de <br>, para que los párrafos se distingan bien entre sí. Las dos directivas mencionadas se sitúan en el punto en que queremos poner la separación. Por ejemplo:

Este será un texto normal (párrafo 1, línea 1).<br>
El primer párrafo estará formado por 2 líneas (párrafo 1, línea 2).<p>
Este ya es el segundo párrafo (párrafo 2, línea 1).<p>
Este será un texto normal (párrafo 1, línea 1).
El primer párrafo estará formado por 2 líneas (párrafo 1, línea 2).Este ya es el segundo párrafo (párrafo 2, línea 1).
Por supuesto, estas dos etiquetas se puede aplicar donde queramos, no sólo en el texto normal.
El texto preformateado (etiqueta <pre>) se aplica cuando queremos que en la presentación final del documento se respeten los espacios y retornos de carro que hayamos puesto en el texto fuente. Además se utilizará un tipo de letra de espaciado fijo, parecido al de una máquina de escribir, más pequeño que el del texto normal. Este estilo de texto puede ser adecuado, por ejemplo, para una tabla numérica sencilla:

<pre>
Texto preformateado
---------------------
|  1 |  2 |  3 |  4 |
|  5 |  6 |  7 |  8 |
|  9 | 10 | 11 | 12 |
---------------------
</pre>
Texto preformateado
---------------------
|  1 |  2 |  3 |  4 |
|  5 |  6 |  7 |  8 |
|  9 | 10 | 11 | 12 |
---------------------
Para hacer una cita textual dentro de nuestro documento, se puede utilizar la directiva <blockquote>:

<blockquote>Muchos años después, frente al pelotón de fusilamiento,
el coronel Aureliano Buendía había de recordar aquella tarde remota
en que su padre lo llevó a conocer el hielo.<br>
(Gabriel García Márquez, Cien años de soledad)</blockquote>

Muchos años después, frente al pelotón de fusilamiento, el coronel Aureliano Buendía había de recordar aquella tarde remota en que su padre lo llevó a conocer el hielo.
(Gabriel García Márquez, Cien años de soledad)
Las direcciones de correo electrónico se suelen marcar con esta directiva:

<address>Dirección: webmaster@etsit.upm.es</address>
Dirección: webmaster@etsit.upm.es
Se pueden dar también los atributos más tradicionales: negrita y cursiva:

<b>Esto en negrita</b> y <i>esto en cursiva</i>
Esto en negrita y esto en cursivaSe puede utilizar un tipo de letra similar al de una máquina de escribir:

<tt>Máquina de escribir</tt>
Máquina de escribirPara centrar texto (o, en general, cualquier cosa: un gráfico, por ejemplo) se usa la directiva <center>:

<center>Verde que te quiero verde</center>
Verde que te quiero verde