卫星导航定位实验报告

卫星导航定位实验报告
卫星导航定位实验报告

China University of Mining and Technology 《卫星导航定位算法与程序设计》

实验报告

学号: 07122825

姓名:王亚亚

班级:测绘12—1

指导老师:王潜心/张秋昭/刘志平

中国矿业大学环境与测绘学院

2015-07-01

实验一编程实现读取下载的星历

一、实验要求:

读取RINEX N 文件,将所有星历放到一个列表(数组)中。并输出和自己学号相关的卫星编号的星历文件信息。读取RINEX O文件,并输出指定时刻的观测信息。

二、实验步骤:

1、下载2014年的广播星历文件和观测值文件,下载地址如下:

ftp://https://www.360docs.net/doc/2c10762235.html,/gps/data/daily/2014/

2、要求每一位同学按照与自己学号后三位一致的年积日的数据文件和星历文件,站点的选择必须选择与姓氏首字母相同的站点的数据,以王小康同学为例,学号:07123077,需下载077那天的数据。有些同学的学号365<后三位

<730,则取学号后三位-365,以姜平同学为例:学号10124455,下载455-

365=90 天的数据,有些同学的学号730<后三位<=999,则取学号后三位-730,以万伟同学为例:学号:07122854,则下载854-730 = 124天的数据。可以选择wnhu0124.14n wnhu0124.14o 根据上述要求我下载了2014年第95天的数据,选择其中的wsrt0950.14n和wsrt0950.14o星历文件。指定时刻(学号后五位对应在年积日对应的秒最相近时刻)的观测值信息如张良09123881,后五位23881,取23881-3600*6= 2281秒,6点38分01秒,最近的历元应该是6点38分00秒的数据。根据计算与我最接近的观测时刻为2014年4月5日6点20分30.00秒。

3、编程思路:

利用rinex函数读取星历文件中第14颗卫星的星历数据并输出显示。对数据执行762次循环找到对应的2014年4月5日6点20分30.00秒,并输出观测值。

4、程序运行结果:

三、编程主要代码:

1、读写N 文件主函数代码: clc;%清除屏幕之前打过的代码

clear all ;%从内存中释放所有的内存变量和数组以及所有用户自定义的菜单栏, 菜单, 和窗口的定义。

close all ;%关闭当前及所有工作区中所有打开的数据库, 表, 和索引,并选择 1 号工作区 [filename,filepath]=uigetfile('*.14n','选择计算的输入文件');%打开窗口选取计算的输入文件 file=[filepath filename];%获得文件名 rinexe(file,'eph.dat');%函数rinexe 读取一个标准格式化导航信息文件并重新格式化数据为21行列数等于卫星数的矩阵。

Eph = get_eph('eph.dat');%将存放在‘eph.dat ’中的导航电文数据提取出来,为计算卫星位置做准备,返回值-eph 星历矩阵,将读到的数据存入内存(注意:eph 星历矩阵,每颗卫星存放21个参数) Eph

[filename,filepath]=uiputfile('王亚亚-作业1读写N 导航文件.txt','选择一个路径对结果文件保存');%选择路径保存输出的结果文件 file=[filepath filename];%获取文件名 fid = fopen(file,'wt+');%文件有两种格式:二进制文件(b)和文本文件(t)。在Windows 下,打开文件的默认是二进制格式,如果要以文本方式打开,则必须在打方式中加上字符 't'。 fprintf(fid,'%c',' 班级 姓名 学号 作业序号 主要内容 ');

fprintf(fid,'%c\n',' ');

