




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于单片机设计的门禁系统 邮件群发 摘要:设计要求:基于单片机,具有通话、振铃、摘机、通话、开锁功能,还要有键盘和显示电路设计思路:1、系统用到AD、UART、PWM、SPI,考虑成品的体积,采用arduino nano 2、语音采样使用驻极体麦克风,经200倍前置放大,再进行8位AD采样,采样率8kHz,可达到 音质,满足需求 3、门禁系统通信的特点是多对一,距离10100m,通信速率要满足语音通信、控制信号传输,因此采用485通信,通信速率512Kbps 4、语音播放使用8位PWM,功放芯片采用常见的LM386 5、显示屏采用Nokia5110,SPI通信 6、键盘采用10位ADC键盘,1
2、6个按键 7、开锁电路使用继电器实现 硬件设计 1、Arduino Nano 主控直接采用arduino nano,由于485通信和下载程序共用0、1脚,因此要通过拨码开关切换0、1脚功能 2、电源电路 整个系统使用外部12v电源供电,用于驱动继电器和LM386,12v电源通过LM2940得到5v电源,Nokia5110显示屏需要3.3v供电,直接采用nano上的3.3v电源 3、ADC键盘电路 由于arduino接口较少,直接采用ADC键盘,一次挂载20个按键没有问题,每个分压电阻使用1k,线性度非常不错。 4、485通信电路 使用了两片MAX485组成了全双工通信,实际测试,10m网线,2
3、Mbps,完全不丢包,另外测试过2m,2Mbps的串口通信,也是完全不丢包 5、麦克风采样电路 语音采样,使用普通驻极体麦克风,经过LM358的200倍放大后,送入ADC 6、功放电路 功放直接采用常见的LM386典型电路,PWM信号经过积分电路,再送入LM386,为了提高音量,使用12v供电,实测效果不错,5v供电时,噪音非常大,稍微一大声就失真 7、开锁电路 开锁功能可以通过电磁锁实现,这里只用了继电器并留出了接线口,继电器电流也不小,保险起见使用了一个9014扩流,并反向并联一个二极管吸收反向电流 画好原理图之后就是排版画pcb了: 检查无误后开始做板子,既然要语音通信,那肯定是至少要做
4、两个啦: 然后再焊接调试: 虽然做板前仔细检查了很多遍,但还是出了几个bug,还好是小问题,两根飞线解决 程序设计 整个系统包括了以下几个程序文件: EG_V0_3: 主程序,包括了功能定义、ADC初始化、定时器初始化、键盘输入处理、显示界面、数据通信处理、中断采样 ADC_KEY:按键识别,主要是建立10位ADC值和每个按键的映射关系,参考了马潮老师的状态机程序 CRC8:CRC校验程序,为了保证通信的正确性,必须使用数据校验,crc8非常有效,不过实际测试,没有crc校验的情况下好像数据几乎没有传输错误? Nokia5110:显示屏驱动程序,直接使用论坛里的代码,具体哪个帖子忘了。 rs4
5、85:包括485初始化、定时器1初始化、485通信协议、通信处理等 ringtone:实现呼叫、接听、振铃功能 程序设计思路 本系统的核心就是语言采样播放+485通信协议,由于处理的数据量比较大,所以很多地方没有用到arduino提供的方法,比如analogread、analogwrite、serial等 语音采样与播放: 人说话的频率为300HZ3KHZ,根据采样定理,采样频率应该大于6KHZ,在这里取7.8KHZ(atmega直接分频可得到),为了减少开发难度,没有使用音频压缩。Timer2开启溢出中断,中断频率7.8KHZ,语音采样、键盘值采样、PWM更新都放在这里,同时使用Timer2
6、的OCR2B作为PWM输出。ADC工作在自动连续转换模式下,ADC工作频率为76.9KHZ,测试过更高的频率,200KHZ以上的采样速度,误差非常大,容易导致按键误判和语音噪音。 485通信: 采用了两片485芯片,一片工作在接收,一片工作在发送,语音采样的数据量为8bit*8KHZ=64Kbps,由于需要同时传输地址、语音数据、控制命令、校验码,一次传输数据量为36字节,因此波特率至少为192Kbps,保险起见,本系统采用了512KHZ。 由于需要传输多种数据,所以必须要使用一种通信协议,基于485的通信协议为: 1、主机以广播的方式向所有从机发送一个地址数据,寻找此地址的从机,该从机收到后
7、发送应答命令,之后建立通信,从机与从机不能进行通信 2、从机不能主动发起对话,只能等待主机发送数据 3、一个帧结构如下: (1)FUNCTION_VOICE,语音数据,CRC校验,3个字节 (2)FUNCTION_COMMAND,COMMAND_XXX,CRC校验,36个字节 其中COMMAND_XXX包括开门、通话、地址校验等命令,具体请看代码 每发完一帧必须空闲一段时间,作为一个帧的结束标志,因此采用Timer1作为定时器,每接收到一个字符就重新计时,如果计时超过设定的空闲时间,则认为当前已接收到一帧,立即对该帧进行处理。需要注意的是,单片机需要一定的时间进行协议的解析和数据处理,如果空闲
8、时间太短,则当期帧数据还没处理完就来了下一帧数据,肯定会出现混乱,如果空闲时间太长,又会降低通信速率,因此需要取一个合适的空闲值,经过测试,协议解析的时间为72us,因此数据接收+空闲时间应该大于72us,才能保证通信正常。 ADC键盘: 10位ad对16个按键进行采样,因此电压与每个按键具有线性比例关系,1024/(16+1)=60.2,实际值是59,再通过映射关系将0-1024值转换成按键值,公式: key=key_table(16-(val)/59)/4(16-(val)/59)%4; 16个按键中,y代表yes,n代表n a-d代表四个功能:通话,开门,设定地址,预留 结果 经过不断的
9、测试与完善,在12v供电情况下,语音通信清晰,声音洪亮,基本无噪音,可改变从机地址,范围为001999,其他功能也基本实现了,如开门、交互界面等等 门禁系统实物图.jpg 858.7 KB 成品图片 下载次数:13 门禁系统(图1).jpg 367.1 KB 文章插图 下载次数:15 门禁系统(图2).jpg 505.5 KB 文章插图 下载次数:4 门禁系统(图3).jpg 337.8 KB 文章插图 下载次数:1 门禁系统(图4).jpg 523.4 KB 文章插图 下载次数:1 门禁系统(图5).jpg 496.8 KB 文章插图 下载次数:1 门禁系统PCB图.jpg 868.6 KB 文章插图 下载次数:6 门禁系统硬件设计(图1).jpg 238.4 KB 文章插图 下载次数:6 门禁系统硬件设计(图2).jpg 218.2 KB 文章插图 下载次数:4 门禁系统硬件设计(图3).jpg 118.4 KB 文章插图 下载次数:2 门禁系统硬件设计(图4).jpg 241.3 KB 文章插图 下载次数:2 门禁系统硬件设计(图5).jpg 193.1 KB 文章插图 下载次数:2 门禁系统硬件设计(图6).jpg 124.6
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中级银行业法律法规与综合能力-中级银行从业资格考试《法律法规与综合能力》彩蛋押题2
- 针管治疗过程讲解
- 道路运输应急培训
- 【施沃特】2025企业不动产选址白皮书
- 社区服务志愿者时间银行
- 化妆品行业线上销售平台优化运营方案
- 农业机械化的智能装备研发与应用推广方案
- 小学生消防安全知识课件
- 产品研发部门季度工作总结报告
- 财务个人述职竞岗报告
- 英语-山东省青岛市2025年高三年级第一次适应性检测(青岛一模)试题和答案
- 2025年设备部面试试题及答案
- 工会主席培训
- 传染病习题库与参考答案
- 四川省2024年普通高等学校高职教育单独招生文化考试数学试题
- 3.1公民基本权利(课件 )-2024-2025学年八年级道德与法治下册 (统编版)
- GB/T 44934-2024电力储能用飞轮储能单元技术规范
- 教师专业发展与教学质量的关系-深度研究
- 2025年广州体育职业技术学院高职单招高职单招英语2016-2024年参考题库含答案解析
- 2025年山西地质集团社会招聘高频重点提升(共500题)附带答案详解
- 地震资料解释基础
评论
0/150
提交评论