Mensajes recientes

Páginas: 1 ... 8 9 [10]
91
Kinco / Modificacion de fecha y hora
« Último mensaje por fruiz mayo 24, 2018, 09:15:57 am »
La pantalla muestra la fecha y hora distinta a la real (un día adelantado). según el manual se puede modificar accediendo a unos dip switch. Pero no los veo accesibles, al menos no sin remover la carcasa. ¿hay otra forma de modificar la fecha y hora?
92
Kinco / Re:desaparecen objetos de la pantalla
« Último mensaje por fruiz mayo 24, 2018, 09:13:04 am »
Buenas! Mejoró muchísimo la velocidad de actualización. ya no desaparecen objetos. Gracias


Raro que no muestre un código de error.

Te adjunto un firmware para el PLC que aumenta la capacidad de conexiones simultáneas ModBus TCP, por las dudas sea un tema relacionado donde la pantalla intente realizar varias conexiones al mismo tiempo.

Fíjate de actualizar y probar resultados.



Para actualizar el firmware, ejecuta StxLadder y accedé al menú "PLC / Actualizar firmware (AxBoot)".

Apretá el botón "BOOTLOADER" y luego el botón "RESET".
En este punto el PLC espera el nuevo firmware.

Desde el botón "ABRIR" busca el archivo stx8091-d2_v220.sff que te adjunto.

Una vez seleccionado el archivo, toca el botón "PROGRAMAR" y el nuevo firmware comenzará a cargarse.

Una vez cargado, tocar el botón "DESACTIVAR" y resetear el PLC.

Listo, el PLC ejecutará el nuevo firmware.

Se recomienda cargar el programa de usuario nuevamente.
93
Adjunto el archivo solicitado.-
94
Buenos días.

El archivo que nos pasa, no es el proyecto completo con el código Ladder y no es posible abrirlo para analizar.

Para adjuntar el proyecto completo, en StxLadder ir a menú "Archivo > Crear backup del proyecto (zip)" y adjuntar luego el archivo ZIP creado.

Saludos!
95
Hola Boris,

Vuelvo con una consulta, la misma esta referida a programar un pulsador que mientras este pulsado, habilite una salida rele, y mientras esta sin apretar, no funcione (fue mi ultima consulta).
Segui las indicaciones de tu anterior respuesta, y si bien funcióno, se me genero un problema que te detallo sobre un ejemplo en el programa para que me sea mas sencillo poder explicarlo (te lo adjunto)

Descripción del error: Al apretar DIN1 se ejecuta lo programado en la Network N002 (simpre y cuando No haya  agregado la Network 3). Ahora bien, cuando agrego la Network N003 el pulsador de la DIN6 funciona perfectamente, pero deja de funcionar lo programado en la DIN1-Network 2.
Seguramente hay algún tema que omiti agregar, me podrías orientar?
Te adjunto el ejemplo.

Una vez mas, muchas gracias!
96
STX8091 / Re:Medición de corriente alterna con toroide
« Último mensaje por Soporte mayo 21, 2018, 20:45:42 pm »
Buenas tardes Eduardo.

Adjunto dos proyectos en StxLadder que ejemplifican la medición de voltaje - corriente True RMS (valor eficaz) utilizando un toroide conectado en entrada analógica.

  • Proyecto TrueRMS.zip: cálculo  de valor eficaz mediante lectura y retardo, solo para fines de didácticos y entender uso de formula.
  • Proyecto TrueRmsSampler.zip:  cálculo  de valor eficaz mediante el uso de samplers, más eficiente y permite al PLC realizar otras operaciones sin perder velocidad de repuesta.

Ambos proyectos están explicados mediante comentarios e introducción en archivo info.txt (leer antes de utilizar) ubicado en carpeta "Documentos" del "Explorador de Proyecto" de StxLadder.

PRUEBAS

Conectar el toroide mencionado en "Toroide_Sensor.pdf" con resistor 47 ohms en paralelo a entrada VIN4.

