Instituto Tecnológico de Matamoros
Especialidad: Ing. ELECTROMECÁNICA Grupo “A”
Materia: INTRODUCCION A LA PROGRAMACIÓN
H. Matamoros, Tamaulipas.
03/diciembre/2012
ÍNDICE Pag.
Introducción………………………………………………………………………. 3 Introducción a la programación de puerto……………………………………..4 4.1 programación de puertos de una computadora…………………………..5 4.2 elaboración de interfaces……………………………………………………8 4.3 control de interfaces a través de una computadora……………………..12 Conclusión personal…………………………………………………………….. Bibliografía………………………………………………………………………..
INTRODUCCIÓN
En este documento se habla sobre el tema de programación de interfaz y va desde los significados de una interfaz hasta los tipos de interfaces que hay y la elaboración de la misma. También se habla de la programación de puertos de una computadora y explica para que sirven los puertos de la computadora, se da una definición de ellos, se dan los tipos de puertos que hay y su significado y ejemplos de cada de los dos tipos de puertos tanto físicos como lógicos
PROGRAMACIÓN DE INTERFACES Introducción a la programación de computadora
puertos de la
Los puertos de comunicación de la PC son de particular interés para el estudioso de la electrónica ya que le permiten utilizar una computadora personal para controlar todo tipo circuitos electrónicos utilizados, principalmente, en actividades de automatización de procesos, adquisición de datos, tareas repetitivas y otras actividades que demandan precisión. Existen dos métodos básicos para transmisión de datos en las computadoras modernas. En un esquema de transmisión de datos en serie un dispositivo envía datos a otro a razón de un bit a la vez a través de un cable. Por otro lado, en un esquema de transmisión de datos en paralelo un dispositivo envía datos a otro a una tasa de n número de bits a través de n número de cables a un tiempo. Sería fácil pensar que un sistema en paralelo es n veces más rápido que un sistema enserie, sin embargo esto no se cumple, básicamente el impedimento principal es el tipo de cable que se utiliza para interconectar los equipos.
Un típico sistema de comunicación en paralelo puede ser de una dirección (unidireccional) o de dos direcciones (bidireccional). El más simple mecanismo utilizado en un puerto paralelo de una PC es de tipo unidireccional y es el que analizaremos en primer lugar. Distinguimos dos elementos: la parte transmisora y la parte receptora. La parte transmisora coloca la información en las líneas de datos e informa a la parte receptora que la información está disponible; entonces la parte receptora lee la información en las líneas de datos e informa a la parte transmisora que ha tomado la información.
4.1 Programación de puertos de la computadora Definición de puertos de la computadora Un puerto en la computadora es por donde la información fluye hacia dentro o hacia fuera. Los dispositivos Hardware como la impresora o modem pueden ser llamados puertos, un puerto que manda información fuera de tu computadora puede ser el monitor o la impresora. Un puerto que recibe información seria el modem o un scanner. Se dividen en 2 tipos: a) Puertos físicos de la computadora: son conectores integrados en tarjetas de expansión ó en la tarjeta principal "Motherboard" de la computadora; diseñados con formas y características electrónicas especiales, utilizados para interconectar una gran gama de dispositivos externos con la computadora, es decir, los periféricos. Usualmente el conector hembra estará montado en la computadora y el conector macho estará integrado en los dispositivos ó cables. Varía la velocidad de transmisión de datos y la forma física del puerto acorde al estándar y al momento tecnológico. Anteriormente los puertos venían integrados exclusivamente en tarjetas de expansión denominadas tarjetas controladoras, posteriormente se integraron en la tarjeta principal "Motherboard" y tales controladoras perdieron competencia en el mercado, pero actualmente se siguen comercializando sobre todo para servidores. b) Puertos lógicos de la computadora: son puntos de acceso entre equipos para el uso de servicios y flujo de datos entre ellos, ejemplos el puerto 21 correspondiente al servicio FTP (permite el intercambio de archivos) ó el puerto 515 que está asociado con el servicio de impresión. Clasificación de los puertos para computadora (físicos) Los puertos generalmente tienen más de un uso en la computadora e inclusive en dispositivos que no se conectan directamente al equipo, por lo que no hay una clasificación estricta, sin embargo se pueden dividir en 7 segmentos básicos:
1)Puertos de uso general: son aquellos que se utilizan para conectar diversos dispositivos independientemente de sus funciones (impresoras, reproductores MP3, bocinas, pantallas LCD, ratones (Mouse), PDA, etc.) · Puerto eSATA · Puerto USB · Puerto FireWire ó IEEE1394 · Puerto SCSI · Puerto paralelo / LPTx · Puerto serial / COMx2) Puertos para impresoras: soportan solamente la conexión de impresoras y algunos Plotter. 3) Puertos para teclado y ratón: su diseño es exclusivo para la conexión de teclados y ratones (Mouse). · Puerto miniDIN - PS/2 · Puerto DIN - PS/1 4) Puertos para dispositivos de juegos: permiten la conexión de palancas, almohadillas y volantes de juego. · Puerto de juegos Gameport (DB15 5) Puertos de video permiten la transmisión de señales procedentes de la tarjeta de video hacia una pantalla ó proyector. : Puerto DisplayPort (transmite video, sonido y datos de manera simultánea) · Puerto HDMI (transmite video, sonido y datos de manera simultánea) · Puerto DVI · Puerto S-Video · Puerto VGA · Puerto RCA
· Puerto CGA· Puerto EGA 6) Puertos de red: permiten la interconexión de computadoras por medio de cables. · Puerto RJ45 (para red local LAN) · Puerto RJ11 (para red telefónica) · Puerto de red BNC · Puerto de red DB15 7) Puertos de sonido: permiten la conexión de sistemas de sonido como bocinas, amplificadores, etc. · Puerto Jack 3.5" Los puertos lógicos de la computadora Al conectar un equipo a la red, este forma parte de la misma, y con ello adquiere necesidades de comunicación con Switches, Servidores, otras computadoras, etc. por lo que se asigna un identificador electrónico denominado IP (Internet Protocol), que consiste en su versión IPv4, de 4 bloques de máximo 4 dígitos, como ejemplo 192.168.108.32, con lo cual se presenta e identifica con el equipo destino. En Internet debido a la gran cantidad de servicios que se ofrecen, es necesario diferenciarlos, por lo que se utilizan los denominados puertos (independientemente de los puertos físicos de la computadora). Estos son un tipo de puertos lógicos, son puntos de acceso entre los equipos que les permitirán ó no, transferir información entre sí. Se han contabilizado hasta 65,000 puertos para las conexiones, siendo algunos estratégicos para ciertas actividades e incluso críticos. Estos puertos pueden ser protegidos por medio de Software especializado en ello y también por medio de Firewall (Corta fuegos: que se encarga de filtrar la información que circula entre las redes).
4.2 Elaboración de interfaces ¿Qué es una interfaz? Cuando uno usa una herramienta, o accede e interactúa con un sistema, suele haber "algo" entre uno mismo y el objeto de interacción. Ese algo, que es a la vez un límite y un espacio común entre ambas partes, es la interfaz. En el caso de la Red, la interfaz no es sólo el programa que se ve en la pantalla. Desde el momento que el usuario teclea una URL, comienza a interactuar con el producto y por lo tanto, comienza su experiencia. Tipos de Interfaces El interface es de dos tipos que ellos son: Interface Paralelo Un interface paralelo transfiere datos en la forma de uno o varios bytes en la paralela a o del dispositivo. Asuma un ordenador 16 bites, direccionable por el byte, donde la entrada - salida controlada del programa es usada con asincrónico del ducto, y el cronometraje de transferencias de ducto es unos. El interface contiene memorias intermedias de datos separadas para insumo y producción y hay un registro de estado asociado con cada memoria intermedia. Para una operación de insumo, y la palabra de datos es transferida del dispositivo de producción a registros y puesta a 1. Cuando tan pronto como la señal lista es recibida, esto habilita las puertas de producción correspondiente al byte dirigido o palabra y colocación de sus contenido en las líneas de datos. También, la señal de producción aceptan también es puesto a 1. Este constituye la respuesta del interface a la petición leída emitida por la unidad central de proceso. Tan pronto como la señal lista se cae a 0, la señal aceptaré es borrada y todo el ducto es borrado. Note que cuando la memoria intermedia es dirigida, la bandera de estado de insumo es reinicializada a 0. Este es esencial a fin de garantizar que cada artículo de datos de insumo es leído por el ordenador sólo una vez. Una operación de producción procede del mismo modo, cuando la señal habilitaré es puesta a 1. El insumo de reloj a la memoria intermedia de
producción es puesto. Este resulta en la carga de la memoria intermedia con los datos en las líneas de datos. Al mismo tiempo, es puesto a 1 indicar que el interface está listo a aceptar una nueva transferencia de producción. Interface Consecutivo Un interface consecutivo transmite y recibe datos un bit a la vez. Un interface consecutivo contiene el mismo recorrido de control y dirección que el interface paralelo, pero con una adición controla para transferir datos en serie entre registros y el dispositivo de entrada - salida. Aquí, un chip es usado, que es un barco de circuito integrado que contiene todo el recorrido lógico para la conversión paralela y consecutiva requerida. Los dos registros y las banderas de estado son incluidos en el chip. Elaborar una interfaz: Como consecuencia del uso masivo de internet y de la gran cantidad de documentación disponible para desarrolladores, es posible encontrar en la actualidad una gran variedad de productos de software. El problema está en que gran parte de esas aplicaciones no cumple con el objetivo principal para el cual debieron ser diseñadas, que es facilitar la vida de sus usuarios, razón por la que muchas veces son descartadas y reemplazadas por otras aplicaciones. En la mayor parte de los casos esto no se debe a errores de codificación, sino más bien a la forma en que las diferentes funcionalidades del software son presentadas a su público, lo que de ahora en adelante conoceremos como "interfaz de usuario". Este elemento, considerado una métrica de la calidad de un software, influye directamente en la percepción final del producto y en la resistencia del usuario a probar la aplicación. ¡Un software podrá ser muy bueno y poderoso, pero no será popular si su interfaz es deficiente! Por eso, basado en mi experiencia como desarrollador y en diversas lecturas sobre el tema, compartiré los elementos que considero más importantes al momento de desarrollar una buena interfaz de usuario.
- Uso inmediato: nadie quiere perder el tiempo en aprender algo que no sabe si le servirá finalmente, por esta razón, el software debe presentar sus funcionalidades básicas de la forma más simple e intuitiva posible, debiendo quedar operativo desde el primer momento. Si existe un set de acciones o funciones avanzadas, es ideal que no interfieran con el uso básico del programa y que sólo sirvan como mejoras para cuando el usuario esté en condiciones de utilizarlas. - Diseño minimalista: entre más elementos existan en la pantalla, más confundido y temeroso se encontrará el usuario. Por eso es importante reducir al máximo el número de componentes visibles, siendo muchas veces recomendada la utilización de asistentes o "wizards", los cuales permiten dividir una gran pantalla de datos en una serie de pasos lógicos, ordenados y sencillos de seguir. El uso de asistentes, al estar compuestos por varias pantallas, permite además mejorar el orden y disposición de los componentes. - Distinción clara de los elementos: siempre que se incorpore un componente a la pantalla del usuario, el diseñador deberá preocuparse que este sea diferenciable del resto y de que su funcionalidad esté claramente expresada. Para ello, el mejor recurso es la utilización de imágenes, las cuales se recomienda sean únicas para cada componente o agrupación de los mismos, y semejantes a objetos de la vida real, de forma de hacer la aplicación más intuitiva. - Atención a las glosas o textos: cada vez que se necesite colocar un texto en pantalla, ya sea para reforzar el concepto de un componente o para entregar una instrucción o advertencia, este deberá ser cuidadosamente escrito, procurando utilizar siempre el mismo tamaño, color y fuente de letra, dejando fuera el uso de "negrita" , "cursiva" o cualquier otro elemento que sobrecargue la pantalla más de lo necesario. Aunque suene obvio, los textos deberán ser siempre lo más concisos y claros posibles, intentando idealmente localizarlos de acuerdo a la región geográfica donde vayan a ser utilizados. - Minimizar el uso del teclado y de comandos especiales: no hay aplicación más confusa y difícil de usar que una pensada para "ingenieros". Muchos software caen en el error de incorporar comandos especiales para realizar acciones de programa, pensando que un usuario experto ganará tiempo evitando el uso del
mouse. Esto es un error, puesto que son pocos los usuarios que destinan tiempo a leer la documentación de un programa antes de comentar a utilizarlo (mucho menos podrán conocer y memorizar sus comandos de uso); además el uso de comandos aumenta la posibilidad de realizar acciones involuntarias, lo cual puede llegar a ser atemorizante para los usuarios. Una aplicación amigable es aquella que muestra todas las posibles acciones en pantalla; el teclado deberá utilizarse sólo cuando sea imprescindible, como en el llenado de formularios u otras acciones similares. - Evitar diálogos innecesarios: existen aplicaciones que ante una acción reiterativa muestran un cuadro de diálogo con un mensaje de éxito. Esto puede resultar extremadamente molesto para un usuario que ya conoce las consecuencias de su acción. Por eso se recomienda el uso de cuadros de diálogo sólo para advertencias o sugerencias críticas (relacionadas a acciones no reversibles). - Prevención de errores: un usuario aprenderá más rápido a utilizar y confiar en una aplicación si sabe que no cometerá errores en su uso o si sabe que estos pueden ser revertidos rápidamente. Para esto el diseñador debe saber acotar las posibilidades de acción del usuario, quitando la mayor cantidad de objetos de error posibles; además debe cuidar que cada acción crítica del programa pueda ser revertida en caso de ser requerido. - Flexibilidad ante todo: no se debe confundir el control con la falta de flexibilidad. Si un usuario, por ejemplo, desea no incorporar una imagen en una tarjeta de presentación utilizando un formato que si la requiere, el software a lo más debería advertir sobre la falta de la foto, pero no prohibirle que termine el proceso de elaboración de su tarjeta. Un desarrollador nunca sabrá los alcances finales y usos definitivos de su software hasta que sea utilizado por sus usuarios, por lo que es mejor enfocar los esfuerzos en mejorar la robustez del software antes que caer en un control excesivo.
- Manejo de preferencias de usuario: con la tecnología de hoy no es difícil incorporar mecanismos de almacenamiento personalizado de preferencias para los usuarios. Recordar elementos tan sencillos como la configuración del idioma o la aparición de ciertos cuadros de diálogo facilitan enormemente el trabajo de quienes utilizan una aplicación. En resumen una buena interfaz: - Disminuye la resistencia natural del usuario a utilizar la aplicación. - Reduce los tiempos de aprendizaje. - Reduce los errores de uso. - Mejora la percepción pública del software. - Mejora la calidad de vida de los usuarios (facilita su labor). 4.3 control de interfaz a través de computadora Un sistema de control debe estar equipado para la alteración de una o varias magnitudes de un sistema real con objeto de proporcionar una respuesta activa que modifique su comportamiento. Como ejemplo complejo de un sistema de control se puede pensar en un "edificio inteligente", que comprueba y analiza permanentemente el estado de la temperatura, la iluminación, etc., gracias a diferentes sensores. Mediante un ordenador es capaz de actuar de acuerdo con su programación sobre diversos dispositivos actuadores para regular las condiciones de las estancias y mantenerlas en los niveles deseados. Así pues, un sistema de control comprende, en general, los sistemas y dispositivos adelantados en el tema 1.2 y que se esquematizan en la siguiente figura:
El primer elemento es el sensor o captador. Es un sistema que transfiere energía del sistema controlado (denominado normalmente planta), transformando la magnitud física que se mide (temperatura, presión, posición, ...) en energía eléctrica (voltaje, corriente). Las resistencias dependientes de la temperatura, los fototransistores, los detectores de presión son sensores habituales. El sensor suele estar conectado a un circuito que genera una señal eléctrica de salida. Esta señal tiene frecuentemente características inadecuadas para su uso directo (baja intensidad, excesivo ruido, etc.), de modo que se debe recurrir a la utilización de un acondicionador de señal, cuya misión es adecuarla a las características de las etapas sucesivas y/o mejorar su calidad. Puesto que la mayoría de los sensores proporcionan señales analógicas, éstas necesitan ser convertidas en digitales para su posterior procesado. Esta función la desempeña un convertidor analógico-digital (A/D). Los datos digitales se utilizan en el procesador digital para que sean procesados de acuerdo con su programación. La señal digital ya procesada debe ser aplicada en el sistema real (planta), de modo que se necesita su reconversión en analógica, función que cumple el convertidor digitalanalógico (D/A). A su salida, otro acondicionador la adecua a las necesidades específicas del elemento actuador que, utilizando energía eléctrica, neumática o hidráulica realiza alguna acción modificadora de las propiedades del sistema. Motores, electroválvulas, y lámparas son actuadores utilizados habitualmente. Así pues, si queremos aprovechar un PC como cerebro de un sistema de control necesitamos acondicionar y convertir las señales que provienen de los sensores a las características de los puertos de entrada del PC, así como convertir y
acondicionar las señales de los puertos de salida de éste a las características de los dispositivos actuadores. En entornos educativos y de ocio se utilizan unos dispositivos denominados interfaces de control, o más prosaicamente controladoras, cuya misión es precisamente reunir en un solo elemento todos los sistemas de conversión y acondicionamiento que necesita un PC para actuar como cerebro de un sistema de control:
Las interfaces de control se podrían así definir como placas multifunción de E/S (entrada/salida) en configuración externa (es decir, no son placas instalables en ninguna bahía de expansión del PC), que se conectan con el PC mediante alguno de los puertos de comunicaciones propios del mismo (paralelo, serie o USB, generalmente) y sirven de interfaz entre el mismo y los sensores y actuadores de un sistema de control. Las interfaces proporcionan, de forma general, una o varias de las siguientes funciones:
1. entradas analógicas, que convierten niveles analógicos de voltaje o de corriente en información digital procesable por el ordenador. A este tipo de entradas se pueden conectar distintos sensores analógicos, como por ejemplo una LDR. 2. salidas analógicas, que convierten la información digital en corriente o voltaje analógicos de forma que el ordenador pueda controlar sucesos del "mundo real". Su principal misión es la de excitar distintos actuadores del equipamiento de control: válvulas, motores, servomecanismos, etc. 3. entradas y salidas digitales, usadas en aplicaciones donde el sistema de control sólo necesita discriminar el estado de una magnitud digital (por ejemplo, un sensor de contacto) y decidir la actuación o no de un elemento
en un determinado proceso, pro ejemplo, la activación/desactivación de una electroválvula. 4. recuento y temporización, algunas tarjetas incluyen este tipo de circuitos que resultan útiles en el recuento de sucesos, la medida de frecuencia y amplitud de pulsos, la generación de señales y pulsos de onda cuadrada, y para la captación de señales en el momento preciso.
Conclusión personal:
Las interfaces son muy útiles ya que nos permiten conectar una cosa con otra, como los puertos, son como una interfaz ya que nos permite conectar una memoria a una computadora para guardar y ver archivos guardados previamente, de echo una interfaz es solo algo que conecta una cosa con la otra, es algo sencillo y complicado por que es muy difícil conectar una cosa con otra muy diferente.
BIBLIOGRAFIA:
http://www.informaticamoderna.com/Los_puertos.htm http://platea.pntic. mec.es/vgonzale/cyr_0708/archivos/_15/Tema_2.1.htm http://es.scribd.com/doc/23831784/Programacion-de-puertos http://foros.hispavista.com/diseno_web/394/42482/m/-que-es-una-interfaz-/