基于单片机的倾角测量系统设计.doc

上传人:心*** 文档编号:1039072 上传时间:2018-11-22 格式:DOC 页数:5 大小:179.50KB
下载 相关 举报
基于单片机的倾角测量系统设计.doc_第1页
第1页 / 共5页
基于单片机的倾角测量系统设计.doc_第2页
第2页 / 共5页
基于单片机的倾角测量系统设计.doc_第3页
第3页 / 共5页
基于单片机的倾角测量系统设计.doc_第4页
第4页 / 共5页
基于单片机的倾角测量系统设计.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、基于单片机的倾角测量系统设计组图1.引言电子经理人消息,海洋环境监测仪器是测量海洋水文要素的重要手段,其在水下的姿态直接影响到测量参数的精度。通过对仪器姿态的精确测量,可在一定倾角范围内对流速、流向等水文测量要素进行倾斜补偿。本文主要通过倾角传感器的选型、A/D 转换及其测量控制电路的设计、与上位机的通讯等几部分,详细介绍了一种倾角测量系统的设计方案。已成功地在国家“十五”863 计划“水下流浪潮综合测量技术”课题中得到应用。2.倾角测量系统的硬件设计图 1 是系统硬件组成的框图。如图所示,整个系统由 SCA100T 倾角传感器、一阶低通滤波器、ADS1211AD 转换器、单片机、上位机等几部

2、分组成。下面简单对硬件的各个组成部分进行介绍:图 1 硬件设计框图2.1 单片机的选择单片微型计算机简称单片机。它是把组成计算机的各种功能部件:中央处理器CPU、RAM、ROM 、I/O 接口电路、定时器/ 计数器以及串行通讯接口等部件制作在一块集成芯片中,构成一个完整的微型计算机 。单片机是整个系统的核心,在本文的应用中主要用于数据采集和传输,选用的是 ATMEL 公司的 AT89S52。2.2 AD 转换器ADS1211 是高精度、宽动态特性的 型模拟数字转换器。它的差动输入端可以直接与传感器或微小的电压信号相连。其内部的 结构可确保它的宽动态特性和 24 位的分辨率。由于采用了低噪声的输

3、入放大器,可以在转换速度为 10Hz 时获得 20 位的有效精度;借助于其内部独特的调制器加速操作模式,在转换速度为 1kHz 时仍可达到 16 位的有效精度。基金项目:国家高技术研究发展(863)计划? 资源环境技术领域海洋监测技术主题:水下流浪潮综合测量技术(课题号:2002AA632060)ADS1211 有主动和从动两种工作方式,在本应用中 ADS1211 与单片机的连接采用四线制从动方式(如图 2),即 ADS1211 的 SDOUT、SDIO、SCLK、DRDY 分别与单片机的 P1.4、P1.5 、 P1.6、P1.7 口连接。采样数据通过 SDOUT 传输到单片机,单片机通过查

4、询 DRDY 接收数据。单片机通过SDIO 向 ADS1211 发送命令。SCLK 引脚上的串行通波特率由软件编程实现。图 2 倾角测量系统电路原理图2.3 倾角传感器倾角传感器采用 VTI Technologies 公司的 SCA100T 系列。SCA100T 是采用微电子机电技术(EMES )制造的一款双轴加速度传感器,SCA100T 单轴的最大输出范围约为40 度,有效输出范围为30 度。在采样频率为 8Hz 及以下时,可获得 0.002 度的输出分辨率。加速度传感器可以用来测定变化或恒定的加速度。恒定加速度的一个特例就是重力加速度,当传感器静止时(没有水平或垂直方向的加速度时),重力加

5、速度方向和传感器灵敏轴的夹角就是倾角。双轴加速度传感器测量倾角有两种放置方法:水平放置和一轴垂直放置。图 3 给出水平放置示意图:图 3 水平放置方法水平放置在60 度的范围内有很好的分辨率,当大于60 度时,传感器将变得不灵敏(此时 arcsin 函数逐渐接近水平位置),当倾角接近 90 度时则无法测量。水平放置时应用如下的公式计算倾角:可求得 为 38.7 度。考虑到仪器的倾斜不应该大于 30 度(如果大于 30 度只能重新安装),所以传感器安装时采用此种水平放置方法。同时,为了进行传感器自检和内部校正,分别将传感器的 MISO、MOSI 、SCK 、CSB 与单片机的P1.1、P1.2、

