{"searchBar":{"inputPlaceholder":"Busca por palabra clave o haz una pregunta","searchBtn":"Buscar","error":"Ingresa una palabra para buscar"}}
{}

Bienvenido al sitio web de Schneider Electric

Puede visitar nuestro sitio web en otro país o región, o ir a nuestro sitio web global.

Seleccione su ubicación

Welcome the the Schneider Electric French website. It looks like you are located in the United States, would you like to change your location?

Traduisez en francais
{"support":{"yesButton":"Sí","noButton":"No","feedback":{"title":"¿Qué podemos hacer para mejorar?"},"submitButton":"Enviar","successMessage":"Gracias por tus comentarios","title":"¿Te fue de ayuda?","feedbackPercentLabel":"de las personas encontraron esto útil","captcha":{"error":"Por favor, marca una casilla"}}}
Buscar Preguntas Frecuentes

¿Cómo extender la vida útil de una tarjeta SD utilizada para el registro de ficheros?

Las tarjetas SD tienen un número limitado de operaciones de escritura por sector antes de que el sector se marque como defectuoso (aproximadamente 100,000). Las operaciones de eliminación también cuentan para el número de operaciones de escritura. Por otra parte, no se disponen de medios que pueden indicar el nivel de desgaste de los sectores para saber cuándo un sector se acerca a su fin de vida.
 
Características de las tarjetas SD de Modicon M340 M580:
  • El búfer es de 512 bytes.
  • Los sectores son de 512 bytes.
  • Incluye algoritmos de nivelación de desgaste.
Debido a estas restricciones tecnológicas, es fundamental optimizar el uso de la tarjeta SD MODICON M340 y M580. Esto se logra escribiendo solo 512 bytes por operación de escritura.

Hay dos excepciones a esto:
  • El número total de bytes necesarios en un archivo es inferior a 512 bytes.
  • La última escritura en un archivo antes de cerrarlo será inferior a 512 bytes.
Una buena práctica para la realización o tratamiento de ficheros el FTP del M340 / M580 que se localiza en una SD sería:
 
1) Las instancias de los EFB de administración de archivos en Unity Pro / Contro Expert deben ejecutarse en cada ciclo de scan.Asegura que los estados de los EFB's se actualicen en todo momento. (Done Status y Error) (Ver ejemplo del bloque Create_File con los datos de salida comentados).
2)    Los nombres de archivo en la SD deben ser únicos.
3)    Los archivos deben abrirse y permanecer abiertos mientras haya datos escritos. Evite abrir y cerrar archivos cada vez que sea necesario escribir.
4)    Evite la interacción del cliente FTP con los archivos de registro que están actualmente abiertos.
5)    El uso de una tarea periódica en la MAST reducirá el tiempo de transferencia de archivos FTP de la tarjeta de almacenamiento de archivos SD.

A continuación se muestra el código de ejemplo. Este código solo se proporciona como referencia y está incompleto para funcionar realmente , ya que no hay creación / apertura ni cierre de archivos. El propósito del Código de ejemplo es demostrar un método para limitar la Escritura de datos en la Tarjeta de almacenamiento de archivos SD con 512 bytes cuando la cantidad total de datos que se necesita escribir es mayor que 512 bytes.

Variables definidas y utilizadas en el código de ejemplo:
 


Código de ejemplo:
 
    IF %S13 THEN (* Inicialización. Primer Scan *)
    MyDINT := 0;
    My1025byteVariable := '';
    END_IF;
    IF WR_DATA_TO_FILE_EFB.DONE THEN
    RESET(MyWriteToFile);
    My512byteVariable := '';
    JMP Skip_1_Scan;
    END_IF;
    IF NOT %S13 OR (WR_DATA_TO_FILE_EFB.DONE AND NOT MyWriteToFile_TargetReached) THEN
        WHILE LEN_INT(IN := My1025byteVariable) <= 512 DO
        MyDINTasSTRING := DINT_TO_STRING(IN := MyDINT); (* MyDINTasSTRING length = 11 caracteres *)
        My1025byteVariable := CONCAT_STR(IN1 := My1025byteVariable,
                                            IN2 := MyDINTasSTRING);
        MyDINT := MyDINT + 1;
        END_WHILE(* Aquí, el tamaño de My1025byteVariable será siempre de 512..522 bytes*)
        My512byteVariable := My1025byteVariable(* *)
        MyTempINT := LEN_INT(My1025byteVariable);
        My1025byteVariable := MID_INT(My1025byteVariable, MyTempINT - 512, 513);
    END_IF;
Skip_1_Scan:
    IF NOT MyWriteToFile_TargetReached THEN
    SET(MyWriteToFile);
    END_IF;
    WR_DATA_TO_FILE_EFB(REQ := MyWriteToFile,
                        FILEDESC := MyFileDesc,
                        VARIABLE := My512byteVariable,
                        DONE => MyWriteToFile_DONE,
                        ERROR => MyWriteToFile_ERROR,
                        STATUS => MyWriteToFile_STATUS);
    MyWriteTest_CTU(CU := MyWriteToFile,
                    R := %S13,
                    PV := MyWriteToFile_Target,
                    Q => MyWriteToFile_TargetReached,
                    CV => MyWriteToFile_Count);
 
Explora más

¿No encuentras lo que estás buscando?

Comunícate con nuestro equipo de Atención al Cliente para recibir soporte técnico, asistencia para quejas y más.
Explora más