Fish_Yu 发表于 2016-5-17 11:12:33

Dangerous Box 危险的盒子

*【标题|名称】危险的盒子*【实现功能】四处乱甩 没错它只是四处乱甩2333*【展示】
https://mc.dfrobot.com.cn/data/attachment/album/201605/16/193803lvi9sz9tdter9hzt.gif

*【项目介绍+新路历程】

[*]由于感觉我所在的实验室缺少一种欢迎有人进来的东西,一直想做一个作死的东西,一有人进来就开始折腾,以表示对人们“友好”的欢迎。在本着有趣第一,比赛第二的精神下,我做了一个名叫危险的盒子的盒子。没错他只是个盒子,只不过盒子上长上了奇奇怪怪的东西。{:5_196:}


*【制作过程】

[*]说了这么多一本正经的胡说八道的话,下面,让我们一起来看看这个东西是怎么实现的吧~
[*]为什么要称之它为危险的盒子呢?大家看到一开始的动图了吧,这个东西一上电,热释电检测到附近有人经过就开始舞动起来,把靠近他的附近所有的空间全部挥舞一个遍,直到附近没有人他才会停下来。
[*]最后有我剪辑的一段视频。(待补充){:5_195:}




[*]好了现在开始讲解制作过程~
[*]首先,准备材料
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/15/235145byp3bcpymuxfl1yp.jpg

[*]步进电机,步进电机驱动,开关电源,联轴器,以及我们扭动的主力:一条玩具蛇~~
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/15/235150b2ot8intosdaahni.jpg

[*]再来一个盒子,快递的包装盒即可,底部钻成这样方便安装电机。
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/15/235155k6xo5fetfmfaei5h.jpg
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/16/203611pvx1xglxtzxs90mu.jpg
[*]由于找不到垫片,为了增加螺丝的接触面积,使很沉重的电机能够在盒子上头朝上挂住,我找了张废弃的光盘,中间作为电机轴伸出来的位置,然后钻四个洞让螺丝穿过。
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/15/235201yf18hotz8e31tn12.jpg
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/15/235206fxi3r0sir363x3g3.jpg
[*]对于联轴器的处理,我用了最常用的东西——筷子!
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/15/235211hiux2m8x6miixze7.jpg
[*]将蛇头用电钻钻个洞然后将筷子的一段插入钻的洞中,形成的就是这样的啦~然后用热缩管包一下限制一下蛇的扭动范围,不然会甩飞的呢233333
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/15/235221z6cczcch75fzbcm5.jpg
[*]连到联轴器再连到电机上,搞定~
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/16/203655zbzdra899f1gwq1u.jpg
[*]用了一个arduino nano加拓展板(不用杜邦线是感觉杜邦线连得不结实怕晃掉了)再加一个热释电模块组成了整个系统的构造。
[*]最后~刷程序,搞起!!!
[*]

[*]继续做死~在蛇尾上绑上一个锯条
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/16/203413keu4ods7sssyyy2s.jpg
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/16/193738kyhjtus6zjvq7juv.gif
[*]https://mc.dfrobot.com.cn/data/attachment/album/201605/16/193803lvi9sz9tdter9hzt.gif
[*]表示已不敢近距离接触这个东西,关掉它的唯一方法,拔电源!!{:5_179:}

*【代码】附代码
#include <Stepper.h>
#include <TimerOne.h>
#include<stdlib.h>
#define pin_input 2
#define pin_led 13
#define pin_interrupt 0
#define pin_output 12
#define pin_vcc 3
int state = 0;
int count = 0;
int beepflag = 0;
#define STEPS 800


#include <Stepper.h>

const int stepsPerRevolution = 800;
Stepper myStepper(STEPS, 8, 9);
void scan()
{
      int raw = digitalRead(pin_input);
      if (raw == 1&& state==0)
      {
                beepflag = 1;
                state = 1;
                count = 0;
      }
      else if (raw == 0)
      {
                count++;
      }
      if (count == 1)
      {
                state = 0;
      }

}
void setup() {

      pinMode(pin_vcc, OUTPUT);
      digitalWrite(pin_vcc, HIGH);
      pinMode(pin_input, INPUT);
      digitalWrite(pin_input, LOW);
      pinMode(pin_led, OUTPUT);
      digitalWrite(pin_led, LOW);
      pinMode(pin_output, OUTPUT);
      digitalWrite(pin_output, HIGH);
      Timer1.initialize(1000000);
      Timer1.attachInterrupt(scan);
      digitalWrite(pin_led, HIGH);
      digitalWrite(pin_output, LOW);
      myStepper.setSpeed(1000);
      myStepper.step(2 * stepsPerRevolution);
      delay(500);
      myStepper.step(2 * stepsPerRevolution);
      delay(1000);
      digitalWrite(pin_led, LOW);
      digitalWrite(pin_output, HIGH);

}

