[Arduino]没带钥匙?手机遥控开宿舍之门

(Written By Vector.欢迎转载,保留出处便可)

youku视频
钥匙本身就容易丢,不少人进宿舍忘带钥匙,那个急的。宿舍里面有人还好,没人就尴尬了。如果里面的同学在高床,下来开门也是相当麻烦。为了解决这个困难,通过查阅资料,结合arduino,设计出了这款用手机(连上宿舍wifi)遥控开门的装置。

Clain:Standing on the shoulders of the giants

创新点:

功能方面|软件方面|
-|
手机Wifi遥控开门|20次连续快速判断减少距离判断误差
圆形舵机旋转盘,无视旋转方向|Autodelay:根据距离自动调整测距频率以省电\高频测试
成本低廉|三重密码安全性(Wifi密码,开门密码,设备Mac地址绑定)
可拓展性高|

部件|作用|数量|
-|
arduino R3 UNO开发板|单片机主机|1
Wifi模块|提供wifi数据接收&&输出|1
强力舵机|提供旋转动力|1
红外测距模块|提供室内距离检测自动开门|1
杜邦线|连接|若干
坚韧缝纫线|传动|若干
3M胶|粘贴|1
热熔胶|粘贴|少量
胶带|粘贴|少量

先看看效果吧:

视频

自然状态

自然状态
工作
舵机安装好


其实思路很简单,就是手机发送信号给单片机,单片机控制舵机旋转,舵机拉动门栓

项目管理

Must have|Should|Nice
-|
wifi接收,舵机|安全性,避免误差|室内走进自动开门,液晶显示,RFID,更低廉的成本

So we begin:
简要步骤(下文再详细介绍)

程序部分:

  • 手机tcp窗口欢迎界面:

code:

void Welcome(float S)
    {
     
     Serial.println("Hi,this is a Wifi-control door-opening system organized by Vector_Y ^_^");
     Serial.print("The Distance is:");
      Serial.print(S);
    Serial.print("cm now.\n\n");

    }
  • 红外模块测距扫描,根据距离自动调整频率以省电/快速侦测
float Scan()
{
   long IntervalTime=0;
    digitalWrite(trig,1);
    delayMicroseconds(15);
    digitalWrite(trig,0);
    IntervalTime=pulseIn(echo,HIGH);
    float S=IntervalTime/58.00;
    return S;
  }
int AutoDelay(float Distance)
{
  if( Distance>120.00 )   //Scan according to the Distance.   
    delay(1000);
   else if(  Distance>50.00&&Distance<=120.00  )
    delay(500);
    else if(  Distance>=0.00&&Distance<=50.00  )    //Why alwayts is this
    delay(200);
    return 0;
  }
  • 防误差机制

当检测到第一次有信号后,接下来快速检测19次,期间任何一次出现距离不对则全部break 重新判断。

code:

int Whether_True(float Distance)
{
      int k=1;
   for(int i=1;i<=19;i++)
   {
    if(Distance>0&&Distance<=s1)
    {
      k=1;
      delay(10);  //short enough
    }
    else
    {
      k=0;
      break;
    }
}
 return k;
}
  • 舵机顺逆时针
//舵机顺逆时针 
void Steer_Turn_Clockwise()
{
        int pos;
      for(pos = 0; pos < 180; pos += 1) // 从 0 度-180 度
         { 
           myservo.write(pos); // 输入对应的角度值,舵机会转到此位置
             delay(1); // 5ms 后进入下一个位置
          }
}
void Steer_Turn_Eastern()
{
  int pos;
  for(pos=180;pos>=0;pos--)
      {
        myservo.write(pos);
        delay(1);
       }
}
  • 手机发射的暗号的接受与密码检查

code:

while(Serial.available())     //Get password.
  {
    Password+=(char)Serial.read();
    delay(2);
  }
int Check_Password(String Password)
{
  int k=0;
  if(Password=="k")
  {
    k=1;
   }
  else{
    k=0;
  }
   return k;
}
  • 手机端软件安装:

首先设置好wifi模块.
wifi模块采用TCP串口协议,底层协议怎么回事,我们或许无须现在理解。
要实现手机安装软件,首先,下载Tcp连接
安装好后,进入,界面如下:

Paste_Image.png

这里面要检测信息的话,可以用 "聊天”,“终端”。一键式设置的话用“开关”

连接正常后arduino返回距离信息

切换到开关栏目,选择一个按钮,设定为我们的开门暗号。目前,开门暗号为k。


定义开关,实现一键式操作

