李伟 0707050213 毕业论文

更新时间:2024-05-05 18:48:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

哈尔滨理工大学学士学位论文

邮件快速分拣系统的设计与实现

摘要

本文以VC++6.0和SQL server 2005为基本开发工具完成了邮件快速分拣系统应用软件部分的设计与实现,基于射频识别技术对系统硬件部分进行了研究与设计。

在应用软件部分,本文首先给出了系统的总体设计然后介绍了对该系统数据库方面的设计工作,并给出了数据库的相关设计信息,其中包括数据库的配置信息和数据表的设计等。接着本文介绍了在VC++6.0环境下对软件系统各功能部分的设计与实现,并包括了必要的代码信息和系统各部分的运行界面。在软件部分的实现过程中,本文还给出了设计与实现步骤。最后本文通过少量数据对系统的剩余功能进行了基本的检测。

在硬件部分,本文主要对相关硬件如相机、图像采集卡,PC机等进行了研究和介绍。在相机标定技术方面本文研究了相关的算法;在视觉跟踪方面研究了多假设跟踪法;在射频识别技术方面进行了硬件设计和软件设计的相关研究。

通过上机调试,本系统作为邮递系统的工业自动化的一个环节在应用上有着较好的实用意义,在理论上也有一定的参考价值。

关键词 分拣;函数;数据库;工业机器人; RFID

- I -

哈尔滨理工大学学士学位论文

The Design and Implementation of the Fast Mail

Sorting System

Abstract

In this paper, we use VC + +6.0 and SQL server 2005 as the basic tools to complete the software part of the Fast Mail Sorting System, and use the technology of RFID to complete the hardware part of the Fast Mail Sorting System.

In the software part, the paper first gives the general design of the system and then describes the design of databases, and gives the design. then this paper describes functional part of software system’s design and implementation in the environment of VC + +6.0, and include the necessary code information and part of the operating system interface. In the implementation of the software part the paper also gives the design and implementation steps. At last, we used small amount of data on the system to test the basic functions of detection.

In hardware, this article mainly related hardware such as cameras, image acquisition card, PC machines and so on to study and introduce. In camera calibration technology, this paper studies the relevant algorithm; in the visual tracking this paper studies the multi-hypothesis tracking method; in radio frequency identification technology, this article researches in hardware design and software design.

Through the machine debugging, the system as a part of postal system’s

automation has a good practical sense in applications, in theory, there is a certain reference value too.

Keywords Sorting; Function; Database; Industrial robots ; RFID

- II -

哈尔滨理工大学学士学位论文

目录

摘要 ...................................................................................................................... I Abstract ............................................................................................................... II

第1章 绪论 ........................................................................................................ 1 1.1 课题背景 ................................................................................................... 1 1.2 相关研究状况介绍 ................................................................................... 1 1.3 论文的主要工作与结构 ........................................................................... 1 第2章 系统分析与总体设计 ............................................................................ 3 2.1 系统需求分析 ........................................................................................... 3 2.2 系统应用软件体系结构设计 ................................................................... 3 2.3 系统数据库设计 ....................................................................................... 4 2.4 本章小结 ................................................................................................... 5 第3章 系统应用软件模块设计 ........................................................................ 6 3.1 工程框架设计 ........................................................................................... 6 3.1.1 设置工程主界面 ................................................................................ 6 3.1.2 为表添加类 ........................................................................................ 7 3.1.3 设计登录模块 .................................................................................... 9 3.2 邮件分拣信息处理模块设计 ................................................................. 11 3.2.1 邮件信息添加对话框设计 .............................................................. 11 3.2.2 手动输入与查询对话框设计 .......................................................... 12 3.2.3 自动输入模块 .................................................................................. 13 3.3 分拣箱信息管理模块 ............................................................................. 13 3.3.1 分拣箱信息添加对话框 .................................................................. 13 3.3.2 分拣箱信息编辑对话框 .................................................................. 14 3.3.3 信息说明 .......................................................................................... 15 3.4 系统用户管理模块 ................................................................................. 15 3.4.1 用户信息编辑对话框 ...................................................................... 15 3.4.2 用户管理对话框 .............................................................................. 15 3.4.3 密码修改对话框 .............................................................................. 16 3.5 本章小结 ................................................................................................. 16 第4章 系统硬件部分 ...................................................................................... 17 4.1 系统的硬件组成 ..................................................................................... 17 4.1.1 CCD相机 .......................................................................................... 17 4.1.2 镜头 .................................................................................................. 18 4.1.3 采集卡 .............................................................................................. 18

- III -

哈尔滨理工大学学士学位论文

4.1.4 PC机 ................................................................................................. 19 4.1.5 主动式RFID阅读器 ....................................................................... 19 4.1.6 Motocom机器人 .............................................................................. 19 4.2 相关硬件算法及技术 ............................................................................. 20 4.2.1 相机标定技术 .................................................................................. 20 4.2.2 目标检测 .......................................................................................... 22 4.2.3 视觉跟踪的多假设法(MHT) ..................................................... 22 4.3系统模拟运行 .......................................................................................... 23 4.4本章小结 .................................................................................................. 24 结论 .................................................................................................................... 25 本文主要工作 ................................................................................................ 25 对后续工作的展望 ..................................................................................... 25 致谢 .................................................................................................................... 26 参考文献 ............................................................................................................ 27 附录 .................................................................................................................... 29 附录 A ........................................................................................................... 29 附录 B 参考英文文献 ................................................................................. 30 附录C 英文参考文献(翻译) .................................................................. 40

