周文武 宋巧玲 吴旭东
关键词:物联网;公共园区;智慧园区
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2022)36-0053-03
1 引言
以物联网、大数据、云计算代表的新兴智能科技,正在掀起一场以信息技术为中心的社会革命,渗透到人类社会的各个领域。“物联网”被誉为是继计算机、互联网与移动通信之后,世界信息产业又一次浪潮,将成为未来带动中国经济发展的主要生力军。物联网属于软件、硬件和网络三者结合的技术领域。物联网将人与物、物与物互联互通,广泛应用于新零售、工业、物流、智慧城市、通信、安全追溯、农牧业、交通、穿戴设备、智能家居、医疗等领域。物联网将在全球范围内连接500亿个设备,所带来的产业价值是互联网技术的30倍以上。
近几年国家信息规划中明确提出要加快信息化和生态文明建设深度融合,利用新一代信息技术,促进产业链循环化。推进物联网感知设施规划布局,发展物联网开发应用;实施物联网重大应用示范工程,推进物联网应用区域试点,建立城市级物联网接入管理与数据汇聚平台,深化物联网在城市基础设施、生产经营等环节中的应用[1]。
2 智慧园区的总体设计
对传统园区进行智能化改造,实现环境监测、园区监控的功能。设计出硬件层、网络层、平台层和应用层的四层结构。实现园区数据的长期记录、采集,通过监控系统完成园区的温湿度监测、记录、分析和自动化管理等工作,监测点位可以扩充至上千个,园区管理员可以根据需求在手机App端设定各点位的温湿度报警值,当出现数据异常时可自动发出报警信号,在温湿度数值超过警戒线时能够发送多种报警信号提醒[2]。所用设备包括温湿度传感器、光照传感器、烟雾传感器等各类环境监测设备,红外门禁、网络摄像头等视频监控设备,以及加湿器、除湿机、空调等环境维护设备。系统可在线实时24小时连续采集和记录监测点位的温湿度情况,监测数据会在第一时间上传物联网云端,重点在于开发出一款App软件,实时查看情况,通过设置多种策略,实现现场报警和手机提示报警灯功能[3]。
技术选型中,PC端采用Windows10操作系统,采用Android Studio 对手机App软件进行开发,运行终端利用夜神模拟器、真实手机或者平板电脑进行开发和设计。云平台采用阿里云、机智云或者新大陆进行存储数据的手机数据连接[4]。
2 智慧园区App设计
2.1 智慧园区登录界面
设计登录界面及注册界面;
1)建一个User类用于封装用户数据;
2)建MySQLiteOpenHelper 类用于创建数据库和创建表;
3)建一个UserDao类用于操作数据库的添加和查询数据;
4)LoginActivity用于登录,处理登录和注册按钮的点击事件;
5)RegActivity 用于注册,处理注册按钮的点击事件。
2.2 智慧园区室内环境监测App子系统
一般的园区室内环境监测,只会在下位机显示一些烟雾数据,烟雾数据超过预警值则会报警,释放安全门等操作,但经常误报而且需要专业人员进行调试。针对以上情况,设计一款可以在手机App设定预警值的园区内环境监测系统,采用有线传感网和Wi-Fi无线网实现。可以实时显示园区内的温湿度、光照、烟雾数据;根据温度高低自动判断是否需要开/关通风扇、空调;根据湿度大小自动判断是否需要开/关排气扇、加湿器;根据光照的强弱自动判断是否需要开/关照明灯;根据有无烟雾自动判断是否需要开/关三色灯——橙灯。有烟的时候发出警报提示,并触发安全门下降[5]。
在XXXX.java中添加根据当前温度与设置的阈值控制通风扇开关、根據当前湿度与设置的阈值控制排气扇开关以及根据当前光照与设置的阈值控制照明灯开关的代码。新建raw文件夹,把报警提示音文件“alarm.wav”放到raw 文件夹下创建通知工具类XXXX.java,设置通知的报警音乐,点击通知后通知自动消失,跳转到动作为“home”,类别为“android.intent.category.DEFAULT”的页面中。在XXXX.xml文件的HomeActivity 声明的代码中,配置过滤器,动作为“home”,类别为“android.intent.category.DEFAULT”。在服务中添加获取烟雾数据,如果有烟雾发送通知。
2.3 智慧园区监控App子系统
在Mon.java中判断摄像头地址信息是否为空,为空弹出提示并return,否则打开摄像头。在Mon.java中添加“开启监控”ToggleButton的状态监听,如果是“开启监控”状态,打开摄像头,否则如果摄像头不为空,释放摄像头。在Mon.java的控制摄像头上下左右转动的按钮的触摸事件中判断如果监控未开启,弹出开启监控的提示,返回false;如果监控已开启,移动按钮或手抬起时控制摄像头转动。在Mon.java中判断如果有人,判断摄像头地址信息是否为空,为空时弹出提示,不为空时监控如果是开启的,调用拍照的代码。在Mon.java 添加onResume()方法,判断如果监控按钮是开启状态,0.3s后调用摄像头的代码。在Ho⁃meActivity标题栏的“设置摄像头地址”菜单点击事件中显示设置摄像头地址菜单对话框。在HomeActivity标题栏的“查看截图”菜单点击事件中判断如果手机内置sd卡根目录下pic文件夹不存在或文件夹为空,弹出暂无图片的提示,否则跳转到显示截图页面。
2.4 智慧园区云平台API的调用
总体思路是利用第三方OkHttp连接云平台,封装GET和POST方法;利用云平台提供的API登录平台,保持登录成功返回的访问令牌;利用云平台提供的API,开启线程,凭设备的ID查询传感器数据。查询到的传感器数据通过消息机制传到UI线程,解析查询到的JSON格式的传感器数据并显示在界面上[6]。
登录帐号API的用户名和密码发送到云平台,采用POST方式,如果成功则返回AccessToken值,其中返回的请求都会有AccessToken值,因此需要保存这个AccessToken值,如图4所示。
图4中选择Post,并输入登录云平台的账号和密码(注意要输入自己的账号和密码,此处是模拟的账号和密码),点发送请求,则是返回结果。如果登录成功,把返回结果中的AccessToken值复制并粘贴到发送请求框。其中,账户、密码和AccessToken值一并写入App程序中[7]。
此外,还需要添加访问网络和解析JSON格式的依赖库,编写云平台参数设置,保存、读取,使用OkHttp的类进行网络访问,再启动线程定时从云平台获取实时数据,通过消息机制更新UI 界面的显示值[8]。
3 总结
本文从智慧园区入手,实现环境监测、园区监控的功能。把物联网架构分为硬件层、网络层、平台层和应用层的四层结构进行设计,开发工具采用An⁃droid Studio,制作出环境监测和监控软件,实时查看情况,通过设置多种策略,实现现场报警和手机提示报警灯功能。从而实现“物联网,让生活更美好”的梦想,优化园区环境,推动地方经济发展。