设置自动连接与默认开关

首选项设置

noise:

大功率舵机的噪音真不是一般的。可以接受,但是还是有点大,就是那种熟悉的齿轮转动的“zizizi”的feeling。

按下 k,

开关触发

返回到终端界面,可见arduino返回了信息

Paste_Image.png

其实把端口公开了也不怕啦,因为我们路由器设置了mac绑定,第三重(最有保障的部分)保证安全性。


实验中遇到的拦路虎与解决:

理论与实际的差距有时真的比想象中的大。本来只是一个简单的东西,没想到实际安装却花了我不少时间。

  • 舵机——快叫你大哥出来。

一开始用的是9g小舵机,优点是旋转快,成本低。
后来发现5格的地方转不动,尼玛
然后选择了2格,这样的话拉力就扩大了2.5倍,拉的动了,可是做工距离比较短。那也没关系,把门栓预先拉一点就好了。
没想到,这个9g舵机因长时间高负荷工作,内部齿轮磨损了,也就是滑齿了!


Paste_Image.png

没事,那就叫大哥出来——9KG/m大拉力之舵机。哇这黑色金属光芒什么的最喜欢了。
无奈因为用了9kg/m大拉力的舵机,旋转翼太长了会抵门,超强的拉力直接把胶弄下来。
还好后来发现了圆形旋转翼盘,更意外解决了无视旋转方向(顺逆时针)的困难。

  • 连线:接连不断

真的是非常喜欢用线作牵引物。第一是软,第二是便宜、容易得到,最重要的是,不会影响手动开门
用小舵机的时候,一根线就可以拉得动。
用大舵机,由于拉力太强,一根线,断;两根,断;上到四根终于不断了,但是把四根线穿进旋转盘的小孔,真是考眼力……

  • 粘贴-哥们,给力点行吗

本来是想用3M胶贴固定的,发现舵机有旋转趋势,3M胶贴虽然强度不错,但是禁不起旋转。
后来选择了热熔胶固定(相当方便强劲)


舵机粘贴

因为用了9kg/m大拉力的舵机,可不敢把舵机粘错地方,否则就会整个把胶都拉下来。

  • 距离设置:红外模块不知道是不是傻了,明明没人,还是动不动就检测到小于设置距离。

100cm太敏感,50cm却来不及开门了。最终设置到80cm感应。
于是写了一个防误差算法——第一次检测到距离小于80cm后,快速连续进行19次检测,所有检测都小于才开门。
防误差code 上文已发布。



成本计算

  • 现机成本:

Paste_Image.png
Paste_Image.png
Paste_Image.png
wifi
电源延长线:

物件|成本|
-|
ARDUINO R3(质量好)|78
wif模块|60
舵机|30
粘贴|10
usb延长线|10
总计:180¥

上面由于使用的是开发板,较贵。实际使用中,采用工业级配置会相当实惠。


  • 低成本改进装置:

主控板方面:

  • 国产ARDUINO R3
Paste_Image.png
  • 国产 arduino mini
更小

工业mini Wifi模块

Paste_Image.png

可选:

  • 液晶显示模块:
    已写好一个有装载、滑入效果的图。
    效果
    Paste_Image.png

RFID:


Paste_Image.png

物件|成本|
-|
Arduino mini pro|10
迷你省电Wifi|10
延长线|10
粘贴|10
线|1

最低成本41.我的天,批量生产中,50元就能让我们的宿舍配备自动开门系统,你说划不划算,可不可怕~


Anyway,This Budget make my dormitary cooler.Lets play cool._

Ps:想与我交流的话就请评论、关注我吧
  Thumbs up and follow if you wanna get my latest articles.
  大好き?フォロー!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,064评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,606评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,011评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,550评论 1 269
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,465评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,919评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,428评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,075评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,208评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,185评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,191评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,914评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,482评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,585评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,825评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,194评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,703评论 2 339

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,229评论 25 707
  • Arduino Due有14个数字I/O,6个模拟I/O,一个复位开关,一个ICSP下载口,7-12v电源供电。 ...
    麦牛2013阅读 3,292评论 0 8
  • 老人帮自己的孩子带孩子,上一辈帮下一辈照顾幼小,这在我们的身边是司空见惯的,好像是天经地义的事情。如果哪家老人不帮...
    逆风的沙阅读 735评论 12 4
  • 《梦醒时分》 在江南一座美丽的城市,我邂逅了她,后来她成了我的初恋女友。她有着一个很好听的名字——许彤。我们是老乡...
    哈士奇2016阅读 443评论 0 1