UnderAutomation
¿Una pregunta?

[email protected]

Contactos
UnderAutomation
⌘Q

Staubli SDK

GitHub stars

300 (EUR) • 350 (USD)

300€de por vida
180€para universidades (40% de descuento)

Cree rápidamente aplicaciones en .NET, Python o LabVIEW que se comuniquen con su robot industrial Staubli.

Elija la licencia adecuada para su proyecto
PedirSolicitar un presupuesto

.NET

Python

LabVIEW

Ver condiciones generales
Plug & Play

Conecta tu robot en tan solo unos minutos. No es necesario instalar un administrador de licencias ni una llave USB. Sólo haga referencia a la biblioteca.

No hay complementos para instalar en el robot

Uso de protocolos de red proporcionados como estándar por el controlador de robots.
ROS

Prueba de 30 días

Pruébelo gratis durante 30 días, sin compromiso, no se requiere registro

Pagar una vez, use para siempre

Licencia perpetua, no se requiere suscripción, independientemente del número de robots, desarrolladores o software redistribuido

  1. Características del SDK Staubli: SOAP y FTP para CS8 & CS9

    Mover el robot

    Encendido remoto y envío de comandos de movimiento en articulaciones o coordenadas cartesianas.
    Frame intermediate = controller.Soap.ForwardKinematics(robot: 0, joints).Position;
    intermediate.Py += 0.05;
    controller.Soap.SetPower(true);
    // Joint move to joint values, in radians
    IMoveResult result = controller.Soap.MoveJJ(robot: 0, joints, mdesc);
    // Joint move to a Cartesian frame
    result = controller.Soap.MoveJC(robot: 0, target, mdesc);
    // Straight line to a Cartesian frame
    result = controller.Soap.MoveL(robot: 0, target, mdesc);
    // Circle through an intermediate frame, to a target frame
    result = controller.Soap.MoveC(robot: 0, intermediate, target, mdesc);
    // The controller accepted the move, or tells why not
    if (result.ReturnCode != MotionReturnCode.Success)
    Console.WriteLine($"Move {result.Id} refused: {result.ReturnCode}");
    controller.Disconnect();
    }
    Click to see the full code

    Aplicaciones de manipulación

    Cargar, iniciar, detener, pausar y supervisar la ejecución de tareas.
    var controller = new StaubliController();
    controller.Connect("192.168.0.254");
    // Path of the project on the disk of the controller
    string project = "Disk://myProject/myProject.pjx";
    // Load the application in memory, without starting it
    controller.Soap.LoadProject(project);
    // Start it
    controller.Soap.StartApplication(project);
    controller.Disconnect();
    }
    Click to see the full code

    Transferencia de archivos

    Listar, enviar, descargar y eliminar los archivos del controlador, y enviar una aplicación VAL 3 completa en una sola llamada. Por FTP, o con el archivo .controller de un controlador emulado por Staubli Robotics Suite.
    var controller = new StaubliController();
    controller.Connect(parameters);
    // The application must not be in memory while its files are replaced
    controller.Soap.StopAndUnloadAll();
    // Copies C:\MyApps\myApp and its sub-folders to /usr/usrapp/myApp on the controller
    string remoteFolder = controller.File.UploadApplicationToController(@"C:\MyApps\myApp",
    progress => Console.WriteLine($"{progress:0}%"));
    // /usr/usrapp/myApp/myApp.pjx is Disk://myApp/myApp.pjx for the SOAP methods
    controller.Soap.LoadProject("Disk://myApp/myApp.pjx");
    controller.Soap.StartApplication("Disk://myApp/myApp.pjx");
    controller.Disconnect();
    }
    Click to see the full code

    Posición y cinemática

    Leer las articulaciones y la posición cartesiana del robot, y calcular la cinemática directa e inversa en el controlador.
    var controller = new StaubliController();
    controller.Connect("192.168.0.254");
    // Joint values in radians, here the current ones
    double[] joints = controller.Soap.GetCurrentJointPosition(robot: 0);
    // The controller computes the flange frame for these joints
    IForwardKinematics fk = controller.Soap.ForwardKinematics(robot: 0, joints);
    // Position of the frame origin, and its orientation as a rotation matrix
    Frame frame = fk.Position;
    Console.WriteLine($"P = [{frame.Px}, {frame.Py}, {frame.Pz}]");
    // Configuration of the arm for this position (shoulder, elbow, wrist)
    Config config = fk.Config;
    Console.WriteLine(config);
    controller.Disconnect();
    }
    Click to see the full code

    Información

    Obtenga las características del controlador y los robots que se controlan, incluido el modelo, la versión de software, el estado de la alimentación y mucho más.
    var controller = new StaubliController();
    controller.Connect("192.168.0.254");
    // The robots driven by the controller. The index in this array
    // is the robot number that the other methods take.
    Robot[] robots = controller.Soap.GetRobots();
    for (int i = 0; i < robots.Length; i++)
    {
    Robot robot = robots[i];
    Console.WriteLine($"Robot {i}: {robot.Arm}"); // for example TX2-60
    Console.WriteLine($" Kinematic: {robot.Kinematic}"); // Anthropomorph6, Scara...
    Console.WriteLine($" Mount type: {robot.MountType}"); // Floor, Ceiling, Wall
    Console.WriteLine($" Tuning: {robot.Tuning}");
    }
    controller.Disconnect();
    }
    Click to see the full code

    Entradas / Salidas

    Listar, leer y escribir entradas y salidas del controlador
    var controller = new StaubliController();
    controller.Connect("192.168.0.254");
    // Names as returned by GetAllPhysicalIos
    string[] names = { @"BasicIO-1\%I0", @"BasicIO-1\%Q0" };
    // One state per name, in the same order
    PhysicalIoState[] states = controller.Soap.ReadIos(names);
    for (int i = 0; i < names.Length; i++)
    {
    PhysicalIoState state = states[i];
    // State tells if the name exists on this controller
    if (state.State != PhysicalIoEnumState.Defined)
    {
    Console.WriteLine($"{names[i]}: {state.State}");
    continue;
    }
    Console.WriteLine($"{names[i]} = {state.Value} locked={state.Locked} simulated={state.Simulated}");
    }
    controller.Disconnect();
    }
    Click to see the full code
  2. Examinar la documentación

    Explorar la documentación

    La documentación le permite comenzar a desarrollar rápidamente con la biblioteca. La misma funcionalidad está disponible en todos los idiomas compatibles.

  3. Preguntas frecuentes

    ¿Hay que instalar algo en el robot Staubli?

    No. El SDK usa el servidor SOAP del controlador, la misma interfaz que usa Staubli Robotics Suite (SRS), y su servidor FTP para los archivos. El controlador debe ser accesible en la red, con una cuenta de usuario que tenga los derechos para las operaciones solicitadas.

    ¿Qué controladores Staubli son compatibles?

    Los controladores CS8 y CS9, con la misma API para ambos. El SDK lee los robots del controlador, sus posiciones, las entradas y salidas y las aplicaciones VAL 3, y puede mover el robot.

    ¿Se pueden transferir archivos con el emulador de Staubli Robotics Suite?

    Sí. El emulador no tiene servidor FTP, pero guarda los archivos del controlador emulado en la carpeta de su archivo .controller, con la misma estructura que un controlador real. Indique la ruta del archivo .controller como dirección: los mismos métodos y las mismas rutas funcionan entonces, y el SDK lee el puerto SOAP del controlador emulado en su configuración. Use una ruta UNC cuando el emulador se ejecuta en otro PC.

    ¿Cuánto cuesta el SDK Staubli?

    La licencia es perpetua, sin suscripción. Standard: 300 EUR / 350 USD. Pro: 600 EUR / 700 USD. Source: 1200 EUR / 1400 USD. Cubre una organización en una dirección, con un número ilimitado de desarrolladores, robots y aplicaciones entregadas. Las actualizaciones están incluidas durante 1 año con Standard y 3 años con Pro y Source. Las universidades tienen un descuento del 40 %.

    ¿Puedo probar el SDK antes de comprarlo?

    Sí. Todas las funciones están disponibles durante 30 días desde el primer uso, sin registro. La prueba se puede ampliar bajo petición. La aplicación de demostración para Windows permite probar el SDK con su robot sin escribir código.

    ¿Funciona el SDK en Linux y macOS?

    Sí. La biblioteca está compilada para .NET Standard 2.0 y 2.1, que funcionan en Windows, Linux y macOS, en x64 y ARM. Para Python en Linux o macOS, instale el runtime de .NET y ejecute export PYTHONNET_RUNTIME=coreclr antes de iniciar Python.

    ¿Puedo usar el SDK desde Python?

    Sí. pip install UnderAutomation.Staubli instala el paquete y pythonnet, que carga la biblioteca .NET en el proceso de Python. Se admiten Python 3.7 a 3.13. La API es la misma que en .NET, con nombres de Python.

    ¿Existe una versión para LabVIEW?

    Hay una biblioteca LabVIEW disponible bajo petición. Contáctenos para obtenerla.

    ¿Puedo obtener el código fuente?

    Sí, con la licencia Source: todo el código C# de la biblioteca y su solución de Visual Studio. Puede modificarlo y usarlo en sus aplicaciones, dentro de los límites del contrato de licencia (EULA). Las licencias Standard y Pro solo incluyen la DLL ofuscada.

  4. Descargar y probar

    Descargar a través de Nuget
    Descargar a través de Nuget

    Agregue fácilmente este SDK a su proyecto Visual Studio a través del Administrador de paquetes Nuget.

    Ver en Nuget
    Ejemplos en Github
    Ejemplos en Github

    Las fuentes de ejemplos de uso de este SDK están disponibles en GitHub

    Ejemplo de aplicación de Windows
    Ejemplo de aplicación de Windows

    Le permite probar todas las características del SDK con una interfaz simple. El ejemplo se compila en "auto contenido" y "archivo único" con .NET 8. La aplicación es portátil sin instalación.

    Al descargar, acepta las condiciones generales de uso:
    Ver condiciones generales
    UnderAutomation.Staubli.Showcase.Forms.exe (139 MB)
  5. Solicitud de presupuesto y pedido

    Precios

    Las bibliotecas se pueden descargar de forma gratuita y se pueden probar durante 30 días. Después de este período, puede solicitarnos que extendamos el período de prueba o que compren la licencia que mejor se adapte a usted: Sitio (solo binario oscurecido) o fuente (código fuente). Después de comprar, tiene un período de mantenimiento de un año, lo que le brinda acceso prioritario al soporte y la posibilidad de actualizar. Cuando compra una licencia para usar, está vinculada a una marca de robot, puede usarla para siempre, sin una tarifa recurrente, independientemente de la cantidad de robot, desarrollador o software que redistribuya a sus clientes. Si usted es un distribuidor y desea ofrecer a sus clientes uno de nuestros productos, contáctenos para discutir condiciones y precios especiales.

    Licencia Sitio Estándar

    300€ (EUR) • $350 (USD)

    300€de por vida
    180€para universidades (40% de descuento)
    Diseñado para entornos industriales, brinda acceso a todas las funciones de por vida.
    1 año de mantenimiento incluido (acceso a actualizaciones)
    Mismas condiciones que la Licencia Pro, excepto que no se prioriza el soporte y el mantenimiento es de 1 año.
    No hay fuentes internas; sólo se proporciona la DLL ofuscada.
    No hay asistencia por videoconferencia (solo vía correo electrónico).
    Comprar ahora
    Mas popular

    Licencia Pro

    600€ (EUR) • $700 (USD)

    600€
    900€
    de por vida
    360€para universidades (40% de descuento)
    Para entornos de producción críticos que requieren soporte prioritario y mantenimiento a largo plazo.
    3 años de mantenimiento incluido (acceso a actualizaciones) sin pedidos de renovación durante este plazo (cero trámites)
    SDK completo y permanente: no se requiere una suscripción recurrente, la licencia es suya para siempre y funciona en todos los lenguajes de programación para una marca robot.
    Solo puede ser utilizado por la organización que posee la licencia, en la dirección postal indicada. Todos los desarrolladores del equipo compartirán la misma licencia, independientemente del número de máquinas de desarrollo.
    Cualquier aplicación desarrollada utilizando el SDK se puede entregar a un número ilimitado de sus clientes sin costo adicional, independientemente del número de robots para conectarse.
    La licencia es un tipo de contraseña para llamar al código que desbloquea la funcionalidad. No hay software adicional para instalar. No hay clave USB.
    Soporte Prioritario (<24h en promedio)
    Asistencia remota (correo electrónico y hasta 2h videoconferencia)
    No hay fuentes internas; sólo se proporciona la DLL ofuscada.
    Actualiza a Source en cualquier momento (paga la diferencia)
    Comprar ahora

    Licencia de código fuente

    1200€ (EUR) • $1400 (USD)

    1200€de por vida
    720€para universidades (40% de descuento)
    Para una soberanía técnica completa, una personalización profunda y una independencia total.
    Mismas condiciones que la licencia pro
    Código interno completo de la biblioteca en C#
    Solución de Visual Studio que incluye miles de líneas de código desarrolladas a lo largo de varios años.
    Puedes modificar este código fuente y utilizarlo en tu aplicación, dentro de los límites definidos en las condiciones generales de uso.
    Compatible con agentes de codificación IA (Claude, Copilot, Cursor, Codex...) gracias al acceso completo al código fuente y los archivos de contexto incluidos (AGENTS.md) que dan al LLM conocimiento exacto de los internals del SDK
    Comprar ahora

Integre fácilmente robots Universal Robots, Fanuc, Yaskawa, ABB o Staubli en sus aplicaciones .NET, Python, LabVIEW o Matlab

UnderAutomation
ContactosLegal

© All rights reserved.