6、P1.3 、P1.4 相连。MISO 用于传输传感器内部模数转换器转换的数字数据, MOSI 与单片机的 P1.2 引脚相连,用于向传感器发送命令和进行传感器内部自校正,使用软件编程通过 P1.3 向 SCK 提供串口通讯脉冲。CSB 为片选信号引脚。另外,SCA100T 内部带有温度传感器,可对温度误差补偿,在商业温度范围内可不考虑温度的影响。2.4 一阶低通滤波器由于 SCA100T 系列内置一个 11 位的 A/D 转换器,会产生周期为 50-70 微秒持续时间大约 1 微秒的毛刺,这个毛刺被叠加到模拟信号输出端。在低速转换时影响不大,但在进行高速转换时可能引起测量错误。因此需要在模拟信

7、号的输出端加上一个一阶低通滤波器,可有效滤除毛刺的影响。2.5 电源部分为了减少模拟信号噪声,采用 MAXIM 公司的低噪声高稳定性 MAX6325 电源芯片给 ADS1211 提供参考电源,使用 MAX6350 芯片给 ADS1211 提供模拟电源,同时也给传感器提供电源。3.软件设计软件分为下位机软件和上位机软件两部分。3.1 单片机软件编程对于 51 系列单片机,目前有汇编、PL/M、C 和 BASIC 四种语言支持。本文下位机软件采用 Keil C51程序编写。主要由主程序、读 ADS1211 子程序、读 SCA100T 子程序、串口发送子程序和命令接收子程序等部分组成。图 1.4 为

8、程序流程图:图 4 单片机程序流程图如图所示,整个程序采用顺序结构。为了加快系统的响应速度和提高计算精度,运算由上位机程序完成,下位机只负责数据采集和数据传输。命令接收子程序通过接收上位机传输的命令进行系统自检、参数修正等等。上位机的命令发送采用间隔 10ms 反复发送的方式,直到单片机将接收到的命令返回为止。如在 1s 内单片机没有响应,则设置超时,系统复位单片机。3.2 上位机软件编程单片机与上位机的通讯采用 Visual C+6.0 编写,程序在 Windows XP 下编译通过。3.2.1 串行通讯的实现目前串行通讯主要有两种实现方法:一种是利用 Windows API 函数或是利用

9、Microsoft Visual Studio的 ActiveX 控件 MSComm。利用indows API 函数进行串口编程实现了设备无关性,但此种不但调用了大量的 API 函数,还涉及到进程调用问题,编程十分复杂繁琐。本文采用 MSComm 控件,它间接调用 Windows API 函数,使编程人员在程序设计的时候不必再考虑复杂的系统函数,使编程工作变得简便,同时又能满足实际情况的工控要求。实现测量系统与 PC 机的通讯,首先在程序里嵌入 MSComm 控件,并设置通讯参数,这里设置波特率为 2400bps,8 位数据位,无奇偶校验位,接收数据时采用事件驱动方式,响应 Oncomm 事件,当接收缓冲区中接收到的字符数超过一定值产生缓冲区有字符事件。然后用 GetInput()读取缓冲区,用SetInputMode(1)设置输入数据类型为以二进制方式取回数据。这样可以接收 ASCII 字符0。3.2.2 倾角的计算由上位机取得数据后,按下面的修正公式计算:4.结束语本测量系统研制成功后,已经过了三个月的海试,工作稳定,达到了预期的设计要求,取得了较好的效果。采用加速度计式的倾斜传感器与传统触点电位器式的倾斜传感器相比,有着无可比拟的优点。如加速度计式的倾斜传感器工作寿命长、精度高、响应速度快等优点。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。