fprintf(fid,'%c',' 测绘12-1 王亚亚

07122825 上机实验作业一 读写N 导航文件 '); fprintf(fid,'%c\n',' '); for k = 1: size(Eph,1)

p=num2str(Eph(k,44));%输出第14颗卫星的星历数据

fprintf(fid,'%c',p);%以一个字符输出 if k == 1;

fprintf(fid,'%c',' %GPS 卫星PRN 编号'); end if k == 2;

fprintf(fid,'%c',' %GPS 卫星钟的漂移速度'); end

if k == 3; fprintf(fid,'%c',' %参考时刻的升交点赤经M0'); end

if k == 4; fprintf(fid,'%c',' %roota sqrt(A)( m1 / 2(根号下) ) 轨道长半轴的平方根'); end

if k == 5; fprintf(fid,'%c',' %deltan Δn(rad /s) 平均运动修正量'); end

if k == 6; fprintf(fid,'%c',' %ecc e 轨道偏心率'); end if k == 7;

fprintf(fid,'%c',' %omega ω(rad) 近地点的角距'); end

if k == 8; fprintf(fid,'%c',' %cuc Cuc(rad) 纬度幅角的余弦调和项改正的振幅'); end

if k == 9; fprintf(fid,'%c',' %cus Cus(radians) 纬度幅角的正弦调和项改正的振幅'); end

if k == 10; fprintf(fid,'%c',' %crc Crc(m) 轨道半径的余弦调和项改正的振幅');

end

if k == 11; fprintf(fid,'%c',' %crs Crs(m)轨道半径的正弦调和项改正的振幅'); end

if k == 12; fprintf(fid,'%c',' %i0 i0(rad) 轨道倾角'); end

if k == 13; fprintf(fid,'%c',' %idot i(rad/s)(IDOT) 轨道倾角变化率'); end

if k == 14; fprintf(fid,'%c',' %cic Cic(rad) 轨道倾角的余弦调和项改正的振幅'); end

if k == 15; fprintf(fid,'%c',' %cis

Cis(rad) 轨道倾角的正弦调和项改正的振幅'); end

if k == 16;

fprintf(fid,'%c',' %Omega0

Ω(rad)(OMEGA) 参考时刻的升交点的赤经'); end

if k == 17;

fprintf(fid,'%c',' %Omegadot Ω

(rad/s)(OMEGA DOT) 升交点赤经的变化率'); end

if k == 18;

fprintf(fid,'%c',' %toe TOE星历的参考时刻(GPS周内的秒数) 星历表参考历元'); end

if k == 19; fprintf(fid,'%c',' %af0 卫星钟的偏差(s)卫星钟偏差'); end

if k == 20; fprintf(fid,'%c',' %af1 卫星钟的漂移(s/s)'); end

if k == 21;

fprintf(fid,'%c',' %toe 存储TOE星历的参考时刻(GPS周内的秒数) 电文发送时刻'); end

fprintf(fid,'%c\n',' ');

end

fclose(fid);

2、读写O文件主函数代码:

clc;%清除屏幕之前打过的代码

clear all;%从内存中释放所有的内存变量和数组以及所有用户自定义的菜单栏, 菜单, 和窗口的定义。

close all;%关闭当前及所有工作区中所有打开的数据库, 表, 和索引,并选择1 号工作区% We identify the observation file and open it

我们确定观测文件并打开它

[filename,filepath]=uigetfile('*.14O','选择计算的输入的O文件');

file=[filepath filename];%文件名

fid1 = fopen(file,'rt');%r:读出观测文件ofile1,t:以文本的格式(因为fopen函数默认打开方式是二进制)

[Obs_types1, ant_delta1, ifound_types1, eof11] = anheader(file);%打开观测文件ofile1,从头文件中截取观测类型Obs_types1、天线参数的信息ant_delta1,以及标明是否寻找到观测类型行ifound_types1、是否到文件尾的判定eof11 NoObs_types1 = size(Obs_types1,2)/2;%返回观测类型Obs_types1列数(1:行2:列)的

Obs_types1矩阵是1行14列:[C1P1P2L1L2D1D2] size(Obs_types1,2)值是14除以2得观测值类型个数是7种

Pos = [];

% There are 20 epochs of data in ofile1

SITE247J.01N文件中有20个历元的数据

for q = 1:761 %循环762次找到对应的2014年4月5日6点20分30.0000000秒

[time1, dt1, sats1,eof1,datee] =

fepoch_0(fid1);

% [time1, dt1, sats1, eof1] =

fepoch_0(fid1);%通过函数fepoch_0调用观测文件SITE247J.01O,返回四个参数:time1:周内秒、dt1:接收机时钟的偏差( 单位为s, 为可选项)、sats1:卫星的PRN号矩阵、

eof1:返回是否到文件尾的标示符(1:结束0:未结束)

NoSv1 = size(sats1,1);%通过查看行向量sats1的长度,获取卫星个数

% We pick the observed P2 pseudoranges 我们获取观测的P2码伪距其中伪随机噪声码(PN)即测距码主要有精测距码(P码)和粗测距码(C/A码)两种。其中P码的码率

为10.23MHz、C/A码的码率为1.023MHz,长度为1023

obs1 = grabdata(fid1, NoSv1,

NoObs_types1); %输入观测文件名、观测卫星个数、观测卫星类型数。输出Obs矩阵,行:卫星个数、列:观测类型:C1 P1 P2 L1 L2 D1 D2

i = fobs_typ(Obs_types1,'P2');%在观测类型:C1 P1 P2 L1 L2 D1 D2查找出‘P2’所在位置,并赋值给i

2.235646758400000e+07

end

[filename,filepath]=uiputfile('王亚亚-作业1读写O观测文件.txt','选择一个路径对结果文件保存');%选择路径保存输出的结果文件

file=[filepath filename];

fid = fopen(file,'wt+');%文件有两种格式:二进制文件(b)和文本文件(t)。在Windows下,打开文件的默认是二进制格式,如果要以文本方式打开,则必须在打方式中加上字符't'。

%fid = fopen('作业1.txt','wt+');%文件有两种格式:二进制文件(b)和文本文件(t)。在Windows 下,打开文件的默认是二进制格式,如果要以文本方式打开,则必须在打方式中加上字符't'。

fprintf(fid,'%c',' 班级姓名

学号作业序号主要内容');

fprintf(fid,'%c\n',' ');

fprintf(fid,'%c',' 测绘12-1 王亚亚07122825 上机实验作业一读写观测O文件');fprintf(fid,'%c\n',' ');

%fprintf(fid,'%8.3f %8.3f %8.3f %8.3f %8.3f %8.3f\n',datee');

for i=1:1%输出datee矩阵即时间

for j=1:6

fprintf(fid,'%d\t',datee(i,j));

if rem(i,1)==0 && rem(j,6)==0

fprintf(fid,'%c','%时间');

%fprintf(fid,'\r\n');

end

end

end

fprintf(fid,'%c\n',' ');

fprintf(fid,'%c',' L1 L2

C1 P1 P2 ');

fprintf(fid,'%c\n',' ');

for k=1:size(sats1,1);%卫星个数

f=sats1(k,1);

for i=1:1%输出obs1矩阵

for j=1:5

fprintf(fid,'%d\t',obs1(i,j));

if rem(i,1)==0 && rem(j,5)==0

fprintf(fid,'%s%d%s ','%读取的是',f','号卫星');

fprintf(fid,'\r\n');

end

end

end

end

fprintf(fid,'%c\n',' ');

fclose(fid);

3、主要函数代码及其注释:

rinex函数代码:

function rinexe(ephemerisfile, outputfile)

fide = fopen(ephemerisfile); %fopen()函数功能是打开一个文件,在这里就是打开星历表文件

head_lines = 0; %头行赋值为0

while 1 % We skip header 我们跳过头行

那么while 1 其中1代表一个常量表达式,他永远不会等于0。所以,循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止。该循环用于跳过整个头文件head_lines = head_lines+1;%当跳出循环体的时候,head_lines存储了头文件的行数为多少

line = fgetl(fide); %fgetl()函数功能:在MATLAB中,该函数用于从文件中读取一行数据,并丢弃行末的换行符;读取一行后停

留在该行末端,line保存的是字符串

answer = findstr(line,'END OF

HEADER'); %findstr()在文件中寻找字符串END OF HEADER 注释RINEX 格式文件的文件头用于存放与整个文件有关的全局性信息, 位于每个文件的最前部, 其最后一个记录为“END OF HEADER”。

if ~isempty(answer), break; end; %如果answer是非空的,则跳出当前的循环体end;

head_lines

noeph = -1;

while 1

noeph = noeph+1;%循环结束时存储了星历表的行数

line = fgetl(fide);

if line == -1, break; end%line是一个文本字符串,除非该行只包含结束的文件标记。在这种情况下,tline是数字值-1。返回由文件标识符fid指示的文件的下一行。如果fgetl遇到文件结束指示符,则返回-1

end;

noeph = noeph/8 %对观测数据进行分组,8行数据为一组每颗卫星一个参考时刻的数据占8 行, 第1 行为卫星的PRN 号和该卫星时钟的参考时刻及其改正模型参数, 第2~8 行为该卫星的广播轨道数据。

frewind(fide); %位置指针移至文件fide首部for i = 1:head_lines, line = fgetl(fide); end; %提取头文件的那几行

% Set aside memory for the input %设置另外一个存储体用于输入

svprn = zeros(1,noeph); %创建一行N (卫星颗数)列的向量空间存储卫星导航数据

weekno = zeros(1,noeph);

t0c = zeros(1,noeph);

tgd = zeros(1,noeph);

aodc = zeros(1,noeph);

toe = zeros(1,noeph);

af2 = zeros(1,noeph);

af1 = zeros(1,noeph);

af0 = zeros(1,noeph);

aode = zeros(1,noeph);deltan = zeros(1,noeph);

M0 = zeros(1,noeph);

ecc = zeros(1,noeph);

roota = zeros(1,noeph);

toe = zeros(1,noeph);

cic = zeros(1,noeph);

crc = zeros(1,noeph);

cis = zeros(1,noeph);

crs = zeros(1,noeph);

cuc = zeros(1,noeph);

cus = zeros(1,noeph);

Omega0 = zeros(1,noeph);

omega = zeros(1,noeph);

i0 = zeros(1,noeph);

Omegadot = zeros(1,noeph);

idot = zeros(1,noeph);

accuracy = zeros(1,noeph);

health = zeros(1,noeph);

fit = zeros(1,noeph);

for i = 1:noeph

line = fgetl(fide); %接着上面的提取卫星星历表第一行数据记录,前面几行是头文件。第一行信息:《《《《PRN 号/ 历元/ 卫星钟》》》》

svprn(i) = str2num(line(1:2));%把字符串前2个字符转换数值(PRN号),可以使用

str2double代替str2num。在matlab中,无论是内建函数还是工具箱函数,2很常见,这可能是因为2英文two和to发音相同。而2写起来也比较简单。所以很多转换类函数都用2来命名而非to。第1 行为卫星的PRN 号和该卫星时钟的参考时刻及其改正模型参数

year = line(3:6);%把字符第3至6的字符转化为年(数值型)

month = line(7:9);%把字符第7至9的字符转化为月(数值型)

day = line(10:12);%把字符第10至12的字符转化为日(数值型)

hour = line(13:15);%把字符第13至15的字符转化为时(数值型)

minute = line(16:18);%把字符第16至18的字符转化为分(数值型)

second = line(19:22);%把字符第19至22的字符转化为秒(数值型)

af0(i) = str2num(line(23:41));%卫星钟的偏差(s)就是第一行的第二段

af1(i) = str2num(line(42:60));%卫星钟的漂移(s/s)就是第一行的第三段

af2(i) = str2num(line(61:79));%卫星钟的漂移速度(s/s2平方)就是第一行的第四段

line = fgetl(fide); %读取的是卫星星历表第二行数据记录。第二行信息:《《《《广播轨道—1》》》》

IODE = line(4:22);%IODE( Issue of Data, Ephemeris /数据、星历发布时间)就是第二行的第一块

crs(i) = str2num(line(23:41));%Crs(m)第二行的第二段

deltan(i) = str2num(line(42:60));%Δn(rad /s)第二行的第三段

M0(i) = str2num(line(61:79));%M0下标( rad)第二行的第四段

line = fgetl(fide); %读取的是卫星星历表第三行数据记录。第三行信息:《《《《广播轨道—2》》》》

cuc(i) = str2num(line(4:22)); %Cuc(rad)

ecc(i) = str2num(line(23:41));%e轨道偏心率

cus(i) = str2num(line(42:60));%Cus(radians)

roota(i) = str2num(line(61:79));%sqrt(A)( m1 / 2(根号下) )

line=fgetl(fide); %读取的是卫星星历表第四行数据记录。第四行信息:《《《《广播轨道—3》》》》

toe(i) = str2num(line(4:22));%TOE星历的参考时刻(GPS周内的秒数)

cic(i) = str2num(line(23:41));%Cic(rad)

Omega0(i) =

str2num(line(42:60));%Ω(rad)(OMEGA)

cis(i) = str2num(line(61:79));%Cis(rad)

line = fgetl(fide); %读取的是卫星星历表第五行数据记录。第五行信息:《《《《广播轨道—4》》》》

i0(i) = str2num(line(4:22));%i0(rad)

crc(i) = str2num(line(23:41));%Crc(m)

omega(i) = str2num(line(42:60));%ω(rad)

Omegadot(i) =

str2num(line(61:79));%Ω(rad/s)(OMEGA DOT) line = fgetl(fide); %读取的是卫星星历表第六行数据记录。第六行信息:《《《《广播轨道—5》》》》

idot(i) = str2num(line(4:22));%i(rad/s)(IDOT) codes = str2num(line(23:41));%L2上的码

weekno = str2num(line(42:60));%PS 周数( 与TOE 一同表示时间)。为连续计数,不是1024的余数

L2flag = str2num(line(61:79));%L2 P码数据标记

line = fgetl(fide); %读取的是卫星星历表第七行数据记录。第七行信息:《《《《广播轨道—6》》》》

svaccur = str2num(line(4:22));%卫星精度( m) svhealth = str2num(line(23:41));%卫星健康状态(第1子帧第3字第17~22 位)

tgd(i) = str2num(line(42:60));%TGD(sec)

iodc = line(61:79);%IODC钟的数据龄期

line = fgetl(fide); %读取的是卫星星历表第八行数据记录。第八行信息:《《《《广播轨道—7》》》》

tom(i) = str2num(line(4:22));%电文发送时刻(单位为GPS周的秒, 通过交接字(HOW)中的Z 计数得出)

spare = line(23:41);%拟合区间(h),如未知则为零

% spare = line(42:60);%备用

% spare = line(61:79);%备用

end

status = fclose(fide) %关闭文件fide

% Description of variable eph. 星历矩阵变量的描述(每颗卫星有21个变量,列为卫星颗数?21颗0 0?)

eph(1,:) = svprn; %星历表矩阵第一行存储每颗卫星的PRN号(SVs号段)

eph(2,:) = af2;%第二行存储卫星钟的漂移速度

eph(3,:) = M0;

eph(4,:) = roota;

eph(5,:) = deltan;

eph(6,:) = ecc;

eph(7,:) = omega;

eph(8,:) = cuc;

eph(9,:) = cus;

eph(10,:) = crc;

eph(11,:) = crs;

eph(12,:) = i0;

eph(13,:) = idot;

eph(14,:) = cic;

eph(15,:) = cis;

eph(16,:) = Omega0; eph(17,:) = Omegadot; eph(18,:) = toe;

eph(19,:) = af0;

eph(20,:) = af1;eph(21,:) = toe;%第21行存储TOE星历的参考时刻(GPS周内的秒数)

fidu = fopen(outputfile,'w');% w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则立刻创建文件count = fwrite(fidu,[eph],'double');%将星历矩阵中的元素写到指定文件fidu中去,精度类型为双精度double

fclose all%关闭所有文件

四、实验总结:

通过本次实验我们更加清晰的了解到了卫星星历文件的数据信息及其含义。对卫星的导航文件的格式信息也有了深刻的了解。在编程中遇到的最大问题是,习惯了C++编程的方法,此次用Matlab进行编程经常遇到各种错误信息,尤其是格式转换问题,经常要用到‘movefile’函数对数据进行格式转换。经过此次实验深刻体会到批处理和利用程序代替人工执行工作的效率。为以后从事和GPS 有关的工作奠定了一定基础。

实验二输出GPS卫星坐标值

一、实验要求:

利用下载的对应星历文件计算指定时刻(学号后五位对应在年积日对应的秒)的所有卫星的位置,如张良09123881,后五位23881,取23881-3600*6= 2281秒,6点38分01秒。根据我的学号计算后为读取2014年4月5日6点20分30.00秒的星历文件。并将此时段的卫星坐标信息输出。

二、实验步骤:

1、数据准备,采用实验一下载2014年的广播星历文件和观测值文件。

2、找到GPS卫星号并把卫星坐标输出。

3、编程思路:

通过卫星观测文件找到卫星编号,并将卫星的坐标值匹配输出。

4、程序运行结果:

三、编程主要代码:

1、主函数代码:

clc;%清除屏幕之前打过的代码

clear all ;%从内存中释放所有的内存变量和数组以及所有用户自定义的菜单栏, 菜单, 和窗口的定义。

jd = julday(2014,4,5,6+40/60);

[week,sow] = gps_time(jd);

[filename,filepath]=uigetfile('*.14n','选择计算的输入文件');%打开窗口选取计算的输入文件file=[filepath filename];%获得文件名

rinexe(file,'eph.dat');%函数rinexe读取一个标注格式化导航信息文件并重新格式化数据为21行列数等于卫星数的矩阵。

Eph = get_eph('eph.dat');

svs = [1 4 10 11 12 13 17 20 23 25 31 32];%观测文件卫星

for t = 1:length(svs)

col_Eph(t) = find_eph(Eph,svs(t),sow);

sat(1:3,t) = satpos(sow,Eph(:,col_Eph(t))); end

sat % position of svs in ECI system %%%%%%%%%%%%%%%%%%%%% end easy2.m %%%%%%%%%%%%%%% [filename,filepath]=uiputfile('王亚亚-作业2输出GPS卫星XYZ位置.txt','选择一个路径对结果文件保存');%选择路径保存输出的结果文件

file=[filepath filename];

fid = fopen(file,'wt+');%文件有两种格式:二进制文件(b)和文本文件(t)。在Windows下,打开文件的默认是二进制格式,如果要以文本方式打开,则必须在打方式中加上字符't'。fprintf(fid,'%c',' 班级姓名

学号作业序号主要内容');

fprintf(fid,'%c\n',' ');

fprintf(fid,'%c',' 测绘12-1 王亚亚07122825 上机实验作业二输出GPS 卫星XYZ位置');

fprintf(fid,'%c\n',' ');

for k = 1: size(sat,2)

p=num2str(sat(1,k));

fprintf(fid,'%c',p);

f=svs(1,k);

fprintf(fid,' %s%d%s ','%GPS',f','号卫星X坐标');

fprintf(fid,'%c\n',' ');

p=num2str(sat(2,k));

fprintf(fid,'%c',p);

fprintf(fid,' %s%d%s ','%GPS',f','号卫星Y坐标');

fprintf(fid,'%c\n',' ');

p=num2str(sat(3,k));

fprintf(fid,'%c',p);

fprintf(fid,' %s%d%s ','%GPS',f','号卫星Z坐标');

fprintf(fid,'%c\n',' ');

end

fclose(fid);

四、实验总结:

通过本次实验我们再一次认识到GPS卫星星历文件的读取,同时加深了我们对MATLAB语法的认识和简单的编程,也认识到大部分语言的逻辑思路上具有共通性。很庆幸的是MATLAB文件读取语法保留了C语言的文件读取格式,这样让编程的难度又降低了。同时也使我们清晰意识到以后编程的重要性。

9

实验三精密单点定位

一、实验要求:

编程实现GPS单点定位,要求加入电离层、对流层改正。

二、实验步骤:

1、数据准备,采用实验一下载2014年的广播星历文件和观测值文件。

2、读取2014年4月5日6点20分30.00秒到2014年4月5日6点30分30.00秒20次历元的星历文件数据,并计算wsrt0950观测站位置。

3、编程思路:

利用双频改正模型进行电离层延迟改正,利用Modified hopfield折射改正模式对对流层进行改正。

4、程序运行结果:

三、编程主要代码:

1、主函数代码:

clc ;%清除屏幕之前打过的代码

clear all;%从内存中释放所有的内存变量和数组以及所有用户自定义的菜单栏, 菜单, 和窗口的定义。

10

[filename,filepath]=uigetfile('*.14n','选择计算的N 文件');%打开窗口选取计算的输入文件

file=[filepath filename];%获得文件名

rinexe(file,'eph.dat');%函数rinexe读取一个标注格式化导航信息文件并重新格式化数据为21行列数等于卫星数的矩阵。

Eph = get_eph('eph.dat');%获得卫星星历表(Matlab的矩阵格式)

% We identify the observation file and open it

我们确定观测文件并打开它

[filename,filepath]=uigetfile('*.14o','选择计算的O 文件');%打开窗口选取计算的输入文件

file1=[filepath filename];%获得文件名

fid1 = fopen(file1,'rt');%r:读出观测文件

ofile1,t:以文本的格式(因为fopen函数默认打开方式是二进制)

[Obs_types1, ant_delta1, ifound_types1, eof11] = anheader(file1);%打开观测文件ofile1,从头文件中截取观测类型Obs_types1、天线参数的信息ant_delta1,以及标明是否寻找到观测类型行ifound_types1、是否到文件尾的判定eof11 NoObs_types1 = size(Obs_types1,2)/2;%返回观测类型Obs_types1列数(1:行2:列)的

Obs_types1矩阵是1行14列:

[C1P1P2L1L2D1D2] size(Obs_types1,2)值是14除以2得观测值类型个数是7种

Pos = [];%

for q = 1:762 %循环762次找到对应的2014年4月5日6点20分30.0000000秒

[time1, dt1, sats1,eof1,datee1] =

fepoch_0(fid1);

end

for q = 762:781%循环762次找到对应的2014年4月5日6点20分30.0000000秒

[time1, dt1, sats1, eof1,datee] =

fepoch_0(fid1);%通过函数fepoch_0调用观测文件SITE247J.01O,返回四个参数:time1:周内秒、dt1:接收机时钟的偏差( 单位为s, 为可选项)、sats1:卫星的PRN号矩阵、

eof1:返回是否到文件尾的标示符(1:结束0:未结束)

NoSv1 = size(sats1,1);%通过查看行向量sats1的长度,获取卫星个数

% We pick the observed P2 pseudoranges

我们获取观测的P2码伪距其中伪随机噪声码(PN)即测距码主要有精测距码(P码)和粗测距码(C/A码)两种。其中P码的码率为10.23MHz、C/A码的码率为1.023MHz,长度为1023

obs1 = grabdata(fid1, NoSv1,

NoObs_types1); %输入观测文件名、观测卫星个数、观测卫星类型数。输出Obs矩阵,行:卫星个数、列:观测类型:C1 P1 P2 L1 L2 D1 D2

i = fobs_typ(Obs_types1,'C1');%在观测类型:C1 P1 P2 L1 L2 D1

D2查找出‘P2’所在位置,并赋值给i

pos = recpo_ls(obs1(:,i),sats1,time1,Eph);%输入P2观测值(第i列)、卫星数、观测时的周内秒、星历矩阵

Pos = [Pos pos];%上面函数每计算一个pos (4行1列的pos存入Pos中,共循环了20次

q=1:20)一个q(历元数)列4行的矩阵,行:pos 为1、2、3:接收机位置4:接收机钟差El为5:高度角GDOP为6:GDOP basic_obs为7、8、9:改正后的坐标X 10:改正后的站星距离

end

me = mean(Pos,2); %对于矩阵mean(A,2)就是返回一个包含(每一行的平均值)的列向量fprintf('\nMean Position as Computed From 20 Epochs:') %由20个历元计算的平均位置fprintf('\n\nX: %12.3f Y: %12.3f Z: %12.3f T: %12.3f',me(1,1), me(2,1), me(3,1),me(4,1)) %输出X、Y、Z的平均值%12.3f这个是格式要求

figure(2);

plot((Pos(1:4,:)-Pos(1:4,1)*ones(1,q-

761))','linewidth',2) %ones(1,q)是生成一个1行q=20列的每个元素都为1的矩阵,则将矩阵所有坐标都减去了第一历元的卫星坐标,画图进行比较(循环完q=20)位置随时间变化图画出来

title('Positions Over Time','fontsize',16) %位置随时间的变化图% 画出其它历元与第一个历元xyz方向的差值

legend('X','Y','Z') %注释字符:'X','Y','Z'到图中

11

xlabel('Epochs [1 s interval]','fontsize',16) %x轴表示历元:一秒一间隔

ylabel('Variation in Coordinates, Relative to the First Epoch [m]','fontsize',16) %y坐标系相对于第一历元的变化

set(gca,'fontsize',16) %设置网格的显示格式legend %%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%

[filename,filepath]=uiputfile('王亚亚-作业3精密单点定位.txt','选择一个路径对结果文件保存');%选择路径保存输出的结果文件

file=[filepath filename];

fid = fopen(file,'wt+');%文件有两种格式:二进制文件(b)和文本文件(t)。在Windows下,打开文件的默认是二进制格式,如果要以文本方式打开,则必须在打方式中加上字符't'。

%fid = fopen('作业1.txt','wt+');%文件有两种格式:二进制文件(b)和文本文件(t)。在Windows 下,打开文件的默认是二进制格式,如果要以文本方式打开,则必须在打方式中加上字符't'。

fprintf(fid,'%c',' 班级姓名

学号作业序号主要内容');

fprintf(fid,'%c\n',' ');fprintf(fid,'%c',' 测绘12-1 王亚亚07122825 上机实验作业三精密单点定位');

fprintf(fid,'%c\n',' ');

for i=1:1%输出datee1矩阵即起始时间

for j=1:6

fprintf(fid,'%d\t',datee1(i,j));

if rem(i,1)==0 && rem(j,6)==0

fprintf(fid,'%c','%起始时间');

%fprintf(fid,'\r\n');

end

end

end

fprintf(fid,'%c\n',' ');

for i=1:1%输出datee矩阵即终止时间

for j=1:6

fprintf(fid,'%d\t',datee(i,j));

if rem(i,1)==0 && rem(j,6)==0

fprintf(fid,'%c','%终止时间');

%fprintf(fid,'\r\n');

end

end

end

fprintf(fid,'\n\nX: %12.3f Y: %12.3f

Z: %12.3f %s', me(1,1), me(2,1), me(3,1),'%观测站(wsrt0950)位置'); %输出X、Y、Z的平均值%12.3f这个是格式要求

fclose(fid);

print -deps easy3%保存图像为eps 格式

2、主要函数代码及其注释:recpo_ls函数代码:

function [pos, El, GDOP, basic_obs] =

recpo_ls(obs,sats,time,Eph)

% RECPO_LS 用伪距观测值最小二乘计算接收机位置。

% obs 该历元的卫星观测值

% sats obs对应的卫星的PRN号

% time 对应的卫星时刻

% Eph 星历信息

v_light = 299792458;

dtr = pi/180;

m = size(obs,1); % number of svs 卫星个数el = zeros(m,1);% identify ephemerides columns in Eph

for t = 1:m

col_Eph(t) = find_eph(Eph,sats(t),time); %在星历矩阵中,搜索卫星对应的列。

End

% 接收机位置和接收机钟差的初步求解

pos = zeros(4,1);

no_iterations = 6; %迭代6次

ps_corr = [];

sat_pos = [];

for iter = 1:no_iterations

A = [];

12

omc = []; % observed minus computed observation

for i = 1:m

k = col_Eph(i);

tx_RAW = time - obs(i)/v_light;

t0c = Eph(21,k);

dt = check_t(tx_RAW-t0c); % GPS时间超限或下溢的修复

tcorr = (Eph(2,k)*dt + Eph(20,k))*dt + Eph(19,k);

tx_GPS = tx_RAW-tcorr;

X = satpos(tx_GPS, Eph(:,k));% 用eph 给定的星历信息,计算t时刻的m卫星的X,Y,Z坐标

if iter == 1

traveltime = 0.072;

Rot_X = X;

trop = 0;

else

rho2 = (X(1)-pos(1))^2+(X(2)-pos(2))^2+(X(3)-pos(3))^2; %接收机与卫星间的距离

traveltime = sqrt(rho2)/v_light;

Rot_X =

e_r_corr(traveltime,X); % E_R_CORR返回卫星的ECEF坐标值,考虑信号传播时地球自转的影响

rho2 = (Rot_X(1)-

pos(1))^2+(Rot_X(2)-pos(2))^2+(Rot_X(3)-

pos(3))^2;

[az,el,dist] =

topocent(pos(1:3,:),Rot_X-

pos(1:3,:)); %topocent(X,dx)将向量dx转换成以X为坐标原点的站心坐标。

%两个参数都是3*1的向量

if iter == no_iterations, El(i) = el; end

trop =

tropo(sin(el*dtr),0.0,1013.0,293.0,50.0,...%T ROPO计算对流层改正

0.0,0.0,0.0);

end

% subtraction of pos(4) corrects for receiver clock offset

% pos(4) 接收机钟差改正

% v_light*tcorr is the satellite clock offset

% v_light*tcorr 卫星钟差改正

if iter == no_iterations

ps_corr = [ps_corr;

obs(i)+v_light*tcorr-trop];

sat_pos = [sat_pos; X'];

end

omc = [omc; obs(i)-norm(Rot_X-

pos(1:3),'fro')-pos(4)+v_light*tcorr-trop];

A = [A; (-(Rot_X(1)-pos(1)))/obs(i)...

(-(Rot_X(2)-pos(2)))/obs(i) ...

(-(Rot_X(3)-pos(3)))/obs(i) 1];

end% i

x = A\omc;

pos = pos+x;

if iter == no_iterations, GDOP =

sqrt(trace(inv(A'*A)));

%% two lines that solve an exercise on computing tdop

% invm = inv(A'*A);

% tdop = sqrt(invm(4,4))

end

end% iter

basic_obs = [sat_pos ps_corr];

tropo函数代码:

function ddr =

tropo(sinel,hsta,p,tkel,hum,hp,htkel,hhum)

%TROPO Calculation of tropospheric correction. 计算对流程改正

% The range correction ddr in m is to be subtracted from 在米级范围的ddr需要由伪距和载波相位做差得到

% pseudo-ranges and carrier phases % sinel sin of elevation angle of satellite 卫星高度角的正弦值

% hsta height of station in km 以千米为单位的测站高度(大地高?)

% p atmospheric pressure in mb at height hp 高度上升时候的大气压(单位mb)% tkel surface temperature in degrees Kelvin at height htkel 地表温度(单位凯氏度)以每

13

千米为测量单位下

% hum humidity in % at height hhum 湿度(单位%)在每千米为测量单位下

% hp height of pressure measurement in km 高大气压测量(单位千米)

% htkel height of temperature measurement in km 高温度测量(单位千米)

% hhum height of humidity measurement in km 高湿度测量(单位千米)

% tk 绝对温度

% hum 湿度

% tkel 温度测量单位km

% a 大气

% Goad, C.C. & Goodman, L. (1974) A Modified Tropospheric 改正后的对流层折射修正模型% A Matlab reimplementation of a C code from driver. 由驱动程序使得Matlab重新实现一个C 代码

a_e = 6378.137; % semi-major axis of earth ellipsoid 地球椭球的长半轴长度(单位千米)

b0 = 7.839257e-5; % 地球自转速率rad/s tlapse = -6.5; %大气温度下降率:高程每增加1km,温度下降6.5度

tkhum = tkel+tlapse*(hhum-htkel);%湿度影响下的绝对温度(指的是地面温度)=绝对温度+(-6.5°)*(湿大气层顶高-温度(单位km))

atkel = 7.5*(tkhum-273.15)/(237.3+tkhum-273.15); %atkel:(应用于下方e0的公式)大气影以及湿度影响下的数值(km)绝对零度,也就是-273.15℃(摄氏度)。绝对零度应比它低273.15℃所以精确的换算关系应该是T(K)热力学温标=t(℃)摄氏温标+273.15热力学温标和摄氏温标间的换算

e0 = 0.0611*hum*10^atkel; %地面水汽压:(mbar)参考:《三种对流层延迟改正模型精度评估》中第3页顶部

tksea = tkel-tlapse*htkel; %海面绝对温度=温度测量(km)-(-6.5°)*高温度测量(km)em = -978.77/(2.8704e6*tlapse*1.0e-5); %em:为对流层天顶方向的干延迟中需要计算的其中一项(幂次项)参考《EGNOS 对流层延迟改正模型及其精度分析》第一页公式(1)与公式(2)第一个g=9.806 65m/s2(重力加速度)化成厘米为单位:980.66、tlapse:大气温度下降率(每km下降转化为每cm下降,单位换算,乘以10的负5次方)2.8704e6 Rd=287.054 J/(kg. K)(K是凯氏温度)热量的单位是焦耳温度的单位是摄氏度不过,通过一个物体的"比热容"就可以转化了。比热容意思是,单位质量(1kg)的物体升高1摄氏度所要吸收的热量.

tkelh = tksea+tlapse*hhum;

e0sea = e0*(tksea/tkelh)^(4*em); %海面水汽压tkelp = tksea+tlapse*hp;

psea = p*(tksea/tkelp)^em;

if sinel < 0 %如果高度角正弦值小于0,修正为0

sinel = 0;

end;

tropo = 0;

done = 'FALSE';

refsea = 77.624e-6/tksea; %k1=77.604 K/mbar 用于计算对流层天顶方向的干延迟参考:《三种对流层延迟改正模型精度评估》

htop = 1.1385e-5/refsea;

refsea = refsea*psea; %计算对流层天顶方向的干延迟

ref = refsea*((htop-hsta)/htop)^4;

while 1

rtop = (a_e+htop)^2-(a_e+hsta)^2*(1-

sinel^2);%公式中Ri的前半部分

if rtop < 0, rtop = 0; end; % check to see if geometry is crazy

rtop = sqrt(rtop)-(a_e+hsta)*sinel;%公式中的Ri

a = -sinel/(htop-hsta);%公式中的a

b = -b0*(1-sinel^2)/(htop-hsta);%公式中的b

rn = zeros(8,1);

for i = 1:8

rn(i) = rtop^(i+1);

end;

alpha = [2*a, 2*a^2+4*b/3, a*(a^2+3*b),...

a^4/5+2.4*a^2*b+1.2*b^2,

2*a*b*(a^2+3*b)/3,...

b^2*(6*a^2+4*b)*1.428571e-1, 0, 0];

14

if b^2 > 1.0e-35, alpha(7) = a*b^3/2; alpha(8) = b^4/9; end;

dr = rtop;

dr = dr+alpha*rn;

tropo = tropo+dr*ref*1000;;%干延迟与湿延迟的和

if done == 'TRUE ', ddr = tropo; break; end;

done = 'TRUE ';

refsea = (371900.0e-6/tksea-12.92e-6)/tksea;

htop = 1.1385e-

5*(1255/tksea+0.05)/refsea;;%湿对流层高度ref = refsea*e0sea*((htop-hsta)/htop)^4;;%对流层湿分量折射系数

end;

end

四、实验总结:

通过编程实现GPS单点定位,我们更加深入的了解到星历数据的各个意义,而且通过此次试验加深了我们对编程的认识和对MATLAB的认识。我们认识到MATLAB 编程可以减轻我们大量的工作负担。我们也深刻的了解到学校为把我们培养成出色的工程师对我们的严要求。通过此次试验也让我们深刻体会到测绘专业是一门综合型专业,我们要具有很强的编程能力,要注重对编程的培养,这样才能在以后的工作中更好的处理工作遇到的问题。为以后从事测绘工作奠定了一定的基础。

15

分子荧光光谱法实验报告

分子荧光光谱法实验报告 一、实验目的 1.掌握荧光光度计的基本原理及使用。 2.了解荧光分光光度计的构造和各组成部分的作用。 3.掌握分子荧光光度计分析物质的特征荧光光谱:激发光谱、发射光谱的测定方法。 4.了解影响荧光产生的几个主要因素。 5.学会运用分子荧光光谱法对物质进行定性和定量分析。 二、实验原理 原子外层电子吸收光子后,由基态跃迁到激发态,再回到较低能级或者基态时,发射出一定波长的辐射,称为原子荧光。对于分子的能级激发态称为分子荧光,平时所说的荧光指分子荧光。 具有不饱和基团的基态分子经光照射后,价电子跃迁产生荧光,是当电子从第一激发单重态S1的最低振动能级回到基态S0各振动能级所产生的光辐射。 (1)激发光谱 是指发光的某一谱线或谱带的强度随激发光波长(或频率)变化的曲线。横坐标为激发光波长,纵坐标为发光相对强度。 激发光谱反映不同波长的光激发材料产生发光的效果。即表示发光的某一谱线或谱带可以被什么波长的光激发、激发的本领是高还是低;也表示用不同波长的光激发材料时,使材料发出某一波长光的效

率。荧光为光致发光,合适的激发光波长需根据激发光谱确定——激发光谱是在固定荧光波长下,测量荧光体的荧光强度随激发波长变化的光谱。获得方法:先把第二单色器的波长固定,使测定的λem不变,改变第一单色器波长,让不同波长的光照在荧光物质上,测定它的荧光强度,以I为纵坐标,λex为横坐标所得图谱即荧光物质的激发光谱,从曲线上找出λex,,实际上选波长较长的高波长峰。 (2)发射光谱 是指发光的能量按波长或频率的分布。通常实验测量的是发光的相对能量。发射光谱中,横坐标为波长,纵坐标为发光相对强度。 发射光谱常分为带谱和线谱,有时也会出现既有带谱、又有线谱的情况。发射光谱的获得方法:先把第一单色器的波长固定,使激发的λex不变,改变第二单色器波长,让不同波长的光扫描,测定它的发光强度,以I为纵坐标,λem为横坐标得图谱即荧光物质的发射光谱;从曲线上找出最大的λem。 (3)荧光强度与荧光物质浓度的关系 用强度为I0的入射光,照射到液池内的荧光物质时,产生荧光,荧光强度If用仪器测得,在荧光浓度很稀(A 三、实验试剂和仪器试剂:罗丹明B乙醇溶液;1-萘酚乙醇溶液;3,3’-Diethyloxadicarbocyanine iodide:标准溶液,10μg/ml, 20μg/ml,30μg/ml,40μg/ml和未知浓度;蒸馏水;乙 醇。 仪器:Fluoromax-4荧光分光光度计;1cm比色皿;

北航惯性导航综合实验五实验报告

惯性导航技术综合实验 实验五惯性基组合导航及应用技术实验

惯性/卫星组合导航系统车载实验 一、实验目的 ①掌握捷联惯导/GPS组合导航系统的构成和基本工作原理; ②掌握采用卡尔曼滤波方法进行捷联惯导/GPS组合的基本原理; ③掌握捷联惯导 /GPS组合导航系统静态性能; ④掌握动态情况下捷联惯导 /GPS组合导航系统的性能。 二、实验内容 ①复习卡尔曼滤波的基本原理(参考《卡尔曼滤波与组合导航原理》第二、五章); ②复习捷联惯导/GPS组合导航系统的基本工作原理(参考以光衢编著的《惯性导航原理》第七章); 三、实验系统组成 ①捷联惯导/GPS组合导航实验系统一套; ②监控计算机一台。 ③差分 GPS接收机一套; ④实验车一辆; ⑤车载大理石平台; ⑥车载电源系统。 四、实验内容 1)实验准备 ①将IMU紧固在车载大理石减振平台上,确认IMU的安装基准面紧靠实验平台; ②将IMU与导航计算机、导航计算机与车载电源、导航计算机与监控计算

机、GPS 接收机与导航计算机、GPS 天线与GPS 接收机、GPS 接收机与GPS 电池之间的连接线正确连接; ③ 打开GPS 接收机电源,确认可以接收到4颗以上卫星; ④ 打开电源,启动实验系统。 2) 捷联惯导/GPS 组合导航实验 ① 进入捷联惯导初始对准状态,记录IMU 的原始输出,注意5分钟内严禁移动实验车和IMU ; ② 实验系统经过5分钟初始对准之后,进入导航状态; ③ 移动实验车,按设计实验路线行驶; ④ 利用监控计算机中的导航软件进行导航解算,并显示导航结果。 五、 实验结果及分析 (一) 理论推导捷联惯导短时段(1分钟)位置误差,并用1分钟惯导实验数据验证。 1、一分钟惯导位置误差理论推导: 短时段内(t<5min ),忽略地球自转0ie ω=,运动轨迹近似为平面1/0R =,此时的位置误差分析可简化为: (1) 加速度计零偏?引起的位置误差:2 10.88022t x δ?==m (2) 失准角0φ引起的误差:2 02 0.92182g t x φδ==m (3) 陀螺漂移ε引起的误差:3 30.01376 g t x εδ==m 可得1min 后的位置误差值123 1.8157m x x x x δδδδ=++= 2、一分钟惯导实验数据验证结果: (1)纯惯导解算1min 的位置及位置误差图:

实验报告GPS静态测量

实验四GPS静态测量 一、实验目的 实验的目的是使学生了解采用GPS定位技术建立工程控制网的过程,使所学理论知识与实践相结合,巩固和加深对新知识的理解,增强学生的动手能力,培养学生解决问题、分析问题的能力。通过学习,应达到如下要求: 1、熟练掌握GPS接收机的使用方法,外业观测的记录要求。选点、埋石的要求。 2、合理分配时段、掌握星历预报对时段的要求。PDOP值的大小对观测精度的影响,图形结构的设计及外业工作。外业观测时手机或对讲机的合理应用。 3、掌握GPS控制测量数据处理处理的流程,能独立完成基线解算及网平差 二、实验地点: 城市学院校区内,实验学时:4小时 三、实验前的准备工作 1、实验内容介绍:对实验的任务和意义作好充分了解。 2、使用的仪器及物品:GPS接收机(含电池)、基座、脚架若干台,作业调度表,外业观测手簿,小钢尺,铅笔,安装有传输软件和数据处理软件的计算机,数据传输线若干根,便携式存储器。 3、搜集资料 ①广泛收集测区及其附近已有的控制测量成果和地形图资料 a.控制测量资料包括成果表、点之记、展点图、路线图、计算说明和技术总结等。收集资料时要查明施测年代、作业单位、依据规范、坐标系统和高程基准、施测等级和成果的精度评定。 b.收集的地形图资料包括测区范围内及周边地区各种比例尺地形图和专业用图,主要查明地图的比例尺、施测年代、作业单位、依据规范、坐标系统、高程系统和成图质量等。 c.如果收集到的控制资料的坐标系统、高程系统不一致,则应收集、整理这些不同系统间的换算关系。 (注:本实验采用地科系2013年5月建立的校园控制网资料) ②收集有关GPS测量定位的技术要求 通过参考测量规范,收集有关的测量技术要求。GPS测量规范包括: a.《全球定位系统GPS测量规范》GB/T 18314-2009 b.《工程测量规范》 GB 50026-2007

荧光分析法实验报告

荧光分光光度法 一、 实验目的 1、学习荧光分光光度法的基本原理; 2、学习荧光光谱仪的结构和操作方法; 3、学习激发光谱、发射光谱曲线的绘制方法。 二、 实验原理 荧光分光光度法(fluorescence spectroscopy, FS )通常又叫荧光分析法,具有灵敏度高、选择性强、所需样品量少等特点,已成为一种重要的痕量分析技术。荧光(fluorescence )是分子吸收了较短波长的光(通常是紫外光和可见光),在很短的时间内发射出比照射光波长较长的光。由此可见,荧光是一种光致发光。 任何荧光物质都有两个特征光谱,即激发光谱(excitation spectrum )和发射光谱(emission spectrum )或称荧光光谱(fluorescence spectrum )。激发光谱表示不同激发波长的辐射引起物质发射某一波长荧光的相对效率。绘制激发光谱时,将发射单色器固定在某一波长,通过激发单色器扫描,以不同波长的入射光激发荧光物质,记录荧光强度对激发波长的关系曲线,即为激发光谱,其形状与吸收光谱极为相似。荧光光谱表示在所发射的荧光中各种波长的相对强度。绘制荧光光谱时,使激发光的波长和强度保持不变,通过发射单色器扫描以检测各种波长下相应的荧光强度,记录荧光强度对发射波长的关系曲线,即为荧光光谱。激发光谱和荧光光谱可用于鉴别荧光物质,而且是选择测定波长的依据。 荧光强度(F )是表征荧光发射的相对强弱的物理量。对于某一荧光物质的稀溶液,在一定波长和一定强度的入射光照射下,当液层的厚度不变时,所发生的荧光强度和该溶液的浓度成正比,即 该式即荧光分光光度法定量分析的依据。使用时要注意该关系式只适用于稀溶液。 三、 仪器与试剂 F-4500荧光光谱仪;比色管(10mL );牛血清白蛋白(BSA ) 四、 实验内容 1、 开机准备:接通电源,启动电脑。打开光谱仪主机电源,预热15分钟。 2、 运行FL solution 软件,设定检测方法和测量参数: EX (激发波长):280nm EM (发射波长):340nm EX 扫描范围:210nm ~330nm EM 扫描范围:290nm ~450nm EX 缝宽:2.5nm ,EM 缝宽:2.5nm 扫描速度:240nm/min PMT 电压:700V 3、 激发光谱和发射光谱的绘制: 先固定激发波长为280nm ,在290~450nm 测定荧光强度,获得溶液的发射光谱,在343nm 附近为最大发射波长λem ;再固定发射波长为λem ,测定激发波长为200nm ~λem 时的荧光强度,获得溶液的激发光谱,在280nm 附近为最大激发波长λex 。 4、 退出FL solution 软件,关闭光谱仪主机电源,关闭计算机。 Kc F

导航原理实验报告

导航原理实验报告 院系: 班级: 学号: 姓名: 成绩: 指导教师签字: 批改日期:年月日 哈尔滨工业大学航天学院 控制科学实验室

实验1 二自由度陀螺仪基本特性验证实验 一、实验目的 1.了解机械陀螺仪的结构特点; 2.对比验证没有通电和通电后的二自由度陀螺仪基本特性表观; 3.深化课堂讲授的有关二自由度陀螺仪基本特性的内容。 二、思考与分析 1. 定轴性 (1) 设陀螺仪的动量矩为H ,作用在陀螺仪上的干扰力矩为M d ,陀螺仪漂移角 速度为ωd ,写出关系式说明动量矩H 越大,陀螺漂移越小,陀螺仪的定轴性(即稳定性)越高. 答案: d d H M ω=? /sin d d H M θω = 干扰力矩M d 一定时,动量矩H 越大,陀螺仪漂移角速度为ωd 越小,陀螺漂移越小, 陀螺仪的定轴性(即稳定性)越高. (2) 在陀螺仪原理及其机电结构方而简要蜕明如何提高H 的量值? 答案:H J =Ω 由公式2A J dm r = ???可知 提高H 的量值有四种途径: 1. 陀螺转子采用密度大的材料,其质量提高了,转动惯量也就提高了。 2. 改变质量分布特性。在质量相同的情况下,若质量分布的半径距质 心越远,H 越大。因此将陀螺转子的有效质量外移,如动力谐陀螺将转子设计成环状。即在陀螺电机定子环中,可做成质量集中分布在环外边缘的环形结构,切边缘部分材质密度大,可提高转动惯量。 3. 增大r,可有效提高转动惯量。 4. 另外可通过采用外转子电机来改变电机质量分布,增大r 。改变电机定转子结构:采用外转子,内定子结构的转子电机。

4. 增加陀螺转子的旋转速度。 2/602(1)/n s f p ωππ==- ,60(1)/n f s p =- 提高电压周波频率 f ↑——〉n ↑——H ↑ f=400Hz 适当减少极对数 ,如取p=1 适当减少转差率s ,可通过减少转子支承轴承摩擦来实现 2.进动性 (1) 在外框架施加一沿x 轴正方向作用力矩时,画出动量矩H 的进动方 向及矢量M ,ω,H 的关系坐标图。(设定H 沿Z 轴正方向)并在坐标中标出陀螺仪自转轴的旋转方向n 。 b) 在内框架施加一沿Y 轴正方向作用力矩时,画出动量矩H 的进动方向及 矢量M ,ω,H 的关系坐标图。(设定H 沿Z 轴正方向)并在坐标中标出陀螺仪自转轴的旋转方向n 。

GPS单点定位实验报告

GPS原理与应用实验题目:GPS单点定位 专业:测绘工程 班级:12-01 学号:2012212600 姓名:王威 指导教师:陶庭叶 时间:2014.11

目录 一、实验目的 (3) 二、实验原理 (3) 三、实验内容 (3) 四、实验效果图 (9) 五、实验总结 (9)

一.实验目的 1.深入了解单点定位的计算过程; 2.加强单点定位基本公式和误差方程式,法线方程式的记忆; 3.通过上机调试程序加强动手能力的培养。 二.实验原理 一个接收机接受三个火三个以上卫星信号,得出卫星坐标和伪距,利用间接平差计算接收机的坐标。 三.实验内容 1.程序流程图 2、实验数据

3、实验程序代码 Private Sub Command1_Click() CommonDialog1.Filter = "TXT files|*.txt|" CommonDialog1.FilterIndex = 1 CommonDialog1.ShowOpen Open https://www.360docs.net/doc/2c10762235.html,monDialog1.FileName For Input As #1 Do While Not EOF(1) Line Input #1, Text textbuff = textbuff + Text + vbCrLf Loop Close #1 kk = MSFlexGrid1.Rows - 1 Dim a ReDim a(kk - 1) a = Split(textbuff, vbCrLf) For j = 1 To kk For i = 1 To 5 MSFlexGrid1.TextMatrix(j, i) = a(j - 1 + 5 * (i - 1)) Next i Next j For k = 1 To kk MSFlexGrid1.TextMatrix(k, 0) = "第" & k & "个点" Next k MSFlexGrid1.TextMatrix(0, 1) = "X" MSFlexGrid1.TextMatrix(0, 2) = "Y" MSFlexGrid1.TextMatrix(0, 3) = "Z" MSFlexGrid1.TextMatrix(0, 4) = "伪距" MSFlexGrid1.TextMatrix(0, 5) = "钟差" End Sub

药物分析实验报告

实验四苯甲酸钠的含量测定 一、目的 掌握双相滴定法测定苯甲酸钠含量的原理和操作 二、操作 取本品1.5g,精密称定,置分液漏斗中,加水约25mL,乙醚50mL和甲基橙指示液2滴,用盐酸滴定液(0.5mol/L)滴定,随滴随振摇,至水层显持续橙红色,分取水层,置具塞锥形瓶中,乙醚层用水5mL洗涤,洗涤液并入锥形瓶中,加乙醚20mL,继续用盐酸滴定液(0.5mol/L)滴定,随滴随振摇,至水层显持续橙红色,即得,每1mL的盐酸滴定液(0.5mol/L)相当于72.06mg的C7H5O2Na。 本品按干燥品计算,含C7H5O2Na不得少于99.0% 三、说明 1.苯甲酸钠为有机酸的碱金属盐,显碱性,可用盐酸标准液滴定。 COO Na +H C l COOH +N aC l 在水溶液中滴定时,由于碱性较弱(Pk b=9.80)突跃不明显,故加入和水不相溶混的溶剂乙醚提除反应生成物苯甲酸,使反应定量完成,同时也避免了苯甲酸在瓶中析出影响终点的观察。 2.滴定时应充分振摇,使生成的苯甲酸转入乙醚层。 3.在振摇和分取水层时,应避免样品的损失,滴定前,使用乙醚检查分液漏斗是否严密。 四、思考题 1.乙醚为什么要分两次加入?第一次滴定至水层显持续橙红色时,是否已达终点?为什么? 2.分取水层后乙醚层用5mL水洗涤的目的是什么? 实验五阿司匹林片的分析 一、目的 1.掌握片剂分析的特点及赋形剂的干扰和排除方法。 2.掌握阿司匹林片鉴别、检查、含量测定的原理及方法。 二、操作 [鉴别] 1.取本品的细粉适量(约相当于阿司匹林0.1g),加水10mL煮沸,放冷,加三氯化铁试液1滴,即显紫堇色。 2.取本品的细粉(约相当于阿司匹林0.5g),加碳酸钠试液10mL,振摇后,放置5分钟,滤过,滤液煮沸2分钟,放冷,加过量的稀硫酸,即析出白色沉淀,并发生醋酸的臭气。 [检查] 游离水杨酸 取本品的细粉适量(约相当于阿司匹林0.1g),加无水氯仿3mL,不断搅拌2分钟,用无水氯仿湿润的滤纸滤过,滤渣用无水氯仿洗涤2次,每次1mL,合并滤液和洗液,在室温下通风挥发至干;残渣用无水乙醇4mL溶解后,移至100mL量瓶中,用少量5%乙醇洗涤容器、洗液并入量瓶中,加5%乙醇稀释至刻度,摇匀,分取50mL,立即加新制的稀硫酸铁铵溶液[取盐酸液(1mol/L)1mL,加硫酸铁铵指示液2mL后,再加水适量使成100mL] 1mL,摇匀;30秒钟内如显色,和对照液(精密称取水杨酸0.1g,置1000mL量瓶中,加冰醋酸1mL,

荧光定量实验报告(作业)

RT-qPCR比较不同样本中miR-21的相对表达差异 一、实验目的 1、掌握实时荧光定量PCR的实验原理。 2、掌握实时荧光定量PCR相对定量的分析方法。 二、实验原理 实时荧光定量PCR (Quantitative Real-time PCR)是一种在DNA扩增反应中,以荧光化学物质测每次聚合酶链式反应(PCR)循环后产物总量的方法。通过内参或者外参法对待测样品中的特定DNA序列进行定量分析的方法。荧光定量PCR 最常用的方法是DNA 结合染料SYBR Green Ⅰ的非特异性方法和Taqman 水解探针的特异性方法。本实验中采用非特异性SYBR Green I 染料法,SYBR Green I 是一种结合于所有ds DNA 双螺旋小沟区域的具有绿色激发波长的染料,在游离状态下会发出微弱的荧光,但一旦与双链DNA 结合后,荧光大大增强。因此,SYBR Green I 的荧光信号强度与双链DNA 的数量相关,可以根据荧光信号检测出PCR 体系存在的双链DNA 数量。 三、实验仪器、材料和试剂 实验仪器:PCR仪、荧光定量PCR仪 实验材料:MCF7细胞 实验试剂:逆转录试剂盒、SYBR GREEN试剂盒 四、实验步骤 4.1 MCF7细胞RNA提取(RNAiso Plus) 1)将生长至80%的MCF细胞消化为单细胞悬液,准备提取RNA; 2)9000g,2min离心,弃掉培养基,加1 ml RNAiso Plus用移液枪反复吹吸直至裂

解液中无明显沉淀,室温(15-30℃)静置5分钟; 3)加入氯仿(RNAiso Plus的1/5体积量),盖紧离心管盖,混合至溶液乳化呈 乳白色,室温静置5min; 4)12,000 g 4℃离心15分钟。从离心机中小心取出离心管,此时匀浆液分为三 层,即:无色的上清液(含RNA)、中间的白色蛋白层(大部分为DNA)及带有颜色的下层有机相。 5)吸取上清液转移至另一新的离心管中(切勿吸出白色中间层)。 6)向上清中加入0.5-1倍RNAiso Plus体积的异丙醇,上下颠倒离心管充分混匀 后,室温下静置10分钟。 7)12,000g 4℃离心10分钟。一般在离心后,试管底部会出现RNA沉淀。 8)弃上清,加入1ml DEPC水配制的75%乙醇,充分洗涤管盖和管壁,并轻弹 管底,让沉淀浮起来,并静置3-5 min; 9)打开离心管盖,室温干燥沉淀几分钟。沉淀干燥后,加入适量(可以根据沉淀 的多少确定)的RNase-free 水溶解沉淀。测浓度,记录A260/280。 4.2 1%琼脂糖凝胶电泳(取少部分进行跑电泳,留足够的量做反转录) 4.3 反转录 试剂体积(10μl) RNA500 ng Gene specific primers(2μM)RT primer1μl 5×ReverseTranscriptase M-MLV 2μl Buffer dNTP (10mM)0.5μl

计算机视觉测量与导航_张正友法相机标定 _结课实验报告

H a r b i n I n s t i t u t e o f T e c h n o l o g y 计算机视觉测量与导航 实验报告 院系:航天学院 学科:控制科学与工程 姓名:TSX 学号: 任课教师:张永安卢鸿谦 日期:2014.05.13

摘要 人类视觉过程可看成是一个复杂的从感觉到知觉的过程,也就是指三维世界投影得到二维图像,再由二维图像认知三维世界的内容和含义的过程。信号处理理论与计算机出现以后,人们用摄像机等获取环境图像并转换成数字信号,完成对视觉信息的获取和传输过程,用计算机实现对视觉信息的处理、存储和理解等过程,形成了计算机视觉这门新兴学科。其中从二维图像恢复三维物体可见表面的几何结构的工作就叫做三维重建。随着计算机硬件、软件、图像采集、处理技术的迅速发展,三维重建的理论和技术已被广泛应用于航空航天、机器人技术、文字识别、工业检测、军事侦察、地理勘察、现场测量和虚拟植物可视化等领域。相机标定是三维重建必不可少的步骤,它包括对诸如主点坐标、焦距等与相机内部结构有关的内部参数的确定和对相机的旋转、平移这些外部参数的确定。价格低廉的实验器材、简单的实验环境、快捷的标定速度和较高的标定精度是现在相机标定研究追求的几大方向。数码相机的标定就是研究的热点之一。本次报告介绍了基于棋盘格模板标定的基本原理和算法,利用MATLAB的相机标定工具箱,使用张征友算法对相机进行了标定,记录了标定的过程,并给出结果,最后对影响标定精度的因素进行了分析。 关键词:相机标定张正友角点提取内外参

1基于棋盘格标定的基本原理和算法 1.1基础知识 1.1.1射影几何 当描述一张相机拍摄的图像时,由于其长度、角度、平行关系都可能发生变化,因此无法完全用欧氏几何来处理图像,而射影几何却可以,因为在射影几何中,允许存在包括透视投影的更大一类变换,而不仅仅是欧氏几何的平移和旋转。实际上,欧氏几何是射影几何的一个子集。 1.1.2齐次坐标 设欧氏直线上点p的笛卡尔坐标为(x,y)T,如果x1,x2,x3满足x=x1/x2,y =x2/x3,x3≠0,则称三维向量(x1,x2,x3)T为点P的齐次坐标。当x3= 0时,(x1,x2,0)T规定直线上的无穷远点的齐次坐标。 实际上,齐次坐标是用一个n+ 1维向量来表示原本n维的向量。应用齐次坐标的目的是用矩阵运算把二维、三维甚至高维空间中的一个点集从一个坐标系变换到另一个坐标系。形的几何变换主要包括平移、旋转、缩放等。以矩阵表达式来计算这些变换时,平移是矩阵相加,旋转和缩放则是矩阵相乘,综合起来可以表示为P’=R*P+T(R为旋转缩放矩阵,T为平移矩阵,P为原向量,P′为变换后的向量)。当n+1维的齐次坐标中第n+1维为0,则表示n维空间的一个无穷远点。

GPS实验报告

实验一 GPS静态定位数据采集 一、实验目的和要求 1. 练习GPS天线的整平、对中、安装; 2. 练习GPS接收机静态系统配置与连接; 3. 了解GPS接收机静态系统参数设置; 4. 掌握GPS接收机测站信息采集与设置; 5. 熟悉GPS接收机静态数据采集观测信息评价方法 6.通过课程实验,加深对卫星导航定位基本理论的理解,提高综合创新能力。熟练 掌握GPS仪器设备的使用方法,并且能独立完成GPS数据后处理工作,得到可靠的点位坐 标 二.实验仪器 1.华测X90接收机一台 2.脚架一个 3.电池一个 4.基座一个 5.2米钢尺一把 三.实验内容 1.认识华测X90 GPS接收机的各个部件。 2.掌握GPS接收机各个部件之间的连接方法。 3. 熟悉GPS接收机前面板各个按键的功能。 4. 熟悉GPS接收机后面板各个接口的作用。 5.学会使用GPS接收机查看天空GPS卫星的分布状况、PDOP值以及测站经纬度。 6.学会使用GPS接收机采集数据,并给采集的数据编辑文件名;学会GPS接收机天线 高的输入方法。 四.实验步骤 1、GPS接收机安置 a). 作业员到测站后应先安置好接收机使其处于静置状态,然后再安置天线; b).天线用脚架直接安置在测量标志中心的垂线方向上,对中误差应≤3mm。 天线应整平,天线基座上的圆气泡应居中; c).天线定向标志应指向正北,定向误差不宜超过±5°。对于定向标志不明 显的接收机天线,可预先设置标记。每次应按此标记安置仪器。 d)每时段开机前,作业员应先量取天线高,结束后再量一次天线高,取平均值作为该观测时段的天线高 2.华测GPS X90的使用 a)按下电源键开始观测 b)常按切换键直至切换到静态观测 c)各接受机同时开始观测,观测45分钟左右,关机结束观测任务,整理仪 器

南京大学-X射线荧光光谱分析实验报告

X 荧光分析 一.实验目的 1.了解能量色散X 荧光分析的原理、仪器构成和基本测量、分析方法。 2.验证莫塞莱定律,并从实验推出屏蔽常数。 3.研究对多道分析器的定标,以及利用X 荧光分析测量位未知样品成分及相对含量的方法。 二.实验原理 以一定能量的光子、电子、原子、α粒子或其它离子轰击样品,将物质原子中的内壳层电子击出,产生电子空位,原子处于激发态。外壳层电子向内壳层跃迁,填补内壳层电子空位,同时释放出跃迁能量,原子回到基态。跃迁能量以特征X 射线形式释放,或能量转移给另一个轨道电子,使该电子发射出来,即俄歇电子发射。测出特征X 射线能谱,即可确定所测样品中元素种类和含量。 特征曲线X 射线根据跃迁后电子所处能级可以分为,,K L M 系等;根据电子跃迁前所在能级又可分为βαγβαL L K K K ,,,,等不同谱线。特征X 谱线的的能量为两壳层电子结合能之差。因此,所有元素的,K L 系特征X 射线能量在几千电子伏到几十千电子伏之间。X 荧光分析中激发X 射线的方式一般有三种: (1)用质子、α粒子等离子激发

(2)用电子激发; (3)用X射线或低能γ射线激发。我们实验室采用X射线激发(XIX技术),用放射性同位素作为激发源的X光管。 XIX技术中,入射光子除与样品中原子发生光电作用产生内壳层空位外,还可以发生相干散射和非相干散射(康普顿散射),这些散射光子进入探测器,形成XIX分析中的散射本底。另外,样品中激发出的光电子又会产生轫致辐射,但这产生的本底比散射光子本底小得多,且能量也较低,一般在3keV以下。所以XIX能谱特征是:特征X射线峰叠加在散射光子峰之间的平坦的连续本底谱上。如图1能谱示意图所示。 图一:能谱示意图 测量特征X射线常用() Si Li探测器,它的能量分辨率高,适用于多元素同时分析,也可选用() Ge Li或高纯Ge探测器,但均价格昂贵。 在X荧光分析中,对于轻元素(一般指45 Z<的元素)通常测其KX射线,对于重元素(45 Z>的元素),因其KX射线能量较高且比LX射线强度弱,

荧光分析法实验(有思考题答案)

实验二.氨基酸的荧光激发、发射及同步荧光光谱的测量五.数据处理 1.用实验获得的数据绘制两种氨基酸的激发、发射、同步光谱图(如图3、4)。2.从激发和发射光谱中找出最大激发波长和最大发射波长值,以及它们相对应的峰高。在它们的同步荧光光谱中也确定最大波长和对应的峰高。 苯丙氨酸的荧光光谱图 苯丙氨酸扫描激发波长在214nm和285m两处出现最高峰,本实验选择214nm为最大激发波长。此外,激发波长曲线在280-300nm处出现了一个十分完美的峰,此峰为倍频峰,非激发波长峰,我们通过同步扫描荧光光谱技术可以验证,如图,我们通过同步扫描荧光光谱技术获得的激发波长也在215nm,与之前基本吻合。 色氨酸的荧光光谱图

色氨酸扫描激发波长在217nm处有一个最大峰,所以激发波长为217,发射波长为361。发射波长曲线在450-460nm处出现了一个十分完美的峰(在这张图上没显示出来),此峰为倍频峰,非激发波长峰,我们通过同步扫描荧光光谱技术可以验证。 六.讨论与思考 1.对待测溶液进行预扫描的有何作用? 从预扫描得到激发和发射波长的初步结果,根据我们得到的初步结果对仪器进行设置,然后对两种氨基酸溶液测量它们的荧光激发、发射和同步荧光光谱。 2.观察激发波长的整数倍处荧光发射光谱在有何特点?该波长是否适合于进行定量分析? 激发波长的整数倍处荧光发射光谱会出现以很强的峰,是倍频峰。不适合定量分析。 3.同步荧光技术有哪些优点?比较激发、发射和同步荧光光谱中的峰值及对应波长,比较他们的不同,并解释原因。 同步荧光法能简化光谱,减少光谱重叠和散射的影响,提高对荧光性质相近化合物同时测定的选择性和灵敏度。同步荧光法相对于激发光谱和发射光谱, 得到的峰比较窄,更明显。同步荧光光谱不是荧光物质的激发光谱和发射光谱

导航原理(pdf版)

导航原理(V0.1) 导航贯穿于飞行全过程。正确实施导航,是完成任务的先决条件。对于每一个想要在虚拟战线任务中顺利找到目标,完成任务并安全返航的飞友,熟练的掌握导航技术是必须的。 第一节导航仪表 与导航有关的仪表主要有罗盘和无线电导航仪,罗盘又分为磁罗盘和综合远读罗盘(也叫做转发罗盘),综合远读罗盘实际上是把远读罗盘和无线电导航仪合二为一,比如德机的罗盘中的小飞机就是无线电导航仪的指针,它指向无线电导航台或电台的方位,德机的罗盘外圈的刻度是活动的,跟随航向的变化而旋转,正12点的位置就是当前航向。美国海军飞机的罗盘中的双针就是无线电导航仪的指针,它指向电台方向,单针指示的是当前航向,而美国陆航的指针定义刚好相反,单针是无线电导航仪的指针,双针指示当前航向。苏机的无线电导航仪是单独的,它的使用我们以后再说。磁罗盘实际上跟指南针是一样的,只是它的刻度盘是做在磁体上的,跟磁体一起旋转,因此它只能在水平状态下使用。导航仪表中还包括航空时钟,它跟我们平时用的钟一样,这里就不讲了。 综合远读罗盘(德)综合远读罗盘(美)磁罗盘(美) 磁罗盘(苏)无线电导航仪(苏)

第二节判读航图和导航计算 航图的判读是导航的基础,游戏中的航图,跟我们常见的地图大体相同,所用的图标也很相似,但由于游戏本身的特点,以及我们在飞行中的实际需要,因此也有一些不同的地方。 图1 图例图2放大后的图1局部游戏中的航图图标大多与真实地图相同,如浅蓝色不规则线条表示河流,较大面积浅蓝色区域表示湖泊,黑色线条表示铁路,但公路却分为两种,红线表示泥土公路,黄色带棕色边的线表示沥青或水泥公路,大块的绿色区域表示森林,森林间的浅色区域表示草地,不规则的小块黄色区域表示城镇,城镇上面标有城镇名称。图中的蓝色菱形图标表示空军基地。 游戏中的航图跟真实地图一样是上北下南,左西右东,并且也采用 经度和纬度,图2是放大后的地图,可以看到地图边缘标有经度和纬度, 但游戏中的航图主要采用英文字母和数字来表示位置。图1是我们看航 图时最常用的一种比例,图中经线和纬线交叉将地图划分为一个个区 域,用英文字母代表纵列(经度),用数字代表横列(纬度),两条经线 和两条纬线之间的距离是10千米,因此地图上每一个区域的边长是10 千米。每一个区域可以用字母和数字来表示,如D5、E3等等。图3 区域分划但用这样的方法来表示位置不够精确,因此我们在此基础上将每一个区域分为9个小区,每个小区用一个数字来表示,以增加精度。如图3,将一个区域(图中为D3)均分为9个小区,用小键盘上的数字键位置进行编号,这样每一个小区就可以这样表示,如D3-1,D3-6。图1中的空军基地,如果用D3来表示,因为D3地区有10×10千米,因此精度很低,而如果用D3-5来表示,由于D3-5小区只有3.3×3.3千米,精度大为提高。 一般的航图显示比例分为两个档次,既每格10千米和每格1千米,而在太平洋地区的一些地

GPS_GLONASS单点定位的数据处理

GPS G LO NASS单点定位的数据处理 高星伟 葛茂荣 (中国测绘科学研究院 100039) (清华大学土木工程系 100084) 【摘 要】 本文讨论了GPS、GLONA SS及GPS GLONA SS伪距单点定位的数学模型和数据处理方法,分析了定位结果的精度。 GPS和GLONA SS分别是美国和前苏联(现由 俄罗斯负责)研制的全球卫星导航系统,两个系统的 构成、定位原理很相似。目前GPS系统已进入正常 工作阶段,而GLONA SS系统的可用性则有待于进 一步完善。但是GPS的SA和A S措施,使民用用户 的实时定位精度降低到100m,同时GPS系统的21 个卫星覆盖并不能保证在全球范围内实现用户定位 的自主完备性监测RA I M。因此,基于GPS和 GLONA SS两个卫星定位系统的全球导航卫星系统 GN SS是现代定位技术的一个发展方向。与单独的 GPS或GLONA SS系统相比,双卫星定位系统的可 用性、自主完备性和精度都有明显地提高。不管将 GLONA SS作为一个单独的卫星定位系统,还是与 GPS联合构成双卫星定位系统,研究GLONA SS定 位方法,开发GLONA SS或GPS GLONA SS数据 处理软件都是必要的。本文主要讨论GLONA SS及 GPS GLONA SS伪距单点定位问题。通过实际观测 数据的处理,分析和比较了GPS和GLONA SS及 GPS GLONA SS定位的精度。 一、数学模型 尽管GLONA SS与GPS的系统构成、定位原 理相类似,但在具体实现和数据处理上存在一定的 区别。就联合定位的数据处理而言,应考虑两个系统 的坐标系统和时间系统差异,卫星星历表示的差异 和两个系统伪距观测值的精度差异。 GPS系统中使用的是W GS284坐标系统, GLONA SS系统使用的是PZ290坐标系统,进行联 合数据处理时,必须进行坐标转换。坐标转换公式 为[1] x y z W GS284= 1.0-1.9×10-60. 1.9×10-61.00.0 0.00. 01.0 ? x y z PZ290 + 0.0 2.5 0.0 (1) GPS系统采用的是GPS时间(GPST), GLONA SS系统采用的是GLONA SS时间 (GLONA SST)。GPST与U TC相差为整数跳秒, GLONA SST与U TC相差3h。联合数据处理时,除 了要做上述时间系统转换外,还要考虑两个时间系 统可能存在的同步误差。 GPS星历给出的是卫星轨道的Kep ler根数及 其变化参数,GLONA SS星历给出的是卫星在PZ2 90坐标系中给定时刻的位置和速度及日月引力摄 动加速度。GLONA SS卫星坐标要根据卫星运动方 程用数值积分方法得出[2]。 由于在单点定位中一般把SA的影响作为观测 噪声,所以GPS观测模型的精度远远低于 GLONA SS的观测模型,必须考虑两个观测值随机 模型的差异。 根据以上讨论,GPS和GLONA SS单点定位的 观测方程为 v g i=[(x-X g i)2+(y-Y g i)2+(z-Z g i)2]1 2+ c?T g r-O g i,p g i(2) 式中,上标g表示GPS或GLONA SS,下标i为观 测值序号;(x,y,z)为测站的W GS284坐标;(X g, Y g,Z g)为卫星在W GS284坐标系中的坐标, GLONA SS卫星的坐标要用公式(1)转换到W GS2 84坐标系中;?3gp s r为接收机钟差,?3g lonass r为接收机 钟差加GPST与GLONA SST的同步误差;O g i为加 上卫星钟差、大气折射、相对论效应和地球自转改正 的伪距观测值;v g i为观测值噪声;p g i为观测值的权。 将观测方程(2)线性化,得出用于参数估计的线 性观测方程。观测方程中包括测站坐标和接收机钟 差及两个时间系统同步误差五个未知参数,用最小 二乘或滤波方法进行参数估计。 二、数据处理及结果分析 在清华大学主楼的已知点上用A ST ECH公司 的GG24型单频接收机记录了1.5h的观测数据, 采样率设为1s。GG24接收机有24个通道,可同时 8 测 绘 通 报 1999年 第4期

卫星导航定位实验报告

China University of Mining and Technology 《卫星导航定位算法与程序设计》 实验报告 学号: 07122825 姓名:王亚亚 班级:测绘12—1 指导老师:王潜心/张秋昭/刘志平 中国矿业大学环境与测绘学院 2015-07-01

实验一编程实现读取下载的星历 一、实验要求: 读取RINEX N 文件,将所有星历放到一个列表(数组)中。并输出和自己学号相关的卫星编号的星历文件信息。读取RINEX O文件,并输出指定时刻的观测信息。 二、实验步骤: 1、下载2014年的广播星历文件和观测值文件,下载地址如下: ftp://https://www.360docs.net/doc/2c10762235.html,/gps/data/daily/2014/ 2、要求每一位同学按照与自己学号后三位一致的年积日的数据文件和星历文件,站点的选择必须选择与姓氏首字母相同的站点的数据,以王小康同学为例,学号:07123077,需下载077那天的数据。有些同学的学号365<后三位 <730,则取学号后三位-365,以姜平同学为例:学号10124455,下载455- 365=90 天的数据,有些同学的学号730<后三位<=999,则取学号后三位-730,以万伟同学为例:学号:07122854,则下载854-730 = 124天的数据。可以选择wnhu0124.14n wnhu0124.14o 根据上述要求我下载了2014年第95天的数据,选择其中的wsrt0950.14n和wsrt0950.14o星历文件。指定时刻(学号后五位对应在年积日对应的秒最相近时刻)的观测值信息如张良09123881,后五位23881,取23881-3600*6= 2281秒,6点38分01秒,最近的历元应该是6点38分00秒的数据。根据计算与我最接近的观测时刻为2014年4月5日6点20分30.00秒。 3、编程思路: 利用rinex函数读取星历文件中第14颗卫星的星历数据并输出显示。对数据执行762次循环找到对应的2014年4月5日6点20分30.00秒,并输出观测值。 4、程序运行结果:

分子荧光光谱法实验报告范文

分子荧光光谱法实验报告范文 一、实验目的 1.掌握荧光光度计的基本原理及使用。 2.了解荧光分光光度计的构造和各组成部分的作用。 3.掌握分子荧光光度计分析物质的特征荧光光谱:激发光谱、发射光谱的测定方法。 4.了解影响荧光产生的几个主要因素。 5.学会运用分子荧光光谱法对物质进行定性和定量分析。 二、实验原理 原子外层电子吸收光子后,由基态跃迁到激发态,再回到较低能级或者基态时,发射出一定波长的辐射,称为原子荧光。对于分子的能级激发态称为分子荧光,平时所说的荧光指分子荧光。 具有不饱和基团的基态分子经光照射后,价电子跃迁产生荧光,是当电子从第一激发单重态S1的最低振动能级回到基态S0各振动能级所产生的光辐射。 (1)激发光谱 是指发光的某一谱线或谱带的强度随激发光波长(或频率)变化的曲线。横坐标为激发光波长,纵坐标为发光相对强度。 激发光谱反映不同波长的光激发材料产生发光的效果。即表示发光的某一谱线或谱带可以被什么波长的光激发、激发的本领是高还是低;也表示用不同波长的光激发材料时,

使材料发出某一波长光的效率。荧光为光致发光,合适的激发光波长需根据激发光谱确定——激发光谱是在固定荧光波长下,测量荧光体的荧光强度随激发波长变化的光谱。获得方法:先把第二单色器的波长固定,使测定的λem不变,改变第一单色器波长,让不同波长的光照在荧光物质上,测定它的荧光强度,以I为纵坐标,λex为横坐标所得图谱即荧光物质的激发光谱,从曲线上找出λex,,实际上选波长较长的高波长峰。 (2)发射光谱 是指发光的能量按波长或频率的分布。通常实验测量的是发光的相对能量。发射光谱中,横坐标为波长(或频率),纵坐标为发光相对强度。 发射光谱常分为带谱和线谱,有时也会出现既有带谱、又有线谱的情况。发射光谱的获得方法:先把第一单色器的波长固定,使激发的λex不变,改变第二单色器波长,让不同波长的光扫描,测定它的发光强度,以I为纵坐标,λem为横坐标得图谱即荧光物质的发射光谱;从曲线上找出最大的λem。 (3)荧光强度与荧光物质浓度的关系 用强度为I0的入射光,照射到液池内的荧光物质时,产生荧光,荧光强度If用仪器测得,在荧光浓度很稀(A0.05)时,荧光物质发射的荧光强度If与浓度有下面的关系:If=KC。 三、实验试剂和仪器

GPS实验报告

实验一:GPS静态测量实验 实验目得:1、掌握天宝GPS接收机得操作。 2、掌握GPS静态相对定位数据采集方法。 3、掌握卫星预报软件得使用方法。 4、掌握数据传输与后台处理软件得使用方法。 实习任务:对已有控制点进行多时段静态测量 实验步骤: ●放置脚架,对中整平,安置好仪器. ●量取天线高 ●打开接收机电源,接收机跟踪大于4颗以上卫星时,卫星指示灯慢闪;打 开数据记录灯;此时开始记录数据。(注:一定要保证数据记录灯亮,否 则没有记录数据) ●认真填写外业记录表 ●结束测量时,先关闭数据记录灯,再关闭接收机电源。 2、静态数据内业处理 (1)接收机得数据传输 关于外业观测数据得传输,比较特别得就是,Trimble 5700接收机得数据传输需要安装Data Transfer数据传输软件才能实现传输. (2)将trimble接收机得数据文件转成RINEX格式 安装好Convert toRINEX软件后,运行,选择好要转换得trimble数据文件,如图:

点击“编辑”,对相关参数进行设置,选择观测方法为“护圏得中心",并根据外业观测记录表,填好初始天线高,点击“改正"即可。设置完成后,就就是进行格式转换了。

(3)HGO软件,新建项目,选择相应得坐标系统 如图: (4)处理基线观测残差序列图与基线处理 这一个环节,主要就是通过查瞧基线得残差序列图来初步判断该基线得质量好坏。质量控制只作为了解,就是基线解算质量得三个恒量标准,即比率(ratio)、均方根(RMS).我们主要通过屏蔽某段信号或者某颗卫星得信号来使得ratio值与RMS值增大,ratio值越大越好,信号好得话,ratio值一般在50-100之间。RMS值越小越好,信号好得话,RMS值一般会在0、005左右。如图: 未屏蔽信号前:ratio值为16,RMS值为0、0062

分子荧光光谱实验报告doc

分子荧光光谱实验报告 篇一:分子荧光光谱实验报告 分子荧光光谱实验报告 一、实验目的: 1.掌握荧光光度法的基本原理及激发光谱、发射光谱的测定方法;学会运用分子荧光光谱法对物质进行定性分析。 2.了解荧光分光光度计的构造和各组成部分的作用。 3.了解影响荧光产生的几个主要因素。二、实验内容:测定荧光黄/水体系的激发光谱和发射光谱; 首先根据已知的激发波长(如果未知,则用紫外分光光度计进行测量,以最大吸收波长为激发波长)测定发射光谱,得到最大发射波长;然后根据最大发射波长测定激发光谱,得到最大激发波长;然后在根据最大激发波长测定测定发射光谱; 根据所得数据,用origin软件做出光谱图。三、实验原理: 某些物质吸收光子后,外层电子从基态跃迁至激发态,然后经辐射跃迁的方式返回基态,发射出一定波长的光辐射,此即光致发光。光致发光现象分荧光、磷光两种,分别对应单重激发态、三重激发态的辐射跃迁过程。本实验为荧光光谱的测定。

激发光谱:在发射波长一定的条件下,被测物吸收的荧光强度随激发波长的变化图。 发射光谱:在激发波长一定的条件下,被测物发射的荧光强度随发射波长的变化图。 各种物质均有其特征的最大激发波长和最大发射波长,因此,根据最大激发波长和最大发射波长,可以对某种物质进行定性的测定。 四、荧光光谱仪的基本机构 五、实验结果与讨论: XX00 S1 / R1 (CPS / MicroAmps) 150000 100000 50000 0Wavelength (nm) 400000 S1 / R1 (CPS / MicroAmps) 300000 XX00 100000 Wavelength (nm)

相关文档
最新文档