热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用QProcess最小化启动外部程序并实现安川机器人的定时预约功能

通过使用QProcess实现外部程序的最小化启动,本文详细介绍了如何在安川机器人系统中实现定时预约功能。具体而言,该方法能够按照预设的顺序,自动启动并执行各个工装轴的登录程序。例如,在一个包含三个工装轴的场景中,系统将依次启动每个工装轴的登录程序,确保整个过程高效且有序。此外,文章还探讨了如何通过优化代码结构和参数配置,进一步提高系统的稳定性和可靠性。

 按照预约顺序,执行工装轴登录的程序。

预约启动是指使用工装上的启动按钮,按照预约顺序,启动各工装登录的程序。

如图所示,三个工装分别处理不同工件时:

d02e026b23199bddc1d1da534424532e.png

• 在工装1处登录处理工件1的JOB1

• 在工装2处登录处理文件2的JOB2

• 在工装3处登录处理文件的JOB3

再现时,准备好工件1后,按下工装1的启动按钮后,机器人就会执行JOB1。在执行JOB1的同时,准备好工件2、工件3,并按顺序启动对应工装上的按钮。此时,机器人虽然还在执行JOB1,但会按照顺序进行预约, 随后按照预约程序执行指令。并且,在整个再现过程中,可以在作业预约画面中查看各个程序的预约状况。

01

预约启动设置

  • 预约启动功能设置为【允许】

61420cee53d10e02a744d56b40ffbe66.png

  • 在【设置】选项中,设置预约启动输入输出信号

    414163ce053116da50b53f0fe65dfce9.png

  • 在【程序】【预约启动程序】选项中,登录或者取消各个工装的启动程序

bfb83bbde2c96fc4d6f9232fc6ac9364.png

以上设置完毕后,即可实现再现模式下的预约启动功能啦!c457c27afe231521e2ea0ef88228ab2c.png

02

预约启动再现操作

1. 选择示教编程器上的[PLAY]

– 进入再现模式。

2. 按下工装的启动按键

– 启动该工装已登录的程序,机器人进行单循环动作。

3. 在线过程中通过示教器查看程序预约状态

– 点击选项【程序内容】中的【作业预约状态】,显示状态作业预约状态画面。

若下图所示:

fc7b08e7074832aa9d1e90b407208b18.png

①状态:显示作业的预约状态。

     “启动中”:显示当前动作中的工装。

     “预约中1”、“预约中2”:显示已按此顺序预约作业。

     “中断” :显示进行了暂停操作,暂停动作的工装。

②启动输入:显示输入信号状态。

 “●”:有输入

   “○”:无输入

Tips : 

如果在执行前一工装的程序时,想要解除下一工装的预约,此时只需再次按下作业预约中的工装按键后,相关预约就会被解除。(但是,如果一旦预约程序开始执行,那么就不能够解除了,此时只能通过暂停键进行暂停。)

03

预约启动暂停

在执行预约启动过程中,如果想要一时暂停正在执行的作业,那又该如何操作呢?

对于安川机器人来说,预约启动后,开始动作的机器人和工装在收到以下暂停信号后,会暂停动作。

• 示教编程器

 暂停

1. 按下示教编程器上的[HOLD]

– 机器人暂停动作。

– 按下[HOLD]期间,灯亮起。

 解除

1. 按下暂停动作的工装的启动按钮。

– 机器人会从暂停位置开始继续动作。

• 外部输入信号(专用)

 暂停

1. 开启外部输入信号(专用)的“HOLD”

– 机器人暂停动作。

bbe1204f526652b94ab5469d157a8d95.png

– ・外部输出信号的“HOLD 中(HOLD 灯)”灯亮起

– ・示教编程器的[HOLD]灯亮起。

 解除

1. 关闭外部输入信号(专用)的“HOLD”

– 解除暂停。

2. 按下暂停动作的工装的启动按钮

