- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于移动智能终端设备的激光扫码系统
1 usb接口系统
通常的扫描设备包括武器和无线发射装置。武器的北端有一个手柄,手上有一个数据接口。枪的前端是扫描头,它连接到枪的体内的pcb。pcb连接数据接口,数据接口接口端连接到wlangram。这样的系统不仅硬件结构复杂,而且依赖于电脑设备,携带方便,不利于移动办公场所。
本文介绍了一种基于移动智能终端设备实现的激光扫码系统, 携带使用方便, 扫描效果好, 不受环境及人为因素影响, 包括条码扫描传感模块、电平转换模块、信号处理模块、串口驱动模块、JNI模块、扫描服务模块、应用系统模块、显示模块, 电平转换模块。
2 系统结构
2.1 由风险转换的转换
PDF417扫描模组采用模数转换的方法探测条码图像上的黑条和白条, 扫描光被黑条部分吸收, 被白条部分反射, 于是将黑色视觉信号转换为电信号, 再经过整形、滤波, 黑条和白条对应不同的电压值。由于在条和空的分界线处出现较大的电压跳变, 于是它的导数会出现极大值或极小值, 因此使原始扫描信号经过微分滤波器后, 只要探测到大于门限电压的跳变电压就视为一个条空分界线 (边缘信号) 。这样可将模拟信号转化为数字信号, 条码的条空宽度与所得的边缘信号的间距成正比, 然后再使用定时计数器计算条空的宽度比, 完成条码的检测。
2.2 数据条码生成
条码的编码分为数据码字编码、错误纠正码字编码、前后行指示符3部分。将计算得到的码字按表排列即可得到条码的完整码字。
对于一组要编码的数据, 首先按照数据的类别分别应用不同的压缩模式转换为数据码字;然后按照生成条码的行列要求对数据码字进行填充, 使得数据码字加上错误纠正码字后能形成一个矩阵的形式;再按照指定的纠错级别计算错误纠正码字;最后每行的数据码字加上起止符和左右指示符号字符, 按行所对应的簇查找符号字符。这样就将数据转换为符号字符形式, 打印即得条码, 整个数据处理流程如图2所示。
对于原始数据流, 初始化选择合适的行数或列数、纠错等级s, 各变量清零、默认压缩模式为TC模式;完成两个功能, 一个是读取数据信息放入数组, 另一个是根据所读的数据信息判断出需要进行哪一种压缩模式, 确定所选压缩模式后, 再针对不同压缩模式对输入数据信息进行压缩编码。
2.3 支持关系系统可靠性技术
整体系统主要包含以下几个组成部分:
条码扫描传感模块:用于将一维码或二维码转换成处理器能识别的数字信号;
电平转换模块:用于降低条码扫描传感器输出的数字信号电平;
信号处理模块:用于实现数字信号处理和显示;
串口驱动模块:用于获取硬件串口数据, 为上层提供打开串口设备和控制扫描模块启动的方法;
JNI模块:用于控制扫描接口, 把c语言程序转换为java语言程序;
扫描服务模块:用于注册回调接口, 调用JNI模块为上层应用提供服务接口;
应用系统模块:用于提供不同的扫描模式和选择系统UI界面, 显示模块用于显示扫描结果。
系统结构图见图3。
2.4 扫描传感技术
1) 系统可以适配不同的扫描头, 包括新大陆、摩托罗拉、民德、霍尼韦尔等公司的产品。
2) 扫描头可采用“逆向收集” (retro-collective) 的光学设计, 能够提供更大的扫描范围。
3) 条码扫描传感模块、电平转换模块、信号处理模块之间采用串口通信, 每秒可以传输115200 B, 传输效率高。
4) 扫描的启动和关闭是通过控制扫描头的引擎管脚, 增加了电平转换模块的目的主要是考虑到扫描头和处理器之间对高电平的识别不一样。
5) 系统相对复杂的逻辑通过c语言实现, 以提高处理效率。
6) 系统用按键来实现扫描头的启动, 条码扫描传感模块底层控制引擎的启动通过ioctl函数实现。
7) 系统通过ioctl实现对扫描硬件的控制操作, 通过epoll控制对扫描数据的接收, 两者配合实现对硬件底层的接口。
8) 系统硬件相关单独放置在一个服务进程里, 这样减少了代码的耦合度, 也为系统调试提供方便。
9) 系统应用系统模块选择系统UI界面的方法为:不同UI界面对应不同的回调函数, 采用观察者模式, 在串口驱动模块有数据输入的时候, 回调对应的数据给对应的UI界面。
10) 串口驱动模块对扫描数据的侦听采用epoll函数, 用进程阻塞的方式实时获取扫描数据, 提高执行效率。
11) 软件中可适配不同的扫描头, 采用工厂模式, 系统服务模块和应用程序模块可在不同的进程中运行, 这样提高了执行效率, 更加明确模块的功能。
3 传感和显示接口
系统工作流程见图4, 具体步骤如下。
1) 步骤一:打开串口设备, 控制扫描模式;通过串口驱动模块打开条码扫描传感模块, 应用系统模块提供扫描模式。
2) 步骤二:扫描并处理数据;条码扫描传感模块进行条码扫描, 将一维码或二维码转换
原创力文档


文档评论(0)