
通信技术
教事投本开与或用
基于树莓派实现的车载二维码扫描识别系统,
杨旭炜盛晓亮
(长安大学信息工程学院陕西西安710021)
摘要:二炸码作为物联网应用领域里一项十分重要的技术,现阶投的二维码使用方式比较单一,高限于手动扫描的阶疫,基于车辆的二炸码应用很少。并且二维码技术几平没有在交通领战和公共生活服务领成的应用,在有业很有发展前景领城存在应用空自。本文基于卡片式电脑一—树等浪设计了一套车载二增码扫描识别系统,
关键词树募浪车载辅助设备二炸码物联网车联网
中图分类号:TN914.42
文献标识码:A
二维码作为物联网的感知应用层,具有信息客量大,编码范围广,防伪、保密性能好,译码可靠性高,修正错误能力强,客易制作且成本低和条码符号的形状可变等特点。目前在二维码的应用形式上比较单一,二维码的众多优点使得其应用前录广泛,当人们开车去某公共生活服务场所时,大部分人的所需服务和这个场所提供的服务相契合。如果利用这种共性将二维码喷绘停车场,为用户自动提供用户所需的场所信息。本文基于这种理念设计了一套基于树莓派实现的车载二维码扫描识别系统,通过将二维码喷绘在公共生活服务场所的停车场的停车位地面上和需要提示信息路段公路上,使之
应用于交通领域和公共生活服务额域。 1系统原理
车载二维码扫描识别系统是从二维码的实际应用出发,采用将携带信息的二维码喷绘在地面上的方式,设计一个结合二维码识别技术和车载设备的车载二维码扫描设备。其工作原理是汽车在停下或者行进过程中,可以使用车载摄像头对喷绘在路面上的二维码进行扫描,将数据传输给树莓派工作台。工作台通过所搭载的JAVA 程序对二维码图片进行解析,获得所需传递的信息,并通过蓝牙4.0 无线通讯技术将该信息推送至手机终端。系统通过开发的APP,提供
更加快捷方便的获取信息方式(图1)。 2实现流程
2.1硬件环境搭建
(1)给树莓派的sd卡上安装linux系统,使之成为一个简单的pc,为后续操作提供实现的平台,(2)在树荐派的摄像头接口上连接摄像头模块,用于将二维码扫描成图片文件存储到树莓派上(3)提供一个可以控制树莓派执行相应功能的按键,本文选用了DVK512板,它集成四个按键,能够满足系统的要求,(4)通过树莓派的申口连接蓝牙模块hc一05,把从二维码中解析的信息传输给用户的手持终端。
2.2软件设计
用电脑运行ssh软件putty远程登陆树莓派,利用电脑上现有的 IO操作、控制树毒派并编写代码,
Test.java及Qr,jar库能够完成二维码信息采集功能。Test文件首先要求树莓派进行每0.1秒进行一次拍照操作并形成图片文件的操作,拍照命令,raspistill一o/home/pi/2.jpg一t1o0接着调用Qr.jar
环。并将该信息写人到一个文本中。
扫猫开启模块
推码扫猫模块
收移日期:2015-0323
维码锅别模块
图1
倍息传输模快
手机APP发布车载降端发有
文章编号:1007-9416(2015)03-0016-01
由于c语言对串口的操作相对iava更为简便,所以树莓派上的串口通信功能用c语言完成。c语言文件write.c设置9600mhz波特率,将文本中的信息读取后通过蓝牙模块发送给手机,
手机端的aPp集成了科大讯飞的语音库因此具有语音插报功能,aPP一经开启持续监听,当检测到串口接收到信息时显示于文本框中。当信息的前缓是特定的字符时会调用语音库完成特定插报功能,如定义time前缓功能一—time:10000(该停车场免费停车时间为 10秒),app提取后续的时间值10s,在停顿10s后播报提示内客:停车场免费时间已到。类似功能可以根据用户需求自行定义。
2.3流程控制
为了实现自动控制,需要将树莓派制作成一个电器,树荐派通电后必须自动执行以下两个步骤:
(1)自动登陆。
在linux系统下输人sudonano/etc/inittab
修改1:2345:respawn:/sbin/getty 115200 ttyl
为1:2345:respawn:/bin/login f pi ttyl /dev/ttyl 2>&1
(2)自动运行缩写的程序。在/etc/rc.local文件最后一行加人命令sudo/home/pi/keyrasp启动keyrasp
keyrasp是调用在DVK512中的按键控制程序。定义了1号按键按下时执行Test文件。按下该按键时由keyrasp调用linux命令的方法如下:system("相应命令")在linux命令行下执行包含jar库的java 文件,用java一cp/home/pi:/home/pi/Qr.jar:Test.java代替"相应内容"即可,
前文提到的Test控制摄像头拍照操作是通过在java内调用 linux命令实现。Java语句如下:Processprocess=Runtime, getRuntime0.exec("相应命令"),程序运行时每0.1s拍摄一张照片并对图片的二维码信息进行解析,解析到信息后就跳出循环并生成文本文档,在Test.java中调用linux命令sudo/home/pi/write执行口通信程序write。随后app就能接收到相应消息并完成特定功能。
3结语
本文创新性地采用将二维码喷绘在地面的方式,将二维码应用于交通和公共生活服务领域。系统在研发过程中结合了现代软件工程理论和智能手机应用,充分考虑二维码应用的可拓展性和车主行为习慎,将二维码的识别与汽车结合,使用户能够在车内自动获取公共信息,具有非常大的实用价值,通过实践应用和测试结果表明,
该系统能够识别二维码信息,并满足时间和准确度的要求。参考文献
[1]周晓伟.二维条码识别技术研究[D].上海交通大学,2007
作者简介:杨危炜(1994一),男,安微合靶人,本科在读,学生,研究方向:计算机技术,信息技术