- IV -

哈尔滨理工大学学士学位论文

第1章 绪论

1.1 课题背景

随着经济的发展,我国的大中城市的邮件投递数量也在急剧增长,在我国的多个邮件处理中心中,普遍存在生产效率低下的现象,对采用技术创新提高生产效率有着迫切的需求。本文根据RFID技术的特点,通过引入工业机器人的方法,结合我国目前邮政业务的实际,设计了基于RFID技术的邮件快速分拣系统。

1.2 相关研究状况介绍

分拣系统的主要任务是把要分拣的物品按照业务品种、邮件种类或地址等信息进行分离,使同种类或同目的地址的邮件进入同一存储位置。自动分拣设备中的邮件信息识别方式对设备的工作效率、业务流程的复杂程度、运营成本和业务的柔性拓展具有重要意义。目前世界上的自动分拣系统普遍采用二维条码和三维条码为邮件特征信息的载体,通过对条码的识别获取邮件相关信息 。以条码作为信息载体的邮件分拣作业流程复杂,需逐件扫描才能进行邮件信息获取,因此工作效率低。射频识别技术(下文简称RFID)是上个世纪末出现的新型自动识别技术,它将大规模集成电路与无线通讯技术相结合,实现了存储信息的快速、非接触式识别。相对于条形码技术,利用RFID设备可实现信息的非接触、可擦写、远距离的识别,且信息交换容量大,可实现集中读写,一次进行多个单体信息识别。鉴于自身的特点,RFID技术在现代物流系统中被广泛应用。

目前世界上的邮件分拣系统大部分采用载物小车的方法用于邮件在传送带上的运输,但这种方法在面临大物流量的时候,就会出现分拣效率与系统维护成本的矛盾。本文介绍的系统采用了工业上已经成熟的机器人技术保证了系统运行的效率,并有效的降低了系统维护费用[1]。

1.3 论文的主要工作与结构

基于RFID技术的邮件快速分拣系统的开发和研究,本文主要章节与内容包括:

第一章:绪论。着重阐述了课题研究的目的意义及内容。

第二章:系统分析与总体设计。主要是对系统的应用需求分析进行阐

述以及对系统软件的总体规划与数据库的设计进行具体研究

- 1 -

哈尔滨理工大学学士学位论文

设计。 第三章:系统应用软件部分。主要介绍软件各部分的功能和设计(包

括部分的代码实现)。

第四章 :系统硬件部分。具体介绍本系统采用的各种硬件,以及相关

硬件技术采用的算法。

总 结:总结与展望。总结了本文主要工作,提出了本研究尚存的不 足之处与后续工作展望。

- 2 -

哈尔滨理工大学学士学位论文

第2章 系统分析与总体设计

2.1 系统需求分析

进入21世纪以来,随着网络等新兴技术的发展,我国的邮件传送产业快速发展,此时传统的邮件分拣方法已经严重拖累了整个邮件系统的运行效率,由此催生了邮件快速分拣系统的产生与发展。

现在邮件自动分拣技术已经得到了初步发展,但是或者运行十分复杂或者维护费用较高,对于一些小的邮寄网点仍然不适用,本文研究的邮件快速分拣系统适用于中小规模的邮寄网点,系统使用维护均十分简单方便。

邮件快速分拣系统的用户主要是邮局或者快递公司的从业人员,其中分拣系统应该至少包括一名管理人员和若干员工,本系统主要实现邮件分拣信息管理、分拣箱信息管理以及用户管理等功能,具体功能如下:

(1)邮件分拣信息的添加、修改、删除、查询和打印功能。其中的添加功能分为自动输入和手动输入两种,其余功能均为手动输入。

(2)邮件分拣箱信息的添加、修改与删除。此功能与具体的系统硬件相关,为系统分拣箱的添加、去除或者内容更改提供依据。

(3)用户信息的管理[2]。

2.2 系统应用软件体系结构设计

本节将根据需求分析中总结的用户设计系统应用软件部分的体系结构。系统的功能模块如图2-1所示。

在功能模块的树状结构中,每个叶节点都是一个最小的功能模块。每个功能模块都需要针对不同的表完成各种数据库操作包括记录的添加、删除、显示,查询或者直接启动相关的系统硬件进行工作。

在系统设置模块中,主要实现整个系统的运行、暂停与退出。并且当用户选择了开始运行后系统的硬件部分已经开始工作,但此时必须对下一模块进行相应的选择后整个系统才能真正开始工作。

邮件分拣信息处理模块主要实现邮件信息的输入、修改、删除、显示、与打印功能。选择自动输入模块后,系统的运行将实现完全自动化,当邮件信息读入失败或者希望获得已分拣邮件的信息时可以选择手动输入与查询模块。

分拣箱信息处理模块实现系统硬件的分拣箱方面的信息管理,属于系

- 3 -

哈尔滨理工大学学士学位论文

统设置。在这个模块中主要是对分拣箱信息进行添加、修改与删除操作。 在本系统中,用户管理模块的功能比较简单。用户分为系统用户和普通用户两种,系统用户可以创建用户、修改用户以及删除用户,普通用户只能修改自己的用户名和密码,他们的密码统一默认为123(用户可以进入密码修改模块进行修改)。

图2-1 快速邮件分拣系统功能模块示意图

2.3 系统数据库设计

