基于蓝牙技术的考勤系统蓝牙通信设计.docx

上传人:b****8 文档编号:12726715 上传时间:2023-06-07 格式:DOCX 页数:69 大小:1,012.12KB
下载 相关 举报
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第1页
第1页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第2页
第2页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第3页
第3页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第4页
第4页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第5页
第5页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第6页
第6页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第7页
第7页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第8页
第8页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第9页
第9页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第10页
第10页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第11页
第11页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第12页
第12页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第13页
第13页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第14页
第14页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第15页
第15页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第16页
第16页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第17页
第17页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第18页
第18页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第19页
第19页 / 共69页
基于蓝牙技术的考勤系统蓝牙通信设计.docx_第20页
第20页 / 共69页
亲,该文档总共69页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于蓝牙技术的考勤系统蓝牙通信设计.docx

《基于蓝牙技术的考勤系统蓝牙通信设计.docx》由会员分享,可在线阅读,更多相关《基于蓝牙技术的考勤系统蓝牙通信设计.docx(69页珍藏版)》请在冰点文库上搜索。

基于蓝牙技术的考勤系统蓝牙通信设计.docx

基于蓝牙技术的考勤系统蓝牙通信设计

基于蓝牙技术的考勤系统-蓝牙通信设计

摘要

作为当代大学生,上课的时候都避免不了老师的考勤,现在的考勤还是主要以老师点名为主。

往往点完名后就已经占了课堂的小一部分时间,不仅仅低效,而且考勤很多同学可以帮别人顶替,所以漏洞很大。

而在企业中,考勤主要是以指纹和扫描脸部为主,这样的考勤成本高,也浪费一定的社会资源,不利于推广。

基于信息化的蓝牙考勤系统就应运而生,适应时代的发展。

当一推出这蓝牙考勤方式时,就十分受高校的欢迎,毕竟能使上课时间多了很多也高效很多。

遏制住学生代签到帮同学的行为,也不会因为考勤系统等烦杂事务影响教学管理。

本设计是基于蓝牙技术的考勤系统创建一个能检测蓝牙并且完成签到的APP,蓝牙可以再一定的距离之内来检测学生或者员工有没有到指定的地方上课或者工作。

该考勤系统只用到手机端的蓝牙,十分方便。

原理是使用蓝牙的客户端BluetoothSocket和服务端BluetoothServerSocket两个功能,创建一个使用bluetoothadapter为主的蓝牙列表,这个APP系统能自动搜索蓝牙设备,这个APP还能登陆检查签到,并对事先做好的蓝牙设备地址数据库进行对比从而完成学生的考勤登记。

所以基于蓝牙技术的考勤系统设计的意义很重大不仅能够减少考勤成本,还能是教学管理更为高效。

关键词:

蓝牙;bluetoothadapter;BluetoothSocket;BluetoothServerSocket

AttendanceSystemBasedonBluetoothTechnology-BluetoothCommunicationDesign

Abstract

Asacontemporarycollegestudent,theattendanceofteacherscannotbeavoidedinclass,andtheattendanceisstillmainlybasedontheteacher'srollcall.Oftenaftertherollcallhastakenupasmallpartoftheclass,isnotonlyinefficient,butalsoattendancemanystudentscanhelpotherstoreplace,sobigflaws.Inenterprises,attendanceismainlybasedonfingerprintandfacescanning,whichcostsalotandwastessomesocialresources,whichisnotconducivetopromotion.Thebluetoothattendancesystembasedoninformationarisesatthehistoricmoment,thedevelopmentofTheTimes,andismoreandmorepopular.Becausetheschoolcanbringamoreefficientwaytodealwithattendance,teachingmanagementcanbecarriedoutsmoothly,sothatstudentswillnothaveloopholestodrill,alsowillnotaffecttheteachingmanagementbecauseoftheattendancesystemandothercomplicatedthings.