Si la medición de corriente es para línea 50 Hz, colocar en constante "RMS_Period" el valor del periodo en milisegundos, es decir 20.

Cargar al PLC y conectarse con VirtualHMI.

Colocar una carga que pase por el toriode (ejemplo lampara) y ver la corriente medida en VirtualHMI.




Opcional: Sí no se tiene un toroide, se puede simular medición colocando un generador de señal sinusoidal en entrada VIN4 con +/- 1V pico. El VirtualHMI debería leer "Tensión de entrada: 0.7 [V]", que es el valor eficaz que podría medir con un voltimetro AC.



ACERCA DEL VALOR TRUE RMS

True RMS es un termino que significa el valor eficaz de una señal sin importar su forma, puede ser alterna sinusoidal, triangular, cuadrada o continua.

El valor eficaz, se define como el valor de continua (DC) equivalente de una señal de alterna (AC).

Por ejemplo, si una señal de 20 VDC (continua) entrega 20 Watt a un resistor, se necesitará una señal de 20 VAC RMS (valor eficaz) para disipar la misma energía en el resistor.

La formula para el calculo True RMS en tiempo continuo es:



La formula True RMS para tiempo discreto, es la que utilizaremos para el cálculo y es la siguiente:



Como vemos, el valor resultante "i" (que puede ser corriente, voltaje, etc) es la sumatoria del cuadrado de N muestras de valor instantáneo de la señal i(n). Luego dicho valor se divide por N (número de muestras) y al resultante se le aplica la raíz cuadrada. En este punto, obtenemos el valor True RMS de la señal.

Si todos los valores i(n) son iguales (señal continua), el valor de la formula resulta i=i(n), es decir el valor eficaz se convierte en el valor de continua.

Si la señal de entrada es una sinusoidal pura, el valor RMS nos queda i= i(pico) * 1/RaizCuadrada(2) = i(pico) * 0.707

Para señales diferentes o distorsionadas, la formula genera al valor correcto también, por lo tanto es aplicable a cualquier tipo de señal.



Tener en cuenta que el toroide utilizado tiene una frecuencia de trabajo de 20 Hz a 20 KHz (según fabricante), por lo tanto, si la señal de entrada es menor a 20 Hz, no funcionará correctamente el sensado de corriente.
97
StxLadder - Slicetex Ladder Designer Studio / Re:Error en (Loader) de Ladder
« Último mensaje por Soporte mayo 18, 2018, 17:39:41 pm »
Ya llevo un tiempo trabajando sobre un proyecto en Pawn amplio de varios archivos y en la etapa de prueba en los que se compila y carga el programa multiples veces, el código compila correctamente pero en la etapa de carga al PLC devuelve el mensaje de error mostrado en la imagen adjunta.

Al presionar continuar se puede volver a intentar subir el código, pudiendo resultar en el mismo mensaje de error. De otra forma debo apretar en "Salir" cerrandose el programa. Lo raro surge ya que luego de volverlo a abrir usualmente el programa se carga con normalidad y el código funciona correctamente.

Copio a continuación el texto que se encuentra en la zona de detalles de la ventana de error:

Código: (Error Code) [Seleccionar]
System.IndexOutOfRangeException: Índice fuera de los límites de la matriz.
   en SlicetexLadder.Generic_LoaderInterface.Send(LoadScriptOp Op, UInt32 OpArg1, Byte[] OpData, LoadScriptOpStat& OpStat, LoadScriptIapStat& IapStat)

Captura de ventana de error:




Buenas tardes.

Este error es un bug de la versión actual de StxLadder, ya que utiliza una librería de comunicación sin la actualización correspondiente.

Será corregido a partir de la próxima versión (1.8.9) de StxLadder.

Mientras tanto, te adjunto un archivo para corregirlo.

Los pasos serían:

Cerrar StxLadder y todo programa relacionado (VirtualHMI, etc).

Descomprimir el archivo ZIP y copiar su contenido en el directorio de instalación de StxLadder.

