Red de conocimientos sobre prescripción popular - Conocimiento de perdida de peso - Tome el PLC Siemens como ejemplo, un valor de presión, cuando un interruptor está cerrado, ¿cómo puede recordar la presión en este momento?

Tome el PLC Siemens como ejemplo, un valor de presión, cuando un interruptor está cerrado, ¿cómo puede recordar la presión en este momento?

Si tienes una pantalla táctil o un ordenador industrial, este problema es muy sencillo.

Está bien si no tienes uno, solo es un poco problemático. Configure la hora del PLC y lea la hora del PLC. De hecho, estas cosas se usan de un lado a otro. Debes crear dos bloques FC fijos con parámetros (interfaces).

Es difícil de describir. Pero ese formato no es difícil, lo olvidé. Como siempre lo olvido, a menudo uso números enteros separados, como año, mes, día, hora, minuto y segundo como parámetros después de comprender varias funciones comunes FC (con parámetros).

Olvídalo, mira el programa y te responderé.

El formato de DATE_AND_TIME es de 8 bytes, lo puse en una variable temporal: LB0 - 7. MB0 - 7 está bien, al igual que el bloque DB. Su definición es así, o cómo obtener el año, mes, día y otros datos.

1 año: 1 libra 0

BTI

L 2000

I

T #CurYear

El byte más alto (Siemens es así, la altura es de izquierda a derecha, pero la dirección comienza desde abajo) LB0, que es el código BCD, se convierte en un número entero y se suma 2000. Este es este año.

Febrero: l lb 1/////mes

BTI

T #CurMouth

3º: l lb 2 // ///Día

BTI

T #CurDay

4 semanas: 1 libra 7

Base Logística #16#F

(Aw) Nombre

BTI

L 1

Yo

T #CurWeek

Detente aquí, cambié dos subrutinas, una es para leer y escribir cuatro enteros el jueves y la otra es para leer y escribir cuatro enteros en minutos y milisegundos. Si escribe, hay bits de activación y cuatro variables plásticas de entrada. Abramos el programa y digamos la hora:

5 en punto: l lb 3/////.

BTI

t #hora

6 minutos: l lb 4/////minutos

BTI

T #CurMinute

7 segundos: 1 lb 5////s

BTI

T #CurSecond

No Tómalo milisegundos. No puedo soportarlo más. Por supuesto que puedo copiar. A continuación se explica cómo obtener la hora, que es el formato de esa variable.

Cada uno de estos ocho bytes tiene significado. Los dos últimos LB6 y LB7 representan semanas y milisegundos. Pero LB7 parece utilizar los primeros cuatro dígitos y los últimos cuatro dígitos de estas dos semanas y milisegundos respectivamente. Déjame obtener la lista de programas:

8 ms: 1 libra 6

BTI

L 10

*Yo

T #H_MS

l libra 7

Izquierda W#16#F0

(Aw) nombre

L 10

p>

/I

L #H_MS

I

T #CurMS

Cur*** o arriba, Cur se refiere a ahora. Año, mes, minuto, segundo, milisegundo, no se explican.

El comando t equivale a MOVER. Puedes convertir MOVE en un comando y ver.

Aunque las instrucciones están escritas aquí, cuando lo llamo, solo necesito escribir parámetros (interfaz) en un cuadro, que es el diagrama T. Este programa generalmente se escribe sin moverse.

En cuanto a tu pregunta, las variables temporales se pueden definir como fecha y hora, 8 bytes. Dijiste que no puedes enviarlo. Muy sencillo.

Por ejemplo si lo pones en LB0 - 7, lo envías así:

L LD0

T MD0

L LD4

T MD4

Esta no es una transferencia completa. MB0 - 7 son tus variables.

Por supuesto, no es necesario realizar esta transferencia. Se pueden utilizar variables temporales. La resta también es posible.

¿Tienes alguna dificultad?

De hecho, si piensas demasiado, no habrá nada que no se pueda solucionar.

Hagámoslo. Una cosa más, el plan ya está hecho.