Sie sind auf Seite 1von 49

PROMODEL 7.

5
(PROFESOR LUIS SOLARI: LUISSOLARIP@GMAIL.COM)
Introduccin a
PROMODEL
Promodel es uno de los software comercial para
simulacin ms usados del mercado
Posee herramientas de anlisis y diseo, que unidas a
la animacin de modelos, permite al analista conocer
ms sobre el modelo
Bsicamente se enfoca a procesos de fabricacin de
uno o varios productos, lneas de ensamble
Esta empresa (www.promodel.com) posee otros
software como MedModel y ServiceModel diseados
para servicios mdicos y servicios en general
Posee dos mdulos importantes Stat Fit (herramienta
estadstica) y Simrunner (anlisis del modelo)
COMPONENTES BSICOS
Location
Entities
Processing
Arrivals

Cualquier sistema de manufactura, logstica y
servicio puede ser modelada con este
paradigma
LOCATION: LUGARES FIJOS DEL SISTEMA
Lugar donde las entidades son procesadas,
almacenadas o toma de decisiones

Entities
Location
ENTITY: PIEZAS, PRODUCTOS, GENTE, ETC.
Es lo que fluye en el sistema y se procesa
tomando varios estados, ejemplo engranaje,
tubos, etc.
ARRIVALS: LLEGADA DE ENTITY
Entity: Tipo de entidad que llega desde fuera del
sistema
Location: Lugar donde llega la entidad
Qty Each: Cantidad de entidades por llegada,
nmero de entidades que llegarn en un momento
First time: La primera vez que comienzan a llegar
las entidades (el tiempo de reloj de simulacin)
Ocurrencies: Nmero de entidades que llegaran
(INF = infinitas)
Frecuency: El tiempo entre llegadas de entidades
OPCIONES DE PROMODEL
Menu Simulation=>Options
Run Time : Tiempo de ejecucin simulacin
Trace : Depurar el modelo
Se puede utilizar un tiempo de warmup (tiempo transitorio o perodo
transiente) pues en un comienzo cualquier simulacin tiene un
perodo transiente donde las variables de respuesta muestran una
alta variabilidad
Definir un periodo de warmup implica ejecutar el modelo durante
cierto tiempo, despus del cual las estadsticas regresarn a cero.
Gracias a ello se eliminarn los registros correspondientes a las
variables de respuesta en el estado transitorio, y se conservar
nicamente el valor final de las variables de respuesta, lo cual
implica menos tiempo de simulacin y, por consiguiente, menor
inversin de tiempo de computadora y menor costo


FUNCIONES DE DISTRIBUCIN DE
PROBABILIDAD EN PROMODEL
MENU BUILD => LOCATIONS
00 : Contador
Calibrador : Contador grfico
Aa : Texto asociado
O : Luz de estatus
: Lugar fsico en el que aparece entidad
[] : Regin - Area
WAIT Y MOVE FOR
Wait = tiempos de procesamiento en
Process=>Operation
Move For = tiempos de traslado de productos
Routing =>Move Logic
VARIABLES GLOBALES
Contadores, estadsticos del sistema, clculos
numricos
Se ingresan en V (variables en botn verde) y se
incrementan (INC) o decrementan (DEC) en
Process, por ejemplo INC var01, 1, DEC var01,
1
Se colocan en Layout para comunicacin visual
Se puede utilizar tambin
nombreVar = ENTRIES(<nombre location>) para ver la
cantidad total de entidades que ingresaron a esa
Location
IMPORTAR IMGENES
Buscar imagen y transformarla en formato gif
con MS paint
El nombre de la imagen debe ser mximo 4
caracteres
Men Tools=>Graphic Editor=>clic sobre
cuadrado vaco=>Men Edit=>Import graphic
Hacer clic en Save e incluirlo en la library
CONVEYOR Y QUEUE
Conveyor = cadena de montaje, cinta
transportadora
Queue = colas de espera
En Location=>Rules...
Debe elegirse:
Oldest, FIFO
Sino habr un error:
Decision Rule for
Queuing for Output
COLAS/FILAS DE ESPERA
Las Filas se utilizan como almacn, inventarios,
buffers frente de las locaciones
Aceptar hasta completar la capacidad (el
defaultes el infinito) pero no las mostrar

LINEAS DE MONTAJE
Barra de herramientas de Locaciones
Doble clic para editar
Aspectos clave
Longitud (100 m)
Velocidad (10 mpm)
Capacidad, tamao de la entidad tanto grfica
como fsica
Acumulacin vs. no acumulacin

BIFURCACIN
Existe un porcentaje de seleccin:

0.7
0.3
EntA
A_Correcta
A_defectuosa
DOWNTIME (TIEMPO DE INACTIVIDAD)
Se ingresan en Locations, en DTs, siendo el
gatillador del downtime de los siguientes tipos:
Clock: Segn tiempo total del reloj de simulacin,
incluyendo el downtime mismo
Entry: Segn nmero de entidades procesadas
Usage: Segn tiempo de utilizacin de la mquina
Setup: Cuando existe la llegada de distintas Entities
y existe un tiempo de setup por cambio de proceso
Called: Cuando se llama a travs de la funcin
DOWN de otro proceso
DOWNTIME
Ssi la capacidad de la location es 1, sino slo
slo se mostrarn opciones Clock y Called
Si coloca el cono azul de Location y Layout en
una Location mostrar los siguientes colores:
Azul: Mquina ociosa
Verde cuando est realizando una operacin
Rojo: No est disponible
CAMBIO DE IMAGEN DE ENTITY
Cuando deseamos que cambie la imagen de entity por un cambio de
estado de sta, se utiliza el comando GRAPHIC <num>
Previamente en Entity defin varias imgenes representando su
estado
Ejemplo: La caja ejecuta el join y para representar la nueva entidad
caja, se muestra la caja en color rojo
JOIN Y JOIN REQUEST
Fusiona dos o ms entidades perdiendo una de
ellas todas sus propiedades
Caja01 hace un Join 1 eng01 con engranaje01,
se especifica con quien se hace el Join, en este
caso eng01
La entidad que espera (eng01) tiene activado en
Routing=>Rule...=>If Join Request, es decir eng01
espera por una solicitud de Join
La entidad que hace el Join tiene en process Join
2 eng01, la entidad actual hace un Join de 2
unidades de la entidad eng01
LOAD Y UNLOAD
LOAD: Sirve para agrupar temporalmente una
entidad. Ejemplo: Un engranaje se inserta en
una caja:
LOAD 1
UNLOAD: Se desagrupa la entidad, generando
dos entidades de la que antes fue solo una:
UNLOAD 1
IFF Entity()=Entidad
LOAD
El engranaje entra a la location y en su routing en
Rule aparece:
If Load Request()
Es decir, si es que existe un requerimiento de LOAD
El engranaje espera por una llamada LOAD
La caja entra a L01 y hace en operation un LOAD
1, donde se junta con el engranaje y sale una
nueva entidad Pallet_Boxes
Al entrar a L02 se hace un UNLOAD 1 IFF
Entity()=Engranaje01
RECURSOS I
Representan a los recursos humanos o tecnolgicos (robots, gras,
etc.) que ayudan al traslado de las entidades entre locaciones, as
como al control u ejecucin de los procesos de las entidades en las
locaciones
Si el recurso posee Network es dinmico, sino es esttico
Forma de realizarlo:
Ingresar en Resources un registro
Ingresar un Path Network haciendo clic de comienzo y fin del camino, si
es un recurso dinmico
Hacer clic en interface y relacionar punto de inicio/trmino con mquina
Luego en el Recurso asociar en Specs... al nombre de Path
Activar Return Home If Idle si se desea que cada vez el recurso vuelva
al home
RECURSOS II
En Move Logic (Routing) se utiliza MOVE
WITH <nombre recurso> THEN FREE, lo que
significa que el recurso llevar la entidad a la
nueva Location y despus quedar libre
En Operation (Process) se utiliza USE 1
<nombre recurso> FOR <time>, lo que
significa que el recurso trabajar en esa
Location un tiempo <time> y luego quedar
libre
RECURSOS III
Para asignar un turno a un recurso
RECURSOS IV
Para hacer que cuando el recurso este en
pausa o fuera de su turno se vaya a un lugar a
descansar, en este caso es N6:
SIMULAR CORTADO DE MATERIAL
A la salida de una location en Routing se
coloca en Quantity la cantidad resultantes de
piezas, es decir, entra un perfil de 100 cm y
salen 5 piezas de 20 cm
COMBINE Y JOIN
COMBINE espera hasta que haya la cantidad
especificada de piezas iguales en la locacin y
entonces se combinan en una sola entidad y se
enva a la siguiente locacin.
JOIN: El proceso JOIN es utilizado para fusionar
dos entidades distintas. Despus del proceso,
las entidades estarn permanentemente
unidas. Para cada estatuto JOIN, debe de
haber una regla correspondiente IfJoinRequest.
REPASO II
LOAD trabaja en forma parecida a JOIN. Excepto
que las piezas cargadas pueden ser descargadas
ms tarde, o desensambladas. El estatuto LOAD
tiene dos partes correspondientes LOAD y la regla
IfLoad Request
UNLOAD: El estatuto UNLOAD descargar la
cantidad especfica de entidades en la locacin.
Despus, debe de crearse un registro de proceso
para todas las entidades que hayan sido
descargadas
REPASO III
Recurso: Un recurso es una persona, pieza de
equipo o algn otro dispositivo que se utiliza
para una o varias de las siguientes funciones:
transportar entidades, asistir en operaciones
de las entidades en las locaciones, realizar
mantenimiento en las locaciones, o realizar
mantenimiento a otros recursos
ANLISIS DE DATOS I
Location States Single:
Scheduled time (HR): Tiempo total
%Operation:
%Setup: Preparacin mquina
%Idle: Ocupacin
%Waiting: Cunto tiempo esperan entidades para ser
procesadas
%Blocked: Bloqueada sin poder hacer otra cosa
%Down:Mquina con falla
Las estadsticas de % deOperacin y % de Bloqueo
son clave para encontrar cuellos de botella
ANALISIS DE DATOS II
Entity Activity : Salidas del sistema
Variables: Valores de variables
DIFERENTE ROUTING
Entidades tienen el mismo Process, pero
diferente Routing:
MULTIPLICAR ENTIDADES
Llega una caja de cartas, se abre y quedan 30
cartas:
GROUP I
Se desean agrupar en forma temporal varias entidades
La capacidad de la locacin donde GROUP ocurre debe ser al
menos tan grande como el tamao del grupo
Se agrupan engranaje01 y barra01 en batch01
GROUP II
En Process aparece Entity = ALL, es decir todas las
entidades que estn en esa location
En Operation aparece GROUP 2 AS batch01,
La entity batch01 fue creada en Entities previamente
GROUP 2 Significa que se agrupan de 2 unidades
AS batch01 significa que se su agrupacin se llamar
batch01
En Process se define ruta de batch01 a m01 y en
su routing se define su prximo destino
GROUP III
La nueva entidad, grupo de entidades batch01
se define en m01 (donde se creo) y prximas
Locations
No necesariamente mezcla entidades, espera
slo hasta que hayan 2 entidades para formar
el GROUP
UNGROUP I
Desagrupa GROUP en M02
Uno se debe encargar de llevar sus
componentes a las diferentes Locations:
El engranaje01 parte/nace en M02, donde se
desagrup de batch01
La caja01 parte/nace en M02