数据库是软件总体设计非常重要的环节,好的数据库结构可以简化系统软件部分的开发过程,使得系统功能更加清晰明确。本系统采用的数据库命名为Postals。

数据库包括3个表。即邮件分拣信息表 Postals、邮件分拣箱信息表 Boxes、和用户信息表 Users。下面介绍这些表的结构。

(1)邮件信息表 Postals,用来保存邮件的各种信息。表结构如表2-1所示:

编号 1 2 3 4 5 表2-1 表Postals的结构 字段名称 数据类型 Pid varchar(30) PostDate varchar(20) BeginPlace varchar(20) PostPlace varchar(20) Postid varchar(20) 说明 邮件编号,主键 邮寄日期 邮件发出邮编 邮件接收地邮编 邮件分拣箱编号 (2)用户信息表Users,用来保存系统用户信息,结构如表2-2所示:

- 4 -

哈尔滨理工大学学士学位论文

编号 1 2 3 表2-2 表Users的结构 字段名称 数据类型 UserName varchar(40) UserPwd varchar(40) UserType varchar(20) 说明 用户名,主键 密码 用户类型 (3)分拣箱信息表Boxes,用来保存系统分拣箱的信息。表结构如表2-3所示:

编号 1 2 表2-3 表Boxes的结构 字段名称 数据类型 BoxId varchar(20) BoxName varchar(40) 说明 分拣箱编号 分拣箱编号 对应的邮编 其中在BoxName字段中,由于本系统的测试数据邮寄地址的设计是基于我国内陆地区省级行政单位的,所以只需输入对应的邮政编码的前两位(在我国邮政编码中前两位代表省级新行政单位,有的省级行政单位对应的邮编前两位有多个的应该输入最小的一个,省级单位对应的邮编前两位简明表可见附录A),本系统若用于其他具体单位时,应根据具体情况对此字段进设计。

这三个数据库表均为保存系统必要的信息而设计,在实际运行时应该做好数据库的维护和备份工作。这些工作虽然普通,但对于系统安全运行却是不可缺少的,做好维护工作可以保证系统的工作效率,做好备份工作,可以在数据因为不可抗拒因素遭到损毁时使系统得到及时恢复。

2.4 本章小结

本章首先介绍了系统的总体需求分析然后对应用软件部分的总体结构进行了设计,并以图的形式对每个功能模块进行了说明。最后对系统使用的数据库进行了介绍并给出了相关的设计信息。

- 5 -

哈尔滨理工大学学士学位论文

第3章 系统应用软件模块设计

3.1 工程框架设计

3.1.1 设置工程主界面

本系统的应用软件部分是一个基于对话框的工程,工程名设置为PostalSp。主对话框的属性如表3-1所示:

属性 Caption Minimizie Box 表3-1 设置主对话框的属性 设置值 说明 邮件快速分拣系统 对话框的标题条文本 选中 激活最小化按钮 在工程中添加ADO Data和DataGrid控件,然后依次添加DataCombo控件及DataList控件。向工程中添加类ADOConn类,注意在ADOConn.cpp中将连接字符串中“Database=”设置为“Database=Postals”,“Server=”设置为“Server=PC-201103201322”(设置服务器为本体服务器,具体应用本系统时要根据具体情况进行设置)。在类CDataGrid中添加成员函数GetItem(),用于从DataGrid表格中读取数据[3]。制作一个背景图片作为Bitmap资源加入到工程当中。

设置主页面中的菜单。在工程中添加“Menu”资源,创建一个新的菜单,并对菜单项的属性进行设置。属性设置如表3-2所示:

标题 系统设置 ?开始运行 ?暂停运行 ?退出系统 邮件分拣信息管理 ?自动输入 ?手动输入与查询 分拣箱信息管理 ?信息设置 ?信息说明 系统用户管理 用户管理 密码修改 表3-2 菜单IDR_MENU1的属性 ID属性 IDR_BEGIN IDR_PAUSE IDR_EXIT IDR_AUTO IDR_MANUAL IDR_BOX IDR_READ1 IDR_USER IDR_PWD - 6 -

哈尔滨理工大学学士学位论文

打开默认主对话框的属性窗口,在MENU组合框中选择IDR_MENU1,运行系统,可以看到系统的主界面如图3-1所示:

图3-1系统主界面示意图

为菜单项IDR_EXIT添加代码,对应函数为CPostalSpDlg::OnExit(),代码如下:

void CPostalSpDlg::OnExit() { exit(0); }

程序调用exit(0)函数关闭对话框,退出系统。

从系统界面上可以看到,由于本系统面对的是中小规模的邮寄业务,所以功能较为简单,仅仅设置了一些必须的功能。这对于使用人员的培训和使用都将十分有益。

3.1.2 为表添加类

本文为系统数据库的每一个表都创建了一个类,类的成员变量对应类的列,类的成员函数是对成员变量和表的操作。在系统中为各个表添加相应的类,并设置类名,类的命名规则是大写字母“C”加上表名,例如表Users对应的类名就是CUsers。

- 7 -

哈尔滨理工大学学士学位论文

在通常情况下类的成员变量与对应的表的列名相同。绝大多数成员函数的编码格式都是非常相似的,所以本节中只介绍每个类的成员函数的基本功能,并不对所有的成员函数进行具体的代码分析。 3.1.2.1 CPostals类

CPostals类用来管理表Postals的数据库操作,它的成员函数如表3-3所示。

