● 摘要
传统的数据采集系统在软件实现上多采用单任务顺序结构,这样的结构实时性差,资源利用率低,在高速、实时数据采集领域难以满足实际要求。为了合理利用CPU资源,确保数据采集、处理、传输等任务的实时性,本文提出了一种基于DSP处理器为核心,通过采用TI公司的DSP/BIOS实时操作系统,设计出一个实时多任务控制系统模型,系统所有的任务在DSP/BIOS的调度下,按用户指定的优先级并发运行。DSP/BIOS作为TI公司为TMS320系列DSP开发而设计的实时操作系统,已经在多任务、多线程日趋复杂的应用程序开发中显示出可读性、灵活性和可移植性,给DSP系统开发者带来很大的方便。本文研究了DSP/BIOS多线程安排、任务间通信、实时分析工具等内核技术。并且通过规范化程序接口,使所设计的DSP算法不直接与底层硬件交互,极大的提高了软件的可复用性,便于系统的集成。本文面向的对象是广泛应用油田测井中的陀螺测斜仪的井下通讯模块,它接收来自地面的命令,完成对陀螺仪的控制、数据采集与处理、编码/译码、状态监控、向井上发回数据等功能。实时性和多任务要求是陀螺测斜系统的基本特点,对系统正常工作至关重要。首先,分析系统其要进行的任务,对不同的任务,分析其要求,然后给予分配不同的优先级。通过调用DSP/BIOS实时内核,从整体出发设计一种能完成多个任务的实时系统。本文通过利用闻亭公司的TMS320F2812开发板,对各模块如A/D采集、CAN总线通讯、曼彻斯特编解码等进行仿真测试,不断优化时序,以提高系统性能。另外,本文还研究了数据的处理方法,基于陀螺仪惯性系统的特性,引入卡尔曼滤波算法对采集到的数据进行最优化估计。