最好的电子音响科技diy制作网站

haoDIY_音响电子电脑科技DIY小制作发明

当前位置: 主页 > 电子DIY > 单片机 >

DIY平衡台游戏:小球请不要滚下去

时间:2017-07-04 21:23来源:本站 作者:haodiy 点击:
编者注:本项目来自Instructables,项目原作者为RamyMounir。本项目是为满足南佛罗里达大学的Make课程的项目要求而设计的。我的名字叫RamyMounir,是南佛罗里达

 

DIY平衡台游戏:小球请不要滚下去

编者注:本项目来自Instructables,项目原作者为Ramy Mounir。

本项目是为满足南佛罗里达大学的Make课程的项目要求而设计的。我的名字叫Ramy Mounir,是南佛罗里达大学的Make课程的一名学生创客。在本项目中,我使用一块Arduino作为微控制器打造了一个能用舵机控制的游戏平台。该平台有三种操作模式,支持0~2位玩家。

 

0位玩家模式:不管盒子是怎么放置的,平台都始终处于水平状态。

 

 

1位玩家模式:玩家使用控制杆操作,确保小球位于平台之上。

 

 

2位玩家模式:和1位玩家模式类似,但2位玩家时可能通过灯光对平台进行控制。

 

第一步:组件

 

DIY平衡台游戏:小球请不要滚下去

 

 

Arduino Uno

 

 

面包板

 

 

控制杆模组

 

 

2个舵机

 

 

2个光电池

 

 

3轴加速度计/陀螺仪(MPU 6050)

 

 

2个330Ω电阻

 

 

9V电池组(带开关)

 

 

线材等

 

第二步:3D打印组件

 

DIY平衡台游戏:小球请不要滚下去

 

我使用的是Solidworks设计我的3D打印组件,采用的材料是常见的PLA塑料。至于舵机等装置,即可以选择使用螺钉的形式固定,也可以使用强力胶进行固定。

点击下载我的3D打印文件。

第三步:控制系统

控制系统的结构示意图如下:

 

DIY平衡台游戏:小球请不要滚下去

 

其中Arduino从红色框所表示的传感器和控制器上获得信号,然后输出PWM信号到执行器(绿框表示的舵机),然后由舵机控制平台的方向。

光控制时,控制系统的设计也大致类似。

第四步:连线

系统的线路连接如下所示:

 

DIY平衡台游戏:小球请不要滚下去

 

 

两颗光电池和330Ω电阻一起连接分压电路中,信号输入Arduino的A0和A1。

 

 

加速度计连接到A4和A5(SDA和SCL)。

 

 

控制杆连接到A2和A3。

 

 

两个舵机分别连接到PWM数字引脚3和5。

 

第五步:Arduino程序

Arduino程序分成了两个部分:主要部分和功能部分。

主要部分基本上是一个循环函数中的开关。其可以调用模式检查函数,然后根据得到的返回值定向到特定的功能部分函数。(程序点击这里下载。)

功能部分包含5个主要函数:

 

setplane():在设置函数中,该函数用来设置平台的水平

 

 

checkbuttons():该函数用来检查系统现在所处的模式。如果控制杆不在其正常位置上,该函数会返回特定的数值。类似地,如果其探测到一个比特定值大一点的数值,它又会返回另一个值。如果没有探测到任何东西,那么就返回默认值。

 

 

followlight():通过控制系统对实际光值和期望光值的偏差的计算来保持光电池和光源之间的特定距离。

 

 

balance():和上面的followlight()函数的目的相同,只不过其数值来源于加速度计输出的值。

 

 

followjoystick():将控制杆输入的信号映射到输出到舵机的PWM信号上。

 

第六步:完成

到这里项目就完成了,可以开始玩耍了!

 

DIY平衡台游戏:小球请不要滚下去

(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
相关文章
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容