UnderAutomation
    • pagina de inicio
  • Productos
    • Universal Robots SDK
    • Fanuc SDK
    • Yaskawa SDK
    • Staubli SDK
      • Descripción general
      • Descargar
      • Documentación
    • Cotización • Orden
    • Licencia
¿Una pregunta?

[email protected]

Contactos
UnderAutomation
  • pagina de inicio
  • Productos
      • Descripción general
      • Descargar
      • Documentación
      • Descripción general
      • Descargar
      • Documentación
      • Descripción general
      • Descargar
      • Documentación
      • Descripción general
      • Descargar
      • Documentación
  • Cotización • Orden
  • Contactos
⌘Q

Staubli SDK

1/0
GitHub stars
290 (EUR) • 340 (USD)

290

€

de por vida

174

€

para universidades (40% de descuento)

Cree rápidamente aplicaciones .NET que se comuniquen con su robot industrial Staubli.


OrdenSolicitar 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

Staubli Communication Library

Implementa los protocolos Ethernet disponibles de forma nativa en los robots Staubli
100% managed assembly
Rápida integración con los controladores CS8 y CS9
Biblioteca moderna y bien documentada
No se necesita una llave USB física

1

Resumen de funciones

Mover el robot

Encendido remoto y envío de comandos de movimiento en articulaciones o coordenadas cartesianas.
// Power on the controller
PowerReturnCode powerOnStatus = controller.Soap.SetPower(power: true);
// Move linear to cartesian position
IMoveResult moveLResult = controller.Soap.MoveL(
robot: 0,
position,
motionDesc
);
// Move joints to cartesian position
IMoveResult moveJCResult = controller.Soap.MoveJC(
robot: 0,
position,
motionDesc
);
// Move joints to joint position
IMoveResult moveJResult = controller.Soap.MoveJJ(
robot: 0,
joints,
motionDesc
);
// Move Circular
IMoveResult moveCResult = controller.Soap.MoveC(
robot: 0,
position,
position2,
motionDesc
);
// Stop motion
MotionReturnCode stopStatus = controller.Soap.StopMotion();
// Reset motion
MotionReturnCode resetStatus = controller.Soap.ResetMotion();
// Restart motion
MotionReturnCode restartStatus = controller.Soap.RestartMotion();

Aplicaciones de manipulación

Cargar, iniciar, detener, pausar y supervisar la ejecución de tareas.
// Load project from disk
controller.Soap.LoadProject("Disk://myProject/myProject.pjx");
ValApplication[] applications = controller.Soap.GetValApplications();
foreach (var application in applications)
Console.WriteLine($"Application: {application.Name}, Running: {application.IsRunning}");
// Unload all applications
controller.Soap.StopAndUnloadAll();
// Stop running application
controller.Soap.StopApplication();
// Get tasks
ControllerTask[] tasks = controller.Soap.GetTasks(); // Get all tasks
foreach (var task in tasks)
{
Console.WriteLine($"Task: {task.Name}");
Console.WriteLine($"reated by: {task.CreatedBy}"); // i.e. Disk://myProject/myProject.pjx
Console.WriteLine($"Line: {task.ProgramLine}");
Console.WriteLine($"State: {task.State}");
}
// Kill task
controller.Soap.TaskKill(tasks[0].Name, tasks[0].CreatedBy);
// Suspend task
controller.Soap.TaskSuspend(tasks[0].Name, tasks[0].CreatedBy);
// Resume task
controller.Soap.TaskResume(tasks[0].Name, tasks[0].CreatedBy);

Posición actual

Obtener la posición actual del robot, incluidas las coordenadas cartesianas y los ángulos de las articulaciones.
// Get the current flange position of the first robot in world coordinates
CartesianJointPosition position = controller.Soap.GetCurrentCartesianJointPosition(robot: 0, tool: null, frame: null);
double[] jointPosition1 = position.JointsPosition; // Joint position in radians
CartesianPosition cartesianPosition = position.CartesianPosition;
Console.WriteLine($"X: {cartesianPosition.X}, Y: {cartesianPosition.Y}, Z: {cartesianPosition.Z}");
Console.WriteLine($"Rx: {cartesianPosition.Rx}, Ry: {cartesianPosition.Ry}, Rz: {cartesianPosition.Rz}");
// ---------------
// Get only the current joint position of the first robot
double[] jointPosition2 = controller.Soap.GetCurrentJointPosition(robot: 0);
// ---------------
// Get the joint ranges (min/max angle of each joint)
controller.Soap.GetJointRange(robot: 0);

