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

pauto

pauto

import time
import com_Keyboard as mykbKEY_UP = 0x48
KEY_LEFT = 0x4B
KEY_RIGHT = 0x4D
VK_F5 = 0x74
VK_CTRL = 0x11
VK_SPACE = 0x20def run9_blind():mykb.pressKey(VK_F5)time.sleep(15)print('start running, hold up')mykb.holdKey(KEY_UP) #hold uptime.sleep(2)# --- PHASE 1: THE SPIRAL (0 to 85) ---print('Entering spiral...')for i in range(86): mykb.holdKey(KEY_RIGHT)time.sleep(0.5)#turn right for 0.5s
        mykb.releaseKey(KEY_RIGHT)time.sleep(0.4)#run straight for 0.4s# --- PHASE 2: THE STRAIGHTAWAY (86 to 91) ---# (These slight right taps might be correcting for drift)print('Entering straightaway...')for i in range(6): mykb.holdKey(KEY_RIGHT)time.sleep(0.3)#turn right for 0.3s
        mykb.releaseKey(KEY_RIGHT)time.sleep(1.5)#run straight for 1.5sprint('route finished, stop turning, waiting 10 seconds')time.sleep(10)mykb.releaseKey(KEY_UP)#drive endprint('drive end, release up, checking result')def isHit9RoadSign(duration):start_time = time.monotonic()while time.monotonic() - start_time < duration:color = mykb.get_pixel(535, 70)if color == (255, 0, 0): # Red colorreturn Truetime.sleep(0.05)  # Check every 50msreturn Falsedef run9_eye():mykb.pressKey(VK_F5)time.sleep(15)print('start running, hold up')mykb.holdKey(KEY_UP) #hold uptime.sleep(2)# --- PHASE 1: THE SPIRAL (0 to 85) ---print('Entering spiral...')for i in range(80): mykb.holdKey(KEY_RIGHT)time.sleep(0.5)#turn right for 0.5s
        mykb.releaseKey(KEY_RIGHT)time.sleep(0.4)#run straight for 0.4s# --- PHASE 2: CHECK COLOR AND DECIDE WHETHER TO BREAK THE SPIRAL ---for i in range(10): mykb.holdKey(KEY_RIGHT)isHitColor = isHit9RoadSign(0.5)#check if hit the color while turning for 0.5s
        mykb.releaseKey(KEY_RIGHT)if(isHitColor):print('hit color, break the spiral, entering straightaway...')breakisHitColor = isHit9RoadSign(0.4)if(isHitColor):print('hit color, break the spiral, entering straightaway...')break# --- PHASE 3: THE STRAIGHTAWAY (86 to 91) ---# (These slight right taps might be correcting for drift)print('Entering straightaway...')for i in range(6): mykb.holdKey(KEY_RIGHT)time.sleep(0.3)#turn right for 0.3s
        mykb.releaseKey(KEY_RIGHT)time.sleep(1.5)#run straight for 1.5sprint('route finished, stop turning, waiting 10 seconds')time.sleep(10)mykb.releaseKey(KEY_UP)#drive endprint('drive end, release up, checking result')def isRunFinished():# Check if th color at (100, 200) is red, which indicates the run has finishedcolor = mykb.get_color(100, 200)return color == 789516 # RGB(12, 12, 12) in decimaldef isApproachingLeftWall():# Check if the color at (50, 300) is a specific shade of gray, which indicates approaching left wallcolor = mykb.get_color(50, 300)return color == 789516 # RGB(12, 12, 12) in decimaldef isApproachingRightWall():# Check if the color at (200, 300) is a specific shade of gray, which indicates approaching right wallcolor = mykb.get_color(200, 300)return color == 789516 # RGB(12, 12, 12) in decimaldef runLvZhou_blind():mykb.pressKey(VK_F5)time.sleep(15)print('start running, hold up')mykb.holdKey(KEY_UP) #hold uptime.sleep(2)print('Entering route...')for i in range(150): mykb.pressKey(VK_CTRL)      mykb.pressKey(VK_SPACE)time.sleep(1)#attack every 1sprint('route finished, stop turning, waiting 10 seconds')time.sleep(10)mykb.releaseKey(KEY_UP)#drive endprint('drive end, release up, checking result');def runLvZhou_eye():mykb.pressKey(VK_F5)time.sleep(15)print('start running, hold up')mykb.holdKey(KEY_UP) #hold uptime.sleep(2)print('Entering route...')turn_start_time = time.monotonic() - 2 # Initialize to allow immediate turningfor i in range(150): if i>100 and isRunFinished():print('run finished, break the loop')mykb.releaseKey(KEY_UP)#drive endbreakif isApproachingLeftWall():print('approaching left wall, turn right, only turn 1 time inside a second, in case of over turning')if time.monotonic() - turn_start_time > 1: # Only turn if more than 1 second has passed since last turn
                mykb.pressKey(KEY_RIGHT)time.sleep(0.3)mykb.releaseKey(KEY_RIGHT)turn_start_time = time.monotonic() # Update last turn timeelif isApproachingRightWall():print('approaching right wall, turn left, only turn 1 time inside a second, in case of over turning')if time.monotonic() - turn_start_time > 1: # Only turn if more than 1 second has passed since last turn
                mykb.pressKey(KEY_LEFT)time.sleep(0.3)mykb.releaseKey(KEY_LEFT)turn_start_time = time.monotonic() # Update last turn time
