jueves, 28 de julio de 2016

Ingeniería inversa


  • ¿QUE ES INGENIERIA INVERSA?

La ingeniería inversa es el proceso de descubrir los principios tecnológicos de un objeto, herramienta, dispositivo o sistema, mediante el razonamiento abductivo (haciendo conjeturas) de su estructura, función y operación. Dicho de otra manera, se trata de tomar algo, por ejemplo un dispositivo mecánico o electrónico, para analizar su funcionamiento en detalle, con el objetivo de crear un dispositivo que haga la misma tarea o una similar sin copiar los detalles del original.El objetivo de la ingeniería inversa es obtener información o un diseño a partir de un producto, con el fin de determinar de qué está hecho, qué lo hace funcionar y cómo fue fabricado.

  • CLASES DE INGENIERÍA INVERSA

  • ¿Método de aprendizaje?

    La ingeniería inversa no es un método de solución sino más bien de aprendizaje, como implica analizar un objeto hasta el punto de comprender cada uno de sus componentes y sus funciones entonces la cantidad de conocimientos obtenida será bastante, pero solo hemos aprendido, para solucionar el problema deberemos aplicar lo aprendido y comenzar de cero nuevamente.
La ingeniería inversa es consideradacomo un producto de aprendizaje activo (ALP), los cuales son lecciones prácticas, demostraciones, objetos, herramientas multimedia, proyectos cortos, tareas y actividades que ofrecen enfoques alternativos y material complementario a las clases típicas de libros de texto en las áreas de Ciencia, Tecnología, Ingeniería y Matemáticas. (Linsey, Talley, Jensen, & Wood, 2009) 
 
Las metodologías para enseñar a leer se pueden plantear de tres formas, primero entendiendo la lectura de acuerdo al modelo lineal modular(bottom-up), como un proceso detallado de percepción secuencial y de identificación de letras y palabras que forman frases,segundo de acuerdo al modelo holístico constructivista(top-down), como un proceso de formulación de hipótesis a partir de los conocimientos y experiencia del lector y su erificación, o finalmente de acuerdoal modelo interaccionista que surge de una 
combinación de los dos anteriores. Haciendo la analogía, la propuesta de incluir la Ingeniería inversa como metodología, es resultado de entender la enseñanza de la ingeniería como un proceso Top-Down, en contraste con los planes de estudio que tradicionalmentese orientan como un proceso bottom-up, comenzando por conceptos de ciencias básicas, los cuales se van enlazando para entender conceptos más complejos, que a su vez se articulan en aplicaciones de ingeniería.  
Así como en un principio se entendió el proceso lector como un proceso bottom-up, en los ochenta se comenzaron a encontrar mejoras al comprenderlo como un proceso top-down y posteriormente a principios de los noventa aumentaron los argumentos a favor del carácter complementario de ambos procesos, la idea es apuntar a entender la enseñanza de la ingeniería como un proceso complementario. 


  • ¿Problemas legales?

    Si se sigue un proceso de ingeniería inversa bien establecido no tiene porque haber ningún problema legal; esto implica cumplir al pie de la letra el objetivo de la ingeniería inversa: obtener un producto que haga lo mismo pero que sea nuevo, que no aplique los mismos principios de funcionamiento del producto analizado; es decir, la ingeniería inversa se debe utilizar solamente para conocer un producto, con el fin de hacer uno que haga lo mismo pero de otro modo.

jueves, 28 de abril de 2016

Medir el periodo de un péndulo con S4A y Arduino.


Medir el periodo de un péndulo con S4A y Arduino.
Hoy vamos a hacer un circuito en nuestro Arduino para medir el periodo de oscilación con un receptor y un emisor IR, el programa en S4A será el encargado de calcular el periodo del péndulo, como podemos ver en el siguiente vídeo.
Para medir el periodo colocaremos el péndulo de forma que la lenteja pase entre el emisor y el receptor IR en el punto más bajo del recorrido, y calculando los tiempos en los que la lenteja del péndulo corta la comunicación entre emisor y receptor sabremos el tiempo que le ha costado un ciclo completo.
En el circuito incluimos un led que estará encendido mientras contamos el tiempo del ciclo.
Componentes:
§  Placa Arduino
§  Placa prototipos
§  Emisor IR
§  Receptor IR
§  Led
§  Resistencias de 10KΩ y 270Ω


