当前位置:文档之家› 项目课程:-《仪器与测试项目〉》实验报告

项目课程:-《仪器与测试项目〉》实验报告

项目课程:-《仪器与测试项目〉》实验报告
项目课程:-《仪器与测试项目〉》实验报告

项目课程:-《仪器与测试项目〉》实验报告

计项目课程设 _课程名称仪器与测试项目

_题目名称温度热电偶测量系统

___ _学生学院机电工程学院 08机电(4)班专业班级号___学3108000475

____

____学生姓名

_ 指导教师___傅春晖

________________ ____

成绩评定

2

日 3 年 10 月2011

广东工业大学课程设计任务书

温度热电偶测量系统题目名称机电工程学院学生学院08机电(4)专业班级罗乔隆姓名3108000475

号学

一、实践项目课程设计的内容

本项目课程要求学生综合运用所学专业课知识,选用传感器及有关仪器仪表组建测试系统、虚拟仪器(利用Labview虚拟软件平台),对机器品质、产品质量、设备运行状态、机械系统动态性能等工程对象进行综合测试;编制或应用有关软件,对测试信号、数据进行分析和处理,达到提高工程测试能力与实践技能。另外,本实验还进行几何量误差测量实验,包括形位误差测量、齿轮误差测量两部分。学生通过综合训练,深化已学知识,对机械工程测试及计算机在该领域中的应用有较为全面深入的了解,培养学生工程素质。

二、实践项目课程设计的要求与数据

1、了解和熟悉虚拟仪器编程软件Labview,每个同学要独立地完成编程练习。

2、每两人为一组,能独立地选用有关传感器及有关仪器仪表组建虚拟仪器测试系统(利用Labview虚拟软件平台)对工程对象进行测试,要求独立编制虚拟仪器程序并记录下实验数据,并能对测试信号和数据进行分析处理。

3、每个同学独立完成几何量误差测量实验,包括形位误差测量、齿轮误差测量两部分,记录实验数据并能按要求对数据进行处理和分析。

4、每位学生必须根据具体工作内容,完成一篇不少于1000字的报告书。

3

本项目要求每位同学亲自动手操作、练习和调试,体会到工程测试的乐趣。三、实践项目课程设计应完成的工作软件学习介绍,进行必要的讲授和辅导,完成由老师指定的编Labview1、

程练习。、在实验室完成相关虚拟仪器测试系统组建,设计编制虚拟仪器程序并对2 系统进行调试,记录下测试数据,并对测试信号和数据进行分析处

理。、几何量误差测量实验,包括形误差测量、齿轮误差测量两部分。3 4、设计体会与心得。四、实践项目课程设计进程安排

序地起止日期设计各阶段内容点号

8.29-8.31

1 1)、布置任务,讲解课程实的目的、内容和要求;验

、讲解虚拟仪器图形程、几何量误差测量,

括测量的原理、步骤等40405

2虚拟仪器编程讲解与练9.1-9.3 、数据采集、仪器控制

、数学分析应用软件号 4

楼401

9.4-9.6

实3 虚拟仪器编程,模拟温度

验测量系统

2号楼401

9.7-9.9

实4 虚拟仪器编程,虚拟仪器验采集2401

9.10-9.12

虚拟仪器编程,串口仪5

401

15

形位误差测量、齿轮误69.13-9 5

验测量2轴形位误差、汽缸、箱体、号螺孔位置度;齿轮周节、

楼公法线、齿轮径向综合误401 差、径向跳动误差。9.16-9.18

实7 创建虚拟仪器测试系统

验热电偶温度测量系统。 1)、2零件合格性检测系统。 2)、号楼401

9.19-9.26

实1)、给定测试系统,现场8

检查学生编程;考查学编程的正确性和可行性

、答辩,评定成绩401

五、应收集的资料及主要参考文献《仪器与测试项目》实验指导书李远波,傅春晖[1] . 广东工业大学自编教材.[M],2006

北京:电子工业出版李海涛,杨磊杨乐平[2] ,. LabVIEW[M]. 程序设计与应用6

社,2005

[3]张易知. 虚拟仪器的设计与实现[M].西安:西安电子科技大学出版社,2003

[4]段福来主编. 互换性与测量技术基础学习指南[M]. 西安:陕西科技出版社,1992

[5]韩进宏. 互换性与技术测量[M]. 北京:机械工业出版社, 2004

发出任务书日期:2011年 8月 29日指导教师签名:

9年月20 日基层教学单位责任人签章:2011 计划完成日期:主管院长签章:

7

目录

目录

一:虚拟仪器的简介………………………………………………………………二:热电偶温度测量系统………………………………………………………………

2.1.实验目

的…………………………………………………………………………

2.2实验内容和要求………………………………………………………………

三:实验系统的搭建……………………………………………………………………

3.1实验思路……………………………………………………………………

3.2温度测量程序…………………………………………………………………

3.3温度监控程序………………………………………………………………

3.4数据分析程序………………………………………………………………

3.5温度报警程序………………………………………………………………

3.6超温比例程序………………………………………………………………

3.7数据读写程序………………………………………………………………

四:程序功能展示……………………………………………………………………

4.1程序面板介绍……………………………………………………………………

4.2实验结果展

示……………………………………………………………………

五:实验总结…………………………………………………………………………参考文…………………………………………献…………………………………………

8

一:虚拟仪器的简介

LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境。LabVIEW是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标 9

准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。

图形化的程序语言,又称为“G”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。

它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。

利用LabVIEW,可产生独立运行的可执行文件,它是一个真正的32位/64位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。

它主要的方便就是,一个硬件的情况下,可以通过改变软件,就可以实现不同的仪器仪表的功能,非常方便,是相当于软件即硬件!现在的图形化主要是上层的系统,国内现在已经开发出图形化的单片机编程系统(支持32位的嵌入式系统,并且可以扩展的),不断完善

二:热电偶温度测量系统

2.1实验目的

