本文主要是介绍RobotMaster使用——使用python脚本自动选择刀具 优化繁琐无意义的流程化操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
- 引出
- 问题:刀具选择耗时且流程化
- 解决方案调研
- 1、极速鼠标连点器
- 2、python编写脚本
- 程序编写
- 导出依赖包
- 在工作电脑上安装python环境
- 操作指南
- 1、python脚本
- 2、鼠标连点器
- 使用情况
- 总结
引出
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 firstPospyautogui.moveTo(420, firstPos)pyautogui.click(x=420, y=firstPos)time.sleep(sleepTime)# 2.然后选择第七把刀, 确认selectDao()print("进行第"+str(i)+"条轨迹刀具选择")firstPos = firstPos + 25def 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脚本自动选择刀具 & 优化繁琐无意义的流程化操作
这篇关于RobotMaster使用——使用python脚本自动选择刀具 优化繁琐无意义的流程化操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!