littlebot
Published on 2025-04-10 / 0 Visits
0

【源码】基于OpenFrameworks框架的Pingy机器人控制系统

项目简介

本项目是基于OpenFrameworks框架的开源项目,用于控制Pingy机器人。项目涉及图形、音频、视频、串行通信和用户界面控制等多方面,目标是构建用户友好界面,让用户能通过简单交互控制机器人的眼球/头部运动和舞蹈模式,同时支持脚本控制。

项目的主要特性和功能

  1. 图形渲染:通过ofApp类处理,可轻松创建和渲染图形界面。
  2. 音频处理:使用ofSoundPlayer类,支持播放音频文件。
  3. 视频处理:借助ofVideoGrabberofVideoPlayer类实现视频捕获和播放。
  4. 串行通信:利用ofArduino类控制与Arduino的串行通信,实现对Pingy机器人的控制。
  5. 用户界面控制:包含PingyControlPanel类控制机器人的眼球/头部运动,ScriptReader类读取脚本文件。
  6. 丰富指令集:支持声音播放、运动控制、模式切换等多种控制命令。
  7. 状态反馈:Arduino会返回按钮状态、电机状态、编码器信息等多种状态信息。

安装使用步骤

硬件连接

使用4线带状电缆连接Pingy和Arduino的以下引脚: | Pingy | Arduino | | :----- | :-------------------- | | V | A0 | | C1 | A5 | | Da | A4 | | G | GND |

代码编译与上传

behavior.ino文件编译并上传到Arduino,此代码已在Nano Every上测试通过。

启动通信

在Pingy关机状态下,使用Arduino串行监视器或以115200波特率连接到Arduino的源应用程序。C++源代码位于src文件夹中。

启动Pingy

打开Pingy的电源,若一切正常,将收到“Pingy detected”消息。

发送控制命令

可以发送允许的命令来控制Pingy,命令需要以分号结尾,例如: SOUND PLAY 10; MOVE PAN 50;

接收状态反馈

Arduino会根据Pingy的状态返回相应的信息,可根据这些信息了解Pingy的状态。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】