En nuestro caso, el emisor y el receptor infrarrojo son muy parecidos a los leds, el de color obscuro es el emisor y el transparente es el receptor.

Conexión de los componentes IR.
La polaridad del emisor es similar a la de los led, se conecta con una resistencia pequeña (270Ω) con la pata más larga conectada a los 5V y la más corta hacia tierra.

En el receptor la polaridad es la contraria, con la pata más larga hacia tierra y la más corta hacia los 5V.
En el circuito, el receptor se comportará como un interruptor, por lo tanto colocaremos una resistencia grande (10kΩ) entre la pata larga y tierra a modo de Pull down.

El punto de conexión a la placa arduino será la unión entre el receptor IR y la resistencia de 10kΩ que ira conectado a la entrada Analog 6.
Funcionamiento del montaje
Desplazamos la lenteja del péndulo hacia uno de los lados y la soltamos, al pasar la lenteja entre el emisor y receptor producirá el primer corte de señal (en este momento encenderá el led), en ese momento usaremos la sentencia reiniciar cronómetro para que Scratch empiece a contar el tiempo.
El péndulo llegará al otro extremo y volverá hacia el punto más bajo y cuando llegue volverá a cortar la señal (en este momento ha pasado medio periodo) continuará hacia el desplazamiento inicial y volverá hacia el punto central.
Cuando llegue al punto central cortará la señal por tercera vez (en este punto ha realizado un ciclo completo), en este momento se apagará el led y se asignará el tiempo que marque el cronómetro de scratch a la variable tiempo. Esta es la variable que se muestra en pantalla.

Código S4A
El programa empieza apagando el led y espera hasta que el sensor (puerto Analog6) indique que recibe señal del emisor IR.
Esto ocurre al desplazar la lenteja del péndulo desde la posición de reposo.

A continuación, cuando el péndulo se suelta pasará por la posición más baja cortando la señal, el programa espera este momento (el valor del sensor < 600) como el inicio del periodo así que reincida el cronómetro y enciende el led.
Ahora vienen la serie de esperas (instrucción esperar hasta que):
§  La primera es hasta que la señal vuelve a recibirse (el péndulo sale del sensor)
§  La segunda cuando el péndulo vuelve a cortar la señal, esta vez pasa por el mismo sitio pero en sentido contrario.
§  La tercera cuando el sensor vuelve a recibir señal, el péndulo sale del sensor.
§  La cuarta cuando se vuelve a cortar la señal, el péndulo está en la misma posición que al empezar a contar el tiempo y va en el mismo sentido, ha pasado un periodo.

En este corte de señal se apaga el led y se asigna el valor del cronómetro a la variable tiempo que es la que se muestra en la pantalla!

domingo, 24 de abril de 2016

martes, 23 de febrero de 2016

SEMÁFORO CON EL SISTEMA ARDUINO


 

Estructura básica de los códigos


Un código Arduino es una serie de comandos de programación que le dirán a nuestro microcontrolador como configurarse al iniciarse y qué acciones tiene que realizar mientras esté en funcionamiento. Estos comandos utilizados en Arduino son sentencias muy fáciles e intuitivas.
El bloque de código debe tener 2 partes, o funciones principales, que siempre debemos incluir.
 
