1、ABB机器人电机开关

将两个按键控件放在主窗口,text改为电机开启和电机关闭。双击电机开启按键进入程序编写。

程序如下

 private void button2_Click(object sender, EventArgs e){if (isConnect == true)//判断是否连接机器人{try{if (controller.OperatingMode == ControllerOperatingMode.Auto)//判断控制箱操作模式是否为自动模式{controller.State = ControllerState.MotorsOn;//开启电机MessageBox.Show("电机开启成功!");}else{MessageBox.Show("请切换自动模式!");}}catch (System.Exception ex){MessageBox.Show("发生意外!:" + ex.Message);}}}

双击电机关闭按键进入编写界面,程序如下

        private void button3_Click(object sender, EventArgs e){try{if (controller.OperatingMode == ControllerOperatingMode.Auto){controller.State = ControllerState.MotorsOff;MessageBox.Show("机器人电机关闭成功");}else{MessageBox.Show("请切换自动模式!");}}catch (System.Exception ex){MessageBox.Show("发生意外" + ex.Message);}}

4、任务、模块、程序选择

2.1 双击选择任务进入From1.cs

        private void button12_Click(object sender, EventArgs e){Isconnectrobot();comboBoxtask.Items.Clear();for (int i = 0; i < (int)tasks.Count(); i++){comboBoxtask.Items.Add(tasks[i].Name);}isconnecttask = true;}private void Isconnectrobot()//验证是否连接机器人,防止代码卡死{if (isConnect == true){}else{MessageBox.Show("未识别到机器人,请连机器人!");}}

2.2 双击选择模块进入From1.cs

        private void button13_Click(object sender, EventArgs e){comboBoxmodule.Items.Clear();if (isconnecttask == true){int taskint = comboBoxtask.SelectedIndex;Module[] modules = controller.Rapid.GetTasks()[taskint].GetModules();for (int i = 0; i < (int)modules.Count(); i++){comboBoxmodule.Items.Add(modules[i].Name);};}else{MessageBox.Show("请指定某个任务");}isconnectmodule = true;}

2.3 双击选择程序进入From1.cs

        private void button14_Click(object sender, EventArgs e){comboBoxroutine.Items.Clear();if (isconnectmodule == true){int taskint = comboBoxtask.SelectedIndex;int moduleint = comboBoxmodule.SelectedIndex;Routine[] routines1 = controller.Rapid.GetTasks()[taskint].GetModules()[moduleint].GetRoutines();for (int i = 0; i < (int)routines1.Count(); i++){comboBoxroutine.Items.Add(routines1[i].Name);}}else{MessageBox.Show("请指定某个模块");}}

2.4 双击确定进入From1.cs。目的是将所选的任务、模块、程序保存。

        private void button20_Click(object sender, EventArgs e){taskint = comboBoxtask.SelectedIndex;taskstring = comboBoxtask.SelectedItem.ToString();moduleint = comboBoxmodule.SelectedIndex;modulestring = comboBoxmodule.SelectedItem.ToString();routineint = comboBoxtask.SelectedIndex;routinestring = comboBoxtask.SelectedItem.ToString();}

3、机器人速度比

机器人控制速度方法并不是调节速度,而是调节速度比,速度 = 最大速度*速度比值。当速度比值为0%的时候,速度为0。可以通过滑块控件来调节速度比值,并且设置滑块与速度实时关联,为了安全将 ABB机器人连接时设置滑块控件为0值,即速度为0。

右键滑块 -> 属性 -> 事件 -> Scroll -> 将事件函数名设置为myScrollBar1_Scroll。在Form1.cs中编写函数

private void myScrollBar1_Scroll(object sender, ScrollEventArgs e)
{if (isConnect == true){if (controller.OperatingMode == ControllerOperatingMode.Auto){controller.MotionSystem.SpeedRatio = Convert.ToInt32(myScrollBar1.Value);//myscrollBar1为滑块控件名label1.Text = "速度设定值:" + controller.MotionSystem.SpeedRatio.ToString() + "%";}else{MessageBox.Show("请打开自动模式!");}}
}

4、查看点坐标变量

双击查看坐标值

函数为

 RapidSymbolSearchProperties date = RapidSymbolSearchProperties.CreateDefault();date.Types = SymbolTypes.Data;date.SearchMethod = SymbolSearchMethod.Block;date.Recursive = true;date.InUse = false;date.LocalSymbols = false;RapidSymbol[] symbols = tasks[taskint].SearchRapidSymbol(date, "robtarget", string.Empty);this.comboBox5.Items.Clear();foreach (RapidSymbol symbol in symbols){try{RapidData rD = tasks[taskint].GetRapidData(symbol);comboBox5.Items.Add(rD.Name);}catch (Exception ex){return;}}if (comboBox5.Items == null){comboBox5.Text = "没有坐标变量";}else {comboBox5.SelectedIndex = 0;}

双击确定控件函数为

        private void button18_Click(object sender, EventArgs e){if (comboBoxtask.SelectedItem.ToString() != null || comboBox5.SelectedItem.ToString() != null){RapidSymbolSearchProperties date = RapidSymbolSearchProperties.CreateDefault();date.Types = SymbolTypes.Data;date.SearchMethod = SymbolSearchMethod.Block;date.Recursive = true;date.InUse = false;date.LocalSymbols = false;RapidSymbol[] symbols = tasks[taskint].SearchRapidSymbol(date, "robtarget", string.Empty);this.listView3.Items.Clear();foreach (RapidSymbol symbol in symbols){try{RapidData rD = tasks[taskint].GetRapidData(symbol);if (rD.Name == comboBox5.SelectedItem.ToString()){ListViewItem item2 = new ListViewItem(symbol.Name);if (rD.Value != null){item2.SubItems.Add(rD.Value.ToString());}else{item2.SubItems.Add("0");}item2.Tag = symbol;this.listView3.Items.Add(item2);}else{continue;}}catch (Exception ex){return;}}}else{MessageBox.Show("请选择任务!");}}

C#ABB机器人PC SDK通讯02相关推荐

  1. C#ABB机器人PC SDK 通讯05

    1.加载程序:相当于把自己写的机器人代码加载到ABB机器人示教器中.加载需要机器人程序路径,上一篇所讲到的保存就是为加载准备,所以加载之前必须保存. 还是老样子,双击加载控件 private void ...

  2. ABB机器人二次开发(C#)- 二更

    ABB机器人二次开发(C#)- 二更 3 编程学习篇 3.1 PC SDK学习 3.2 代码阅读和学习 3.3 代码编写 3.4 小结 3 编程学习篇 创作背景在上一篇文章中写过,此处不再赘述.作者之 ...

  3. abb机器人指令手册_爆!!ABB机器人支持OPC UA了

    更多内容请点击上方 ABB机器人实战技巧 关注 也可点击公众号下方 往期经典 浏览更多内容 转载请先后台留言,大家一起支持原创,推动机器人使用和发展 本公众号对各类ABB机器人应用,仿真,毕业设计提供 ...

  4. abb机器人指令手册_ABB机器人新示教器Touch Jog

    更多内容请点击上方 ABB机器人实战技巧 关注 也可点击公众号下方 往期经典 浏览更多内容 转载请先后台留言,大家一起支持原创,推动机器人使用和发展 本公众号对各类ABB机器人应用,仿真,毕业设计提供 ...

  5. abb外部轴零位校准_新品发布 | ABB机器人节拍最快的冲压自动化以及ABB紧凑型车身内喷解决方案...

    ABB机器人节拍最快的冲压自动化 ABB 推出IRB 760PT码垛搬运机器人,全新冲压上下料型号,为汽车冲压自动化带来快速灵活的解决方案.IRB 760PT机器人是一款柔性的冲压上下料解决方案,专为 ...

  6. FactoryIO+ABB机器人+博图仿真实验程序

    FactoryIO+ABB机器人+博图仿真实验程序 [程序原创]通过三个不同品牌的仿真平台相互通讯,实现一些简单的动作,内容简单,主要演示通讯,起到抛砖引玉的作用,比较适合有动手能力的入门初学者. 软 ...

  7. abb机器人指令手册_ABB机器人图形化编程wizard

    更多内容请点击上方 ABB机器人实战技巧 关注 也可点击公众号下方 往期经典 浏览更多内容 转载请先后台留言,大家一起支持原创,推动机器人使用和发展 本公众号对各类ABB机器人应用,仿真,毕业设计提供 ...

  8. abb机器人指令手册_ABB机器人实战技巧超强合集

    更多内容请点击上方 ABB机器人实战技巧 关注 也可点击公众号下方 往期经典 浏览更多内容 转载请先后台留言,大家一起支持原创,推动机器人使用和发展 本公众号对各类ABB机器人应用,仿真,毕业设计提供 ...

  9. 上位机引导机械手、ABB机器人C#二次开发、PC SDK 开发项目。应用机器人喷涂或机器人搬运

    上位机引导机械手.ABB机器人C#二次开发.PC SDK 开发项目.应用机器人喷涂或机器人搬运. 提供运行环境:电脑端vs2019运行程序,ABB机器人端robotstudio6.08 提供源-程序: ...

最新文章

  1. 在网络通讯中,如何自己分配可用的端口号和获取自己的ip地址
  2. Java项目:药店信息管理系统(java+SSM+JSP+layui+maven+mysql)
  3. 视频+课件| PointDSC:基于特征匹配的点云配准方法(CVPR2021)
  4. 2020 年 Java 面试常见 350 题
  5. 关于string的成员函数substr
  6. jedis取存 数据库查到的对象_Mysql数据库索引BAT面试必问
  7. 【渝粤教育】国家开放大学2018年春季 0177-22T电机学(二) 参考试题
  8. SQL Server Compact 3.5开发环境说明
  9. json 潜逃 结构体_JSON还原为结构体
  10. 组织需要什么样的我_为什么开放组织对我说话
  11. ECG的滤波和检波资源汇总
  12. python实现mat格式数据解析处理,并转化为json格式数据
  13. Premiere Elements 2021 安装教程【电脑配置要求较高】
  14. PS 打开黑屏怎么办?
  15. Office Execl常用函数使用方法
  16. android6最新版本,安卓版“AirDrop”发布,安卓6版本以上都能用!
  17. 抗击疫情,程序员在家免费学这些!
  18. wordpress主题安装,wp主题模板安装技巧
  19. android手机如何截屏,安卓手机怎么截图? (全文)
  20. mysql dbcp 配置文件_数据库连接池DBCP使用方式

热门文章

  1. [sips]搭建opensip:ubuntu+ARM 64位
  2. canal 学习笔记
  3. 六级(2020/12-3) Text 2
  4. C# SolidWorks 二次开发 API---提高草图绘制效率
  5. 关于时间的模糊查询 mysql
  6. 如何运用python爬游戏皮肤_教你Python 爬取某荣耀全套皮肤
  7. CSS通栏背景的设置(解决浏览器缩放带来的影响)
  8. print('两数之和为 %.1f' %(float(input('输入第一个数字:'))+float(input('输入第二个数字:'))))...
  9. webpack(一)压缩js,加载css,压缩html,压缩图片
  10. 人工智能:是“哆啦A梦”还是“终结者”