基于Makey Makey与Scratch的简易猫驱赶器制作指南
1. 项目概述:当电路遇见喵星人
养猫的朋友大概都经历过这种甜蜜的烦恼:家里的主子对一切事物都充满好奇,尤其喜欢在你工作、休息或者摆弄心爱物品时,用爪子“探索”一番。书架上的摆件、桌上的水杯、键盘上的按键,都可能成为它们“魔爪”下的牺牲品。传统的驱赶方式,比如大声呵斥或者喷水,效果有限且容易破坏人宠感情。有没有一种方法,既能温和地提醒猫咪“此路不通”,又能让这个过程充满趣味和学习的价值呢?
这就是我们今天要动手制作的“简易猫驱赶器”项目的由来。它本质上是一个基于接触感应的互动式声音警报装置。核心原理非常简单:利用导电材料(如铝箔)制作一个隐蔽的“压力开关”,当猫咪的肉垫(本身是导电的)触碰到开关时,会形成一个闭合电路,触发我们预先编写好的程序,播放一段声音来吓退猫咪。整个项目的灵魂在于Makey Makey这块神奇的开发板,它让电脑把任何导电物体都识别为键盘或鼠标按键,极大地简化了交互式电子项目的开发流程。再搭配上图形化编程工具Scratch,即使你没有任何编程或电子基础,也能在几个小时内完成这个有趣又实用的小装置。
这个项目不仅是一个解决实际生活小问题的方案,更是一个绝佳的STEAM教育实践。你将亲手涉及电路搭建、结构设计、逻辑编程和问题解决的全过程。接下来,我将以一个资深创客和“铲屎官”的双重身份,带你从零开始,一步步拆解这个项目的设计思路、制作细节和那些只有亲手做过才会知道的“坑”。
2. 核心思路与物料清单解析
2.1 设计思路拆解:为什么选择Makey Makey+Scratch?
在构思一个电子互动项目时,我们通常有几个技术路径可选:使用Arduino等微控制器编写底层代码、使用树莓派等单板电脑运行完整程序,或者使用像Makey Makey这样的“即插即用”型交互工具。对于“猫驱赶器”这个应用场景,我的选择逻辑非常清晰:
- 目标明确且单一:核心功能就是“触碰-发声”。不需要复杂的传感器数据处理(如距离、图像识别),也不需要联网或存储数据。一个简单的开关触发机制足矣。
- 快速原型与低门槛:项目的初衷是快速验证想法并投入使用。Makey Makey最大的优势在于免驱动、免焊接,通过USB连接电脑后,任何导电物体触碰都能模拟键盘按键,这比从头学习Arduino的引脚定义和C语言编程要快得多。
- 声音资源的灵活性与趣味性:Scratch编程环境内置了丰富的声音编辑和播放功能,我们可以非常方便地录制、导入或合成各种声音。你可以选择一段刺耳的警报声,也可以录下自己“嘘!”的声音,甚至播放一段“老虎的吼叫”来达到“以猫制猫”的幽默效果。这种灵活性是固化在硬件里的蜂鸣器无法比拟的。
- 成本与安全性:一套Makey Makey官方套件价格适中,且包含了所有必要的连接线。整个电路工作在USB供电的5V低压下,对于人和宠物都绝对安全,即使猫咪咬到导线也无需担心。
因此,Makey Makey负责硬件交互接口,Scratch负责逻辑与音效响应的组合,是实现本项目最高效、最有趣且最具教育意义的方案。
2.2 物料清单与选型要点
根据原始描述,我们需要准备以下材料。这里我会对每样材料的作用和替代方案进行详细说明,确保你在家也能轻松备齐。
| 物料 | 数量 | 作用与选型要点 | 常见替代方案 |
|---|---|---|---|
| Makey Makey 套件 | 1套 | 核心交互控制器。将物理接触转化为键盘信号。务必确认包含USB线和鳄鱼夹导线。 | 几乎没有完美替代品。一些国产兼容板可能功能类似,但稳定性和易用性需自行测试。 |
| 电脑 | 1台 | 运行Scratch程序和为Makey Makey供电。Windows, Mac, Chromebook均可。 | 必须是带USB接口并能运行Scratch的电脑。树莓派理论上可以,但配置更复杂。 |
| 纸板/空麦片盒 | 2个 | 制作装置的外壳和内部隔离层。要求干燥、平整、有一定厚度以保持结构。 | 任何硬纸盒,如鞋盒、快递盒。厚度建议在1-2mm,太薄易变形,太厚不易裁剪。 |
| 铝箔纸 | 1卷 | 制作导电感应区域。利用其良好的导电性和可塑性。 | 烘焙用的锡纸、导电布胶带、甚至用铅笔画满的密集石墨区域(导电性较差)。 |
| 硬卡纸 | 若干 | 制作“间距垫片”,用于防止上下两层铝箔意外接触。 | 瓦楞纸板层、多层普通纸板粘合、塑料片、木片。核心要求是绝缘、有一定厚度和强度。 |
| 剪刀/美工刀 | 1把 | 裁剪纸板和铝箔。美工刀切割直线和硬纸板更精准。 | 裁纸刀。务必注意安全。 |
| 胶带 | 1卷 | 固定铝箔和结构。美纹纸胶带(masking tape)最佳,因其易撕且不留残胶。 | 透明胶带、布基胶带。双面胶可用于粘合垫片,但不适合大面积固定铝箔(可能影响导电)。 |
| Scratch 账户 | 1个 | 在线编写和存储程序。Scratch 3.0版本。 | 可使用Scratch离线编辑器,但在线版更便于管理和分享项目。 |
注意:关于导电材料。铝箔是最佳选择,因为它廉价、易得、导电性好且易于塑形。在实际操作中,确保铝箔片之间连接牢固、接触面积大是关键。我曾尝试用导电墨水笔绘制电路,虽然更美观,但电阻较大,导致Makey Makey有时无法稳定触发。
3. 装置结构与电路原理深度剖析
3.1 装置结构设计:一个精妙的“三明治”
这个驱赶器的核心结构是一个“压力开关”,其设计灵感来源于经典的按钮开关,但被我们做成了大面积、隐蔽的版本。理解这个结构,是成功制作的关键。
整个装置可以想象成一个三明治结构:
- 底层:一块平整的纸板,上面贴合一张完整的铝箔,作为电路的一个电极(例如“地线”)。
- 中间层:几个用硬卡纸粘合而成的“间距垫片”,像桌腿一样撑在底层铝箔的四周。它们的高度决定了触发开关所需的压力大小。
- 顶层:另一块大小相同的纸板,底面同样贴合一张铝箔,作为电路的另一个电极(例如“空格键”信号线)。
- 组合:将顶层盖在中间层的垫片上,这样,顶层铝箔和底层铝箔被垫片隔开,处于“断开”状态。当有外力(猫咪的爪子)按压顶层纸板时,顶层铝箔会向下弯曲,接触到底层铝箔,电路就此“闭合”。
为什么需要两个独立的盒子?原始描述中提到“hacemos lo mismo con ambas cajas”(我们对两个盒子做同样的事)。这里的“两个盒子”很可能指的是分别制作“顶层单元”和“底层单元”,然后将它们组合在一起。这种模块化设计的好处是易于调试和维修。你可以先分别测试两个部分的铝箔连接是否良好,再最终组装。
3.2 电路原理:从猫爪到电脑音效
让我们追踪一下信号是如何流动的:
- 物理接触:猫咪踩上装置顶层。
- 电路闭合:顶层铝箔(连接Makey Makey的“空格键”信号端)在压力下接触到底层铝箔(连接Makey Makey的“地线”端)。
- 信号模拟:Makey Makey检测到“空格键”信号端与“地线”端导通,立即向电脑发送一个“按下空格键”的键盘信号。
- 程序响应:Scratch程序中,我们预先设置了一个“当按下空格键”的事件触发器。这个触发器被激活,执行其下方的指令块——通常是“播放声音”。
- 声音输出:电脑的扬声器或耳机播放出我们设定的驱赶音效。
实操心得:理解“接地”的重要性。Makey Makey的工作原理要求形成一个“回路”。你(或者猫咪)在触碰“信号端”时,必须同时通过某种方式(比如另一只手握着“地线”)与“地线”端形成回路。在这个项目中,猫咪的爪子同时接触了顶层和底层铝箔,完美地完成了“接地”任务。如果装置放在绝缘的桌面上,而猫咪又是“悬浮”着轻轻一点,可能无法触发。确保装置放置在导电性稍好的表面(如木地板、潮湿的水泥地),或者将“地线”端额外引出一根导线接触大地(如接到金属窗框),可以大大提高触发可靠性。
4. 分步制作实操指南
4.1 步骤一:材料预处理与测量
不要急于裁剪和粘贴,精确的测量是后续步骤顺利的基础。
- 清理工作区:确保桌面干净、干燥。电子元件最怕灰尘和潮湿。
- 拆解与裁剪纸盒:将两个麦片盒完全拆开,压平。选择最平整、无折痕的部分,用美工刀和直尺,切割出两块大小完全相同的长方形纸板。尺寸建议在15cm x 20cm左右,这个面积足以让猫咪踩上,又不会太大而影响灵敏度。用剪刀修剪边缘,使其光滑。
- 裁剪铝箔:将铝箔展开,剪下比刚才裁好的纸板每边大约大出2-3厘米的两片。多出的部分是为了包裹到纸板背面进行固定,确保导电面接触牢固。
4.2 步骤二:制作导电感应面
这是保证电路导通质量的核心步骤。
- 铺设铝箔:将一块纸板正面朝下放置。把一片铝箔的哑光面朝下(哑光面导电性略好于亮光面,且与胶带粘合更牢),覆盖在纸板背面。
- 固定与包裹:用美纹纸胶带,将铝箔的四边牢牢地粘贴在纸板背面。操作时,先将铝箔一边拉紧贴平,用胶带固定中点,然后像包装礼物一样,将铝箔的边角折叠贴好,再用胶带整体封边。目标是让铝箔在纸板正面(即将来的感应面)尽可能平整、无褶皱,因为褶皱会形成凸起,可能导致意外接触或接触不良。
- 引出导电接头:取一个鳄鱼夹,夹在纸板背面富余出来的铝箔上。为了确保夹持牢固,可以将铝箔在此处折叠几次增加厚度,或者用一小块胶带辅助固定鳄鱼夹的线。这个鳄鱼夹将连接到Makey Makey。
- 重复操作:对另一块纸板进行完全相同的操作。至此,你得到了两个独立的、带引线的导电感应板。
注意事项:铝箔的脆弱性。铝箔很薄,反复弯折容易断裂,导致电路不通。在包裹和后续操作中,动作要轻柔。完成固定后,可以用手轻轻抚平正面的铝箔。如果担心耐用性,可以在铝箔上再平整地贴一层透明宽胶带,既能保护铝箔,又不影响其导电性(因为胶带是绝缘的,但很薄,压力下两层铝箔仍能穿透胶带接触)。
4.3 步骤三:制作与安装间距垫片
垫片的高度决定了装置的灵敏度,是需要精细调整的部分。
- 裁剪垫片材料:使用厚重的卡纸(如旧信封、包装盒)。将其剪成多个小长方形,尺寸约为2cm x 3cm。你需要至少4个,放置在感应板的四个角附近。
- 叠加厚度:将2-3层这样的卡纸用胶水或双面胶粘合在一起,形成一个有一定厚度和硬度的“小积木”。最终的厚度建议在3-5毫米。你可以用不同厚度的垫片进行实验:太薄(如1-2mm)容易因纸板自身弯曲或外界震动导致误触发;太厚(如1cm以上)则需要猫咪用力踩踏才能触发,可能反应迟钝。
- 定位与粘贴:将制作好的垫片,用双面胶或白乳胶,粘贴在其中一块感应板(我们将其定义为“底层板”)正面的四个角上。确保粘贴牢固,位置对称。
4.4 步骤四:组装与电路连接
现在,让我们把所有的部分组合起来,并连接到“大脑”Makey Makey。
- 初步组装:将带有垫片的底层板(感应面朝上)放好。然后,将另一块感应板(顶层板)的感应面朝下,像盖子一样对准垫片的位置盖上去。此时,上下两块铝箔应该被垫片完全隔开,没有接触。轻轻按压顶层板中心,它应该能向下移动并使铝箔接触,松开后又能回弹分离。这个手感很重要,它模拟了猫咪踩上去的效果。
- 连接Makey Makey:
- 将底层板引出的鳄鱼夹,连接到Makey Makey板子上标有“Earth”(地)的金属孔位上。
- 将顶层板引出的鳄鱼夹,连接到Makey Makey板子上标有“Space”(空格键)的金属孔位上。选择“空格键”是因为它是最常用的按键之一,且Scratch对其识别非常稳定。
- 连接电脑:用USB线将Makey Makey连接到电脑。此时,Makey Makey板上的指示灯应该亮起。
功能测试(在编程前):打开一个文本编辑器(如记事本)。用手同时触摸顶层板和底层板的铝箔(模拟猫咪的肉垫连通两者),你会发现文本编辑器里开始连续输入空格。这说明你的硬件开关和Makey Makey工作正常!如果没反应,请检查:USB连接是否松动?鳄鱼夹是否夹紧了铝箔?垫片是否太高导致无法接触?
5. Scratch编程与音效设计
硬件就绪,现在来赋予它“灵魂”。
5.1 创建基础触发程序
- 访问Scratch官网(https://scratch.mit.edu)并登录。创建一个新项目。
- 在角色区,我们可以删除默认的小猫角色,或者保留它作为一个视觉反馈。这里为了简洁,我们直接使用舞台背景编程。
- 在代码区,从“事件”积木中,拖出
当按下 [空格] 键积木。 - 从“声音”积木中,拖出
播放声音 [喵] 直到播放完毕积木,拼接在事件积木下方。 - 点击“声音”积木的下拉菜单,默认有一些声音。你可以点击左下角的“声音”标签页,然后通过“选择一个声音”按钮,从Scratch的声音库中挑选更合适的声音,比如“Alert”、“Scream”或者“Bird”。选中后,它就会出现在下拉菜单中。
至此,一个最基础的版本已经完成。当你用手触发装置时,电脑就会播放选中的声音。
5.2 程序优化与高级技巧
基础版能用,但我们可以做得更智能、更有效:
防止声音重叠(防连响): 猫咪可能会在装置上蹦跳,造成连续触发,导致声音重叠播放,非常刺耳。我们需要加入一个“锁”机制。
- 创建一个变量,命名为
正在播放。 - 将程序修改为:
当按下 [空格] 键 如果 <不 <(正在播放) = [1]>> 那么 将 [正在播放] 设为 [1] 播放声音 [Alert] 直到播放完毕 将 [正在播放] 设为 [0] 结束
这样,只有在前一个声音完全播放完毕后,才能触发下一个声音。
- 创建一个变量,命名为
随机音效,增加不可预测性: 固定的声音容易被猫咪习惯。我们可以建立一个音效库,每次随机播放。
- 在声音标签页,上传或选择3-5种不同的驱赶音效(如警报、嘘声、敲击声等)。
- 使用“运算”里的
在 (1) 到 (10) 间随机选一个数积木,和“控制”里的如果...那么...否则积木组合,根据随机数播放不同的声音。
加入视觉威慑(可选): 可以添加一个角色(比如一个突然变大的红色警告标志),在播放声音的同时,让这个角色显示1秒钟再隐藏,形成视听双重刺激。
记录“犯罪次数”: 创建一个变量
驱赶次数,在每次成功触发播放声音后,让这个变量增加1。这不仅能满足你的好奇心,还能帮你观察装置在什么时间段最活跃。
实操心得:音效选择心理学。经过我多次测试(和家里主子的多次“对抗”),发现高频、短促、突兀的声音(如金属敲击声、响指声)比低频、冗长的声音(如雷声)更有效。猫咪的听觉对高频敏感,这类声音能让它们迅速警觉并撤离。避免使用过于恐怖或巨大的声音,以免吓到猫咪或邻居。
6. 部署、调试与场景化应用
6.1 现场部署策略
制作完成,如何让它发挥最大功效?
- 位置选择:将装置放置在猫咪经常“作案”的区域,如书架边缘、工作台面、沙发扶手等。确保放置面平整,垫片受力均匀。
- 伪装与固定:为了不被猫咪提前识破,可以在装置顶层铺上一张与周围环境融合的桌布、薄垫子或者一张纸。注意伪装物不能太厚,以免影响灵敏度。可以用双面胶将装置底部轻微固定在桌面上,防止被猫咪推走。
- 电源与设备:确保电脑处于开机状态,且Scratch项目在运行(可以设置为全屏模式)。检查电脑扬声器音量是否合适——既要达到威慑效果,又不要成为噪音污染。
6.2 常见问题排查速查表
即使按照步骤操作,你也可能会遇到一些小问题。下表列出了常见故障和解决方法:
| 现象 | 可能原因 | 排查与解决方法 |
|---|---|---|
| 完全无反应 | 1. Makey Makey未正确连接。 2. Scratch程序未运行或事件积木错误。 3. 电路未导通。 | 1. 检查USB线,重新插拔。观察Makey Makey指示灯是否亮。 2. 点击Scratch中的绿旗运行程序。检查是否是“当按下空格键”。 3. 用一段导线直接短接Makey Makey的“Space”和“Earth”孔,看电脑是否有反应(输入空格)。如果有,则问题在外部电路。 |
| 偶尔触发或不触发 | 1. 铝箔接触不良(褶皱、断裂)。 2. 垫片高度不合适。 3. 接地不良。 | 1. 检查铝箔是否平整,鳄鱼夹连接处是否牢固。用万用表通断档测量铝箔通路。 2. 调整垫片厚度。尝试减少垫片层数或更换更软/更硬的顶层纸板。 3. 确保装置放在导电性更好的表面,或单独引出一根“地线”让装置与之连接。 |
| 持续触发(长鸣) | 上下层铝箔因变形、压力或导电物残留而持续接触。 | 1. 断开Makey Makey,检查装置静止时上下铝箔是否已接触。 2. 清除铝箔表面的灰尘或可能桥接的导电碎屑。 3. 增加垫片高度或硬度。 |
| Scratch音效播放卡顿或不播放 | 1. 电脑性能或浏览器问题。 2. 声音文件格式或大小问题。 | 1. 关闭其他占用资源的程序。尝试更换浏览器(Chrome对Scratch支持较好)。 2. 在Scratch中尝试使用内置音效库的声音,或确保上传的音频文件是MP3等兼容格式,且时长不宜过长(建议2秒以内)。 |
6.3 项目扩展与创意发散
这个基础项目可以作为一个起点,衍生出许多有趣的变体:
- 多区域感应:制作多个这样的感应板,连接到Makey Makey的不同按键(如方向键、字母键)。在Scratch中为不同按键编程不同的反应,例如,踩左边播放“向左走”的提示音,踩右边播放“向右走”的提示音,可以训练猫咪走特定路线。
- 联动物理装置:利用Makey Makey的鼠标点击模拟功能,触发电脑上的其他程序,进而控制智能插座。当猫咪触发开关时,不仅可以播放声音,还能让智能插座通电,点亮一盏小灯或者启动一个小风扇,增强驱赶效果。
- 植物浇水提醒器:将感应板埋在花盆土壤里,两层铝箔之间用吸水性海绵隔开。当土壤干燥时,海绵收缩,两层铝箔接触触发,播放“该浇水了”的提示音。这展示了如何将湿度传感转化为简单的开关信号。
- 简易防盗报警:将装置放在门窗内侧,用一张纸轻轻盖住。当门窗被打开,纸片移位,装置上下层接触,触发刺耳的警报声。
这个“简易猫驱赶器”项目,从一个具体的烦恼出发,串联起了物理结构设计、基础电路原理和图形化编程逻辑。它最宝贵的价值不在于最终那个能吓跑猫咪的小盒子,而在于这个亲手将想法一步步变为现实的过程。你遇到的问题——铝箔接触不良、垫片高度调试、程序逻辑优化——都是真实的工程挑战。解决它们所获得的经验,远比阅读十篇教程更有价值。下次当你的猫咪又对某个禁区产生兴趣时,或许你们可以换一种更有科技感的互动方式了。
