Etapa de Control electrónico.
Hasta ahora hemos visto algunos conceptos fundamentales sobre los principales componentes que operan en un circuito electrico, el comportamiento de los componentes pasivos (resistencias, capacitores e inductores) y nos introducimos a los semiconductores abordando algunos temas sobre Diodos y transistores acentuandonos en el transistor BJT.
No he elegido estos temas a azar sino que he seleccionado de entre un mar de información el contenido que pueda ser de fácil comprensión y útil para ayudarnos a diseñar circuitos que aporten aplicaciones prácticas.
Antes de abordar el siguiente tema se hace necesario recordar el pequeño diagrama de bloques que planteamos en nuestro artículo Sistemas electrónicos.
Se podría decir que lo visto hasta ahora es suficiente para cubrir el bloque "sensor", solo habría que hacer un circuito de adaptación para que un transistor funcione como un transductor (componente que transforma una variable fisica en otra, electrónica en nuestro caso), recordemos que un BJT o cualquier otro tipo de transistor responderá a una señal que llegue a su base (o equivalente a la base para otros tipos de transistores), por eso es posible adaptarlo para actuar como sensor.
El blo
.que controlador siempre tiende a ser la etapa más compleja del sistema ya que existen varios modelos de control que van desde lógicas combinacionales hasta dispositivos programables, sin embargo vamos intentar describirlos a todos basandones en las operaciones comunes que tendrán todos los controladores:
Leer datos de entrada (que generalmente provienen de los sensores)
Evaluar si se cumplen o no las condiciones para tomar acciones.
Escribir datos a la salida (esto es, tomar las decisiones de envíar o no las señales de activación al bloque actuador según se cumplan o no las condiciones establecidas para el diseño)
Se hace necesario también recordar que existen dos tipos de control, a saber, manual y auntomático:
Control Manual: En este caso considero que el controlador es el ser humano ya que es quien evalua las condiciones y toma las decisiones que pueden modificar las variables. Por ejemplo, usted escuchando música en su reproductor, los sensores leeran el medio que contiene la información (música en este caso) y se los presentan a usted para que decida qué reproducir y con qué nivel de volúmen, usted reproduce y puede elegir cambiar el volumen al nivel deseado, en este caso es una acción de control leída por su dispositivo y ejecutada.
Control Automático: Es cuando las operaciones se ejecutan sin intervención de un ser humano, el sistema es programado para leer las entradas y escribir las salidas basado en una serie de condiciones, el ejemplo de la fotocelda planteado en el artículo Conmutación Electrónica nos da una ilustración sencilla respecto a esto.
Tambíen es posible un tipo de control en el que exista intervención tanto del humano como del sistema en sí, de hecho, con los nuevos avances en Inteligencia Artíficial, se están implementando sistemas en los que la IA tiene responsabilidad incluso autónoma sobre algunas acciones y otras son solo posibles de realizar por un operador humano.
Programación y lenguajes de programación.
Anteriormente consideramos los voltajes en la base de un transistor como 1 lógico si la señal esta presente y 0 para cuando está ausente, fue hecho de esa forma con toda la intención para introducirnos a lo que se conoce como "lenguaje máquina"
Si queremos suponer que las máquinas hablan o presentan alguna forma de comunicación debemos suponer también que lo hacen en un lenguaje, aunque interactuamos con aparatos electrónicos en nuestro lenguaje nativo las máquinas realmente no entienden nuestro lenguaje.
Un aparato cualquiera que sea (salvo los cuanticos) solo puede entender (leer) dos cosas: Está presente la electricidad, no está presente la electricidad.
De la misma forma solo puede decir (escribir) dos cosas: Estoy activado, no estoy activado.
Estas dos verdades son interpretadas como 1 lógico o Verdadero (true) para el caso en que está presente el nivel de voltaje correcto y el dispositivo esta actovado y como 0 lógico o Falso (false) cuando el nivel de voltaje es 0 y el dispositivo no está activado.
A partir de aquí es importante saber que 1 no representa que hay 1 Voltio presente sino el voltaje necesario para activar, y 0 no esta el voltaje necesario para activar.
Supongamos un transistor conmutador que requiera 12VDC en su base para conmutar, si introducimos por ejemplo 9VDC existirá un voltaje de base pero no es lo suficientemente alto para activar la salida así que es considerado como un 0 en términos de "lenguaje máquina" solo 12VDC sería considerado como 1 para este caso donde 0 para este caso representa No existe la señal de activación y 1 representa que estan presentes los 12VDC necesarios para activar.
Parece un lenguaje fácil de manejar, un lenguaje que solo tiene dos palabras: Si y No.
Pero en la práctica esto no es cierto, el resto de palabras se forman combinando estós ceros y unos en lo que es el conjunto de los números binarios, así, cuando leemos una sola palabra en nuestro lenguaje nativo la máquina seguro tuvo que usar de muchos ceros y unos para formar cada caracter que a su vez dio forma a la palabra en nuestro idioma.
Entonces ¿Qué es un lenguaje de programación y por qué hay tantos?
Supongamos que usted viaja a un país del cual desconoce totalmente el idioma nativo, al llegar no se puede comunicar con ningún local porque no se entienden mutuamente, por convención usted puede elegir hablar con alguien en Inglés ya que es un idioma que se ha acordado como universal para este tipo de casos, entonces encuentra una persona que también entiende el inglés y éste acepta ser su traductor para que usted pueda comunicarse con cualquiera en ese país.
En nuestro caso el lenguaje de programación es como ese traductor que puede manejar un lenguaje específico que usted puede entender y el lenguaje máquina (sí, el de ceros y uno).
Este traductor (lenguaje de programación) está dotados con "librerías" que han sido cargadas en él para brindarle al programador un conjunto de "instrucciones" mediante las cuales el pueda plasmar todos los criterios, condiciones y decisiones de control que desee en un código fácil de entender para él, de esta forma reduce mucho el tiempo y la complejidad que sería escribir el mismo mensaje en código binario.
Dado que somos seres pensantes y casualmente no todos pensamos exactamente igual, a algunos les ha parecido crear una forma y a otros mejorarla o crear otra forma de hacerlo, de ahí que existan muchos lenguajes de programación pero al final todos harán lo mismo, convertir el código escrito en un código basado en ceros y unos que la máquina pueda entender.
Gracias por haber leído una vez más.
Quedo atento a los comentarios
Lecturas recomendadas
- Albert Paul Malvino, Principios de electrónica, Sexta edición.
- Robert L. Boylestad, Electrónica: Teoría de Circuitos.
- Timothy J. Maloney, Electrónica Industrial, dispositivos y sistemas.
Thanks for your contribution to the STEMsocial community. Feel free to join us on discord to get to know the rest of us!
Please consider delegating to the @stemsocial account (85% of the curation rewards are returned).
Thanks for including @stemsocial as a beneficiary, which gives you stronger support.
Muchas gracis por el apoyo!!
Congratulations @electronico! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s):
Your next target is to reach 2500 upvotes.
You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOP
Support the HiveBuzz project. Vote for our proposal!
Al ritmo que estan dandose las cosas creo que voy a alcanzar muchas metas pronto, ando emocionado señor cybor.!
De nada @electronico 😊👍 ¡Le deseamos un buen día!