Ilustración 1 Partes básicas de un código
Primero void setup() . Dentro de esta función principal escribiremos las sentencias de configuración que necesitaremos para que Arduino trabaje correctamente. Éstas se ejecutarán al iniciar Arduino y una única vez. Con ellas, por ejemplo, asignaremos la característica de entrada/salida a los pines, el modo de comunicación serial, activaremos los sensores que vayamos a necesitar, escribiremos órdenes de inicio del programa…etc. Algunas de estas sentencias pueden ser: pinMode( , ), Serial.begin(), sensors.begin()…
La segunda función principal es void loop() . Ésta debe ir siempre después de void setup(). En ella escribiremos todas las sentencias, bucles y llamadas a funciones que necesitemos que nuestro Arduino repita constantemente. Se escribirán en orden de ejecución. Ejemplo de éstas pueden ser digitalWrite( , ), Serial.print(“ “), if( )…
Existen otras partes del código que no son obligatorias  pero que podemos necesitar, según el código lo requiera, para organizarlo todo.
Estas zonas pueden ser un espacio para el título, el autor, librerías, definiciones (variables que vayamos a usar en el programa), una zona para funciones a las que el programa irá llamando…Cada uno es libre de organizarlo como quiera, pero cuanto más ordenado esté todo, más difícil será perdernos cuando los códigos se compliquen.
Abajo podemos ver un ejemplo simple de cómo debe estructurarse un código.
 
Ilustración 2 Como debe estructurarse un código

Sentencias básicas, funciones y librerías


Para poder realizar un código Arduino debemos tener las herramientas con las que decirle a nuestro microcontrolador que es lo que debe hacer en cada momento. Estas herramientas son las sentencias y funciones.
Arduino usa una serie de sentencias y comandos básicos muy sencillitos pero a la vez muy potentes. Combinándolos crearemos programas para decirle a nuestra placa que haga prácticamente cualquier cosa que queramos.
Las sentencias se dividen por su manera de funcionar dentro del programa, pudiendo dividirlas en 3 grades grupos:
  • Estructurales: Nos dan la forma computacional del código y las operaciones lógicas a ejecutar. Con éstos son con los que le marcamos al programa qué camino debe seguir el código al ejecutarse y qué operaciones debe hacer. Algún ejemplo de las más usadas son if, for, while, +, -, =, *, /, ==, >, < …
  • Variables: Con éstas definiremos qué tipo y qué características tendrán los valores que vamos a usar en el código. Pueden ser números, caracteres o estados. Podemos encontrarnos aquí las sentencias int, float, HIGH, LOW, char, string, true, false…
  • Funciones: Nos permiten realizar una serie de operaciones concretas y volver a la zona del código en la que se ejecutó. Existen funciones que están propiamente definidas ya por Arduino como tales y también podemos crearnos nuestras propias funciones para que sean llamadas en las zonas de setup o loop cuando lo necesitemos. Son muy útiles cuando necesitamos realizar un grupo de acciones varias veces en distintas zonas del código. También es una buena forma de ahorrar líneas y de organizarse. Ejemplo de funciones tenemos pinMode, digitalWrite, delay, max, sin, cos, analogWrite…
Como explicar qué acción concreta realiza cada sentencia o función sería muy extenso, os dejamos este enlacepara que podáis consultarlos. Nosotros iremos comentando todos los que vayamos usando en nuestros ejemplos.
Otra cosa importante son las librerías. Son una serie de sentencias y funciones específicas de cada elemento o shield que conectemos a Arduino, que no están dentro de las propias de la IDE, y que realizarán acciones específicas de cada uno facilitándonos mucho la programación.
Por último nombraremos un par de pequeños detalles necesarios para poder programar nuestro código. Para que cada sentencia o función se ejecute debe llevar al final de cada orden el signo de puntuación punto y coma “ ; “ y al utilizar la doble barra “ // ” le decimos al código que lo que se escriba a la derecha es un comentario y que no debe ejecutarlo (Arduino lo coloreará en gris). Esto veréis que es muy útil para explicar que estamos haciendo en cada momento.

Compilación y carga.


Una vez que hayamos escrito nuestro código en la IDE Arduino procederemos a verificar que está correctamente escrito. Para ello pulsamos el botón   arriba a la izquierda. Arduino leerá el texto y nos dirá si es correcto o no. Para ello lo que hará será compilarlo, que significa traducir el código del lenguaje de programación a un lenguaje que entienda el microcontrolador directamente.
En el caso de contener un error nos aparecerá en la consola una explicación orientativa del error. (Ilustración 5)

Ilustración 3 Verificando el código



Ilustración 4 Código correcto



Ilustración 5 Error en el código. Falta un ";"


