Está en la página 1de 96

Facultad de Ciencias Bsica e Ingeniera

Programa de Ingeniera Electrnica


C CU UR RS SO O A AC CA AD D M MI IC CO O
C CA AD D E EL LE EC CT TR R N NI IC CA A
J JU UA AN N O OL LE EG GA AR RI IO O M MO ON NR RO OY Y V V S SQ QU UE EZ Z
juan.monroy@unad.edu.co
juanolmv@gmail.com
U UN NI IV VE ER RS SI ID DA AD D N NA AC CI IO ON NA AL L A AB BI IE ER RT TA A Y Y A A D DI IS ST TA AN NC CI IA A
F FA AC CU UL LT TA AD D D DE E C CI IE EN NC CI IA AS S B B S SI IC CA AS S E E I IN NG GE EN NI IE ER R A A
P PR RO OG GR RA AM MA A I IN NG GE EN NI IE ER RI IA A E EL LE EC CT TR R N NI IC CA A
S SO OG GA AM MO OS SO O, , 2 20 00 07 7
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
CURSO: CAD ELECTRNICA
@Copyright Universidad Nacional Abierta y a Distancia
Colaboracin
SANDRA ISABEL VARGAS LOPEZ
Ingeniera electrnica
sandraivargas@yahoo.com
ISBN
2007
Centro Nacional de Medios para el Aprendizaje
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
PRIMERA
UNIDAD
CAPTULOS LECCIONES
1. Conceptos y Software
1. Circuito electrnico y clasificacin
2. Descripcin de Software disponible para
circuitos electrnicos
3. Sistema Operativo
4. Caractersticas del sistema Operativo
GNU/Linux
5.Caractersticas del sistema Operativo Windows
2. Diseo y simulacin de
circuitos DC, AC
6 Dispositivos electrnicos
7 Interconexin de dispositivos
8 Simulacin del circuito DC
9 Simulacin del circuito AC
10 Ejercicios de aplicacin
CONCEPTOS,
DISEO Y
SIMULACIN DE
CIRCUITOS
ELECTRNICOS
3. Diseo y simulacin de
circuitos Digitales, Circuitos
Impresos
11 Dispositivos electrnicos
12 Interconexin de dispositivos
13 Simulacin del circuito
14 Ejercicios de Aplicacin
15 Diagrama esquemtico de circuitos Impresos,
Importar y Generar PCB
SEGUNDA
UNIDAD
CAPTULOS LECCIONES
1. Tratamiento Matemtico
(operaciones con
polinomios, integrales y
derivadas; Manejo de
Seales y Sistemas
(Continuas y Discretas)
16 Polinomios y Operaciones
17 Derivadas e Integrales definidas y no definidas.
18 Seales Continuas, Discretas y Funciones de
Transferencia.
19. Respuesta temporal de sistemas.
20. Respuesta en Frecuencia de sistemas.
2. Operaciones con arreglos
21 Vectores y Cadenas (Concepto y definicin)
22 Operacin con vectores
23 Matrices (Concepto y definicin)
24 Operacin con Matrices
25 Aplicaciones
MODELAMIENTO
MATEMATICO y
FUNDAMENTOS DE
PROGRAMACIN
3. Fundamentos de
Programacin y Lenguajes
de Descripcin de Hardware
26 Conceptos y Tipos de Datos
27 Instrucciones E/S, de seleccin y repetitivas
28 Descripcin HDL
29 Estructura
30 Proceso de Diseo
Diseo: Juan Monroy
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
P PR RI IM ME ER RA A U UN NI ID DA AD D
CONCEPTOS DISEO Y SIMULACIN DE CIRCUITOS
ELECTRNICOS
CAPTULO 1
CONCEPTOS Y SOFTWARE
LECCIN 1. CIRCUITO ELECTRNICO Y CLASIFICACIN
1.1. CIRCUITO ELECTRNICO
Un circuito electrnico es una combinacin de elementos conectados para
formar una trayectoria completa, por la cual los electrones pueden moverse. La
finalidad de un circuito es hacer uso de la energa de los electrones en
movimiento. Por tanto un circuito es tambin un sistema de elementos o
componentes con el cual la energa elctrica puede cambiarse a otra forma de
energa, como trmica, luminosa o magntica.
Dentro de un circuito podemos encontrar bsicamente cuatro categoras de
elementos:
Fuente de Energa. La fuente en un circuito produce la energa
requerida para que los electrones se muevan. En electricidad esta
energa es llamada voltaje o fuerza electromotriz.
Conductores. Los conductores en un circuito proporcionan una
trayectoria fcil por la cual los electrones pueden moverse a travs del
circuito. El cobre es el material conductor mas empleado ya sea en
forma de alambre barras o canales.
Carga. La carga es el elemento de un circuito que transforma la energa
de los electrones en movimiento en alguna otra forma til de energa.
Una resistencia elctrica es un elemento muy comn de carga, cuando
la corriente circula a travs de ella, la energa de los electrones en
movimiento se convierte en energa trmica.
Dispositivo de Control. Son aquellos elementos que nos permiten
ejercer un control del flujo de electrones.
Dentro de estas categoras encontramos un conjunto de elementos con
funciones especficas que definen el comportamiento del circuito, cada uno de
ello tiene una representacin simblica universal segn la IEEE. En la Tabla 1,
se hace una breve descripcin de los principales elementos y su simbologa.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
FUENTES DE ENERGA
NOMBRE SIMBOLO DESCRIPCIN
FUENTE DE
VOLTAJE
+
1 0 v
+
-
Vs1
10V
Proporciona el voltaje de alimentacin a un circuito
FUENTE DE
CORRIENTE Is1
100mA
Entrega la corriente necesaria de alimentacin a
un circuito
FUENTE
DEPENDIENTE
1 +
-
+
-
1 +
-
Fuente cuya magnitud se establece a partir de la
corriente o voltaje del sistema donde se encuentra,
de acuerdo a cual de ellas sea, ser fuente de
corriente dependiente o fuente de voltaje
dependiente
CONDUCTORES
NOMBRE SIMBOLO DESCRIPCIN
FUSIBLES
1A
1A
Es un elemento que brinda una proteccin a otro
dispositivo de acuerdo a un valor de intensidad
establecido que circule por l durante un periodo
de tiempo determinado, si se supera dicho valor
un pequeo trozo de alambre dentro de l se
funde.
ALAMBRE Hilo de conexin de tipo conductor
CABLE Alambre o conjunto de ellos recubierto de un
material aislante
CARGA
NOMBRE SIMBOLO DESCRIPCIN
RESISTOR
1k Elemento que ofrece cierta oposicin al paso de la
corriente elctrica
CONDENSADOR
1uF
+
1uF
Dispositivo que almacena energa elctrica, est
basado en dos placa conductora paralelas,
separadas por un dielctrico.
BOBINA 1mH Elemento que almacena energa en forma de
campo magntico.
DISPOSITIVOS DE CONTROL
NOMBRE SIMBOLO DESCRIPCIN
DIODO
DIODE
Dispositivo que permite el flujo de corriente en una
sola direccin.
TRANSISTOR BJT
NPN PNP
Dispositivo que amplifica la corriente, tambin es
utilizado en conmutacin
TRANSISTOR FET
NJFET PJFET
Dispositivo de amplificacin basado en un campo
elctrico que controla la conductividad de un
canal.
TIRISTOR
TRIAC
SCR
Dispositivo de cuatro capas que utiliza la
realimentacin interna para producir conmutacin.
AMPLIFICADOR
OPERACIONAL
OP AMP Circuito electrnico que amplifica la diferencia de
las dos seales de entrada.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
RELEVADORES Dispositivo electromecnico que funciona como un
interruptor controlado por un electroimn.
Diseo: Juan Monroy
Si desea ampliar el conjunto de smbolos electrnicos puede consultar la
siguiente pgina http://www.simbologia-electronica.com/
1.2. CLASIFICACIN
Los circuitos electrnicos se clasifican en tres tipos de acuerdo a la forma como
se interconectan los elementos en:
Circuito Serie. Un circuito serie proporciona una nica trayectoria a
travs de la cual los electrones pueden moverse de una Terminal de la
fuente de energa a la otra. Se caracteriza porque la corriente que fluye
es igual a travs de cada uno de los elementos que lo componen
mientras que el voltaje en cada uno de ellos es funcin del propio
elemento.
Diseo: Juan Monroy
Circuito Paralelo. Un circuito paralelo permite mas de una trayectoria a
travs de las cuales pueden fluir los electrones; se caracteriza entonces
porque el voltaje en cada una de estas trayectorias es el mismo pero la
corriente depende de los elementos que la componga.
Diseo: Juan Monroy
Circuito Serie-Paralelo (Mixto). Estos circuitos presentan las dos
situaciones anteriores en cuanto a las trayectorias que pueden tomar los
electrones y por ende las caractersticas de cada uno
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Diseo: Juan Monroy
LECCIN 2. DESCRIPCIN DE SOFTWARE DISPONIBLE PARA
CIRCUITOS ELECTRNICOS
2.1. SIMULADOR. Los simuladores de circuitos electrnicos son herramientas
de apoyo en el proceso de aprendizaje y diseo, dado que permiten establecer
un ambiente virtual para una situacin real de un circuito, a fin que el usuario
tenga la oportunidad de participar, a travs de un conjunto de herramientas, en
el proceso de diseo y prueba en un rea especfica de la electrnica.
En general, se puede decir que los simuladores de circuito son modelos que se
construyen a partir de especificar un nmero de variables relevantes internas y
tambin externas, las cuales deben permitir simular la operacin del circuito
electrnico en un ambiente bajo diferentes condiciones, y de esta forma
estudiar su comportamiento y tomar las decisiones pertinentes.
2.2. HERRAMIENTAS. Los simuladores de circuitos electrnicos deben contar
con herramientas que permitan:
Disponer de elementos o componentes virtuales con caractersticas
propias que permitan reflejar a los mismos de la vida real.
Probar el circuito con seales de prueba con parmetros que faciliten la
modificacin de su comportamiento.
Interactuar fcilmente con el usuario.
Visualizar adecuadamente los resultados de la simulacin.
Generar circuitos impresos.
2.3. PARA QU SIRVE UN SIMULADOR?
Los simuladores de circuitos electrnicos ofrecen a los estudiantes e ingenieros
una innovadora forma de:
Perfeccionar sus habilidades
Aplicar conceptos fundamentales de la electrnica
Evaluar alternativas de solucin desde el punto de vista funcional y
econmico.
Generar el diseo y PCB definitivo de un circuito.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
2.4. DESCRIPCION DE SOFTWARE DISPONIBLE.
En el mercado existe gran variedad y gama de software diseado para la
simulacin de circuitos electrnicos, dentro de esta variedad podemos
encontrar software tipo beta, versiones profesionales, enfocados a plataformas
especficas, de alto costo, bajo costo, libres, demo, versiones estudiantiles; sin
embargo la intencin aqu es conocer las caractersticas principales del
software, para as formar un criterio inicial que permita elegir aquel que se
ajuste a las necesidades y particularidades propias.
A continuacin se hace una breve descripcin del software propietario o libre
que se encuentra en el mercado, sin embargo en la siguiente pgina puede
adems de la descripcin del software tener la posibilidad de descargar las
versiones libres o demos:
http://formulagfc.galeon.com/productos771272.html
http://olmo.pntic.mec.es/jmarti50/enlaces/d-electronico.html
http://profesormolina.webcindario.com/download/enica/index.htm
http://profesormolina.iespana.es/download/soft_enica.htm
2.4.1. Kicad: Es un programa de cdigo libre (GPL) software para la creacin
de esquemas electrnicos y circuitos impresos. Concebido y creado por Jean-
Pierre Charras, investigador en el LIS Laboratorio de Imgenes y Seales) y
profesor de electrnica en el Instituto Universitario de Tecnologa de Saint
Martin d'Hres, la suite Kicad es un conjunto de cuatro programas y un gestor
de proyectos para realizar circuitos electrnicos:
Eeschema: Creacin de esquemas.
PcbNew: Realizacin de circuitos impresos.
Gerbview: Visualizacin de documentos generados en formato GERBER
(documentos de fototrazado).
Cvpcb: Utilidad de seleccin de las huellas fsicas de los componentes
electrnicos utilizados en el esquema.
Kicad: Gestor de proyectos.
El gestor de proyectos, Kicad, permite seleccionar un proyecto y abrir la
herramienta deseada (Eeschema, PcbNew, ...).
Esta suite de programas se distribuye gratuitamente en open source con
licencia GPL. Es til para cualquier persona que desee crear circuitos
impresos, simples o complejos.
Estos programas (basados en WXWIDGETS.) son MULTI-PLATAFORMA,
funcionan en LINUX y Windows y son actualizados regularmente.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
La versin precompilada Linux ha sido probada en Mandrake 9.2. o 10.0
(funciona en la 10.1)
Puede ampliar la descripcin i funcionalidad de ese en: http://iut-tice.ujf-
grenoble.fr/kicad/Kicad_files/LogicielKicad_es.htm
2.4.2. Cocodrilo Clips: Programa especialmente til para crear diseos
electromecnicos, controlar simulaciones, comprender diseos y sin fin de
posibilidades ms. Para crear los circuitos con los que se quiere practicar, tan
slo se debe elegir de entre toda la gama el componente que se desea incluir y
arrastrarlo desde la barra de herramientas con el ratn. Del mismo modo los
interruptores y botones se arrastran con el ratn. Al crear los circuitos se
podrn observar numerosas animaciones en las que se pueden incluir tensin,
fuerza, corriente y carga. Tambin permite incluir motores y engranajes que
giren mientras se encienden las lmparas. Las lecturas elctricas y mecnicas
se muestran en burbujas, mientras las trazas del osciloscopio revelan tensiones
de impulso.
El paquete incluye actividades para fotocopiar y ejemplos para probarlos
directamente en el ordenador. Adems ofrece ayuda Online tanto para
principiantes como para expertos.
http://www.profesoresinnovadores.net/software/verSoft.asp?id=1312
2.4.3. gEDA(GNU Electronic Design Automation): El proyecto gEDA esta
trabajando en producir una suite completa de herramientas GPL para
automatizacin de diseo electrnico (EDA). El proyecto gEDA esta orientado
en la creacin de una suite de Herramientas para la Automatizacin del Diseo
Electrnico. Esta herramienta se utiliza para el diseo de circuitos electrnicos
y elctricos, simulacin, prototipado y produccion. El proyecto gEDA se inici
apartir de las herramientas EDA que eran para UNIX, gEDA inicialmente se
desarrollaron para GNU/Linux, pero se esta empezando a desarrollar para
otras plataformas UNIX. gEDA se asemejara al orCAD o al PSPICE.
Contempla una amplia librera de componentes. Una de las ventajas que tiene
la ltima versin es la de poder exportar el circuito hecho con gschem al PCB,
pudiendo de esa forma generar la placa de circuito impreso.
www.bulma.net/pdf.phtml?nIdNoticia=1161
2.4.4. PCB (X11 Interactive Printed Circuit Board layout system): PCB es una
herramienta para disear Placas de Circuito Impreso, nos permite generar el
fotolito precio antes de insolar la placa para despues revelarla.
http://pcb.ece.jhu.edu/
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
2.4.5. VIPEC: es un analizador de circuitos electricos y electronicos, parte de
un fichero de texto en el cual describimos el circuito electrico. Le
asignamos el rango de frecuencias y caracteristicas del circuito. Generando
como resultado graficas y tablas correspondientes a la simulacion.
http://vipec.sourceforge.net/
2.4.6. TKGate: TKGate es un editor grafico y simulador de circuitos digitales,
desarrollado con Tcl/TK. Incluyendo componentes basicos como puertas
logicas (AND, OR, XOR, NAND, etc) Modulos estandares como sumadores,
multiplicadores, registros, memorias, etc y finalmente transistores MOS.
http://www.tkgate.org/
2.4.7. Xcircuit: Es un programa que permite dibujar circuitos elctricos (aunque
puede ser utilizado tambin para dibujar otras cosas). Es liviano, fcil de usar y
produce resultados con calidad profesional y en formato EPS, por lo que resulta
ideal para incluir circuitos en documentos LaTeX. Tambin permite generar
archivos Spice para simular el circuito.
http://bach.ece.jhu.edu/~tim/programs/xcircuit/
2.4.8. SPICE es un acrnimo ingls de Simulation Program with Integrated
Circuits Emphasis (Programa de simulacin con nfasis en circuitos
integrados). Fue desarrollado por la Universidad de California, Berkeley en
1975 por Donald Pederson. Es un estndar internacional cuyo objetivo es
simular circuitos electrnicos analgicos compuestos por resistencias,
condensadores, diodos, transistores, etc. Para ello hay que describir los
componentes, describir el circuito y luego elegir el tipo de simulacin (temporal,
en frecuencia, en continua, parmetrico, Monte Carlo...).
http://www.sqi.gu.edu.au/spice/
http://www.imse.cnm.es/~rocio/DOCs_GRAL/SPICE.pdf
2.4.9. En 1984 nace de manos de MicroSim Corporation la primera adaptacin
para ordenadores personales: PSpice. Desde entonces, PSpice ha ido
renovndose continuamente. Versiones ampliamente extendidas de PSpice
son la 8.0 (ltima desarrollada por MicroSim) y la 9.1 (primera tras la fusin de
OrCAD y MicroSim), hasta llegar a la 9.2, la ltima en el mercado. Esta revisin
del simulador es la primera desde la fusin de Cadence y OrCAD.
http://www.imse.cnm.es/~rocio/DOCs_GRAL/Design_Eval_8.pdf
2.4.10. Electronic Workbench: Electronics Workbench brinda el software de
captura esquemtica y de simulacin de circuitos. Se ecuentra Disponible como
herramientas de diseo autnomas o como parte de un conjunto integral
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
El producto incluye software para captura de esquemticos, simulacin de
circuitos (SPICE, VHDL y cosimulacin patentada), diseo de PCBs y auto
enrutado. Electronics Workbench reduce drsticamente el tiempo de desarrollo
y creacin de PCBs, con mayor precisin y con mayor costo-beneficio que
otros paquetes de diseo; cada circuito que se dibuja est listo
automticamente para su simulacin, de esta manera se puede comenzar
pruebas en la etapa ms temprana de su diseo.
http://www.interactiv.com/
2.4.11. Altium Designer 6. Altium Designer es un sistema unificado, que
incorpora todas las tecnologas y capacidades necesarias para el completo
desarrollo de productos electrnico; se ha fortalecido y mejorado las reas del
sistema de diseo de PCBs, FPGAs y mltiples aplicaciones para diseo de
productos electrnicos
http://www.software-shop.com/Productos/Altium/altium.html
2.4.12. Proteus: es un programa para simular circuitos electronicos complejos
integrando inclusive desarrollos realizados con microcontroladores de varios
tipos, en una herramienta de alto desempeo con unas capacidades graficas
impresionantes.
http://www.frino.com.ar/proteus.htm
2.4.13. Orcad: Es el programa por excelencia para la creacin de circuitos. Su
uso es extremadamente sencillo (siempre y cuando se sepa lo que se quiere
hacer) ya que es muy intuitivo: plasma el circuito con sus componentes, y
simula lo que se desea obtener.
http://es.geocities.com/siderio_orion/Orcad/Contenido.htm
http://www.cadence.com/products/orcad/index.aspx
2.4.14. Matlab: es la abreviatura de Matrix Laboratory (laboratorio de matrices).
Es un programa de anlisis numrico creado por The MathWorks en 1984.
http://www.tecnun.es/asignaturas/Informat1/AyudaInf/aprendainf/matlab60/matl
ab60.pdf
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
LECCIN 3. SISTEMA OPERATIVO
Los sistemas operativos hacen parte del software que se requiere para el
funcionamiento y administracin de los recursos de un computador, estn
compuestos por una serie de rutinas que soportan la ejecucin de otros
programas; para cumplir con estas tareas, es importantsimo que provean una
interfaz que permita la comunicacin con el usuario, en parte y gracias a esta
ltima necesidad surgieron los sistemas operativos. Este tipo de software
permite entonces al usuario de un computador, operarlo de manera prctica.
Existen bsicamente dos tipos de entornos en los cuales el usuario puede
emitir dichas instrucciones: un entorno o interfaz de lnea de comando y una
interfaz grfica
3.1. INTERFAZ DE LNEA DE COMANDOS
Esta interfaz se caracteriza porque el usuario escribe los comandos o
instrucciones utilizando un lenguaje de comandos especial. Los sistemas con
interfaces de lneas de comandos se consideran ms difciles de aprender y
utilizar que los de las interfaces grficas. Sin embargo, los sistemas basados
en comandos son por lo general son programables, lo que les otorga una
flexibilidad que no tienen los sistemas basados en grficos carentes de una
interfaz de programacin.
3.2. INTERFAZ GRFICA DEL USUARIO.
Este entorno permite al usuario elegir comandos, iniciar programas y ver listas
de archivos y otras opciones a travs de representaciones visuales (iconos) y
listas de elementos del men. Las selecciones pueden activarse bien a travs
del teclado o del ratn.
3.3. FUNCIONES DE LOS SISTEMAS OPERATIVOS.
Interpretar los comandos que permiten al usuario comunicarse con el
ordenador.
Coordinar y manipular el hardware de la computadora, como la memoria,
las impresoras, las unidades de disco, el teclado o el ratn.
Organizar los archivos en diversos dispositivos de almacenamiento,
secundario como discos flexibles, discos duros, memorias usb, discos
compactos, etc.
Gestiona los errores de hardware y la prdida de datos.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Servir de base para la creacin del software logrando que equipos de
marcas distintas funcionen de manera anloga, salvando las diferencias
existentes entre ambos.
Configura el entorno para el uso del software y los perifricos.
3.4. CLASIFICACIN
Desde el punto de vista administrativo, podemos clasificar su labor en 3 reas
as:
A nivel de Usuario
o Monousuario: El sistema operativo solamente recibe las ordenes
y ejecuta los programas de un solo usuario.
o Multiusuario: Aqu el sistema operativo da la posibilidad de la
ejecucin de un programa se haga desde diferentes usuarios de
igual forma con los recursos.
A nivel de tareas:
o Monotarea: Significa que el sistema operativo ejecuta solamente
un proceso en un determinado momento, esto no significa que las
labores propias del sistema operativo se vean afectadas en
cuanto a su ejecucin, hace referencia a tareas no propias del
sistema operativo.
o Multitarea: Varias tareas pueden ejecutarse al mismo tiempo, esta
funcin la logra alternando los recursos entre las tareas que los
solicitan dando la sensacin de una ejecucin simultnea.
Manejo de recursos:
o Centralizado: Los recursos del computador, como su nombre lo
indica, estn centralizados de forma que solo son asequibles por
un solo usuario en un solo instante de tiempo
o Distribuido: A diferencia del anterior los recursos de mas de un
computador en el mismo instante de tiempo.
3.5. EJEMPLOS DE SISTEMAS OPERATIVOS
A continuacin se da un listado de sistemas operativos clasificados en las tres
grandes familias presentes en el mercado.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Familia Windows
Windows 95
Windows 98
Windows ME
Windows NT
Windows 2000
Windows 2000 server
Windows XP
Windows Server 2003
Windows CE
Windows Mobile
Windows XP 64 bits
Windows Vista (Longhorn)
Familia Macintosh
Mac OS 7
Mac OS 8
Mac OS 9
Mac OS X
Familia UNIX
AIX
AMIX
GNU/Linux
GNU / Hurd
HP-UX
Irix
Minix
System V
Solaris
UnixWare
En el mercado bsicamente podemos destacar dos de los sistemas operativos
mas utilizados que son: GNU/Linux y Windows
LECCIN 4. CARACTERSTICAS DEL SISTEMA OPERATIVO
GNU/LINUX
En 1969 aparece UNIX, como resultado del trabajo de Ken Thompson, de Bell
Labs, y posteriormente en conjunto con Dennis Ritchie y otros miembros del
Bell Labs se obtuvo l primera versin de UNS, que estaba desarrollada en
ensamblador, que luego fue escrita en lenguaje C lo que la hizo portable. Este
se distribuye entre la comunidad universitaria con el nombre de POSIX
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Una de las caractersticas principales de este Sistema Operativo es el sistema
de tiempo compartido, esto permite a varios usuarios utilizar el sistema
simultneamente, sin que se intervengan entre s y sin notar la presencia de los
dems.
Los prrafos siguiente hacen describen las principales caractersticas de
GNU/Linux, fueron tomadas de
http://www.adrformacion.com/cursos/linux/leccion1/tutorial3.html
Multitarea
Linux desde su concepcin fue diseado como un sistema operativo multitarea,
lo que le permite ejecutar varios programas a la vez, de forma que no tiene que
esperar a que termine uno para empezar otro. La multitarea est controlada por
el Sistema Operativo (S.O.) y no por las aplicaciones, por lo que es muy difcil
que el fallo de un programa "cuelgue" el sistema por una mala utilizacin de los
recursos del equipo.
32 bits reales
Linux permite aprovechar toda la potencia del procesador, corre a 32 bits reales
en un procesador intel o amd, y a 64 bits en los nuevos procesadores que
estn llegando al mercado. Esto le confiere al sistema rapidez, eficacia,
seguridad y fiabilidad.
Multiusuario
Linux es un sistema operativo capaz de responder, simultneamente, a las
solicitudes de varios usuarios que empleen el mismo ordenador, incluso con
necesidades distintas. Adems proporciona los elementos necesarios para
garantizar la seguridad y privacidad de los datos entre los diferentes usuarios.
POSIX
POSIX es un estndar de la industria que asegura una calidad mnima en
ciertas partes del S.O. y asegura la compatibilidad a nivel de cdigo. De esta
forma los programas POSIX que funcionan en un UNIX no tienen ningn
problema para compilarse y ejecutarse en Linux.
Estabilidad
Linux es robusto, por lo que si un programa falla no interrumpir el trabajo de
los dems. Entraremos al sistema, desbloquearemos el programa y podremos
seguir utilizando el sistema sin ningn problema. Esta caracterstica permite
que el sistema funcione durante periodos muy largos de tiempo sin necesidad
de parar y volver a arrancar.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Soporte
Si compras una de las distribuciones de Linux dispondrs de soporte de las
empresas que los distribuyen (Red Hat, Mandriva, SUSE, Ubuntu, etc.) o de
otras muchas que se han especializado en Linux (desde gigantes como IBM o
HP hasta empresas espaolas como Activa Sistemas, Esware o Andago). Si
aun as no lo ves claro aqu tienes una iniciativa que permite localizar empresas
que dan soporte a aplicaciones de software libre.
http://www.findopensourcesupport.com
Es libre
Como disponemos del cdigo fuente, podemos hacer cualquier modificacin sin
tener que esperar a que alguien nos enve un "Service Pack" para solucionarlo.
En el caso de que no sepamos arreglar el fallo podremos contratar a cualquier
empresa para que lo arregle, an cuando la empresa que nos vendi el
programa haya cerrado o no le interese resolver nuestro problema, ya que se
conoce el cdigo fuente.
Adaptacin
Linux es un S.O. que evoluciona rpidamente adaptndose a las novedades
del mercado y solucionando rpidamente los problemas que puedan surgir,
adems se puede personalizar tanto, que ahora mismo hay comunidades
autnomas como Madrid (Max), Valencia (Lliurex) o Extremadura (Linex) que
han hecho su propia distribucin con fines educativos ( quin sabe si despus
de este curso te animas a crear la tuya!!!!
Sistema de archivos
Linux puede operar con una gran variedad de sistemas de archivos,
pudindolos leer y operar con ellos. Por ejemplo: FAT, VFAT, OS2/FS,
ISO9660, ReiserFS, etc.
Multiplataforma
Linux es soportado por los sistemas informticos independientemente del
microprocesador que lleven instalado (386, 486, Pentium, Pentium Pro,
Pentium II, Pentium III, Pentium 4, AMD 64, Amiga, , Atari, Alpha, PowerPC,
SPARC, RISC, etc...).
Red
Linux fue desarrollado desde sus comienzos para trabajar en red. Su protocolo
principal es TCP/IP, aunque soporta una gran variedad de protocolos como
SLIP/PPP, PLIP, NFS, Telnet, TNP, SMTP, IPX, AppleTalk, etc. Adems es
capaz de mediar entre todo tipo de redes, permitiendo trabajar en red con
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
equipos que utilicen sistemas operativos como Windows 98
o XP sin ningn problema.
Entorno Grfico
Linux puede trabajar con o sin entorno grfico. Por ejemplo para funcionar de
manera ptima en equipos con poca memoria o en servidores donde el entorno
grfico consume recursos innecesariamente. Si por el contrario queremos usar
un entorno de ventanas, existen un sinfn de gestores (ICEwin y otros) y de
entornos de escritorio (KDE y GNOME son los ms populares) que permiten al
usuario domstico trabajar de una forma intuitiva.
Distribuciones
Una distribucin es un sistema operativo GNU/Linux unido a una serie de
aplicaciones de configuracin y de usuario "empaquetadas" juntas. Todas
tienen en comn el ncleo del sistema. Las diferencias entre unas y otras son
las herramientas de configuracin que utilizan y las diferentes aplicaciones que
se incluyen junto al sistema operativo. Estas son algunas de las distribuciones
mas comunes que hay en el mercado:
Knoppix, http://www.knoppix-es.org/
Red Hat, http://fedora.redhat.com/ o http://www.redhat.es/fedora/
Debian, http://www.gnu.org, http://www.debian.org y http://www.es.debian.org
SUSE, http://www.suse.com, http://www.novell.com/es-es/linux/suse/
Slackware, http://www.eslack.org/
Gentoo, http://www.gentoo-es.org
Ubuntu, http:// www.ubuntu.com
Mandriva (antes Mandrake), http://www.mandriva.com/es ,
http://www.mandrakefacil.org
En el siguiente enlace puede encontrar un manual en el que debe abordar el
manejo de tareas cotidianas como crear carpetas, copiar archivos, instalar
software. http://www.ant.org.ar/cursos/curso_intro/book1.html
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
LECCIN 5. CARACTERSTICAS DEL SISTEMA OPERATIVO
WINDOWS
El sistema operativo Windows inicio como el sistema operativo D.O.S (Disk
Operating System). En sus principios fue desarrollado junto con la empresa
IBM, pero diferencias entre las partes hicieron que no fuera un lanzamiento en
conjunto. Por el contrario, cada una de las empresas present "su" sistema
operativo: PC-DOS (IBM) y MS-DOS (Microsoft).
D.O.S. se presentaba como una consola o pantalla de texto con una lnea de
comandos que nos indicaba en qu directorio nos encontrbamos y a partir de
all se digitaban las ordenes a ejecutar. La ltima versin del producto como tal
fue la 6.22, posteriormente apareci Windows 3.11 que en su corazn inclua la
versin de DOS lo que lo converta en un entorno operativo mas que un
sistema operativo como ta, posteriormente apareci Windows 95, Windows
98/NT donde se elimin el DOS como sistema independiente y en cambio
aparece como un emulador de ste, adems se inclua el manejo especializado
de redes. Dentro de su evolucin sali al mercado Windows 2000/Windows
ME, orientado a empresas; Las dos ltimas versiones en el medio son
Windows XP SP2 (hace nfasis en los drivers) y Windows Vista.
A continuacin se muestra algunas de las principales caractersticas de
Windows XP que fueron tomadas de:
http://descargas.abcdatos.com/tutorial/descargarL11118.html
Proteccin de la red
Todos los ordenadores conectados a Internet necesitan proteccin frente a
ataques basados en la red, como los del gusano Blaster. Esta proteccin es
especialmente importante para los clientes domsticos conectados a Internet a
travs de un mdem por cable, una lnea ADSL o una conexin telefnica, as
como para los usuarios de porttiles que no siempre estn protegidos por un
firewall corporativo.
Navegacin web ms segura
Para muchos clientes, la Web es algo que proporciona cdigo malicioso y pop-
ups indeseados. Los clientes tambin estn preocupados por los sitios
maliciosos que ofrecen descargas diseadas para defraudarles o daar sus
ordenadores. Todos los clientes corren este riesgo, especialmente cuando
navegan por sitios web con los que no estn familiarizados. Las tecnologas de
seguridad ofrecidas por Internet Explorer permiten una navegacin web ms
segura, a la vez que mantienen intacta la experiencia de navegacin
completamente funcional, tanto para usuarios domsticos como corporativos de
Windows XP.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Proteccin de la memoria
Alguna aplicacin maliciosa puede beneficiarse de la sobrescritura de bfer
para atacar a un ordenador. La sobrescritura de bfer es una vulnerabilidad del
software que copia demasiados datos, sobrescribiendo reas de memoria y
permitiendo la ejecucin de cdigo arbitrario. Los atacantes podran
aprovecharse potencial y remotamente de esta vulnerabilidad en cualquier
ordenador conectado a Internet o a cualquier otra red (en el hogar o en la
oficina) a travs de ADSL, cable o conexin telefnica. Aunque no hay una
tcnica sencilla para eliminar completamente este tipo de vulnerabilidad,
Microsoft est empleando tecnologas de seguridad para reducir la probabilidad
y el riesgo de un ataque de diversas formas. Por ejemplo, Microsoft ha vuelto a
compilar todo el cdigo modificado desde el lanzamiento de Windows XP
utilizando el ltimo compilador Visual Studio y el flag /GS para reducir la
posibilidad de ciertas vulnerabilidades por sobrescritura de bfer.
Correo electrnico y mensajera instantnea ms seguros
El correo electrnico es una va comn por la que se sufren ataques maliciosos
para infectar el ordenador y extender la infeccin. Las nuevas tecnologas de
seguridad de Microsoft hacen ms seguros el correo electrnico y la
mensajera instantnea ayudando a detener la propagacin de virus (como
Sobig.F). Este incremento de la seguridad es ms aplicable a los usuarios
domsticos y pequeas empresas que utilizan Outlook Express o la
mensajera instantnea (IM) Windows Messenger.
Mejoras adicionales
Windows XP Service Pack 2 incluye mejoras adicionales tendentes a
proporcionar al usuario las ltimas actualizaciones tecnolgicas, entre las que
se incluyen las siguientes:
Actualizacin automtica. SP2 ser ms conveniente para el cliente
activando la actualizacin automtica, que descargar e instalar
automticamente las actualizaciones ms importantes.
Windows Media Player 9 Series. Windows Media Player 9 Series ha
pasado por una revisin integral de la seguridad, lo que ha dado como
resultado un conjunto robusto de parmetros de seguridad (disponibles
desde el men Herramientas seleccionando Opciones) que permiten al
usuario controlar ms fcilmente los servicios disponibles en el
reproductor.
Actualizacin bluetooth. Windows XP SP2 incluye un soporte
actualizado para Bluetooth, lo que permite al cliente beneficiarse de los
ltimos dispositivos inalmbricos, incluyendo ratones y teclados
inalmbricos, impresoras inalmbricas y conexiones con telfonos
mviles y PDA.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Cliente de red de rea local (LAN) inalmbrica unificada. El nuevo
cliente LAN inalmbrico funcionar con un amplio abanico de
inalmbricos de ultimsimo generacin (hot spots). Permite al cliente
conectar con estos ltimos sin tener que instalar o actualizar un cliente
de terceros. El cliente tambin se beneficia de una interfaz de usuario
nueva que permite una desconexin ms sencilla de los hot spots.
Puede ampliar este conjunto de caractersticas en
https://www.microsoft.com/latam/windowsxp/pro/evaluacion/caracteristicas.asp
En el siguiente enlace puede encontrar un manual introductoria al manejo de
Windows XP, http://www.unav.es/cti/manuales/pdf/IntroWinXP.pdf
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
P PR RI IM ME ER RA A U UN NI ID DA AD D
CONCEPTOS DISEO Y SIMULACIN DE CIRCUITOS
ELECTRNICOS
CAPTULO 2
DISEO Y SIMULACIN DE CIRCUITOS DC,AC
LECCIN 6. DISPOSITIVOS ELECTRNICOS
Como se menciono en el capitulo anterior existen mltiples programas de
simulacin de circuitos de manejo comercial y de manejo libre.
Dentro del software propietario y uno de los mas utilizados hasta hace poco
dentro de sus versiones estudiantiles se encuentra Circuit Maker que es un
software de simulacin de circuitos AC y DC
A continuacin se da una breve descripcin del entorno de este programa
Diseo: Juan Monroy
Panel
Barra de
Men
Diagrama
Esquemtico
Barra de
Herramientas
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
6.1. BARRA DE HERRAMIENTAS.
La barra de herramientas se puede catalogar como una representacin grafica
o acceso directo a las funciones de la barra de men ms empleadas durante
el desarrollo de una actividad
Los elementos que conforman esta barra y su descripcin o funcionamiento se
muestran en seguida.
Despliegue.
Panel: Muestra o esconde el panel, el panel estar visible de
forma predeterminada al iniciar la aplicacin, al remover el panel se aumenta la
visibilidad del rea de dibujo.
Manejo del documento.
Nuevo documento: Genera un nuevo esquemtico, si se esta
trabajando en otro proyecto y se presiona este botn se le pedir que guarde
su trabajo para empezar a trabajar en el nuevo proyecto.
Abrir documento: Abre un esquemtico (diagrama del circuito)
existente. De igual forma que Nuevo documento, si se esta trabajando con un
proyecto antes de abrir el esquemtico requerido se le pedir guardar el
documento.
Guardar documento: Guarda en una ruta determinada el
esquemtico con el que se esta trabajando.
Imprimir: Imprime el esquemtico que se encuentre en el rea de
trabajo.
Herramientas de dibujo.
Flecha: Esta herramienta se encarga de arrastrar y editar los
componentes en el esquemtico, dando la posibilidad de cambiar los valores
propios del elemento. Esta herramienta permite la manipulacin del alambrado.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Herramienta de alambrado: Con la herramienta alambrado,
podemos colocar alambres para conectar los dispositivos entre si y
presionando la tecla SHIFT mientras se alambra se generara un alambrado tipo
BUS de datos.
Texto: Con esta herramienta se puede colocar un texto en el
esquemtico.
Herramienta de borrado: Permite borrar componentes, texto y
alambrados; si se presiona la tecla SHIFT se eliminan pequeos segmentos de
alambre, de tal forma que se pueda corregir un detalle sin necesidad de
eliminar todo un alambrado.
Lupa: Da una vista del esquemtico que va del 10% al 1000%.
Ajustar a la ventana: Da la ampliacin o reduccin
correspondiente de tal forma que se pueda ver al esquemtico completo en la
pantalla.
Herramientas de manejo de componentes.
Rotar: Rota en un ngulo de 90 a uno o varios componentes
seleccionados.
Reflejar: Refleja uno o ms elementos seleccionados.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
6.2. DISPOSITIVOS ELECTRONICOS
En el panel frontal se pueden encontrar todos los
dispositivos incluidos en CIRCUITMAKER, estos se
encuentran contenidos en diferentes categoras en las que
se hace nfasis al tipo de dispositivos a las que
pertenecen.
Por ejemplo en la categora .GENERAL se encuentran los
elementos de uso ms comn: Elementos activos
(Transistores y Diodos), elementos pasivos (resistencias,
bobinas y condensadores), elementos para energizar
circuitos (bateras, fuentes de voltaje y corriente) e
instrumentos (Generador de seales, multmetro y
generador de secuencias de datos).
En la figura se observan las dems categoras aparte de
las mencionadas, por ejemplo; en ACTIVE COMPONENTS
se encuentran transistores (NPN, PNP), diodos de
diferentes tipos y funciones (Rectificador, ZENER, Puentes
de diodos, VARACTOR, etc.), otros tipos de transistor
como el FET y MOSFET.
En la categora de CAPACITORS se incluyen diferentes tipos de
condensadores (polarizado, no polarizado y variable), en la categora
RESISTORS, de igual forma se pueden encontrar diferentes tipos o
presentaciones de este componente (Resistencia, resistencia variable,
etc.).
En la siguiente tabla se observan algunos de los componentes de Circuit Maker
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Resistor Resistor Variable Condensador Condensador
polarizado
Condensador variable
R1
1k
R2
10k 40%
C1
1uF
+
C2
1uF
C3
1uF
Inductor Inductor variable Diodo Puente Rectificador Diodo Led
L1
1uH
L2
1uH
D1
DIODE
D2
BRIDGE
D4
LED1
Diodo Shottky Diodo Varactor Diodo Zener Transistor NPN Transistor PNP
D3
SCHOTTKY
D5
VARACTOR
D6
ZENER
Q1
NPN
Q2
PNP
Transistor Darlington FET canal N FET canal P IGBT IGBT
Q3
NPN1
Q3
NJFET
Q4
PJFET
Q1
NIGBT
Q1
PIGBT
Parejas de transistores UJT PUT SCR TRIAC
U1
SSM2210
Q2
UJT
PUT1
PUT
SCR1
SCR
Q1
TRIAC
Pentodo Tetrodo Amp Operacional Fuente de voltaje Fuente de corriente
V2
PENTODE
V3
TETRODE
U3
IDEAL
+
-
Vs1
10V
Is1
100mA
Fuente dependiente Fuente dependiente VCO Generador de
funciones
Fusible
IcIs1
1
+
-
+
-
V2
+
-
+
-
V4
1kHz
V1
-1/1V
F1
1A
Conector Transformador Rele PLL Cristal
conector
T1 RLY1
5VCOIL
PLL
Sig
Comp
Vout
Vss Dem
Vin
PC
Vdd
U2 XTAL1
1.000MHZ
Motor paso a paso Motor DC Parlante Antena Cable trenzado
1
A
2
3
B
4
M2 M1
SPK1
8
ANT1 CABL1
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Cable coaxial Opto acoplador Multimetro
CABL2 U1
OPTOISO
DC V
NO DATA
Diseo: Juan Monroy
LECCIN 7. INTERCONEXIN DE DISPOSITIVOS
Una vez se halla seleccionado el componente que se desea colocar en el rea
de trabajo de alguna de las libreras mencionadas anteriormente, el elemento
se visualizara en la parte superior del panel y en la parte inferior aparecern los
modelos disponibles del dispositivo para que sea seleccionado. Por ejemplo si
se desea un transistor NPN, ste se selecciona de la librera, aparece
visualizado el smbolo y las referencias disponibles, por ejemplo 2N3370,
2N3458 etc. para escoger el modelo deseado
Los dispositivos pueden ser colocados en el rea de trabajo, o haciendo doble
clic sobre el elemento de la categora y desplazando el Mouse o presionando el
botn PLACE.
Una vez colocado el elemento en el rea de trabajo, se pueden modificar las
propiedades del mismo haciendo doble clic sobre el mismo o dando clic
derecho e ingresando a la opcin DEVICE PROPERTIES
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Cuando se desea hacer el montaje de un circuito es importante mantener una
proporcin espacial de ste para ubicar cada uno de los elemento que lo
componen, sin embargo esto no es una camisa de fuerza, ya que la mayora de
los programas permiten mover y reubicar los elementos, incluso si ya se han
interconectado ajustando, dichas conexiones de manera automtica.
En la siguiente figura se observan el rea de trabajo con los componentes de
un circuito amplificador.
Como se observa cada uno de los elementos que forman el amplificador no se
ubicaron esperando dejarlos en su posicin final, pero si de forma tal que no
queden sobrepuestos, para reubicarlos se utiliza el Mouse haciendo clic
sostenido con el botn izquierdo justo sobre el elemento que se desea mover y
se arrastrndolo a la posicin deseada. En ocasiones es necesario rotar los
componentes, tarea que fcilmente se puede realizar mediante la opcin
ROTATE que aparece dando clic derecho sobre el elemento.
Para realizar la interconexin se utiliza la herramienta alambrar , para
empezar el alambrado se hace click sobre este icono y se ubica el puntero del
mouse en una de las terminales del componente, al hacer esto aparecer un
recuadro rojo alrededor de la terminal seleccionada, como se observa en la
siguiente figura.
+V
V1
10V
R3
1k
R2
1k
R1
1k
Q1
NPN
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
A continuacin se mantiene presionado el botn izquierdo del mouse
dirigindolo a la terminal del otro componente donde se desea hacer la
conexin y soltndolo al realizar el contacto. Es importante mencionar que si
por error se realiza una interconexin entre dos elementos que originalmente
no estn conectados, es posible eliminar dicha conexin haciendo clic sobre
ella y presionando la tecla delete. Una vez se hacen las interconexiones debe
observarse el circuito como se ve a continuacin.
Como se observa fue necesario reubicar las resistencias, rotarlas y cambiar
sus propiedades, al igual que se modifico las propiedades de la fuente DC.
LECCIN 8. GUARDAR Y CARGAR CIRCUITOS
8.1. GUARDAR
Una vez tenemos el circuito terminado, podemos salvarlo utilizando la opcin
SAVE o SAVE AS del men File tal como se observa en la siguiente figura
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Realice el montaje que se ve en la anterior figura y grabe dicho circuito para
simularlo posteriormente con las indicaciones dad en la prxima leccin.
Una vez se ha elegido la opcin save se despliega la ventana que nos permite
seleccionar la ruta donde se guardar el archivo, se coloca el nombre y se da
clic en guardar, es importante notar que este archivo se almacena con
extensin .ckt
8.2. CARGAR
Circuit Maker permite llamar o abrir circuitos existentes, mediante la opcin
open ubicada en el men File, como se observa en la siguiente figura
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Seleccionada esta opcin, se despliega una ventana donde escogemos la ruta
y especficamente el archivo con el cual deseamos trabajar, dando clic en abrir
se carga automticamente el circuito en el rea de trabajo.
Teniendo el archivo en el rea de trabajo se pueden realizar ediciones sobre
ese circuito.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
LECCIN 9. SIMULACIN DEL CIRCUITO AC/DC
Para simular el circuito debemos tener la totalidad de los componentes en el
rea de de trabajo y deben estar alambrados correctamente. En la siguiente
figura se muestra un ejemplo de un amplificador, antes de realizar el montaje
observe cuidadosamente los elementos que lo componen guindose por la
tabla de dispositivos que aparece en la leccin No 6, determine su ubicacin y
agrguelos al rea de trabajo, Posteriormente realice el alambrado de forma tal
que se observe as:
AC V
1.105 V
C2
0.47uF
C1
1uF
1kHz
V2
-500m/500mV
+V
V1
20V
Q1
NPN
R5
1k
R4
3k
R3
20k
R2
2k
R1
220
Para iniciar la simulacin pulsamos F10 o en la barra de men
Simulacin/Run. Si el circuito se simula correctamente aparece un pantallazo
como el siguiente
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
En la parte inferior de la pantalla hay dos pestaas: Operating point y Transient
Anlisis. La primera nos permite observar en la pantalla los valores numricos
de voltajes, corrientes y potencias en cualquier lugar del circuito, el punto
donde deseamos hacer la medicin lo seleccionamos con la herramienta punto
de prueba . La segunda permite observar la forma de onda de una seal de
voltaje, corriente o potencia en el circuito. La seleccin del punto de medida se
hace con la herramienta punto de prueba.
Otra opcin de simulacin es el Anlisis en frecuencia (Anlisis de Bode), que
se activa en la barra de men con la opcin Simulation/Anlisis setup,
activando la casilla A.C., all se configuran los parmetros de frecuencia en los
cuales se realiza la simulacin. Esta opcin permite hacer un anlisis del
comportamiento del circuito en funcin de la frecuencia, para ello es necesario
conocer como responden cada uno de los elementos en funcin de dicha
frecuencia.
A continuacin se muestra un ejemplo del mismo amplificador mirando su
respuesta en trminos de la frecuencia.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
LECCIN 10. EJERCICIOS DE APLICACIN
10.1. Encontrar las corrientes de malla I
1
, I
2
e I
3
del siguiente circuito:
+
-
Vs1
10V
R5
10
R4
5
R3
8
R2
4
R1
10
Primero definimos el sistema de ecuaciones de malla del circuito.
0 23 5 8
10 5 9 4
0 8 4 22
3 2 1
3 2 1
3 2 1
= +
= +
=
I I I
I I I
I I I
Para resolver el sistema proseguimos a encontrar el determinante de la matriz
A:
2740
23 5 8
5 9 4
8 4 22
=



= A
Una vez que hemos encontrado el determinante de la matriz A hallamos el
valor de cada incgnita del sistema en este caso I
1
, I
2
e I
3
.
A I 4848 . 0
2740
1320
23 5 0
5 9 10
8 4 0
1
= =
A



=
A I 61 . 1
2740
4420
23 0 8
5 10 4
8 0 22
2
= =
A



=
A I 51 . 0
2740
1420
0 5 8
10 9 4
0 4 22
3
= =
A


=
I
2
I
3
I
1
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Los resultados se comprueban haciendo el siguiente montaje en Circuit Maker
10.2. En el circuito de la siguiente figura calcular los V
CE
e I
C
en DC. En AC
medir la ganancia de voltaje A
V
Tenemos que:
V K K K V V
TH
8 . 3 ) 82 22 /( 22 *
1
= O + O O =
O =
O + O
O O
= K
K K
K K
R
TH
34 . 17
82 22
82 * 22
A
R R
V V
I
E TH
BE TH
B

22
* ) 1 (
=
+ +

=
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
mA I I
B C
2 . 2 = =
V R I R I V V
E C C c CE
04 . 3
1
= =
Haciendo el siguiente montaje podemos comprobar los resultados, observe los
datos que muestran los indicadores de corriente y voltaje
Finalmente haciendo la grafica de Transient Anlisis, se puede observar el
voltaje de salida, y calculando la ganancia de voltaje de este circuito como V
0
/
V
i
y que da como resultado 3.
3 = =
E
E C
V
R
R II R
A
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
P PR RI IM ME ER RA A U UN NI ID DA AD D
CONCEPTOS DISEO Y SIMULACIN DE CIRCUITOS
ELECTRNICOS
CAPTULO 3
DISEO Y SIMULACIN DE CIRCUITOS DIGITALES, CIRCUITOS
IMPRESOS
LECCIN 11. DISPOSITIVOS ELECTRNICOS
En circuit Maker podemos encontrar componentes de circuitos digitales como
compuertas (GATES), multiplexores (MUX), contadores entre otros.
Los circuitos digitales se encuentran en la mayora de los sistemas electrnicos
modernos, ya que con el avance en las tecnologas de integracin de
elementos en circuitos integrados se puede tener al alcance una gran cantidad
de funciones que van desde: compuertas lgicas (SSI), sumadores binarios
(MSI) y unidades de manejo de datos (LSI) y otros niveles de integracin ms
elevados.
Los componentes electrnicos digitales en Circuit Maker se encuentran en el
panel frontal en las categoras DIGITAL ANIMATED, DIGITAL BASIC, DIGITAL
BY FUNCTION, DIGITAL BY NUMBER, se pueden trabajar tanto en la
presentacin individual o en circuito integrado.
En la siguiente tabla se encuentran relacionados algunos de los elementos
digitales que se trabajan en Circuit Maker.
Indicador animado Indicador animado Indicador animado Display ASCII Display 7 segmentos
S
F
Reset
CAR1
S
F
Reset
CAR1
C
NO
NC
OC
WND1
7
6
5
4
3
2
1
CP
DISP1
abcdefg.
V+
DISP2
Display 7 segmentos Diodo Led Lmpara Display Lgico Semforo
1 2 3 4
DISP4 D1
LED1
L1 L2 SEM1
switch CompuertaAND Compuerta NAND Compuerta NOR Compuerta OR
V2
5V
U9A U10A U11A U12A
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Compuerta XNOR Compuerta XOR Buffer Inversor Sumador
U13A U14A U1A U3A
74LS83
A4
A3
A2
A1
B4
B3
B2
B1
Cin
s4
s3
s2
s1
Cout
U18
Flip flor tipo D Flip flor tipo JK Flip flor topo RS Comparador Latch
D
CP Q
_
Q
U4
J
CP
K
R
Q
_
Q
U7A
S
R Q
_
Q
U8
74LS85
A3
A2
A1
A0
B3
B2
B1
B0
IA<B
IA=B
IA>B
A<B
A=B
A>B
U1
74LS85
74LS373
D7
D6
D5
D4
D3
D2
D1
D0
Q7
Q6
Q5
Q4
Q3
Q2
Q1
Q0
OE E
U3
Multiplexor Memoria PROM Memoria Ram Registro Contador
74LS373
D7
D6
D5
D4
D3
D2
D1
D0
Q7
Q6
Q5
Q4
Q3
Q2
Q1
Q0
OE E
U3
PROM32
CS
A4
A3
A2
A1
A0
O7
O6
O5
O4
O3
O2
O1
O0
U1
PROM32
CS
A4
A3
A2
A1
A0
O7
O6
O5
O4
O3
O2
O1
O0
U1
74LS165
D7
D6
D5
D4
D3
D2
D1
D0
DS
PL
CE
CP
Q7N
Q7
U1
4017
CP1
CP0
MR
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
Q8
Q9
Q5-9
U20
Diseo: Juan Monroy
Los elementos una vez seleccionados se colocan en el rea de trabajo y se
ubican en una posicin favorable para su posterior conexin.
LECCIN 12. INTERCONEXIN DE DISPOSITIVOS
Como ya se haba mencionado en las lecciones anteriores, para realizar la
interconexin se utiliza la herramienta alambrar , se inicia el alambrado
haciendo click sobre este icono y ubicando el puntero del mouse en una de las
terminales del componente, al hacer esto recuerde que aparecer un recuadro
rojo alrededor de la terminal seleccionada; enseguida y manteniendo
presionado el botn izquierdo del mouse se arrastra a la terminal del otro
componente donde se desea hacer la conexin y soltndolo al realizar el
contacto. Es importante mencionar que si por error se realiza una interconexin
entre dos elementos que originalmente no estn conectados, es posible
eliminar dicha conexin haciendo clic sobre ella y presionando la tecla delete.
Una vez se hacen las interconexiones debe observarse el circuito como se ve a
continuacin.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
V2
5V
V1
0V
L1
U1C
U1B
U1A
LECCIN 13. SIMULACIN
Antes de realizar la simulacin se debe seleccionar Modo Digital en la barra de
men Simulation/Digital Mode/Run.
De esta manera puede distinguir en el led los estados del la salida del circuito
en funcin de las seales de entrada.
A Continuacin observe el pantallaza que se genera al momento de realizar la
simulacin del circuito digital seleccionado.
LECCIN 14. EJEMPLOS
14.1. Realizar el circuito astable con el Integrado LM555, observar la forma de
onda producida y la frecuencia de la misma.
Realice el siguiente montaje
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
.IC
+12V
1
Gnd
2
Trg
3
Out
4
Rst
5
Ctl
6
Thr
7
Dis
8
Vcc
555
+
CT
.1uF
+
C1
.01uF
RL
10k
RA
1k
RB
1k
R1
2k
Para observar la forma de onda activamos el modo de simulacin Transient
Analysis en Simulation/Analog Mode, y se ejecuta la simulacin mediante el
comando Run.
14.2. Disee un circuito contador digital de 0 a 9, que responda a la seal de un
pulsador como activacin del conteo
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Al realizar la simulacin del circuito, se observa a travs del display siete
segmentos el conteo que se esta llevando a cabo y la forma de control elegida
LECCIN 15. DIAGRAMA ESQUEMTICO DE
CIRCUITOS IMPRESOS, IMPORTAR Y GENERAR PCB
15.1. DIAGRAMA ESQUEMATICO
La realizacin de un circuito impreso requiere que previamente se halla hecho
el diagrama esquemtico. Como se ha visto anteriormente el diagrama
esquemtico se realiza en Circuit maker colocando los componentes en el rea
de trabajo, se debe tener cuidado con las conexiones al exterior de la placa
tales como entradas de seal, conexiones de fuentes de alimentacin,
micrfonos, salidas a parlantes etc. Estas conexiones se colocan en el
diagrama esquemtico seleccionando en el panel frontal en la categora
CONNECTORS, en donde se encuentran diversos tipos de conectores como:
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
J6
P1
J5
J4
J3
J2
ent 1
Un ejemplo de estas conexiones se muestra en el siguiente diagrama
esquemtico, donde se reemplazo la fuente de alimentacin por un conector de
dos entradas al cual se le asignaron nombres a los pines (Vcc y GND), y la
seal de entrada al circuito como otro conector donde ser conectada
posteriormente la seal a ser amplificada.
GND
Vcc
J 2
J 1
C 1
1 u F
Q 1
N P N
R 4
1 k
R 3
1 k
R 2
1 k
R 1
1 k
15.2. IMPORTAR CIRCUITOS Y GENERACION DEL PCB
Una vez se tenga el diagrama esquemtico se procede a exportar el circuito a
un programa de elaboracin de PCB, Circuit Maker trae la conexin directa a
estos programas a travs del siguiente icono
Pulsando este icono aparece la ventana de exportacin para crear el PCB, en
la pestaa se puede seleccionar el programa mediante el cual se desea crear
el impreso, aparecen Traxmaker que es el programa asociado por defecto a
Circuit Maker y otros como Protel, Tango y Orcad entre otros.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Tomamos el programa por defecto TraxMaker y activamos todas las opciones
que aparecen en la parte izquierda de la ventana. En la parte derecha tenemos
la oportunidad de seleccionar el tamao de la placa en largo y ancho (este
valor esta dado en mils: milesimas de pulgada), presionamos OK y aparece
una ventana de salvar PCB, se da un nombre al archivo y se guarda.
Una vez se ha exportado el circuito, automticamente se abre el programa
traxmaker y aparece el grafico de la placa impresa con los componentes y una
ventana de informacin del proceso, damos OK en esta ventana y nos da un
informe de errores so lo solicitamos, en caso contrario desaparece la ventana y
nos permite observar solamente la placa de circuito impreso. Si esta aparece
muy pequea la ampliamos con la herramienta zoom.
Como se observa en la grafica los componentes aparecen organizados
automticamente. El enrutado de las pistas se puede realizar manual o
automticamente, seleccionando la opcin en la barra de men ROUTE.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Si se elige la opcin manual se debe realizar cada una de las conexiones entre
los componentes, si se escoge la opcin board el trazado se realiza
automticamente y aparece una ventana para salvar el trabajo realizado hasta
el momento damos OK y el trazado de las pistas aparece automticamente.
Se puede guardar el archivo del pcb, con la opcin save en la subdivisin de la
opcin File de la barra de men.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
S SE EG GU UN ND DA A U UN NI ID DA AD D
MODELAMIENTO MATEMTICO Y FUNDAMENTOS DE
PROGRAMACIN
CAPTULO 1
TRATAMIENTO MATEMTICO
LECCIN 16. POLINOMIOS Y OPERACIONES
El modelamiento matemtico es parte fundamental dentro de la ingeniera, ya
que los problemas que se intentan resolver son diversos, algunos muy
complejos y particulares, con este modelamiento se busca encontrar una
representacin matemtica de una situacin para hallar su solucin, en la
mayora de los casos los modelos planteados no se pueden resolver por
mtodos analticos, o a su vez la resolucin de estos es rutinaria y fcilmente
se puede recurrir a herramientas computacionales que realicen esta tarea. El
proceso que se lleva a cabo al representar matemticamente un problema de
ingeniera, involucra tareas como las de discretizar el problema, es decir, en
vez de usar una ecuacin que describa el comportamiento a travs de todo el
tiempo, se formulan muchas ecuaciones (algebraicas) que describen el
comportamiento en un punto en particular o para un instante en particular del
tiempo. Luego todas estas ecuaciones, se ingresan a un software que resuelve
y entrega las soluciones de estas ecuaciones; estas soluciones deben ser
vlidas por datos esperados por los ingenieros, si concuerdan, se garantiza
entonces que el modelo es una buena representacin de la situacin, si por el
contrario no son los resultados esperados, se debe revalidar el modelo,
ajustarlo e iniciar el proceso nuevamente.
Dentro del software con mayor acogida en ingeniera est el MATLAB que es
un entorno de computacin y desarrollo de aplicaciones para llevar a cabo
proyectos en donde se encuentren implicados elevados clculos matemticos y
la visualizacin grfica de los mismos. MATLAB integra anlisis numrico,
clculo matricial, proceso de seal y visualizacin grfica y un lenguaje de
programacin de alto nivel.
Aunque existen otros programas de calculo, los ejemplos tratados en este
capitulo se desarrollan en MATLAB versin estudiantil debido a su gran
versatilidad y amplia difusin.
Antes de entrar en el manejo que le da Matlab a la solucin de las ecuaciones,
miremos el siguiente prrafo que muestra la importancia del modelamiento
matemtico dentro de la industria:
El matemtico Carlos Conca fue precursor en acercar el modelamiento
matemtico a la industria. A comienzos de la dcada del 80, mientras haca su
Doctorado de Estado en Matemticas, en la Universidad Pierre et Marie Curie,
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Paris VI, fue requerido por un equipo de ingenieros de la
empresa Electricit de France (EDF) para que investigara un problema de
resonancia, que presentaba el haz de tubos de los condensadores e
intercambiadores de calor en las centrales nucleares francesas. Carlos Conca
recuerda que por aquel entonces no era bien visto que un matemtico se
ocupara de problemas de origen industrial. Sin embargo, a raz de esta
solicitud, se origin un debate en el departamento de matemticas donde se
desempeaba, que termin con una solucin salomnica: se cre en forma
independiente una pequea unidad de matemticas aplicadas al interior de su
departamento.
Regresa a Chile en 1987, con el inters de plasmar este tipo de experiencias en el pas,
e intentar vincular la matemtica ms fundamental con las aplicaciones industriales. Se
asocia a otros ingenieros del Departamento de Ingeniera Matemtica de la
Universidad de Chile, y en Abril del 2000, fundan el Centro de Modelamiento
Matemtico (CMM). Desde aqu, se propone la tarea de consolidar una capacidad
mecnico matemtica de primer nivel, capaz de afrontar los problemas de la
metalurgia del cobre chileno a nivel competitivo mundial.
http://www.bioplanet.net/magazine/bio_mayjun_2004/bio_2004_mayjun_cmm.h
tm
16.1. POLINOMIOS Y OPERACIONES
Con un polinomio a= 0 1 ...
2 1
= + + + +

s s s s
n n n
y un polinomio
b=
0 1 ...
2 1
= + + + +

s s s s
m m m
pueden realizarse las operaciones
bsicas tales como suma, resta, multiplicacin, divisin etc.
En el entorno de Matlab se introducen los polinomios expresados como
vectores, es decir incluyendo solamente los coeficientes del polinomio. Por
ejemplo el polinomio
Se introduce en Matlab como
p= [1 2 4]
Donde las componentes del vector p corresponden a los coeficientes del
polinomio, dichas componentes deben ir separadas por espacios o por comas.
En la siguiente grafica se muestra el entorno de trabajo de Matlab, all se puede
por ejemplo, ingresarse el polinomio anterior.
4 2 ) (
2
+ + = s s s p
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
16.2. OPERACIONES
Matlab permite realizar la suma, resta, multiplicacin, divisin y evaluacin de
polinomios con los siguientes comandos. Las operaciones como suma y resta
se trabajan directamente como p1+p2 o p1-p2, habiendo definido previamente
los polinomios. Otras funciones tiles en la manipulacin de polinomios son:
poly Inicia un polinomio. Si el argumento es una matriz cuadrada
devuelve el
polinomio caracterstico, si es un vector devuelve un polinomio
cuyas races son los elementos del vector.
roots Devuelve las races del polinomio cuyos coeficientes son los
elementos
del vector argumento.
polyval Calcula el valor del polinomio en el punto dado
polyder Deriva un polinomio.
polyint Integra analticamente un polinomio.
conv Multiplica dos polinomios.
deconv Divide dos polinomios
Roots Encuentra las races de un polinomio
Por ejemplo dado los polinomios
6 4 2 1
2 3
+ + + = s s s p
1 4 3 2
2
+ + = s s p
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Se pueden realizar las operaciones bsicas como
En matlab se realizan como se observa en la siguiente figura
7 5 7 2 2 1
2 3
+ + + = + s s s p p
5 3 2 2 1
2 3
+ + = s s s p p
6 25 26 21 20 6 2 * 1
2 3 4 5
+ + + + + = s s s s s p p
44 . 0 666 . 0 2 / 1 + = s p p
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
LECCIN 17. DERIVADAS E INTEGRALES DEFINIDAS Y NO
DEFINIDAS
17.1. DERIVADAS
Para determinar la derivada simblica de una expresin simblica se usa la
funcin diff, la cual tiene cuatro variantes:
diff(f) Derivada ordinaria: Devuelve la derivada de la expresin f
respecto de la variable independiente por omisin.
diff(f,n) Derivada de orden superior n: Devuelve la n-sima derivada de
la expresin f respecto de la variable independiente por
omisin.
diff(f,'t') Derivada parcial ordinaria: Devuelve la derivada de la
expresin f respecto a la variable t.
diff(f,'t',n) Derivada parcial de orden superior n: Devuelve la n-sima
derivada de la expresin f respecto a la variable t.
Para realizar la derivada en Matlab se debe definir la variable como una
variable simblica esto se realiza con el comando syms o a travs de
apstrofos, por ejemplo:
>> syms x, y;
>> y='x^2';
Una vez definida la variable se puede utilizar alguno de los comandos
mencionados anteriormente. A continuacin se muestran algunos ejemplos
1. ( ) 2 6 3 8
2 4
+ x x x
dx
d
>> syms x;
>> f=8*x^4-3*x^2+6*x-5;
>> diff(f)
ans =
32*x^3-6*x+6
2. x
dx
d
cos
>> syms x;
>> f=cos(x);
>> diff(f)
ans =
-sin(x)
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
3. ) (
2 x
e x
dx
d
syms x;
f=x^2*exp(x);
diff(f)
ans =
2*x*exp(x)+x^2*exp(x)
Derivadas de orden superior
4. ( ) 2 6 3 8
2 4
2
2
+ x x x
dx
d
>> syms x;
>> f= f=8*x^4-3*x^2+6*x-5;
>> diff(f,2)
ans =
96*x^2-6
17.2. INTEGRALES DEFINIDAS Y NO DEFINIDAS.
Para integrar una funcin simblica f en MATLAB se utiliza la funcin int, la cual
busca una expresin simblica F tal que diff(F)=f. Sin embargo, es posible que
dicha integral no exista o que MATLAB no pueda encontrarla, en este caso
devuelve la expresin sin evaluarla. La funcin int tiene cinco variantes
int(f) Devuelve la integral de la expresin f respecto a la variable
independiente por omisin.
int(f,'t') Devuelve la integral de la expresin f respecto a la variable
t.
int(f,a,b) Devuelve la integral de la expresin f respecto a la variable
independiente por omisin evaluada en el intervalo [a,b],
donde a y b son expresiones numricas.
int(f,'t',a,b) Devuelve la integral de la expresin f respecto a la variable
t
evaluada en el intervalo [a,b], donde a y b son expresiones
numricas.
int(f,'m','n') Devuelve la integral de la expresin f respecto a la variable
independiente por omisin evaluada en el intervalo [m,n],
donde m y n son expresiones simblicas.
Al igual que con las derivadas, para realizar el proceso de integracin se debe
definir la variable como simblica, y se procede a utilizar el comando int. A
continuacin se presentan algunos ejemplos:
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Integral indefinida
1.
( )
}
+ + dx x x 1 2
2
syms x;
f=x^2+2*x+1;
int(f)
ans =
1/3*x^3+x^2+x
2.
}
dx xe
x
) (
2
syms x;
f=x*exp(2*x);
int(f)
ans =
1/2*x*exp(2*x)-1/4*exp(2*x)
Integral definida
3.
}

