1、 课程设计说明书 NO.58基于RFID超市管理系统内容摘要超市随着市场经济和现代信息技术的的发展,不可必要的要卷如信息现代化的大潮,如何使用现代化的工具,使企业和经营者个人在最小的投入下获取最大的回报。成为每一个人的梦想.因此,在超市管理中引进现代化的办公软件,就成为时下最好的解决办法。随着管理信息系统理论的实践进一步的发展,随着信息系统的优越性的进一步体现,现代信息化的管理系统代替传统的简单的计算机操作方式是社会发展的一个必然趋势.管理信息系统是对一个组织进行全面管理的人机系统,综合运用计算机技术、信息技术、管理技术和决策技术,与现代化的管理思想、方法和手段结合起来,辅助管理人员进行管理和
2、决策。商业管理信息系统就是融合现代商业经营管理思想和先进的信息处理技术为一体的管理信息系统.关键字:超市管理系统、RFID技术、数据库目 录1。超市管理系统规划。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。31.1现状分析。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。31.2系统目的.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.31.3研究背景。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。32.需求分析.。.。.。.。.。.。.。.。.
3、。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。42。1系统需求。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.42.2功能需求。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.43。RFID 系统实施。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.43。1无线射频识别系统的工作原理。.。.。.。.。.。.。.。.。.。.。.。.54超市管理系统总体设计.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。54.1系统主要功能.。.。.。.。.。.。.。.。.。.。.。
4、.。.。.。.。.。.。.。.。.。64.2应用软件流程。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.64。3应用软件调试过程。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。65源代码.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。106心得体会.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.117参考文献.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。.。121. 超市管理系统规划1。1现状分
5、析最初的超市资料管理,都是靠人力来完成的。但近几年我国超市经营规模日趋扩大,销售额和门店数量大幅度增加,而且许多超市正在突破以食品为主的传统格局,向品种多样化发展。小型超市在业务上需要处理大量的库存信息,还要时刻更新产品的销售信息,不断添加商品信息,并对商品各种信息进行统计分析.因此,在超市管理中引进现代化的办公软件,实现超市庞大商品的控制和传输,从而方便销售行业的管理和决策,为超市和超市管理人员解除后顾之忧。1。2系统目的帮助超市工作人员提高工作效率,帮助超市工作人员利用计算机,极为方便的对超市的商品进行等有关操作,使杂乱的超市数据能够具体化、直观化、合理化等。1.3研究背景目前,我国零售业
6、信息化状况的三个层面的分布基本明朗:在高端企业,进销调存核心结构体系基本运作正常,面临的主要问题是数据的深挖掘和加工、财务业务系统的高度集成、根据企业的并购重组保证系统和数据的统一、稳定;在中端企业,分散营运向集中管理转变,进销调存核心结构系统正在由分散单店管理、销售核算向连锁管理、进价核算过渡;在低端企业,刚刚涉足、转向连锁零售业,对于信息化认识处于表面层次,业务流程和信息系统建设需要一段时间的探索、认识和渐进过程.而整个零售行业对信息化的认识已经逐渐趋向一致的认识:信息化是企业可持续发展、增强核心竞争力的必要手段。超市软件系统从企业运营及管理的实际情况出发,结合当前中国零售业业态发展趋势,
7、顺应了零售行业对信息化的要求,为商业管理信息系统提供了系统全面的技术解决方案.基于以上原因,超市信息管理系统目前在各个商业领域都发挥了很大的作用,也得到了越来越多的大、中、小型商业企业的应用。但就目前的应用状况分析,管理系统在中、高端企业得到了广泛的应用和重视,在小型企业、零售店的应用仅局限于信息化的表面层次,没有得到高度的重视。同时,小企业也因资金方面问题限制了其向更高程度信息化的应用!随着信息化的快速发展,以及激烈的市场竞争,各企业也将在信息化上下功夫,以高效率、低成本立足市场,获得更多的利润。2。需求分析2.1系统需求要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界
8、面要单明了,易于操作,服务器程序利于维护。2。2功能需求大大提高超市的运作效率,通过全面的信息采集和处理,辅助提高超市的决策水平;使用本系统,可以迅速提升超市的管理水平,为降低经营成本,提高效益,增强超市扩张力,提供有效的技术保障。3。RFID 系统实施3。1无线射频识别系统的工作原理无线射频读写器在接收到需要读写标签的指令之后,会在一定的范围内发出无线射频信号,在该范围内的标签凭借线圈上的感应电流获得能量启动标签控制电路和射频电路发出存储在芯片中的数据,标签主动发出特定信号,读写器直接接受到该信号进行相应解码后恢复数据原始信息,然后传输到电子计算机中进行处理,管理系统得到相关的信息,这就是相
9、应的自动识别的工作原理,如图所示:图1RFID系统工作原理图RFID 技术的基本工作原理是:标签进入磁场后,随即接收解读器发出的射频信号,凭借着感应电流所获得的能量发送存储在芯片中的产品信息(Passive Tag,无源标签或被动标签),或者让标签主动发送某一频率的信号(Active Tag,有源标签或主动标签),解读器读取信息并完成解码后,再送至中央信息系统进行有关数据处理。RFID 系统,是由阅读器(Reader)与电子标签(TAG)正是所谓的应答器(Transponder)及应用软件系统这三个部分所组成的,其工作原理是由阅读器Reader 发射一特定频率的无线电波能量给应答器Transp
10、onder,用以驱动Transponder的电路将内部的数据送出,这时 Reader 便依序接收解读数据,再送给应用程序做相应的处理.以 RFID 卡片阅读器和电子标签之间的通讯及能量感应方式上来看,大致上可以分为:感应耦合(Inductive Coupling) 及后向散射耦合(BackscatterCoupling)两种。一般低频的 RFID 大都采用第一种方式,而较高频大多则采用第二种方式。阅读器能够根据使用的结构和技术不同分为读或读/写装置,是 RFID 系统信息控制和处理中心。阅读器通常由耦合模块、收发模块、控制模块和接口单元组合而成。阅读器与应答器之间一般采用的是半双工通信方式进行
11、信息交换,同时阅读器还通过耦合给无源应答器提供能量和时序。而在实际应用中,可以进一步通过 Ethernet 或 WLAN 等实现对物体识别信息的采集、处理及远程传送等基础管理功能.应答器是 RFID 系统信息的载体,应答器大多是由耦合原件(线圈、微带天线等)与微芯片组成无源单元.4超市管理系统总体设计4。1系统主要功能针对超市的特点,为了帮助超市解决现在面临的问题,提高小型超市的竞争力,我们将开发一个小型的超市管理系统。本系统包括如下功能:对超市仓库的商品进行商品类别,商品名称,单价,保质期进行录入查询等功能。功能图如下:超市管理系统查询商品类别查询商品名称查询商品单价查询保质期图2 系统功能
12、图4.2应用软件流程首先对电子标签进行注册,读入标签内信息,将读取到的信息发送给系统,显示标签注册成功,凭借注册的信息可以查阅到商品的类别,名称,单价及保质期.图3 流程图4。3应用软件调试过程(1) 首先进入系统界面:图4系统界面图(2)在进入系统界面之后进行串口设置,选择当前的端口号,然后进行“开始寻卡”点击确认,结束寻卡:图5系统界面图图6系统界面图(3) 然后及女性商品类别,商品名称,保质期和单价的选择,之后进行注册:图7系统界面图(4) 在确认注册后就会显示所选择商品的所有信息:图8系统界面图5。源代码using System;using System。Collections。Gen
13、eric;using System。Windows.Forms;namespace WindowsApplication1 static class Program / summary / 应用程序的主入口点. / /summary STAThread static void Main() Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application。Run(new chaoshi (); *using System;using System。Collect
14、ions.Generic;using System。ComponentModel;using System。Data;using System.Drawing;using System。Text;using System。Windows.Forms;using System.IO。Ports;using System。Net;using System。Net。Sockets;using System。Threading;using System。Collections;using System。IO;namespace WindowsApplication1 public partial cl
15、ass chaoshi : Form public chaoshi() InitializeComponent(); /初始化 dateTimePicker1。Value = DateTime。Now; comboBox1.SelectedIndex = 0; comboBox4。SelectedIndex = 0; comboBox2。Items。Clear(); comboBox2。Items.Add(”巧克力”); comboBox2.Items.Add(”奶糖”); comboBox2。Items.Add(”水果糖”); comboBox2。SelectedIndex = 0; com
16、boBox3.Items.Add(”雪碧”); comboBox3。Items。Add(”红酒); comboBox3.Items.Add(”矿泉水”); comboBox3.SelectedIndex = 0; comboBox8。SelectedIndex = 0; comboBox9。SelectedIndex = 0; comboBox10.SelectedIndex = 0; comboBox11.SelectedIndex = 0; comboBox12.SelectedIndex = 0; comboBox13。SelectedIndex = 0; comboBox14。Sele
17、ctedIndex = 0; sp。BaudRate = 115200; sp。PortName = ”COM1; try sp.Open(); catch MessageBox。Show(”串口打开出错”); sqlstr = ”Server= + textBox3。Text。Trim() + ;uid= + textBox5。Text。Trim() + ;pwd=” + textBox6。Text.Trim() + ”;database= + textBox4.Text。Trim(); System。Net。IPAddress addr = new System。Net。IPAddress
18、(Dns.GetHostByName(Dns.GetHostName()。AddressList0。Address); textBox1。Text = addr.ToString(); static public string sqlstr = ”;/数据库连接字符串 static public string type = ”; static public string port = ”; data da = new data(); Class1 cl1 = new Class1(); TcpListener tl; Thread acceptThread; UdpClient receivi
19、ngUdpClient; IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0); /串口数据接收时间 public delegate void ybb(SerialPort sp1); private void sp_DataReceived(object sender, SerialDataReceivedEventArgs e) ybb ybb2 = new ybb(chuankou); BeginInvoke(ybb2, sp); string stt = ”; /串口处理 public void chuankou(
20、SerialPort sp1) try int ili = sp.BytesToRead; byte s = new byteili; sp。Read(s, 0, s.Length); stt += cl1.ZHTOAC(s); /16进制字符串处理(不符合要求的删除) while (true) /具体的处理 string sfg = stt.Split(); if (sfg.Length 1) if (sfg0 != ”) if (sfg0。Substring(0, 1) = ”) if (sfg0 != ”) string cards = sfg0。Substring(1).Split(;
21、); for (int i = 0; i cards。Length; i+) if (cardsi != ”) tab(da.selectProcardid(cardsi), cardsi); bool c5 = false; for (int l = 0; l comboBox5。Items。Count; l+) if (comboBox5。Itemsl。ToString() = cardsi) c5 = true; if (c5 = false) comboBox5。Items。Add(cardsi); comboBox5。SelectedIndex = comboBox5.Items.C
22、ount - 1; stt = stt。Remove(0, sfg0.Length + 1); else stt = stt.Remove(0, 1); else stt = stt。Remove(0, 1); else break; catch TcpClient tc; public void internet() while (true) /循环侦听 /treeView1.Nodes.Clear(); Socket socket = tc。Client; Setsocket(socket); while (true) /循环侦听 if (socket.Poll(1, SelectMode
23、.SelectRead)) try byte by = new byte0; socket。Receive(by); catch break; if (socket.Available != 0) try byte receiveBytes = new bytesocket。Available; socket.Receive(receiveBytes); stt += cl1。ZHTO16(receiveBytes); for (int i = 0; i stt。Length 6; i = i + 0) if (stt.Substring(i, 4) = 68AA) i = i + Conve
24、rt。ToInt32(stt。Substring(i + 4, 2), 16) * 2 + 8; else stt = stt。Remove(i, 2); while (true) if (stt.Length = 6 stt.Substring(0, 4) = 68AA) if (stt.Length = Convert。ToInt32(stt.Substring(4, 2), 16) 2 + 8) string card16 = stt.Substring(6, Convert。ToInt32(stt.Substring(4, 2), 16) * 2); string cardAC = c
25、l1.ZHTOAC(cl1。ZH16(stt。Substring(6, Convert。ToInt32(stt。Substring(4, 2), 16) 2))); stt = stt.Remove(0, Convert。ToInt32(stt。Substring(4, 2), 16) 2 + 8); tab(da。selectProcardid(cardAC),cardAC); else break; else break; catch else break; else break; public void GPRS() while (true) /循环侦听 /treeView1。Nodes
26、。Clear(); Socket socket = tl。AcceptSocket(); Setsocket(socket); while (true) /循环侦听 if (socket.Poll(1, SelectMode.SelectRead) try byte by = new byte0; socket。Receive(by); catch break; if (socket.Available != 0) try byte receiveBytes = new bytesocket.Available; socket。Receive(receiveBytes); stt += cl1。ZHTO16(receiveBytes); for (int i = 0; i stt.Length 8; i = i + 0) if (stt。Substring(i, 4) = 68AA”) i = i + Convert。ToInt32(cl1.ZHTOAC(cl1。ZH16(stt。Substring(i + 4, 4) 2 + 10;
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100