掌握热电偶温度测量虚拟仪器系统的组成与实现方法,深化已学Labview编程和工程测试知识,提高工程测试的技能

此系统利用LABVIEW虚拟仪器软件平台,用软件模拟实际温度的输出的方法实现如下功能:

①实时数据显示温度测量;

②温度波形显示;

③温度时间段内分布图;

④测量结束计算最大、最小值、平均值;

⑤超出报警;

⑥产生数据文件存盘(文件数据中包括:操作者姓名、采样总数、温度值、高限值、超温时间、超温比例);

2.2:实验内容和要求

利用LABVIEW虚拟仪器软件平台,热电偶(K型),智能仪表(XSD带RS232)NI 数据采集卡PCI-6023E,USB-9215,端子板等构建温度测量系统,包括实时数据显示温度测量,温度波形显示,测量结束计算最大,最小值,平均值,超出报警,产生数据文件保存。

实验仪器和材料:

带虚拟仪器软件平台的台式计算机,热电偶,智能仪表NI数据采集卡PCI-6023E,USB-9215,端子板。

10

三:实验平台程序搭建

3.1 实验程序设计思路

3.2温度测量程序

先创建一个VI程序模拟测量程序,使用Demo Read Voltage 程序来仿真电压测量,

将这个温度检测保存为一个子程序,方便在以后的程序调出来使用。温度模拟

输出:,其调用了一个子程序,子程序具体结构如下图所示:

温度监控程序3.2使用一个条件循环结构和一个被测波形图形实时采集数据 11

3.3温度监控程序

12

操作系统-Linux课程实验报告

实验、 Linux Ubuntu的安装、创建新的虚拟机VMWare 实验 Shell编程 1.实验目的与内容 通过本实验,了解Linux系统的shell机制,掌握简单的shell编程技巧。 编制简单的Shell程序,该程序在用户登录时自动执行,显示某些提示信息,如“Welcome to Linux”, 并在命令提示符中包含当前时间、当前目录和当前用户名等基本信息。 2.程序源代码清单 #include<> #include int main(){ printf("Hello Linux\n"); int pid; int state; int pfd[2]; pipe(pfd); if (fork()==0){ printf("In the grep progress\n"); dup2(pfd[0],0); close(pfd[0]); close(pfd[1]); execlp("grep","grep","sh",0); perror("exelp grep error"); } esle if(fork()==0){ printf("In the ps progress\n"); dup2(pfd[1],1); close(pfd[0]); close(pfd[1]); execlp("ps","ps","-ef",0); perror("execlp ps -ef"); }

close(pfd[1]); close(pfd[0]); wait(&state); wait(&state); } 实验内核模块 实验步骤: (1).编写内核模块 文件中主要包含init_clock(),exit_clock(),read_clock()三个函数。其中init_clock(),exit_clock()负责将模块从系统中加载或卸载,以及增加或删除模块在/proc中的入口。read_clock()负责产生/proc/clock被读时的动作。 (2).编译内核模块Makefile文件 # Makefile under ifneq ($(KERNELRELEASE),) #kbuild syntax. dependency relationshsip of files and target modules are listed here. obj-m := else PWD := $(shell pwd) KVER ?= $(shell uname -r) KDIR := /lib/modules/$(KVER)/build all: $(MAKE) -C $(KDIR) M=$(PWD) modules clean: rm -rf .*.cmd *.o *. *.ko .tmp_versions *.symvers *.order endif 编译完成之后生成模块文件。 (3).内核模块源代码 #include #include #include #include #include #include #define MODULE #define MODULE_VERSION "" #define MODULE_NAME "clock" struct proc_dir_entry* my_clock; int read_clock(char* page, char** start, off_t off, int count, int* eof, void* data) { int len; struct timeval xtime;

操作系统实验报告--实验一--进程管理

实验一进程管理 一、目的 进程调度是处理机管理的核心内容。本实验要求编写和调试一个简单的进程调度程序。通过本实验加深理解有关进程控制块、进程队列的概念,并体会和了解进程调度算法的具体实施办法。 二、实验内容及要求 1、设计进程控制块PCB的结构(PCB结构通常包括以下信息:进程名(进程ID)、进程优先数、轮转时间片、进程所占用的CPU时间、进程的状态、当前队列指针等。可根据实验的不同,PCB结构的内容可以作适当的增删)。为了便于处理,程序中的某进程运行时间以时间片为单位计算。各进程的轮转时间数以及进程需运行的时间片数的初始值均由用户给定。 2、系统资源(r1…r w),共有w类,每类数目为r1…r w。随机产生n进程P i(id,s(j,k),t),0<=i<=n,0<=j<=m,0<=k<=dt为总运行时间,在运行过程中,会随机申请新的资源。 3、每个进程可有三个状态(即就绪状态W、运行状态R、等待或阻塞状态B),并假设初始状态为就绪状态。建立进程就绪队列。 4、编制进程调度算法:时间片轮转调度算法 本程序用该算法对n个进程进行调度,进程每执行一次,CPU时间片数加1,进程还需要的时间片数减1。在调度算法中,采用固定时间片(即:每执行一次进程,该进程的执行时间片数为已执行了1个单位),这时,CPU时间片数加1,进程还需要的时间片数减1,并排列到就绪队列的尾上。 三、实验环境 操作系统环境:Windows系统。 编程语言:C#。 四、实验思路和设计 1、程序流程图