0
dx x sen syms x;
f=sin(x);
int(f,0,pi)
ans =
2
4.
dx
x
}

2
1
1
syms x;
f=1/(1+x^2);
int(f,-inf,inf)
ans =
pi
5.
}
+
b
a
dx x 1 3 syms x;
f=sqrt(3*x+1);
int(f,'a','b')
ans =
2/9*(3*b+1)^(3/2)-2/9*(3*a+1)^(3/2)
LECCIN 18. SEALES CONTINUAS, DISCRETAS Y
FUNCIONES DE TRANSFERENCIA
18.1. SEALES CONTINUAS Y DISCRETAS
Las seales son funciones del tiempo que representan la evolucin de una
determinada variable, como puede ser el voltaje en los extremos de un
condensador, la temperatura de un horno, o la actividad elctrica del corazn.
Se clasifican en seales continuas y discretas.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Las seales continuas, x(t), son funciones de una variable continua (tiempo),
mientras que las discretas, x[n], se definen nicamente para valores discretos
de la variable independiente.
Por ejemplo la seal cos (t) representa una seal continua en el tiempo, su
grafica es la siguiente
Y La seal cos [n] representa una seal en tiempo discreto
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
18.2. FUNCIONES DE TRANSFERENCIA
La funcin de transferencia es la relacin entre la seal de salida y la seal de
entrada a un sistema. En tiempo continuo esta relacin se da en Transformada
de Laplace, es decir en trminos de la variable s, y en tiempo discreto se da en
Transformada Z, en trminos de la variable z.
Por ejemplo:
continuo sistema un de cia transferen de Funcin
s s s X
s Y
s G
2 6
1
) (
) (
) (
2
+ +
= =
discreto sistema un de cia transferen de Funcin
z z
z
z X
z Y
z G
2 6 ) (
) (
) (
2
+ +
= =
LECCIN 19. RESPUESTA TEMPORAL DE SISTEMAS
Para obtener la respuesta de un sistema en el tiempo ante una entrada
estndar, debe primero definirse el sistema. Para ello puede establecerse en
MatLab la funcin de transferencia propia del sistema o las ecuaciones de
estado. La funcin de transferencia de un sistema es una relacin formada por
un numerador y un denominador. El numerador Num(s) y el denominador
Den(s) deben determinarse como vectores, cuyos elementos son los
coeficientes de los polinomios del numerador y del denominador en potencias
decrecientes de s. Por ejemplo, para definir la funcin de transferencia:
4 3
1
) (
2
+ +
=
s s
s G
En matlab
>>num=[1];
>>den=[1 3 4];
Para determinar la respuesta en el tiempo para una entrada escaln unitario de
este sistema se usa el comando step indicando el vector del numerador y del
denominador entre parntesis. step(num,den)
>>step(num,den)
MatLab presenta la respuesta en el tiempo en la ventana de figuras:
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Puede definirse el tiempo en el cual se desea la respuesta al escaln, mediante
un vector de tiempo t, step(num,den,t)
>>t=0:0.1:20;
>>step(num,den,t)
Se define t como un vector cuyo elemento inicial es 0, su elemento final es 20 y
existen elementos que son el incremento desde 0 hasta 20 de 0.1 en 0.1. Al
ejecutar el comando step se obtiene en la ventana de figuras la respuesta
escaln para los primeros 20 segundos.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Para obtener la respuesta en el tiempo para una entrada impulso unitario se
usa el comando impulse.
Si se define el sistema en MatLab por los polinomios del numerador y
denominador de la funcin de transferencia tenemos:
num=[1 ];
den=[1 3 4];
impulse(num,den)
MatLab presenta la respuesta en el tiempo en la ventana de figuras:
Para los sistemas de tiempo discreto Matlab permite calcular la respuesta
temporal ante diferentes seales de entrada
Debe definirse el numerador Num(z) y el denominador Den(z) como vectores,
cuyos elementos son los coeficientes de los polinomios del numerador y del
denominador en potencias decrecientes de z. Por ejemplo, para definir la
funcin de transferencia:
8 . 0 5 . 1
3 . 0 5 . 0
) (
2
+
+
=
z z
z
z G
En matlab
>>num=[0.5 0.3];
>>den=[1 -1.5 0.8];
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Para determinar la respuesta en el tiempo para una entrada escaln unitario de
este sistema se usa el comando filter(num,den, u) indicando el vector del
numerador y del denominador y la seal escaln definida como u(k) entre
parntesis.
num=[0.5 0.3];
den=[1 -1.5 0.8];
u= ones(1,41);
y=filter(num,den,u);
plot(y,'o')
El comando filter hace un calculo numrico, pero no realiza la grafica
directamente, por lo cual hay que utilizar el comando plot para obtener un
resultado grafico.
MatLab presenta la respuesta en el tiempo en la ventana de figuras:
Para determinar la respuesta en el tiempo para una entrada impulso unitario se
usa el comando filter(num,den, u) indicando el vector del numerador y del
denominador y la seal impulso definida como u(k) entre parntesis.
num=[0.5 0.3];
den=[1 -1.5 0.8];
u= [1 zeros(1,40)];
y=filter(num,den,u);
plot(y,'o')
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Y se obtiene en la ventana de figuras
LECCIN 20. RESPUESTA EN FRECUENCIA DE SISTEMAS
Para el estudio de un sistema en el dominio de la frecuencia existen tres
herramientas disponibles en MatLab que son: los diagramas de Bode, de
Nyquist y de Nichols.
Para obtener el diagrama de Bode de una funcin de transferencia, se definen
dos vectores cuyos elementos son los coeficientes de los polinomios del
numerador y del denominador en potencias decrecientes de s. Estos vectores
son usados en el comando bode con la siguiente sintaxis:
bode(num,den).
Por ejemplo, se define la funcin de transferencia:
4 3
1
) (
2
+ +
=
s s
s G
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
En Matlab
>>num=[1];
>>den=[1 3 4];
>>bode(num,den)
En el diagrama de figuras se observa el diagrama de Bode
Para especificar un rango deseado de frecuencias en las cuales se desea
obtener el diagrama de Bode, se emplea un vector de frecuencias en el que se
especifica la frecuencia inicial, el incremento y la frecuencia final. Por ejemplo:
>>W=0:0.1:100;
>>bode(num,den,W)
Este comando muestra el diagrama de Bode entre 0 y 100 rad/s.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Otra herramienta de anlisis en el dominio en la frecuencia que ofrece MatLab
es el diagrama de Nichols. Para obtener el diagrama de Nichols se utiliza el
comando nichols, cuya sintaxis es igual a la del comando bode.
Si se define num como el vector de los coeficientes del polinomio del
numerador y den como el del denominador:
>>num=[1];
>>den=[1 3 4];
>>nichols(num,den)
MatLab presenta en la ventana de figuras el diagrama de Nichols:
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Otra herramienta de anlisis en el dominio en la frecuencia que ofrece MatLab
es el diagrama de Nyquist. Para obtenerlo se utiliza el comando nyquist, con
sintaxis igual a la de los dos comandos anteriores
>>num=[1];
>>den=[1 6 5];
>>nyquist(num,den)
MatLab presenta en la ventana de figuras el diagrama de Nyquist:
Para obtener el margen de ganancia, el margen de fase, la frecuencia de cruce
de ganancia y la frecuencia de cruce de fase MatLab dispone del comando
margin.
Margin (num,den) devuelve el diagrama de Bode con el calculo de margen de
fase y margen de ganancia. Por ejemplo
num=[1];
den=[1 0.5 2];
margin(num,den)
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
El comando [Gm,Pm,Wcg,Wcp] = margin(num,den) devuelve los valores
numericos de margen de fase, margen de ganancia y las frecuencias en las
cuales se dan estos cruces. Por ejemplo
num=[1];
den=[1 0.5 2];
[Gm,Pm,Wcg,Wcp]=margin(num,den)
Gm =
Inf
Pm =
53.6248
Wcg =
NaN
Wcp =
1.6103
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
S SE EG GU UN ND DA A U UN NI ID DA AD D
MODELAMIENTO MATEMTICO Y FUNDAMENTOS DE
PROGRAMACIN
CAPTULO 2
OPERACIONES CON ARREGLOS
LECCIN 21. VECTORES Y CADENAS (Concepto y Definicin)
En la mayora de lenguajes de programacin las matrices y los vectores se
constituyen como un conjunto de datos del mismo tipo que son agrupados bajo
un mismo nombre y donde se especifica la cantidad de elementos que los
componen, en Matlab para definir una matriz o un vector no es necesario
establecer su tamao, el programa determina el numero de filas y de columnas
de acuerdo al nmero de elementos que se proporcione.
Los vectores se definen por filas o por columnas, por ejemplo un vector fila x se
expresa:
>>x=[1 5 6]
La respuesta de matlab es
x=
1 5 6
Un vector columna se expresa como
y=[1; 3; 6]
y se observa en la pantalla como
y=
1
3
6
2.1. OPERACIN CON VECTORES
Matlab permite realizar operaciones con vectores y con matriz de datos. Las
siguientes instrucciones nos permiten la manipulacin de vectores.
Dado los vectores p1 y p2, tenemos
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
p1+p2, p1-p2 Operaciones bsicas con vectores
p Transpuesta de un vector
p=a:n:b Genera un vector cuyas componentes van desde a hasta b
con intervalos de n
p(n) Accede a la componente n del vector p
k*p1 Multiplica el vector p1 por el escalar k
p1.*p2 Multiplica elemento a elemento los vectores p1 y p2
p1.^n Eleva a la ensima cada componente de p1.
En la siguiente tabla se muestran algunos ejemplos de las operaciones con
vectores.
1. [1 3 5 7] + [2 4 6 4]
p1=[1 3 5 7];
p2=[2 4 6 4];
p1+p2
ans =
3 7 11 11
1. Calcular la transpuesta
del siguiente vector
[1 3 5 7]
p1=[1 3 5 7];
p1'
ans =
1
3
5
7
2. Hallar el componente
nmero 3 del siguiente
vector
[1 3 5 7]
p1=[1 3 5 7];
p1(3)
ans =
5
4. Calcular 5*[1 3 5 7]
p1=[1 3 5 7];
5*p1
ans =
5 15 25 35
3. Multiplicar componente a
componente los
siguientes vectores
[1 3 5 7]
[2 4 6 4]
p1=[1 3 5 7];
p2=[2 4 6 4];
p1.*p2
ans =
2 12 30 28
4. Elevar al cuadrado las
componentes de
[1 3 5 7]
p1=[1 3 5 7];
p1.^2
ans =
1 9 25 49
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
2.2. FUNCIONES QUE ACTAN SOBRE VECTORES
En la siguiente tabla se muestran algunas de las funciones que permiten
trabajar con vectores exclusivamente, tomando a x como un vector tenemos:
Funcin Descripcin
[max,pos]=max(x) Devuelve el valor mximo de x y la posicin que
ocupa
min(x) Devuelve el valor mnimo y la posicin que ocupa
sum(x) Suma los elementos de un vector
mean(x) Retorna el valor medio de los elementos de un
vector
prod(x) Producto de los elementos de un vector
[y,i]=sort(x) Ordena de menor a mayor los elementos del vector
x. Devuelve el vector ordenado en y, y un vector i
con las posiciones iniciales en x de los elementos
ordenados
Diseo: Juan Monroy
Estas funciones se pueden aplicar a los vectores columna que componen una
matriz, si estas funciones se quieren aplicar a las filas de la matriz basta aplicar
dichas funciones a la matriz traspuesta.
LECCIN 22. MATRICES (Concepto y Definicin)
En Matlab la matriz es un conjunto de datos del mismo tipo al cual debe
asignrsele un nombre. Para definir una matriz no hace falta establecer
previamente su tamao ya que Matlab lo determina de acuerdo al nmero de
elementos que se ingresan. Las matrices se definen por filas, los elementos de
una misma fila estn separados por espacios o comas, y las filas estn
separadas por enter o punto y coma (;).
Por ejemplo la matriz
(
(
(

=
9 8 7
6 5 4
3 2 1
A
Se define e ingresa en Matlab como
>> A=[1 2 3; 4 5 6; 7 8 9]
A =
1 2 3
4 5 6
7 8 9
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Y lo muestra as:
22.1. OPERACIN CON MATRICES
Matlab permute realizar las operaciones bsicas al igual que con los vectores y
adems proporciona comandos adicionales para desarrollar otras operaciones.
Los comandos bsicos son los siguientes. Dados las matrices a1 y a2:
a1+a2, a1-a2 Operaciones bsicas con matrices
a Transpuesta de la matriz a
a(n,m) Accede a la componente n,m de una matriz a
k*a Multiplica la matriz a por el escalar k
a1.*a2 Multiplica elemento a elemento las matrices a1 y a2
a.^n Eleva a la ensima cada componente de a1.
Inv (a) Calcula la inversa de una matriz
Det (a) halla el determinante de a
reshape(a,x,y) cambia el orden de una matriz
b=a(:) convierte la matriz a en un vector
ones (n) Crea una matriz cuadrada de orden n cuyos componentes
son unos
eye (n) Crea una matriz diagonal de orden n
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
A continuacin se presentan algunos ejemplos
1.
(
(
(

+
(
(
(

3 2 5
6 4 8
1 7 1
5 9 3
7 6 1
8 4 2
a1=[2 4 8;1 6 7; -3 9 5];
a2=[1 7 -1;8 4 6;-5 2 3];
a1+a2
ans =
3 11 7
9 10 13
-8 11 8
2. Calcular la transpuesta de
(
(
(

5 9 3
7 6 1
8 4 2
a1=[2 4 8;1 6 7; -3 9 5];
a1'
ans =
2 1 -3
4 6 9
8 7 5
2. Calcular la inversa de
(
(
(

5 9 3
7 6 1
8 4 2
a1=[2 4 8;1 6 7; -3 9 5];
inv(a1)
ans =
-0.7174 1.1304 -0.4348
-0.5652 0.7391 -0.1304
0.5870 -0.6522 0.1739
3. Encontrar el
componente (2,3) de la
matriz
(
(
(

5 9 3
7 6 1
8 4 2
a1=[2 4 8;1 6 7; -3 9 5];
a1(2,3)
ans =
7
4. Cambiar el orden de la
siguiente matriz
(
(
(

1 5 9 3
3 7 6 1
6 8 4 2
a=[2 4 8 6;1 6 7 3; -3 9 5 1];
reshape(a,2,6)
ans =
2 -3 6 8 5 3
1 4 9 7 6 1
7. Crear una matriz diagonal
de orden 4
eye(4)
ans =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
22.2. FUNCIONES QUE ACTAN SOBRE MATRICES
En la siguiente tabla se muestran algunas de las funciones para el manejo de
matrices, por supuesto que exige que sus argumentos sean matrices (A).
Funcin Descripcin
V = poly(A) Devuelve un vector v con los coeficientes del
polinomio caracterstico de la matriz cuadrada A
t = trace(A) Retorna la traza t (suma de los elementos de la
diagonal) de una matriz cuadrada A
[m,n] = size(A) Devuelve el nmero de filas m y de columnas n de
una matriz rectangular A
N = size(A) Devuelve el orden de una matriz cuadrada A
nf = size(A,1) Devuelve el nmero de filas de A
nc = size(A,2) Retorna el nmero de columnas de A
exp(A) Calcula la exp a cada uno de los elementos de la
matriz A
sqrt(A) Calcula la raz cuadrad a cada uno de los
elementos de la matriz A
log(A) Calcula el logaritmo en base diez a cada uno de los
elementos de la matriz A
B = inv(A) Calcula la inversa de A.
D = det(A) Retorna el determinante d de la matriz cuadrada A
X = linsolve(A,b) La funcin linsolve permite resolver sistemas de
ecuaciones lineales. Esta funcin no trata de
averiguar las caractersticas de la matriz que
permitan hacer una resolucin ms eficiente: se fa
de los datos suministrados por el usuario. Si son
incorrectos arrojara datos de igual tipo sin ningn
mensaje de error.
Diseo: Juan Monroy
LECCIN 23. OTRAS FORMAS DE DEFINIR MATRICES
Adems de la alternativa de definir una matriz a partir del teclado, es posible en
MATLAB utilizar otras formas ms potentes y generales de definir y/o modificar
matrices.
23.1. TIPOS DE MATRICES PREDEFINIDOS
MATLAB dispone de varias funciones orientadas que permiten definir
fcilmente matrices de tipos particulares.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Algunas de estas funciones son las siguientes:
Funcin Descripcin
eye(3) forma la matriz unidad de tamao (33)
zeros(3,2) forma una matriz de ceros de tamao (32)
ones(2) forma una matriz de unos de tamao (22)
linspace(x1,x2,n) genera un vector con n valores igualmente
espaciados entre x1 y x2
logspace(d1,d2,n) genera un vector con n valores espaciados
logartmicamente entre 10^d1 y 10^d2. Si d2 es pi,
los puntos se generan entre 10^d1 y pi
rand(4) forma una matriz de nmeros aleatorios entre 0 y 1,
con distribucin uniforme, de tamao (44)
randn(3) forma una matriz de nmeros aleatorios de tamao
(33), con distribucin normal, de valor medio 0 y
varianza 1.
magic(4) crea una matriz (44) con los nmeros 1, 2, ... 4*4,
con la propiedad de que todas las filas y columnas
suman lo mismo
kron(x,y) produce una matriz con todos los productos de los
elementos del vector x por los elementos del vector
y. Equivalente a x'*y, donde x e y son vectores fila
compan(pol) construye una matriz cuyo polinomio caracterstico
tiene como coeficientes los elementos del vector
pol (ordenados de mayor grado a menor)
Diseo: Juan Monroy
Existen otras funciones que puede consultar en el archivo matlab70primero.pdf
de la documentacin anexa
23.2. FORMACIN DE UNA MATRIZ A PARTIR DE OTRAS
MATLAB permite crear una nueva matriz a partir de otra o de otras, pero
requiere de dos funciones auxiliares:
[m,n]=size(A) devuelve el nmero de filas y de columnas de la matriz A.
Si la matriz es cuadrada basta recoger el primer valor de retorno
n=length(x) calcula el nmero de elementos de un vector x
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Funcin Descripcin
zeros(size(A)) Forma una matriz de ceros del mismo orden de la
matriz A previamente creada
ones(size(A)) Crea una matriz de unos del mismo orden de la
matriz A previamente creada
A=diag(x) Forma una matriz diagonal A cuyos elementos
diagonales son los elementos del vector existente x
x=diag(A) Genera un vector x a partir de los elementos de la
diagonal de la matriz A ya existente
diag(diag(A)) Crea una matriz diagonal a partir de la diagonal
principal de la matriz A
blkdiag(A,B) Genera una matriz diagonal de submatrices a partir
de las matrices A y B
Triu(A) Forma una matriz triangular superior a partir de una
matriz A.
Tril(A) Forma una matriz triangular inferior a partir de una
matriz A.
23.3. OPERADOR DOS PUNTOS (:)
Este operador se puede usar de varias formas.
Ejemplos:
Definir un vector x de forma tal que sus elementos estn compuestos
por los nmeros dados en un rango. El incremento por defecto es de 1,
>> x=5:10
x =
5 6 7 8 9 10
Definir un vector en un rango dado, con un incremento especfico
>> x=5:1.5:10
x =
5.0000 6.5000 8.0000 9.5000
Extraer los elementos de una fila de la matriz A
>> A=magic(3)
A =
15 0 6
7 32 7
1 22 20
El siguiente comando extrae los 2 primeros elementos de la segunda
fila:
>> A(2, 1:2)
ans =
7 32
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
El siguiente comando extrae todos los elementos de la primera fila:
>> A(1, :)
ans =
15 0 6
Los elementos de la ltima fila se extraen con el comando
>> A(end, :)
ans =
1 22 20
Extraer los elementos de determinadas filas
>> A([1 3],:)
ans =
15 0 6
1 22 20
Reemplazar los elementos de determinadas filas de una matriz B por las de otra matriz A
>> B([1 2 3],:)=A(1:3,:)
B =
15 0 6
7 32 7
1 22 20
LECCIN 24. ESTRUCTURAS
Las estructuras son elementos que pueden almacenar variables de diferente
tipo bajo un mismo nombre, por ejemplo podemos crear una estructura que
contenga el nombre del estudiante, cdigo y genero. A diferencia de los
lenguajes de programacin, no hace falta definir previamente el modelo o
patrn de la estructura.
Una posible forma de hacerlo es crear uno a uno los distintos campos, como en
el ejemplo siguiente:
>> estudiante.nombre='Pedro'
estudiante =
nombre: 'Pedro'
>> estudiante.codigo=123456789
estudiante =
nombre: 'Pedro'
codigo: 123456789
>> estudiante.genero=M
estudiante =
nombre: 'Pedro'
codigo: 123456789
genero=M
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Para el acceso a los miembros o campos de una estructura se utiliza el
operador punto (.), este se ubica entre el nombre de la estructura y el nombre
del campo (por ejemplo: estudiante.nombre).
Tambin puede crearse la estructura por medio de la funcin struct():
>> estudiante = struct('nombre', 'Pedro', 'codigo', 76589,genero,M)
estudiante =
nombre: 'Pedro'
codigo: 123456789
genero=M
Pueden crearse vectores y matrices (e hipermatrices) de estructuras. La
siguiente instruccin da un ejemplo:
>> estudiante (8) = struct('nombre', 'Pedro', 'codigo', 76589,genero,M)
Por medio de esta instruccin se crea un vector de 8 elementos donde el
octavo elemento es inicializado con los argumentos de la funcin struct(); el
resto de los campos se inicializan con valores vacios
Para aadir nuevos campos a la estructura simplemente se realiza como si se
accediera a l para darle un valor
>> estudiante(5).edad=44;
24.1. FUNCIONES PARA OPERAR CON ESTRUCTURAS
Algunas de las funciones que se pueden utilizar en Matlab para el manejo de
las estructuras son las siguientes:
Funcin Descripcin
fieldnames() Devuelve un vector de celdas con cadenas de
caracteres que recogen los nombres de los campos
de una estructura
isfield(E,s) Determina si la cadena s es un campo de una
estructura E
isstruct(E) Permite determinar si E es o no una estructura
rmfield(E,s) Elimina el campo s de la estructura E
getfield(E,s) Retorna el valor del campo especificado s. de la
estructura E.
setfield(E,s,v) Asigna el valor v al campo s de la estructura E.
Diseo: Juan Monroy
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
24.2. ESTRUCTURAS ANIDADAS
MATLAB permite definir estructuras anidadas, es decir estructuras con
campos que a la vez son estructuras. Para acceder a los campos de la
estructura ms interna se utiliza dos veces el operador punto (.), como puede
verse en el siguiente ejemplo
>> clase=struct('Zona','Boyac','Cead','Sogamoso', ...
'estudiante', struct('nombre','Maria', 'edad',25))
clase =
Zona: 'Boyac'
Cead: 'Sogamoso'
estudiante: [1x1 struct]
>> clase.estudiante(2).nombre='Jos';
>> clase.estudiante(2).edad=27;
>> clase.estudiante(2)
ans =
nombre: 'Jos'
edad: 27
>> clase.alum(1)
ans =
nombre: 'Maria'
edad: 25
LECCIN 25. APLICACIONES
Retomando el ejercicio de la Leccin 10 en donde se peda encontrar las
corrientes de malla I
1
, I
2
e I
3
del circuito:
+
-
Vs1
10V
R5
10
R4
5
R3
8
R2
4
R1
10
Se Define el sistema de ecuaciones de malla del circuito.
0 23 5 8
10 5 9 4
0 8 4 22
3 2 1
3 2 1
3 2 1
= +
= +
=
I I I
I I I
I I I
I
2
I
3
I
1
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Resolviendo el sistema proseguimos a encontrar el determinante de la matriz
A:
2740
23 5 8
5 9 4
8 4 22
=



= A
Una vez que hemos encontrado el determinante de la matriz A procedemos a
buscar las incgnitas del sistema en este caso I
1
, I
2
e I
3
.
A I 4848 . 0
2740
1320
23 5 0
5 9 10
8 4 0
1
= =
A



=
A I 61 . 1
2740
4420
23 0 8
5 10 4
8 0 22
2
= =
A



=
A I 51 . 0
2740
1420
0 5 8
10 9 4
0 4 22
3
= =
A


=
Matlab nos permite el clculo de las corrientes mediante el clculo de los
determinantes de la siguiente forma
a=[22 -4 -8;-4 9 -5;-8 -5 23];
det(a)
ans =
2740
b=[0 -4 -8;10 9 -5;0 -5 23];
I1=det(b)/det(a)
I1 =
0.4818
a=[22 -4 -8;-4 9 -5;-8 -5 23];
c=[22 0 -8;-4 10 -5;-8 0 23];
I2=det(c)/det(a)
I2 =
1.6131
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
d=[22 -4 0;-4 9 10;-8 -5 0];
a=[22 -4 -8;-4 9 -5;-8 -5 23];
I3=det(d)/det(a)
I3 =
0.5182
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
S SE EG GU UN ND DA A U UN NI ID DA AD D
MODELAMIENTO MATEMTICO Y FUNDAMENTOS DE
PROGRAMACIN
CAPTULO 3
FUNDAMENTOS DE PROGRAMACIN Y LENGUAJES DE DESCRIPCIN
DE HARDWARE
LECCIN 26. CONCEPTOS Y TIPOS DE DATOS
En esta unidad se busca conocer los elementos bsicos en la programacin y a
partir de ellos definir soluciones a problemas de programacin a bajo nivel,
conceptos fundamentales para el manejo de circuitos programables.
26.1. CONCEPTOS
Un algoritmo es un conjunto de pasos lgicos, exentos de ambigedad, que
buscan solucionar un problema determinado.
Los algoritmos se pueden representar a partir de diagramas de flujo o de
pseudocdigo.
Pseudocdigo: El pseudocdigo utiliza palabras del lenguaje cotidiano para
reasentar as el conjunto de pasos a seguir. Dentro de las palabras estn:
PALABRA DESCRIPCIN
Inicio
Determina el punto de partida del algoritmo, o de una
subrutina
Fin Finaliza el algoritmo, o una subrutina
Leer
Representa la captura de informacin a travs de
cualquier medio o dispositivo de entrada.
Imprimir
Representa la visualizacin de informacin a travs de
cualquier medio o perifrico de salida.
SI..Entonces Permite disear condicionales
SI..Entonces..De lo
contrario
Adems de la condicin permite determinar las
instrucciones a ejecutar si la condicin no se cumple.
Y, O
Permiten realizar operaciones lgicas al disear una
condicin
En caso de
Evala el valor de una variable dentro de un conjunto
de posibles alternativas.
Para
Determina el nmero de veces a repetir un conjunto
de instrucciones.
Mientras
Repite un grupo de instrucciones tantas veces como
se cumpla una condicin evaluada al inicio de cada
ciclo repetitivo.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Hacer..mientras
Repite un grupo de instrucciones tantas veces como
se cumpla una condicin evaluada al final de cada
ciclo repetitivo.
Diseo: Juan Monroy
Diagrama de Flujo: El diagrama de flujo utiliza smbolos grficos para
representar el conjunto de pasos del algoritmo. Dentro de estos smbolos
bsicos y que se requieren para estructurar algoritmos para programacin a
bajo nivel tenemos:
SMBOLO DESCRIPCIN
Determina el punto de partida del algoritmo
Finaliza el algoritmo, o permite definir el inicio de una
subrutina
Representa la captura de informacin a travs de
cualquier medio o dispositivo de entrada.
Representa la visualizacin de informacin a travs de
cualquier medio o perifrico de salida.
Permite disear condicionales
Permite estructurar el desarrollo de una operacin
aritmtica o lgica.
Indica el sentido en el que se ejecutan las
instrucciones
Diseo: Juan Monroy
26.2. TIPOS DE DATOS.
Aunque para la programacin abajo nivel se manejan nicamente
representaciones binarias de la informacin, es importante reconocer que a
nivel de computadores existen los siguientes tipos de datos:
Numricos: Aquel conjuntos de datos que representa cifras numricas
ya sea su parte entera nicamente (nmeros enteros), o su parte entera
y decimal (nmeros reales).
Ejemplo
Enteros: 45; 56; 78; -34
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Reales: 23.56; 5789.09; 0.00000067;
Alfanumricos: Conjunto de datos formados por informacin de tipo
carcter, la cual puede agruparse para formar las cadena de caracteres,
o presentarse de manera individual formando el carcter.
Ejemplo
Caracteres: 4; i; A
Cadenas: hola Mundo; Unad; Cad Electrnica 1911
Bolanos: Son datos que pueden presentar nicamente dos valores
posibles, ya se un 1 lgico o un cero lgico, los cuales representan la
presencia o ausenta de voltaje y dependiendo del contexto pueden
significar la presencia de 5 voltios y 0 voltios respectivamente, 3.3 v y 0
v, etc.
LECCIN 27. INSTRUCCIONES E/S, DE SELECCIN
27.1. INSTRUCCIONES DE ENTRADA/SALIDA
Como se mostr con anterioridad, existen elementos que permiten definir el
procedimiento para la captura de informacin y la visualizacin de resultados,
en cada uno de estos procesos interviene elementos tanto para la captura de
los datos, as como para su visualizacin, estos elementos pueden ser por
ejemplo sensores, interruptores, pulsadores, cualquier elementos que permita
realizar la captura de una seal, de igual forma para la visualizacin podemos
utilizar: leds, display siete segmentos, matriz de leds, motores, etc, es decir
cualquier elemento que permita reflejar el resultado de la informacin
procesada; sin embargo a nivel de algoritmo esto no tiene relevancia ya que
solo necesitamos representar la operacin, esto cobra importancia en el
momento del diseo del circuito.
Diseo: Juan Monroy
PROCESAMIENTO
Sensores
Interruptores
Pulsadores
Salida Ctos
Leds
Display Siete
Segmentos
Matriz de leds
Motores
ENTRADA SALIDA
Pseudocdigo: IMPRIMIR
Diagrama
de Flujo
Pseudocdigo: LEER
Diagrama
de Flujo
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
27.2. INSTRUCCIONES DE SELECCIN
Este tipo de instrucciones permite decidir entre ejecutar un grupo de
instrucciones o no, dependiendo de que se cumpla o no una condicin. La
condicin se evala para determinar si es cierta, es decir si su valor de verdad
es verdadero.
27.2.1. Comparadores. La condicin se disea comparando dos elementos a
parir de los siguientes comparadores:
Mayor que >
Menor que <
Mayor o igual >=
Menor o igual <=
Igual =
Diferente <>
Ejemplo
a>b ; la respuesta a esta comparacin solo puede ser verdadera o
falsa
A>=56 ;se compara una variable con una constante
78<=B ; no se puede determinar su valor de verdad ya que se
desconoce el valor de la variable B
34<>56 ;su valor de verdad (verdadero) se puede determinar ya
que se estn comparando dos constantes
27.2.2. Operadores lgicos. Si se necesita hacer ms de una comparacin, se
requiere el uso de operadores lgicos, los cuales operan los valores de verdad
de cada comparacin para as llegar a un nico valor.
Los operadores lgicos utilizados son el y y el o, cuyas tablas de verdad se
relacionan a continuacin.
Operador y, ^, and
C1 C2 C1 y C2
V V V
V F F
F V F
F F F
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Operador o, v, or
C1 C2 C1 y C2
V V V
V F F
F V F
F F F
27.2.3. Condicionales. Una vez tratados los comparadores y operadores
lgicos vamos a trabajar con la condicional a partir de un ejemplo y mostrando
el algoritmo en pseudocdigo y en diagramas de flujo, pero antes vamso a
considerar la sintaxis de cada uno de ellos
Sintaxis Diagrama de Flujo
La ubicacin del Si o el No, pueden ir en cualquiera de las puntas de rombo,
lo importante es definir claramente cada uno de los caminos a tomar dad la
respuesta cierta falsa de la condicin.
Condicin
Instrucciones a
ejecutar si se
cumple la
condicin
Instrucciones a
ejecutar si NO
se cumple la
condicin

No
Si
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Sintaxis Pseudocdigo
Si (Condicin) entonces
_______
_______ Instrucciones a ejecutar si se cumple la condicin
_______
De lo contrario
_______
_______ Instrucciones a ejecutar si no se cumple la condicin
_______
Fin si
Es importante aclarar que no es posible que exista un De lo contrario sin la
presencia de un Si entonces
27.2.4. Ejemplos
Ejemplo 1. Suponga que s requiere realizar un programa que determine cuales
el mayor de dos nmeros:
Solucin.
Es necesario tener en cuenta que los dos nmeros deben ser ledos (ingresar a
travs de cualquier dispositivo de entrada), los vamos a denominar N1 y N2
Pseudocdigo
Inicio
Leer N1
Leer N2
Si N1>N2 entonces
Imprimir N1
De lo contrario
Imprimir N2
Fin Si
Fin
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Diagrama de Flujo
Ejemplo 2. Realizar un algoritmo para determinar cual es el mayor de tres
nmeros.
Pseudocdigo
Inicio
Leer N1,N2,N3
Si (N1>N2) y (N1>N3) entonces
Imprimir N1
De lo contrario
Si (N2>N3)
Imprimir N2
De lo contrario
Imprimir N3
Fin si
Fin si
Fin
El primer Si determina si el mayor de los tres nmero es N1, si esto no es
cierto, queda por evaluar cual de los otros dos nmeros es mayor, N2 o N3.
Inicio
N1, N2
N1>N2
N2 N1
Fin
Si No
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Diagrama de Flujo
Ejemplo 3. Realice un algoritmo que determine si una vocal leda es abierta o
cerrada
Pseudocdigo
Inicio
Leer vocal
Si (vocal=a) o (vocal=e) o (vocal=o) entonces
Imprimir Vocal Abierta
De lo contrario
Imprimir Vocal Cerrada
Fin si
Fin
Es necesario utilizar el operador o ya hay tres posibilidades de que la vocal
sea abierta, por tanto al evaluar cada una de ellas a, e y o se debe llegar a
la misma respuesta.
Inicio
N1, N2,N3
N1>N2 y
N1>N3
N3
N1
Fin
Si No
N2>N3
N2
Si
No
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Diagrama de Flujo
LECCIN 28. INSTRUCCIONES REPETITIVAS
Ordenes que permiten repetir un nmero determinado de veces la ejecucin de
un grupo de instrucciones. Bsicamente encontramos tres tipos de
instrucciones:
28.1 PARA. Se recomienda su uso cuando se conoce de antemano el
nmero de veces a repetir.
Sintaxis
Para variable=valor inicial, hasta valor final, variable=variable+incremento
_________
_________ Instrucciones a repetir
_________
Fin para
La variables es la que lleva el conteo del nmero de veces que se ha repetido
las instrucciones, por ello debe tener un valor inicial y un valor final, para poder
llevar el conteo es necesario determinar de cuanto en cuanto se cuenta, de ah
que sea necesario definir el incremento de la variable
Inicio
vocal
(vocal = a) O
(vocal = e) O
(vocal = o )
Vocal
Cerrada
Vocal
Abierta
Fin
Si No
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Ejemplo Realice un algoritmo para imprimir los nmero de 1 hasta 20
Pseudocdigo
Inicio
Para i=1, hasta 20, i=i+1
Imprimir i
Fin para
Fin
Diagrama de flujo
28.2 MIENTRAS. Se utiliza cuando es necesario verificar una condicin antes
de ejecutar cada uno de los ciclos posibles de repeticiones.
Sintaxis
Mientras (Condicin)
_________
_________ Instrucciones a repetir
_________
Fin Mientras
Ejemplo. Realice un programa que determine el nmero de divisores de un
nmero m. Suponemos la existencia de una funcin Residuo que calcula el
resto de una divisin.
Inicio
i
Fi
n
Si
No
i=1
i=20
i=i+1
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Pseudocdigo
Inicio
Leer m
Divisor=1
Cantidad_divisores=0
Mientras (Divisor<=m)
If (Residuo(m,Divisor)=0) entonces
Cantidad_divisores=Cantidad_divisores+1
Fin si
Divisor=Divisor+1
Fin Mientras
Imprimir (Cantidad_divisores)
Fin
Diagrama de Flujo
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
28.3 HACER.. MIENTRAS. Se usa cuando es necesario repetir un grupo de
instrucciones y al final de cada ciclo determinar si es necesario volver a
repetir o no.
Inicio
m
Divisor=1
Cantidad_divisores=0
Divisor<=m
Residuo(m,Divisor) =0
Cantidad_divisores=Cantidad_divisores+1
Si
Si
Divisor=Divisor+1
No
No
Cantidad_divisores
Fin
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Sintaxis
Hacer
_________
_________ Instrucciones a repetir
_________
Mientras (Condicin)
Ejemplo. Realice un programa que realice una divisin entera entre dos
nmeros A y B a partir de restas sucesivas. Suponemos A mayor que B
Pseudocdigo
Inicio
Leer A
Leer B
Cociente=0
Hacer
A=A-B
Cociente=Cociente+1
Mientras (A>B)
Imprimir (Cociente)
Fin
Diagrama de Flujo
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
LECCIN 29. FUNDAMENTOS DE PROGRAMACION EN
MATLAB
MATLAB es una aplicacin en la que se puede programar, es decir configurar
una serie de instrucciones para que se realice una tarea especfica, no es tan
potente como un lenguaje de Programacin como C++ o Java, pero ofrece un
buen nmero de posibilidades y se convirtindose en una herramienta
importante de aprendizaje en los fundamentos de programacin, esenciales en
la implementacin de circuitos programables.
29.1. OPERADORES RELACIONALES
MATLAB utiliza la siguiente simbologa para el manejo de operadores
relacionales:
< menor que
> mayor que
<= menor o igual que
>= mayor o igual que
Inicio
A,B
Cociente=0
A>B
Cociente=Cociente+1
Si
A=A-B
No
Cociente
Fin
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
== igual a
~= diferente a
Al igual que en C, si una comparacin se cumple el resultado es 1 (true),
mientras que si no se cumple es 0 (false). Recprocamente, cualquier valor
distinto de cero es considerado como true y el cero equivale a false.
Ejemplo
>> A=[5 -3;2 1]; B=[0 -3;1 7];
>> A==B
ans =
0 1
0 0
29.2. OPERADORES LGICOS
La simbologa que utiliza MATLAB para los operadores lgicos son:
Operador Descripcin
& (y). Se evalan siempre el valor de verdad de los dos
operandos, el resultado es true slo si ambos son true.
&& (y breve). No necesariamente termina evaluando los dos
operandos, si el primer operando es false ya no se
evala el segundo, esto porque el resultado final ya no
puede ser ms que false. Es muy til sobre todo cuando
se trabaja con matrices, reduciendo el tiempo de clculo
y proceso
| (o) Retorna false si al evaluar ambos operandos cada
uno de ellos es false de lo contrario devuelve true.
|| (o breve). si el primer operando es true ya no se evala
el segundo, pues el resultado final no puede ser ms
que true.
~ Negacin lgica, si el operando es true retorna false
xor(A,B) Realiza un "o exclusivo", es decir, devuelve false si
ambos operandos tienen el mismo valro de verdad de lo
contrario retorna true
Diseo: Juan Monroy
El siguiente ejemplo muestra como se utilizan los operadores y a la vez como
filtrar un posible error de divisin por cero al usar un operador breve
r = (b~=0) && (a/b>0);
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
29.3. CONDICIONALES
MATLAB dispone de instrucciones sentencias para realizar las condicionales,
vistas en las alecciones anteriores
29.3.1. INSTRUCCIN IF
Sintaxis general
if condicion
sentencias
end
Sintaxis de bifurcacin mltiple es decir se concatenan las condiciones en
funcin de lo que se desea evaluar o ejecutar
if condicion1
bloque1
elseif condicion2
bloque2
elseif condicion3
bloque3
else % opcin por defecto para cuando no se cumplan las condiciones 1,2,3
bloque4
end
Ejemplo
>>r=30000;
>>if r==10000
disp (Resistencia de 10 kilo ohmios)
elseif r==20000
disp (Resistencia de 20 kilo ohmios)
elseif r==30000
disp (Resistencia de 30 kilo ohmios)
end
Resistencia de 30 kilo ohmios
29.3.2. INSTRUCCIN SWITCH
La instruccin switch realiza una tarea anloga a los if...else if concatenados.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Sintaxis
switch expresion
case Valor1,
bloque1
case {Valor2, Valor3, Valor4}
bloque2
...
otherwise, % opcin por defecto
bloque3
end
Los bloques de instrucciones deben ubicarse hacia la derecha segn la
dependencia de la instruccin anterior a ella, esto se hace para que el
programa resulte ms legible, resultando ms fcil ver dnde empieza y
termina la bifurcacin o el bucle. Es muy recomendable seguir esta prctica de
programacin.
En la sintaxis la palabra expresin hace referencia a la variable o resultado de
operacin que se pretende evaluar, este se compara con casa uno de los
posibles valores ubicados como Valor1, Valor2, etc, si resulta ser igual a uno
de ellos, se ejecuta el bloque de instrucciones que dependan de ello, si no
resulta ser igual a alguno de estos valores se ejecutar lo que dependa de
otherwise.
>>r=30000;
>>switch r
case 10000
disp (Resistencia de 10 kilo ohmios)
case 20000
disp (Resistencia de 20 kilo ohmios)
case 30000
disp (Resistencia de 30 kilo ohmios)
end
Resistencia de 30 kilo ohmios
29.4. LECTURA Y ESCRITURA INTERACTIVA DE VARIABLES
A continuacin se da una explicacin de cmo utilizar una forma sencilla de
leer variables desde teclado y escribir mensajes en la pantalla.
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
FUNCIN INPUT
La funcin input permite capturar un valor digitado por el usuario, para ello
permite imprimir un mensaje en la lnea de comandos de MATLAB, con el fin de
guiar al usuario en el proceso; despus de imprimir el mensaje, el programa
espera que el usuario teclee el valor numrico o la expresin; el usuario puede
teclear los valores de un vector o matriz o en general cualquier expresin, esta
es evaluada con los valores actuales de las variables de MATLAB y el
resultado se devuelve como valor de retorno.
Ejemplo
>> semestre = input('Por favor digite el semestre que cursa')
La variable semestre almacenar un valor de tipo numrico
Otra forma de emplear la funcin es estableciendo que no evale la expresin
introducida por el usuario (a travs del parmetro 's') as:
>> nombre = input('Digite su nombre?','s')
Ac la expresin digitada por el usuario no es evaluada y se almacena en la
cadena nombre como texto.
FUNCIN DISP
La funcin disp permite imprimir en pantalla un mensaje de texto o el valor de
una matriz, pero sin imprimir el nombre de la variable. En realidad, disp
siempre imprime vectores y/o matrices: las cadenas de caracteres son un caso
particular de vectores. Considrense los siguientes ejemplos de cmo se
utiliza:
>> disp('Gracias por su atencin ')
>> nombre = input('Digite su nombre?','s')
>> disp(nombre)
LECCIN 30. INSTRUCCIONES DE REPETICIN EN MATLAB
30.1. INSTRUCCIN FOR
La instruccin for repite un conjunto de instrucciones un nmero
predeterminado de veces. A continuacin se muestra su sintaxis en Matlab
for i=1:n
Instrucciones a repetir
end
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
Esto hace que la variable i tome los valores desde 1 hasta n, incrementndose
de a uno en uno por cada repeticin que ejecute.
Es posible hacer que los valores que tome la variable i, se asignen desde un
vector (vector_de_valores) as:
for i=vector_de_valores
Instrucciones a repetir
end
Tamben es posible determinar el valor del incremento as:
for i=m:-0.5:10
Instrucciones a repetir
end
La variable i toma valores desde m, decrementndose de -0.5 en -0.5 hasta
que sea menor a 10.
Una ltima sintaxis para la instruccin for es la siguiente (tenga en cuenta que
A es una matriz). Aca la variable i es un vector que va tomando en cada
iteracin el valor de una de las columnas de A.
for i=A
Instrucciones a repetir
end
Cuando se introducen interactivamente en la lnea de comandos, los for se
ejecutan slo despus de introducir la sentencia end que los completa.
A continuacin mostramos el cdigo en Matlab para el algoritmo ejemplo de la
instruccin Para dado en la Leccin 28.
>> for i=1:10
disp (i)
end
1
2
3
4
5
6
7
8
9
10
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
30.2. INSTRUCCIN WHILE
La estructura de la instruccin tiene la siguiente sintaxis
while condicion
Instrucciones a repetir
end
Los ciclos repetitivos terminan cuando todos los elementos de condicion sean
false (es decir, cero).
A continuacin mostramos el cdigo en Matlab para el algoritmo ejemplo de la
instruccin Mientras dado en la Leccin 28.
>> m = input('Por favor digite un nmero ');
Por favor digite un nmero 8
>>Divisor=1;
>>Cantidad_divisores=0;
>>while Divisor<=m
If mod(m,Divisor)==0
Cantidad_divisores=Cantidad_divisores+1;
end
Divisor=Divisor+1;
end
>>disp (Cantidad_divisores)
4
30.3. FUNCIONES EN MATLAB
Una funcin es un conjunto de instrucciones que cumplen una tarea especfica
y que se agrupan bajo un nombre, una funcin tiene nombre, valor de retorno
y argumentos; se invoca utilizando su nombre en una expresin o como un
comando ms. Las funciones se pueden definir en ficheros de texto *.m como
se explica mas adelante.
Considrense los siguientes ejemplos de llamada a funciones:
>> n=length(x);
calcula el nmero de elementos de un vector x
>> a = cos(ang);
Calcula el coseno del ngulo almacenado en ang
Facultad de Ciencias Bsica e Ingeniera
Programa de Ingeniera Electrnica
En MATLAB es posible manejar funciones que no tienen argumentos, stas no
llevan parntesis, por lo que a simple vista no es fcil diferenciarlas de simples
variables.
30.4. DEFINICIN DE FUNCIONES
Para definir las funciones es necesario digitar el cdigo como un archivo ASCII,
es decir un archivo tipo texto sin formato, para ello se puede utilizar cualquier
editor de texto y grabando el archivo sin formato y con extensin .m. La
primera lnea de un archivo que contenga el cdigo o instrucciones de una
funcin debe tener la forma: function [lista de valores de retorno] =
name(lista de argumentos) donde name es el nombre de la funcin. Entre
corchetes y separados por comas van los valores de retorno (siempre que
haya ms de uno), y entre parntesis tambin separados por comas los
argumentos. Puede haber funciones sin valor de retorno y tambin sin
argumentos. Los argumentos son los datos de la funcin y los valores de
retorno sus resultados. La ejecucin de una funcin termina cuando se llega a
su ltima sentencia ejecutable. Si se quiere forzar el que una funcin termine
de ejecutarse se puede utilizar la sentencia return, que devuelve
inmediatamente el control al entorno de llamada.
A continuacin se muestra un ejemplo de la forma como quedara la tpica
primer funcin a realizar cuando se aprende a programar
function holamundo()
dispo (hola Mundo)
end
Para ampliar el tema de la definicin o creacin de funciones consulte la pgina
76 de el archivo anexo matlab70primero.pdf donde se explica con mayor
detalle cada uno de los pasos a seguir, antes de hacer dicha consulta debe
inspeccionar la temtica del debugger para conocer el editor de texto de Matlab