Unidad de Medida Inercial. Algoritmo de Estimación e Implementación Software Software de bajo nivel
|
|
- Felipe Acosta Araya
- hace 6 años
- Vistas:
Transcripción
1 Capítulo 4. Conceptualmente, se dividirá el software desarrollado en dos niveles de abstracción. Se llamará software de bajo nivel a aquél cuyo fin es conseguir el correcto funcionamiento de todos los dispositivos hardware implicados, así como las interfaces de comunicación usadas, de forma que ofrezca una base operativa sobre la que montar el programa desarrollado para implementar el algoritmo de estimación deseado. Este programa constituirá el software de alto nivel, haciendo uso de los recursos que aporta el software de bajo nivel. En primer lugar se describe el entorno de desarrollo que ha permitido desarrollar este software, y a continuación se describe el propio software, y su distribución en la memoria del DSP de la placa base Entorno de desarrollo Para depurar el diseño tanto hardware como software de la futura IMU, se construyó una primera placa de desarrollo para el DSP. Tras varias rectificaciones, se obtuvo la placa sobre la que poder desarrollar un software, y que sería una versión algo más grande y casera que la definitiva. Llamaremos a esta placa a partir de ahora placa de desarrollo, y forma parte del entorno de desarrollo que se describe a continuación. La construcción de esta placa se hizo bajo la premisa de que se comportara como la placa de desarrollo comercial que existe en el laboratorio. Esta placa se encuentra en el controlador del vehículo autónomo ROMEO-4R, e incluye un DSP de características parecidas al de nuestra IMU, el TMS320LF2407. Es decir, la idea era aprovechar las herramientas de programación disponibles para esta placa. 57
2 Ilustración 4-1. Placa de desarrollo La placa de desarrollo creada posee una conexión para el puerto JTAG del DSP. En este puerto se conecta el emulador XDS510PP, de Spectrum Digital, que ofrece una conexión vía puerto paralelo con un PC. El software usado en el PC para desarrollar el software del DSP es el paquete de Texas Instruments Code Composer Studio. Este programa permite escribir el código en lenguaje C y cargarlo en la memoria del DSP. Los pasos en este proceso de programación son estos: - Escritura del código en lenguaje C o en ensamblador. En nuestro caso, prácticamente todo el programa está escrito en C. - Compilación del código. El código escrito en C es automáticamente traducido al ensamblador del DSP gracias a la librería rts2xx.lib. - Lincado. El lincador enlaza los distintos módulos del programa y genera el fichero.out con el programa en código máquina listo para cargar en la memoria del DSP. - Carga en memoria. El programa se carga en la memoria del DSP. El programa está dividido en distintas secciones, algunas de ellas se graban en la memoria flash del dispositivo, y otras se cargan en RAM. Además del emulador conectado al puerto paralelo del PC, el puerto serie del mismo también se puede usar para establecer una comunicación con el DSP. Usando un adaptador basado en el chip MAX232, conectamos el puerto serie de la placa de desarrollo con el puerto serie RS232 del PC. Usando el programa HyperTerminal, 58
3 que incluye el propio Windows, se pudo establecer una interfaz interactiva en la que el DSP respondiera a diversos comandos introducidos con el teclado del ordenador. Aparte de la placa de desarrollo anteriormente mencionada, se construyeron otras dos placas, de cara a poder probar el software desarrollado, así como la viabilidad del diseño hardware realizado. Una de estas placas de prueba consiste en una versión reducida de la placa de sensores. En ella se incluyen un acelerómetro, un conversor analógico-digital, y un conector para el compás magnético, además de un conector para poder comunicarla con la placa de desarrollo. Ilustración 4-2. Placa de prueba de sensores Con la otra placa se consiguió, tras varios intentos fallidos, crear una interfaz de adaptación de niveles lógicos para la interconexión de señales digitales de distinta naturaleza: las de 5 voltios y las de 3.3 voltios. En la siguiente imagen se puede apreciar la placa de desarrollo conectada a la placa de prueba de sensores, a través de esta placa de traducción de niveles de tensión. Se puede ver también la placa base conectada al emulador a través del puerto JTAG, y al puerto serie del ordenador, usando la placa de conversión TTL RS
4 Ilustración 4-3. Entorno de desarrollo Ilustración 4-4. Detalle del hardware de desarrollo conectado al PC 4.2. Memoria A continuación se detalla el mapa de memoria del TMS320LF2406A. La memoria disponible se encuentra dividida en varias secciones: 60
5 - Memoria Flash: Desde la dirección 0x0000 hasta la dirección 0x7FFF de la memoria de programa. Se divide a su vez en cuatro bloques. - Memoria RAM: Consta de cuatro bloques: o Bloque B0: de tipo DARAM (dual-access-ram), de 256 palabras de 16 bits. Este bloque se puede mapear tanto en memoria de programa como en memoria de datos. o Bloque B1: de tipo DARAM, de 256 palabras en memoria de datos. o Bloque B2: 32 palabras de tipo DARAM. o Bloque SARAM: 2Kwords (2048 palabras de 16 bits) de memoria single-access-ram. Se encuentra mapeada en el espacio de memoria de programa o en el de memoria de datos, según el valor de un bit de un determinado registro del DSP. 61
6 Ilustración 4-5. Mapa de memoria del TMS320LF2406A Toda esta información de memoria hay que tenerla en cuenta a la hora de programar el DSP. Se debe ser consciente del tamaño disponible tanto para programa como para datos, y ajustar el código a estas condiciones. Para que todo esto encaje, el programa Code Composer Studio permite definir un fichero con las especificaciones de memoria. En él se definen las distintas áreas de memoria física de las que se disponen, y la distribución de las distintas secciones 62
7 de código en ellas. Para el DSP de la IMU se creó un fichero de este tipo con el siguiente contenido: /****************************************************************************/ /* LINKER COMMAND FILE - MEMORY SPECIFICATION for C240/243 */ /* */ /****************************************************************************/ MEMORY { } PAGE 0 : VECS : origin = 0h, length = 044h /* FLASH */ PROG : origin = 44h, length = 7fbch /* FLASH */ PAGE 1 : B2 : origin = 0060h, length = 020h /* DARAM */ B0 : origin = 0200h, length = 0100h /* DARAM */ B1 : origin = 0300h, length = 0100h /* DARAM */ SARAM : origin = 0800h, length = 0800h /* SARAM */ /* */ /* SECTIONS ALLOCATION */ /* */ SECTIONS { vectors : { } > VECS PAGE 0 /* INTERRUPT VECTOR TABLE */.text : { } > PROG PAGE 0 /* User's code */.bss : PAGE 1.cinit : { } > PROG PAGE 0.stack : { } > B0 PAGE 1.const : load = PROG PAGE 0, run = SARAM PAGE 1 { const_run =.; *(.c_mark) *(.const) const_length =.- const_run; } } Ilustración 4-6. Fichero de especificación de secciones de memoria En la memoria se definen dos páginas, la de programa y la de datos. Dentro de cada una de ellas se definen los distintos bloques de memoria disponibles. La sección que contiene los vectores de interrupción se mapea a partir de la dirección 0x0000, tal como le corresponde según el mapa de memoria. La sección.text contiene el código ejecutable y se sitúa en memoria no volátil dentro de la memoria de programa. La sección.bss reserva el espacio necesario para las variables, y se sitúa en memoria de datos RAM. La sección.cinit contiene tablas para la inicialización de variables y constantes. La sección.stack es la pila del programa, y se mapea en el bloque B0. La sección.const contiene constantes, y la inicialización de variables de tipo global o static. Esta sección se carga en memoria 63
8 no volátil, pero a la hora de iniciarse el sistema, se copia a RAM para que sea utilizada desde allí Programa bajo nivel Para que el sistema funcione correctamente y sea capaz de ejecutar el algoritmo deseado, así como hacer uso de los periféricos correspondientes de forma conveniente, es necesario disponer de rutinas software tanto de inicialización como de configuración del sistema, así como drivers que nos permitan utilizar los periféricos. La primera rutina en ser ejecutada es la de inicialización. En esta rutina se asignan los valores adecuados a los registros de configuración del sistema. Con esto se consigue habilitar los periféricos deseados, ajustar el reloj del sistema a 40 MHz y mapear la SARAM en la memoria de datos. También se anula el watchdog timer, para que no se resetee el DSP. Desde esta rutina también se llama a las rutinas de inicialización de los distintos periféricos utilizados, para que queden ya configurados. Al principio de la rutina de inicialización se enmascaran todas las interrupciones, y al finalizar dicha rutina se activan las interrupciones que se van a utilizar, de forma que el sistema queda listo para empezar su trabajo. La sección que se carga a partir de la primera dirección de memoria es la tabla de vectores de interrupción. Esta tabla está escrita directamente en ensamblador: cada instrucción es un salto incondicional a la dirección de memoria donde está definida la rutina de servicio de la interrupción correspondiente. El primer vector de interrupción es el de reset, y manda el contador de programa al objeto _c_int0, que se corresponde con el lugar en donde empieza el programa en C, es decir, la función main. Los seis vectores siguientes corresponden a las interrupciones hardware en sus seis niveles de prioridad, y todos apuntan a la misma rutina, la rutina de servicio primaria (gisr). Será en esta rutina de servicio primaria donde se distinga cuál ha sido la interrupción que ha saltado. La rutina de atención primaria consiste en una estructura selectiva tipo switch, en la que se llama a la función adecuada en función del vector PIVR, que contiene un código con la interrupción que ha sido atendida. En cuanto a los drivers, el programa dispone de drivers para la lectura de PWM, para la gestión del puerto SPI y para la lectura y escritura en el puerto SCI. El driver del SPI está configurado para hacer posible la comunicación con el conversor analógico-digital. En esta interfaz, el DSP, que actúa de maestro, pone el 64
9 reloj para el sincronismo en los datos, y se establece un protocolo en la comunicación. En primer lugar el DSP activa la salida de propósito general que corresponde al chip select del conversor de la placa correspondiente. A continuación manda un byte de control en el que se especifica el canal del que se quiere leer. El conversor contesta con otros dos bytes en los que incluye la palabra con el dato requerido. Por último, el DSP desactiva el chip select. Todo este procedimiento lo realiza el driver del SPI cuando se llama a la función de escritura-lectura por el puerto SPI. Esta comunicación es bastante rápida, puesto que el reloj se configura a 2.35 MHz, pero habrá que realizarla para la lectura de cada uno de los canales de cada uno de los conversores de las placas de sensores. Nótese que para esta comunicación no se requiere el uso de interrupciones, sino que se produce cuando se pide desde el programa principal. Para la lectura del PWM se hace uso del periférico Event Manager, que controla el uso de las entradas capturadotas de eventos. Tres de estas entradas se usan para leer la señal de PWM de las tres placas de sensores. Para este driver se hace uso de uno de los temporizadores del DSP, el Timer 3. El funcionamiento de este driver se basa en contar el tiempo transcurrido entre flanco de subida y de bajada en la señal PWM. El dato que se quiere obtener es proporcional al este tiempo. Cada vez que se detecta un flanco en la señal se genera una interrupción, y es en la rutina de atención a esta interrupción donde se realiza el cálculo. De esta forma se va actualizando el valor de la medida en una variable global, a la que el programa principal podrá acceder en cualquier momento. El puerto serie SCI se configura para la transmisión a 9600 baudios, con palabras de 8 bits y sin paridad. Se genera una interrupción cuando se recibe un dato, e inmediatamente se contesta con n bytes, en función del dato recibido. Éste es el procedimiento que se establece para pedir información a la IMU. Cuando se quiera saber, por ejemplo, los ángulos RPY, se enviará a la IMU el byte de control correspondiente, y la IMU contestará con los correspondientes bytes de datos. Todo lo explicado hasta ahora hace alusión a rutinas de configuración e inicialización del sistema, así como a funciones que responden a interrupciones o a una llamada software. Pero, una vez realizada la inicialización, cómo se estructura el código correspondiente al algoritmo principal de forma que se ejecute en tiempo real? Para solucionar esto se ha utilizado parte del software desarrollado para el control a bajo nivel del ROMEO-4R. Para él había sido desarrollado un planificador que utiliza uno de los timers del DSP para repartir en el tiempo las distintas tareas atendiendo a la prioridad de las mismas y a la cadencia deseada en la ejecución de cada una de ellas. Se ha adaptado este código a nuestro sistema, de forma que se puede definir el algoritmo de estimación de la orientación como una tarea cíclica que 65
10 el planificador se encarga de ejecutar cada 20 ms. El planificador permite añadir otras tareas, como las lecturas de los sensores, de forma que se ejecuten con la frecuencia deseada. La estructura global del programa de bajo nivel se divide en varios módulos, de la siguiente forma: - main.c: módulo que contiene la función main, en la que se comenzará la ejecución tras un reset del sistema. - inicia.c: contiene la rutina de inicialización, que es la primera a la que se llama desde la función main. - rut_int.c: aquí se encuentra la rutina de servicio maestra, desde la que se llama a las distintas rutinas de atención a interrupciones. También se encuentran en este módulo las rutinas de atención a las interrupciones de los temporizadores 1 y 3, y de la recepción de datos por el puerto serie SCI. - vectores.asm: el único módulo que está escrito en ensamblador. Contiene la tabla de vectores de interrupción. - scheduler.c: contiene las rutinas necesarias para el funcionamiento del planificador. - sci.c: driver del SCI. En este módulo se encuentra la rutina de inicialización del puerto SCI, así como la función para enviar datos por dicho puerto. Esta función es llamada tras la recepción de un comando válido por el puerto SCI, con la consecuente activación de la interrupción por recepción, para enviar los datos solicitados. - spi.c: el driver del puerto serie síncrono SPI está desarrollado únicamente para la comunicación del DSP con el conversor A/D. Aquí se incluyen la rutina de inicialización del puerto y la función que implementa la comunicación con el conversor A/D, que incluye tanto la escritura como la lectura por este puerto. - pwm.c: este módulo contiene la rutina de inicialización del driver de lectura de PWM y las rutinas de atención a las interrupciones generadas por las tres entradas de PWM. En ellas se calcula el ancho del pulso recibido y se escala convenientemente para que tome el sentido físico deseado. - trat_dat.c: todo el tratamiento de datos necesario para obtener los cuaterniones o ángulos RPY en función del vector de estado actual se incluye 66
11 en este módulo. También forman parte de él las funciones necesarias para transformar las medidas angulares de los compases magnéticos en componentes del vector magnético, así como las transformaciones necesarias en los datos obtenidos de las lecturas de los sensores. - tarea_lectura.c: Aquí se encuentra una de las funciones que serán tareas gestionadas por el planificador. Ésta se encargará de actualizar las medidas de los sensores. - tarea_algoritmo.c: El filtro de Kalman que va actualizando el vector de estado será otra de estas tareas. Las funciones que usa el algoritmo de estimación están aquí contenidas. También se incluyen varios módulos en ensamblador, que realizan funciones matemáticas como el seno, el coseno, la inversa y la raíz cuadrada. Aparte de estos ficheros, el proyecto de Code Composer contiene también los ficheros de cabecera.h con los prototipos de las funciones, y el fichero Mimapa_flash.cmd, que contiene la información necesaria para situar el programa en la memoria del DSP, y que se comentó en el apartado anterior. 67
12 68
Qué es un programa informático?
Qué es un programa informático? Un programa informático es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo sólo es capaz de procesar elementos binarios, es decir, una serie de 0s
Más detallesSistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
Más detallesUSB232. Hoja de datos
- 1 - USB232 Hoja de datos 9600, 19200, 38400, 57600, 115200 bps Interfaz USB serie RS232 Integración de tecnología USB Para sistemas con comunicación serie RS232 - 2 - USB232 Interfaz USB serie RS232
Más detallesAUTOMATIZACIÓN INDUSTRIAL
Departamento de Ingenieria de Sistemas y Automática AUTOMATIZACIÓN INDUSTRIAL 1 AUTOMATIZACION INDUSTRIAL 2 AUTOMATIZACION INDUSTRIAL 3 AUTOMATAS PROGRAMABLES Surgen de la necesidad de controlar automáticamente
Más detallesArquitectura de computadoras
Arquitectura de computadoras Técnicas Digitales III Ing. Gustavo Nudelman 2013 Que entendemos por arquitectura Un sistema con una CPU, memoria y dispositivos de entrada y salida puede considerarse un sistema
Más detallesSISTEMAS OPERATIVOS Arquitectura de computadores
SISTEMAS OPERATIVOS Arquitectura de computadores Erwin Meza Vega emezav@unicauca.edu.co Esta presentación tiene por objetivo mostrar los conceptos generales de la arquitectura de los computadores, necesarios
Más detallesPráctica 2. Control de velocidad mediante el autómata CP1L y el variador MX2 de Omron
Sistemas de Control Automático Práctica 2. Control de velocidad mediante el autómata CP1L y el variador MX2 de Omron Jorge Pomares Baeza Grupo de Innovación Educativa en Automática 2011 GITE IEA - 1 -
Más detallesIntroducción a los Sistemas Operativos
Introducción a los Sistemas Operativos Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es 1 Índice General Conceptos sobre ordenadores Concepto
Más detallesTutoría 2. Banco de memoria de 8 y 16 bits (8086)
Tutoría 2. Banco de memoria de 8 y 16 bits (8086) RESUMEN Cuando el procesador opera en modo mínimo, éste genera las señales de control para la memoria y los dispositivos de E/S. [1, pág. 292]. Para utilizar
Más detallesVOCABULARIO DEL HARDWARE. Docente Yeni Ávila
VOCABULARIO DEL HARDWARE Docente Yeni Ávila HARDWARE El Hardware Básico: son las piezas fundamentales e imprescindibles para que la computadora funcione como son: Placa base, monitor, teclado y ratón.
Más detalles6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior.
6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior. 6.1. El subsistema de E/S Qué es E/S en un sistema computador? Aspectos en el diseño del subsistema de E/S: localización
Más detallesEntrada / Salida. Relojes y terminales. Dr. Alonso Ramírez Manzanares 4-Nov-2010
Entrada / Salida. Relojes y terminales Dr. Alonso Ramírez Manzanares 4-Nov-2010 Relojes Tambien conocidos como timers o temporizadores. Son esenciales en sistemas de tiempo compartido. El software de reloj
Más detalles(1) Unidad 1. Sistemas Digitales Basados en Microprocesador SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM
Unidad 1 Sistemas Digitales Basados en Microprocesador SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática EPS - UAM Índice 1. Sistemas digitales basados en microprocesador. 1.1. Arquitectura
Más detallesIntroducción a la arquitectura de computadores
Introducción a la arquitectura de computadores Departamento de Arquitectura de Computadores Arquitectura de computadores Se refiere a los atributos visibles por el programador que trabaja en lenguaje máquina
Más detallesPráctica 5MODBUS: Bus Modbus
Práctica 5MODBUS: Bus Modbus 1 Objetivos El objetivo de esta práctica es la utilización y la programación de una red Modbus. El alumno debe ser capaz de: Diferenciar los tres niveles fundamentales de la
Más detallesESTRUCTURA BÁSICA DE UN ORDENADOR
ESTRUCTURA BÁSICA DE UN ORDENADOR QUÉ ES UN ORDENADOR? Un ordenador es una máquina... QUÉ ES UN ORDENADOR? Un ordenador es una máquina... QUÉ ES UN ORDENADOR? Un ordenador es una máquina... Qué son los
Más detallesTema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía
Tema 3 SUBRUTINAS ÍNDICE Definición e instrucciones básicas Soporte para el tratamiento de subrutinas (ejecución de la subrutina y gestión del bloque de activación) Interrupciones vs llamadas a procedimiento
Más detallesPIC 18F45XX CARACTERÍSTICAS GENERALES
PIC 18F45XX CARACTERÍSTICAS GENERALES 1. Características generales CPU con arquitectura Harvard (77 instrucciones) Todas las instrucciones constan de 1 sola palabra de 16 bits (2 bytes) excepto las de
Más detallesSISTEMAS ELECTRÓNICOS DIGITALES
SISTEMAS ELECTRÓNICOS DIGITALES PRÁCTICA 6 SISTEMA DE ENCRIPTACIÓN 1. Objetivos - Estudio del funcionamiento de memorias RAM y CAM. - Estudio de métodos de encriptación y compresión de datos. 2. Enunciado
Más detallesINSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata
Ing. Guillermo Murcia Ing. Jorge Luis Strack gjmurcia@fi.mdp.edu.ar jlstrack@fi.mdp.edu.ar Lecto-grabadora de SDcard - Se comunica con Arduino a través del protocolo de comunicación SPI. - Se comanda a
Más detallesMICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI
MICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI DEFINICIÓN Es un microcontrolador de Microchip Technology fabricado en tecnología CMOS, completamente estático es decir si el reloj se detiene los datos
Más detallesEjercicios del tema 4. El procesador
jercicios del tema 4. l procesador jercicio 1. Considere un procesador de 32 bits con una frecuencia de reloj de 500 MHz con la estructura del mostrado en el jercicio 3. La memoria se direcciona por bytes
Más detallesHP Easy Tools. Guía del administrador
HP Easy Tools Guía del administrador Copyright 2014 Hewlett-Packard Development Company, L.P. Microsoft y Windows son marcas comerciales registradas del grupo de empresas Microsoft en EE. UU. Software
Más detallesDESCRIPCIÓN DE LOS MONTAJES Y TARJETAS DE CIRCUITO IMPRESO
Estudio y realización de un enlace Bluetooth para el sistema de 127 Capítulo 6 DESCRIPCIÓN DE LOS MONTAJES Y TARJETAS DE CIRCUITO IMPRESO Como ya hemos visto, las características mecánicas y funcionales
Más detallesMódulo Bluetooth HC-06 con puerto serial. Guía fácil
1 Módulo Bluetooth HC-06 con puerto serial. Guía fácil Este manual consta de 3 partes: PARTE 1. Resumen del módulo Bluetooth HC-06 con puerto serial. PARTE 2. Instalación de módulo Bluetooth HC-06 al sistema
Más detallesCAPÍTULO IV BLOQUES DE FUNCIÓN PREDEFINIDOS
CAPÍTULO IV BLOQUE DE FUNCIÓN PREDEFINIDO 1. Temporizadores (%TMi) El PLC Twido admite hasta 32 temporizadores. Los temporizadores tienen una entrada y una salida lógicas vinculadas por un tiempo. Asociado
Más detallesElectrónica Digital II
Electrónica Digital II TIPOS DE MEMORIAS MEMORIA DDR MEMORIA DDR2 MEMORIA DDR3 COMPARACIÓN TIEMPOS DE ACCESO TIPOS DE LATENCIAS RAS CAS ACTIVIDAD PRECARGA TIPOS DE CONFIGURACIONES SINGLE CHANNEL DUAL CHANNEL
Más detallesEjecuta el modo XP sin virtualización de hardware
Una de las características más limpias nuevo en Windows 7 orgánico y categorías superiores es el modo de XP, pero no todas las máquinas son capaces de ejecutarlo. Hoy te mostramos cómo utilizar VMware
Más detallesIntroducción al PLC Simatic Siemens S7-200.
Francisco J. Jiménez Montero. Málaga, Febrero de 2007. Revisado: Noviembre de 2010. Ciclo Formativo de Grado Medio de Instalaciones Eléctricas y Automáticas. Introducción al PLC Simatic Siemens S7-200.
Más detallesHoja de Datos NoMADA Advance [DAT001A NoMADA Advance 02/16]
Hoja de datos Advance Hoja de Datos Advance [DAT001A Advance 02/16] Especificaciones Técnicas de la Tarjeta NoMADA Advance Diseñado por: Diseño Embebido un Paso Adelante. DAT 001A Advance - 02/2016 Hoja
Más detallesMEMORIA EJERCICIO 1 EJERCICIO 2
MEMORIA EJERCICIO 1 Determinar el mapa de memoria de un procesador con 16 señales de bus de direcciones, una señal de asentimiento de bus de direcciones AS, una señal de lectura R, otra de escritura W
Más detallesAUTOMATIZACION. Reconocer la arquitectura y características de un PLC Diferenciar los tipos de entradas y salidas MARCO TEORICO. Estructura Interna
AUTOMATIZACION GUIA DE TRABAJO 3 DOCENTE: VICTOR HUGO BERNAL UNIDAD No. 3 OBJETIVO GENERAL Realizar una introducción a los controladores lógicos programables OBJETIVOS ESPECIFICOS: Reconocer la arquitectura
Más detallesComputadora y Sistema Operativo
Computadora y Sistema Operativo Según la RAE (Real Academia de la lengua española), una computadora es una máquina electrónica, analógica o digital, dotada de una memoria de gran capacidad y de métodos
Más detallesCOMO EMPEZAR... Proceso de conexión de la placa al ordenador:
COMO EMPEZAR... Dentro de las múltiples versiones de LOGO existentes en el mercado, hemos elegido WINLOGO y MSWLOGO por varias razones: - Las primitivas están en español. - MSWLOGO es de libre distribución,
Más detalles8.3. Introducción a las E/S del sistema
8.3. Introducción a las E/S del sistema Interface entre dispositivos periféricos y el. iferencia en velocidad de funcionamiento (tasa de transferencia). iferencia en las unidades de información. iferencia
Más detallesTEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O
TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO Definición y objetivos de un S.O Definición y objetivos del sistema operativo Estructura, componentes y servicios de un S.O Llamadas al sistema
Más detallesTema II: Metodología para la construcción de programas. Profesora: Nelly García Mora
Tema II: Metodología para la construcción de programas Profesora: Nelly García Mora 1. Metodologías de Programación Metodología de programación: es un conjunto o sistema de métodos, principios y reglas,
Más detallesSOPORTE FÍSICO O HARDWARE (I)
SOPORTE FÍSICO O HARDWARE (I) 4.1. DISTINCIÓN ENTRE SOPORTE TÉCNICO Y SOPORTE LÓGICO 4.2. ESQUEMA DE LA ORGANIZACIÓN FÍSICA DEL ORDENADOR 4.3. LA PLACA BASE 4.4. EL MICROPROCESADOR 4.5. LA 4.6. LOS BUSES
Más detallesRegistros SFR vistos hasta ahora: Microcontroladores PIC
Registros SFR vistos hasta ahora: Microcontroladores PIC Microcontroladores PIC: Timer Características del Timer TMR0: Cumple básicamente la función de contador de eventos (o divisor de frecuencia). El
Más detallesMétodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo
TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para
Más detallesREEA. Conexión de un S con WinCC RT Advanced V.12
Conexión de un S7-1200 con WinCC RT Advanced V.12 Objetivo Conexión entre un autómata Siemens S7-1200 y el Scada WinCC Advanced V.12 en modo Runtime para PC. Hardware y software a utilizar Hardware: PC
Más detallesTEMA 1: Concepto de ordenador
TEMA 1: Concepto de ordenador 1.1 Introducción Los ordenadores necesitan para su funcionamiento programas. Sin un programa un ordenador es completamente inútil. Para escribir estos programas necesitamos
Más detallesINDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)
INDICE Capitulo 1. Qué es un computador? 1.1. Introducción 1 1.2. El computador como dispositivo electrónico 2 1.3. Cómo se procesa la información? 3 1.4.Diagrama de bloques de un computador 1.4.1. Información
Más detallesManual de la Práctica 4: Control de iluminación mediante Arduino
Control por Computador Manual de la Práctica 4: Control de iluminación mediante Arduino Jorge Pomares Baeza Francisco Andrés Candelas Herías Grupo de Innovación Educativa en Automática 2009 GITE IEA -
Más detallesArquitectura del PLC. Dpto. Electrónica, Automática e Informática Industrial)
Arquitectura del PLC Dpto. Electrónica, Automática e Informática Industrial) www.elai.upm.es Introducción (I) El PLC recibe, en tiempo real, la información de los sensores conectados al proceso y ejecuta
Más detallesSist s em e a m s s O per e ativos o. s Unidad V Entrada Sali l d i a.
Sistemas Operativos. Unidad V Entrada Salida. Programación de Entrada y Salida Introducción. Comunicación de los procesos con el mundo externo : Mecanismo de E/S de información. Aspectos que diferencian
Más detallesCICLOS DEL PROCESADOR
UNIDAD DE CONTROL CICLOS DEL PROCESADOR Qué es un ciclo de búsqueda? Para qué sirve estudiar los ciclos de instrucción de una CPU? Para comprender el funcionamiento de la ejecución de instrucciones del
Más detallesGuía rápida para gestionar el puerto paralelo del PC
Guía rápida para gestionar el puerto paralelo del PC Descarga desde: http://eii.unex.es/profesores/jisuarez/descargas/ip/guia_rapida_pp.pdf José Ignacio Suárez Marcelo Universidad de Extremadura Escuela
Más detallesDESCRIPCION DEL SITEMA MASTER.
DESCRIPCION DEL SITEMA MASTER. ESTRUCTURA. El sistema MASTER (Sistema Modular para Control Adaptativo en Tiempo Real) se ha implementado en base a un computador compatible PC-AT, dotado de una tarjeta
Más detalles4. Escribe con palabras lo que significan las siguientes letras y di cuántos bytes hay aproximadamente: a) 1 Gb? b) 1 Mb? C) 1 Kb?
1. Qué es un bit? 2. Qué valores puede tener un bit? 3. Cuántos bits hay en 1 byte? 4. Escribe con palabras lo que significan las siguientes letras y di cuántos bytes hay aproximadamente: a) 1 Gb? b) 1
Más detallesTema II: Metodología para la construcción de programas
Tema II: Metodología para la construcción de programas Semestre: A-2012 Profesora: Nelly García Mora Agenda 1. Definición 2. Análisis E P S 3. Construcción de Algoritmos 4. Diagramas de Flujo 5. Codificación
Más detallesTodo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Más detallesRecopilación presentada por 1
Aula Aula de de Informática Informática del del Centro Centro de de Participación Participación Activa Activa para para Personas Personas Mayores Mayores de de El El Ejido Ejido (Almería). (Almería). Consejería
Más detallesTARJETA DE INTERFAZ PCI DE PUERTO PARALELO
Introducción TARJETA DE INTERFAZ PCI DE PUERTO PARALELO Guía de instalación rápida Gracias por comprar la tarjeta de interfaz PCI IEEE1284. Esta tarjeta permite a los usuarios añadir uno o dos puertos
Más detallesTema 9 Periféricos de Entrada
Tema 9 Periféricos de Entrada Periféricos e Interfaces Tema 9/1 Contenido TECLADOS DISPOSITIVOS APUNTADORES DIGITALIZADORES Teclados Tecnología y Tipos Estructura Funcionalidad Interfaz al computador:
Más detallesPIC MICRO ESTUDIO Timer ajustable hasta 99H 59M 59S Timer S232 Es Clave:
PIC MICRO ESTUDIO Timer ajustable hasta 99H 59M 59S Timer S232 Es Clave: 722-1 www.electronicaestudio.com Guía de Operación Timer ajustable hasta 99H 59M 59s Modulo: Timer S232 ES Clave: 722-1 TIMER PROGRAMABLE
Más detalles1.1 Introducción y definición de un microcontrolador 1.2 Estructura básica de un microcontrolador 1.3 Características de la Arquitectura
Índice 1.1 Introducción y definición de un microcontrolador 1.2 Estructura básica de un microcontrolador 1.3 Características de la Arquitectura 1.3.1 Arquitectura RISC 1.3.2 Arquitectura Harvard 1.3.3
Más detallesGuía de Inicio Rápido
Wireless Outdoor Access Point / Client Bridge Guía de Inicio Rápido Punto de acceso inalámbrico y Cliente Bridge El EOC2611P es Punto de Acceso inalámbrico/cliente Bridge exterior de largo alcance que
Más detallesArquitectura de Computadores II
Facultad de Ingeniería Universidad de la República Instituto de Computación Temas Repaso de conceptos Microcontroladores CISC vs RISC CISC Complex Instruct Set Computers RISC Reduced Instruct Set Computers
Más detallesVelocidades Típicas de transferencia en Dispositivos I/O
Entradas Salidas Velocidades Típicas de transferencia en Dispositivos I/O Entradas/Salidas: Problemas Amplia variedad de periféricos Entrega de diferentes cantidades de datos Diferentes velocidades Variedad
Más detallesA la derecha de este botón irán apareciendo todas las aplicaciones abiertas en ese momento en el sistema.
6 LA BARRA DE TAREAS Esta situada en la parte inferior de la pantalla. En su extremo izquierdo contiene el botón de Inicio. A la derecha de este botón irán apareciendo todas las aplicaciones abiertas en
Más detalles1-Componentes Físicos y Lógicos de un Ordenador.
1-Componentes Físicos y Lógicos de un Ordenador. En este capítulo trataremos de explicar el conjunto de elementos por lo que está compuesto un ordenador. A grandes rasgos un Ordenador Personal o PC ( Personal
Más detalles12. Pruebas Realizadas
12. Pruebas Realizadas En este capitulo se describirán todas las pruebas de comunicación realizadas con el sistema Bluetooth WT-11. Todas estas pruebas se han realizado en el laboratorio para comprobar
Más detallesTarjeta Desarrollo dspic. Bogobots ITEM-CEM
Tarjeta Desarrollo dspic Bogobots ITEM-CEM El micro dspic30f4013 El microcontrolador utilizado en la tarjeta es un dispositivo de procesamiento digital desarrollado por la compañía Microchip, el cual cumple
Más detallesSistemas de Interconexión entre Redes LAN
Los puentes Sistemas de Interconexión entre Redes LAN Generalidades Los puentes (bridges) operan en la capa de enlace de datos Sólo se usan las direcciones del nivel 2 de OSI En caso de redes IEEE 802.x,
Más detallesTema 2 Introducción a la Programación en C.
Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes
Más detallesMemoria. Organización de memorias estáticas.
Memoria 1 Memoria Organización de memorias estáticas. 2 Memoria En memoria físicas con bus de datos sea bidireccional. 3 Memoria Decodificación en dos niveles. 4 Necesidad de cantidades ilimitadas de memoria
Más detallesDesarrollo de una interfaz RS-232 para el manejo de un coche de radiocontrol desde el PC
Desarrollo de una interfaz RS-232 para el manejo de un coche de radiocontrol desde el PC A. Muñoz, A. Millan, P. Ruiz-de-Clavijo, J. Viejo, E. Ostua, D. Guerrero Grupo ID2 (Investigación y Desarrollo Digital).
Más detallesTema 4: SISTEMAS DE ENTRADA/SALIDA. Un computador no puede estar formado sólo por la CPU y la memoria.
Tema 4: SISTEMAS DE ENTRADA/SALIDA ÍNDICE 1. Introducción. 2. Módulos de Entrada/Salida: comunicación CPU - Periféricos. 3. Mapa de Entrada/Salida: común y separada. 4. Introducción a los métodos de programación
Más detallesPCF8574 EXPANSOR REMOTO 8-BIT I/O PARA I²C-BUS
PCF8574 EXPANSOR REMOTO 8-BIT I/O PARA I²C-BUS 1. CARACTERISTCAS Suministro de voltaje de funcionamiento 2.5 a 6 V Bajo consumo de corriente de espera (standby) de 10 ma máximo. Expansor I²C a puerto paralelo.
Más detallesDiseño Basado en Microcontroladores. Programa Detallado
Diseño Basado en Microcontroladores. Programa Detallado Tema 5. Temporizadores e Interrupciones. (4 horas + 8 horas de laboratorio) 5.1.Temporizadores A y B. Modos de funcionamiento. 5.2. Temporizador
Más detallesIntroducción a los sistemas de entrada/salida Profesores y tutorías
Introducción a los sistemas de entrada/salida Profesores y tutorías Teoría: Daniel Cascado Caballero Despacho: F070 Horario de tutorías: Lunes: 17:30h a 19:30h Martes: 12:30h a 13:30h Jueves: 10:30h a
Más detallesTema 7: Sistemas de Entrada/Salida
Tema 7: Sistemas de Entrada/Salida Bibliografía Comunicación CPU-Periféricos Ejemplos de periféricos Unidad de disco Puerto serie Monitor Sistema de adquisición de datos Problemática de la Entrada/Salida:
Más detallesLenguaje binario. Código ASCII. Medidas de la información
Hardware y Software (1/5) Lenguaje binario Los ordenadores sólo entienden 1 y 0. Lógica positiva: 0: no hay señal 1: hay señal Código ASCII Medidas de la información Unidad mínima de información: BIT (0
Más detallesLenguajes de programación
Lenguajes de programación Son muchos los lenguajes en los que se pude programar la controladora CNICE pero en este caso nos centraremos en dos de ellos: MSWLogo C Lenguaje MSWLogo MSWLogo se puede usar
Más detallesInstrucciones de uso. CONTROLLER e AS-i AC1308/AC / / 2004
Instrucciones de uso CONTROLLER e AS-i AC1308/AC1314 ES 7390396 / 02 03 / 2004 1 2 3 4 5 Índice de contenidos Utilización correcta... 3 Interfaz de programación RS232C... 3 Interfaz DeviceNet... 3 Montaje...
Más detalles0-31 : caracteres de control : carac. Comunes : especiales (flechas, símbolos) y particulares (ñ)
Hardware y Software (1/6) Lenguaje binario Los ordenadores sólo entienden 1 y 0. Lógica positiva: 0: no hay señal 1: hay señal Código ASCII American Standard Code for Information Interchange Carácter =
Más detallesPRACTICA N 3 ADQUISICIÓN DE DATOS DE TEMPERATURA Y VELOCIDAD
PRACTICA N 3 ADQUISICIÓN DE DATOS DE TEMPERATURA Y VELOCIDAD Fecha de entrega: 28 de septiembre Durante la realización de esta práctica el estudiante debe familiarizarse con el uso de dos tipos de sensores:
Más detallesINDICE Control de dispositivos específicos Diseño asistido por computadora Simulación Cálculos científicos
INDICE Parte I. La computadora digital: organización, operaciones, periféricos, lenguajes y sistemas operativos 1 Capitulo 1. La computadora digital 1.1. Introducción 3 1.2. Aplicaciones de las computadoras
Más detallesIniciación a la informática
Iniciación a la informática Nociones básicas sobre el uso de ordenadores El ordenador. Qué es el ordenador? Maquina capaz de procesar información, capaz de realizar multitud de operaciones distintas La
Más detalles2.- PLATAFORMA ARDUINO (HARDWARE)
2.- PLATAFORMA ARDUINO (HARDWARE) La plataforma Arduino es una plataforma open-hardware basada en una sencilla placa con entradas y salidas (E/S), analógicas y digitales. El elemento principal el microcontrolador
Más detallesESPECIFICACIÓN DE LA INTERFAZ
ESPECIFICACIÓN DE LA INTERFAZ CONVERTIDOR MODBUS UTY-VMSX N.º DE PIEZA 9708438047 es una marca comercial registrada de Schneider Electric SA. Contenidos 1 DESCRIPCIÓN GENERAL DEL SISTEMA...1 2 DIMENSIÓN...2
Más detalles4.2 Servicio de exploración de E/S
4.2 Servicio de exploración de E/S Acerca de esta sección En esta sección se presentan algunas funciones, características y opciones de configuración del servicio de exploración de E/S. Contenido de esta
Más detallesMPI. Índice. Tecnologías de Control. TEMA MPI 1. Subred MPI. 2. Comunicación de Datos Globales. 3. Funciones Básicas S7. 4.
MPI Tecnologías de Control Índice TEMA MPI 1. Subred MPI 1.1 La Red MPI 1.2 Datos Técnicos 1.3 Condiciones Referentes al Hardware 1.4 Comparación PROFIBUS-MPI 1.5 Tipos de Comunicaciones 2. Comunicación
Más detallesArquitectura de Computadoras. Anexo Clase 8 Buses del Sistema
Arquitectura de Computadoras Anexo Clase 8 Buses del Sistema Estructuras de interconexión Todas las unidades han de estar interconectadas. Existen distintos tipos de interconexiones para los distintos
Más detallesSISTEMA AUTONOMO CON PATROL IP Manual de Usuario VERSION 1.0 PRELIMINAR
Ordene este documento como UM-90925 Rev. A UM-90925 Dto. de Ingeniería SISTEMA AUTONOMO CON PATROL IP Manual de Usuario VERSION 1.0 PRELIMINAR 1. Descripción General. El sistema autónomo es una alternativa
Más detalles28/09/2012. Interfaz con Dispositivos de Salida. Interfaz con Dispositivos de Entrada. Port Mapped. Memory mapped. Interfaz con Dispositivos I/O
Interfaz con Dispositivos I/O Interfaz con Dispositivos de Salida y Salida Unidad 4, Segunda Parte Port Mapped Memory mapped 1 2 Ejecución de la Instrucción OUT Ejecución de la instrucción OUT Dirección
Más detallesSoluciones inalámbricas. Guía rápida para configurar un enlace con equipos ENS500 en modo WDS Bridge
Soluciones inalámbricas Guía rápida para configurar un enlace con equipos ENS500 en modo WDS Bridge Introduccíon Un enlace está formado por al menos 2 unidades ENS500. En este documento se explica como
Más detallesMicroprocesadores, Tema 2:
Microprocesadores, Tema 2: Introducción al Microcontrolador PIC18 Guillermo Carpintero, guiller@ing.uc3m.es Universidad Carlos III de Madrid Diagrama de bloques PIC microcontrollers: An introduction to
Más detallesDiseño de una calculadora
DEPARTAMENTO DE TECNOLOGÍA ELECTRÓNICA ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA Diseño de una calculadora Sistemas Digitales Avanzados 1. Introducción y objetivos El propósito general de esta
Más detallesTema 1: Arquitectura de ordenadores, hardware y software
Fundamentos de Informática Tema 1: Arquitectura de ordenadores, hardware y software 2010-11 Índice 1. Informática 2. Modelo de von Neumann 3. Sistemas operativos 2 1. Informática INFORMación automática
Más detallesGRUPO ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACION SENA EXPOSICION MEMORIA RAM INTEGRANTES STEVEN PALOMA ALEJANDRO BERNAL TATIANA RODRÍGUEZ
GRUPO ANALISIS Y DESARROLLO DE SISTEMAS DE INFORMACION SENA EXPOSICION MEMORIA RAM INTEGRANTES STEVEN PALOMA ALEJANDRO BERNAL TATIANA RODRÍGUEZ Random Access Memory Memoria de Acceso Aleatorio La memoria
Más detallesRegistros de desplazamiento
Registros de desplazamiento Definición de registro de desplazamiento básico Tipos de registro de desplazamiento Configuraciones específicas Aplicaciones más típicas VHDL Ejercicio propuestos Definición
Más detallesDiseño de un sistema de adquisición de datos de un micrófono utilizando una FPGA
Diseño de un sistema de adquisición de datos de un micrófono utilizando una FPGA Experimental III: Introducción a la Microfabricación y FPGA - Instituto Balseiro Mauricio Tosi Diciembre de 2013 Resumen
Más detallesIntroducción al procesamiento digital de señales en tiempo real
Introducción al procesamiento digital de señales en tiempo real ELO 385 Laboratorio de Procesamiento Digital de Señales Segundo semestre - 2011 Matías Zañartu, Ph.D. Departamento de Electrónica Universidad
Más detallesTEMA 6.- INTERFACES PARA DISCOS DUROS. nexo de conexión que facilita la comunicación entre dos dispositivos
TEMA 6.- INTERFACES PARA DISCOS DUROS 1. Introducción Interfaz: Adaptador: nexo de conexión que facilita la comunicación entre dos dispositivos convierte las señales del computador a las que necesita el
Más detallesITT-327-T Microprocesadores
ITT-327-T Microprocesadores Temporizador Programable (PIT) 8254. Temporizador/Contador Programable (PIT) 8254. Es un contador/temporizador programable diseñado para trabajar con los sistemas de microcomputadores.
Más detallesHerramientas Informáticas I Software: Sistemas Operativos
Herramientas Informáticas I Software: Sistemas Operativos Facultad de Ciencias Económicas y Jurídicas Universidad Nacional de La Pampa Sistemas Operativos. Es el software base que permite trabajar como
Más detallesPlaca de control MCC03
Placa de control MCC03 Placa de control MCC03 La placa de control basada en el micro controlador PIC 16F874A de Microchip, es la encargada del procesar los datos que se introducen en el sistema y actuar
Más detallesSensor Analógico: Potenciómetro
1.2.16. Sensor Analógico: Potenciómetro En esta actividad vamos a utilizar un potenciómetro como ejemplo de sensor analógico. Los potenciómetros son utilizados en multitud de aplicaciones, como por ejemplo
Más detalles