DIFERENCIA GROUP Y LOAD
La diferencia est cuando se desagrupan las
entidades:
UNGROUP desagrupa todas las entidades
UNLOAD se pueden ir desagrupando de a poco


TABLA RESUMEN
Caracterstica LOAD JOIN GROUP COMBINE
Desagrupar UNLOAD No Ungroup No
Num Elementos a
desagrupar
Elegible No todos No
Request S S No No
Fusin No S No S
Dos veces mencionada en
Process
S No S S
Determinar qu agrupar Mismas o
diferentes
entidades
Join 2 eng01 Mismas o
diferentes
entidades
Slo las misma entidades
Se les asigna un nombre al
nuevo grupo (as)
No No GROUP 3 AS
batch01
Combine 5 as eng04
ACCUM <NUM>
Acumula entidades en alguna Location y una
vez que se cumpli la cantidad de <NUM> se
liberan las entidades para la prxima Location.
La capacidad de la Location donde est
ACCUM <num> debe ser igual o mayor que
<num>
ANLISIS DE RESULTADOS
Si deseo comenzar con un grfico la simulacin
para ver como se desarrollan las estadsticas:
Hacer correr Simulacin
En men Information=>Dinamics Plots=>New y
seleccionar una categora y una estadstica
Sin cerrar el grfico seleccionar en men
Information=>Dinamics Plots=>Configuration...
Y asignarle un nombre al grfico (sin espacios en
blanco)
View=>Views=>Define para ver Layout de
ventanas


ALMACENAR GRFICO
SIMULACIN CON UN GRFICO
Finalizar simulacin e ir a
Build=>General Information=>Initialization Logic...
De forma que cuando comience la simulacin se muestre el grfico
MOSTRAR MENSAJES
Build=>General Information=>Initialization Logic...
O Termination Logic...
Utilizar DISPLAY Mensaje y se mostrar el
mensaje
Para complementar la programacin se pueden
utilizar comentarios explicativos despus de los
siguientes smbolos:
// Ac van comentarios
# Ac van comentarios
/* Ac van comentarios */

ATRIBUTOS I
Son como variables, pero se asocian a
entidades o location. En ellas podemos guardar
alguna informacin que posee cada entidad
Ejemplo existe la entidad tubo y se define un
atributo (botn A en verde al lado de V,
variable) tipoTubo, que representa el tipo de
tubo que es cada tubo, ejemplo tipoTubo=1 es
PVC, tipoTubo=2 HDPE, etc.
ATRIBUTOS II
Segn el valor del atributo tipoEng se elige una ruta distinta a
salida01, salida02 o salida03
Mirar en Routing Rule (Process) que hay una condicin en User
Condition (tipoEng=1)
CONDICIN
En base a una condicin se ejecuta una operacin o se
sigue una ruta
Su sintaxis es:
IF (expresin lgica) THEN { } ELSE {}
Se puede omitir ELSE o los corchetes, si la sentencia es una
lnea
Ejemplo:
IF (tipoTubo=1) THEN {
JOIN 1 codoHDP
GRAPHIC 2
} ELSE {
JOIN 1 codoPVC
GRAPHIC 3
}
Se puede utilizar OR y AND, ejemplo: IF (at1=5) OR (at2<>2)
GENERAR NMERO AL AZAR
Para generar nmeros al azar en Promodel se
utiliza RAND(x), donde se generarn valores
enteros entre 0 y x (0<=n<x)
Ejemplo: tipoTubo = RAND(2)+1, se generarn
nmeros entre 1 y 2

Das könnte Ihnen auch gefallen