“火警疏散演习”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
其他设备
模块清单
 
(未显示3个用户的6个中间版本)
第31行: 第31行:
 
*传感器连接线*1
 
*传感器连接线*1
 
*传感器外壳*1
 
*传感器外壳*1
*乐高或其它固定结构
+
*积木或其它固定结构
 
[[File:anywhere_light-module.jpg|600px|center]]
 
[[File:anywhere_light-module.jpg|600px|center]]
 
<br>
 
<br>
第40行: 第40行:
 
**将红色的核心模块,USB上传模块与绿色的扩展模块吸在一起;
 
**将红色的核心模块,USB上传模块与绿色的扩展模块吸在一起;
 
**将红色LED灯连接在扩展模块的6/7管脚;
 
**将红色LED灯连接在扩展模块的6/7管脚;
**将USB连接线一端插入电池底座,另一端连接电脑;
+
**将USB连接线一端插入USB上传模块,另一端连接电脑;
 
<br>
 
<br>
  
 
==编程==
 
==编程==
===认识新程序块===
+
===使用到的程序块===
'''模拟输出”程序块'''
+
*[[“模拟输出”程序块]]
<br>
+
*[[“延时”程序块]]
"模拟输出"程序块位于“美科科技>核心模块”选项卡中。
+
 
[[File:mixly-analogoutput-where.jpg|600px|center]]
 
'''"模拟输出"程序块说明”'''
 
<br>
 
"模拟输出"程序块将能量等级分成256级:最低为0,灯熄灭;最高为255,灯最亮。0~255中的其它数值会让灯呈现不同亮度。
 
[[File:mixly-analogoutput-explain.jpg|600px|center]]
 
'''Hub的数字输出管脚'''
 
<br>
 
"模拟输出"管脚号是传感器与扩展模块连接的接口号,扩展模块有2个模拟信号接口:6/7,10/11。
 
<br>
 
[[File:hub-analogoutput-explain.jpg|600px|center]]
 
<br>
 
'''"数字输出"和“模拟输出”程序块的区别'''
 
*'''数字输出'''
 
**就好像电灯的开关,只有开和关两种状态,关的时候灯不亮,开的时候灯最亮。
 
*模拟输出
 
**就好像电灯的调光旋钮,可以使灯的亮度在完全不亮和最亮之间自由变化,在程序中是从0~255级过渡,0为不亮,255为最亮。
 
[[File:hub-analogoutput-digital.jpg|600px|center]]
 
'''“延时”程序块'''
 
<br>
 
“延时”程序块位于“控制”选项卡中。
 
[[File:mixly-delay-where.jpg|600px|center]]
 
“延时”程序块说明
 
“延时”程序块可以让程序原地踏步一定时间后在执行下一步程序。在执行这个程序块的时候不能做其他事情,直到时间结束为止。
 
[[File:mixly-delay-explain.jpg|600px|center]]
 
 
===编程思路===
 
===编程思路===
如果想实现单色LED灯闪烁的效果,就要用“模拟输出”程序块控制单色LED灯的亮度,用“延时”程序块控制间隔时间。通过不同的亮度和间隔时间模拟灯光闪。
+
如果想实现单色LED灯闪烁的效果,就要用“模拟输出”程序块控制单色LED灯的亮度,用“延时”程序块控制间隔时间。通过不同的亮度和间隔时间模拟灯光闪烁。
 
[[File:mixly-ctrl-ledblink.jpg|600px|center]]
 
[[File:mixly-ctrl-ledblink.jpg|600px|center]]
 +
 
===开始编程===
 
===开始编程===
 
'''1.LED灯以较暗的亮度点亮1秒'''
 
'''1.LED灯以较暗的亮度点亮1秒'''
第80行: 第57行:
 
将“模拟输出”的管脚号改为6,赋值为120;延时时间设为1000毫秒,即1秒。
 
将“模拟输出”的管脚号改为6,赋值为120;延时时间设为1000毫秒,即1秒。
 
[[File:mixly-ctrl-ledblink-code1.jpg|600px|center]]
 
[[File:mixly-ctrl-ledblink-code1.jpg|600px|center]]
'''2.LED灯以较亮饿的亮度点亮1秒'''
+
'''2.LED灯以较亮的亮度点亮1秒'''
 
<br>
 
<br>
 
将“模拟输出”的管脚号改为6,赋值为240;延时时间设为1000毫秒,即1秒。
 
将“模拟输出”的管脚号改为6,赋值为240;延时时间设为1000毫秒,即1秒。
第102行: 第79行:
 
