当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]嵌入式网络型门禁控制系统的研制

摘要:本文设计以 ATmega128单片机为核心的网络型门禁控制系统,采用了小型嵌入式 TCP/IP协议栈 uIP0.9和嵌入式数据库技术,实现了网络技术和门禁系统的结合,具有较强的实用性和组网的灵活性,为构建大规模跨地域的门禁控制管理提供了可能。

引言

随着计算机技术和网络技术的迅猛发展,门禁管理系统不断朝着集成化、智能化、网络化与分布式的方向发展。近年来,世界范围内以太网环境的基本形成突破了传统通信方式的时空限制和地域障碍,使得基于网络环境的门禁管理系统的设计和开发成为未来门禁系统发展的重要方向。在门禁系统中引入 TCP/IP技术,不仅可满足人们对出入控制系统日趋复杂的要求,同时也使远程和大范围门禁控制的系统组建成为可能。

2 uIP0.9协议栈概述

uIP0.9是一个适用于 8/16位机上的小型嵌入式 TCP/IP协议栈, 简单易用、资源占用少是它的设计特点。它去掉了许多全功能协议栈中不常用的功能,而保留了网络通信中所必要的协议机制。开放的代码使开发者可以完整地了解这个协议栈,并能够根据应用要求作一定程度的修改,将其移植到实际的嵌入式系统中。

其设计重点放在 IP、ICMP和 TCP协议的实现上,它将这三个模块合为一个有机的整体,而将 UDP和 ARP协议实现作为可选模块。uIP0.9的体系结构如图 1所示。

 

 

uIP0.9处于网络通信的中间层,其上层协议在这里被称之为应用层,而下层为网络设备驱动。为了节省资源占用,简化应用接口,uIP0.9在内部实现上作了特殊的处理:

① 注意各模块的融合,减少处理函数的个数和调用次数,提高代码复用率,以减少 ROM占用。

② 基于单一全局数组的收发数据缓冲区,不支持内存动态分配,由应用层负责处理收发的数据。

③ 基于事件驱动的应用程序接口,各并发连接采用轮循处理,仅当网络事件发生时, 由uIP0.9内核唤起应用程序处理。这样, uIP0.9用户只须关注特定应用就可以了。传统的 TCP/IP实现一般要基于多任务处理环境,而大多数 8位机系统不具备这个条件。

④ 应用程序主动参与部分协议栈功能的实现(如 TCP的重发机制,数据包分段和流量控制),由 uIP0.9 内核设置重发事件,应用程序重新生成数据提交发送,免去了大量内部缓存的占用。基于事件驱动的应用接口使得这些实现较为简单。

在 uIP0.9中,基于速度、代码效率和堆栈使用等方面的考虑,大部分接口函数是通过宏定义的方式来使用 uIP0.9提供一系列函数,完全可以被看作一个代码库。图 2描述了 uIP0.9、系统底层和应用程序三者之间的关系。

 

 

uIP0.9提供了两个函数给系统底层: uIP_Input(),uIP _Periodic()。应用程序向 uIP0.9提供一个调用函数 uIP_Appcall (),在网络事件或计时事件发生时进行调用。同时, uIP0.9向

应用程序提供了一些与协议栈相关的接口函数,应用程序根据接口函数提供的信息或者状态,执行相应的操作。如图 2所示, uIP_Appcall ()是一个用户定义的函数,唯一对应着一个应用。由于 uIP0.9的特殊性,该函数必须协助完成一些 TCP/IP层的功能,如重传等。 uIP_Input(),uIP_Periodic()实质上是使用参数不同,前者在网络设备接收到新数据时调用,后者则是对定时器事件的响应,周期执行。

uIP0.9不同于其它的 TCP/IP协议栈,它的某些网络层的功能需要应用程序的介入才能完成,如重传机制、确定最大传输单元等。需要重传时,由应用程序重新生成数据,以减小存储器使用;在协商确定最大传输段单元 MSS后,由应用程序保证发送数据块的大小不超过该值。

uIP0.9实现了 TCP/IP协议栈中的四个基本协议: ARP、TCP、IP以及 ICMP协议。解析协议 ARP完成 IP和 MAC的对应,以完成数据包的物理交付。 IP层代码有两个责任:确信数据包头文件的正确性和依据 TCP、ICMP区分数据包的类型。在 IP层没有进行分段和重组,只是由 9个简单的 if语句组成 IP层代码。

3 嵌入式数据库

数据库是整个管理系统的核心。实时监控、卡片及人事信息管理等,都离不开系统数据库,人员的进出记录以及进出权限和通行时间也都记载在数据库中。嵌入式数据库指的是随机存贮器 RAM中的数据结构及数据信息,它在系统运行过程中不断地刷新,其内容直接反映了门禁节点的运行状况。本系统包括两类数据库: A.系统数据库,主要对硬件的设定,包括控制器类型、读卡机、门、报警输入、报警输出、通讯格式及参数。 B.持卡人信息,包括持卡人个人信息,每日与每周时间区,节假日,出入组,防反潜,有效期限等。

4门禁系统的硬件设计

门禁控制器的硬件框图如图 3所示,本系统的控制核心采用 ATmega128微处理器,网络部分电路由 RTL8019AS微型网关芯片和 RJ45组成,负责收发数据包、地址解析、冲突检测等网络通信功能。网络设备驱动即通过 RTL8019AS的驱动实现,主要包括三部分:完成网卡芯片的上电初始化、数据的发送和以太网数据的接收。选择 ATmega128的一个定时器来为TCP/IP协议中与时间有关的事件定时。

 

 

系统的编程接口可与计算机的串口连接,计算机可通过该端口向控制器下载 BIOS和程序。系统还包括信号检测、输入、输出、RS232/485总线通信,分别实现读卡、报警信号检测、开门、通信等功能。

门禁控制器的各种配置信息:日编程、周编程、节假日编程、卡定义信息、读卡器定义信息,以及刷卡记录和报警信息都要存储在本地控制器中,因此 RAM空间的扩展显得尤为重要,本系统扩展了62256。系统设计时还采用了备份电池供电,从而保证门禁控制器卡号、日编程、周编程等信息永久存储在存储器内而不受掉电的影响,另外使用了实时时钟芯片DS1302,DS1302具有秒、分、小时、日、月、星期、年的计时功能,避免突然掉电时对时钟的修改。[!--empirenews.page--]

5 结束语

在当今网络发展日新月异的时代,消费者需要的智能化产品都要求具备更好的网络功能,这样就更容易实现局域网内部控制或利用成熟的因特网技术实现远程控制,并能够在特定条件下,升级产品的预存指令集,实现功能的更新。随着整个安防行业朝网络化发展,门禁控制器也要普及网络化。本文创新点在于将 ATmega128 应用在嵌入式门禁控制系统中,移植了小型嵌入式 TCP/IP协议栈uIP0.9,使系统能够顺利地接入以太网,具有很高的使用价值和很强的可操作性。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