成员函数声明 CPostals() int HaveName() 表3-3 CPostals类的成员变量 具体说明 初始化成员变量 判断指定的邮件编号是否已经在数据库中,参数cPid表示指定的邮件的编号。返回-1表示不存在,返回1表示存在 读取邮件编号为cPid的邮件的所有信息 删除指定的邮件记录。参数cPid表示要删除的邮件的编号 修改指定的邮件记录。参数cPid表示要修改的邮件的编号 插入新的邮件记录 设置邮件编号 获取相应的邮件编号 设置邮件邮寄日期 获取邮件邮寄日期 设置邮件发送地邮编 获取邮件发送地邮编 设置邮件接收地邮编 获取邮件接收地邮编 设置邮件分拣箱编号 获取邮件分拣箱编号 void GetData() void sql_delete() void sql_update() void sql_insert() void SetPid() CString GetPid() void SetPostDate() CString GetPostDate() void SetBeginPlace() CString GetBeginPlace() void SetPostPlace() CString GetPostPlace() void SetPostid() CString GetPostid() 在HaveName()函数中程序使用m_AdoConn.GetRecordSet()函数执行SELECT语句,将结果返回到m_pRecordset对象中。如果m_pRecordset->adoEOF等于-1,则结果集为空;否则表示记录中存在指定的邮件编号。 3.1.2.2 CBoxes 类

CBoxes类用来管理表Boxes的数据库操作,他的成员函数如表3-4所示:

- 8 -

哈尔滨理工大学学士学位论文

函数名 CBoxes() void SetBoxId() void SetBoxName() CString GetBoxId() CString GetBoxName() int HaveName() void sql_insert() void sql_update() void sql_delete() 表3-4 CBoxes类的成员函数 具体说明 初始化成员变量 设置分拣箱编号 设置分拣箱对应的邮编 返回分拣箱编号 返回分拣箱对应的邮编 判断指定分拣箱是否存在 插入新的分拣箱记录 修改指定的分拣箱记录 删除指定的分拣箱记录 3.1.2.3 CUsers类

CUsers类用来管理表Users的数据库操作,它的成员函数如表3-5所示:

函数名 Cusers() void sql_insert() void sql_update() void sql_delete() void sql_updatePwd() void SetUserType() void SetPwd() void SetUserName() CString GetUserName() CString GetPwd() CString GetUser_type() 表3-5 CUsers类的成员函数 具体说明 初始化成员变量 插入新的用户记录 修改指定的用户记录 删除指定的用户记录 修改指定用户的密码 设置用户类型 设置用户密码 设置用户名 获取用户名 获取用户密码 获取用户类型 类的设计是VC++设计工作的重点之一,除了以上三个针对数据库表的类,在设计过程中对于系统的对话框或者系统资源的使用等都要涉及到类的设计与调用,合理的成员函数设计以及恰到好处的成员变量加入对于系统各功能的实现极其重要,做好类的设计工作将十分有利于系统下一步的设计工作。

3.1.3 设计登录模块

登陆界面是系统自我保护的第一层防线,他的设计与系统用户直接相关。用户要使用本系统,首先必须通过系统的身份认证,这个过程叫做登陆。本节将介绍登录模块的实现过程。

当前用户的数据应该是全局有效的,在工程的任何位置都可以访问

- 9 -

哈尔滨理工大学学士学位论文

它。添加一个类CGlobal,用于保存全局变量。在CGlobal.h和CGlobal.cpp中添加如下代码: #include “Users.h” CUsers curuser;

在StdAfx.h中添加: #include” CGlobal.h”.因为StdAfx.h包含在很多程序中,这样这些程序就可以直接访问curuser对象了。在访问之前添加如下命令:extern CUsers curuser; 引入外部变量。

添加一个对话框,属性设置如表3-6所示:

属性 ID Captiion Font name Font size 表3-6 设置主对话框的属性 设置值 具体说明 IDD_LOGIN_DIALOG 对话框的ID值 登录对话框 对话框的标题条文本 宋体 设置对话框的字体 9 设置对话框的字号 系统运行时的登陆对话框如图3-2所示:

图3-2 登陆对话框的界面

按照如图所示添加控件,注意在密码控件中选中编辑框的Password属

性,这样用户在输入数据时编辑框只能显示“*”。为对话框建立一个类,并给两个编辑框分别制定一个成员变量m_UserName和m_Pwd.最后在主对话框中添加CPostalSpDlg::OnInitDialog()函数,使对话框在启动时首先打开登陆对话框。代码如下: LoginDlg dlg;

if (dlg.DoModal()!=IDOK) { exit(0); } else

curUser.GetData(dlg.m_UserName);

程序将打开登录对话框,如果用户不是通过单击“确定”按钮关闭对话框则调用exit(0)函数关闭对话框。在登录对话框的代码中,用户只有通

- 10 -

哈尔滨理工大学学士学位论文

过身份验证后才能调用exit(0)函数关闭对话框。因此可以判断,如果 dlg.DoModal()的返回值为IDOK,则表示用户已经通过了身份验证。为了保护系统的安全,我们默认每个用户最多只能连续登陆3次,超过3次系统将在提示用户后自动退出[4]。

3.2 邮件分拣信息处理模块设计

邮件分拣信息处理模块包括“手动输入与查询”和“自动输入”两部分。前者主要用于邮件信息无法正常读取时人工输入信息以及对邮件分拣信息的添加、修改、删除和打印功能。后者则是启动相关的分拣算法,使邮件信息随着系统硬件的运行自动输入信息到数据库中。

