用Micro:bit做床头灯
这是一个非常简单的项目,给孩子们介绍感应和控制,使用光敏电阻LDR作为光线传感器和床头灯的LED。
这也介绍了模拟输入的概念。数字输入为ON或OFF。只有0和1两种可能的条件。仿真输入是一系列可能值中的一个,在micro:bit的情况上,就是从0到这个这个可能之中的一个。
一旦理解了这些原则,就可以重新设想这些任务以适应数百种不同的情况。床头灯可以变成路灯,或者飞机内部的应急照明灯等等。
任务:
使小朋友的床头灯在天黑时自动亮起,在亮起时关闭。
算法:
永远重复
如果光线传感器高亮关闭
如果光线传感器低亮打开
模型:
光敏电阻(LDR)可以用作光敏传感器,很便宜的组件,几块钱。

LDR不像简单的开关那样工作。随着光级降低,LDR的电阻增加,并且流过Pin2的电压降低。
程序脚本必须读取引脚2和GND之间的模拟值。硬件操作上在micro:bit上的3伏和2脚之间连接一个固定电阻R2, R2的阻值应与LDR的阻值相近。
将带有限流电阻R1的LED连接在引脚1和GND之间的用于发光。
如果你不了解所有这些,不要担心,只需按照下面的图片连接。



Blocky程序如下

MicroPython程序脚本如下:
from microbit import *
while True:
sleep(100)
if pin2.read_analogue() > 950:
pin1.write_digital(1)
else:
pin1.write_digital(0)
通过实验发现,大于950的模拟输入是打开床头灯的合适设置。
这种实验是让孩子们了解仿真控制系统的绝佳方式。最佳值取决于所使用的LDR的电阻和打开和关闭LED所需的光照水平。
原文参考
https://mp.weixin.qq.com/s?__biz=MzU0MTg0ODIzNA==&mid=2247483972&idx=1&sn=31928bbfcc33a22165aaf35452ad2656&chksm=fb22e581cc556c972676e52082343fa5e7025a97c8938c64586a9b3d98495c38a96fb8c628e9#rd

用Micro:bit做床头灯的更多相关文章
- 用Micro:bit做浇灌系统
利用Micro:bit结合[土壤湿度感测棒]做一个简单的浇灌系统 一.测试土壤湿度感测棒 •材料:土壤湿度感测棒 (万能的淘宝上可以找到) •连接:将[土壤湿度感测棒]的一端接P0.另一端接GND 简 ...
- 用Micro:bit做交通信号灯
交通信号灯项目在控制技术中,有点像"Hello world!" 是一个入门级的范例. 对于孩子来说,交通灯跟日常生活息息相关,他们都熟悉,充分知道需要做什么这是一个让孩子开始的好项 ...
- 用Micro:bit做剪刀、石头、布游戏
剪刀.石头.布游戏大家都玩过,今天我们用Micro:bit建一个剪刀.石头.布游戏! 第一步,起始 当你摇动它时,我们希望the micro:bit选择剪刀.石头.布.尝试创建一个on shake b ...
- 用树莓派Raspberry Pi和Micro:bit做一个自拍器
在这个项目中,我们将使用Python来构建一个由Micro:bit触发树莓派Raspberry Pi和相机模块的自拍器.这是开始使用硬件和简单文本编程的好方法. 我们将学习: 如何设置Raspberr ...
- Micro:bit 硬件架构介绍
Micro:bit做为当红的少儿编程工具,这两年在编程教育领域越来越火.今天就从硬件架构开始,分享Micro:bit的相关主题. Microbit 硬件设计是根据ARM mbed技术所开发的应用IC及 ...
- 玩转BLE(3)_使用微信蓝牙精简协议伪造记步数据
1. 前言 在物联网时代,有一个问题肯定会让人头疼(现在已经初露端倪了): 物联网中的IOT设备有两个主要特点: 1)简单小巧(不具备复杂的人机交互接口,需要手机等终端设备辅助完成配置.控制等功能). ...
- 「转」图像算法---白平衡AWB
本文大体讲解了白平衡的算法流程,适用于想了解和学习白平衡原理的筒子们. 一般情况下要实现AWB算法需要专业的图像和算法基础,本文力图通过多图的方式,深入浅出,降低初学者理解上的门槛,让大家都理解到白平 ...
- 摄像头模组 AWB(Auto White Balance)
本文转载yapingmcu的<图像算法---白平衡AWB(讲的很好)>.原文http://blog.csdn.net/yapingmcu/article/details/50637797 ...
- 【VS开发】【图像处理】自动白平衡(AWB)算法---色温曲线
原文地址:http://blog.csdn.net/wzwxiaozheng/article/details/38434391 白平衡算法---色温曲线 本文大体讲解了白平衡的算法流程,适用于想了解和 ...
随机推荐
- Ubuntu 编译出现 ISO C++ 2011 不支持的解决办法
问题 在编译时出现如下error: error:This file requires compiler and library support for the ISO C++ 2011 standar ...
- CCF认证201803-1 跳一跳
import java.util.Scanner; public class Jump { public static void main(String[] args) { Scanner sc = ...
- Backward compatibility
向后兼容
- Oracle11gR2(ASM,UDEV)的RAC搭建安装
基本信息: 1) 安装包: 操作系统:rhel-server-6.7-x86_64-dvd.iso rac安装包: Oracle11gR2:linux.x64_11gR2_database_1of2. ...
- java spring-WebSocket json参数传递与接收
Websocket原理(摘抄) 一.websocket与http WebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环 ...
- Python 基础 高阶函数
python 把函数作为参数 如果传入abs 作为参数 def add(x,y,y): return f(x) + f(y) add(-5,9,abs) 根据函数的定义,函数执行的代码实际上是. ab ...
- C++程序设计入门(上) 函数学习
局部变量和全局变量的访问: 全局变量的作用域时全局,局部变量的作用域是局部,若全局和局部的变量名相同的话,局部变量的改变不会引起全局变量的改变#include<iostream> int ...
- java业务逻辑,利用hibernate获取所连接的数据库信息
1.本人程序架构是springMVC+hibernate,这次的需求是要针对不同的数据库,做不同的处理. 2.获取所连接的数据库是什么,oracle? mysql? sql server? 基础 ...
- encodeURIComponent编码反斜杠 \ (正则匹配)
记录一个小bug... 前言废话: 1. 功能需求:修改输入框的内容,获取字符串传给后端保存. 2. bug历程:刚开始直接获取value值传过去.后来测试发现%&这些特殊字符无法传递后,在前 ...
- c# 在WebBrowser中用SendMessage模拟鼠标点击
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...