2、主要程序代码 //PCB结构体 struct pcb { public int id; //进程ID public int ra; //所需资源A的数量 public int rb; //所需资源B的数量 public int rc; //所需资源C的数量 public int ntime; //所需的时间片个数 public int rtime; //已经运行的时间片个数 public char state; //进程状态,W(等待)、R(运行)、B(阻塞) //public int next; } ArrayList hready = new ArrayList(); ArrayList hblock = new ArrayList(); Random random = new Random(); //ArrayList p = new ArrayList(); int m, n, r, a,a1, b,b1, c,c1, h = 0, i = 1, time1Inteval;//m为要模拟的进程个数,n为初始化进程个数 //r为可随机产生的进程数(r=m-n) //a,b,c分别为A,B,C三类资源的总量 //i为进城计数,i=1…n //h为运行的时间片次数,time1Inteval为时间片大小(毫秒) //对进程进行初始化,建立就绪数组、阻塞数组。 public void input()//对进程进行初始化,建立就绪队列、阻塞队列 { m = int.Parse(textBox4.Text); n = int.Parse(textBox5.Text); a = int.Parse(textBox6.Text); b = int.Parse(textBox7.Text); c = int.Parse(textBox8.Text); a1 = a; b1 = b; c1 = c; r = m - n; time1Inteval = int.Parse(textBox9.Text); timer1.Interval = time1Inteval; for (i = 1; i <= n; i++) { pcb jincheng = new pcb(); jincheng.id = i; jincheng.ra = (random.Next(a) + 1); jincheng.rb = (random.Next(b) + 1); jincheng.rc = (random.Next(c) + 1); jincheng.ntime = (random.Next(1, 5)); jincheng.rtime = 0;

电子测量课程实验报告

福建农林大学计算机与信息学院 信息工程类 实验报告 课程名称:电子测量技术 姓名: 系:电子信息工程系 专业:电子信息工程 年级: 学号: 指导教师: 职称: 年月日

实验项目列表

福建农林大学计算机与信息学院信息工程类实验报告系:电子信息工程系专业:电子信息工程年级: 姓名:学号:实验课程:电子测量技术基础 实验室号:_田406 实验设备号: 10 实验时间: 指导教师签字:成绩: 实验一:示波器、信号发生器的使用 1.实验目的和要求 1)了解示波器的结构。 2)掌握波形显示的基本原理、扫描及同步的概念。 3)了解电子示波器的分类及主要技术性能指标。 4)掌握通用示波器的基本组成及各部分的作用。 5)了解各种信号发生器如正弦信号发生器、低频信号发生器、超低频信号发生器、函数信号发生器等的工作原理和性能指标以及信号选择。 2.实验原理 在时域信号测量中,电子示波器无疑是最具代表性的典型测量仪器。它可以精确复现作为时间函数的电压波形(横轴为时间轴,纵轴为幅度轴),不仅可以观察相对于时间的连续信号,也可以观察某一时刻的瞬间信号,这是电压表所做不到的。我们不仅可以从示波器上观察电压的波形,也可以读出电压信号的幅度、频率及相位等参数。 电子示波器是利用随电信号的变化而偏转的电子束不断轰击荧光屏而显示波形的,如果在示波管的X偏转板(水平偏转板)上加一随时间作线性变化的时基信号,在Y偏转板(垂直偏转板)加上要观测的电信号,示波器的荧光屏上便能显示出所要观测的电信号的时间波形。 若水平偏转板上无扫描信号,则从荧光屏上什么也看不见或只能看到一条

垂直的直线。因此,只有当X偏转板加上锯齿电压后才有可能将波形展开,看 到信号的时间波形。 一般说来,Y偏转板上所加的待观测信号的周期与X偏转板上所加的扫描 锯齿电压的周期是不相同的,也不一定是整数倍,因而每次扫描的起点对待观 测信号来说将不固定,则显示波形便会不断向左或向右移动,波形将一片模糊。 这就有一个同步问题,即怎样使每次扫描都在待观测信号不同周期的相同相位 点开始。近代电子示波器通常是采用等待触发扫描的工作方式来实现同步的。 只要选择不同的触发电平和极性,扫描便可稳定在待观测信号的某一相应相位 点开始,从而使显示波形稳定、清晰。 在现代电子示波器中,为了便于同时观测两个信号(如比较两个信号的 相位关系),采用了双踪显示的办法,即在荧光屏上可以同时有两条光迹出现, 这样,两个待测的信号便可同时显示在荧光屏上,双踪显示时,有交替、断续 两种工作方式。交替、断续工作时,扫描电压均为一种,只是把显示时间进行 了相应的划分而已。 由于双踪显示时两个通道都有信号输入,因此还可以工作于叠加方式,这 时是将两个信号逐点相加起来后送到Y偏转板的。这种工作方式可模拟谐波叠 加,波形失真等问题。同时,如果改变其中一个的极性,也可以实现相减的显 示功能。这相当于两个函数的相加减。 示波器除了用于观测信号的时间波形外,还可将两个相同或不同的信号 x 平面上正交叠加所组成的图分别加于垂直和水平系统,以观测两信号在y 形,如李沙育图形,它可用于观测两个信号之间的幅度、相位和频率关系。 3.主要仪器设备(实验用的软硬件环境) 1)函数信号发生器,型号YB1634,指标:0.2Hz-2MHz,数量2台; 2)双踪示波器,型号YB4320A,指标:20MHz,数量1台。 3)其它实验室常用工具。

计算机操作系统实验课实验报告

实验报告 实验课程: 计算机操作系统学生姓名:XXX 学号:XXXX 专业班级:软件 2014年12月25日

目录 实验一熟悉Windows XP中的进程和线程.. 3实验二进程调度 (7) 实验三死锁避免—银行家算法的实现 (18) 实验四存储管理 (24)

实验一熟悉Windows XP中的进程和线程 一、实验名称 熟悉Windows XP中的进程和线程 二、实验目的 1、熟悉Windows中任务管理器的使用。 2、通过任务管理器识别操作系统中的进程和线程的相关信息。 3、掌握利用spy++.exe来察看Windows中各个任务的更详细信息。 三、实验结果分析 1、启动操作系统自带的任务管理器: 方法:直接按组合键Ctrl+Alt+Del,或者是在点击任务条上的“开始”“运行”,并输入“taskmgr.exe”。

2、调整任务管理器的“查看”中的相关设置,显示关于进程的以下各项信息,并 完成下表: 表一:统计进程的各项主要信息 3、启动办公软件“Word”,在任务管理器中找到该软件的登记,并将其结束掉。再