void loop() {      
      if (beepflag == 1)
      {
                digitalWrite(pin_led, HIGH);
                digitalWrite(pin_output, LOW);
                myStepper.setSpeed(1000);
                myStepper.step(2 * stepsPerRevolution);
                delay(100);
                beepflag = 0;
                digitalWrite(pin_led, LOW);
                digitalWrite(pin_output, HIGH);

      }
      if (state == 1)
      {
                digitalWrite(pin_led, HIGH);
                digitalWrite(pin_output, LOW);
                myStepper.setSpeed(200);
                myStepper.step(random(0,stepsPerRevolution));
                myStepper.setSpeed(100);
                myStepper.step(-random(0, stepsPerRevolution));
      }
      if (state == 0)
      {
                digitalWrite(pin_led, LOW);
                digitalWrite(pin_output, HIGH);
      }



}



virtualwiz 发表于 2016-5-17 11:14:22

{:5_172:}LZ是作死小能手

Fish_Yu 发表于 2016-5-19 17:06:11

Ash 发表于 2016-5-17 12:07
你所在的实验室缺少一种欢迎有人进来的东西...
然后你就做了一个这...
年轻人很有思路!


做项目的同时就应该有一些这种恶搞的东西嘛
能够使实验室的气氛更加活跃的说~~

heinau 发表于 2016-5-17 11:58:05

哈哈哈哈哈哈这个真是超棒的
深切的感受到了撸主的欢迎之情{:5_133:}

Ash 发表于 2016-5-17 12:07:28

你所在的实验室缺少一种欢迎有人进来的东西...
然后你就做了一个这...
年轻人很有思路!
{:5_151:}

hnyzcj 发表于 2016-5-17 12:30:41

Ash 发表于 2016-5-17 12:07
你所在的实验室缺少一种欢迎有人进来的东西...
然后你就做了一个这...
年轻人很有思路!


这是传说中的“神鞭”,我们小时候看过一部影片就叫这名

Fish_Yu 发表于 2016-5-19 17:03:56

virtualwiz 发表于 2016-5-17 11:14
LZ是作死小能手

没有作死嘛 只是表达了下热烈的欢迎之情~~

Fish_Yu 发表于 2016-5-19 17:04:56

heinau 发表于 2016-5-17 11:58
哈哈哈哈哈哈这个真是超棒的
深切的感受到了撸主的欢迎之情

我们实验室的人一看到这个都一脸这孩子没救了的表情233333

Fish_Yu 发表于 2016-5-19 17:07:24

hnyzcj 发表于 2016-5-17 12:30
这是传说中的“神鞭”,我们小时候看过一部影片就叫这名

神鞭233333
只不过这是步进电机操控的“神鞭”{:5_163:}

凌风清羽 发表于 2016-5-19 18:41:56

可怕,我要躲得远远地~~~{:5_171:}

吹口琴的钢铁侠 发表于 2016-5-22 15:38:36

有了这神鞭,外人怎么敢进你们实验室哦{:5_191:}

yoyojacky 发表于 2016-5-24 16:46:24

。。。。这是欢迎还是要虐死客人?

visionsl 发表于 2016-5-25 16:07:46

晚上看到这个会不会吓屎?

Fish_Yu 发表于 2016-5-28 14:22:39

凌风清羽 发表于 2016-5-19 18:41
可怕,我要躲得远远地~~~

不要嘛 它其实是不会伤害到人的呢~~

Fish_Yu 发表于 2016-5-28 14:23:17

吹口琴的钢铁侠 发表于 2016-5-22 15:38
有了这神鞭,外人怎么敢进你们实验室哦

他们都是先来。然后被惊吓到,然后一脸无奈的看着我= =

Fish_Yu 发表于 2016-5-28 14:23:49

yoyojacky 发表于 2016-5-24 16:46
。。。。这是欢迎还是要虐死客人?

欢迎欢迎,肯定是欢迎啦~~{:5_169:}

Fish_Yu 发表于 2016-5-28 14:24:47

visionsl 发表于 2016-5-25 16:07
晚上看到这个会不会吓屎?

要是绑上一圈LED灯带或者El发光线目测晚上效果会更好~是个好的想法!{:5_165:}

木森林的年轮 发表于 2016-6-6 22:37:10

深深的恶意,楼主太坏了:P

coolkid 发表于 2016-6-9 10:58:14

楼主好牛逼,逗。

yoyojacky 发表于 2016-7-1 18:03:05

我觉得已经没有想进门的欲望了。转身离去。

smart_camel 发表于 2016-8-13 23:11:50

不觉得蛇头露在外面更有意思吗?
页: [1] 2
查看完整版本: Dangerous Box 危险的盒子