Skip to main content

OpenClaw AI猜拳游戏教程

开始前请先完成 使用前准备 目录下的 [01-外设硬件配置]、[02-openclaw Ajetson-KEY配置]、[03-openclaw切换模型]、[04-AI语音交互配置]、[05-三种对话方案配置测试]。如果当前只使用 TUI / 飞书,可以先跳过 04。本文默认基础环境已经准备完成,只展开 AI 猜拳项目本身。

1. 教程目标

本文通过“手势识别 + AI 裁判 + 屏幕灯光反馈”的方式,展示 OpenClaw 的互动游戏能力。完成本教程后,读者可以:

  • 了解如何用摄像头识别玩家手势

  • 通过飞书、TUI、语音代码三种方式和 OpenClaw 对话

  • 完成四个项目场景:手势识别、AI 出拳、结果判定、记分反馈

2. 硬件准备

  • OpenClaw 主控板

  • CSI 摄像头模块

  • OLED 显示屏

  • RGB 灯带 / RGB 灯珠模块

  • [可选] AI语音模块+扬声器

  • 接线图

image-20260601100512081

3. 软件准备

教程中会用到的代码入口

  • 摄像头拍照命令:/home/jetson/hardware_hal_demo/seewhat

  • 语音入口:/home/jetson/voice_to_openclaw/src/main.py

这个项目的关键能力主要有三段:

  • 摄像头负责拍下玩家手势

  • OpenClaw 负责决定 AI 出拳,并把结果显示到 OLED / RGB

4. 测试项目基础能力

开始当前项目之前,请先完成一次 openclaw tui 基础对话自检;如果还没做,先看 [05-三种对话方案配置测试]。通过后,再用 TUI 分别验证项目里的基础能力。

终端输入:

openclaw tui

image-20260601100616835

然后可以先做几步基础测试:

  • 帮我拍一张手势照片

  • 识别一下这是不是剪刀手

  • 在 OLED 上显示“Ready”

  • 让 RGB 亮蓝色

5. 和 OpenClaw 对话的三种方案

方案适合场景优点建议定位
飞书远程演示、活动互动容易分享给多人体验展示“视觉互动游戏”
TUI本地调试、规则验证最容易看到识别和判定过程先跑通游戏逻辑
语音代码游戏互动、课堂演示更像真正的 AI 游戏搭子作为完整演示方案

如果选配了AI语音模块+扬声器,飞书对话、tui、whatsapp对话需要播报openclaw回复的内容,可以终端运行下面的程序,ai语音模块对话不需要重复运行

  • 修改是否打开播报参数

x /home/jetson/voice_to_openclaw/.env xxxxxxxxxx ENABLE_TTS = true #这个参数就是控制是否播报,修改完保存,终端运行下面程序

  • 终端输入

x cd ~/ voice_to_openclaw source . venv / bin / activate python \- m src . openclaw_session_tts

image-20260511200643518

5.1 飞书方案

飞书接入和机器人创建步骤请直接参考 [05-三种对话方案配置测试]。创建好之后,就可以在飞书里远程触发猜拳游戏,例如:

  • 我们来玩猜拳,拍照识别我的手势,你可以随机出手势,然后判断是你赢了还是我赢了,oled显示这一局谁赢了

1777367496395_4053f2a4ba2728b814fa1024b2323b7b

这里可以自行添加飞书对话截图。

5.2 TUI 方案

如果已经完成第 0 篇中的 TUI 自检,直接进入终端文字对话:

xxxxxxxxxx openclaw tui

然后输入项目相关指令,例如:

  • 我们来玩猜拳游戏,你先出随机出手势,然后拍照识别我的手势,最后判断是你赢了还是我赢了,oled显示这一局谁赢了,如果你赢了亮流水灯,我赢了舵机跳一段舞蹈

image-20260428171447672

5.3 语音代码方案

xxxxxxxxxx 需要选配 ai 语音交互模块 + 扬声器

语音模块安装、环境配置和基础唤醒流程请直接参考 [04-AI语音交互配置]。唤醒之后,就可以直接说出控制内容,例如:

  • 我们来玩猜拳,拍照识别我的手势,你可以随机出手势,然后判断是你赢了还是我赢了,oled显示这一局谁赢了

image-20260601100717100

6. 项目实现

注意:下面都是在 openclaw tui 方式进行对话演示,你也可以自己选择飞书或语音方式来完成。

6.1 场景一:手势识别

实验目标

识别玩家当前出的手势,例如石头、剪刀或布。

效果说明

OpenClaw 会先拍照,再根据图片识别出手势类型。这一步是整个游戏的输入基础。

示例指令

  • 识别一下我现在出的手势

  • 我已经出拳了,帮我看一下

  • 看看这是石头、剪刀还是布

6.2 场景二:AI 出拳与判定

实验目标

让 OpenClaw 在识别玩家手势之后,给出 AI 的出拳结果并判定输赢。

效果说明

这一环节最能体现“视觉输入 + 对话推理”的特点。OpenClaw 不只识别玩家,还会继续参与对局,给出自己的出拳和结果解释。

示例指令

  • 我们来玩猜拳,拍照识别我的手势,你可以随机出手势,然后判断是你赢了还是我赢了,oled显示这一局谁赢了

6.3 场景三:OLED 记分牌

实验目标

让 OLED 显示当前局结果或累计比分。

效果说明

屏幕可以显示 WinLoseDraw,也可以显示 You 1 : 0 AI 这种简单比分,让项目更像一个完整小游戏。

示例指令

  • 在 OLED 上显示这一局结果

  • 把比分写到屏幕上

  • 显示“Round 1 You Win”

6.4 场景四:RGB 结果反馈

实验目标

用 RGB 颜色快速表达胜负结果。

效果说明

例如赢了亮绿色,输了亮红色,平局亮蓝色。这样即使不看文字,也能立刻知道这一局的结果。

示例指令

  • 如果我赢了就亮绿灯

  • 如果我输了就亮红灯

  • 如果你赢了亮流水灯,我赢了舵机跳一段舞蹈