3.2.1 邮件信息添加对话框设计

此对话框主要用于添加邮件分拣信息和修改指定的邮件分拣信息。系统运行时,此界面如图3-3所示:

图3-3 邮件分拣信息添加框

按照上图所示添加各种控件之后,并设置相应的属性值,如表3-7表所示:

控件类型 Edit Box Edit Box Edit Box Edit Box Edit Box Button Button 表3-7 控件属性设置表 属性 属性值 说明 ID IDC_PID_EDIT 编辑邮件编号 ID IDC_POSTDATE_EDIT 编辑邮寄日期 ID IDC_PPLACE_EDIT 编辑邮件发出地址邮编 ID IDC_GPLACE_EDIT 编辑邮件接收地邮编 ID IDC_CID_EDIT 选择邮件分拣箱编号 ID IDOK 确定按钮 Caption 确定 ID IDCANCEL 取消按钮 Caption 取消 - 11 -

哈尔滨理工大学学士学位论文

最小二乘法可以很容易求出上述线性方程组的解。采用更多的己知点,可以使方程的个数大大超过未知数的个数,用最小二乘法求解可以降低误差造成的影响,求得透视变换矩阵后,对其分解可得摄像机的内外参数[9]。

4.2.2 目标检测

上一节解决了目标的图像坐标与世界坐标之问坐标变换的问题,但是如何确定图像中哪些部分是目标没有解决。本节将解决这个问题。目标检测的方法有多种,本节介绍的是基于运动的背景差分法。

背景差分法提取目标是由Wren等人于1997年提出的,该方法首先拍摄一幅工作场景中没有目标出现时的图像作为背景.在工作场景中有目标出现的时候,使用当前拍摄的图像与事先学习得到的背景图像进行相减的运算,这样由于不包含目标的区域的像素灰度值与背景对应区域的灰度值相等或很相似,而包含目标的区域像素的灰度值与背景图像对应区域的灰度值有较大的差别,相减运算之后,就可以得到当前图像与背景图像之间的一个差值图像。如果差值大于一定的阈值,则认为发现目标。

采用简单的减法来检测目标.很容易受到自然光照变化以及系统外部干扰的影响。因此采用背景差分法检测耳标的难点在于背景模型的选择与背景的更新。常用的背景建模及更新方式主要有以下几种:平均值法、中值法、运动平均法、单高斯模型法、核密度估计法等。目前,背景差分主要有两个发展方向;一个方向是对像素过程的建模不断完善,并不断发展快速算法;另一个方向是在基本背景差算法的基础上结合其他信息,提高检测的鲁棒性[11]。

4.2.3 视觉跟踪的多假设法(MHT)

按照不同的标准可将视觉跟踪问题分为多种类型。根据摄像机和场景中的目标是否运动将跟踪问题划分为四种类型:摄像机静止--目标静止,摄像机静止--目标运动,摄像机运--目标静止,摄像机运动--目标运动。根据场景中目标的数目将跟踪问题分为:单目标跟踪与多目标跟踪。对于这些不同的类型的问题,需要不同的分析方法与算法。本文讨论的是摄像机静止--目标运动的多目标跟踪问题,采用的是多假设法。

MHT算法是由Reid于1979年首先提出的。在数据关联发生冲突时,MHT算法形成多种假设,并把多个假设继续传递,让后续的观测数据解决这种不确定性。

MHT的流程可以大体分为两个步骤:数据关联以及航迹维护。数据关联是将读入的扇扫数据按照其所处的波门和已有的Track进行关联。要求把所有落在波门内的扇扫数据和相应的Track都关联起来,暂时不考虑Track的质量。

- 22 -

哈尔滨理工大学学士学位论文

需要注意,某个数据和其对应得Track关联起米,并不等于说该数据就是这个Track中目标的新观测,有可能该数据是虚警,也有可能该数据是一个新目标的起始,这些问题的最终确定需要等到航迹维护时进行。这反映了MHT的基本思想:把困难的数据关联操作推后,等到获取更多的观测数据后再进行。

如果扇扫数据没有落在任何一个波门内,则该数据直接产生一个新的Track。另一方面,如果在Track的波门内没有观测数据,则利用预测技术将Track外推,并形成新的波门。

航迹维护的作用是把数据关联步骤中形成的粗略关联细化,消除其中的冗余和不确定性[15]。

4.3系统模拟运行

完成以上软件设计和硬件及硬件技术和算法的研究之后,我们就可以给出本系统的模拟运行流程图了,如图4-2所示。

失败

登陆 成功 开始运行 RFID 阅读器 有邮件 无邮件

读取数据

暂停运行 失败 自动输入 成功 失败 启动相机

成功

手动输入 机器人

抓取 成功 失败 退出系统

图4-2 系统模拟运行流程图 如图所示,首先我们要登录系统,如果用户名或密码不正确次数达到三次系统将自动退出。登陆成功后点击系统设置模块的开始运行和邮件信

- 23 -

哈尔滨理工大学学士学位论文

息处理模块的自动运行按钮后启动相关硬件,RFID阅读器将自动检测一段时间内有无邮件存在,如果没有,系统将自动退出。检测到邮件后,RFID阅读器将自动读取邮件标签信息,并将数据传送给PC机,这时软件系统会尝试自动输入读取到的数据,成功后将启动机器人捡取邮件,若失败将暂停运行改由工作人员手动输入数据,并启动机器人捡取邮件。若机器人启动成功系统将以此往复直至邮件分类捡取完毕。若失败,系统将自动退出,待工作人员解决了所有问题后再人工启动器系统。

