3646| 3
|
[项目] 光与锁的故事 | 光码保险箱 |
用数字、符号作为密码是常见的方式,容易记住,也容易被破解,这只是密码的一种。人们还可以用声音(比如“芝麻开门”)、图像(人脸、指纹等信息)、电磁波等作为密码。在创客制作中,有诸多的传感器都可以用来制作保险箱项目。本项目借助光线传感器来设置以光线强度为密码的保险箱。 本项目计划使用四个光线传感器(因扩展板接口关系,实际使用了三个,另一个作为摆设),基于模拟传感器输入值的范围为0~1023(有些软件中为0~4095),理论上密码可以达到1024的四次方个,但是真用精准的模拟值来设计的话,估计保险箱锁上后,设置密码的人也无法打开了,因为光线强度要精确地还原,几乎是无法做到的。所以,程序设计上以有光、无光两种状态来区分,实际上每个传感器就只有0和1两种状态,四个组合起来也就16个密码。当然,即使密码数如此少,但是如果不知道设计原理和输入密码的方法外,估计也没人能成功打开。 这个项目的密码设置方式其实还可以有更多的方式。 ●功能描述● 通电开机后,保险箱门处于开启状态;用户通过旋转四个特制密码盘(对着孔或者不对着孔),设定好密码;然后按下按钮,保险箱门自动关闭;用户需要在10秒内,通过旋转密码盘将密码隐藏(否则门马上又会自动打开了)。当需要打开保险箱的时候,必须将四个密码盘恢复到原来的位置,门则会自动打开。 实际测试时,必须保证设置密码时和尝试打开时光照环境相近;不要在光线较弱的环境下测试。 ● 视频演示● ● 制作过程● 01 材料准备 掌控板 1块 扩展板 1块 模拟光线传感器 4个 数字按钮模块 1个 180°舵机 1个 02 硬件搭建 模拟光线传感器 1<——>P0 模拟光线传感器2 <——>P1 模拟光线传感器3 <——>P2 模拟光线传感器4 <——>P7 数字按钮模块 <——>P13 舵机 <——>P14 (因扩展板缺少模拟输入引脚,第四个模拟光线传感器没有使用) 03 设计制作外型 (1)设计图纸 (2)利用激光切割机切割椴木板 还需要准备2根直径5mm的小木棒 和1根直径2mm的小木棒 04 编写程序 (1)打开mind+软件,掌控板连接电脑。 (2)添加扩展 主控板:掌控板 执行器:舵机模块 (3)编写程序 因光线强度不可能完全一致,所以将获取的光线模拟值与存入密码时的值进行对比,相差10以内就算正确。 (4)上传程序 05 组装 (1)将小木棒裁成小段,插进密码盘中 (2)将光线传感器的感应元件用小木圈围上 (以免漏光) (3)将主控板、模拟光线传感器、数字按钮模块固定在前面的木板的上 (4)将前面木板的透光口上也围上一个小木圈 (5)装上密码盘 (6)组装好五面木板 (7)用小木棒做门轴,与门粘贴好 用两个木圈作为开合轴承 (8)将舵机置于90度,装上摇臂; 将一根小木棒固定在舵臂上并插入门的拉手孔中 (门的开合,是平行四边形易变形的特点的应用) (9)装上上面的木板 成品图 06 测试调整 开机运行,测试各个功能是否正常; 对程序进行修改优化。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed