domingo, 24 de octubre de 2010

Sockets en MATLAB

Pequeña aplicación de Cliente-Servidor en MATLAB, exportando las clases de Java ServerSocket y Socket.

Tiene un interfaz amigable al usuario, para correr aplicación primero se tiene que instalar el MCRInstaller, este es el runtime del MALTAB, el cual permite ejecutar la aplicación sin tener necesariamente instalado el MATLAB, dicha aplicación se desarrolló en MATLAB R2008b, solo para correr en modo localhost, puerto usado para la comunicación es el 1402.

Servidor

Cliente


Se adjunta la aplicación en *.exe y además los archivos *.m.

Para correr la aplicación desde los archivos *.m se tiene que abrir dos instancias de MATLAB, uno para el servidor y otro para el cliente. Respecto a la aplicación esta pesa 250MB ya que trae incluido el Runtime del MATLAB que no es otra cosa que el compilador necesario para poder correr la aplicación sin tener el MATLAB instalado.

Descargar : Archivos *.m

Descargar : Aplicación *.exe

sábado, 23 de octubre de 2010

Programación en MATLAB


MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es un software matemático que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M). Está disponible para las plataformas Unix, Windows y Apple Mac OS X.

Entre sus prestaciones básicas se hallan: la manipulación de matrices, la representación de datos y funciones, la implementación de algoritmos, la creación de interfaces de usuario (GUI) y la comunicación con programas en otros lenguajes y con otros dispositivos hardware. El paquete MATLAB dispone de dos herramientas adicionales que expanden sus prestaciones, a saber, Simulink (plataforma de simulación multidominio) y GUIDE (editor de interfaces de usuario - GUI). Además, se pueden ampliar las capacidades de MATLAB con las cajas de herramientas (toolboxes); y las de Simulink con los paquetes de bloques (blocksets).

Es un software muy usado en universidades y centros de investigación y desarrollo. En los últimos años ha aumentado el número de prestaciones, como la de programar directamente procesadores digitales de señal o crear código VHDL.

Fuente : Wikipedia


viernes, 2 de julio de 2010

“Circuito Controlador de Ascensor en Miniatura”

Introducción

La lógica digital es un área de la matemática aplicada a la electrónica. Esta es la base de los sistemas digitales, gracias a esta base es que hemos logrado desarrollar un circuito que actúa según las situaciones posibles de nuestro problema, el cual consiste en el control automático de todas las funciones de un ascensor.

En general este proyecto tiene como objetivo experimentar y demostrar la aplicación de los sistemas digitales de forma práctica y cotidiana como lo es un ascensor.

Las adaptaciones de los sistemas digitales en la actualidad divergen en distintas ramas y se extiende con gran magnitud, este es solo un ejemplo de cómo es que la electrónica digital es cada vez más necesaria para automatizar cada aspecto de la vida.

Diagrama de Bloques


Descripcion del Circuito

La idea es construir un circuito electrónico utilizando compuertas lógicas y otros componentes adicionales, para el control automático de todas las funciones de un ascensor. Para tener un modelo solo se trabajó en base a 3 pisos, esto nos dará una idea clara de cómo funciona el circuito, pudiendo así extenderlo a mas pisos si se desea, pero el hecho de trabajar solo con 3 pisos también implica tener en cuenta mucha variables como por ejemplo: Si el ascensor esta en 1º piso y la persona en el 3º, este debe de subir dos pisos y abrir la puerta, o si el ascensor esta en el 2º piso y la persona también , la puerta debe de abrirse inmediatamente. Si consideramos todas las posibles situaciones, tendremos 9 casos en total.

Como el circuito estará construido a base de compuertas lógicas es necesario convertir cada uno de los casos a unos y ceros, como se muestra el cuadro.

Diagrama Electrónico


Clickea para agrandar la imagen

Fotos




Link de descarga
Informe completo Del Circuito Controlador de Ascensor en Miniatura

Diagrama Electronico


Este Proyecto fue el ganador en la IV Semana de la Ciencia de la Computación 2009 - Feria de Tecnología, Escuela de Informática, Universidad Nacional de Trujillo, Perú.


miércoles, 10 de diciembre de 2008

EL AJEDREZ

Seguro que todos alguna vez en su vida escucharon algo sobre el juego de ajedrez. Se dice que es un juego en el cual el azar no tiene nada que ver. Bueno a manera de anécdota yo les podría asegurar eso ya que cuando tenía 8 años empecé a jugar ajedrez, tuve varios profesores y todos repetían lo mismo “No es cuestión de suerte que ganes o pierdas una partida”. En fin seguí jugando por 6 años mas…! Después deje el ajedrez un poco de lado y me dedique al básquet (creo que me estoy desviando del tema, solo quería aclarar que al ajedrez no es un juego de azar).
Un día estuve ordenando mi cuarto y encontré mi ajedrez… y se me vino a la mente “Y si hago un tutorial básico de ajedrez en C++” (Ya que por ahora lo único que hago es programar y programar y seguir programando.)


Bueno y manos a la obra…

  • Lo primero que hice fueron piezas

  • Luego hice una pequeña descripción para cada pieza.

Era necesario demostrarle al usuario como se desplazan las piezas en el tablero así que fue necesario implementar esto para cada pieza.

  • Por ejemplo para la Dama o Reyna (En el programa se muestra un movimiento a la vez, luego se muestran todos los posibles movimientos que puede realizar la pieza puesta en el centro del tablero).


También era necesario mostrar el tablero y como se ordenan las piezas dentro de él .





Por último puse la Historia del ajedrez y una pequeña introducción.


El programa lo pueden bajar del siguiente link:

TUTORIAL DE AJEDREZ


Gerardo Reaño Ortega
Estudiante de Ciencias de la Computación.
UNIVERSIDAD NACIONAL DE TRUJILLO.


Dp: Si al descargar el programa y ejecutar "tutorialdeajedrez.exe" el programa no esta centrado
tendra que confiurarlo.

  1. Ir a la barra superior y darle click derecho.
  2. Ir a propiedades.
  3. En tamaño del bufer en pantalla -> ancho 300 y alto 300
  4. En tamaño de la ventana -> ancho 300 y alto 300
  5. Escoger la opcion : Guardar propiedades para todas las ventanas con el mismo titulo