版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、(仓库管理)无线仓库管理解决方案20XX年XX月多年的企业涔询顾诩遢,经过实战脸证可以落地抑亍的卓越管理方案,值得您下戟用M无线仓库管理解决方案1 .需求分析1.1 仓库管理现状随着计算机技术的普及,越来越多的中小企业已经开始使用计算机(数据库)开进行仓库管理。经调查,大多数的小型企业仍然采用用笔记账,再统一录入数据库的模式。这样,办公室并不能获得最新的库存情况从而不能做出正确的决策。另外,有些公司仓库离办公室(数据库服务器)较远,一来一回也耽误了时间。于是,用高效的方案来解决仓库库存与数据库同步的问题是迫在眉睫的事情。1.2 无线仓库管理的优点无线仓库管理最大的亮点在于实时性。仓库管理人员在
2、入库的时候,只需要在手持设备上输入相应的产品以及数量,即可以实时地更新数据库,为办公室人员获得最新的库存信息提供了保证。相对于有线传输,无线传输省去了布线的麻烦。这也是目前流行的方案。1.3 开发限制由于经济基础等条件制约,采用的硬件并不能实现长距离通讯。但要声明的是,这只是个解决方案,只提供思路。如果要应用到实际,将结合实际情况对硬件做出相应的更改。2 .概要设计2.1 部署图开发-仿真-实验板,大小相当于一张扑克牌,是“凌阳科技大学计划”专为大学生、电子爱好者等进行电子实习、课程设计、毕业设计、电子制作及电子竞赛所设计的,也可作为单片机项目初期研发使用。61板除了具备单片机最小系统电路外,
3、还包括有电源电路、音频电路(含MIC输入部分和DAC音频输出部分)、复位电路等,采用电池供电。板上自带两个16位输入/输出接口。无线射频芯片自带的驱动程序使用IOB的低8位,MzL02-12864LCD模组自带的驱动程序使用IOA。而61板上的三个按键KEY1、KEY2、KEY3是直接和IOA的最低3位相连的(参考61板的电路原理图1),造成按键对显示模组干扰的问题。于是,解决方案将使用IOA的高8位作为无线射频nRF2401芯片的接口,IOB作为MzL02-12864LCD模组的接口。详细驱动的改动下面会有说明。图1PCB图(2) nRF2401无线射频芯片发送端(配套61板)nRF2401
4、A及其外围电路如图2,包括nRF2401A芯片部分、稳压部分、晶振部分、天线部分。电压VDD经电容C1、C2、C3处理后为芯片提供工作电压;晶振部分包括Y1、C9、C10,晶振Y1允许值为:4MHz、8MHz、12MHz、16MHz,如果需要1Mbps的通信速率,则必须选择16MHz晶振。天线部分包括电感L1、L2,用来将nRF2401A芯片ANT1、ANT2管脚产生的2.4G电平信号转换为电磁波信号,或者将电磁波信号转换为电平信号输J1、J2,其中入芯片的ANT1、ANT2管脚。为方便与61板的连接,模组提供了两个接口为预留端口,是通道 2的接收通道。CON 10DR2 tE 口 二代J1为
5、nRF2401A的控制端口和通道1的收发通道,J2J1接口为10Pin的插孔,其布局和61板的I/O端口布局一致,可以直接插接到61板的I/O端口使用。J2预留,如果需要采用双通道接收时,可以将J2对应的3根信号线引出,接到单片机的I/O上即可。图2nRF2401电路原理图图3接口电路图对应的I/O连接和功能描述如表所示。接收端(NewMsgUSB2401)NewMsg-NetUSB3模块是NewMsg公司自行研发的PC端无线数据收发模块,其并配备CYPRESS公司的USBSLAVE芯片EZUSB_FX2LP68013和射频芯片NRF2401,以2.4G的无线频段进行无线数据传输,并通过USB
6、2.0协议同PC进行高速通信,保证了高速通信质量,并且在无线通信协议上实现了严格的数据校验机制,保证了数据的可靠通信。NewMsg-NetUSB3模块可进行本机地址和发送地址的配置,实现多点PC和PC,PC和电子系统的数据传输。(3) MzL02-12864LCD模组MzL02-12864为一块128X64点阵的LCD显示模组,模组上的LCM采用COG技术将控制(包括显存)、驱动器集成在LCM的玻璃上,接口简单、操作方便;为方便用户的使用,铭正同创在LCM的基础上设计了MzL02-12864模组,将模组所必需的外围电容电阻集成到模组上,并引出多种形式的引线接口方便用户使用。MzL02-1286
7、4模组与各种MCU均可进行方便简单的接口操作。3.2编码实现3.2.1 寄存器设置以及驱动更改前面提到由于LCD模组使用16位IOA作为接口,而IOA0/1/2与KEY1/2/3直接相连(详细翻阅PCB图),这导致的结果是,按键按下时会对LCD模组进行干扰。于是便选择IOB作为LCD模组的接口,IOA高8位作为无线射频的接口。详细驱动更改如下:查看SPCE061A中文编程手册,找到IOA和IOB的读写寄存器地址分别为7000H和7005H,每个寄存器16位。如图:LCD模组接口说明,如下表:打开LCD模组的接口头文件LCD_PortConfig.h,宏定义LCD模组在IOB读写寄存的偏移量:然
8、后把驱动宏定义的IOA全部改成IOB,并且添加IOB相应寄存器的地址的宏定义:无线射频模组的驱动更改相应比较简单,参照数据手册,把原来的偏移地址(低8位)0x00100x0020改成(高8位)0x01000x2000,然后把所有指向IOB地址的地方重新指向IOA的地址即可。3.2.2 主菜单介面制作介绍:由于开发板:SPCE061AEMUBOARD只有4个KEY,一个用于RESET,剩下只有三个KEY,为了能够实现多个介面之间的转换,我们用01键代表向下转换,02键代表向上转换,04键代表确定。01键和02键都有循环切换菜单的功能。我们设计的菜单是用一个个图片组成。每切换一个菜单我们就换一张图
9、片。图片之间的切换并没有减慢我们系统的速度。我们的菜单主要由以下图片组成:这些图片通过DM的制作就可以变为一个个数组。在显示时只要调用这些数组就可以了。这个函数主要菜单的制作主要是调用函数voidLCD501_Bitmap(intx,inty,unsignedint*p)是用来显示图片的。用来显示我们的菜单。在一开机时,就显示第一第图片,然后就处于等待状态,当接收到01KEY的信息时,就开始换下一张图片。当接收到02KEY信息时就开始选项上一张图形,并把它们显示出来。当接收到04KEY时就进了另一个介面,用于输入订单的数量。这个下面有3.2.3中有详细的介绍。下图为它的流程图:3.2.3 数量
10、选择界面功能介绍:通过61板上的3个按键(key1,key2,key3)实现数字的输入。输入数字为3位,即输入范围是从0至999。输入范围可以根据实际应用需要进行修改。进入本功能菜单后,屏幕的上方会显示“addhundry”,表示初始状态下每按一次keyl,该数字将增加100。下方显示“000”,表示初始数量为0。如果此时5次key1,则屏幕上的值为“500”,即此时输入数量值是500。key2用于决定每次输入的大小,如按下key2后,上方显示“addten”表示每按一次key1数字增加10,如果显示“addone”表示每按一下key1增加1。当某一位上的数为9时,再增加1后则重新置为0。在进
11、入“addone”之后想对百位或十位数字进行修改,可以按key2进入其他模式进行输入。当输入结束后,按key3退出数量输入功能,进入发送功能。流程图:AddhundryKey3Key2Key3加100Key2变量说明:unsigneddata3用于存放百位,十位和个位数的值,方便对于各位数的操作和输出显示。每一位的初始值为0。0,最大值是9,如果达到9之后再发出1请求(按下keyl),则该位的值重新置为charshow40 /为结束标志。前三位分别存放data中的三个数字对应的字符,即0'-'9',第四位存放的是因为数量值是以字符串的形式输出到显示屏,而字符串的需要以c
12、hardisplay315用于存放输入模式的提示信息,包括“addhundry”,“addten”,“addone”。inti用于计算当前所处的输入模式,当i=0,处于“addhundry”模式,当i=1,处于“addten”,当i=2,处于“addone”模式。i的初始值为0,当key2被按下,如果i值为2,则将i置为0,否则将i值加1。函数说明:delay()延时函数,由于按下按键后会产生抖动,即按下一次会产生多个按键信号,程序也会相应的做出多次处理,这样就无法得到预期的效果。为了获取稳定的按键信息,须要避开这段抖动期。这时就要使用这个延时函数。intputdata()实现数量的输入和数据
13、发送。初始模式为“addhundry”,数量的初始值为“000”。按下key2键选择输入模式,key1键决定每一位数的大小。由于按键的数量限制,本功能只能单向递增,所以函数循环输入的方式,即在到达极限值的时候再增加就会回到初始值。如在达到“addone”模式后,再按下key2键就会回到“addhundry”模式;在按下key1键后如果该位数已经为9,则会被重新置为0。数据输入结束后,按下key3键退出,程序会将输入的各位数字分别发到计算机端,由计算机端完成对数据的处理。之所以将数字分位发送,是因为发送模块最大只能发送8位二进制数,分开发送可以消除对输入数据极限值的限制。发送结束后退出本函数。3
14、.3.3 发送功能调用发送前首先配置接收端(PC)的地址Address5=0x00,0x00,0x00,0x00,0x01;驱动的nRF2401_Intial()、nRF2401_Mode(1)、nRF2401_SetAddress(Address,5)进行无线初始化。在数量选择菜单按下key4后,触发发送函数nRF2401_SendByte(),把商品编号和数量一起发送(用Delay函数进行延时)。为了演示,约定商品编号为01-06,分别对应6种不同的教材。函数nRF2401_SendByte():参数TxData为传进来的数据(字节)。CE宏定义为无线射频的使能端,偏移地址为0x0200,
15、对应IOA9接口。调用函数nRF2401_WriteByte(),先把接收端地址写入缓冲,然后再把数据TxData写入缓冲(nRF2401数据报格式)。最后实现发送的功能。3.3.4 接收端PC由于PC端不涉及嵌入式的开发,此处只做简单说明。接收端采用NewMsg公司的无线射频产品NetUSB2401,用的芯片与嵌入式设备相同,是nRF2401。在程序初始化的时候,按照嵌入式设备端的设置,把通道、收发频率、接受宽度设为一致,然后设置好地址。根据发送端发来的商品编号从数据库获取当前数量,然后加上发送端发来的数量,最后更新数据库。运行界面如下:4.经验总结组员:*本次设计是基于硬件的软件编程,主要
16、的工作是熟悉硬件的工作机制,以及系统自带的函数的功能和应用。在本功能的实现中,主要的困难是硬件的限制(输入按键较少),和按键抖动的消除。为了克服按键少的问题,我们利用按位递增循环输入的方法,这在前面已经提到,这样可以充分利用现有的硬件资源。而按键抖动问题,由于一开始被忽略,导致程序调试过程中出现意想不到的错误。在发现这个问题后,我们选择用添加延时来去除抖动。由于系统自带的延时函数效果不明显,所以重新编写了一个延时函数delay()。组员:*1:这次开发我花最多的时间并不是在开发上,而是在看一个一个的源码或者说是事例上.刚开始的时候真的不知道怎么去做,看了别人做的后,自己才感觉到开发也并不是那么
17、的难.才知道一切问题都有解决的办法。2:我这次的主要工作就是要做一个菜单。由于我们的显示屏和例子中的不一样,所以我们自己找了不少资料,菜单主要是结合了按键和显示这两个功能。我们在如何使用按键以及如何让它显示上找资料。一个个的例子让我知道了按键的工作过程和显示原理,接下做就比较简单了。3:通过这次比较,我感觉我学到了不少知识,不过让我感受最深的是很多事情看似很难,但只要肯用心支做就一定可以做好。组员:*第一个感觉时就嵌入式开发,想说爱你不容易。里面涉及太多的硬件知识,这是我们软件工程专业所缺乏的。碰到问题时,首先想到要查找DataSheet,了解每个寄存器的配置究竟代表什么含义。必要的时候,还要翻看PCB图,弄懂接口之间是如何连接的。这很重要,在开发的过程中,一开始,LCD模组和按键老是冲突。后来翻阅PCB图,才发现按键并不是采用中断的模式,而是直接跟IOA的前三位相连。找出问题的所在后,立刻查找DataSh
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四川省内江市2025-2026学年高一上学期期末检测生物试卷(含答案)
- 【初中语文】《+济南的冬天》课件++统编版语文七年级上册
- 河北省五个一联盟2026届高三上学期1月模拟考试语文试卷(含答案)
- 2025-2026学年统编版语文八年级第一学期期末质量检测练习卷(含答案)
- 化工企业职业卫生培训课件
- 2026年人力资源管理师人才发展战略知识练习(含答案解析)
- 2026年芜湖市扬帆实验学校公开招聘教官4名笔试备考试题及答案解析
- 2026新疆伊犁州新源县总工会面向社会招聘工会社会工作者3人备考考试试题及答案解析
- 2026浙江南方水泥有限公司校园招聘考试参考试题及答案解析
- 2026泰安肥城市事业单位初级综合类岗位公开招聘(73人)考试备考试题及答案解析
- 2025年社工社区招聘笔试题库及答案
- 病毒性肺炎诊疗指南(2025年版)
- 2026年度新疆兵团草湖项目区公安局招聘警务辅助人员工作(100人)笔试参考题库及答案解析
- GB/T 46778-2025精细陶瓷陶瓷造粒粉压缩强度试验方法
- 协助审计协议书范本
- 采购主管年终工作总结
- 电力公司安全第一课课件
- 物业现场管理培训课件
- 数据访问控制策略分析报告
- 2025年市场监管局招聘岗位招聘面试模拟题及案例分析解答
- 子宫内膜异位症病因课件
评论
0/150
提交评论