UnderAutomation
有问题吗?

[email protected]

联系我们
UnderAutomation
⌘Q

Universal Robots SDK

GitHub stars
1100 (EUR)1300 (USD)

$

1300

为了一生

$

780

大学(40% 折扣)

在.NET、Python、Labview或Matlab中快速创建与Universal Robots cobot通信的应用程序。

为您的项目选择正确的许可证
命令要求报价

.NET

Python

LabVIEW

见条款和条件
Plug & Play

只需几分钟即可连接您的机器人。无需安装许可证管理器,无需 USB 密钥。仅参考图书馆。

没有在机器人上安装的插件

使用机器人控制器作为标准提供的网络协议。
URCaps ROS

30 天试用

免费试用 30 天,无承诺,无需注册

付一次,永远使用

永久许可,无需订阅,无论机器人,开发人员的数量是多少

UR+认证

环球机器人公司的技术和销售团队已经审核了这个库。他们认证它是符合要求的,并与他们的机器人及其生态系统完美结合。

参见universal-robots.com

特点

该库以多种语言实现了Universal Robots cobots的所有本地协议,使您的计算机能够同步和远程控制机器人手臂。

远程控制

Dashboard服务器协议,允许你通过TCP/IP远程向机器人发送命令。例如,你可以打开或关闭机器人手臂,释放刹车,加载程序,运行或停止它。
// Create a new robot instance
var robot = new UR();
// Connect to the robot
robot.Connect("192.168.0.1");
// Power on the robot arm and release brakes
robot.Dashboard.PowerOn();
robot.Dashboard.ReleaseBrake();
// Load program file to polyscope
robot.Dashboard.LoadProgram("fast_bin_picking.urp");
// Start the program
robot.Dashboard.Play();
// Get program name and state
var state = robot.Dashboard.GetProgramState();
Console.WriteLine($"Program name : {state.Value.Name}");
Console.WriteLine($"Stopped, Playing or Paused ? : {state.Value.State}");
// Display a popup on the pendant
robot.Dashboard.ShowPopup("I just remote-controlled my robot!");

交换测量结果

"Primary Interface"和 "RTDE"(实时数据交换)允许您从机器人接收高达500Hz的测量流,其中包含大量信息:位置、状态、输入和输出、程序变量的值等,因此您的应用程序可以与机器人同步。 此外,还可以向机器人高速写入共享寄存器。
// Display robot TCP pose
var pose = robot.Rtde.OutputDataValues.ActualTcpPose;
// pose.X, pose.Y, pose.Z, pose.Rx, ...
// Display robot TCP force
var force = robot.Rtde.OutputDataValues.ActualTcpForce;
// Write data in robot controler
var inputs = new RtdeInputValues();
inputs.StandardAnalogOutput0 = 0.2;
inputs.InputBitRegisters.X64 = true;
robot.Rtde.WriteInputs(inputs);
// Display all program and installation variables
var variables = robot.PrimaryInterface.GlobalVariables.GetAll();
string name = variables[0].Name;
Pose value = variables[0].ToPose();
GlobalVariableTypes type = variables[0].Type;

脚本和方案

  • 你可以通过TCP/IP套接字发送URScript脚本行来执行。
  • 功能允许你在本地建立和编辑一个*.URP程序文件,然后将其传送到UR控制器中执行。
// Ask robot to execute a movej
robot.PrimaryInterface.Script.Send("movej([-1.5,-1.5,-2,-0.5,1.8,0], a=1.4, v=1.05, t=0, r=0)");
// Enumerates files and folder
SftpFile[] items = robot.Sftp.ListDirectory("/home/ur/ursim-current/programs/");
// Download program file prg.urp to your local disk
robot.Sftp.DownloadFile("/home/ur/ursim-current/programs/prg.urp", @"C:\temp\prg.urp");
// Send a local file to the robot
robot.Sftp.UploadFile(@"C:\temp\prg.urp", "/home/ur/ursim-current/programs/prg.urp");
// Manipulate files and directories
robot.Sftp.RenameFile("/home/ur/prg.urp", "/home/ur/prg2.urp");
robot.Sftp.Delete("/home/ur/prg.urp");
bool exists = robot.Sftp.Exists("/home/ur/prg.urp");
robot.Sftp.WriteAllText("/home/ur/file.txt", "Hello robot !");
// ...

