Método de Simplificación de Karnaugh



Empezando


     Existen dos formas diferentes de comenzar:

- Rellenar un mapa según los valores de una tabla (opción por defecto).

     Se empieza eligiendo los valores de la tabla T0, bien generando una aleatoria al pulsar el botón T5 o cambiando los valores manualmente mediante el uso de los botones T2, T3 o T4 si está disponible y las celdas de la tabla T0, cuyos valores van cambiando al ser pulsadas. Una vez la tabla tiene los valores deseados, se comprueba que la opción "Tabla->Mapa" (T1) está seleccionada (y por tanto el mapa M0 perfilado en rojo). A partir de ahora se deben cambiar los valores del mapa, bien pulsando en las celdas o haciendo uso de los botones M2, M3 y M4 si está disponible, para que se correspondan con los de la tabla generada.

- Rellenar una tabla según los valores de un mapa.

     Se empieza eligiendo los valores del mapa M0, bien generando uno aleatorio al pulsar el botón M5 o cambiando los valores manualmente mediante el uso de los botones M2, M3 o M4 si está disponible y las celdas del mapa M0, cuyos valores van cambiando al ser pulsadas. Una vez el mapa tiene los valores deseados, se comprueba que la opción "Mapa->Tabla" (M1) está seleccionada (y por tanto la tabla T0 perfilada en rojo). A partir de ahora se deben cambiar los valores de la tabla, bien pulsando en las celdas o haciendo uso de los botones M2, M3 y M4 si está disponible, para que se correspondan con los del mapa generado.

     Una vez elegidos los valores correspondientes, tanto en la tabla como en el mapa, se puede proceder a comprobar si son correctos pulsando S0. En caso de ser incorrectos aparecerá una cruz roja bajo los botones T5 o M5, dependiendo del elemento a corregir. Al cabo de cinco intentos fallidos se habilitará el botón S1, pudiendo acceder a la solución o seguir intentándolo. En caso de rellenar correctamente la tabla o mapa se accederá a la etapa de agrupación.



Etapas


Construcción - Etapa en la que el usuario crea una tabla (o mapa) con los valores que desee y edita los valores del mapa (o tabla) pulsando en sus celdas de manera que se correspondan. Durante esta etapa en cualquier momento se puede elegir rellenar el mapa de acuerdo a los valores de la tabla o viceversa mediante el uso de los botones T1 y M1 respectivamente, así como cambiar el orden de representación de las variables en el mapa pulsando sobre M6. El elemento a rellenar por el usuario se marcará siempre en rojo.

Agrupación - Durante esta fase cada celda del mapa se puede pulsar para seleccionarla. Al pulsar en "Crear lazo" (M7) se intentará crear una agrupación con las celdas actualmente seleccionadas si se considera un grupo correcto o se informará del error cometido por el usuario. Si una vez creado un lazo por algún motivo se desea eliminar basta con seleccionar, pulsando sobre cada celda del mapa (M0), todas las celdas que forman esa agrupación y pulsar entonces Eliminar Lazo (M8). En caso de querer borrar todos los lazos no hace falta seleccionar ninguno, basta con pulsar Eliminar Todos (M9). Para comprobar si la solución a esta fase es correcta se utilizan los mismos controles S0 y S1 que en la fase anterior.

Interpretación del resultado - Durante esta fase el usuario debe escribir en las casillas F0, F1, F2, F3, F5 y F7 la información requerida. Las casillas F4 y F6 no son rellenables.

Visionado de circuitos - Al terminar la fase de interpretación de resultados los símbolos marcados como C1, C2 y C3 aparecerán perfilados en rojo. Pulsando en cada uno de ellos se puede acceder a visionar los circuitos que se corresponden con las funciones F3, F4 y F6 utilizando distintos tipos de puertas lógicas.



Interfaz



