Circuit Design and Simulation Implementation of Intelligent Access Control System
A simulation model of the intelligent access control system circuit is proposed to address the lack of research on the interaction between the upper and lower computers in the current intelligent access control system. Firstly, a lower computer system consisting of input circuits, controllers, alarm circuits, and other modules was designed, and circuit control functions were implemented using software such as Keil and Proteus, as well as C language; Then, the upper computer data collection, password replacement, and reset functions were completed using C# language; Finally, the data communication between the upper computer and the lower computer was achieved through serial communication components, and the overall circuit testing of the entire machine was completed. The results indicate that the simulation model of the intelligent access control system has the preliminary ability to interact data between the upper computer and the lower computer, laying a model foundation for further deepening system research.
Access Control System
随着城镇化建设的推进,人们对居住环境的安全性、生活的便捷性、数据的可追溯性、功能的集成性和扩展性提出了更高的要求,于是智能门禁系统电路的设计与开发随之产生。
当前关于智能门禁系统的研究,主要集中于实物硬件电路测试、模拟电路仿真、半实物仿真等方面
综上,利用Keil、Proteus、ARM、PLC等软件进行智能门禁系统模拟电路的研究已成为电路设计领域关注的重点,但当前研究多集中于后台/下位机电路的研究,与上位机/界面的交互研究较少,这与智能门禁系统的便捷性需求不符。为此论文面向智能门禁系统展开研究,统筹上位机和下位机数据交互的基础上,弱化复杂功能考量,侧重二者一体化模拟仿真电路设计,完成功能程序开发及整体电路测试,以期达到预期效果,为智能门禁系统的深度开发提供模型基础。
门禁系统由上位机和下位机两部分构成,二者之间的数据交互由串口通信完成,模型整体结构如
下位机完成门禁输入信息的采集、处理、对比及告警功能。信息采集用于获取门禁密码状态信息,可通过按键获得,也可由上位机输入信号回传;信息处理对按键或上位机回传密码解析,生成单片机可识别数字;对比是将解析密码与预置密码进行异或,以确定输入密码是否正确;告警完成密码不一致时的警告或报警功能。
上位机完成人机交互、密码输入、密码重置、结果显示功能。人机交互用于采集用户信息,为用户提供可选操作等;密码输入为用户提供密码输入界面,为后续是否开锁或告警奠定基础;密码重置完成用户更换密码操作;结果显示用于显示时间、正确、错误、告警等信息。
上位机与下位机通过串口机制完成数据交互,不仅为上位机的输入信息回传至下位机单片机,还可以将单片机处理结果回传至上位机,并完成实时提醒和告警功能。
下位机通过Proteus建立门禁系统仿真电路,控制程序通过C语言由Keil软件生成.hex文件导入电路控制器完成信息处理及接口控制,串口通信通过Com1和Com2端口实现上行和下行信息传输,上位机利用C#语言实现人机交互。
下位机仿真电路由输入电路、控制器、电源时钟、显示单元、报警电路、串口电路和调整电路构成,如
//****************控制参数定义**********************// #define GPIO_DIG P2 //单片机P2端口宏定义 unsigned char aa[]={0,0,0,0,0,0},b[]={1,2,3,4,5,6}, KeyValue; //定义按键组合值、行列值和中间值; //****************端口参数初始化**********************// #define GPIO_KEY P1 //单片机P1端口宏定义 sbit buzzer=P3^7; sbit key1=P0^1; sbit key2=P0^2; sbit CL=P3^6; //定义报警器、key1、key2、CL对应端口值 //*******************列扫描*************************// switch(GPIO_KEY)case(0X07): KeyValue = 0; break; //若GPIO_KEY的值为0x07,则设置KeyValue为0,以此类推更新KeyValue值 //*******************行扫描*************************// case(0X0b): KeyValue = KeyValue + 4; break; // 若GPIO_KEY的值为0x0b,则KeyValue增加4,以此类推更新KeyValue值 //********************按键消抖**********************// if(key1==1){Delay10ms();}//确保按键值维持10ms,避免抖动 //******************按键组合判断********************// if(aa[0]==b[0]&&aa[1]==b[1]&&aa[2]==b[2]&&aa[3]==b[3]&&aa[4]==b[4]) {CL = 0;//如果匹配,输出低电平 buzzer = 0;}else {CL = 1; //否则输出高电平 buzzer = 1;} //******************蜂鸣报警********************// if(buzzer ==1)驱动蜂鸣器报警 else 蜂鸣器保持静音 |
上位机完成信息判别、信息重置、人机交互、结果显示等功能。其中人机交互完成人体输入信号的采集、处理等功能,论文关注软件仿真,不涉及实际屏幕信号输入,在此人机交互界面由C#中Form组件表征;结果显示用于显示处理输入信息后的结果呈现,论文不涉及实际LED控制,在此利用Message Box弹窗功能实现结果显示。为此本节重点关注信息判别和信息重置即可。对于门禁系统,信息判别将输入密码通过串口传回下位机,与预置密码对比,若匹配成功,则完成开锁,否则清空输入界面重新输入或告警,该功能在下位机已经实现,在此不重复描述。信息重置分为发送密码和密码清除功能,前者用于修改密码,后者用于清空密码,实现流程、上位机界面、核心功能代码实现分别见
string password = textBox1.Text;//获取密码 if (password == "12345")//检查password变量是否等于字符串"12345" { progressBar1.Value = 1;//若相同进度条的Value属性设置为1 if (textBox2.Text == textBox3.Text) //检查textBox2和textBox3文本是否相同 {progressBar1.Value = 2;// 若相同,代码将进度条的Value属性设置为2 data = textBox3.Text; SendDataToSerialPort();//调用串口通信 progressBar1.Value = 3;// 进度条的Value属性设置为3 |
界面启动后,默认选择功能为发送密码,此时用于可分别在原密码、新密码、确认新密码三个标签文本框中输入原始密码和新密码,若输入原密码与预置密码相同,可提醒用户输入新密码,否则清空标签文本框,重新输入原密码。当原密码输入正确时,可输入新密码,并确认输入新密码,当二者相同时,认为用户趋于修改密码,点击发送密码功能,可完成密码更改,否则清空文本框内容,重新输入。类似的,清除密码可作同等处理。
1) 下位机电路结构
如前所述,下位机由输入电路、串口电路、时钟电路等六部分构成。电路连通后,无按键信号及上位机回传信号,故显示单元不显示数字,且没有激活报警电路,无报警信号产生,结果如
2) 下位机运行结果
仿真过程密码设置为六位,按键按六次或上位机回传六位数字,单片机经过处理判断后,若密码输入正确,数字按序依次显示在数码管上,反之则驱动蜂鸣器电路完成报警功能。
3) 上位机运行结果
上位机运行结果如
4) 整机运行结果
论文基于Keil、Proteus、C#等软件/语言环境,设计并实现了包含上位机和下位机的智能门禁系统,并完成了仿真测试。结果表明,所设计的系统具备了一定的人机交互、上位机与下位机系统、智能开锁功能。但也存在以下不足:一是为单机仿真测试模式,缺乏联网远程控制功能;二是仅设计了室外门禁系统,缺乏室内危险因素告警考量;三是功能较为单一,集成度不足。后期将对以上问题展开研究,以期为门禁系统的进一步应用提供一定的模型基础。
*通讯作者。