Gracias por tomarte un tiempo, mira este video.
Asumiré que estás aquí porque has usado o intentado usar
la plataforma de simulación de sistemas reparables dentro de JMP.
Quizás quieras aprender un poco más.
Es posible que te sientas frustrado porque hay cosas
que estás tratando de hacer y que no creías poder hacer.
Entonces, ¿qué voy a cubrir hoy?
son cosas que no se explican profundamente en la documentación,
cosas que he aprendido a través de prueba y error
que no están en la documentación,
e incluso cosas que aprendí hablando con el desarrollador
sobre la plataforma, cosas que no podrás encontrar
Cualquier otra manera.
Voy a suponer que ha tenido cierta exposición a esta plataforma.
Voy a suponer que sabes un poco sobre análisis de confiabilidad,
así que no tengo que entrar en detalles sobre qué es una configuración paralela,
qué es algo que es K de N, y así sucesivamente.
Tengo una serie de ejemplos que quiero cubrir,
muchos materiales. Empecemos.
Ahora, antes de que realmente miremos
la plataforma de simulación de sistemas reparables, permítanme darles una descripción general.
Con suerte, lo has usado antes, estás familiarizado con él,
vamos a hablar de tres componentes diferentes
y aspectos sobre aquellos componentes que no están en la documentación
o no están bien explicados en la documentación.
Lo primero de lo que vamos a hablar son los bloques.
Los bloques son lo que uso para construir mis cosas de simulación de sistema reparable.
como Paralelo, K de N, En espera.
Entonces, para cada bloque, puedo asociar un evento con ese bloque.
Esos son estos pequeños bloques naranjas que vemos, y para cada bloque,
Puedo asociar uno o más resultados o acciones.
Esos son esos puntos azules que vemos,
y eso me ayudará a desarrollar mi simulación.
Por ejemplo, es posible que desee saber cuándo falla un bloque.
y cuando ese bloque falle, es posible que desee repararlo,
y esa reparación podría tardar, digamos, 40 horas.
Esa es la idea detrás de la construcción de estos diagramas RSS.
Empecemos hablando de
Algunas de las propiedades generales de los bloques.
Hay seis bloques diferentes en un nudo,
lo que me permite unir cosas dentro del diagrama.
Cinco de esos seis bloques son compuestos.
Fueron construidos para estar formados por dos o más subunidades.
JMP le permite usarlos con una subunidad.
Pero en realidad, el caso de uso es que están formados por dos o más subunidades.
Los eventos y acciones se aplican a todo el bloque.
Entonces este es un punto importante.
Los componentes dentro del bloque no se pueden tratar individualmente,
excepto el bloque de espera.
Se les asigna una distribución única.
En conjunto, estos dos puntos significan que cosas como la reparación
o el mantenimiento de las subunidades no es posible
dentro de estos bloques compuestos.
Tengo que esperar hasta que falle todo el bloque.
antes de que pueda hacer algo con ese bloque
antes de que pueda reparar el bloque.
Si quiero diferentes distribuciones dentro del bloque,
Tampoco puedo hacer eso, a excepción del Standby.
Y hablaremos de eso en un ejemplo que tenemos un poco más adelante.
Subunidades para todos los bloques compuestos,
excepto los bloques de Serie, son en paralelo.
Lo que diferencia esos diferentes bloques compuestos
son el número de componentes que se están ejecutando,
cuándo falla el bloque y cómo envejece.
Entonces armé una pequeña mesa que repasa todos los bloques compuestos.
y en qué se diferencian con esas características.
Para todos los bloques compuestos, a excepción del Standby,
todos los componentes se ejecutan simultáneamente.
Con un bloque compuesto, puedo elegir K de mis N unidades para ejecutarlas
y luego las unidades restantes serán copias de seguridad.
Entonces, ¿cuándo fallan estos bloques?
Obviamente, si tienes alguna experiencia en confiabilidad, un bloque de Serie falla
cuando una unidad falla.
Un bloque paralelo falla cuando todas las unidades fallan,
K de N cuando tenga menos de K unidades, y así sucesivamente.
Entonces, las cosas que se podrían esperar naturalmente en el análisis de confiabilidad,
Standby y Sharing tienen otro método de falla.
Con la unidad de reserva, hay un mecanismo de conmutación.
Podría haber un interruptor para todo el bloque.
o un interruptor para cada copia de seguridad.
El Standby puede fallar si tengo un solo interruptor
cuando ese interruptor falla, o si intento usar
cada una de mis unidades de respaldo
y el interruptor de esas unidades de respaldo también falla.
Entonces, la falla del interruptor podría ser otra causa de la falla del bloque.
Lo mismo ocurre con el estrés compartido.
Sin embargo, con Stress Sharing, solo tengo un interruptor.
La característica final que es diferente.
entre estos bloques compuestos es cómo envejecen.
Durante los primeros tres bloques, envejecen por igual.
Todas las subunidades dentro del bloque envejecen por igual.
Para Standby y Stress Sharing, las subunidades pueden envejecer...
Para Standby, pueden envejecer de manera diferente.
Para Stress Sharing, definitivamente envejecen de manera diferente.
En espera,
Puedo elegir una distribución única para mis unidades operativas.
Para mis unidades de respaldo,
Puedo elegir que no envejezcan, eso es modo de espera en frío.
o puedo darles una distribución diferente
en cuanto a cómo envejecen cuando están en modo de espera
o cuando actúan como respaldo.
Eso podría ser lo mismo que mis unidades operativas podrían ser algo diferentes.
Entonces puedo elegir dos distribuciones diferentes.
La cosa es que, de nuevo,
Al igual que con todos estos bloques compuestos, obtengo una distribución.
para todas mis unidades operativas, una distribución para todas mis copias de seguridad.
No puedo mezclar y combinar.
Finalmente, con Stress Sharing, Stress Sharing funciona.
un poco diferente.
Con Stress Sharing, el estrés se distribuye por igual entre los bloques.
Sin embargo, cuando una de las subunidades falla,
El estrés adicional está asociado con las unidades operativas restantes.
Entonces el estrés cambia de fracaso en fracaso.
Veremos un ejemplo de eso en un momento.
Ahora, una de las cosas que quizás hayas encontrado,
o tal vez te des cuenta es que a veces
quieres tener un poco más de flexibilidad
y la forma en que puedo desarrollar flexibilidad es que puedo organizar mis bloques básicos
o mi bloque básico como lo haría con un Paralelo o K de N
como uno de mis bloques compuestos.
Los bloques básicos se pueden organizar fácilmente como Serie, Paralelo o K de N
más difícil de hacer con los bloques Standby y Stress Sharing
cuando tienes más de dos unidades.
Tengo un ejemplo en un momento.
que muestra una configuración en espera con dos bloques básicos.
Relativamente sencillo cómo hacerlo.
Pero si intentara extender eso a tres cuadras,
se vuelve mucho más difícil.
No es imposible, simplemente es muy difícil de hacer.
porque tendría que realizar un seguimiento de lo que funciona, de lo que no funciona,
qué sucede cuando ocurre la falla, etc.
Lo mismo ocurre con Stress Sharing.
Vayamos a nuestro primer ejemplo.
Para nuestro primer ejemplo, veremos una disposición básica de K a partir de N.
Vamos a tener cinco subunidades.
Tres de ellos deben estar operativos.
Todos tendrán el Weibull con un Alfa de 2000 y una Beta de 1.
Vamos a suponer que cuando falla un bloque
que se necesitan 40 horas para reemplazarlo.
vamos a poner ese arreglo
en serie con un bloque compuesto K de N.
También supondremos que el bloque compuesto K de N tarda 40 horas.
reemplazar, a pesar de que hay cinco subunidades
dentro de ese bloque que han fracasado.
Echaremos un vistazo a qué diferencia hace.
si los trato como elementos individuales
¿O como mi artículo compuesto?
Así es como se vería mi configuración en RSS.
Lo he mantenido muy simple.
Aquí están mis subunidades relativas a mi K de N.
Lo que lo convierte en un K de N está en el nudo.
Puedo especificar cuántos de los elementos entrantes
necesita estar funcionando.
Y aquí he dicho que necesito tres operando. Entonces eso es lo que lo convierte en una K de N,
este arreglo, K de N.
Y voy a mantenerlo muy simple.
El único evento que voy a ver es si el bloque falla o no,
La única acción que voy a tomar es repararlo como nuevo.
Sigamos adelante y ejecutemos esto.
Relativamente rápido.
Quiero dedicar un poco a hablar sobre el resultado.
porque lo que se envía a la salida y a los estados
Nos ayudará cuando comencemos a construir nuestros diagramas en el futuro.
Echemos un vistazo al orden de las operaciones.
por este primer fracaso.
Entonces vemos que la unidad Sub1 ha fallado durante 766 horas.
Se elimina el bloque.
Así que es importante tenerlo en cuenta porque es uno de mis eventos potenciales.
Entonces se elimina el bloque, inicio el proceso, reemplazo el bloque.
Y después de reemplazar el bloque, después de las 40 horas que especifiqué.
En mi configuración, el sistema se enciende automáticamente.
Entonces ese es otro punto importante.
Nos vamos a topar con la situación
donde para algunos de mis eventos, el sistema no obtiene
se activan automáticamente, y voy a hablar sobre cuáles son.
Qué tendremos que hacer en esos casos
es en realidad encender el sistema, o en algunos casos, cuando el bloque
no se activa automáticamente, active el bloqueo manualmente.
Aquí tenemos el error Sub3 y ves una serie similar de eventos,
Sub2 falla, etc. Echemos un vistazo a lo que sucede.
cuando el sistema se cae.
Y sabemos con certeza que eso sucede cuando falla K de N.
Bien, aquí está el primer caso en el que el sistema falla.
De nuevo, muy similar respecto a la mayoría de las operaciones,
pero notarás que apaga el sistema.
Observe que apagó el sistema, así que puedo apagar el sistema.
Apaga todos los bloques del sistema.
De nuevo, algo importante a tener en cuenta,
porque habrá casos en los que necesitaremos saber
si un bloque está activado o desactivado.
Si necesitamos o no activar un bloqueo manualmente.
Así que aquí vamos al reemplazo.
Una vez finalizado el reemplazo,
Todos los bloques se activan automáticamente.
Y nuevamente con este reemplazo, con nuevo,
el apagado y encendido todo ocurre automáticamente.
Así que no tengo que preocuparme por eso.
Finalmente, terminé mi reemplazo de K out N y terminé hasta el próximo fallo.
Relativamente sencillo.
Si quisiera echar un vistazo a cómo ha funcionado mi sistema
Voy a iniciar mi Explorador de resultados.
De forma predeterminada, no veré la información a nivel de componente.
Si quiero la información a nivel de componente, necesito volver al punto de acceso
y elegir si quiero un mono,
Voy a elegir mi tiempo de inactividad por componente.
Ahora, lo que hay que tener en cuenta con esta organización,
esto solo me esta diciendo
el tiempo de inactividad del sistema asociado con mis componentes.
Entonces esto me dice cuántas veces K de N ha derribado el sistema.
Para cada uno de estos,
estos correspondían al momento en que esa subunidad derribó el sistema.
Entonces, si lo piensas bien, estos corresponden a los tiempos.
cuando la subunidad fue la última de mis cinco unidades en caer,
porque ese es el único momento en el que el sistema se va a caer
es cuando todas esas cinco subunidades caen.
Ahora, si quiero ver la distribución a nivel de mis componentes,
esto sólo me avisa cuando el sistema se cae.
Pero digamos que estoy interesado en saber con qué frecuencia Sub1 estuvo inactivo,
con qué frecuencia Sub2 estaba caído y así sucesivamente.
El punto de acceso, puedo mirar esta estimación puntual.
para disponibilidad de componentes.
Y si me desplazo hacia abajo, por ejemplo, para Sub1,
esto me da mi información de distribución
para el componente en sí.
Z incluye no sólo los momentos en que la Subunidad 1 desactivó el sistema,
pero cuando la Subunidad 1 se hundió.
La forma más sencilla de profundizar en las distribuciones individuales de todos mis subcomponentes.
Pasemos a algunas de estas acciones y eventos.
y algunas de las propiedades particulares asociadas con ellos.
Empezaremos con los eventos.
No mencionado en la documentación.
pero Inservice solo está disponible para bloques Básicos.
Para recordarle, Inservice se basa en la antigüedad del bloque.
y no la edad del momento de la simulación.
Entonces, por ejemplo, si quiero reparar algo
Después de 100 horas de uso, usaría un Inservice.
De lo contrario, me vendría bien sólo un evento programado.
Un evento programado sería atendido una vez por semana,
pero Inservice solo está disponible para mi bloque Básico.
Entonces me dice si quiero usar Inservice,
Voy a tener que desarrollar estos bloques básicos.
Inicialización, falla del bloque y el sistema no funciona
Sólo se puede utilizar una vez por cada bloque.
Entonces lo que verás es cuando los uses,
Desaparecen de tu paleta de eventos, por lo que ya no aparecerán.
Así que sólo puedes usarlos una vez.
Hablemos de acciones.
Hay 13 acciones que puedo utilizar.
Instalar Usado, Cambiar Distribución y Si solo se pueden usar con bloques Básicos.
Reparación mínima solo se puede utilizar con Básico y Serie.
Eso nos deja nueve acciones que puedo usar para cualquiera de los bloques.
Entonces son Encender y Apagar un Bloque, Encender y Apagar el Sistema,
Reemplazar con nuevo, instalar nuevo, quitar un bloque, inspeccionar fallas,
y Horario. entonces esos son los nueve
que cualquiera de los bloques, ya sea el bloque Básico o el Compuesto, puede utilizar.
No hay límite en cuanto a cuántas veces se puede utilizar una acción en un bloque determinado.
Tengo un ejemplo en el que utilicé Desactivar bloqueo más de una vez.
La razón es que
Lo que quiero hacer después de girar o cuando enciendo el bloque puede diferir
dependiendo de cuándo se activa el bloqueo.
Y nuevamente, veremos un ejemplo de eso en un momento.
Las acciones sólo se pueden conectar con otras acciones.
De hecho, los acontecimientos sólo pueden conectarse con acciones.
Entonces no puedo conectar un evento o una acción a un bloque u otro evento.
Sin embargo, soy ilimitado en cuanto a cuántas acciones puedo encadenar.
Algunas propiedades específicas.
La inicialización sólo ocurre una vez y es al principio.
de la ejecución de la simulación.
Vamos a tener un ejemplo en el que eso marca la diferencia,
donde apago un bloque en una inicialización,
pero cuando el sistema vuelve a estar en línea, ese bloqueo se enciende nuevamente.
Así que tendré que asegurarme de desactivarlo manualmente.
Entonces la inicialización sólo ocurre al principio.
El sistema está inactivo ocurre para cada bloque,
independientemente de qué bloque derribó el sistema.
Así que puedo usarlo como oyente para ver...
Por ejemplo, si el sistema se cae,
Es posible que desee realizar mantenimiento en el bloque aunque el bloque
se estaba ejecutando, tal vez solo para volver a activarlo
dejarlo casi nuevo o volver a dejarlo como nuevo.
Por lo tanto, se producirá un sistema inactivo independientemente del bloque que lo haya inactivo.
Luego sobre las acciones,
Activar El sistema activa todos los bloques disponibles.
Ahora, por cada bloque, me refiero a todo lo que aún no está caído.
debido a una falla o programada para estar inactiva.
Entonces podría programar algo para que esté inactivo.
ya sea usando ese evento programado o usando la acción programada.
Encienda el sistema, encenderá todos mis bloques.
Los bloques deben activarse manualmente
después de Instalar nuevo, Instalar usado o Cambiar distribución.
Estos son algunos de esos casos en los que el sistema no se enciende,
el bloqueo no se activa automáticamente.
Es por eso que tal vez quiera usar,
por ejemplo, instale nuevo en lugar de Reemplazar con Nuevo.
Instalar nuevo me permite hacer cosas antes de volver a encender el sistema.
Me da esa oportunidad de realizar otras operaciones.
u otras acciones antes de encender mi sistema.
Activar bloqueo no enciende el sistema si el bloqueo se desactivó manualmente.
Como vimos en la salida,
como habrás notado en el resultado, que independientemente de que el sistema esté encendido,
es posible que aparezca un evento Activar sistema.
No está de más encender un sistema si ya está encendido.
Lo que digo es que en caso de duda agreguen un Sistema de Encendido
a su cadena de eventos para asegurarse de que el sistema esté encendido.
Por cierto, no importa si el bloque se activa primero
o el sistema se enciende primero.
Ambos funcionan de la misma manera.
Muy bien, pasemos a nuestro segundo ejemplo.
Lo que vamos a hacer es construir un bloque básico.
en un acuerdo de reserva.
Tendremos una unidad principal y una unidad de reserva.
Vamos a hacer un arranque en frío.
lo que significa que la unidad de reserva, la unidad de respaldo, no envejece.
Sin embargo, la unidad tardará 30 minutos en iniciarse.
Algo que no puedo hacer con el modo de espera compuesto.
Se realizan ocho horas de mantenimiento en la copia de seguridad después del control.
se devuelve a la unidad principal.
Vamos a ver dos situaciones de cambio diferentes.
De hecho, vamos a ver un interruptor infalible y vamos a
mirar un interruptor donde tenemos un 90% de confiabilidad.
Para todos mis bloques, asumiré Exponencial (500).
Voy a suponer ocho horas para reparar o mantener.
Los bloques defectuosos serán reemplazados por otros nuevos.
Como en el ejemplo anterior, veremos los bloques básicos.
en esta disposición en serie con un bloque de reserva con la misma configuración,
obviamente, con la excepción de ese tiempo de inicio de 30 minutos,
lo cual no puedo hacer.
Vamos a ver.
Aquí está nuestro arreglo básico.
Tengo mi unidad de respaldo, mi unidad principal, mi unidad de reserva y para cada una de estas
He asociado un evento de falla y un Reemplazar con Nuevo.
Algo así como lo básico de lo que podría empezar.
No sé si señalé anteriormente cuando estábamos mirando el resultado,
pero es útil cuando agrego un evento, agrego una acción para darle un nombre único
porque esos son los nombres que aparecen en mi salida.
Muy bien, comencemos con una unidad de respaldo.
Cuando mi sistema se conecte en el momento cero, todo se encenderá.
Quiero asegurarme de que en el momento cero, esa unidad de respaldo se apague.
La forma en que voy a hacerlo es usando Inicialización.
Notarás que cuando usé Inicialización,
desapareció.
Lo siguiente que quiero hacer es apagar el bloqueo.
Ahora, si has usado RSS antes,
Recordarás que cuando intento agregar una acción,
apilará estas acciones una encima de la otra.
A veces esa no es la mejor ubicación para ellos.
Lo que podrías hacer cada vez que tengas una acción en la que trabajar,
Puedo seleccionar la acción, hacer clic y mantener presionado este signo más
y luego simplemente arrastre el plus.
Ahora puedo agregar mi acción.
En este caso, quiero desactivar el bloqueo.
Ahora, no quiero el bloque Desactivar asociado con esto, Reemplazar con Nuevo.
Lo que voy a hacer para evitar que eso suceda es simplemente eliminar la flecha.
Ahora puedo conectarme al evento que quiero.
La ventaja de hacer esto es que ahora puedo mover ese bloque a donde quiera.
Tengo mucha más flexibilidad con la forma en que funciona ese bloque.
La otra cosa que voy a hacer es definitivamente quiero etiquetar estos
así que cuando mire mi tabla de resultados, sabré lo que sucede.
Esto es Desactivar bloqueo...
Llamemos a esto apagar la copia de seguridad al inicio.
Voy a darle un nombre único a cada uno de mis eventos, a cada una de mis acciones.
así sé cuándo ocurren.
Eso desactiva mi copia de seguridad al principio.
Lo siguiente que voy a querer hacer es cuando la unidad principal falle,
Voy a querer encender la unidad de respaldo.
Ahora, nuevamente, en lugar de seleccionar la unidad de respaldo y decir Activar bloqueo,
Voy a elegir mi Bloqueo de activación de forma interactiva.
Voy a eliminar mi conexión aquí para poder mover esto.
Voy a mover un poco las cosas.
Moveré esto aquí.
Nuevamente, quiero nombrar esto para que si vuelvo a este diagrama
en un par de días sé a qué está asociada esta acción.
Llamaremos a este encendido respaldo desde principal.
Otra cosa que se menciona en la documentación,
pero no sé con qué fuerza, pero puedo conectarme,
en este caso, estoy conectando un evento de un bloque a una acción
en otro bloque.
Definitivamente puedo hacer eso.
Ahora, como mencioné anteriormente, esto activará el bloqueo.
porque ese bloque se desactivó manualmente,
Voy a tener que encender el sistema también.
Encienda el sistema.
De nuevo, probablemente quiera etiquetar eso,
Diré: active el sistema desde la copia de seguridad y así sucesivamente.
Ahora la única otra cosa que necesito agregar a mi diagrama es que
cuando mi dispositivo principal vuelva a estar en línea, quiero desactivar mi copia de seguridad,
hacer mantenimiento a mi copia de seguridad.
Ahora probablemente podría...
Bueno, comencemos con desactivar la copia de seguridad, desactivar Bloquear.
Elimina eso.
Llamaremos a esto.
Debí haber seleccionado Activar, obtuve Desactivar Bloquear.
Vamos a intentarlo de nuevo.
Desactive Bloquear y etiquételo, desactive la copia de seguridad desde principal.
Ahí es donde mi principal entra en línea.
Allí apagué mi copia de seguridad.
Quiero realizarle mantenimiento.
La forma en que voy a hacerlo es simplemente Reemplazar con Nuevo.
Bien, a esto lo llamaremos mantenimiento preventivo.
Creo que dije que ese mantenimiento preventivo va
son ocho horas las que se necesitan.
Ahora de nuevo, tengo que recordar
que Reemplazar con Nuevo inicia automáticamente el bloque.
Lo que voy a tener que hacer ahora es apagar el bloque.
Ahora, pensando en eso con un poco más de detalle,
Probablemente podría haber pasado directamente desde el nuevo regreso en línea.
para hacer el mantenimiento.
Porque una vez que inicio el mantenimiento de mi copia de seguridad, la copia de seguridad deja de funcionar.
Luego, una vez que haya terminado con mi mantenimiento,
apagando el bloque.
Este bloque no hace daño, pero es redundante.
Así que deshagámonos de él.
Esa sería mi configuración.
Siempre me gusta correr para verificar si las cosas funcionan.
en el orden correcto y generaré mi salida.
En este caso, sólo lo tengo configurado para hacer una simulación.
Tal vez tenga que tomar un par
de simulaciones dependiendo de la confiabilidad asociada a mis unidades.
Aquí están los principales fallos, el sistema se apaga,
el bloque de espera se apaga, se coloca un nuevo principal,
active la copia de seguridad para main.
Si miramos la columna de depredadores, es mi turno de respaldo para principal.
Active Sistema desde copia de seguridad, active Bloquear por sistema.
Nuevamente, me gusta revisarlos una vez que los construyo para asegurarme
las cosas suceden en el orden correcto.
El sistema de giro se enciende.
Ahí está la nueva tubería principal.
Enciendo mi sistema,
De nuevo, ya está puesto, pero no importa, no duele.
Nuevo principal Reemplazar con Nuevo.
Ese es el bloque, el respaldo que se está girando.
para recibir un MP y así sucesivamente.
Debería estar desactivada esa copia de seguridad.
Nuevamente, me gusta usarlos solo para verificar
para que las cosas funcionen correctamente.
Esa es la configuración sin el interruptor.
Agregar el interruptor es relativamente sencillo.
Donde pondríamos eso es, lo pondríamos
entre la falla principal y el inicio de la copia de seguridad
y para eso están hechos los bloques if.
Déjame deshacerme de esa conexión.
No importa de cuál de mis bloques proviene ese
y no quería ponerlo ahí.
Déjame ir de...Aquí vamos.
Tengo una copia de seguridad en caso de que sucediera algo así.
Aquí vamos.
Ahí está mi copia de seguridad activada.
Ahí está mi principal defecto.
Vamos a deshacernos de eso.
Probablemente quiera agregar mi bloque if para poder flotarlo en cualquier lugar.
Voy a tomar cualquiera de estos y agregaremos un si.
Eliminar la conexión.
Conectemos eso.
Ahora, la forma en que configuraría mi if,
la forma en que funciona es que evalúa lo que hay en el cuadro de condición if.
Si es cierto, si se evalúa como uno, entonces continúas.
Si se evalúa como cero, te detienes.
Lo que puedo decir es que si... No necesito el si ahí,
Voy a decir que el uniforme aleatorio es inferior a 0,9.
Cuando eso sea cierto, la cadena continuará; de lo contrario, se detendrá allí.
Eso es todo.
Es tan simple como eso poner esa declaración if.
Nuevamente, probablemente también quiera etiquetar esto.
Entonces, si el cambio es exitoso o algo así.
En este punto, el único inconveniente es ¿qué pasaría si el interruptor fallara?
Bueno, el interruptor falló, tendrá que esperar hasta que el principal vuelva a estar en línea.
Main vuelve a estar en línea e intenta desactivar mi copia de seguridad.
No está de más intentar apagar algo que ya está apagado.
Pero lo que tal vez no quiera hacer
Es posible que no quiera realizar el mantenimiento si no se utiliza la copia de seguridad.
En un ejemplo posterior, veremos cómo solucionarlo.
¿Cómo mirar el sistema y decir si se está ejecutando esa copia de seguridad?
Si no está funcionando, sí, haz el mantenimiento.
Si está funcionando, no necesita mantenimiento.
Pasemos al siguiente ejemplo.
En este caso tengo dos bombas funcionando en paralelo con un mantenimiento preventivo.
Se realiza cada dos semanas y dura ocho horas.
Los PM están escalonados una semana para evitar que ambas bombas se caigan.
al mismo tiempo.
Si una bomba falla, se realiza una reparación mínima que demora cuatro horas.
En este caso, la simulación se ejecuta durante un año.
Comencemos con lo básico aquí.
Aquí están mis bombas con las fallas y reemplazos de las bombas.
¿Cómo configuro la espera de una semana antes de que comiencen los MP?
Como en el último ejemplo, comenzaré con la inicialización.
Lo que voy a decir es esperar una semana.
¿Cómo digo esperar una semana?
Bueno, lo que haré es usar la acción programada.
Voy a hacer lo que he estado haciendo en el pasado.
Configuraremos el horario, eliminaremos mi conexión.
Tengo varias opciones diferentes con horario.
Sólo quiero que esto suceda una vez. Quiero que suceda desde el principio.
entonces está conectado a mi evento de inicialización.
Vamos a llamar a esto esperar una semana.
Sólo quiero que esto suceda una vez.
Quiero que tarde 168 horas.
Eso es porque tengo mi simulación configurada en horas.
Lo que eso hace es que al iniciar espera una semana.
y luego realiza cualquier acción a la que me conecto aquí.
¿Cuál es la acción que voy a conectar?
Bueno, voy a usar el horario nuevamente.
Lo que será esto será PM en la bomba 2.
Voy a dejar mi aparición máxima en blanco.
Así lo hace hasta el final de la simulación.
El tiempo de finalización será 168x2, es decir, 336.
Ahora lo que pasa es que después de esa primera semana, cada 336 horas,
Voy a poder realizar otra operación.
Esa operación tiene un par de formas diferentes de hacerlo.
Vamos a suponer que es PM [inaudible 00:37:03].
Entonces vamos a decir: Reemplazar con Nuevo.
Puedo decir aquí, reemplace la bomba B.
Ahora, una de las cosas que podrías estar pensando es que
¿Qué pasa si voy a hacer mi mantenimiento preventivo?
y todo está escalonado pero por alguna razón la bomba A no funciona,
puede que haya tenido un fallo.
No necesariamente bajaría mi bomba B
para mantenimiento preventivo.
Haz eso y acaba con el sistema. Lo que vamos a usar es que vamos
utilizar una variable oculta llamada contexto de simulación.
El contexto de simulación es la forma en que puedo ver mi sistema.
Lo que haremos es poner el contexto de simulación,
Lo pondremos entre mi mantenimiento preventivo programado y mi mantenimiento preventivo real.
Hagámoslo.
Deshagámonos de eso y lo implementaremos con un if.
Déjame conectarme y llamaremos a esto, si la bomba A está funcionando,
Ahora la pregunta es, ¿cómo puedo saber si la bomba A está funcionando?
Bueno, en mi condición if, necesito especificar la variable oculta
eso está asociado con la bomba A... Ya sea que esté activo o no.
La forma en que lo haría es el contexto de simulación.
y el caso no importa.
Contexto de simulación y las variables.
las variables del sistema se almacenan como un asociado de la matriz.
Esto se llama estado de la bomba A.
Ahora lo que he encontrado es que,
Esta parte particular del cuadro de diálogo no es tan flexible.
Si tengo algo más complejo que quiero construir,
entonces normalmente lo hago en una ventana de script y luego lo copio y luego lo pego
en esta ventana.
Pero esto es relativamente pequeño y simplemente seguiremos escribiendo.
Vamos a decir que esto está activo.
Eso es lo que yo usaría.
Ahora bien, ¿cómo supe que eso es lo que tengo que usar?
Bueno, resulta que esta es una condición y un poco
Más adelante, cuando hablemos de compartir el estrés,
esto actúa como un guión.
Qué puedo hacer y qué he hecho a menudo
se incluye en una declaración impresa, ¿cómo sé qué está disponible para mí?
Pongamos una declaración impresa allí.
y diremos contexto de simulación de impresión, está bien.
Lo único de lo que debemos estar seguros
es esa declaración if, la última declaración en esa condición if evalúa la verdadera.
Sólo para mostrarte lo que pasa
Cuando haga esto, sigamos adelante y ejecutemos esto.
Voy a ejecutar eso solo para darte una idea.
de lo que se imprime en el registro.
Déjame seguir adelante y tomar mi registro y terminará en uno de mis otros...
Aquí vamos, ahí está mi registro.
y aquí vamos.
Esto es lo que se imprimió en el registro.
Eso me da información sobre todas las variables que están disponibles.
en el contexto de simulación para este diagrama en particular.
Si hubiera puesto más bloques ahí, más acciones, más eventos
luego aparecerían esos, y también aparecería información sobre ellos.
Pero esta es una buena manera de decir
qué hay en mi sistema y cuáles son las variables a las que tengo acceso.
Lo importante a recordar aquí es
Puedo leer esto, pero no puedo volver a escribir en esta variable en particular.
No tengo esa opción para cambiar cosas en mi simulación,
pero puedo usar esa información.
Volviendo a nuestro último ejemplo, ¿qué podría haber hecho?
¿Podría haber puesto una declaración if allí?
y dije que si mi copia de seguridad estaba activa,
Bueno, entonces bájalo y haz el mantenimiento.
Bueno.
Ahora por cuestiones de tiempo voy a seguir adelante.
Hasta mi último dato que quiero compartir con ustedes.
Por cierto, tendré un diario disponible,
debería tener un informe disponible,
Tendré más ejemplos que no tuve tiempo de cubrir.
Verás un par de acciones más.
No tuvimos la oportunidad de ver cómo se implementan.
y tal vez algunas de las otras cosas
Puede que eso no sea muy sencillo.
El intercambio de estrés personalizado es un poco inusual en el sentido de que, de forma predeterminada,
el estrés se comparte equitativamente entre las subunidades.
Se implementa alterando la forma en que este bloque envejece.
y no alterar explícitamente la distribución.
Cuando no tengo estrés compartido, digamos que tengo n subunidades en paralelo,
digamos que el primero falla en el momento uno, el segundo en el momento dos, y así sucesivamente.
Con el estrés compartido, la forma en que envejezco el bloque
es que, esa primera falla ocurre en t un momento n,
multiplicado por el número de unidades de trabajo.
El segundo envejece el bloque n menos uno adicional.
veces la diferencia entre mi primer y segundo fracaso.
El tercero n menos dos veces la diferencia entre
el tercero, el segundo fracaso y así sucesivamente.
Así es como envejecen los bloques.
Esta es la información que se pasa a esa función personalizada.
Cuando trato de incorporar esto a mi forma de compartir el estrés,
Bien, permítanme compartir con ustedes este último ejemplo sobre cómo se configura.
Déjame encontrar mi ejemplo.
Bien, aquí tengo tres tipos diferentes de estrés compartido.
Está mi modo básico de compartir el estrés, así que lo configuré como básico.
Aquí está mi costumbre.
Este es el final del que estoy hablando.
Sabrá que está integrado en esta función de registro.
Se hace así para que el envejecimiento del bloque coincida.
con las distribuciones que puedo usar para mi bloque personalizado para compartir el estrés.
Lo que hago es pensar en las cosas en términos de mi explicación.
que la primera unidad envejece en algún multiplicador multiplicado por el tiempo,
el segundo en algún multiplicador multiplicado por la diferencia entre
mi primer y segundo tiempo de falla, y así sucesivamente.Esa es la forma en que pienso
sobre todas estas cosas.Por ejemplo, digamos que quiero configurar,
Bueno, antes de continuar, permítanme decir brevemente:
Al igual que con el bloque if, puedo colocar declaraciones impresas aquí.
Si tuviera que poner una declaración impresa aquí,
Notarás que esto se ejecuta antes de que se inicie el sistema.
entonces va a imprimir cinco y va a imprimir cinco
porque en este caso el bloque tiene cinco unidades.
Voy a imprimir cinco cuando el primero falle,
volverá a la función imprimir cuatro,
y así sucesivamente, así sucesivamente y así sucesivamente.
Digamos que quería configurar esto como una falla personalizada donde el bloque
envejece a 10 veces, no 5 veces, sino 10 veces más,
el segundo a los cinco años, el tercero a los tres.
El segundo envejece a la una,
y el último está demasiado estresado y envejece dos veces más rápido.
Lo que podría hacer es,
De nuevo, pongamos esto aquí.
Déjame agregar un poco de espacio
y hacer mi caja un poco más grande.
Podría poner algo como,
De nuevo, quiero poner ese registro, ese registro tiene que estar ahí,
iniciar sesión y yo diría algo como elegir.
Lo que elige en función de n, volverá,
a ver, cuando hay una unidad, quiero que me devuelva la mitad, una con dos unidades,
digamos 2,5 con 3 unidades,
5 con 4 unidades, y finalmente 10.
Así es como crearía mi intercambio de estrés personalizado.
No estoy limitado a esta función de elección.
Aquí tengo en este ejemplo en particular,
Estoy usando una función.
Bien, de nuevo, lo que es importante aquí
es que todo esto se integra en esta función de registro para que el envejecimiento
del bloque y las distribuciones pueden coincidir.
Desafortunadamente, eso es todo lo que tengo tiempo para cubrir hoy.
Desearía tener más tiempo. Ciertamente hay mucho
de otras cosas de las que podríamos hablar.
Esos estarán en los materiales que les proporcioné,
y me encantaría escuchar tus comentarios
y preguntas y comentarios que tengas.
Nuevamente, gracias por tomarse el tiempo. Ver este.
Espero que esto sea realmente beneficioso. Gracias.