专业综合实践报告——嵌入式系统虚拟仪表设计学生姓名学号教学院系电气信息学院专业年级自动化2011级指导教师完成日期2015年3月20日摘要针对传统仪表和现有仪表存在的不足,本文提出了一种新型的虚拟仪表设计方案,采用arm处理器为核心的硬件平台和以嵌入式linux系统为核心的软件平台,并在此基础上采用开放源代码的图形界面库qt开发仪表终端应用程序。该虚拟仪表可读性好,读数精度高,在可移植性、可维护性和成本方面都得到了良好的改善,具有较大的科研价值和商业使用价值本文所介绍的车载虚拟仪表的基本设计思想是将司钻监控系统上安装的各种传感器采集到的数据进行智能化的处理,然后在运行于嵌入式linux系统的使用qt设计的虚拟仪表盘上进行显示,以便于监测各系统的工作状况,如悬重钻压钻速泥浆返回流量泥浆泵冲速立管压力转盘转速转盘扭矩游车高度等,并在某状态出现异常或存在危险时向操作员提示报警。【关键词】:虚拟仪器、司钻监测系统、Linux系统I目录一.绪论...........................................................................................................................................11.1虚拟仪器的发展................................................................................................................11.2专业综合实践的主要内容...............................................................................................1二.嵌入式系统虚拟仪表开发环境.............................................................................................32.1嵌入式系统虚拟仪表设计目标.......................................................................................32.2开发环境...........................................................................................................................32.2.1QtCreator简介..................................................................................................32.2.2Fedora简介.......................................................................................................3三.基于ARM处理器的便携式仪表人机接口的设计.................................................................53.1设计原理及说明.......................................................................................................................53.1.1A/D转换器.............................................................................................................53.1.2A/D转换重要指标.................................................................................................53.2接口总体设计............................................................................................................................63.3ADC及触摸屏接口特殊寄存.....................................................................................................73.3.1ADC控制寄存器....................................................................................................73.3.2ADC开始延时寄存................................................................................................83.3.3ADC转换数据寄存器............................................................................................83.4AD转换程序..............................................................................................................................9四.嵌入式系统虚拟仪表开发...................................................................................................224.1QtCreator开发............................................................................................................224.2QtCreate编程............................................................................................................244.3虚拟仪表运行界面.......................................................................................................29五.基于Linux操作系统的程序编译和烧写...........................................................................305.1Linux操作系统及其常用命令....................................................................................305.2Linux内核配置............................................................................................................315.3终端编译.......................................................................................................................33六.课程设计收获与体会...........................................................................................................35参考文献.........................................................................................................................................361一.绪论1.1虚拟仪器的发展现代仪器仪表技术是计算机技术和多种基础学科紧密结合的产物。随着微电子技术、计算机技术、软件技术、网络技术的飞速发展,新的测试理论、测试方法、测试领域以及新的仪器结构不断出现,在许多方面已经冲破了传统仪器的概念,电子测量仪器的功能和作用发生了质的变化。在此背景下,1986年美国国家仪器公司(NationalInstruments,NI)提出了虚拟仪器(VirtualInstrument,VI)的概念。尽管迄今为止虚拟仪器还没有一个统一的定义,但是一般认为:虚拟仪器是在PC基础上通过增加相关硬件和软件构建而成的、具有可视化界面的可重用测试仪器系统。作为一种以计算机软件为核心的新型仪器系统,虚拟仪器具有功能强、测试精度高、测试速度快、自动化程度高、人机界面优异、灵活性强等优点,通常被认为是第三代自动测试系统的同义语。使用虚拟仪器系统可以避免仪器编程过程中的大量重复性劳动,从而大大缩短复杂程序的开发时间,并且客户可以用不同的模块来构造自己的虚拟仪器系统,选择统一的测试策略。由于虚拟仪器的功能和性能已被不断提高,如今在许多应用中它已成为传统仪器的主要替代方式。而虚拟仪器的各种优点让用户可放心地舍弃旧的传统测量设备,接受更新型、以计算机为基础的虚拟仪器系统。由于计算机的性能价格比不断改进,使虚拟仪器的价格更为大众化,用户不必再受限于传统仪器的使用限制和昂贵的价格,进一步降低了使用成本,减少了系统的开发费用和系统的维护费用。此外,新型笔记本电脑又把虚拟仪器的便携性和强大功能推向一个新的水平。所有这些必将加快虚拟仪器的发展,使它的功能和应用领域不断增强和扩大。在测量、检测、电信、监控、教育等方面的应用已广泛开展。1.2专业综合实践的主要内容司钻英文名称为driller,指的是石油钻井中带班工人的简称,在本设计中司钻系统则是指一套全自动的油井采集监控系统。本系统包括以下功能:嵌入式系统AD数据采集,嵌入式系统电机控制,嵌入式系统虚拟仪表设计,嵌入式系统绞车数据采集,嵌入式系采集统数据显示,嵌入式系统采集曲线显示,嵌入式系统串口通信,嵌入式系统按键输入,嵌入式系统led控制,嵌入式系统音频2输出。在此系统中本人主要负责嵌入式系统虚拟仪表设计。本设计要求完成虚拟实验室中虚拟信号发生器和虚拟信号采集器的设计。3二.嵌入式系统虚拟仪表开发环境2.1嵌入式系统虚拟仪表设计目标本文设计了一种基于QtCreator的虚拟仪表设计。它的主要设计目标是:系统的主要工作是对大量的过程状态参数实时监测、数据存储、数据处理、进行实时数据分析等。因此要求硬件上必须要有实时时钟和优先级中断信息处理电路。2.2开发环境2.2.1QtCreator简介QtCreator是跨平台的QtIDE,QtCreator是Qt被Nokia收购后推出的一款新的轻量级集成开发环境(IDE)。此IDE能够跨平台运行,支持的系统包括Linux(32位及64位)、MacOSX以及Windows。根据官方描述,QtCreat