当前位置: 首页 > news >正文

C1-2 ABB二次SDK开发——手把手教登录对应的机器人控制器(图片引导操作)登录机器人控制器和刷新机器人列表

1.完成配置后我们开始进行操作

C1-1 ABB二次SDK开发——C#Window窗体-环境配置(带ABB二次开发SDK资源包)-CSDN博客文章浏览阅读95次。3.记住路径,右键C#引用,然后导入ABB.Robotics.Controllers.PC.dll。2.安装资源文件PCABB二次开发的SDK,并打开安装路径。1.新建VSC#的windowfrom项目。4.在框架代码主界面代码中添加。https://blog.csdn.net/m0_66701835/article/details/141899314?spm=1001.2014.3001.5501

2.拖拽出一个ListView控件

3.编辑列并且修改名称

选择控件并且添加列表值,用作后面的系统登录

4.创建刷新按钮添加刷新代码

创建完后加入刷新代码

private NetworkScanner scanner = new NetworkScanner();
//机器人网络扫描器NetworkScanner类实例化对象
private Controller controller = null;
//机器人控制器Controller类实例化对象controller
private ABB.Robotics.Controllers.RapidDomain.Task[] tasks = null;
private NetworkWatcher networkwatcher = null;private void button1_Click(object sender, EventArgs e)
{//如果上面创建失败则创建一个NetworkScanner类实例化对象if (scanner != null) { scanner =new NetworkScanner();}scanner.Scan();//对网络进行扫描//清空当前窗口listView1的数据this.listView1.Items.Clear();//将网络上所有机器人信息给到controls(手册中有属性值和方法)ControllerInfoCollection controls = scanner.Controllers;//遍历机器人信息foreach (ControllerInfo info in controls) { ListViewItem item = new ListViewItem(info.SystemName);//逐步添加数据item.SubItems.Add(info.IPAddress.ToString());item.SubItems.Add(info.Version.ToString());item.SubItems.Add(info.IsVirtual.ToString());item.SubItems.Add(info.ControllerName.ToString());//赋值给我们的对象列表item.Tag = info;this.listView1.Items.Add(item);}

5.在ListView1的DoubleClick(双击时间)中加上一下代码做登录功能

在时间中添加一下代码

//如果列条数量大于0
if (this.listView1.Items.Count > 0)
{ 
ListViewItem item = this.listView1.SelectedItems[0];//获取控件0列表的值if (item.Tag != null)//如果点击不为空{ ControllerInfo info = (ControllerInfo)item.Tag;//让机器人控制信息等于列表信息if (info.Availability == Availability.Available){//如果是可信任设备if (controller != null){ //如果已经有设备占用先登出controller.Logoff();controller.Dispose();controller = null;}//登录设备controller = ControllerFactory.CreateFrom(info);//输入控制信息controller.Logon(UserInfo.DefaultUser);//使用默认用户登录MessageBox.Show("已成功登录控制器" + info.SystemName);//提示登录成功}}}

6.无法双击打开该属性

7.效果演示


http://www.mrgr.cn/news/20102.html

相关文章:

  • vue中oninput和@input区别
  • 5.关于Deformable Detr
  • 【计算机视觉前沿研究 热点 顶会】ECCV 2024中目标检测有关的论文
  • 数据库编程——sqlite3
  • Android ADB实现COC夜世界自动打资源
  • 某云彩SRM2.0任意文件下载漏洞
  • 【附指定环境安装包】在Visual Studio Code中配置Python环境!
  • OpenAI 联合创始人的 AI 安全公司 SSI 筹集 10 亿美元资金|TodayAI
  • Linux - Linux安装部署Maven以及环境变量配置
  • 基于Pytorch深度学习——Transformer论文讲解/代码实现
  • 园区/高能耗企业 水-电-气-热-油采集系统-能源管理系统
  • 在 Ubuntu 下通过 Docker 部署 Minecraft 服务器
  • Java 面试题:从源码理解 ThreadLocal 如何解决内存泄漏 ConcurrentHashMap 如何保证并发安全 --xunznux
  • 陪诊志愿服务正在开展,喜鹊医疗打造国内首家陪诊聚合平台
  • C#中的GDI和GDI+(Graphics Device Interface Plus)图形设备接口
  • ubuntu 20.04 安装微信,WPS,腾讯会议
  • 【JavaScript】标准库:Math对象
  • 深入理解 Python 并发编程:多线程、多进程与异步
  • 大坝安全监测设备的工作原理
  • 稚晖君回应被称天才少年:没有必要如此称呼 只是兴趣使然