EcoStruxure Machine Expert versión 1.1 no soporta los controladores M258, LMC058 y LMC078.

Aplicaciones online

Descripción general

NOTA: Algunos de los comandos de las aplicaciones online pueden cambiar temporalmente la aplicación activa.

Esta interfaz se exporta a Python y, por tanto, cumple los estándares de nomenclatura de Python.

Creación de aplicaciones en línea

Con este método se crea una aplicación en línea.

# Create online application
online_application = online.create_online_application()

Valores preparados

Este ejemplo muestra cómo escribir valores preparados.

try:
    # Trying to create online application
    online_application = online.create_online_application()
 
    print("app:" + str(online_application.application_state) + "op:" + online_application.operation_state.ToString("f"))
 
    for expression in online_application.get_prepared_expressions():
        online_application.set_prepared_value(expression, '')
        print "%s: '%s' '%s'" % (expression, online_application.read_value(expression), online_application.get_prepared_value(expression))
 
    for expression in online_application.get_forced_expressions():
        online_application.set_unforce_value(expression)
        print "%s: '%s' '%s'" % (expression, online_application.read_value(expression), online_application.get_prepared_value(expression))
 
    assert len(online_application.get_prepared_expressions()) == 0, "Still some prepared values remain."
    assert len(online_application.get_forced_expressions()) == 0, "Still some prepared values remain."
 
    # Preparing a value and forcing it
    online_application.set_prepared_value("POU.testoutput", "123")
    online_application.force_prepared_values()
 
    # Preparing a value and writing it    online_application.set_prepared_value("POU.testint", "INT#1147")
    online_application.write_prepared_values()
 
except Exception as exception:
    print("Error: " + str(exception))
    if not system.trace:
       print("Please turn on the 'Script Tracing' function to get detailed information about the script execution.")

Inicio de sesión en la aplicación

Con este método se lleva a cabo el inicio de sesión en la aplicación. Si antes ya se ha iniciado sesión en la aplicación, se cerrará y se llevará a cabo un nuevo inicio de sesión.

Consta de 2 parámetros:

oEl primer parámetro es la opción de cambio.

oEl segundo parámetro eliminará las aplicaciones anteriores, si se establece en True.

# Get the project reference
project_reference = projects.primary
 
# Fetch the active application
active_application = project_reference.active_application
 
# Create the online application for it
online_application = online.create_online_application(active_application)
 
# Log in to the device.
online_application.login(OnlineChangeOption.Try, True)

Cierre de sesión de la aplicación

Este método cierra la sesión de la aplicación. Si no se había iniciado sesión en la aplicación, no pasará nada.

# Get the project reference
project_reference = projects.primary
 
# Fetch the active application
active_application = project_reference.active_application
 
# Create the online application for it
online_application = online.create_online_application(active_application)
 
# Log in to the device.
online_application.logout()

Inicio de la aplicación

Este método inicia la aplicación.

# Get the project reference
project_reference = projects.primary
 
# Fetch the active application
active_application = project_reference.active_application
 
# Create the online application for it
online_application = online.create_online_application(active_application)
 
# Log in to the device.
online_application.login(OnlineChangeOption.Try, True)
 
# Start the application, if necessary
if not online_application.application_state == ApplicationState.run:
    online_application.start()
 
    # Let the app do its work for some time
    system.delay(1000)

Detención de la aplicación

Este método detiene la aplicación.

# Get the project reference
project_reference = projects.primary
 
# Fetch the active application
active_application = project_reference.active_application
 
# Create the online application for it
online_application = online.create_online_application(active_application)
 
# Log in to the device.
online_application.login(OnlineChangeOption.Try, True)
 
# Stop the application, if necessary
if online_application.application_state == ApplicationState.run:
    online_application.stop()