ThebluetoothattendancesystembasedoninformationarisesatthehistoricmomentandADAPTStothedevelopmentofTheTimes.Whentheintroductionofthisbluetoothattendancemethod,itisverypopularwithcolleges,afterall,canmaketheclasstimealotmoreefficient.ThisdesignisbasedonthebluetoothtechnologyattendancesystemtocreateanAPPthatcandetectthebluetoothandcompletethecheck-in.Thebluetoothcandetectwhetherstudentsoremployeesareattendingclassesorworkinginthedesignatedplacewithinacertaindistance.TheattendancesystemonlyUSESbluetoothonthemobileterminal,whichisveryconvenient.TheprincipleistousebluetoothclientBluetoothSocketandserviceBluetoothServerSockettwofunctions,tocreateabluetoothadapterbasedbluetoothlist,theAPPsystemcanautomaticallysearchforbluetoothdevices,theAPPcanalsologincheckin,andthepre-madebluetoothdeviceaddressdatabaseforcomparisontocompletethestudentattendanceregistration.Therefore,thedesignofattendancesystembasedonbluetoothtechnologyisofgreatsignificance,whichcannotonlyreducetheattendancecost,butalsomaketheteachingmanagementmoreefficient.Curbthebehaviorofstudentstosigntohelpclassmates,alsowillnotaffecttheteachingmanagementbecauseoftheattendancesystemandothercomplicatedthings.

Keywords:

bluetooth;bluetoothadapter;bluetoothSocket;bluetoothServerSocket

2.4系统设计语言的选择以及介绍5

一、引言

在如今的大学考勤系统中,很多都是以纸张为载体的考勤,而且浪费老师讲课的时间,最主要很多学生可以蒙混过关,想不去上课就不去上课,造成当代大学生很多人没有很好完成大学学业。

而企业的考勤系统,是用了指纹和扫描脸部为主,在这些考勤中,效率是提高了很多,也很难出现考勤的错误,唯一的缺点就是成本高而且还有复杂的操作,在资源有限的社会,不利于推广。

在科技不断发展的如今,这一类考勤慢慢会被社会所抛弃,所以这时候基于蓝牙设计的考勤系统应运而生。

基于蓝牙设计的考勤系统,就是通过APP连接到手机的蓝牙,登录自己的信息实现课堂上或者上班的考勤,简单方便。

这个APP它具有注册信息,登录信息,检查签到,和请假的功能,APP通过HTTP协议与服务器通信,通过数据库管理我们的签到数据,老师端从而处理我们的签到信息,进行签到。

这个APP还有老师端和学生端这两个功能,适时的切换信息和收集学生的请假信息,从而很快的去处理这些签到信息。

1.1、本设计的目的、意义及应达到的技术要求

本设计的目的是设计出一款APP软件对高校上课的学生或者企业上班考勤的员工进行智能手机蓝牙的精确识别,并且做出考勤的签到、统计、请假反馈给老师或者上司。

这样的话我们就可以很方便的将考勤交给这个APP来实现,而不是浪费在老师点名上,节约老师在考勤方面的时间。

应达到的技术是要求研究一种APP管理系统识别学生的蓝牙,分为学生端和老师端。

利用Android系统提供给我们的蓝牙客户端bluetoothSocket和蓝牙服务端bluetoothServerSocket。

通过查阅资料可以根据蓝牙有其地址的唯一性,首先提前将学生的信息放进数据库了,一旦我们扫描到了学生的蓝牙就可以进行作信息的整合比较。

我们的老师就可以通过这款APP判断学生的上课考勤的情况,从而实现本次设计功能。

mysql是服务端的数据库主要用来处理登录、注册、收发通知,而sqlite为本地数据库,主要用来存储蓝牙通讯的签到以及请假,收集这些数据进行整理反馈。

基于以上课题需要研究的内容有以下方面:

1.学生和教师的登录注册;

2.蓝牙端的通信设置和蓝牙连接设置;

3.学生端使用蓝牙签到和蓝牙请假;

4.教师端查看考勤和查看请假;

5.学生端调起QQ联系老师;

6.教师端发布通知和学生端接收通知;

7.关于系统和退出系统;

8.分析考勤数据

9.Mysql服务端的数据库和sqlite本地的数据库;

10.程序的编写与调试;

1.2、本设计在国内外的发展概况及存在的问题

现在的高校学生逃课率非常严重,经过调查有20%的逃课率,有90%的学生在大学逃过课,而且不止一次,所以形势非常严峻,这让每个学校都十分苦恼,一直找不到好的办法来解决学生上课签到,落后的签到方式不仅耗费学生宝贵的上课时间而且容易造成管理失误。

而且蓝牙考勤甚至没有多少大学去展开使用,大多数的高校还是停留在点名。

一旦蓝牙考勤慢慢引进高校,对于高校上课考勤将会有很大的帮助。

目前基于蓝牙设计存在的主要问题是蓝牙的稳定性和连接蓝牙时能否容纳一个班上的同学的蓝牙信息传输。