Si la compilación ha sido correcta, ya podremos cargar nuestro programa al Arduino. Para ello, con la placa conectada por USB, pulsamos el botón de carga   y esperamos a que termine.
Ilustración 6 Carga de programa terminada 

Ejemplo: Semáforo

Como primer proyecto, realizaremos un semáforo con unos Leds. Es ideal para iniciarnos en la programación y el montaje de circuitos porque, como veréis, es muy fácil.
Empezaremos nuestro primer proyecto describiendo los elementos que vamos a necesitar.

  • 1 x Arduino UNO R3
  • 1 x Protoboard
  • 1 x Led rojo 3mm
  • 1 x Led amarillo 3mm
  • 1 x Led verde 3mm
  • 3 x resistencias de 220Ω.
  • Cables para conectar todo.
Una vez que tenemos todo, hacemos nuestro montaje siguiendo el siguiente esquema.
Ilustración 7 Esquema de montaje del semáforo


Utilizaremos los pines digitales (rojo), (amarillo) y (verde). Al conectar los Leds debéis tener en cuenta que tienen polaridad, por lo que tenéis que colocarlos bien para que funcionen. En los Leds la patilla corta, o el lado que está achatado, es el negativo e irá conectado a tierra (GND en la placa) a través de una resistencia. La patilla larga, o lado redondeado, es el positivo y se conectará al pin del Arduino correspondiente.

Ilustración 8 Protoboard del proyecto semáforo
Una vez montado, abriremos nuestro IDE Arduino y escribiremos el programa (sketch).
/*************/
/*  SEMAFORO */
/*************/

/*** Fernando Martinez Mendoza ***/

//** Definiciones **//
int rojo=2;      //definimos el valor del pin para el led rojo
int amarillo=4;  //definimos el valor del pin para el led amarillo
int verde=7;     //definimos el valor del pin para el led verde

//** Programa **//

void setup() {
  pinMode(verde,OUTPUT);   //declaramos el pin verde como salida  
  pinMode(amarillo,OUTPUT);//declaramos el pin amarillo como salida
  pinMode(rojo,OUTPUT);    //declaramos el pin rojo como salida  
}

void loop() {
 digitalWrite(verde,HIGH); //encendemos el led rojo
 delay(2000);             //esperamos 2 segundos
 digitalWrite(verde,LOW);  //apagamos el led rojo
 delay(500);              //esperamos medio segundo
 
 digitalWrite(amarillo,HIGH); //encendemos el led amarillo
 delay(2000);                 //esperamos 2 segundos
 digitalWrite(amarillo,LOW);  //apagamos el led amarillo
 delay(500);                  //esperamos medio segundo
 
 digitalWrite(rojo,HIGH); //encendemos el led verde
 delay(2000);              //esperamos 2 segundos
 digitalWrite(rojo,LOW);  //apagamos el led verde
 delay(500);               //esperamos medio segundo
}

Con la sentencia int estamos declarando una variable numérica entera, para poderla usar después en nuestro código.
El comando delay hace que el programa pare un tiempo determinado. Éste lo definiremos, en milisegundos, dentro de los paréntesis.
Las funciones pinMode y digitalWrite se explicarán en el siguiente post, salidas, con detalle.

Espero que os hayáis divertido con este post y que comencéis a cogerle el gusanillo al mundo del Arduino.

Ejemplos del Sistema Arduino

Alarma para casa




Uno de los proyectos más abordables y de resultado llamativo es la construcción de una alarma para casa. Con ayuda de detectores de movimiento y muchas luces y sonido si queremos, podremos construir la nuestra propia, no muy válida para proteger la casa pero sí para estar alerta por si nuestra mascota decide invadir zona protegida de casa.

Sistema Arduino

¿Qué es Arduino?