从任务管理器中分别找到下列程序:winlogon.exe、lsass.exe、csrss.exe、smss.exe,试着结束它们,观察到的反应是任务管理器无法结束进程, 原因是该系统是系统进程。 4、在任务管理器中找到进程“explorer.exe”,将之结束掉,并将桌面上你打开的所 有窗口最小化,看看你的计算机系统起来什么样的变化桌面上图标菜单都消失了、得到的结论explorer.exe是管理桌面图标的文件(说出explorer.exe进程的作用)。 5、运行“spy++.exe”应用软件,点击按钮“”,切换到进程显示栏上,查看进 程“explorer.exe”的各项信息,并填写下表: 进程:explorer.exe 中的各个线程

嵌入式操作系统实验报告

中南大学信息科学与工程学院实验报告 姓名:安磊 班级:计科0901 学号: 0909090310

指导老师:宋虹

目录 课程设计内容 ----------------------------------- 3 uC/OS操作系统简介 ------------------------------------ 3 uC/OS操作系统的组成 ------------------------------ 3 uC/OS操作系统功能作用 ---------------------------- 4 uC/OS文件系统的建立 ---------------------------- 6 文件系统设计的原则 ------------------------------6 文件系统的层次结构和功能模块 ---------------------6 文件系统的详细设计 -------------------------------- 8 文件系统核心代码 --------------------------------- 9 课程设计感想 ------------------------------------- 11 附录-------------------------------------------------- 12

课程设计内容 在uC/OS操作系统中增加一个简单的文件系统。 要求如下: (1)熟悉并分析uc/os操作系统 (2)设计并实现一个简单的文件系统 (3)可以是存放在内存的虚拟文件系统,也可以是存放在磁盘的实际文件系统 (4)编写测试代码,测试对文件的相关操作:建立,读写等 课程设计目的 操作系统课程主要讲述的内容是多道操作系统的原理与技术,与其它计算机原理、编译原理、汇编语言、计算机网络、程序设计等专业课程关系十分密切。 本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统概念,理解和巩固操作系统基本理论、原理和方法,掌握操作系统开发的基本技能。 I.uC/OS操作系统简介 μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。它被广泛应用于微处理器、微控制器和数字信号处理器。 μC/OS 和μC/OS-II 是专门为计算机的嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU 硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU 上。用户只要有标准的ANSI 的C交叉编译器,有汇编器、连接器等软件工具,就可以将μC/OS-II嵌入到开发的产品中。μC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB 。μC/OS-II 已经移植到了几乎所有知名的CPU 上。 严格地说uC/OS-II只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务。但由于uC/OS-II良好的可扩展性和源码开放,这些非必须的功能完全 可以由用户自己根据需要分别实现。 uC/OS-II目标是实现一个基于优先级调度的抢占式的实时内核,并在这个内核之上提供最基本的系统服务,如信号量,邮箱,消息队列,内存管理,中断管理等。 uC/OS操作系统的组成 μC/OS-II可以大致分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分。如下图:

电子测量实验报告