进行1对1进行信息传输的时候,老师的服务端可以很好处理,但是在进行多个也就是N对1的情况下进行信息传输,需要一个排队的过程,还会出现某些同学的信息缺失,这也会浪费学生的上课时间和影响老师正常授课。

1.3、本设计应解决的主要问题

从系统的整体设计出发,急需解决的是蓝牙端的通信和蓝牙端的连接,能够保证大家的蓝牙都能被APP识别并且连接的上,学生客户端上要可以注册和登录并且填写我们的基本信息,并且还能使用蓝牙进行快速可靠的签到和发送请假信息,我们设计的时候学生端还多了一项可以利用调起QQ联系老师。

而教师端可以准确无误的查看我们的考勤状况和请假信息,并且可以发布通知通知学生,学生也能收到信息。

在Android界面上还有关于系统和退出系统的功能。

利用mysql服务端的数据库主要用来处理登录、注册、收发通知,而sqlite作为本地数据库,主要用来存储蓝牙通讯的签到以及请假数据,使用Java编程语言在Android平台上实现对学生信息、课程信息和考勤信息的管理。

这些都是我们需要解决的主要问题。

二、基于蓝牙的考勤系统设计的整体设计方案

2.1、基于蓝牙设计的考勤系统组成

基于蓝牙的考勤系统是使用现在十分常见的Android系统平台,因为其操作方便快捷、界面友好、最主要的一点是其兼容性很好。

使用里面的开发工具包,再加上手机自带的蓝牙模块。

创建的APP分为学生端,学生端具有签到,注册,登录信息还有请假的功能,其中最关键的信息是每个学生对自己手机的蓝牙地址,这是这个APP进行考勤的关键依据。

教师端也有注册,登录,检查签到,对已经进行签到的同学,记为“到课”,对没有到课堂上课的同学记为“旷课”,对请假的同学记为“请假”。

在本系统中,考勤系统一共分为到课,迟到,请假,和旷课四种。

若学生旷课太多就会以信息的方式进行提醒。

基于这些的实现都是建立一个服务端数据库Mysql来处理这些大多数的信息。

图2.1基于蓝牙设计的考勤系统的原理图

2.2、系统需求分析

本文设计的目的是基于蓝牙系统的考勤系统中的蓝牙通信模块,其中的学生业务设计模块、教室业务设计模块、后台业务设计模块、和用户设计界面使用模块这四个模块不会在本文讲解。

要想了解这个蓝牙通信,就需要我们知道怎么去建立两个蓝牙之间的连接与通信。

2.2.1蓝牙通信模块设计的功能需求分析

·打开手机端的蓝牙

·搜索可用的蓝牙设备(教师端和学生端都可以互相搜索)

·创建蓝牙连接socket,包括短连接和与长连接。

·利用数据库记录蓝牙的数据

·利用蓝牙一键签到

2.2.2蓝牙通信模块设计的非公能需求分析

由于技术十分有限,对于mysql服务端的数据库和sqlite本地的数据库的理解有限,对于大量的数据进行分析时往往会出现错误,无法完成整个班级的考勤签到,即是蓝牙之间的连接无法做到教师端一个对N个学生的连接通信。

界面的设计也不需要太复杂,做到简单明了,有蓝牙签到的指引提示。

2.3、系统的设计对象选择及介绍

基于蓝牙设计的签到系统是使用Android操作系统,手机的操作系统有许多种,之所以选择Android的操作系统,是因为它在很多方面都能够很好兼容匹配,没有排斥性。

通过分析近几年手机的销量,发现Android系统的手机在全球的销量是最高的,占据着一半以上的市场份额,就可以知道Android系统是很受大众的欢迎的。

由下图可以知道Android操作系统在手机方面应用是最广泛和最流行的。

图2.2Android手机操作系统全球市场份额

现在很多人都是用安卓系统的手机,Android系统对于我们每个人都不陌生,用了之后也发觉是很好用,他的形象也是根深蒂固在人们的脑海里。

安卓系统是基于Linux内核的开放源代码的操作系统,是谷歌在2007年发布的一种操作系统。

因为那时候数码相机很受欢迎,所以初衷就是探索一个怎样的操作系统能够很好地开发和创建一个相对先进的数码相机。

然而,后来发现市场对数码相机操作系统的需求不够大,他们发现只有手机市场在快速增长,所以安卓转向了智能手机操作系统。

该年的11月份,谷歌和其他84个创造者、开发者和电信运营商共同建立了开放手持设备联盟,共同开发和改进安卓系统。