==Q&A==
 
==Q&A==
 
*Hub的模拟输出管脚只有6/7,10/11口吗?
 
*Hub的模拟输出管脚只有6/7,10/11口吗?
**是的,使用输出模拟信号(0-255)的设备必须连接到Hub的6/7,10/11接口之一,因为模拟信号其实是后台程序用数字信号模拟出来的,所以也只能用双数接口,在Mixly中模拟输出管脚只能选择6、10。
+
**如果使用Core作为核心,那就只能用6,7,使用输出模拟信号(0-255)的设备必须连接到Hub的6/7,10/11接口之一,因为模拟信号其实是后台程序用数字信号模拟出来的,所以也只能用双数接口,在Mixly中模拟输出管脚只能选择6、10。
 +
<br>
 +
'''核心PWM支持端口'''
 +
* '''Core'''  PWM支持,共6个:
 +
** 在模块上标示为 分别为D3,D5,D6,D9,D10,D11
 +
** 详情请参阅'''[http://www.arduino.cc/en/Reference/AnalogWrite analogWrite()]'''函数。
 +
* Core+ PWM支持,共8个:
 +
** 在模块上标示为 分别为D7,D8,D9,D10,D12,D13,D22,D23
 +
** 详情请参阅'''[http://www.arduino.cc/en/Reference/AnalogWrite analogWrite()]'''函数。
  
 
|}
 
|}

2017年4月5日 (三) 03:11的最新版本


概述

Anywhere light blink.jpg

让我们一起制作一个火警指示灯,当火情发生时,灯光会不断闪烁警示人们快速离开。

适合套件:mCookie102,mCookie202,mCookie302,IBC


模块清单

模块

模块 数量 功能
mCookie-Core 1 核心板
mCookie-USBTTL 1 程序下载模块
mCookie-Hub 1 传感器转接板
LED 1 单色灯

其他设备

  • USB数据线*1
  • 传感器连接线*1
  • 传感器外壳*1
  • 积木或其它固定结构
Anywhere light-module.jpg


模块搭建

Anywhere lightblink-module—step.jpg
  • 将模块和传感器组装起来:
    • 将红色的核心模块,USB上传模块与绿色的扩展模块吸在一起;
    • 将红色LED灯连接在扩展模块的6/7管脚;
    • 将USB连接线一端插入USB上传模块,另一端连接电脑;


编程

使用到的程序块

编程思路

如果想实现单色LED灯闪烁的效果,就要用“模拟输出”程序块控制单色LED灯的亮度,用“延时”程序块控制间隔时间。通过不同的亮度和间隔时间模拟灯光闪烁。

Mixly-ctrl-ledblink.jpg

开始编程

1.LED灯以较暗的亮度点亮1秒
将“模拟输出”的管脚号改为6,赋值为120;延时时间设为1000毫秒,即1秒。

Mixly-ctrl-ledblink-code1.jpg

2.LED灯以较亮的亮度点亮1秒
将“模拟输出”的管脚号改为6,赋值为240;延时时间设为1000毫秒,即1秒。

Mixly-ctrl-ledblink-code2.jpg

3.两步骤程序块连接在一起,选择好核心和端口下载程序。

测试结果:
上传成功后,观察到LED灯忽暗忽亮的闪烁起来,我们的火警指示灯就大功告成啦!
用乐高搭建一个紧急出口,将我们的火警指示灯安装好,向小伙伴们介绍安全逃生的知识。

Anywhere light blink.jpg

我们还能怎么玩

Q:可不可以设置三种亮度的火警灯,同时让灯光闪烁得更快一些呢?这样更容易引起人的注意。
A:这很简单,只需要在0-255之间设置3个亮度,同时每个亮度持续时间更短一些就可以了。

Mixly-ctrl-ledblink-code3.jpg

Q&A

  • Hub的模拟输出管脚只有6/7,10/11口吗?
    • 如果使用Core作为核心,那就只能用6,7,使用输出模拟信号(0-255)的设备必须连接到Hub的6/7,10/11接口之一,因为模拟信号其实是后台程序用数字信号模拟出来的,所以也只能用双数接口,在Mixly中模拟输出管脚只能选择6、10。


核心PWM支持端口

  • Core PWM支持,共6个:
    • 在模块上标示为 分别为D3,D5,D6,D9,D10,D11
    • 详情请参阅analogWrite()函数。
  • Core+ PWM支持,共8个:
    • 在模块上标示为 分别为D7,D8,D9,D10,D12,D13,D22,D23
    • 详情请参阅analogWrite()函数。