Definir Arduino es complicado, muy complicado. Cuando hablamos de Android, por ejemplo, todos sabemos que se trata de un sistema operativo. Sin embargo, Android no es un único sistema operativo estático, cada fabricante lo implementa a su modo, e incluso la comunidad de desarrollo independiente ha puesto en Internet multitud de versiones del sistema operativo. Y hasta empresas como Nokia y Amazon utilizan Android sin siquiera mencionarlo.
Hardware para novatos (VII): Arduino ¿qué es y cómo funciona?
Servidor web constituido por varias placas Arduino.
Algo similar a lo descrito en el párrafo anterior ocurre con Arduino. Se trata de unmicrocontrolador, una placa, un pequeño sistema de procesamiento. Sin embargo, su condición de sistema libre ha propiciado tantas variaciones de lo mismo, que Arduino no es una pieza de hardware única, y de hecho podemos encontrar tantas configuraciones como desarrolladores dispuestos a hacer cambios en los esquemas puedan existir.
Pero claro, debemos cuando menos darle una razón de ser a Arduino. Para ello tenemos qué saber qué hace exactamente un microcontrolador. La respuesta, de nuevo, es que depende de la configuración. Así, encontraremos placas de Arduino capaces de dar vida a un teléfono móvil, un mando a distancia, consolas portátiles, y hasta cámaras fotograficas.
Para simplificar las cosas (y tomando alguna licencia), Arduino es el hardware libre y hardware libre el es Arduino.

¿Cómo funciona Arduino?

Como pasa con la mayoría de las placas microcontroladores las funciones de Arduino pueden resumirse en tres. En primera instancia, tenemos una interfaz de entrada, que puede estar directamente unida a los periféricos , o conectarse a ellos por puertos. El objetivo de esa interfaz de entrada es llevar la información al microcontrolador, la pieza encargada de procesar esos datos. El mentado microcontrolador varía dependiendo de las necesidades del proyecto en el que se desea usar la placa, y hay una buena variedad de fabricantes y versiones disponibles.
El reloj que dibuja la hora con rotulador
Por último, tenemos una interfaz de salida, que lleva la información procesada a los periféricos encargadas de hacer el uso final de esos datos, que en algunos casos puede bien tratarse de otra placa en la que se centralizará y procesara nuevamente la información, o sencillamente, por ejemplo, una pantalla o un altavoz encargada de mostrar la versión final de los datos.
De nuevo, Arduino es un sistema, y no una placa única. Por esto, el funcionamiento concreto dependerá del proyecto. Así, en un móvil hecho con Arduino tendremos varios microcontroladores, encargados de las conexiones de red, los datos necesarios para la entrada de números y mostrar información en pantalla, entre otras cosas. Así mismo, un reloj hecho con Arduino solamente haría falta un chip que cuantifique la hora y la muestre en una pantalla.
Como ya hemos dicho, Arduino es casi sinónimo de hardware libre, y con eso, estamos hablando de una de las plataformas más complejas y variables que podrían existir.

domingo, 14 de febrero de 2016

Sistema de Control de Luces por Bluetooth

Sistema de Control de Luces por Bluetooth

Automatizar la vivienda (conocido como Domótica External link) es el sueño de todos los aficionados a los microcontroladores. A pesar de toda la información que se puede encontrar en la internet, dar los primeros pasos puede ser difícil. En este artículo explicamos como construir un dispositivo que puede ser conectado a un electrodoméstico (lavaropas, televisor, lámparas, etc.) permitiendo el encendido/apagado remoto. Las aplicaciones del proyecto son interminables: encender/apagar las luces basándose en el nivel de luz ambiental, encendido justo-a-tiempo de la cafetera y mucho más.

La idea

En este artículo explico como puedes construir un dispositivo para controlador electrodomésticos usando tu pc, por ejemplo vía bluetooth. En el video enciendo y apago una lámpara. 


La construcción consta de tres partes importantes:
1. Un circuito eléctrico con relés  que controla el aparato conectado.
2. Un microcontrolador con módulo bluetooth.
3. Una computadora que pueda enviar comandos al microcontrolador vía bluetooth.

El circuito eléctrico

