ABB PC SDK C#二次开发

开发环境

本文的开发使用的是Visual Studio 2019,基于.net Framework 4.8进行开发
SDK使用ABB PC SDK 2020.4版本
下载链接https://download.csdn.net/download/a820946475/14753888
或者官网https://robotapps.blob.core.windows.net/apps/acdb3967-fa5c-42a4-b148-443cef4e5d23PCSDK_2020.4.zip

Demo下载地址https://download.csdn.net/download/a820946475/14158054

SDK引用

我的ABB SDK安装在C盘,所以DLL引用路径为:C:\Program Files (x86)\ABB\SDK\PCSDK 2020 引用的dll文件为:ABB.Robotics.Controllers.PC.dll、RobotStudio.Services.RobApi.Desktop.dll、RobotStudio.Services.RobApi.dll 三个。
在这里插入图片描述
同时在Form1中对添加using

using ABB.Robotics;
using ABB.Robotics.Controllers;
using ABB.Robotics.Controllers.Discovery;
using ABB.Robotics.Controllers.EventLogDomain;
using ABB.Robotics.Controllers.FileSystemDomain;
using ABB.Robotics.Controllers.IOSystemDomain;
using ABB.Robotics.Controllers.RapidDomain;

控制器连接

在这里插入图片描述

在Form1界面添加btn_scan、btn_connect和ListView1控件

  • btn_scan设置
项目 Value
Text 扫描
  • btn_connect设置
项目 Value
Enabled False
Text 连接
  • ListView1设置
项目 Value
FullRowSelect True
GridLines True
View Details
Columns 列内容

在Form1中定义全年局变量

NetworkScanner scanner = new NetworkScanner(); //实例化NetworkScanner类
Controller controller = null;  //定义controller全局变量
ControllerInfoCollection controllers = null; //定义控制器集合

btn_scan Click事件,实现点击按钮后,扫描控制器,并显示在ListView1中

private void btn_scanner_Click(object sender, EventArgs e)
{
   
    scanner.Scan();  //扫描控制器
    controllers = scanner.Controllers; //获取扫描到的控制器集合
    if(controllers.Count>0)
    {
   
        AddListview(controllers);
    }
}

public void AddListview(ControllerInfoCollection icontrollers)
{
   
   listView1.Items.Clear();
   for(int i=0;i<icontrollers.Count; i++)
   {
   
      ControllerInfo controllerInfo = icontrollers[i];

      listView1.Items.Add(controllerInfo.IPAddress.ToString());
      listView1.Items[i].SubItems.Add(controllerInfo.Availability.ToString());
      listView1.Items[i].SubItems.Add(controllerInfo.ControllerName);
      listView1.Items[i].SubItems.Add(controllerInfo.IsVirtual == true ? "虚拟" : "现实");
      listView1.Items[i]
  • 19
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
好的,以下是一个使用C#编写的ABB机器人SDK二次开发的DEMO示例: ```csharp using System; using ABB.Robotics.Controllers; using ABB.Robotics.Controllers.Discovery; using ABB.Robotics.Controllers.EventLogDomain; using ABB.Robotics.Controllers.FileSystemDomain; using ABB.Robotics.Controllers.RapidDomain; namespace ABBRobotDemo { class Program { static void Main(string[] args) { // 创建机器人控制器对象 ControllerInfoCollection controllers = ControllerInfoFactory.GetControllers(); ControllerInfo controllerInfo = controllers[0]; Controller controller = ControllerFactory.CreateFrom(controllerInfo); // 连接机器人控制器 controller.Logon(UserInfo.DefaultUser); // 获取机器人状态 State state = controller.State; Console.WriteLine("Robot State: " + state.ToString()); // 获取机器人位置信息 RobotPosition position = controller.MotionSystem.Position; Console.WriteLine("Robot Position: X=" + position.X + ", Y=" + position.Y + ", Z=" + position.Z); // 控制机器人移动到指定位置 RobotPosition targetPosition = new RobotPosition(); targetPosition.X = 100; targetPosition.Y = 100; targetPosition.Z = 100; targetPosition.Q1 = 0; targetPosition.Q2 = 0; targetPosition.Q3 = 0; targetPosition.Q4 = 1; controller.MotionSystem.Motion.MoveTo(targetPosition); // 断开机器人控制器连接 controller.Logoff(); } } } ``` 这个DEMO展示了如何使用C#编写ABB机器人SDK连接、获取机器人状态和位置信息,以及控制机器人移动到指定位置。这只是一个简单的示例,你可以根据自己的需求进行二次开发

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值