Figura 1. Interfaz de la aplicación.



   I1 - Botón para cambiar el idioma a valenciano.
   I2 - Botón para cambiar el idioma a castellano.
   I3 - Botón para cambiar el idioma a inglés.


   O1 - Opción para simplificar mediante Suma de Productos (agrupar unos).
   O2 - Opción para simplificar mediante Producto de Sumas (agrupar ceros).
   O3 - Opción para trabajar con términos incógnita.
   O4 - Opción para trabajar con dos variables.
   O5 - Opción para trabajar con tres variables.
   O6 - Opción para trabajar con cuatro variables.


   T0 - Tabla de verdad.
   T1 - Botón para rellenar el mapa de acuerdo a los valores presentes en la tabla.
   T2 - Botón para rellenar la tabla de ceros.
   T3 - Botón para rellenar la tabla de unos.
   T4 - Botón para rellenar la tabla de términos incógnita.
   T5 - Botón para generar una tabla aleatoria.


   M0 - Mapa de Karnaugh.
   M1 - Botón para rellenar la tabla de acuerdo a los valores presentes en el mapa.
   M2 - Botón para rellenar el mapa de ceros.
   M3 - Botón para rellenar el mapa de unos.
   M4 - Botón para rellenar el mapa de términos incógnita.
   M5 - Botón para generar un mapa aleatorio.
   M6 - Botón para cambiar el orden de representación de las variables en el mapa.
   M7 - Botón para crear un lazo con las casillas seleccionadas del mapa.
   M8 - Botón para eliminar el lazo de las casillas seleccionadas del mapa.
   M9 - Botón para eliminar todos los lazos creados en el mapa.


   S0 - Botón para comprobar si el resultado es correcto.
   S1 - Botón para obtener la solución automáticamente. Disponible a partir del quinto intento fallido.


   F0 - Casilla para rellenar con las celdas que contienen minitérminos separadas por comas. Ejemplo: 0, 1, 2.
   F1 - Casilla para rellenar con las celdas que contienen maxitérminos separadas por comas. Ejemplo: 4, 6, 7.
   F2 - Casilla para rellenar con las celdas que contienen términos incógnita. Ejemplo: 8,9,10.
   F3 - Casilla para rellenar con la función simplificada.
   F4 - Casilla en la que aparecerá la función utilizando puertas NAND de dos entradas.
   F5 - Casilla para rellenar con el mínimo número de puertas NAND de dos entradas necesarias para implementar la función.
   F6 - Casilla en la que aparecerá la función utilizando puertas NOR de dos entradas.
   F7 - Casilla para rellenar con el mínimo número de puertas NOR de dos entradas necesarias para implementar la función.


   S2 - Botón para comprobar si el resultado es correcto.
   S3 - Botón para obtener la solució automáticamente. Disponible a partir del quinto intento fallido.


   C1 - Pulsar para obtener la representación gráfica de la función escrita en F3 mediante el uso de puertas lógicas de dos a cuatro entradas.
   C2 - Pulsar para obtener la representación gráfica de la función escrita en F4 mediante el uso de puertas NAND de dos entradas.
   C3 - Pulsar para obtener la representación gráfica de la función escrita en F6 mediante el uso de puertas NOR de dos entradas.


   A0 - Botón para acceder al tutorial.
   A1 - Cuadro en el que aparecerán mensajes de ayuda describiendo los elementos activos por los que se pase el ratón.
   A2 - Botón para acceder a información acerca de la aplicación.



Requisitos


     Compatible con Microsoft Internet Explorer 8, Mozilla Firefox 3.6 y Google Chrome 6 con Javascript habilitado y una resolución de al menos 1024x768. Para obtener los mejores resultados a la hora de visionar los circuitos se recomienda usar Google Chrome o Mozilla Firefox por ese orden. Opcionalmente se puede usar Microsoft Internet Explorer pero pueden surgir pequeños defectos gráficos debido a la conversión necesaria al no ser actualmente compatible con SVG en ninguna de sus versiones.