Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4....

16
TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. Desarrollo del tema: 1. Sistemas automáticos programados . 2. Control mediante un ordenador. 3. Lenguajes de programación de alto nivel. 4. Proyecto informático. Diagrama de bloques. 5. Lenguaje de programación C++. 1. Sistemas automáticos programados . Un dispositivo es automático, cuando es capaz de desempeñar una tarea determinada sin la intervención del ser humano. Para que una máquina funcione automáticamente, es necesario que disponga de un sistema de control. Un control está formado por una serie de dispositivos que realizan las acciones oportunas en cada momento para conseguir el fin deseado. Los sistemas de control automático poseen tres partes diferenciadas: Las entradas. Son los dispositivos que detectan el estado en que se encuentra el sistema. Están formadas por los sensores. La unidad de control y programación. Son los dispositivos que analizan la señal de entrada y establecen la reacción del sistema. Las salidas. Son los dispositivos que ejecutan las acciones que decide la unidad de control y programación. Las señales, tanto de entrada como de salida, están formadas por impulsos eléctricos, que pueden ser digitales, si toma el valor de 1 (activada) o 0 (desactivada), utilizándose sistemas de relés, para su activación, o señales analógicas, de + o - , cuando la variable puede modificarse continuamente, utilizándose, para ello, circuitos integrados que van a regular, por ejemplo, la velocidad de giro de un motor. 2. Control mediante un ordenador. Por si mismo, un ordenador es un dispositivo de control, que, mediante programas adecuados o drivers, es capaz de configurar automáticamente el funcionamiento de dispositivos tales como la impresora, el escáner, las unidades de almacenamiento, etc. La CPU de un ordenador posee una serie de puertos , serie (COM), USB, VGA, PS/2, Firewire , que permiten comunicarse con el resto de los periféricos y controlarlos, recibiendo y enviando información. Los dispositivos tecnológicos, como son los pulsadores, lámparas, motores, etc, no se deben conectar directamente a los puertos del ordenador, ya que éste envía, a través de ellos, una corriente de determinada tensión e intensidad, aunque ésta sea pequeña, que podrían dañar los circuitos 1

Transcript of Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4....

Page 1: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

Desarrollo del tema:

1. Sistemas automáticos programados .

2. Control mediante un ordenador.

3. Lenguajes de programación de alto nivel.

4. Proyecto informático. Diagrama de bloques.

5. Lenguaje de programación C++.

1. Sistemas automáticos programados .

Un dispositivo es automático, cuando es capaz de desempeñar una tarea determinada sin laintervención del ser humano.

Para que una máquina funcione automáticamente, es necesario que disponga de un sistemade control. Un control está formado por una serie de dispositivos que realizan las accionesoportunas en cada momento para conseguir el fin deseado.

Los sistemas de control automático poseen tres partes diferenciadas:Las entradas. Son los dispositivos que detectan el estado en que se encuentra el sistema.Están formadas por los sensores. La unidad de control y programación. Son los dispositivos que analizan la señal de entrada yestablecen la reacción del sistema.Las salidas. Son los dispositivos que ejecutan las acciones que decide la unidad de control yprogramación.

Las señales, tanto de entrada como de salida, están formadas por impulsos eléctricos, quepueden ser digitales, si toma el valor de 1 (activada) o 0 (desactivada), utilizándose sistemas derelés, para su activación, o señales analógicas, de + o - , cuando la variable puede modificarsecontinuamente, utilizándose, para ello, circuitos integrados que van a regular, por ejemplo, lavelocidad de giro de un motor.

2. Control mediante un ordenador.

Por si mismo, un ordenador es un dispositivo de control, que, mediante programasadecuados o drivers, es capaz de configurar automáticamente el funcionamiento de dispositivostales como la impresora, el escáner, las unidades de almacenamiento, etc. La CPU de un ordenadorposee una serie de puertos , serie (COM), USB, VGA, PS/2, Firewire , que permiten comunicarsecon el resto de los periféricos y controlarlos, recibiendo y enviando información.

Los dispositivos tecnológicos, como son los pulsadores, lámparas, motores, etc, no se debenconectar directamente a los puertos del ordenador, ya que éste envía, a través de ellos, una corrientede determinada tensión e intensidad, aunque ésta sea pequeña, que podrían dañar los circuitos

1

Page 2: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

internos.Con el fin de manejar estos circuitos tecnológicos, haciendo que trabajen de forma

autónoma, es necesario utilizar una tarjeta controladora; esta tarjeta es un periférico queproporciona una serie de entradas y salidas (analógicas o digitales ) adecuadas. Para manejar latarjeta controladora, es necesario crear y utilizar un programa determinado, para gestionar lainformación que llega a las entradas y que permita actuar en consecuencia a las salidas.

Algunas tarjetas controladoras, proporciona una fuente de alimentación interna, otras esnecesario proporcionarles la tensión adecuada desde el exterior.

Tarjeta controladora Arduino1

Conexión al ordenador mediante un puerto USB (AB)

Si representásemos el diagrama de bloques, sería:

En las diferentes tiendas de electrónica se pueden encontrar diferentes tarjetas controladorascomo son la de Microlog, ya antigua , y las del grupo ARDUINO con diferentes formas de conexióny programación.

2

ORDENADOR

TarjetaControladora

Sensores

Actuadores

Page 3: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

3. Lenguajes de programación

El ordenador entiende un código determinado formado por el sistema binario de ceros yunos. Este lenguaje recibe el nombre de lenguaje máquina.

