查看“自动感应门1”的源代码
←
自动感应门1
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{| style="width: 1000px;" |- | ==概述== [[File:anywhere_line_door.jpg|600px|center]] 做一个自动感应门,用两个红外反射传感器检测有人靠近,舵机控制开门。 <br> 适合套件:mCookie302 ==模块清单== ===模块=== {|class="wikitable" |- |模块||数量||功能 |- |[[mCookie-Core/zh|mCookie-Core]]||1||核心板 |- |[[mCookie-Battery|电池盒]]||1||程序下载和供电模块 |- |[[mCookie-Hub/zh|mCookie-Hub]]||1||传感器转接板 |- |[[舵机]]||1||舵机 |- |[[Sensor-Servo Connector/zh|舵机转接板]]||1||舵机转接板 |- |[[Sensor-Line Finder/zh|灰度传感器]]||2||检测物体 |} ===其他设备=== *USB数据线*1 *传感器连接线*3 *传感器外壳 *乐高或其它固定结构 [[File:anywhere_don't touch me-module.jpg|600px|center]] ==模块搭建== ===搭建=== [[File:anywhere_don't touch me-step.jpg|600px|center]] *将模块和传感器组装起来: **将红色的核心模块,电池底座与绿色的扩展模块吸在一起; **将舵机转接板连接在Hub的6/7管脚; **将舵机连接在舵机转接板的1管脚(下面三个插针); **将红外反射传感器连接在Hub的A0/A1、A2/A3管脚。 **将USB连接线一端插入电池底座,另一端连接电脑; ==编程== ===使用的程序块=== *[[“如果-执行”程序块]] *[[“如果-否则”程序块]] *[[“否则如果”程序块]] *[[“变量声明”、“变量赋值”程序块]] *[[“红外反射传感器”程序块]] *[[“计算”程序块]] *[[“比较”程序块]] *[[“舵机”程序块]] ===编程思路=== 自动门内外两侧分别检测距离,A或B的距离小于790(任何一侧有人接近),自动开门,同时延时2秒等待行人通过。A和B的距离均大于800(门两侧都没人)则关门。 [[File:mixly-ctrl-line_door.jpg|600px|center]] ===开始编程=== '''1、读取两个红外反射传感器距离并存储''' <br> 变量A用来存储一侧红外反射传感器的值,变量B用来存储另一侧红外反射传感器的值,将A2管脚红外反射传感器的值存入变量A,将A0管脚红外反射传感器的值存入变量B。 <br> [[File:mixly-ctrl-line_door-code.jpg|600px|center]] '''2、判断任意一侧有人接近则开门''' <br> A或B的距离小于790(任何一侧有人接近)。 舵机转到10度,速度50度/秒(慢慢开门)。 延时2秒等待行人通过。 <br> [[File:mixly-ctrl-line_door-code1.jpg|600px|center]] '''3、判断两侧都没人则关门''' A和B的距离均大于800(门两侧都没人)。 舵机转到170度,速度50度/秒(慢慢关门)。 [[File:mixly-ctrl-line_door-code2.jpg|600px|center]] <br> <br> '''测试结果''' <br> 当没有人靠近门口时,舵机处于关门状态;有人靠近门口时,舵机转为开门状态。 <br> 将两个红外反射传感器分别安装在门的两侧,用乐高搭建自动门外型。铁丝固定在舵机摇臂上,摇臂转到170度时关门,摇臂转动到10度时开门。 [[File:anywhere_line_door.jpg|600px|center]] <br> <br> '''Q:有个问题?如果人恰好站在门框里,传感器是探测不到的,这时关门会夹到人,能不能加个关门提醒呢?''' <br> '''A:可以呀,用蜂鸣器或者灯都能提醒。''' <br> <br> '''声明及赋值,有人接近,舵机控制开门''' <br> 彩灯准备。 door变量用来记录门的开闭状态。 door赋值为1(门开了)。 [[File:mixly-ctrl-don't touch me-code3.jpg|600px|center]] '''门两侧没人,关门并点亮关门指示灯''' <br> 如果door等于1(门是开着的)则执行内部程序。 door赋值为0(门关了)。 红灯闪烁3次(关门前提醒)。 [[File:mixly-ctrl-don't touch me-code4.jpg|600px|center]] ==技术规范== *红外反射详细参考[[Sensor-Line Finder/zh]] *舵机详细参考[[舵机]] ==相关案例== *'''[[能量护盾]]''' *'''[[自动分拣机]]''' *'''[[跷跷板]]''' *'''[[招财猫]]''' *'''[[点球大战]]''' *'''[[别摸我!摇摆机器人]]''' ==Q&A== |}
返回至
自动感应门1
。
导航菜单
个人工具
创建账户
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
Welcome
首页
创客大赛
大赛详情
3D打印
安装月球车
图形化编程
操控月球车
升级月球车
编程工具下载
软件下载
Arduino
Processing
Mixly
Scratch
模块套件
Microduino 102
mCookie 102
mCookie 202
mCookie 302
IBC
其他
应用套件
四轴飞行器
平衡车
小车CUBE
音乐播放器
刷卡音乐播放器
wifi气象站
彩虹音乐触摸灯
分贝检测仪
迎门汇报
LED点阵时钟
LED点阵屏幕
硬件
mCookie
Sensor
Microduino
MicroWrt
MicroNux
MicroRobot-Core
MicroRobot-CoreESP
ideaBoard
ideaBox
MicroMV
MicroAI
帮助
常见问题
帮助
工具
链入页面
相关更改
特殊页面
页面信息