Giter Club home page Giter Club logo

upkie's Introduction

Upkie 轮式双足机器人

CI 构建说明 文档 覆盖范围 PyPI版本 聊天

Upkie是一款完全开源的自平衡轮式双足机器人。它有用于平衡的轮子,以及用于越野或穿越不平坦地形的腿。Upkies 设计为可在家中使用在线订购的工具和组件进行构建,例如 mjbots 执行器。运动控制在机器人的 Raspberry Pi 上运行。

该存储库包含构建 Upkie 并对其进行动画处理所需的所有软件和说明。可以在 Linux 或 macOS 上使用 Python 或 C++ 进行开发。欢迎在聊天讨论论坛中提问。

安装

要使用 Python 编写 Upkie 代码,只需安装:

pip install upkie

这个 Python 接口已经足够快,可以进行实时控制。如果稍后您想优化部分代码,可以将它们移至 C++ spins

演示

您可以直接从命令行尝试演示:

git clone https://github.com/upkie/upkie.git
cd upkie
./try_pid_balancer.sh

单击模拟器窗口中的机器人以施加外力。如果您的计算机连接了游戏控制器,请操纵其操纵杆来移动机器人🎮

例子

您可以使用分布在upkie.envs. 例如,这是一个简单的比例反馈平衡器:

import gymnasium as gym
import upkie.envs

upkie.envs.register()

with gym.make("UpkieGroundVelocity-v3", frequency=200.0) as env: observation, = env.reset() action = 0.0 * env.action_space.sample() for step in range(1_000_000): observation, reward, terminated, truncated, = env.step(action) if terminated or truncated: observation, _ = env.reset() pitch = observation[0] action[0] = 10.0 * pitch

要运行此代理,您首先需要启动模拟:

./start_simulation.sh

然后执行上面的Python代码。要在机器人上运行代理,请执行相同的操作,但运行pi3hat 脊柱而不是模拟。

代理商

演示代理只需通过PID 控制就地进行平衡。还有更高级的 Upkie 代理分布在自己的存储库中。查看您感兴趣的:

前往new_agent模板来创建您自己的模板。

为了走得更远

upkie's People

Contributors

stephane-caron avatar pgraverdy avatar ubgk avatar dependabot[bot] avatar vivianeledoux avatar araffin avatar yuanzhongqiao avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.