碧波液压网 欢迎你,游客。 登录 注册

一种水下运动目标轨迹的实时存储系统设计

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  1 引言

  声学定位技术是对已知的目标在一个特定的时间和空间中进行定位的技术, 这一技术的发展非常迅速,其应用也越来越广泛。为了对定位系统的性能进行分析, 必须实时地存储运动目标的轨迹, 传统的记录方法已经无法满足定位系统的速度和精度要求, 但随着电子计算机微处理器的发展和应用, 实时、快速地存储运动目标的轨迹变为可能。笔者针对水下运动目标轨迹的实时存储问题, 利用AT89S52单片机和实时时钟芯片DS12887, 把轨迹数据实时写入EEPROM进行储存, 在分析试验结果时再把EEPROM所存数据读入PC进行处理[1-2]。

  2 硬件设计

  记录系统以串行口作为通信端口, 串行口的数据和控制信息是一位接一位传送的, 相对于并行口来说,速度会慢一些, 但传送距离和准确性要优于并行口, 因而更便于实际应用。记录系统的通信分为两部分: 与定位系统间的通信和与PC机间的通信。由于RS-232标准端口电平与单片机串口的TTL电平不一致, 所以必须进行两者的电平转换, 在此, 使用集成电平转换芯片MAX232。记录系统的实时时间由读DS12887得到, 单片机把串口数据和时间写入AT28C256, 分析时再从AT28C256读取, 确保数据的安全性和实时性[3]。硬件设计原理图主要部分如图1所示。

  3 软件设计

  实时存储系统的软件设计包括两大部分, 第一部分:从定位系统接收数据并将其写入EEPROM; 第二部分: 读EEPROM且把数据传送至计算机以便于分析实验结果。软件设计流程图如图2所示。

  实验时, 一般要求多组以便于分析, 实时存储系统需要在掉电后数据被转移至计算机之前再存储数据,所以, 必须在每一次掉电之前记录下当前AT28C256已经写到哪个字节(指针偏移量)和写到了四片AT28C256中的哪一片(片选信号) , 以免再一次上电时覆写以前的数据; 在此系统中, 每写一个数据便把指针偏移量和片选信号写入第一片AT28C256的前三个字节[*(p+0), *(p+1), *(p+2)][4], 以便在上电后读取当前的指针偏移量和片选信号, 由于此系统指针的最大偏移量为15位, 而AT28C256的一个存储单元为一个字节, 因此, 需要两个存储单元来存储指针偏移量。要完成以上操作, 必须在试验前对4片AT28C256进行擦除使其各存储单元均为 FFH, 以便在上电时判断和选择指针偏移量与片选信号。

  定位系统每200ms发一次数据共5个字节如表1给储存系统, FF、方位角高8位、方位角低8位、俯仰角高8位、俯仰角低8位, 其中, FF用来判断传送数据的起始, 单片机只从FF开始接受数据, 使用这种办法可以避免定位系统传送数据出错时存储系统记录错误数据。200ms在此系统中已经足够完成对AT28C256的写操作, 不会因为时间过短而造成漏写现象[2]。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论