4.4本章小结

本章主要介绍和研究了系统要用到的一些硬件与算法并给出了理论上的系统模拟运行,由于客观条件所限,本文对这些内容的研究大部分只限于理论方面,具体应用时必然还会遇到一些新问题,这就需要后续的研究人员来解决。此外本文采用Motocom32控制机器人运动,但是Motocom32使用并不十分特别方便,并且只可适用于Motoman机器人。因此后续工作可考虑跳过Motocom32,研究基于运动控制卡的机器人运动控制。

- 24 -

哈尔滨理工大学学士学位论文

结论

本文主要工作

本文围绕一个工作于传送带上的邮件分拣系统,主要研究了以下内容:

本文研究了该系统的系统体系结构和数据库。以图表的形式给出了本系统的体系结构并对本系统要实现的功能给出了大体的介绍。研究了系统的数据库设计,并给出了数据库的详细设计数据。

本文研究了邮件自动分拣系统软件部分的设计与实现。研究了系统软件各模块的实现过程,介绍了各模块的主要功能,并给出了部分的程序代码。

本文研究了系统主要的硬件设施。研究了各硬件的性能与参数,并对他们进行了初步的介绍。

本文研究了系统硬件部分用到的一些算法。这些算法包括:相机标定技术方面的直接线性法;目标检测方面的背景差分法以及视觉跟踪方面的多假设法。

对后续工作的展望

软件数据测试方面,由于条件所限测试数据 数量较少,为了加强系统稳定性,后续工作应该采用大数据量对系统进行检测和改进。

由于条件限制,本文所述系统采用单个相机(单目),只能抓取高度尺寸已知的目标。如果采用立体视觉相关算法,系统将能自动适应高度未知的目标,因此后续可研究立体视觉算法。

在目标检测方面,本文采用的背景差分法未进行背景维护,为了使系统更稳定的工作,后续工作需完成背景维护的研究。

本文采用Motocom32控制机器人运动,但是Motocom32使用并非特别方便,并且只可适用于Motoman机器人。因此后续工作可考虑跳过Motocom32,研究基于运动控制卡的机器人运动控制。

在系统软硬件结合方面,由于客观条件所限,本文给出了系统的模拟运行过程并为这部分预留了相关接口,后续工作应该在条件允许的前提下完全实现这部分。

- 25 -

哈尔滨理工大学学士学位论文

致谢

四年的时光匆匆而过,我的本科阶段的学习和生活即将结束了。在即将毕业之际,首先衷心感谢各位任课老师几年来在学习、生活上给予的指导和关怀,其中要特别感谢我的毕业设计指导教师李善强老师,从课题的确定到研究方法的选择都给了我极大的帮助。在本科学习中各位老师对科研工作认真严肃、精益求精的态度以及踏实勤恳的工作精神都给我留下了深刻的印象,这些无疑将成为我受益终生的宝贵财富。在此衷心祝愿各位老师工作顺利、合家欢乐!

在各位同学默契配合和大力支持下,我顺利完成了学士学位论文。特别要感谢杨忠胜同学在整个科研和论文写作阶段给予的帮助。

衷心感谢所有曾关心我、帮助我的师长、朋友和同学们,你们使我在哈尔滨理工大学求学经历更加美好,终生难忘。

我还要深深感谢我的父母,感谢他们多年来所给予我的无私关爱和支持。

李伟

2011年六月于哈理工

- 26 -

哈尔滨理工大学学士学位论文

参考文献

1 王建军,李刚园. 基于RFID技术的邮件分拣模式设计. 上海第二工

大学. 2008年2月:1~4

2 启明工作室. Visual C++ + SQL server 数据库应用实例完全解析.

人民邮电出版社. 2006年4月: 99~138

3 启明工作室. Visual C++ +SQL server 数据库应用系统开发与实例.

人民邮电出版社. 2004年7月: 276~328

4 梁建武,陈英. Visual C++程序设计实验指导与实训. 中国水利水电

出版社. 2006年7月: 1~44

5 杜荣. 基于机器视觉的工业机器人分拣系统的研究. 南京林业大学

硕士学位论文. 2009年6月: 6~60

6 贺地求,龚天军,廖平. 基于射频识别技术的零件分拣系统. 中南

大学. 2005年7月: 1~4

7 王永亮. 基于视频的集装箱号码识别方法的研究与实现. 大连海事

大学硕士学位论文. 2010年6月: 6~52

8 杨公建,刘勇,韩建松,霍华. 室内RFID网络跟踪算法研究. 计算

机工程与运用. 2010. 46(36): 1~6

9 黄己酉. 基于单片机的条形码识别系统在仓储管理中的应用. 华东

交通大学: 1~2

10 焦恩璋,杜荣. 工业机器人分拣技术的实现、 控制与检测. 1001—

2265(2010)01—0084—04: 1~5

11 Lei zhang, Wei xing Su, Kun yuan Hu, Lian bo Ma. Design of a

Cigarette Sorting System Based on RFID Technology. IEEE. 2008年: 1~5

12 张鹏,沈敏德,范维华. 基于Profibus—DP的塔式卷烟自动分拣机

的设计应用. 烟草科技. 2007. 第3期: 1~3

