新增agent语音输入控制、优化web界面ui布局和样式、优化摄像头控制响应
This commit is contained in:
1 parent
7896e90602
commit
2f8c3bfdca
11 files changed
+1415
-737
No files matched your search
+122
-80
@@ -9,99 +9,141 @@
|
||||
<link rel="stylesheet" href="CSS/agent.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<h1 class="title">垃圾桶控制界面</h1>
|
||||
<div class="page-shell">
|
||||
<div class="container">
|
||||
<header class="page-intro">
|
||||
<p class="eyebrow">Robot Console</p>
|
||||
<h1 class="title">垃圾桶控制界面</h1>
|
||||
<p class="subtitle">把实时控制、轨迹管理和智能指令整理到同一个更清晰的工作台里。</p>
|
||||
</header>
|
||||
|
||||
<!-- 手柄风格控制器 -->
|
||||
<div class="controller">
|
||||
<div class="controller-layout">
|
||||
<!-- 左侧:八个方向控制 -->
|
||||
<div class="dpad">
|
||||
<div class="dpad-row">
|
||||
<button class="btn btn-forward-left" id="forwardLeftBtn"><span>↖</span></button>
|
||||
<button class="btn btn-forward" id="forwardBtn"><span>↑</span></button>
|
||||
<button class="btn btn-forward-right" id="forwardRightBtn"><span>↗</span></button>
|
||||
</div>
|
||||
<div class="dpad-row">
|
||||
<button class="btn btn-left" id="leftBtn"><span>←</span></button>
|
||||
<div class="btn btn-center"></div>
|
||||
<button class="btn btn-right" id="rightBtn"><span>→</span></button>
|
||||
</div>
|
||||
<div class="dpad-row">
|
||||
<button class="btn btn-backward-left" id="backwardLeftBtn"><span>↙</span></button>
|
||||
<button class="btn btn-backward" id="backwardBtn"><span>↓</span></button>
|
||||
<button class="btn btn-backward-right" id="backwardRightBtn"><span>↘</span></button>
|
||||
</div>
|
||||
</div>
|
||||
<main class="dashboard">
|
||||
<section class="main-column">
|
||||
<section class="surface control-surface">
|
||||
<div class="section-heading">
|
||||
<div>
|
||||
<p class="section-kicker">实时控制</p>
|
||||
<h2>方向与动作</h2>
|
||||
</div>
|
||||
<p class="section-note">按住按钮持续运动,松开后自动停止。</p>
|
||||
</div>
|
||||
|
||||
<!-- 中间:录制回放控制 -->
|
||||
<div class="center-controls">
|
||||
<button class="btn btn-record" id="recordBtn"><span>录制</span></button>
|
||||
<button class="btn btn-playback" id="playbackBtn"><span>回放</span></button>
|
||||
</div>
|
||||
<div class="controller">
|
||||
<div class="controller-layout">
|
||||
<div class="control-cluster">
|
||||
<span class="cluster-label">移动</span>
|
||||
<div class="dpad">
|
||||
<div class="dpad-row">
|
||||
<button class="btn btn-forward-left" id="forwardLeftBtn" type="button"><span>↖</span></button>
|
||||
<button class="btn btn-forward" id="forwardBtn" type="button"><span>↑</span></button>
|
||||
<button class="btn btn-forward-right" id="forwardRightBtn" type="button"><span>↗</span></button>
|
||||
</div>
|
||||
<div class="dpad-row">
|
||||
<button class="btn btn-left" id="leftBtn" type="button"><span>←</span></button>
|
||||
<div class="btn btn-center" aria-hidden="true"></div>
|
||||
<button class="btn btn-right" id="rightBtn" type="button"><span>→</span></button>
|
||||
</div>
|
||||
<div class="dpad-row">
|
||||
<button class="btn btn-backward-left" id="backwardLeftBtn" type="button"><span>↙</span></button>
|
||||
<button class="btn btn-backward" id="backwardBtn" type="button"><span>↓</span></button>
|
||||
<button class="btn btn-backward-right" id="backwardRightBtn" type="button"><span>↘</span></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 右侧:旋转控制 -->
|
||||
<div class="rotate-controls">
|
||||
<button class="btn btn-rotate-left" id="rotateLeftBtn"><span>↶</span></button>
|
||||
<button class="btn btn-rotate-right" id="rotateRightBtn"><span>↷</span></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-cluster control-cluster-center">
|
||||
<span class="cluster-label">录制</span>
|
||||
<div class="center-controls">
|
||||
<button class="btn btn-record" id="recordBtn" type="button"><span>录制</span></button>
|
||||
<button class="btn btn-playback" id="playbackBtn" type="button"><span>回放</span></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 轨迹管理区域 -->
|
||||
<div class="path-management">
|
||||
<h3>轨迹管理</h3>
|
||||
<div class="path-input">
|
||||
<input type="text" id="pathName" placeholder="输入轨迹名称(如:test1)">
|
||||
<button class="btn btn-save" id="savePathBtn">保存轨迹</button>
|
||||
</div>
|
||||
<div class="path-list">
|
||||
<h4>已保存轨迹</h4>
|
||||
<ul id="pathList"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-cluster control-cluster-rotate">
|
||||
<span class="cluster-label">旋转</span>
|
||||
<div class="rotate-controls">
|
||||
<button class="btn btn-rotate-left" id="rotateLeftBtn" type="button"><span>⟲</span></button>
|
||||
<button class="btn btn-rotate-right" id="rotateRightBtn" type="button"><span>⟳</span></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- 状态显示区域 -->
|
||||
<div class="status" id="status">
|
||||
<p>就绪</p>
|
||||
</div>
|
||||
<section class="surface status-surface">
|
||||
<div class="section-heading compact">
|
||||
<div>
|
||||
<p class="section-kicker">运行状态</p>
|
||||
<h2>设备反馈</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="status" id="status">
|
||||
<p>就绪</p>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<!-- Agent聊天区域 -->
|
||||
<div class="agent-chat">
|
||||
<h3>智能控制助手</h3>
|
||||
<aside class="side-column">
|
||||
<section class="surface path-management">
|
||||
<div class="section-heading compact">
|
||||
<div>
|
||||
<p class="section-kicker">轨迹管理</p>
|
||||
<h3>保存与回放路径</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="path-input">
|
||||
<input type="text" id="pathName" placeholder="输入轨迹名称,例如 test1">
|
||||
<button class="btn btn-save" id="savePathBtn" type="button">保存轨迹</button>
|
||||
</div>
|
||||
<div class="path-list">
|
||||
<h4>已保存轨迹</h4>
|
||||
<ul id="pathList"></ul>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- LLM配置区域 -->
|
||||
<div class="llm-config">
|
||||
<h4>LLM模型配置</h4>
|
||||
<div class="config-row">
|
||||
<label for="apiUrlInput">API URL:</label>
|
||||
<input type="text" id="apiUrlInput" placeholder="例如: https://api.openai.com/v1">
|
||||
</div>
|
||||
<div class="config-row">
|
||||
<label for="apiKeyInput">API Key:</label>
|
||||
<input type="password" id="apiKeyInput" placeholder="输入API密钥">
|
||||
</div>
|
||||
<div class="config-row">
|
||||
<label for="modelInput">模型:</label>
|
||||
<input type="text" id="modelInput" placeholder="例如: gpt-3.5-turbo">
|
||||
</div>
|
||||
<button class="btn btn-config" id="saveConfigBtn">保存配置</button>
|
||||
</div>
|
||||
<section class="surface agent-chat">
|
||||
<div class="section-heading compact">
|
||||
<div>
|
||||
<p class="section-kicker">智能助手</p>
|
||||
<h3>自然语言控制</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 聊天输入区域 -->
|
||||
<div class="chat-input">
|
||||
<input type="text" id="agentInput" placeholder="输入命令,例如:前进3秒、左转、执行路径test1">
|
||||
<button class="btn btn-save" id="sendAgentBtn">发送</button>
|
||||
</div>
|
||||
<div class="chat-history" id="chatHistory">
|
||||
<!-- 聊天历史记录 -->
|
||||
</div>
|
||||
<div class="chat-input">
|
||||
<input type="text" id="agentInput" placeholder="输入命令,例如:前进 3 秒、左转、执行路径 test1">
|
||||
<button class="btn btn-save" id="sendAgentBtn" type="button">发送</button>
|
||||
</div>
|
||||
|
||||
<div class="llm-config">
|
||||
<h4>LLM 模型配置</h4>
|
||||
<div class="config-row">
|
||||
<label for="apiUrlInput">API URL</label>
|
||||
<input type="text" id="apiUrlInput" placeholder="例如: https://api.openai.com/v1">
|
||||
</div>
|
||||
<div class="config-row">
|
||||
<label for="apiKeyInput">API Key</label>
|
||||
<input type="password" id="apiKeyInput" placeholder="输入 API 密钥">
|
||||
</div>
|
||||
<div class="config-row">
|
||||
<label for="modelInput">模型</label>
|
||||
<input type="text" id="modelInput" placeholder="例如: gpt-3.5-turbo">
|
||||
</div>
|
||||
<button class="btn btn-config" id="saveConfigBtn" type="button">保存配置</button>
|
||||
</div>
|
||||
|
||||
<div class="chat-history" id="chatHistory">
|
||||
<!-- 聊天历史记录 -->
|
||||
</div>
|
||||
</section>
|
||||
</aside>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="Javascript/control.js"></script>
|
||||
<script src="Javascript/record.js"></script>
|
||||
<script src="Javascript/joycon.js"></script>
|
||||
<script src="Javascript/voice.js"></script>
|
||||
<script src="Javascript/agent.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
Reference in new issue
Block a user