“开源迎门汇报/zh”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
实验原理
拼装过程
第75行: 第75行:
  
 
==拼装过程==
 
==拼装过程==
*Step1:将[[Microduino-Duo-S1/zh]]板用'''尼龙螺丝''','''尼龙螺母'''固定在'''结构A2'''底板上面
+
*Step1:'''如下图''',将[[Microduino-Duo-S1/zh]]板用'''尼龙螺丝''','''尼龙螺母'''固定在'''结构A2'''底板上面
 
[[File:Welcome1.png||600px|center]]
 
[[File:Welcome1.png||600px|center]]
*Step2:按以下顺序把模块叠在[[Microduino-Cube-S1/zh]]底板上
+
*Step2:'''如下图''',按以下顺序把模块叠在[[Microduino-Cube-S1/zh]]底板上
 
**[[Microduino-Core/zh]]
 
**[[Microduino-Core/zh]]
 
**[[Microduino-USBTTL/zh]]
 
**[[Microduino-USBTTL/zh]]
第85行: 第85行:
 
[[File:Welcome2.png||600px|center]]
 
[[File:Welcome2.png||600px|center]]
 
*Step3:将喇叭连接到[[Microduino-Amplifier/zh]]模块的接口上(没有左右顺序区别)
 
*Step3:将喇叭连接到[[Microduino-Amplifier/zh]]模块的接口上(没有左右顺序区别)
[[File:Welcome3.png||600px|center]]
+
**'''如下图'',将'''结构B4''','''结构B2'''插在'''结构A2'''上
*Step4:使用'''尼龙螺丝''','''尼龙螺母'''将两个[[Microduino-Passive Infrared/zh]]传感器固定在两块侧板上,之后按如图所示位置固定侧板(相邻的放置在UPIN27开口方向的旁边)
+
**将'''结构B6'''插在'''结构A2'''上,把喇叭固定
 +
[[File:Welcome33.jpg||600px|center]]
 +
*Step4:'''如下图''',使用'''尼龙螺丝''','''尼龙螺母'''将两个[[Microduino-Passive Infrared/zh]]传感器固定在两块'''结构B1'''上
 +
**将'''结构B1'''固定在'''结构A2'''上(相邻的放置在UPIN27开口方向的旁边)
 
[[File:Welcome4.png||600px|center]]
 
[[File:Welcome4.png||600px|center]]
*Step5:使用'''尼龙螺丝''','''尼龙螺母'''将[[Microduino-Color led/zh]]固定在顶板上
+
*Step5:'''如下图''',使用'''尼龙螺丝''','''尼龙螺母'''将[[Microduino-Color led/zh]]固定在'''结构A1'''上
 
[[File:Welcome5.png||600px|center]]
 
[[File:Welcome5.png||600px|center]]
*Step6:将传感器和Sensorhub用传感器线连接起来
+
*Step6:'''按下图所标''',将传感器和'''[[Microduino-Sensorhub/zh]]'''用传感器线连接起来
 
**两个[[Microduino-Passive Infrared/zh]]传感器连接到'''D4/D5'''与'''D6/D7'''接口('''图中蓝色标注''')
 
**两个[[Microduino-Passive Infrared/zh]]传感器连接到'''D4/D5'''与'''D6/D7'''接口('''图中蓝色标注''')
 
**将[[Microduino-Color led/zh]]连接到'''A0/A1'''接口('''图中红色标注''')
 
**将[[Microduino-Color led/zh]]连接到'''A0/A1'''接口('''图中红色标注''')
 
[[File:Welcome6.png||600px|center]]
 
[[File:Welcome6.png||600px|center]]
*Step7:盖上顶盖
+
*Step7:盖上顶盖('''结构A1''')
 
**图中'''黄色框中'''的插槽要与底部的插槽放在对应位置,此位置是固定喇叭的木片使用的
 
**图中'''黄色框中'''的插槽要与底部的插槽放在对应位置,此位置是固定喇叭的木片使用的
**使用插销固定住每个插孔,顶部与底部共6*2总共12个固定口。
+
**使用'''结构B5'''固定住每个插孔,顶部与底部共6*2总共12个固定口。
 
[[File:Welcome7.png||600px|center]]
 
[[File:Welcome7.png||600px|center]]
  

2016年3月18日 (五) 04:05的版本

概述

  • 项目名称:Microduino开源迎门汇报
  • 目的:用Microduino模块搭建迎门人体检测系统
  • 难度:中
  • 耗时:2小时
  • 制作者:peng

简介

  • 迎门人体检测系统通过热释传感器探测3米范围内是否有人靠近
  • 在有人靠近时,通过彩色LED灯变换色彩进行提示,并利用喇叭播报出欢迎语音。

材料清单

  • Microduino设备
模块 数量 功能
Microduino-Core/zh 1 核心板
Microduino-USBTTL/zh 1 下载程序
Microduino-Audio/zh 1 音频控制
Microduino-Amplifier/zh 1 功率放大
Microduino-Sensorhub/zh 1 与传感器相连
Microduino-Cube-S1/zh 1 扩展
Microduino-Passive Infrared/zh 1 热释红外传感器
Microduino-Color led/zh 1 彩色LED灯
  • 其他设备
模块 数量 功能
Micro-USB线 1 下载程序,供电
喇叭 2 发声
尼龙螺丝 5 固定模块
尼龙螺母 5 固定模块
开源迎门汇报外壳套件 1 外壳

实验原理

  • 迎门人体检测系统主要分为检测与控制部分
  • 检测部分采用红外热释传感器Microduino-PIR/zh,能探测附近人体的红外特征信号
  • 控制部分为声光控制
  • 传感器Microduino-PIR/zh工作原理
    • 人体都有特定波长10um左右的红外线,热释传感器通过被动式红外探头探测10um左右红外线而进行工作
    • 人体红外线经过菲涅尔滤光片增强后聚集到红外探头上,探头上的热释电元件温度会发生变化从而向外释放电荷,经过后续电路处理就能产生可以处理的电信号。
    • 通过PIR传感器探测到附近有人靠近后,Microduino-Color led/zh模块变换颜色,Auido模块播报“欢迎光临”语音,从而达到迎宾欢迎的效果
    • PIR传感器探测到附近有人离开后,控制Led模块变换颜色,Auido模块播报“再见”语音
Doorwelcome1.jpg

程序下载

迎门汇报代码Github:WelcomeBodyDetector

程序烧写

  • Microduino-Core/zhMicroduino-USBTTL/zh堆叠在一起。用数据线连接其中的Microduino-USBTTL/zh上传程序。
    • 注意:最好不要将所有模块堆叠在一起之后再上传程序
  • 打开Arduino IDE for Microduino,环境,(搭建参考:AVR核心:Getting started/zh
  • 确认板卡(Microduino-Core)处理器(Atmega328P@16M,5V)选择无误,并选中对应端口号(COMX)
  • 打开你所下载的项目中“WelcomeBodyDetector.ino”程序
  • 几项都无误后,点击"→"按钮下载程序到开发板上

拼装过程

  • Step1:如下图,将Microduino-Duo-S1/zh板用尼龙螺丝尼龙螺母固定在结构A2底板上面
  • Step3:将喇叭连接到Microduino-Amplifier/zh模块的接口上(没有左右顺序区别)
    • '如下图,将结构B4结构B2插在结构A2
    • 结构B6插在结构A2上,把喇叭固定
  • Step4:如下图,使用尼龙螺丝尼龙螺母将两个Microduino-Passive Infrared/zh传感器固定在两块结构B1
    • 结构B1固定在结构A2上(相邻的放置在UPIN27开口方向的旁边)
  • Step7:盖上顶盖(结构A1
    • 图中黄色框中的插槽要与底部的插槽放在对应位置,此位置是固定喇叭的木片使用的
    • 使用结构B5固定住每个插孔,顶部与底部共6*2总共12个固定口。

代码说明

  • 进出门判断
void judge() 
{ 
    //先过D4后过D6为进入 
    if((digitalRead(body_pin) == 1) && (digitalRead(body_pin2) == 0)) 
    { 
        FLAG_1 = 1; 
        delay(200); 
    } 
    if((digitalRead(body_pin) == 1) && (digitalRead(body_pin2) == 1) && (FLAG_1 == 1)) 
    { 
 
        colorWipe(color[random(1, 10)]); 
        audio_choose(1); 
        Serial.println("COMING IN"); 
        FLAG_1 = 0; 
        delay(1300);    //1300 
    } 
    //先过D6后过D4为出门 
    if((digitalRead(body_pin) == 0) && (digitalRead(body_pin2) == 1)) 
    { 
        FLAG_2 = 1; 
        delay(200);    //2000 
    } 
    if((digitalRead(body_pin) == 1) && (digitalRead(body_pin2) == 1) && (FLAG_2 == 1)) 
    { 
        colorWipe(color[random(1, 10)]); 
        audio_choose(2); 
        Serial.println("GOING OUT"); 
        FLAG_2 = 0; 
        delay(1300);   //2000 
    } 
}

疑难解答/FAQ

视频