Por ejemplo, si el directorio donde está StxLadder instalado es: C:\Program Files\slicetex\StxLadder

Copiar allí los archivos y remplazar los archivos viejos si salta un cartel avisando sobreescritura.

Luego reiniciar normalmente StxLadder.



Si VirtualHMI da el mismo problema (en caso de ternerlo instalado por separado a StxLadder), repetir procedimiento copiando dichos archivos en su directorio de instalación.



Como nota, este error se produce porque al intentar StxLadder comunicarse con el dispositivo, es muy probable que haya otra aplicación realizando una comunicación previa (por ejemplo VirtualHMI), entonces, como la comunicación se realiza por protocolo UDP utilizando el mismo puerto entre estas aplicaciones, la librería en su versión previa, no tiene forma de reconocer si la repuesta del dispositivo es para VirtualHMI o StxLadder. La actualización, previene este error y en su lugar mostrará un cartel de advertencia, pero no cerrará StxLadder. Simplemente, en ese caso, dar click en "Aceptar" en el cartel de dialogo e intentar nuevamente la carga del programa.

Saludos!

98
StxLadder - Slicetex Ladder Designer Studio / Error en (Loader) de Ladder
« Último mensaje por EBD mayo 18, 2018, 15:27:55 pm »
Buenas, quería hacer una consulta por un error que esta devolviendo frecuentemente el programa STX Ladder.
Ya llevo un tiempo trabajando sobre un proyecto en Pawn amplio de varios archivos y en la etapa de prueba en los que se compila y carga el programa multiples veces, el código compila correctamente pero en la etapa de carga al PLC devuelve el mensaje de error mostrado en la imagen adjunta.
Al presionar continuar se puede volver a intentar subir el código, pudiendo resultar en el mismo mensaje de error. De otra forma debo apretar en "Salir" cerrandose el programa. Lo raro surge ya que luego de volverlo a abrir usualmente el programa se carga con normalidad y el código funciona correctamente.
Quería saber si este mensaje de error se puede deber a algún código que haya puesto yo en mi programa y si puede afectar en alguna manera el funcionamiento del mismo (que omita algún código o algo de ese estilo).


Copio a continuación el texto que se encuentra en la zona de detalles de la ventana de error:

============================================================
============================================================
Consulte el final de este mensaje para obtener más detalles sobre cómo invocar a la depuración
Just-In-Time (JIT) en lugar de a este cuadro de diálogo.

************** Texto de la excepción **************
System.IndexOutOfRangeException: Índice fuera de los límites de la matriz.
   en SlicetexLadder.Generic_LoaderInterface.Send(LoadScriptOp Op, UInt32 OpArg1, Byte[] OpData, LoadScriptOpStat& OpStat, LoadScriptIapStat& IapStat)
   en SlicetexLadder.Generic_LoaderForm.zCMx0BfJuE(Object  , EventArgs  )
   en System.Windows.Forms.Control.OnClick(EventArgs e)
   en System.Windows.Forms.Button.OnClick(EventArgs e)
   en System.Windows.Forms.Button.PerformClick()
   en SlicetexLadder.Generic_LoaderForm.ndIagfDx2SXwry0mA16O(Object )
   en SlicetexLadder.Generic_LoaderForm.lYSxB6UMrx(Object  , EventArgs  )
   en System.Windows.Forms.Form.OnShown(EventArgs e)
   en System.Windows.Forms.Form.CallShownEvent()
   en System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
   en System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
   en System.Threading.ExecutionContext.runTryCode(Object userData)
   en System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
   en System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   en System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   en System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
   en System.Windows.Forms.Control.InvokeMarshaledCallbacks()


************** Ensamblados cargados **************
mscorlib
    Versión del ensamblado: 2.0.0.0
    Versión Win32: 2.0.50727.8830 (WinRelRS3.050727-8800)
    Código base: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
mscorlib.resources
    Versión del ensamblado: 2.0.0.0
    Versión Win32: 2.0.50727.8830 (WinRelRS3.050727-8800)
    Código base: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
