RobotMaster使用——使用python脚本自动选择刀具 & 优化繁琐无意义的流程化操作

发布时间:2023年12月24日

引出


RobotMaster使用——使用python脚本自动选择刀具 & 优化繁琐无意义的流程化操作

问题:刀具选择耗时且流程化

在这里插入图片描述

解决方案调研

1、极速鼠标连点器

鼠标自动点击器-连点器软件电脑版下载-极速鼠标连点器
https://www.jisudianji.com/

在这里插入图片描述

该软件需要重复操作,编辑延迟时间,坐标位置,在基础功能中操作反而比较繁琐。如果在鼠标录制器中进行鼠标操作的录制,则可以实现更为灵活的操作。

结论:鼠标录制为一种可行的解决方案

2、python编写脚本

使用python中的keyboard模块,用于监听键盘按键,仿照上述软件执行开始和结束操作;

使用pyautogui库,实现鼠标的动作,移动到指定位置,进行鼠标点击事件;

使用time包,实现鼠标的延迟操作(由于RobotMaster操作反应过慢);

https://pyautogui.readthedocs.io/en/latest/

在这里插入图片描述

程序编写

# encoding:utf-8
import time
import keyboard
import pyautogui

# 定义常量
firstPos = 163  # 初始的第一个y位置

# 全局变量,鼠标点击的延迟时间
global sleepTime
sleepTime = 15


# 主程序,进行鼠标移动到指定位置,进行点击事件
def start_program():
    print("程序开始执行")
    # 屏幕整体大小
    scanSize = pyautogui.size()
    # 当前鼠标的位置
    mousePos = pyautogui.position()
    print(scanSize)
    print(mousePos)
    # 整体流程
    # 1.点击编辑刀具
    print("选择刀具,单击一下")
    time.sleep(sleepTime)

    # 重复上面的步骤
    # 4.然后鼠标回到原来的位置,向下移动一位
    for i in range(1, 23):
        global firstPos
        pyautogui.moveTo(420, firstPos)
        pyautogui.click(x=420, y=firstPos)
        time.sleep(sleepTime)
        # 2.然后选择第七把刀, 确认
        selectDao()
        print("进行第"+str(i)+"条轨迹刀具选择")
        firstPos = firstPos + 25


def stop_program():
    print("程序结束执行")
    keyboard.unhook_all()  # 停止监听键盘事件


# 选择刀具的操作
def selectDao():
    pyautogui.moveTo(219, 422)
    pyautogui.click(x=219, y=422)
    time.sleep(sleepTime)

    pyautogui.moveTo(475, 100)
    pyautogui.click(x=475, y=100)
    time.sleep(sleepTime)


if __name__ == '__main__':
    keyboard.on_press_key("F6", lambda _: start_program())  # 监听按下'F6'键
    keyboard.on_press_key("F6", lambda _: stop_program())  # 监听按下'F6'键

    keyboard.wait()  # 等待键盘事件

导出依赖包

pipreqs ./ --encoding=utf8

https://zhuanlan.zhihu.com/p/655803921

在这里插入图片描述

在这里插入图片描述

在工作电脑上安装python环境

详细步骤略

操作指南

1、python脚本

python TestDemo.py

在这里插入图片描述

进入robotmaster软件中,导入新的文件,调整好位置,按下F6键,程序开始执行

在这里插入图片描述

此时控制台或输出以下信息

在这里插入图片描述

程序结束,按下Ctrl+C,进行下一个文件的修改

在这里插入图片描述

2、鼠标连点器

进入鼠标录制器中

在这里插入图片描述

录制鼠标操作事件,需要完整执行一轮操作,然后保存,最后运行即可

在这里插入图片描述

使用情况

在使用该脚本后,无需手动一个一个轨迹,一直盯着屏幕,然后进行刀具的选择,解放了现场实施人员的双眼和双手,具有较好的便捷性;

待优化项:

1.目前没有加入鼠标滚轮的操作,有些轨迹文件会比较多,需要配置鼠标滚轮实现;暂时可以通过使用调整,优先级P3;

2.由于鼠标y轴位置递增的设置,会出现有些轨迹刀具的选择重复操作,属于冗余操作,结论,功能可实现,暂不优化;


总结

RobotMaster使用——使用python脚本自动选择刀具 & 优化繁琐无意义的流程化操作

文章来源:https://blog.csdn.net/Pireley/article/details/135179995
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。