电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>制作可以为游戏中时光倒流添加动作的设备

制作可以为游戏中时光倒流添加动作的设备

2023-07-11 | zip | 0.05 MB | 次下载 | 免费

资料介绍

描述

时光倒流很棒!它们帮助我们审视这个缓慢移动的世界,而我们可能会忘记欣赏它的美丽。让我们来调味吧!

在本教程中,我将向您展示我是如何制作一个可以为您的游戏中时光倒流添加动作的设备。让我们开始吧!

第 1 步:计划

 
poYBAGOr0A-ANZhiAAa7mtK-izE491.jpg
 

我希望相机在两个方向上移动,即水平(X)和垂直(Y)轴。为此,我将需要两个电机

我们应该能够为两个轴选择开始和停止位置。

电机的运动是这样的,即在每张照片之后轴应该转动 1 度。

为了获得如此精确的控制,我将使用伺服电机

此外,我们应该能够设置时间间隔。

我希望它是便携式的,所以我决定用锂聚合物电池运行它,这意味着需要充电和升压电路。

最后,控制这一切的大脑将是 ArduinoATMega328p 将用作独立的微控制器

我选择了 GoPro 相机,因为它很小,用它制作延时摄影很容易。您可以使用任何其他小型相机或手机

第 2 步:组件列表

 
 
 
 
poYBAGOr0BKAEnrNAAH8qp44l4s790.jpg
 
1 / 2
 

1x ATmega328p(带有 Arduino 引导加载程序)

2x MG995 伺服电机

1x MT3608 升压转换器

1x TP4056 锂聚合物电池充电模块

1x SPDT 开关

1x 16 MHz 晶体

2x 22pF 电容

2x 10k 电阻

1x 电位器(任何值)

1x 按钮(常开)

选修的:

3D打印机

第 3 步:设计 PCB

 
 
 
 
pYYBAGOr0BWAW7TUAADTSEegaUY229.jpg
 
1 / 2
 

为了使电路尽可能小,我使用了印刷电路板。您可以自己在家蚀刻电路板,也可以让专业人员为您完成艰苦的工作,这就是我所做的。

当面包板上的一切正常时,我们就可以开始 PCB 设计过程了。我选择 EasyEDA 进行设计,因为它可以让像我这样的初学者轻松进行设计。

检查,检查再检查!确保您没有遗漏任何内容。完全确定后,单击“生成制造文件”以下载 Gerber 文件,或者您可以使用下面给出的选项以 2 美元的价格直接从JLCPCB订购。

收到/制作 PCB 后,就可以填充它了。准备好电路图并按照丝印标记开始焊接元件。

焊接后用异丙醇清洁 PCB 以去除助焊剂残留物。

第四步:把东西放在一起

 
 
 
 
poYBAGOr0C2AaITTAAcesQMEjUg481.jpg
 
1 / 7
 

您将不需要花哨的 3D 打印机。使用适当的工具可以很容易地构建这些零件。我最近买了一台 3D 打印机,很想在我的项目中使用它。我从Thingiverse找到了一些零件

GoPro 支架:https ://www.thingiverse.com/thing:53680

伺服喇叭:https ://www.thingiverse.com/thing:2794688

将电线焊接到带有母头的电源开关、电位器和按钮,并将它们连接到 PCB 上的公头。

在 Arduino IDE 中下载并打开附件,并将代码上传到您的 Arduino。上传代码后,从 Arduino 板上取下 IC 并将其插入 PCB。

 /*
Author  : IndoorGeek
YouTube : www.youtube.com/IndoorGeek
Thank you for downloading. Hope you like the project.
*/
#include
Servo xServo;
Servo yServo;
int potPin = A0;
int val,xStart,xStop,yStart,yStop;
int button = 2;
unsigned long timeInterval;
void setup() {
 pinMode(button, INPUT);
 xServo.attach(3);
 yServo.attach(4);
}
void loop() {
 xAxis();
 delay(1000);
 xStart = val;
 yAxis();
 delay(1000);
 yStart = val;
 xAxis();
 delay(1000);
 xStop = val;
 yAxis();
 delay(1000);
 yStop = val;
 setTimeInterval();
 delay(1000);
 timelapseStart();
}
void xAxis(){
 while(digitalRead(button) != HIGH){
 val = analogRead(A0);
 val = map(val, 0, 1023, 0, 180);
 xServo.write(val);
 }
}
void yAxis(){
 while(digitalRead(button) != HIGH){
 val = analogRead(A0);
 val = map(val, 0, 1023, 0, 180);
 yServo.write(val);
 }
}
void setTimeInterval(){                   //Change the time intervals according to your camera's timelapse settings
 while(digitalRead(button) != HIGH){
 val = analogRead(A0);
 if(val>=0 && val<170){
   timeInterval = 1000L;
 }
 if(val>=171 && val<341){
   timeInterval = 2000L;
 }
 if(val>=342 && val<512){
   timeInterval = 5000L;
 }
 if(val>=513 && val<683){
   timeInterval = 10000L;
 }
 if(val>=684 && val<854){
   timeInterval = 30000L;
 }
 if(val>=855 && val<1023){
   timeInterval = 60000L;
 }
}
}
void timelapseStart(){
 unsigned long lastMillis = 0;
 xServo.write(xStart);
 yServo.write(yStart);
 while(xStart != xStop || yStart != yStop ){
   if(millis() - lastMillis > timeInterval ){
     if(xStart < xStop){
     xServo.write(xStart);
     lastMillis = millis();
     xStart++;
   }
   if(xStart > xStop){
     xServo.write(xStart);
     lastMillis = millis();
     xStart--;
   }
   if(yStart < yStop){
     yServo.write(yStart);
     lastMillis = millis();
     yStart++;
   }
   if(xStart > xStop){
     yServo.write(yStart);
     lastMillis = millis();
     yStart--;
   }
 }
}
}

第 5 步:工作

 
 
 
 
poYBAGOr0DuAMNtOAAMGFMQDsRs441.jpg
 
1 / 2
 

打开主开关。

X 轴将处于活动状态。将锅转到您想要开始游戏中时光倒流的位置。按选择按钮确认起始位置。之后,Y 轴将被激活。执行相同操作以选择 Y 轴起始位置。

对 X 轴和 Y 轴停止位置重复上述过程。

现在,使用罐子,选择每次拍摄之间的时间间隔。锅的旋转分为6个部分,间隔为1秒、2秒、5秒、10秒、30秒和60秒。您可以更改setTimeInterval()函数中的间隔,如图所示。按选择按钮确认。

舵机将到达其起始位置,并在时间间隔后移动 1 度。

顺序:

  • 设置 X 轴起始位置
  • 设置 Y 轴起始位置
  • 设置 X 轴停止位置
  • 设置 Y 轴停止位置
  • 设置时间间隔

第 6 步:未来升级

 
pYYBAGOr0EOAfEKFAAEeJ0yDq04839.jpg
 

1) 目前,由于 1 shot/degree,我们可以获得的最多照片数量是 180,因为舵机可以从 0 度旋转到 180 度。添加齿轮将提高分辨率。因此,我们将有更多镜头,从而实现流畅的延时摄影。我对电子产品很满意,但对机械产品却不太满意。期待改进它。

2) 电位器可用旋转编码器代替。

3)无线控制,也许?!

有很多东西要学!

第 7 步:享受吧!

谢谢你坚持到最后。希望你们都喜欢这个项目并且今天学到了一些新东西。如果你自己做一个,请告诉我。订阅我的YouTube 频道以了解更多即将推出的项目。再一次谢谢你!

 


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费