实验三 电压表测量 一、 实验目的 1.掌握典型电压波形对不同检波方式电压表的影响,学会正确解读和修正测试数据 2.学习用电压表测量噪声电压的方法 二、 实验条件 1、数字合成函数信号发生器DFG30一台 2、超高频数字毫伏表TH2270一台 3、均值表ESCORT97/EDM89S 一台 4、6 位数字电压表 一台 5、模拟数字示波器HM1507-3一台 三、 实验原理 1.交流电压表的波形响应 一交流电压UX 的大小,可用该电压的峰值、平均值和有效值表征。 交流电压的峰值:是指任意周期性交变电压u (t)在一周期内,电压所能达到的最大值。 交流电压的平均值:指交流电压经过理想检波器后的平均值,实际中,不特别注明,是指全波平均值。数学表达为: dt t u T V T ?=0 )(1 交流电压的有效值:指电压通过某纯组负载所产生的热量与一个支流电压在同一负载上产生的热量相等时,该直流电压的数值就是交流电压的有效值。数学表示为: ?=T dt t u T V 02)(1 电压表的示值除另有说明外,均按正弦有效值刻度,读数用α表示。 根据交流电压的三种特征,可用峰值、平均值和有效值检波电路将测试电压变成直流,按直流电压进行刻度,分别构成峰值平均值和有效值电压表。 由检波方式的不同,要正确解读表的显示值,需加以换算。交流电压的波峰因数KF 定义为该电压的有效值与平均值之比: V V K f = 交流电压的波峰因数KP 定义为电压的波峰值与有效值之比: V V K p ?= 2.测试按图3-1进行 21

峰值表的检波探头如图3-2: 用这种探头可检测10KHz 以上的交流电压。 四、 实验内容 1.用峰值表TH2270测电压 置信号源输出2V ,频率100KHz ,占空比50%,偏置为零的正弦、三角和方波,有效值即DFG30所显示峰值的换算数值,或由数字电压表测得,作 2.用均值表测电压

实时操作系统报告

实时操作系统课程实验报告 专业:通信1001 学号:3100601025 姓名:陈治州 完成时间:2013年6月11日

实验简易电饭煲的模拟 一.实验目的: 掌握在基于嵌入式实时操作系统μC/OS-II的应用中,基于多任务的模式的编程方法。锻炼综合应用多任务机制,任务间的通信机制,内存管理等的能力。 二.实验要求: 1.按“S”开机,系统进入待机状态,时间区域显示当前北京时间,默认模式“煮饭”; 2.按“C”选择模式,即在“煮饭”、“煮粥”和“煮面”模式中循环选择; 3.按“B”开始执行模式命令,“开始”状态选中,时间区域开始倒计时,倒计时完成后进入“保温”状态,同时该状态显示选中,时间区域显示保温时间; 4.按“Q”取消当前工作状态,系统进入待机状态,时间区域显示北京时间,模式为当前模式; 5.按“X”退出系统,时间区域不显示。 6.煮饭时长为30,煮粥时长为50,煮面时长为40. 三.实验设计: 1.设计思路: 以老师所给的五个程序为基础,看懂每个实验之后,对borlandc的操作有了大概的认识,重点以第五个实验Task_EX为框架,利用其中界面显示与按键扫描以及做出相应的响应,对应实现此次实验所需要的功能。 本次实验分为界面显示、按键查询与响应、切换功能、时钟显示与倒计时模块,综合在一起实验所需功能。 2.模块划分图: (1)界面显示: Main() Taskstart() Taskstartdispinit() 在TaskStartDispInit()函数中,使用PC_DispStr()函数画出界面。

(2)按键查询与响应: Main() Taskstart() 在TaskStart()函数中,用if (PC_GetKey(&key) == TRUE)判断是否有按键输入。然后根据key 的值,判断输入的按键是哪一个;在响应中用switch语句来执行对应按键的响应。 (3)切换功能: l计数“C”按 键的次数 M=l%3 Switch(m) M=0,1,2对应于煮饭,煮粥,煮面,然后使用PC_DispStr()函数在选择的选项前画上“@”指示,同时,在其余两项钱画上“”以“擦出”之前画下的“@”,注意l自增。 四.主要代码: #include "stdio.h" #include "includes.h" #include "time.h" #include "dos.h" #include "sys/types.h" #include "stdlib.h" #define TASK_STK_SIZE 512 #define N_TASKS 2 OS_STK TaskStk[N_TASKS][TASK_STK_SIZE]; OS_STK TaskStartStk[TASK_STK_SIZE]; INT8U TaskData[N_TASKS];

最新电子测量实验报告

电子测量实验报告 姓名: 学号: 同组人: 指导教师:曾国宏 实验日期:2014.11.23

示波器波形参数测量实验报告 :学号:指导教师:曾国宏 一、实验目的 通过示波器的波形参数测量,进一步巩固加强示波器的波形显示原理的掌握,熟悉示波器的使用技巧。 1.熟练掌握用示波器测量电压信号峰峰值,有效值及其直流分量。 2.熟练掌握用示波器测量电压信号周期及频率。 3.熟练掌握用示波器在单踪方式和双踪方式下测量两信号的相位差。 二、实验预习 实验所用示波器为SS7802A型示波器。SS7802型示波器是日本岩崎公司生产的带有CRT读出功能的20MHZ带宽模拟双踪示波器。该示波器带有CRT读出功能,所以能够方便、准确地进行电压幅度、频率、相位和时间间隔等的测量。 单踪示波器和双踪示波器的差别:单踪示波器只能显示一个信号的波形,双踪可以同时显示两个信号的波形。 三、实验仪器与设备 1、SS7802A型示波器 a、主要参数: SS-7802模拟示波器·具有能够选择场方式、线路的TV/视频同步功能·附有光标和读出功能·5位数计数器规格及性能·显像管:6英寸、方型8×10p(1p=10mm)约16kV·垂直灵敏度:2mV/p~5V/p(1-2-5档)(通道1、通道2)精度:±2%·频率范围:20MHz·时间轴扫描A·100ns/p~500ms/p·TV/视频同步:能够选择场方式、能够选择ODD、EVEN、BOTH、扫描线路· b、主要功能描述 示波器操作板如图所示:

?包括如下五个操作控制区域: 水平控制区 【?POSITION?】:将【?POSITION?】向右旋转,波形右移。 FINE 指示灯亮时,旋转【?POSITION?】可作微调。 MAG×10 :扫描速率提高10 倍,波形将基于中心位置向左右放大。 ALT CHOP :选择ALT(交替,两个或多个信号交替扫描)或CHOP(断续,两个或多个信号交替扫描)。 ◆垂直控制区 INPUT :输入连接器(CH1、CH2),连接输入信号。 EXT INPUT :用外触发信号做触发源。外信号通过前面板的EXT INPUT 接入。 【VOLTS/DIV】:调节【VOLTS/DIV】选择偏转因数。按下【VOLTS/DIV】;偏转因数显示“”符号。在该屏幕下,可执行微调程序。 【▲POSITION▼】:垂直位移,向右旋转,波形上移。 CH1 、CH2 :通道选择,按下CH1 或CH2 选择通道显示或不显示。 GND :按下GND 打开接地开关。 DC/AC: 选择直流(DC)或交流(AC)耦合。 ADD 、INV :显示(CH1+CH2)(相加〈ADD〉)或(CH1-CH2)(相减〈INV〉)。 ◆触发及扫描控制区 【TIME/DIV】:选择扫描速率。 【TRIG LEVEL】:调整触发电平。 SLOPE :选择触发沿(+、―)。 SOURCE :选择触发来源(CH1、CH2、LINE、EXT、VERT)。 COUPL :选择触发耦合方式(AC、DC 、HF REJ 或LF REJ)。 TV :视频信号触发选择(BOTH、ODD、EVEN、或TV-H)。

流量测量实验报告

课程实验报告 学年学期 2012—2013学年第二学期课程名称工程水文学 实验名称河道测深测速实验 实验室北校区灌溉实验站 专业年级热动113 学生姓名白治朋 学生学号 2011012106 任课教师向友珍李志军 水利与建筑工程学院

1 实验目的 (1)了解流速仪的主要构造及其作用、仪器的性能。 (2)掌握流速仪的装配步骤与保养方法。 (3)了解流速仪测流的基本方法。 2 实验内容 LS25-3C型旋浆流速仪是一种新改型仪器,采用磁电转换原理,无触点式测量,信号采集数多,灵敏度高,防水,防沙性能好,仪器结构紧凑,是一种大量程的流速仪。适用于一般河流,水库、湖泊、河口、水电站、溢港道等高、中、低流速测量。配用HR型流速测算仪。 2.1 主要技术指标 (1)测速范围: V=0.04-10 m/s (2)仪器的起转速: Vo≤0.035 m/s (3)临界速度: Vk≤0.12m/s (4)每转四个信号 (5)旋浆水力螺距: K=250mm(理论) (6)检定公式全线均方差:M≤1.5% (7)信号接收处理:HR型流速仪测算仪(适应线性关系) (8)测流历时: 20s、50s、l00s或1~999s任意设置 (9)测量数位:四位有效数 (10)显示查询方式:显示内容有时间、K值、C值、历时T、流速V、信号数等。 (11)参数设置及保存:可调校时间及设置K、C、T值等参数,设置后参数在掉电状态能长期 2.2仪器结构 本仪器按工作原理可分为:感应,传信,测算,尾翼部份。仪器测流时的安装方式有悬杆,转轴和测杆等几种。 (1)感应部份为一个双叶螺旋浆,安装于支承系统上灵敏地感应水流速度的变化。旋浆的转速与水流速度之间的函数关系由流速仪检定水槽实验得出。 (2)传信部份由磁钢,接收电子器件一霍尔传感器构成,浆叶旋转带动磁钢转动。 (3)HR型流速测算仪控制板由89CXX系列单片机及有关电路组成,液晶显示采用的是二线式串行

操作系统课程设计实验报告

河北大学工商学院 课程设计 题目:操作系统课程设计 学部信息学部 学科门类电气信息 专业计算机 学号2011482370 姓名耿雪涛 指导教师朱亮 2013 年6月19日

主要内容 一、设计目的 通过模拟操作系统的实现,加深对操作系统工作原理理解,进一步了解操作系统的实现方法,并可练习合作完成系统的团队精神和提高程序设计能力。 二、设计思想 实现一个模拟操作系统,使用VB、VC、CB等windows环境下的程序设计语言,以借助这些语言环境来模拟硬件的一些并行工作。模拟采用多道程序设计方法的单用户操作系统,该操作系统包括进程管理、存储管理、设备管理、文件管理和用户接口四部分。 设计模板如下图: 注:本人主要涉及设备管理模块

三、设计要求 设备管理主要包括设备的分配和回收。 ⑴模拟系统中有A、B、C三种独占型设备,A设备1个,B设备2个,C设备2个。 ⑵采用死锁的预防方法来处理申请独占设备可能造成的死锁。 ⑶屏幕显示 注:屏幕显示要求包括:每个设备是否被使用,哪个进程在使用该设备,哪些进程在等待使用该设备。 设备管理模块详细设计 一、设备管理的任务 I/O设备是按照用户的请求,控制设备的各种操作,用于完成I/O 设备与内存之间的数据交换(包括设备的分配与回收,设备的驱动管理等),最终完成用户的I/O请求,并且I/O设备为用户提供了使用外部设备的接口,可以满足用户的需求。 二、设备管理函数的详细描述 1、检查设备是否可用(主要代码) public bool JudgeDevice(DeviceType type) { bool str = false; switch (type) { case DeviceType.a: {

嵌入式实时操作系统实验报告

嵌入式实时操作系统实验报告 任务间通信机制的建立 系别计算机与电子系 专业班级***** 学生姓名****** 指导教师 ****** 提交日期 2012 年 4 月 1 日

一、实验目的 掌握在基于嵌入式实时操作系统μC/OS-II的应用中,任务使用信号量的一般原理。掌握在基于优先级的可抢占嵌入式实时操作系统的应用中,出现优先级反转现象的原理及解决优先级反转的策略——优先级继承的原理。 二、实验内容 1.建立并熟悉Borland C 编译及调试环境。 2.使用课本配套光盘中第五章的例程运行(例5-4,例5-5,例5-6),观察运行结果,掌握信号量的基本原理及使用方法,理解出现优先级反转现象的根本原因并提出解决方案。 3.试编写一个应用程序,采用计数器型信号量(初值为2),有3个用户任务需要此信号量,它们轮流使用此信号量,在同一时刻只有两个任务能使用信号量,当其中一个任务获得信号量时向屏幕打印“TASK N get the signal”。观察程序运行结果并记录。 4. 试编写一个应用程序实现例5-7的内容,即用优先级继承的方法解决优先级反转的问题,观察程序运行结果并记录。 5.在例5-8基础上修改程序增加一个任务HerTask,它和YouTask一样从邮箱Str_Box里取消息并打印出来,打印信息中增加任务标识,即由哪个任务打印的;MyTask发送消息改为当Times为5的倍数时才发送,HerTask接收消息采用无等待方式,如果邮箱为空,则输出“The mailbox is empty”, 观察程序运行结果并记录。 三、实验原理 1. 信号量 μC/OS-II中的信号量由两部分组成:一个是信号量的计数值,它是一个16位的无符号整数(0 到65,535之间);另一个是由等待该信号量的任务组成的等待任务表。用户要在OS_CFG.H中将OS_SEM_EN开关量常数置成1,这样μC/OS-II 才能支持信号量。

操作系统实验报告

操作系统教程 实 验 指 导 书 姓名: 学号: 班级:软124班 指导老师:郭玉华 2014年12月10日

实验一WINDOWS进程初识 1、实验目的 (1)学会使用VC编写基本的Win32 Consol Application(控制台应用程序)。 (2)掌握WINDOWS API的使用方法。 (3)编写测试程序,理解用户态运行和核心态运行。 2、实验内容和步骤 (1)编写基本的Win32 Consol Application 步骤1:登录进入Windows,启动VC++ 6.0。 步骤2:在“FILE”菜单中单击“NEW”子菜单,在“projects”选项卡中选择“Win32 Consol Application”,然后在“Project name”处输入工程名,在“Location”处输入工程目录。创建一个新的控制台应用程序工程。 步骤3:在“FILE”菜单中单击“NEW”子菜单,在“Files”选项卡中选择“C++ Source File”, 然后在“File”处输入C/C++源程序的文件名。 步骤4:将清单1-1所示的程序清单复制到新创建的C/C++源程序中。编译成可执行文件。 步骤5:在“开始”菜单中单击“程序”-“附件”-“命令提示符”命令,进入Windows“命令提示符”窗口,然后进入工程目录中的debug子目录,执行编译好的可执行程序: E:\课程\os课\os实验\程序\os11\debug>hello.exe 运行结果 (如果运行不成功,则可能的原因是什么?) : 有可能是因为DOS下路径的问题 (2)计算进程在核心态运行和用户态运行的时间 步骤1:按照(1)中的步骤创建一个新的“Win32 Consol Application”工程,然后将清单1-2中的程序拷贝过来,编译成可执行文件。 步骤2:在创建一个新的“Win32 Consol Application”工程,程序的参考程序如清单1-3所示,编译成可执行文件并执行。 步骤3:在“命令提示符”窗口中运行步骤1中生成的可执行文件,测试步骤2中可执行文件在核心态运行和用户态运行的时间。 E:\课程\os课\os实验\程序\os12\debug>time TEST.exe 步骤4:运行结果 (如果运行不成功,则可能的原因是什么?) : 因为程序是个死循环程序 步骤5:分别屏蔽While循环中的两个for循环,或调整两个for循环的次数,写出运行结果。 屏蔽i循环: 屏蔽j循环: _______________________________________________________________________________调整循环变量i的循环次数:

操作系统实验报告

实验报告 实验课程名称:操作系统 实验地点:南主楼七楼机房 2018—2019学年(一)学期 2018年 9月至 2019 年 1 月 专业: 班级: 学号: 姓名: 指导老师:刘一男

实验一 实验项目:分时系统模拟 实验学时:2实验日期: 2018-10-25 成绩: 实验目的利用程序设计语言模拟分时系统中多个进程按时间片轮转调度算法进行进程调度的过程; 假设有五个进程A,B,C,D,E,它们的到达时间及要求服务的时间分别为:进程名 A B C D E 到达时间0 1 2 3 4 服务时间 4 3 4 2 4 时间片大小为1,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。 执行过程并计算各进程的周转时间及带权周转时间。 轮转调度:BDACE

(1)修改时间片大小为2,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间。 轮转调度:ADBCE (2)修改时间片大小为4,利用程序模拟A,B,C,D,E五个进程按时间片轮转的调度及执行过程并计算各进程的周转时间及带权周转时间.

顺序:ABCDE 1、思考 时间片的大小对调度算法产生什么影响?对计算机的性能产生什么影响?答:通过对时间片轮转调度算法中进程最后一次执行时间片分配的优化,提出了一种改进的时间片轮转调度算法,该算法具有更好的实时性,同时减少了任务调度次数和进程切换次数,降低了系统开销,提升了CPU的运行效率,使操作系统的性能得到了一定的提高。 A B C D E 时间片为1 周转时间12 9 14 8 13 3 3 3.5 4 3.25 带权周转 时间 时间片为2 周转时间8 12 13 7 13 2 4 3.25 3.5 3.25 带权周转 时间 时间片为4 周转时间 4 6 9 10 13 1 2 2.25 5 3.25 带权周转 时间

常用电子仪器的使用实验报告

广州大学学生实验报告 院(系)名称班 别姓名 专业名称学号 实验课程名称模拟电路实验 实验项目名称常用电子仪器的使用 实验时间实验地点 实验成绩指导老师签名 【实验目的】 1、学习电子电路实验中常用的电子仪器——示波器、函数信号发生器、直流稳压电源、交流毫伏表、频率计等的主要技术指标、性能及正确使用方法。 2、初步掌握用双踪示波器观察正弦信号波形,锯齿波信号波形,方波波形和读取波形参数的方法。 【实验仪器与材料】 DS1062E数字示波器一台 AS101E函数信号发生器一台 DA-16D交流毫伏表一台 【实验原理】 在模拟电子电路实验中,经常使用的电子仪器有示波器、函数信号发生器、直流稳压电源、交流毫伏表及频率计等。它们和万用电表一起,可以完成对模拟电子电路的静态和动态工作情况的测试。 实验中要对各种电子仪器进行综合使用,可按照信号流向,以连线简捷,调节顺手,观察与读数方便等原则进行合理布局,各仪器与被测实验装置之间的布局与连接如图1-1所示。接线时应注意,为防止外界干扰,各仪器的共公接地端应连接在一起,称共地。信号源和交流毫伏表的引线通常用屏蔽线或专用电缆线,示波器接线使用专用电缆线,直流电源的接线用普通导线。 【实验步骤】 1、用机内校正信号对示波器进行自检。 (1) 扫描基线调节 将示波器的显示方式开关置于“单踪”显示(Y1或Y2),输入耦合方式开关置“GND”,触发方式开关置于“自动”。开启电源开关后,调节“辉度”、“聚焦”、“辅助聚焦”等旋钮,使荧光屏上显示一条细而且亮度适中的扫描基线。然后调节“X轴位移”()和“Y轴位移”( )旋钮,使扫描线位于屏幕中央,并且能上下左右移动自如。 (2)测试“校正信号”波形的幅度、频率 将示波器的“校正信号”通过专用电缆线引入选定的Y通道(Y1或Y2),将Y轴输入耦合方式开关置于“AC”或“DC”,触发源选择开关置“内”,内触发源选择开关置“Y1”或“Y2”。调节X轴

操作系统实验报告心得体会

操作系统实验报告心得体会 每一次课程设计度让我学到了在平时课堂不可能学到的东西。所以我对每一次课程设计的机会都非常珍惜。不一定我的课程设计能够完成得有多么完美,但是我总是很投入的去研究去学习。所以在这两周的课设中,熬了2个通宵,生物钟也严重错乱了。但是每完成一个任务我都兴奋不已。一开始任务是任务,到后面任务就成了自己的作品了。总体而言我的课设算是达到了老师的基本要求。总结一下有以下体会。 1、网络真的很强大,用在学习上将是一个非常高效的助手。几乎所有的资料都能够在网上找到。从linux虚拟机的安装,到linux的各种基本命令操作,再到gtk的图形函数,最后到文件系统的详细解析。这些都能在网上找到。也因为这样,整个课程设计下来,我浏览的相关网页已经超过了100个(不完全统计)。当然网上的东西很乱很杂,自己要能够学会筛选。 不能决定对或错的,有个很简单的方法就是去尝试。就拿第二个实验来说,编译内核有很多项小操作,这些小操作错了一项就可能会导致编译的失败,而这又是非常要花时间的,我用的虚拟机,编译一次接近3小时。所以要非常的谨慎,尽量少出差错,节省时间。多找个几个参照资料,相互比较,

慢慢研究,最后才能事半功倍。 2、同学间的讨论,这是很重要的。老师毕竟比较忙。对于课程设计最大的讨论伴侣应该是同学了。能和学长学姐讨论当然再好不过了,没有这个机会的话,和自己班上同学讨论也是能够受益匪浅的。大家都在研究同样的问题,讨论起来,更能够把思路理清楚,相互帮助,可以大大提高效率。 3、敢于攻坚,越是难的问题,越是要有挑战的心理。这样就能够达到废寝忘食的境界。当然这也是不提倡熬夜的,毕竟有了精力才能够打持久战。但是做课设一定要有状态,能够在吃饭,睡觉,上厕所都想着要解决的问题,这样你不成功都难。 4、最好在做课设的过程中能够有记录的习惯,这样在写实验报告时能够比较完整的回忆起中间遇到的各种问题。比如当时我遇到我以前从未遇到的段错误的问题,让我都不知道从何下手。在经过大量的资料查阅之后,我对段错误有了一定的了解,并且能够用相应的办法来解决。 在编程中以下几类做法容易导致段错误,基本是是错误地使用指针引起的 1)访问系统数据区,尤其是往系统保护的内存地址写数据,最常见就是给一个指针以0地址 2)内存越界(数组越界,变量类型不一致等) 访问到不属于你的内存区域

实时操作系统实验报告2

实时操作系统实验报告 专业:11通信工程 学号:20110306136 姓名: 王帅 指导老师:申屠浩

实验二 任务管理实验 实验目的: 1、理解任务管理的基本原理,了解任务的各个基本状态及其变迁过程; 2、掌握μC/OS -II 中任务管理的基本方法(挂起、解挂); 3、熟练使用μC/OS -II 任务管理的基本系统调用。 实验要求与思路: 为了体现任务的各个基本状态及其变迁过程,本实验设计了T0、T1和T3三个任务,它们交替运行,如图2-2所示。 T0 T1 T2 T3 T4 T5 T6 T7 T8 图2-2 注意: 图中的栅格并不代表严格的时间刻度,而仅仅表现各任务启动和执行的相对先后关系。 说明: 在系统完成初始化后,可以先创建并启动优先级最低的TaskStart ,由它创建其他3个应用任务T0、T1和T2,之后整个系 T0 T2 T1 T0 T1 T2 T1 T0

统的运行流程如下: 1)优先级最高的T0开始执行,之后T0挂起自己; 2)然后系统调度选中T1开始执行,之后T1挂起自己; 3)接着系统调度选中T2,之后唤醒T0; 4)如此循环 实现提示: 在启动任务中创建三个任务后,应挂起任务1和任务2。 在每个任务恢复其它任务并挂起自己之前,显示当前三个任务的状态,并延时1秒。 函数说明: void PC_GetDateTime (char *s); 获取"YYYY-MM-DD HH:MM:SS"格式的时间字串存放在字符串s中,s的长度最少为21字节。 void PC_DispStr (INT8U x, INT8U y, INT8U *s, INT8U color); 在y行x列以color颜色值显示字串s,注意color由背景色和前景色两种颜色构成。 INT8U OSTimeDlyHMSM (INT8U hours, INT8U minutes, INT8U seconds, INT16U milli); 按时、分、秒、毫秒设置进行延时。 void OSTimeDly (INT16U ticks) 按ticks值进行延时,1 ticks一般为10ms。 INT32U OSTimeGet (void)