随后,谷歌以阿帕奇免费开放许可的形式发布了安卓源代码,允许许多制造商引入基于安卓的智慧。

Android系统后来更逐渐使用在其他的开发上。

应用程序Android是以Java为编程语言,这样能够使接口功能化,而且他的中间层主要使用Java语言实现。

在优势方面,Android操作系统有其独特的地方。

1、开放性

一个系统的开放性就等于拥有了很多操作的可能性,当开放性很好时就会拥有很多的消费者。

之所以Android系统这么受欢迎,就是因为其具备开放性。

因为开放性,任何的移动终端和厂商都可以进行开发其想要的功能和使用。

还可以利用其开放性进行优化系统,提高用户的体验。

2、开放的源代码

让用户可以利用其免费的核心代码,免费的话用的人就会多。

还向开发者提供SDK,这样的话很多程序员就可以很简单的编写各种应用的软件。

3、场强的网络功能

Android使用的WebView组件和内层建造的浏览器是以WebKit为核心,所以里面的很多APP可以实现内嵌各种高端的网页功能。

4、表现个性

Android系统使用Widget来实现界面的个性化,很多厂家都可以完善当前的界面,并且还可以修改,设计属于我们自己喜欢的产品风格。

5、多任务系统

Android系统可以同时打开我们我们想要打开的应用,而且能做到不卡顿很舒畅,我们可以看着视频的同时在微信或者QQ发送消息,主要是因为Android系统具有很强的代码功能使其有消息处理机制。

6、Google应用

由于谷歌公司在近几年的不断发展,让现在互联网都与其紧密的联系,也让我们的生活和网络相互连接。

谷歌还推出了很多的功能化服务,而作为其中的一份子,Android可以和这些服务进行调用还有结合,使得功能更加强大。

2.4、系统设计语言的选择以及介绍

Android应用程序有大部分是采用我们熟知的Java语言开发的,在做这个考勤系统时,本人一开始选用的是c和c++来实现蓝牙的通信,通过看协议时序图,但是后来查找关于c语言设计的Android资料少之又少,所以就放弃这个想法,因为实在是难以进行本次手机系统。

因为我专业学习的是C语言,在做这个考勤系统之前要不断查找Java的资料,自学了Java语言,花费了很多时间,也让完成这个考勤系统的难度增加了不少。

在传统的Java语言开发里,Java文件的源代码是一步步转化成可执行的二进制机器码的。

由下图分析可得先是将源代码转化成.class文件,JVM可理解的Java字节,再通过JVM转化为二进制机器码。

图2.3Java语言执行的过程

Java是一种面向对象的、易理解易用的、动态的语言,它是跨平台、分布式的、阐释的、多线程的,具有较高的安全性及移植性,非常强大,并且结构是中立的,性能极佳。

而C语言则是面向过程的语言。

Java也对c及c++语言进行了学习,发现在风格方面,它与后二者非常相似,且它的诞生正是因为开发者对C语言的不甚满意。

从本质上来看,java是一种半编译半解释的语言。

它先把编译写好的源代码编,使其成为二进制字节码,接着再借助各平台上所装设的虚拟机来完成对字节码的解释执行,这使得仅需1次编译就可以到处执行的跨平台特性得以达成。

作为通用的程序设计语言,Java的功能较为全面,可在要求高、可信的应用程序的开发中起到关键的作用。

同c语言无异,Java语言也具有易学性。

在对其语法有所了解后,就能够发现它和C、C++语言十分相似,基本上所有的程序工作者都对C语言有所掌握,而且基于此进行编程,所以于他们而言,Java语言的学习及运用难度都不大。

在Java语言当中,没有多继承等c++语言里运用频率极低、理解难度大的特点。

指针是C语言的学习当中最难理解的部分,而它在Java语言中是不需要的。

另外,Java语言对内存中的自动的废料收集进行了提供,故而程序工作者无需考虑内存的负荷管理问题。

以下就其特点展开详述:

1.Java语言是强制面向对象的语言

Java对继承、接口、类等语句加以供应,此即为Android对其这般运用的根本缘由。

为使编程更易于完成,java对各个类彼此间的单继承、各接口彼此间的多继承、类和接口之间的达成机制都是支持的。

它对动态绑定予以支持,但是C++语言的动态绑定则仅用于虚函数中。

可见,Java语言是纯的且面向对象的。

2.Java语言是强壮的