Calcular la posición cartesiana a partir de los ángulos articulares y viceversa.

Calcular la posición cartesiana a partir de los ángulos articulares y viceversa.
// Get forward kinematics
IForwardKinematics fk = controller.Soap.ForwardKinematics(
robot: 0, // Index of the robot (0 for the first robot)
joints // double[] of joint positions in radians
);
// Position matrix
Frame position = fk.Position;
// Position configuration
Config config = fk.Config; // i.e. Righty/Lefty, Elbow Positive/Negtive, ...
// -----------------
// Get inverse kinematics
IReverseKinematics ik = controller.Soap.ReverseKinematics(
robot: 0, // Index of the robot (0 for the first robot)
joints,
position,
config,
range
);
if (ik.Result == ReversingResult.Success)
foreach (double joint in ik.Joint) Console.WriteLine(joint);

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.
Robot[] robots = controller.Soap.GetRobots(); // Get all robots driven by the controller
foreach (var robot in robots)
{
Console.WriteLine($"Arm: {robot.Arm}"); // i.e. TX2-140
Console.WriteLine($"Mount type: {robot.MountType}"); // i.e. Floor, Ceiling, Wall
Console.WriteLine($"Kinematic: {robot.Kinematic}"); // i.e. ANTHROPOMORPH6, SCARA, ...
// see Robot class for more properties
}
// ---------------
Parameter[] controllerParams = controller.Soap.GetControllerParameters(); // Get controller parameters
foreach (var param in controllerParams)
Console.WriteLine($"{param.Name} = {param.Value}"); // i.e. CycleTime = 0.004s
// ---------------
DhParameters[] dhParameters = controller.Soap.GetDhParameters(robot: 0); // Get DH parameters of the first robot
foreach (var dh in dhParameters)
Console.WriteLine($"{dh.Alpha} - {dh.Beta} - {dh.Theta} - {dh.A} - {dh.D}");

Entradas / Salidas

Listar, leer y escribir entradas y salidas del controlador
// Get all physical I/O ports of the controller
PhysicalIo[] ios = controller.Soap.GetAllPhysicalIos();
foreach (var io in ios)
{
Console.WriteLine($"Name: {io.Name}");
Console.WriteLine($"Type: {io.Description}");
Console.WriteLine($"Lockable: {io.Lockable}"); // i.e. true, false
Console.WriteLine($"Description: {io.TypeStr}"); // i.e. din, dout, ain, serial
}
// -----------------
// Read I/Os value
PhysicalIoState[] values = controller.Soap.ReadIos(new[] { @"Socket\test", @"Serial\0", @"FastIO\fOut1", @"CpuUsage\val3" });
foreach (var value in values)
{
Console.WriteLine("Value: " + value.Value);
Console.WriteLine("Locked: " + value.Locked);
Console.WriteLine("Simulated: " + value.Simulated);
}
// -----------------
// Write I/Os value
PhysicalIoWriteResponse[] response = controller.Soap.WriteIos(new[] { "my_io_1", "my_io_2" }, new double[] { 1.0, 0.0 });
foreach (var res in response)
Console.WriteLine($"Success: {res.Success} - Found: {res.Found}");
2

Examinar la documentación

Examinar la documentación

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

Introducción a .net

Codifica tu aplicación en C# o VB.NET con esta librería 100% gestionada, sin dependencias y disponible en Nuget.org en la versión y arquitectura que elijas (x86, x64, arm, linux, windows, macOS, .NET Framework, .NET Core, UWP, etc.).

3

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

​
Ver 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)
4

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.

Mas popular

Licencia del sitio

290 (EUR) • 290 (USD)

290

€

de por vida

174

€

para universidades (40% de descuento)

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.
1 año de mantenimiento incluido (acceso a las actualizaciones)
Póngase en contacto con nosotros para realizar el pago por transferencia bancaria. Una vez que haya adquirido la licencia de este SDK, recibirá su número de licencia y la factura por correo electrónico.
No hay fuentes internas; sólo se proporciona la DLL ofuscada.
Comprar ahora

Licencia del código fuente

1160 (EUR) • 1160 (USD)

1160

€

de por vida

696

€

para universidades (40% de descuento)

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.
Puede modificar este código fuente y utilizarlo en su aplicación, dentro de los límites definidos en las condiciones generales de uso
Comprar ahora

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

UnderAutomation
ContactosLegal
Productos
Universal Robots SDKFanuc SDKYaskawa SDKStaubli SDK
enEnglish
frFrançais
deDeutsch
esEspañol
zh中文
ja日本語
ko한국어

© All rights reserved.