计算机操作系统进程调度实验报告材料

操作系统实验题:设计一若干并发进程的进程调度程序 一、实验目的 无论是批处理系统、分时系统还是实时系统,用户进程数一般都大于处理机数,这将导致用户进程互相争夺处理机。这就要求进程调度程序按一定的策略,动态地把处理及分配给处于就绪队列中的某一进程,以使之执行。进程调度是处理机管理的核心内容。本实验要求采用最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)和先来先服务算法编写和调试一个简单的进程调度程序。通过本实验可以加深理解有关进程控制块、进程队列的概念。并体会了优先数和先来先服务调度算法的具体实施办法。 二、实验要求 用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解. 三、实验内容 进程调度算法:采用最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)和先来先服务算法(将用户作业和就绪进程按提交顺序或变为就绪状态的先后排成队列,并按照先来先服务的方式进行调度处理)。 每个进程有一个进程控制块(PCB)表示。进程控制块可以包含如下信息:进程名、优先数、到达时间、需要运行时间、已用CPU时间、进程状态等等。 进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的到达时间为进程输入的时间。 进程的运行时间以时间片为单位进行计算。

每个进程的状态可以是就绪W(Wait)、运行R(Run)、或完成F(Finish)三种状态之一。 就绪进程获得CPU后都只能运行一个时间片。用已占用CPU时间加1来表示。 如果运行一个时间片后,进程的已占用CPU时间已达到所需要的运行时间,则撤消该进程,如果运行一个时间片后进程的已占用CPU时间还未达所需要的运行时间,也就是进程还需要继续运行,此时应将进程的优先数减1(即降低一级),然后把它插入就绪队列等待CPU。 每进行一次调度程序都打印一次运行进程、就绪队列、以及各个进程的PCB,以便进行检查。重复以上过程,直到所要进程都完成为止。 四、实验算法流程 调度算法的流程图如下:

相关主题
文本预览
相关文档 最新文档