13 Ting Zhang, Yuan xin, Ou yang, Chao, Li, Zhang, Xiong. A Scalable

RFID-Based System for Location-Aware Services. IEEE. 2007: 1~7 14 田景贺,范玉顺,朱云龙,胡琨元. 基于RFID的烟草物流分拣系

统设计. 仪器仪表学报. 2006年6月. 第27卷第6期增刊: 1~5

15 袁阿勇. 新型智能化货物分拣系统的研究与开发. 武汉理工大学硕

士学位论文. 2006年11月: 6~72

16 Xiu fang, SUN, Li ZHENG. Reliability Analysis of a Novel Structure

- 27 -

哈尔滨理工大学学士学位论文

in an Automatic Sorting System. IEEE. 2010: 1~3

- 28 -

哈尔滨理工大学学士学位论文

附录

附录 A

行政单位 北京 天津 山西 辽宁 黑龙江 安徽 浙江 福建 湖北 广西 四川 云南 甘肃 青海 西藏 广东 香港 省级行政单位邮编(前两位)简明表 邮编(前两位) 行政单位 10 上海 30 内蒙古 03/04 河北 11/12 吉林 15/16 江苏 23/24 山东 31/32 江西 35/36 湖南 43/44 河南 53/54 贵州 61/62 重庆 65/66/67 陕西 73/74 宁夏 81 新疆 85 海南 51/52 台湾 暂无 澳门 邮编(前两位) 20 01/02 05/06/07 13 21/22 25/26/27 33/34 41/42 45/46/47 55/56 63/64 71/72 75 83/84 57 暂无 暂无

- 29 -

哈尔滨理工大学学士学位论文

附录 B 参考英文文献 Design of a Cigarette Sorting System Based on

RFID Technology

Leizhang, Weixing Su, Kunyuan Hu, Lianbo Ma

Key Laboratory of Industrial Informatics

Shenyang Institute of Automation, Chinese Academy of Sciences

Shenyang 110016, China

Abstract

This paper presents a design method to solve the problems of high failure rate and sorting inefficience in the current cigarette sorting system by integrating RFID technology with CAN BUS. Based on the features of high speed of data transmission, real-time and high reliability, CAN BUS intelligent node is designed. RFID technology enhances the speed and efficiency of cigarette identification. Meanwhile, using the LCD touch-screen and MCGS configuration software, the HMI operation is promoted and the visualization of monitoring processing can also be accomplished.

Keywords RFID; CAN BUS; configuration software; AVR MCU

I.INTRODUCTION

The cigarette sorting system is the core of the logistics and distribution. Every modern logistics distribution center depends on the sorting technology and it’s method. Constructing an advanced sorting system with effective throughput can not only save tens, hundreds or even tens of millions of cost, but also improve efficiency, significantly reducing the labor intensity of the workers.

Traditional cigarette sorting system collects data by barcode with a low-cost, easy to read and reproduce. However, the bar code and optical scanning are easily affected by dust, oil and other pollutions in the sorting field, and

- 30 -

哈尔滨理工大学学士学位论文

traditional data transmission of sorting system is use of RS485 bus with the advantage of multi-node support, far distance and highly receiving sensitivity. RS485 bus constitutes the network of single master. The equipment mutual communication can be achieved by the master node. Thus there are the lower throughput, poor real-time and highly difficulties of communications between slaver nodes.

In our work, we introduce RFID technology to replace bar code identification. RFID system is not influenced by dust, humidity, oil, coolant, mining and toxic gases in the production environment. Compared with bar code identification, RFID is a contactless technology that allows objects to be scanned and identified without visual or physical contact[3]. More importantly, the tag data is not only read by RFID readers, but also can be written time and again. Currently the cost of RFID tag is gradually reduced, and the tag which ties up with the cigarette box can be reused. It further reduces the cost of system.

Furthermore, the traditional RS485 bus is replaced by High-speed CAN bus which provides a multi-master hierarchy, broadcast communication, sophisticated error detecting mechanisms and re-transmission of faulty messages . These feathers allow building intelligent and redundant systems ,which guarantee data integrity and real-time data transmission.

With the deployment of RFID middleware and ERP/SCM software platform, the ultimate goal of integration of the tobacco supply chain logistics enterprise system will be achieved.

- 31 -

哈尔滨理工大学学士学位论文

II. SYSTEM ARCHITECTURE DESIGN

There are 50 sorting positions in our system. As a distribution unit, each position corresponds to a cigarette brand. The RF tag is attached to a tray, which has a unique ID to descript some information of cigarette in details. When the tray moves to a sorting position, RF antenna reads RF tags and collects information to display on LCD. The worker then supplies the cigarettes under the guidance of LCD.

The system is composed of the upper machine and lower machine. In upper machine system, MCGS configuration software configures the CANBUS devices, RFID readers and PLC etc. MCGS is a kind of general software for industrial process control and real-time monitoring service, characterized by improved functions, easy to operate and good visualization[5]. RFID readers retrieve the information from the RF tag by antenna array near the conveyer. RFID middleware/driver completes the data processing and sends data to MCGS monitoring platform. ZLG_PCI9810 intelligent CAN card with standard PCI interface, implementing CAN2.0B protocol, establishes the connections with MCGS configuration software by ZOPC_Server (Based on CAN-BUS general OPC Server)[6]. ZOPC_Server is a kind of OPC server that supports all kinds of ZLG CAN cards. Any client (e.g. KingView, MCGS, Intouch, etc ) that supports OPC protocol can connect ZOPC_Server. It is a bridge that implements the data transmission between CAN card and configuration software.