mykb.pressKey(VK_CTRL)      mykb.pressKey(VK_SPACE)time.sleep(0.5)#attack every 1sprint('route finished, stop turning, waiting 10 seconds')print('drive end, release up, checking result');

 

http://www.jsqmd.com/news/635155/

相关文章:

  • 3小时快速入门:使用Wechaty框架开发微信自动化助手
  • SciFinder实战指南:解锁逆合成路线设计的核心技巧
  • 解锁音乐自由:ncmdumpGUI 让加密音频文件重获新生
  • Wechaty Puppet WeChat:微信机器人开发深度解析与实战指南
  • AIAgent架构中通信协议设计的7个致命误区(2024年生产环境真实故障复盘)
  • 2026年母线槽/滑线槽/电缆桥架厂家排名前十权威榜单发布:安徽鑫铂特电气有限公司位居榜首 - 安互工业信息
  • 实测3家洁净室倍速链流水线厂家:谁才是高洁净场景的靠谱之选 - 丁华林智能制造
  • PoeCharm:构建《流放之路》角色配置的数据解码器
  • 【新一代智能雷达系统:从量子增强到数字孪生的跨域融合】第2章 6G通感一体化(ISAC)与波形融合 (一)原理详解
  • ABAP开发实战:用cl_salv_bs_runtime_info实现ALV数据“静默”抓取与二次处理
  • 从零到精通:5步掌握WorkshopDL,解锁Steam创意工坊无限下载能力
  • 寻找靠谱的垂直度测试仪厂家?看这份权威推荐指南 - 品牌推荐大师
  • 从理论到代码:手把手复现李航《统计学习方法》第2版经典算法(附习题思路)
  • 【奇点大会内部纪要】:为什么92%的视觉导航Agent在动态场景中失效?3类被忽视的传感器-语义耦合漏洞
  • 3分钟告别文档焦虑:readme-md-generator如何让README写作变得如此简单
  • Qwen-Image-2512-SDNQ C语言基础教学:编程概念可视化工具
  • MangoHud深度解析:Linux游戏性能监控架构设计与调优实战
  • 2026新疆新能源汽车隐形车衣防护与轻改升级服务全攻略|车闪电官方联系方式+品牌横评 - 精选优质企业推荐榜
  • Pixel Aurora Engine 角色设计展示:生成统一风格的游戏角色多视图与立绘
  • 2026终极B站资源下载解决方案:3分钟掌握跨平台BiliTools高效使用技巧
  • 清华大学DeepSeek实战指南:从零到高阶应用的全面解析
  • 从零到一:在VMware中部署RHEL 9.x的完整实战指南
  • AIAgent内容冷启动失败率下降86%的密钥:奇点大会闭门工作坊流出的「意图-结构-信噪比」三维校准法
  • LED显示屏行业解决方案提供商全景解析:从选型到落地,如何匹配您的“最佳拍档” - 深度智识库
  • 基于Node.js调用EVA-02:构建高并发文本处理API服务
  • WarcraftHelper:如何让经典魔兽争霸III在现代电脑上焕发新生
  • VsionPro经典PatMax_Demo.idb图片分析
  • 揭秘Input Overlay:直播输入可视化实战指南
  • 口碑好的广东开窗机控制箱源头厂家 - GrowthUME
  • Ubuntu 22.04 内核升级实战:从稳定HWE到前沿主线,如何精准选择与安全操作