定制的插座

你的软件可以成为一个服务器,并允许机器人连接到它以检索信息。
  • XML-RPC:机器人可以与 "rpc_factory "函数连接,并在你的程序中调用有远程参数的方法,这些方法可以返回值。
  • 套接字:一个经典的TCP/IP服务器,机器人可以用 "socket_open "函数与之连接,然后与您的应用程序进行双向对话。
// Robot connects with URScipt function socket_open()
robot.SocketCommunication.SocketClientConnection += (o, e) =>
{
// Reply to the robot
e.Client.SocketWrite("Hello cobot <3");
};
// Event raised when the robot sends a message with socket_write()
robot.SocketCommunication.SocketRequest += (o, e) =>
{
string robotMessage = e.Message;
};
// Send a message to all connected clients
robot.SocketCommunication.SocketWrite("123456");

运动学和离线工具箱

该库提供的功能无需将您的机器人带入网络而可以使用。例如,可以转换位置类型。您的软件还可以打开本机文件程序 *.urp和安装 *。安装并编辑其内容。它还可以将笛卡尔位置转换为关节的位置,反之亦然。
// Create X, Y, Z, RX, RY, RZ pose
var pose = new Pose(0.1, 0.2, -0.1, 0, 0.05, 0.1);
// Convert cartesian pose type to RPY or rotation vector
var rpy = pose.FromRotationVectorToRPY();
var vectorPose = pose.FromRPYToRotationVector();
// Get default DH parameters for UR3e robot model
IUrDhParameters dhParameters = KinematicsUtils.GetDhParametersFromModel(RobotModelsExtended.UR3e);
// Calculate forward kinematics for given joint angles in radians
KinematicsResult fkResult = KinematicsUtils.ForwardKinematics(new double[] { 0, -1.57, 1.57, 0, 0, 0 }, dhParameters);
// Convert the matrix transform to a Pose (X, Y, Z, RX, RY, RZ)
Pose cartesianPosition = Pose.From4x4MatrixToRotationVector(fkResult.ToolTransform);
// Calculate inverse kinematics for given cartesian pose
var matrix = vectorPose.FromRotationVectorTo4x4Matrix();
double[][] ikSolutions = KinematicsUtils.InverseKinematics(matrix, dhParameters);
// Decompile program and installation files and access inner XML
URInstallation installation = URInstallation.Load("C:\\temp\\default.installation");
URProgram prg = URProgram.Load("C:\\temp\\prg.urp");
XElement internalXml = prg.XML;

还有更多...

  • Primary / Secondary interface
  • RTDE (Real-Time Data Exchange)
  • Dashboard server
  • Interpreter Mode
  • Sockets
  • XML-RPC
  • SSH
  • SFTP
  • Forward & Inverse Kinematics
  • ...
阅读文件

客户成功案例

了解我们的客户如何将 UnderAutomation 解决方案集成到他们的工业项目中。

AbbVie
Biotech / Pharma

AbbVie: Automating High-throughput screening

How AbbVie Leverages Universal Robots SDK to Automate High-Concentration Protein Screening.

现在就开始吧!

该库在几种语言中具有相同的功能。

浏览文档

该文档使您可以快速开始使用库开发。 所有受支持的语言都可以使用相同的功能。

价格

可以免费下载库,可以进行30天的测试。 在此期间之后,您可以要求我们延长试用期,或购买最适合您的许可证:站点(仅二进制二进制)或源代码(源代码)。 购买后,您有一个一年的维护期,使您优先访问支持和更新的可能性。 当您购买使用许可证时,它会链接到机器人品牌,无论您将其重新分配给客户的机器人,开发人员或软件的数量如何,都可以永远使用,而无需重复费用。 如果您是分销商,并希望为您的客户提供我们的产品之一,请与我们联系以讨论特殊条件和价格。