Lower machine system is constituted of CAN intelligent nodes and LCD touch screens. CAN intelligent nodes receive the tag data from CAN bus and display it on LCD. The workers check against and send commands by touching LCD screen. System architecture is shown in Fig.1.

- 32 -

哈尔滨理工大学学士学位论文

Figure 1 System architecture

III DESIGN OF SOFTWARE

A. Communication protocol

The CAN specification consists of two parts, CAN 2.0Aand CAN2.0B. Stand-alone CAN controller SJA1000 supports both protocols. CAN2.0B provides more powerful error handling capabilities, enhanced acceptance filter and flexible handling of data package. CAN2.0B includes two different frames: standard frame and extendedframe[7]. The former is defined by 11 identifier bits and the latter is defined by 29 identifier bits. Extended frame is 2 bytes more than standard frame, so it will advantage the flexibility of protocol, reliability as well as expansion.

As data needs to be sent from the corresponding antenna to the corresponding work position, the allocation of 29 identifier bits is most important. Identifier can only identify the network equipment and it’s location in the CAN bus.

On the requirements of our communication, we design the protocol below, and each node in the CAN bus transmits information according to the protocol. The protocol is defined as “ID + commands + data”. ID is the identifier of the network nodes, defined as ID18-ID0 (19 bits). ID28 is for direction (DIR), ID27-ID24 identifies RFID readers, ID23-ID22 identifies antenna, ID21-ID19 identifies data type.ID28-ID19 doesn’t participate in the acceptance filter. Data

- 33 -

哈尔滨理工大学学士学位论文

indicates the specific content of communications. The frame format of protocol is shown in Table 1.

TABLE I. THE FRAME FORMAT OF COMMUNICATION PROTOCOLS

ID28 DIR DLC3 ID27-ID24 RFIDReader DLC2 DLC1 Datalength Data5 Data4 DLC0 Data3 Data2 Data1 Antenna DataType Address 0(dataframe) Data0 ID23-ID22 ID21-ID19 ID18-ID0 RTR Data7 Data6 Dataframe(8Bytes) ◎ DIR: DIR decides a half of message priority during bus access, and the remaining priority is defined by nodes address. The lower address has higher priority. When DIR is “1”, address field is target node address (from master to slaver); when DIR is “0”, address field is source node address (from slaver to master).

◎RFID Reader/ Antenna: Each Sense1824 reader equips 4 antennas. There are about 13 readers in our system. So 4 bits is used to identify RFID readers and 2 bits is used to identify antennas.

◎Data Type: The format of data type is shown in Table 2 .

TABLE 2. FUNCTIONAL DEFINITION OF DATA TYPE

Bit 2 0 0 0 1 1 Bit 1 0 1 1 0 1 Bit 0 1 0 1 0 1 Description Name of cigarette Number of cigarette distributing destination Request retransmission when an error occurred (slaver node) Finished signature ◎Address: ID18-ID0 participates in the acceptance filter, which identifies 50 working positions.

- 34 -

哈尔滨理工大学学士学位论文

◎DLC: Data length (1-8). ◎Data: the contents of packages.

B. Development of RFID reader’s driver

MCGS implements the device driver by Active DLL, integrating with the standard OLE interface. Because the device driver and MCGS are running in the same process, the device module achieves the good running and higher reliability, and avoids sluggish data flow and transmission by DDE (Dynamic Data Exchange). Meanwhile, OLE is an expandable standard for achieving interoperability, regardless of what programming language is. Therefore, so long as it compliances with the standard of MCGS interface, VB, VC, Delphi, etc. can implement MCGS device driver.

MCGS divides the actual equipment into 3 parts: independent equipment, father equipment and son equipment. Independent equipment works independently and accomplishes specific data I/O functions; father equipment itself doesn’t handle data I/O, but manages other equipment, such as serial equipment, IDCN-893 communication card, etc; son equipment has the function of handling data I/O, but works depending on corresponding father equipment . RFID reader, Sense-1824, as a son equipment, communicates with MCGS configuration software through the serial communication father equipment.

Our main work focuses on the operating the serial port when developing the RFID reader driver. MCGS encapsules the complex serial port setup, initialization and operation of reading/writing into the serial communication father equipment, therefore, we can evoke standard serial functions provided by father equipment to develop the son equipment driver.

The flow chat that RFID reader collects more tags data is given in Fig. 2. The API functions are described as follows: ScsAntennaReceive:Select a receiving antenna. ScsAntennaTransmit:Select a sending antenna.

- 35 -

哈尔滨理工大学学士学位论文

SaharaListStart:Start the reading tag process. SaharaListReport:Get tag’s data from readers. SaharaListEnd :End the read tag process and turn microwave power off.

Figure 2 RFID reader flow chat

C. The interface of upper machine software

Upper machine software has been implemented by MCGS 5.5, Visual Basic 6.0 and SQL Server2000. The interface of upper machine software is shown in fig. 3. It consists of equipment driver module, data access module, data analysis and processing module, front monitor module and database module. MCGS configuration software manages hardware, schedule processing and also controls the data stream. Depending on the abundant resources of MCGS, some complex functions, such as statistics, reports and phonic warning, etc. can be easily achieved.

- 36 -

本文来源:https://www.bwwdw.com/article/bi2g.html

Top