因为设有异常处理、强类型机构以及自动收集垃圾等,所以有效地确保了Java语言开发的程序强壮性。

放弃指针可谓是Java最聪明的一个决断。

而安全检查机制则是使其强壮性得到提升的关键所在。

3.安全可靠性能好的语言

Java语言编程复杂度低,外部一般难以干扰到它,而且它还有着极强的表达力、执行力。

为将外部代码的影响消除掉,它还对一个安全机制进行了设立。

譬如分配字节、类的种类等均可被其保护。

此外,它的安全特性也比较丰富,备受使用者的青睐。

4.Java语言是分布式的

一个大的系统通常为划分为多个子系统来完成,因分布式是Java语言的突出特点,故而能够借助计算机网络向诸多台主机上分布诸多的后端工作,让这些主机去完成具体的工作,以使效率大为提升。

同时,还能够对HTTP与FTP等的TCP/IP协议进行较佳的处理,以远程调用为基础的、以消息方式为基础的系统间通信、网络通信技术在分布式应用中较为常用。

除此以外,此类应用的开发还有一个关键的方式,即Java的RMl机制。

5.Java语言是跨平台可移植的

因为体系结构具有中立性,所以Java语言也就具有了可移植性。

此外,该语言还对各种基本数据类型的长度设定了要求,而且有着较高的严格度。

Java系统的可移植性极强,以Java语言达成Java编译器,几乎可以顺利工作于所有的硬件或软件平台上,从而避免了诸多烦恼。

6.Java语言是原生支持多线程的

线程是Java语言里一种比较的特殊对象,其管理是由Jvm来完成的,且其创建必须由该语言里的Thread类或者其子(孙)类来进行。

Jvm是基于lwp(轻量级进程)来使得与操作系统的内核线程1:

1的映射关系得以达成的,从而使Java内部的多线程得以变为现实,同时对详细的语法进行了供应,进而将具体的编码完成。

简单而言,Java的多线程即可对内核线程加以调取运用从而进行执行的,故而其对于多线程的支持可谓是与生俱来的。

在Java里,线程的设立可由两个途径达成:

一是对型构为Thread(Runnable)的构造子加以运用,对1个实现了Runnable接口的对象进行包装,使其成为1个线程;二是将子类从Thread类派生出来且对run方法进行重写,线程就是基于该子类而设立的。

7.Java语言是动态的

在编译过程中,有需要我们分配空间的动态环境和静态环境,Java语言能够很好地适应一些无时无刻不在变化的动态环境。

主要是操作类,动态地被载入到运行环境。

并且SE能够很好地进行升级。

在Java语言的健壮和可靠的优良特性下,就可以大大降低运营的维护成本。

也可以缩短开发时间。

三、编程环境搭建

3.1、AndroidStudio的环境搭建

AndroidStudio是Android应用设计软件常用的一种环境软件,用来编写Java代码。

搭建这个软件的方法如下:

1.首先打开网上下载好的AndroidStudio的安装包

2.点击进行安装,一步步操作下去

3.选择自己安装的程序路径,我把它放在D盘

4.安装Androidstudio程序完毕后,对其进行配置,配置是非常重要的,一旦配置错误了,就会出现很多软件上的错误,按照如下图勾选

图3.1

5.然后选择自己喜欢的界面主题

6.这里最重要的还是指定SDK的路径,路径错误,到时候编译也会出错,如果电脑下载好了SDK,即需指定其路径。

7.点击finish就进入了Androidstudio的欢迎界面

图3.2Androidstudio欢迎界面

8.Androidstudio已经安装成功,就可以搭建自己的项目了

图3.3项目中的工程目录结构

图3.4Androidstudio的工作窗口

3.2、MyEclipse的环境搭建

MyEclipse,是在eclipse基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、JavaEE以及移动应用的开发。

MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持相当不错。

以下是其搭建方法:

1.首先在官网下载好MyEclipse10安装包

2.点击MyEclipse10图标进行安装

3.然后选好工作路径,这里注意最好不好出现中文路径(代码放在的地方不能出现中文路径,否则编译的时候会出现错误)

4.安装完毕就可以新建项目了

图3.5MyEclipse的工作窗口

四、蓝牙技术在Android开发中的应用

4.1蓝牙的介绍

蓝牙(Bluetooth)是一种能够使短距离(一般为10米之内)的两个设备之间在无线的情况下,完成他们之间的通信,这个通信是十分高效和安全的,所以在设备之间的通信时,很多人都会选择蓝牙进行。

所以,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2