SlicetexLadder
    Versión del ensamblado: 1.8.8.0
    Versión Win32: 1.8.8.0
    Código base: file:///D:/Program%20Files/slicetex/StxLadder/SlicetexLadder.exe
----------------------------------------
System
    Versión del ensamblado: 2.0.0.0
    Versión Win32: 2.0.50727.8825 (WinRelRS3.050727-8800)
    Código base: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
    Versión del ensamblado: 2.0.0.0
    Versión Win32: 2.0.50727.8825 (WinRelRS3.050727-8800)
    Código base: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Versión del ensamblado: 2.0.0.0
    Versión Win32: 2.0.50727.8825 (WinRelRS3.050727-8800)
    Código base: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
SandDock
    Versión del ensamblado: 3.0.6.1
    Versión Win32: 3.0.6.1
    Código base: file:///D:/Program%20Files/slicetex/StxLadder/SandDock.DLL
----------------------------------------
System.Design
    Versión del ensamblado: 2.0.0.0
    Versión Win32: 2.0.50727.8825 (WinRelRS3.050727-8800)
    Código base: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Design/2.0.0.0__b03f5f7f11d50a3a/System.Design.dll
----------------------------------------
System.Xml
    Versión del ensamblado: 2.0.0.0
    Versión Win32: 2.0.50727.8827 (WinRelRS3.050727-8800)
    Código base: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Windows.Forms.resources
    Versión del ensamblado: 2.0.0.0
    Versión Win32: 2.0.50727.8825 (WinRelRS3.050727-8800)
    Código base: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_es_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
df9e0bd0-2a95-4b88-b3c0-473e9b983894
    Versión del ensamblado: 1.0.0.0
    Versión Win32: 1.8.8.0
    Código base: file:///D:/Program%20Files/slicetex/StxLadder/SlicetexLadder.exe
----------------------------------------
ScintillaNET
    Versión del ensamblado: 2.6.0.0
    Versión Win32: 2.6.0.0
    Código base: file:///D:/Program%20Files/slicetex/StxLadder/ScintillaNET.DLL
----------------------------------------
System.Configuration
    Versión del ensamblado: 2.0.0.0
    Versión Win32: 2.0.50727.8825 (WinRelRS3.050727-8800)
    Código base: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
stx8xxx
    Versión del ensamblado: 1.0.5.0
    Versión Win32: 1.0.5.0
    Código base: file:///D:/Program%20Files/slicetex/StxLadder/stx8xxx.DLL
----------------------------------------
MaskedTextBoxCool
    Versión del ensamblado: 1.0.3603.30835
    Versión Win32: 1.0.3603.30835
    Código base: file:///D:/Program%20Files/slicetex/StxLadder/MaskedTextBoxCool.DLL
----------------------------------------

************** Depuración JIT **************
Para habilitar la depuración Just In Time (JIT), el archivo de configuración de esta
aplicación o equipo (machine.config) debe tener el
valor jitDebugging establecido en la sección system.windows.forms.
La aplicación también se debe compilar con la depuración
habilitada

Por ejemplo:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

Cuando esté habilitada la depuración JIT, cualquier excepción no controlada
se enviará al depurador JIT registrado en el equipo
en lugar de controlarlo mediante el cuadro de diálogo.
99
STX8091 / Re:Medición de corriente alterna con toroide
« Último mensaje por Soporte mayo 17, 2018, 11:55:56 am »
Hola, el generador trifásico (380V-80KVa), alimenta una carga de dos transformadores de media tensión conectados como amplificadores(entrada 380, salida 13.2 Kv, potencia 40 Kva), cuando activamos uno el otro se apaga. Dos reguladores(SCR) realizan el swicheo y manejan la potencia mediante el PLC.

Los cálculos de corriente generalmente se hacen suponiendo una onda sinusoidal en la mayoría de los casos y con carga resistiva. Como vos tenes un switcheo, y según me comentabas en otros post, utilizás diferentes tiempos ON/OFF, sumado a una alta carga inductiva (transformador), dudo que la forma de onda de corriente resultante vaya a ser una sinusoidal pura, y debería tener muchos picos de corriente difícilmente predecibles.