El primer paso es construir un circuito que permita interrumpir el suministro eléctrico. Lo más sencillo es utilizar un relé. Aquí he usado un relé de 12 V DC estándar. El relé se activa por medio de un transistor conectado a un pin del microcontrolador en la placa Dwengo (en este ejemplo RB4). La placa Dwengo, el transistor y el relé conforman el circuito de control (Control circuit en la figura). El circuito de control se alimenta con una fuente de 12 V DC.
También agregué un circuito de potencia (Power supply circuit en la figura), que convierte corriente 200 V AC (la linea del hogar) en los 12 V DC necesarios para el circuito de control. Este circuito de potencia consiste de un transformador, cuatro diodos formando un puente rectificador y un regulador de voltage (7812).
Para el circuito eléctrico usé los siguientes componentes:
  • Relé Omron 12 V DC
  • Transistor BC547
  • Transformador (230 V AC primario, 9 Vrms AC secundario)
  • Algunos diodos, capacitores (condensadores), resistencias y el regulador de voltage 7812
  • Una caja de plástico para la seguridad
  • Módulo Bluetooth
  • La placa Dwengo y la Dwengo breadboard

Ensamblado de los componentes

CUIDADO: trabajar con alto voltaje puede ser muy peligros!
No modifiques el circuito mientras esta conectado y mantiene el circuito asilado usando una caja de plástico. Ni el autor, ni Dwengo vzw no se harán responsables por heridas o lesiones.
Has un esfuerzo por soldar el circuito de una manera que se pueda distinguir claramente la zona de alto voltaje (220 V AC, que consiste del transformador y el relé), de la zona de bajo voltaje (12 V DC) que contiene regulador, el transistor y los cables conectados al microcontrolador. Asegúrate que los cables o las lineas de corriente en la zona de alto voltaje estén bien separadas para garantizar la aislación eléctrica. Mi caja domótica se muestra en la siguiente foto:
Conectar está caja con el microcontrolador es una tarea sencilla. El cable verde se conecta con el pin RB4 de la placa Dwengo. El cable rojo y el cable negro (que forman la alimentación de 12 V DC) se conectan, usando el adaptador correspondiente, a la alimentación de la placa Dwengo .

Programa y juega

Una vez que la caja domótica este conectada al microcontrolador puedes empezar a escribir el programa para controlar el electrodoméstico. Para ello, simplemente cambia el valor del pin RB4.
Una posibilidad es conectar el sensor de luz  para encender o apagar una luz basándose en la cantidad de luz ambiental medida en una ventana.
Otra posibilidad es la de conectar al microcontrolador con la computadora. La placa Dwengo se puede conectar fácilmente con cualquier computadora usando un cable serial , USB o un módulo bluetooth. Yo utilicé un módulo bluetooth que se puede conectar a os pines RS232 (RC6 y RC7) de la placa Dwengo y por lo tanto mi dispositivo se puede controlar remotamente.
Para enviar mensajes desde la PC (por bluetooth u otra conexión serial) se puede utilizar cualquier herramienta de comunicación (Tera Term Pro, gtkTerm, o Minicom) en cualquier sistema operativo. Con un poco de esfuerzo incluso puedes programar una aplicación Java utilizando la biblioteca RXTX . De esta manera podrías controlar toda la electrónica desde una aplicación Java.
Ahora puedes impresionar a tu familia y amigos con tu propio sistema de domótica.

Sistemas de control

Sistemas de control
Introducción
El hombre ha utilizado herramientas para satisfacer sus necesidades. Por ejemplo, descubrió, quizá por casualidad, cómo obtener fuego para proporcionarse calor y cocinar sus alimentos. Lo hizo frotando enérgicamente dos trozos de cierta piedra (pedernal).
La piedra era su herramienta. Hoy en día, se dispone de pequeños y económicos encendedores que permiten disponer inmediatamente de fuego. Si se los observa con atención, se verá que tienen una pequeña piedra, que cuando es rozada por la medita metálica que hacemos girar, desprende chispas que encienden el gas.
Precisamente, el material con que está hecha esa pequeña piedra es, en esencia, el mismo que utilizaban nuestros antepasados de las cavernas. En la actualidad lo encontramos, junto con un tanque de gas, una válvula que regula su salida, una entrada de oxígeno y hasta otra válvula de recarga formando parte de un sistema: el encendedor. Cada componente, por sí mismo, no puede proporcionar fuego, pero sí puede hacerlo el conjunto.
 Características y tipos de sistemas de control

