高陵东盈物流有限公司
行业资讯 News >>>

西安仓储集中管理和远程数据传输的应用

来源:高陵东盈物流有限公司

  1硬件设计

  系统由上位机、 公用电话网和下位机构成。下位机采集的数据通过公用电话网远程传输到上位机 — — — 主控中心 PC机 ,实现一点对多点通信。主控中心的 PC机通过拨号的方式对各点进行数据接收并实时存储、 显示、 打印。其原理框图如图 1所示。

  下位机电路是通过单总线数字式温度传感器 DS18B20 采集仓储内的温度数据 ,经单片机 AT89C51 的串行口输出 ,通过MAX232进行电平转换和驱动送 MODEM调制后送上电话线。硬件接口如图2所示。

  1. 1数据采集

  系统的温度采集由单总线数字式温度传感器 DS18B20 来完成 ,该传感器体积小 ,电压适用范围宽 ,并且只有 1 个数据输入/输出口 ,工作时被测温度值直接以 “单总线” 的数字方式传输 ,大大提高了系统的抗干扰能力。测量范围为 - 55~ + 125℃,在 - 10~ + 85 ℃ 时 ,精度为 ±015 ℃.每个传感器都具有唯一的64位序列号 ,这为在仓储内实现多点组网检测提供方便。DS18B20与单片机接口简单 ,只需将 DS18B20 的信号线与单片机的一位双向端口相连即可。其管脚排列图及与单片机接口如图3所示。在硬件制作过程中 ,应将 DS18B20 的 VDD、 DQ、G ND 3线牢固焊接 ,对其重新封装的过程中 ,要避免信号输入脚与电源脚短路。另外也可用 2 个单片机输入输出端口和DS18B20的DQ端相连 ,这样接收口和发送口分开 ,从而使读写操作分开 ,避免出现信号的竞争问题。

  1. 2单片机与 MODEM的接口设计

  MODEM有多种形式 ,采用外置的MODEM与单片机的接口硬件设计。由于单片机AT89C51 的电平为 TT L 电平 ,而 TT L 电平与 RS - 232电平不兼容 ,为了经过 RS - 232实现异步通信 ,要通过 RS - 232接口芯片进行外部电平转换。采用 MAXIM公司的MAX232进行电平转换。其接口电路如图4所示。单片机的RXD、 TXD 通过 MAX232 与 MODEM的 RXD、 TXD 相连;MODEM的DTR直接与VCC相接 ,表示单片机随时作好通信准备 ,所以在编程时上位机通信程序设置为循环查询方式:MODEM 的RING接单片机的一个端口上 ,判断是否有振铃信号;MODEM的DCD接单片机的另一端口 ,判断 MODEM是否与上位机的 MO2DEM连通。

  1. 3按键、 显示及看门狗电路

  下位机中的按键用来设置传感器采集仓储内温度值的上限值和阈值。当采集的温度与上限值的差超过阈值时 ,报警电路发出警告 ,并驱动仓储内降温系统工作;当采集的温度与上限值的差低于阈值时 ,报警电路不再报警 ,并使降温系统停止工作。显示电路由4位LED组成 ,用来显示当前仓储内的温度值。看门狗电路由 Xicor公司生产的 X25045来完成。它除了具有看门狗定时器的作用外 ,还具有电压监控和数据存储功能;另外 ,其体积小、 占用 I/ O口少等优点被广泛应用于工业控制、仪器仪表等领域。系统中 ,按键设置的采集温度的上限值被写入到 X25045 的 E2PROM中。其与单片机的接口电路如图 5 所示。

  2系统软件设计

  2. 1下位机软件设计下位机的软件由 MCS51 汇编程序设计 ,主要由 MODEM初始化、 数据采集等部分组成。其主程序流程图如图6所示。

  2. 1. 1 MODEM初始化及 AT命令MODEM的工作状态分为命令状态和在线状态。当 MO2DEM处于命令状态时 ,接收端机发送来的AT开头的指令 ,称为AT指令 ,当 AT下达后 ,MODEM可自动判断发送端机的速率 ,即通信波特率不依 MODEM的设定 ,可根据系统的数据量设定为4 800 bit/ s或9 600 bit/ s等。MODEM的AT命令如下:ATVn MODEM返回结果码格式。n = 0 :数字显示;= 1 :字符显示。ATEn MODEM命令是否回显。n = 0 :不回显; n = 1 ;回显。ATXn MODEM结果码类型/呼叫进程。ATQn 结果码控制。n = 0 :返回结果码; n = 1 :不返回结果码。ATDTn MODEM拨号呼叫。n 为电话号码。ATA MODEM手工应答方式。ATS0 = r MODEM自动应答方式。收到 r声后开始应答。+++ MODEM状态的切换。ATHn MODEM挂机/摘机控制。n = 0 :挂机; n = 1 :摘机。其软件流程如图7所示。

  2. 1. 2 数据采集

  数据采集由 DS18B20 完成 ,操作 DS18B20 的整个过程包括搜索DS18B20序列号、 启动 DS18B20 作温度转换、 读取 DS18B20温度值。流程如图8所示。

  2. 2 上位机软件设计

  上位机的软件由VB程序设计 ,主要包括实时数据的接收、显示和打印以及MODEM初始化等。其中 MODEM的初始化与下位机基本相同。VB 提供了具有强大功能的通信控件MSCOMM,该控件可设置串行通信的数据发送和接收 ,对串口状态及串口通信的信息格式和协议进行设置。在接收或发送数据过程中触发 OnComm事件。该控件属性较多 ,下面是几个常用的关键属性设置及OnComm事件。Sub F ormË load() ,串口初始化Comm1. CommP ort = 1 ,设置串口1Comm1. Settings =“9 600 ,0 ,8 ,1” ,波特率为 9 600 ,奇校验 ,8位数据位 ,1位停止位。

  Comm1. InputLen = 1 ,读缓冲区全部内容。Comm1. P ortOpen = True ,打开串口1Comm1. Sthreshold = 1 ,发送缓冲区空触发发送事件。Comm1. Rhreshold = 1 ,每接收到一个字符触发接收事件。End SubSub Comm1.OnComm() ,接收数据触发OnComm事件Select Case Comm1. CommEventCase comEvReceiveReceive (Data) = Asc (Comm1. Input)Data = Data + 1End SelectEnd Sub

  3 结束语

  实践证明:将基于 MODEM的远程通信技术应用于无人职守的仓储管理 ,获得良好的效果 ,解决了人力、 物力上不足的难题。可在硬件基础上进行扩展 ,以满足一些特殊需要。如果改变不同的数据采集方式 ,即可广泛应用于其他场合。