– 机器人会从暂停位置开始继续动作。

• 工装

 暂停

1. 按下工装的[暂停按钮]

– 机器人暂停动作。

bbe1204f526652b94ab5469d157a8d95.png

 解除

1. 按下暂停中的工装的[暂停按钮]

– 解除暂停。

– 按下工装的启动按钮,机器人会从暂停位置开始继续动作。

文末哲思

一叶落,而知天下先秋



推荐阅读
  • 本文深入探讨了UNIX/Linux系统中的进程间通信(IPC)机制,包括消息传递、同步和共享内存等。详细介绍了管道(Pipe)、有名管道(FIFO)、Posix和System V消息队列、互斥锁与条件变量、读写锁、信号量以及共享内存的使用方法和应用场景。 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 历经三十年的开发,Mathematica 已成为技术计算领域的标杆,为全球的技术创新者、教育工作者、学生及其他用户提供了一个领先的计算平台。最新版本 Mathematica 12.3.1 增加了多项核心语言、数学计算、可视化和图形处理的新功能。 ... [详细]
  • 如何使用Ping命令来测试网络连接?当网卡安装和有关参数配置完成后,可以使用ping命令来测试一下网络是否连接成功。以winXP为例1、打开XP下DOS窗口具体操作是点击“开始”菜 ... [详细]
  • 本文详细探讨了如何通过分析单个或多个线程在瓶颈情况下的表现,来了解处理器资源的消耗。无论是单进程还是多进程环境,监控关键指标如线程数量、占用时间及调度优先级等,有助于揭示潜在的性能问题。 ... [详细]
  • 使用Powershell Studio快速构建GUI应用程序
    本文介绍了如何利用Powershell Studio创建功能强大的可视化界面。相较于传统的开发工具,Powershell Studio提供了更为简便和高效的开发体验,尤其适合需要快速构建图形用户界面(GUI)的场景。 ... [详细]
  • 本文将探讨2015年RCTF竞赛中的一道PWN题目——shaxian,重点分析其利用Fastbin和堆溢出的技巧。通过详细解析代码流程和漏洞利用过程,帮助读者理解此类题目的破解方法。 ... [详细]
  • ElasticSearch 集群监控与优化
    本文详细介绍了如何有效地监控 ElasticSearch 集群,涵盖了关键性能指标、集群健康状况、统计信息以及内存和垃圾回收的监控方法。 ... [详细]
  • 并发编程 12—— 任务取消与关闭 之 shutdownNow 的局限性
    Java并发编程实践目录并发编程01——ThreadLocal并发编程02——ConcurrentHashMap并发编程03——阻塞队列和生产者-消费者模式并发编程04——闭锁Co ... [详细]
  • 本文详细介绍了如何检查和配置电脑上的PHP环境,包括位数、运行支持以及文件格式的打开方式。适合初学者了解PHP的基础知识和操作方法。 ... [详细]
  • 深入解析 Android IPC 中的 Messenger 机制
    本文详细介绍了 Android 中基于消息传递的进程间通信(IPC)机制——Messenger。通过实例和源码分析,帮助开发者更好地理解和使用这一高效的通信工具。 ... [详细]
  • 本文介绍了如何利用Python进行批量图片尺寸调整,包括放大和等比例缩放。文中提供了详细的代码示例,并解释了每个步骤的具体实现方法。 ... [详细]
  • 2018-2019学年第六周《Java数据结构与算法》学习总结
    本文总结了2018-2019学年第六周在《Java数据结构与算法》课程中的学习内容,重点介绍了非线性数据结构——树的相关知识及其应用。 ... [详细]
  • JavaScript 中创建对象的多种方法
    本文详细介绍了 JavaScript 中创建对象的几种常见方式,包括对象字面量、构造函数和 Object.create 方法,并提供了示例代码和属性描述符的解释。 ... [详细]
author-avatar
埋葬曾经的一切
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有