Un encendedor, una bicicleta y un automóvil son sistemas que funcionan sólo si cuentan con todos sus componentes y éstos desarrollan sus funciones en forma simultánea.
Un sistema es un conjunto de elementos o dispositivos que interactúan para cumplir una función determinada. Se comportan en conjunto como una unidad y no como un montón de piezas sueltas.
El comportamiento de un sistema cambia apreciablemente cuando se modifica o reemplaza uno de sus componentes; también, si uno o varios de esos componentes no cum­plen la función para la cual fueron diseñados. Entonces, resulta necesario controlar cada ele­mento en forma independiente, o bien, el resultado final de todo el sistema.
Se puede controlar la batería de un auto, la presión de los neumáticos, la temperatura del agua de refrigeración o la presión de aceite: batería, neumáticos, agua de refrigeración y aceite son algunos de los componentes de un automóvil. Pero, además, es posible controlar la velocidad del auto, que es el resultado del funcionamiento del motor en su conjunto.

Consideremos, por ejemplo:
Una cocina como "sistema integral hogareño de cocción de alimentos".
¿Cómo hacemos para supervisar la temperatura del horno para cocinar una torta?
Primero, encendemos el horno, y luego, giramos la perilla que lo identifica. Con este accionar, se modifica la apertura de la válvula que regula la cantidad de gas que llega al quemador del horno, y de esta manera su temperatura final.
Esta operación permitirá accionar en for­ma manual el sistema de control de la tempe­ratura del horno. Lo haremos teniendo en cuenta nuestra experiencia anterior o las indicaciones de la receta que leímos en un libro, para que el resultado sea el esperado. Hemos controlado el proceso.
Ahora bien, a medida que el hombre y las, técnicas por él desarrolladas evolucionaron, las máquinas dejaron de ser herramientas que realizaban una sola operación para ejecutar varias de manera consecutiva y simultánea. Entonces, los procesos resultaron más Complejos, más costosos y de mayor duración. Por lo tanto, no fue posible controlar el sistema manualmente, sino que se hizo necesario el empleo de diversos mecanismos.
Por ejemplo:
Consideremos una pequeña planta embotelladora de vino. Hace algunos años, para que una máquina colocara el corcho a presión, una empleada debía sostener la botella ya llena en forma manual. Hoy en día, una máquina llena la botella vacía, la tapa y hasta le coloca la etiqueta en pocos segundos. Y, aun más, todo esto lo hace simultáneamente con varios envases. Es decir que, con el tiempo, se no se hacen más operacio­nes individuales, y se pasa a realizar procesos o conjuntos de operaciones vinculadas entre sí.
¿Qué hace que nuestra máquina embotelladora funcione adecuadamente, tome sólo una botella por vez, no pegue tres etiquetas en cada envase, o deje de funcionar si el líquido que envasa se ha terminado?

Pues de esto se ocupa el control automático de procesos.
La aplicación de sistemas de control a los artefactos electrodomésticos ha mejorado la vida de las personas. Por ejemplo, antes se usaban las planchas que funcionaban con carbón. Más tarde, las abuelas utilizaron pesadas planchas eléctricas, que tardaban mucho tiempo en calentar, y cuya temperatura resultaba muy difícil de regular. Hoy en día, las planchas son livianas y cómodas, regulan la temperatura según el tipo de tela, rocían la ropa con vapor, etcétera.
Pero los cambios tecnológicos incidieron sobre todo en la actividad industrial. Infinidad de tareas, realizadas hasta hace poco en forma manual, hoy se efectúan mecánicamente. Más aún, los controles automáticos se han generalizado por completo en el mundo de la industria. En consecuencia, las industrias requieren menos operarios "manuales" y más personal especializado, por ejemplo, técnicos electricistas, electrónicos e informáticos, capaces de montar, controlar, corregir y reparar los sistemas implementados. La capacitación técnica resulta, entonces, imprescindible para poder acceder a estos nuevos puestos de trabajo.