标准站点许可证

1100 (EUR)$1300 (USD)

$

1300

为了一生

$

780

大学(40% 折扣)
适合个人使用或敏捷开发人员构建概念验证或轻量级项目。
包括 1 年维护(获取更新)
与专业许可证的条件相同,但不优先支持、不包括远程协助且维护期仅为 1 年。
没有内部来源; 仅提供混淆的 DLL。
无法通过视频会议提供帮助(仅通过电子邮件)。
为您的项目选择正确的许可证
立即购买
最受欢迎

专业许可

1700 (EUR)$2000 (USD)

$

2000

$2960
为了一生

$

1200

大学(40% 折扣)
适用于需要优先支持和长期稳定性的关键任务生产环境。
包括 3 年维护(获取更新),在此期限内没有续订订单(零文书工作)
完整和永久的SDK:无需重复订阅,许可证是您的永远您的,并且可以使用机器人品牌的所有编程语言。
仅在指定的邮政地址上持有许可证的组织才能使用。 不管开发机器的数量多少,所有团队开发人员都将共享相同的许可证。
使用SDK开发的任何应用程序都可以将无限数量的客户提供,而不管要连接的机器人数量如何。
该许可证是一种密码,可以在解锁功能的代码中调用。 没有其他软件要安装。 没有USB密钥。
优先支持(平均<24小时)
远程协助(电子邮件和长达 2 小时的视频会议)
没有内部来源; 仅提供混淆的 DLL。
随时升级到源(支付差价)
立即购买

源代码许可

3400 (EUR)$4000 (USD)

$

4000

为了一生

$

2400

大学(40% 折扣)
实现完全的技术主权、深度定制和完全独立。
与专业许可证的条件相同
C 语言库的完整内部代码
Visual Studio 解决方案包含数年开发的数千行代码
您可以在一般使用条款中定义的限制内修改此源代码并在您的应用程序中使用它
立即购买

常见问题

这样一个软件库的好处是什么?

这个软件库为您节省了开发时间,并确保无论您的机器人的型号和固件如何,它都能发挥作用。

我怎样才能测试呢?

你可以从下载页面下载你选择的编程语言的最新版本。

我需要帮助开发与我的cobot的通信软件

我们是这个领域的专家,可以通过本SDK所包含的技术支持免费帮助您。你也可以向我们咨询一般的工业软件开发问题。我们对所有的信息都会做出回应,并乐意为您提供帮助。

我怎样才能测试这个库呢?

本网站的下载页面允许你获得你选择的语言的例子。然后你可以查阅文档,开始使用该库。

可以给我一个报价吗?

你可以立即从本网站的订单页面直接要求报价。你也可以联系我们。

一些例子不起作用

请在下载档案的属性中检查Windows是否锁定了该文件。如果例子运行正常,请检查机器人的PING命令是否成功。还要检查您的防火墙和防病毒软件是否允许连接到机器人。最后,检查机器人的安全设置。

每个版本有什么新内容?

每个版本都包括补丁和新功能。你可以在GitHub上找到各个版本的历史以及所做的修改。请不要犹豫,与我们联系,提交您的进化想法。

更新后,我的应用程序不再编译了

渐渐地,图书馆的新功能得到了丰富。直到第5版,所有的功能和协议都是在同一个类别中开发的,这让人很困惑。从第6版开始,所有的功能都是独立的,在不同的类中开发。请联系我们以帮助你迁移,或从GitHub上下载最新的5.X.X.X版本,它与所有旧版本保持兼容。

新闻文章


轻松将 Universal Robots、Fanuc、Yaskawa 或 Staubli 机器人集成到您的 .NET、Python、LabVIEW 或 Matlab 应用程序中

UnderAutomation
联系我们Legal

© All rights reserved.