Para interaccionar con el ordenador, se han creado una serie de lenguajes de programaciónllamados de alto nivel o lenguaje fuente que tiene por objeto, utilizando una serie de comandos oinstrucciones perfectamente ordenados de acuerdo a un código establecido, poder configurar laactuación del ordenador usando para ello compiladores e interpretes.

Un Compilador es una herramienta capaz de traducir un programa en lenguaje de alto nivela lenguaje máquina, indicándonos los errores si los hay y creando un archivo ejecutable conextensión .exe .

Un intérprete es una herramienta informática que traduce cada orden del programa de altonivel a lenguaje máquina, parándose si advierte algún error. No crea ningún archivo ejecutable.

Un Programa informático en lenguaje de alto nivel, está formado por una serie de líneas oinstrucciones (comandos) ordenadas. Cada instrucción está formado por una orden y un argumento.

En la siguiente imagen se pueden observar dos programas en lenguaje WinLogo,

El lenguaje ensamblador es un lenguaje de bajo nivel que permite traducir el lenguajemáquina a un lenguaje sencillo de instrucciones . Lo define el fabricante del Hardware y estabasado en una serie de códigos de memoria que establecen el orden de procesamiento de losmicrocontroladores.

3

Instrucción o comando

Page 4: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

4 Proyecto informático.

Para resolver un problema informático, el primer paso es definir y comprender el problema.Posteriormente se establece el algoritmo del proceso. Se define como algoritmo al conjunto deinstrucciones o eventos ordenados que tiene como fin la resolución de un problema . Pararepresentar el algoritmo informático se recurre al diagrama de bloques, algunos de cuyos símbolosse representan en el cuadro siguiente:

Un ejemplo de la utilización del diagrama de flujo podría ser:

4

Page 5: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

Otro ejemplo es el siguiente :

Se va a realizar un programa que calcule la media de una serie de datos que no pasen de1000 y que la suma no supere de 1000000.

La variable del dato es D y la suma será S = S + D (Acumulador)

El diagrama representado es el siguiente:

5

Page 6: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

6

Page 7: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

Después de haberse elaborado el algoritmo, se decide el lenguaje de programación y se elabora elprograma.

5. Lenguaje de programación de alto nivel : C++

Un lenguaje de programación está formado por varios campos de configuración.

En el caso del lenguaje C++ , los campos son los siguientes :

a. Las Directivas del Procesador . Incluye una serie de bibliotecas como son :#include <iostream>#include <cmath>using namespace std;

….

b. Instruciones del programador o declaraciones del programa . Siempre se colocan dos lineas comoapertura // . Cuando el comentario ocupe mas de una linea física la apertura sera / * y se cerrará alcontrario * /.

c. Cuerpo o declaración principal. Su estructura será :

int main ()

{Sentencias de programación ( cout, cin , etc )

return 0 ;system (“pause”) ;

}

6. Categoría de los números.

La declaración de las variables numéricas se determina mediante las siguientes categorías :

Numero Declaración

Entero (Z) int

Decimal (coma flotante) float

Racional (Q) double o double double (según precisión)

7. Operaciones matemáticas .

Las operaciones matemáticas básicas se expresan mediante los siguientes símbolos :

7

Page 8: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

Operación Símbolo

Suma +

Diferencia -

Producto *

Cociente /

Resto %

Primer programa en VisualStudio.

Programa de edición : Dev C++ 5.11

8

Información del programador

Declaraciones iniciales

Cuerpo principal

Resultado final en la consola de editor : Hola a todos

Page 9: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

Programa que permite calcular operaciones matemáticas introducidos dos números cualesquiera.

Archivo de trabajo : peter13.cpp . Extensión cpp.

Archivo ejecutable : peter13. Exe . Extensión exe.

Funciones matemáticas . En el encabezamiento se necesita invocar la orden #include <cmath>La categoría de las variables numéricas es float (coma flotante) o double.

9

Page 10: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

Cuadro de funciones y su expresión :Función Expresión Orden en C++

Raíz cuadrada √ x sqrt(x)

Potencia x y pow(x,y)

Coseno cos x cos(x)

Seno sen x sin(x)

Tangente tag x tan(x)

Exponencial e x exp(x)

Logaritmo neperiano Ln x log(x)

Logaritmo decimal Log x log10(x)

Programa que calcula la raíz cuadrada de un numero racional y el coseno de un angulo en gradossexagesimales.

10

Page 11: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

Programa condicional .- Escribe en la consola el mayor de dos números dados

Programación con operadores lógicos

Variable símbolo

AND &&

OR | |

NOT !

Operadores de comparación :

Igual a = =

Diferente de ! =

Menor < Menor o igual < =

Mayor > Mayor o igual > =

11

Page 12: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

Programa donde se introduce un contador

Contador n = n + 1 ;;; Acumulador s = A + s

12

Page 13: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

El programa se ejecuta de la siguiente forma :

Programa que permite escribir una sucesión de números mediante un contador.

13

Page 14: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

En consola la ejecución del programa será :

Programa que introduce un bucle Do While.

14

Page 15: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

La ejecución del programa en consola será :

Programa que permite obtener la tabla de multiplicar de determinados números.

15

Page 16: Instituto de Enseñanza Secundaria - TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL … · 2017. 4. 17. · TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR. 4 Proyecto informático.

TECNOLOGÍA ROBÓTICA. TEMA 6 . CONTROL POR ORDENADOR.

La ejecución del programa muestra :

16