编辑: 飞鸟 2018-09-28
许多 3C 产品越做越小价格也越来越低廉,像录音笔和钥匙圈形式的微型摄 影机, 如果你想要进行小小的改造,从Arduino 控制这些装置,例如,侦测到 有人靠近时启动微型摄影机录影, 只要修改这些装置的开关回路即可 .

这些小玩意的控制钮的结构大致相同,如果将它们拆解 (注 :拆解之后, 可能 会失去保固) ,你将看到类似下图的开关结构,当按钮被按下时,按键底部的 导电橡胶会让印刷电路板上的接点导通 : 我们并不需要用马达或其他机械装置来按下或触发开关.印刷电路板上的铜 箔接点, 相当於电路上的一个断路,因此 ,若在它两边各焊接一条导线出来, 再连接开关 , 即可取代原有的按键: 本交将采用称为 「光电耦合」 的元件来取代控制器原有的按键. 用Arduino 制作自动感应微形摄影机 认识光电耦合元件 光电耦合 (optical coupler) 元件, 又称为光隔离元件,外型、 电路符号与结构如 下:它也算是一种光电开关, 当左边的红外线二极体导通、发光时, 左边的光电晶 体也将导通.由於元件两端的信号,全透过光线传递, 没有直接相连,因此元 件两端的电路相当於被隔离开来. 以底下的应用为例,光电晶体一端接微型摄影机的按钮接点 , 不管这小装置采 用1.5V 或9V 电源 ,都跟 Arduino 无关 : 常见的光耦合元件型号有 NEC 的PS

2501、 夏普的 PC817 以及台湾亿光的 EL817 ,这三种型号的元件可以互换,外型与电路符号也相同. 以夏普的 PC817 为例,规格书标示光电晶体的集极输入电流 (IC) ,最大可承受 50mA , 对於一般电路里的控制按钮绝对够用 .不过,光电晶体 C 和E脚的电 流往单方向流动,光是用眼睛看, 可能无法判定光耦合的两个接脚,要如何焊 接在 3C 产品按键的电路板 .这时可以用万用电表测量, 以Xbox

360 控制器 的按钮接点为例, 其中一边是接地: 像这种情况,光电晶体的 E 脚要焊接在接点的接地边, 另一边接 C 脚.如果 无法确定要 C, E 焊接的方向 , 就先随便接,若测试后发现不能导通,再将焊接 脚位对调即可 : 除了光耦合元件,也可用继电器(relay)控制开关,不过,继电器属於机械式 开关,反应速度比光耦合慢(但仍旧比人类快很多),而且继电器消耗比较多 的电量也比较容易故障,主要用於大电压/大电流的电路. 动手试试看 底下是本文的示硬体 , 采用一个人体移动侦测模组 (简称 PIR) , 加上两个光耦 合元件 (注:也有一个 IC 里面包含两组或

4 组光耦的型式) , 用来控制微型摄影 机的 「 开始录影」 和 「停止录影」 按键 , 读者可自行变换 , 衔接其他 3C 设备的控 制钮. 光耦合元件的红外线发射 LED 的阳极脚,要连接一个 220Ω (红红棕) 的限流 电阻 ,保护红外线 LED. 例程式码如下 , 当PIR 感测器侦测到人体移动时, 它将点亮 Arduino 第13 脚的 LED, 并启动 「录影」 ;

过了

10 分钟之后停止录影. 首先宣告程式变数 , 请注意 ,储存时间毫秒值的变数类型 ,最好使用 long(长整数) , 以免变数容 量不足而导致程式执行错误 (原始档名 :diy_appC.ino) : const byte pirPin = 12;

// 红外线感测器讯号脚位 const byte ledPin = 13;

// LED 脚位 const byte recPin = 9;

// 录影钮 const byte stopPin = 8;

// 停止钮 long oldTime;

// 暂存当前时间 /*

10 分钟的毫秒数:1000 *

60 *

10 底下这一行可改写成: long delayTime = 1000L * 60L * 10L;

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题