Desconozco como realmente sería un cálculo de corriente certero para una aplicación así, es tarea de un experto en electricidad teórica.

Pero, para no quedarnos en la nada, imagino que podemos tomar un promedio o valor eficaz del valor leído (promedio es diferente a valor eficaz) en el toroide para darnos una idea proporcional de la corriente que circula.

Tomando esta suposición, podemos simplificar el problema, pero como digo, los cálculos 100% correctos escapan ya al análisis que puedo darte como soporte.

NOTA 21/May/2018:
La formula True RMS mencionada con anterioridad permite calcular el valor RMS o eficaz de cualquier tipo de señal, desestimar este párrafo ya que NO ES CORRECTO. Ver siguientes mensajes.


La corriente de trabajo debería no superar los 40000/(400*1.73)=57.8 A. Esta corriente es variable dependiendo de las condiciones de trabajo (humedad en el suelo). por eso el rango debería estar entre 0 a 60 A. pero superado los 55A durante un pequeño tiempo debería apagarse.

Ok, creo entonces que el resistor de 47 ohms que te sugerí arriba seria suficiente. ya que cubriria bien el rango 0-100A. Por las dudas también comprá un resistor de 56 ohms, en caso de que se necesite mayor exactitud (cubriría el rango 0-89A, pero mejor resolución).

Ambos resistores de 1% y de potencia mínima 1 watt o mayor.

La corriente medida se utiliza para detectar cuando se produce algún problema a la salida y se incrementa el consumo, osea la corriente aplicada a la salida(cortocicuito, etc).
La medición de Tensión (400V) la utilizo para verificar que el generador este en régimen y así habilitar el trabajo de los trafos.
Ademas teniendo la corriente y la tensión puedo calcular el consumo de energía aproximado.   

Ok, entonces deduzco que lo que necesitas es corriente eficaz (RMS).

Por ello el algoritmo para procesar la señal debe emplear la formula que te pasé arriba.

También el periodo de muestro a tomar tiene que ser múltiplo de la frecuencia de switcheo que vas a utilizar en los SCR.

Dame unos días así te paso un ejemplo (ya que requiere análisis) que aplique dicho algoritmo para interpretar corriente RMS a partir de una señal alterna sinusoidal del toroide (base de nuestra suposición). Así te sirve de guía para que luego adaptes o mejores.

Te aviso por este medio cuando tenga el ejemplo.

Saludos

NOTA 21/May/2018:
En el siguiente mensaje se comparten dos ejemplos para el PLC empleando la formula True RMS, que permite calcular el valor eficaz de cualquier tipo de señal, independiente de su forma.


100
STX8091 / Re:Medición de corriente alterna con toroide
« Último mensaje por Tama mayo 16, 2018, 18:41:19 pm »
 :)Hola, el generador trifásico (380V-80KVa), alimenta una carga de dos transformadores de media tensión conectados como amplificadores(entrada 380, salida 13.2 Kv, potencia 40 Kva), cuando activamos uno el otro se apaga. Dos reguladores(SCR) realizan el swicheo y manejan la potencia mediante el PLC.
La corriente de trabajo debería no superar los 40000/(400*1.73)=57.8 A. Esta corriente es variable dependiendo de las condiciones de trabajo (humedad en el suelo). por eso el rango debería estar entre 0 a 60 A. pero superado los 55A durante un pequeño tiempo debería apagarse.
La corriente medida se utiliza para detectar cuando se produce algún problema a la salida y se incrementa el consumo, osea la corriente aplicada a la salida(cortocicuito, etc).
La medición de Tensión (400V) la utilizo para verificar que el generador este en régimen y así habilitar el trabajo de los trafos.
Ademas teniendo la corriente y la tensión puedo calcular el consumo de energía aproximado.   
Gracias.
Páginas: 1 ... 8 9 [10]