Tipos de control
El control de un sistema se efectúa mediante un conjunto de componentes mecánicos, hidráulicos, eléctricos y/o electrónicos que, interconectados, recogen información acerca del funcionamiento, comparan este funcionamiento con datos previos y, si es necesario, modifican el proceso para alcanzar el resultado deseado. Este conjunto de elementos constituye, por lo tanto, un sistema en sí mismo y se denomina sistema de control. Para estudiarlo, es necesario suponer que sus componentes forman conjuntos, que reciben una orden o entrada y producen una respuesta o salida. Estos conjuntos se representan gráficamente en forma de rectángulos o bloques vinculados por flechas, las cuales muestran las conexiones que existen entre aquéllos y los efectos que producen. La forma más simple para esquematizar un proceso de control es un bloque sobre el que incide una entrada y se genera una salida. Por ejemplo, para la regulación de la temperatura de un horno.
Sistemas de control manuales y automáticos

Los sistemas de control pueden ser manuales o automáticos.

Sistema Manual

Para obtener una respuesta del sistema, interviene el hombre sobre el elemento de control.
La acción del hombre es, entonces, la que actúa siempre sobre el sistema (cierra o abre, acciona un interruptor, aprieta el freno...), para producir cambios en el funcionamiento.

Encontramos sistemas de control manuales, por ejemplo, en:

El frenado de un auto.
El encendido y el apagado de las luces en una habitación.
La operación de la hornalla de gas de una cocina.
El control del agua de una canilla.
Etc.

Sistema Automático

El sistema da respuesta sin que nadie intervenga de manera directa sobre él, excepto en la introducción de condiciones iniciales o de consigna.
El sistema “opera por sí solo”, efectuando los cambios necesarios durante su funcionamiento. Así, se reemplaza el operador humano por dispositivos tecnológicos que operan sobre el sistema (relés, válvulas motorizadas, válvulas solenoides, actuadores, interruptores, motores, etc.).

Encontramos sistemas automáticos de control en, por ejemplo:

Heladeras.
Termotanques.
Alumbrado público.
Piloto automático de un avión.
Equipos de aire acondicionado.

Lazos de control

Ya consideramos una de las particularidades que presentan los sistemas de control, la que nos permitió diferenciarlos entre manuales y automáticos.
Los sistemas de control, además, pueden ser caracterizados por lo que se denomina lazos de control.

Por Ejemplo:

Supongamos que necesitamos hervir el agua fría que llena una cacerola, en una cocina a gas.

La primera posibilidad es que encendamos la hornalla de la cocina, regulemos la llama del fuego, coloquemos la cacerola sobre la hornalla y nos retiremos a realizar otras actividades. ¿Qué ocurre, entonces? El agua comienza a calentarse, aumentando su temperatura, hasta que comienza a hervir; cuando llega a la temperatura de ebullición y la llama de la hornalla sigue encendida y el agua, tal vez, se desborde de la cacerola, con el riesgo de que se puede apagar la llama de la hornalla y continuar saliendo gas–.

La segunda posibilidad es que encendamos la hornalla de gas, regulemos la llama del fuego, coloquemos la cacerola sobre la hornalla y permanezcamos frente a la cocina observando el agua de la cacerola. ¿Qué ocurre, en esta situación? El agua comienza a calentarse, aumentando su temperatura, hasta que comienza a hervir; cuando llega a este punto, actuamos sobre la llave de la hornalla disminuyendo, poco a poco, la llama del gas, hasta que –llegado el punto de ebullición del agua– cerramos totalmente el paso de gas, apagándose así, la llama  de la hornalla.

Podemos detectar que, en la primera situación, el hecho de que el agua esté hirviendo (salida del sistema) no tiene ninguna acción sobre la llama de la hornalla (entrada del sistema).
En cambio, en la segunda posibilidad observamos que, al iniciarse el proceso de ebullición (salida del sistema), la persona presente comienza a actuar sobre la llave de gas de la hornalla, disminuyendo la llama (entrada del sistema) hasta apagarla.
En el primer caso, estamos ante un sistema de control de lazo abierto; en la segundo, ante un sistema de control de lazo cerrado.