文档库 最新最全的文档下载
当前位置:文档库 › 基于单片机正弦波有效值的测量

基于单片机正弦波有效值的测量

基于单片机正弦波有效值的测量
基于单片机正弦波有效值的测量

基于单片机正弦波有效值的测量

一.简介

本作品以单片机STC12C5A60S2为主控芯片并以此为基础,通过二极管1N5819实现半波整流,使用单片机内部自带10位AD对整流后的输入信号进行采样,从而实现对峰值的检测;同时通过运放LM837对输入信号进行放大,之后通过施密特触发器,将原始信号整形成可被单片机识别的标准脉冲波形,之后配合内部计数器(定时器)达到测量其频率的目的;这样,整流和AD采样实现对输入信号峰值的检测;通过放大、整形实现对输入信号频率的检测。

二.基本功能与技术指标要求

(1)输入交流电压:1mV~50V,分五档:

①1mV~20mV,②20mV~200mV,③200mV~2V,④2V~20V,⑤20v~50V。

(2)正弦频率;1Hz~100kHz;

(3)检测误差:≤2%;

(4)具有检测启动按钮和停止按钮,按下启动按钮开始检测,按下停止按钮停止检测;

(5)显示方式:数字显示当前检测的有效是,在停止检测状态下,显示最后一次检测到的有效值;

(6)显示:LCD,显示分辨率:每档满量程的0.1%;

三.理论分析

本文要求输入交流信号,通过电路测量其峰值,频率,有效值以

及平均值,因为输入的交流信号为模拟信号,而一般处理数据使用的主控芯片单片机处理的是数字信号,所以我们选择使用数模转换器AD(Analog to Digital Converter)将输入的模拟信号转换为数字信号,并进行采样;由于要求输入交流信号电压峰峰值Vpp为

50mV~10V,所以如果我们采用AD为8位,则最小采样精度为

,因此会产生78.4%的误差,并且题目要求输入交流信号的频率范围为40Hz~50kHz,所以为了保证对高频率信号的单周期内采样个数,我们需要选择尽量高速度的AD;

因此我们选用使用单片机STC12C5A60S2,其内部自带AD为8路10位最高速度可达到250KHz,所以我们可以将最小采样精度缩小到

,并且在输入交流信号频率最大时(50KHz)在单个周期内可采集5个点,因此可保证测量精度。

由于该AD只能接受0~5V的模拟信号输入,所以当我们直接输入一个双极性信号时可能损坏AD,因此当信号进入AD之前我们要进行半波整流,为此我们设计了整流电路,在交流信号通过整流电路输入AD 后,由AD实时输出对应模拟信号大小的二进制数,并存入变量MAX 中,随着信号的不断输入MAX中只保存AD输出过的最大值,这样既

可测出输入信号的峰值;由交流信号有效值表达式

可知检波器应当首先把输入的瞬时电压平方, 然后在一定平均时间内取平均值再开方。即可得到交流信号的有效值,然后通过比较峰值

和有效值的关系即可知道该交流信号的波形;由于要检测交流信号的频率,所以我们使用单片机内部定时器和计数器,而计数器只能由上升沿或是下降沿触发,所以我们想通过施密特触发器将输入交流信号变为高低电平,以便检测其频率,而施密特触发器CD40106在常温5V 供电下门限电压=1.4V,而输入交流信号的峰值最小时为25mV,所以不能保证输入信号为正的时候施密特触发器就能发生跳变,因此我们要对输入交流信号进行放大,为此我们设计了放大电路。

四.电路设计

1.电源电路的设计

本次实验我们采用+5V,—5V,+12V,—12V的电源,故采用了7805,7905,7812,7912这四块芯片组成电源电路对作品进行供电。如图一所示:

图一

经过测量实际输出电压为:+5.12V -5.06V +12.67V -12.02V

2.分档设计

由于直接对信号测量时,对小信号的测量产生很大的误差,为了更有效的利用单片机的资源,故要对待测信号进行分档处理,但在实际运行中,由于进入放大器之前存在大量电阻产生了很多的噪声干扰,使输出波形严重失真,不能有效的利用,故我们舍弃了该部分的电路。

3.整流电路的设计

我们使用整流二极管5819实现半波整流,但通过此电路输出波形会出现一个负电压,因此在此基础上,我们在二极管后加了一个上拉电阻,实现最大程度的消除输入波形的负电压,使其在单片机STC12C5A60S2内部AD的可接收信号范围内(0-5V)。输入信号经过整流后进入AD,由AD输出10位数字信号,再有单片机进行处理,得出信号的有效值。电路如图二所示:

图二

在实际的测试中,证明该方案可行,能够实现对信号的半波整流处理。

4.正弦波转方波电路设计

在该电路的设计中,我们一开始采用555芯片把正弦波转换为方波,但在实际的测试中发现555只能对高于6V的信号才能使正弦波转换为放波,与我们实习要求不符合,故舍弃了该方案。在老师的指导下,我们采用了滞回比较器来产生方波。本方案检测输入信号频率的核心电路,信号通过由三个运放LM324组成的运放电路后放大100倍,然后输入施密特触发器使其波形变为高低电平,将此波形输入到单片机主控芯片,利用单片机内部的计数器和定时器完成对频率的测量。大部分采用运放LM324构成放大100倍电路,位于图下方由5V电源供电的运放可以产生一个2.5V的直流电压,将此2.5V的直流电压输入到第一级运放后,会使输入的交流信号上偏2.5V,变为0-5V,再经过100000pF的电容C3滤掉被放大的噪声以及2.5V直流后,变为-2.5—+2.5的交流信号,之后进入二级放大;

如图所示第二级运放在加入+2.5V直流电压后输出为0—5V的交流信号,至此外加交流信号已被放大100倍;在外加交流信号被放大100倍之后进入施密特触发器CD40106,该触发器在常温5V供电下门限电压 =1.4V ,输出高电平,低电平,此部分电路输出即为这个高低电平。电路如图三所示:

图三

在实际的检测中发现放大器并不能将信号放大100倍,故幅值较小的信号不能正常显示频率,只要当信号的峰峰值大于1.5V时才能使单片机正常显示信号的频率。

5.单片机电路

采用STC12C5A60S2单片机,作为整个系统的控制器,控制各个模块协调工作。运用其内部集成的一个AD作为数模转换器。如图四所示

图四

6.系统整体电路图如图五所示

图五

四.软件设计

AD流程图如图六图七所示

图六

图七

1.正弦波有效值的测量方法

工频正弦电压信号

)2sin(2)2sin()(?π?π+=+=ft U ft U t u m

t

频率f 和初相位角ψ已知,且ψ=0,现以t=0时可作为基准时间,并在t=0时刻开始进行等间隔采样,共得到正弦波u(t)的N 个测量值(采样数据)u(0),u(1),……,u(N-1),希望利用这N 个测量值来计算正弦波的幅值Um (有效值U )。

设采样周期为T S ,如果不存在噪音,且测量无偏差,则有

0)0sin()0(==m U u

)2sin()0(S m T f U u ??=π

……

)2sin()(S m T K f U k u ???=π

……

))1(2sin()1(S m T N f U N u ?-??=-π

我们可以设法利用测量值求解出正弦波参数。

实际上,我们的测量存在误差,同时信号存在噪音,因此,对每

一个测量信号u(k),它与对应时刻t=k ·T S 的正弦波)2sin()(ft U t u m π=的值)2sin()(s m T k f U t u ???=π存在一个误差)(k e ,其中k=0,1,…,N-1。定义

)()2sin()(k u T k f U k e S m -???=π

为了利用N 个测量值来尽可能准确的计算正弦波幅值Um ,我们定义指标函数为:

∑∑-=-=-????==10

2102)]()2sin([)(21)(N k s m N k m k u T k f U k e U πε 它是频率f ,幅值Um ,初相位角ψ的函数。我们的目的就是求频率f ,幅值Um ,初相位角ψ使得目标函数ε最小。为此,令

)1(0)2sin()()2(sin )}2sin()]()2sin({[)(1

0102

1

-------------------------------------------------=????-????=????-????=??∑∑∑-=-=-=N k s N k s m N k s S m m m T k f k u T k f U T k f k u T k f U U U ππππε可以得到正弦波的幅值

∑∑-=-=???????=1

0210

)

2(sin )2sin()(N k s N k s

m T k f T k f k u U ππ 为了与正弦波的真正幅值Um 表示上的区别,用U mC 表示利用N 个采样数据获得的正弦波幅值计算值,既

)2()

2(sin )2sin()(1

0210

∑∑-=-=???????=N k s N k s

mC T k f T k f k u U ππ 对于f ≈50Hz(以前面的测量值为准,这里仅为举例),选择采样周期T S ≈20/200=0.1ms=100us ,既每个周期采样200点(每半个周波100次采样),

199,...,1,0)10sin()

2sin(=?=???k k T k f S ππ

是确定的(可以预先求出,存于sin 表中),sin 2(2π·f ·k ·T S )同样作为常数表,而且

C T k f N k s =???∑-=102)2(sin

π

本身是一个常数,因此公式(2)变为

)3()2sin()(1

0C T k f k u U N k s

mC ∑-=????=π

当采样周期很小时,数值积分系数C 可以用

)4()()(sin 1202t d t T C S ωωπ??=

来替代(可以认为C 是一个周期类的数值积分,当采样周期很小时,就用积分项来表示)。

就可利用N 个等间隔测量值计算出正弦信号的峰值Um 。

正弦波的有效值与峰值的关系

)5(2mC

C U U

半波绝对值电路:

在待测交流信号的正半波,输出待测信号送AD 变换电路,在

待测信号的负半波,输出0.

正半波时,Px.y=0,单片机利用该信号识别是正半波信号,进

行AD 转换,获得N 个采样值。在Px.y=1时,单片机暂停AD 变换,利用正半波获得的N 个检测信号计算正弦波的有效值U ,频率f 。

2.数据测量

幅值的测量

表1

频率的测量

表2

3.数据分析

由上图可知在输入信号vpp在0.7v到5v的区域内,实验作品的误差较小能够实现有效值的测量,当频率在100Hz到40KHz时,在误差允许范围内,作品基本能完成对该信号的准确测量。

4.软件部分代码:

#include

#include

#define FOSC 12000000L

#define BAUD 9600

typedef unsigned char BYTE;

typedef unsigned int WORD;

sbit LCM_E=P2^5;//定义接口

sbit LCM_RW=P2^6;

sbit LCM_RS=P2^7;

sfr ADC_CONTR = 0xBC;

sfr ADC_RES = 0xBD;

sfr ADC_LOW2 = 0xBE;

sfr P1ASF = 0x9D;

sfr AUXR = 0x8e;

#define ADC_POWER 0x80

#define ADC_FLAG 0x10

#define ADC_START 0x08

#define ADC_SPEEDLL 0x00

#define ADC_SPEEDL 0x20

#define ADC_SPEEDH 0x40

#define ADC_SPEEDHH 0x60

#define LCM_Data P0//数据接口

void InitUart();

void SendData(BYTE dat);

void Delay(unsigned int n);

void IO_ADinit() ;

void ADC_Power_On() ;

void get_ad_result() ;

void ADCONVERT() ;

void WriteDataLCM(BYTE WDLCM);

void WriteCommandLCM(BYTE WCLCM,BuysC);

BYTE ReadDataLCM(void);

BYTE ReadStatusLCM(void);

unsigned int GetADCResult(BYTE ch);

void LCMInit(void);

void DisplayOneChar(BYTE X, BYTE Y, BYTE DData);

void DisplayListChar(BYTE X, BYTE Y, BYTE code *DData); void Delay5Ms(void);

void Delay400Ms(void);

void Disp_number(unsigned int num,BYTE n);

void ShowResult(BYTE ch);

unsigned int GetADCResult(BYTE a);

unsigned int data_max = 0;

unsigned long data_max1,count =0;

unsigned int data_change = 150;//0.7V

unsigned char code VP[4]={"Amp:"},Freq[5]={"Freq:"};

unsigned int Counter = 0;

unsigned int data_last = 0;BYTE ch = 0;

unsigned int Frequency = 0;

unsigned int nn =0,flag = 0,flag1 = 0,nn1=0;

unsigned int PrintFre[5] ;

unsigned int Print[4];

unsigned int number[4];

unsigned int D;

void main()

{

unsigned int n=0;

Delay400Ms();//启动等待,等LCM讲入工作状态

LCMInit();//LCM初始化

Delay5Ms();//延时片刻(可不要)

ET1 = 1;

EA=1;

InitUart();

TMOD = 0x15;//均为16位计数器

TH0 = 0x00;

TL0 = 0x00;

TH1 = 0x3C;

TL1 = 0xAF;

TCON = 0x50;//T1,T0均工作,t1做定时器,t0做计数器;

while(1)

{

ADCONVERT();

n++;

if(n>10000){data_max=0;n=0;}

}

}

void To_interrupt(void)interrupt 3 using 1

{

int i ,j;

unsigned int Change1,Print[4];

unsigned long int Change2;

TH1 = 0x3C;

TL1 = 0xAF;

Counter = Counter++;

if(Counter == 20)

{

Frequency = (TH0<<8)+TL0;//读取此时计数器0的读数

if(Frequency>=2000)Change1 = (Frequency/100)*92;

else if (Frequency>=200)Change1 = ((Frequency/10)*92)/10;

else Change1 = (Frequency*97)/100;

for( i=0;i<5;i++)

{

PrintFre[i] = Change1 % 10;

Change1 = Change1 / 10;

}

for(i=4;i>=0;i--)

{

if(i>0)DisplayOneChar(4-i,0,PrintFre[i]+48);

else{DisplayOneChar(4-i,0,PrintFre[i]+48);

DisplayListChar(5-i,0,"Hz");

}

}

Change2 = data_max*50;

Change2 = Change2/10/1.414;

for(j=0;j<=3;j++)

{

Print[j] = Change2 % 10;

Change2 = Change2 / 10;

}

for(j=3;j>=0;j--)

{

if(j>0) DisplayOneChar(10-j,0,Print[j]+48);

else { DisplayOneChar(10-j,0,Print[j]+48);

DisplayListChar(11-j,0,"mV");

}

}

TH1 = 0x3C;

TL1 = 0xAF;

TH0 = 0xFF;

TL0 = 0xFC;

Counter = 0;

}

}

void IO_ADinit()

{

ADC_CONTR=0xe0; //设置P1.0为输入AD转换口

_nop_(); //ADC_CONTR需要四个指令延时

_nop_();

_nop_();

_nop_();

}

void ADC_Power_On()

{

ADC_CONTR|=0x80;

_nop_();

_nop_();

_nop_();

_nop_();

}

void get_ad_result()

{

unsigned int q=0,ad_average_result;

ADC_RES=0;

ADC_LOW2=0;

ADC_CONTR|=0x08;

while(!(ADC_FLAG&ADC_CONTR)) ;

ADC_CONTR&=0xE7;

ad_average_result=(ADC_RES<<2)+ADC_LOW2;

if(data_max

void ADCONVERT()

{

ADC_Power_On();

IO_ADinit();

get_ad_result();

}

void InitUART()

{

SCON = 0x5a;

PCON|= 0x80;

}

void SendData(BYTE dat)

{

while(!TI);

TI = 0; SBUF = dat;

}

void Delay(unsigned int i)

{

unsigned char j;

for(i; i > 0; i--)

for(j = 200; j > 0; j--) ;

}

void WriteDataLCM(BYTE WDLCM)

{

ReadStatusLCM(); //检测忙

LCM_Data = WDLCM;

LCM_E = 0;

LCM_RS = 1;

LCM_RW = 0;

LCM_E = 0; //若晶振速度太高可以在这后加小的延时

LCM_E = 1;

LCM_E = 0;

}

void WriteCommandLCM(BYTE WCLCM,BuysC) //BuysC为0时忽略忙检测{

if (BuysC) ReadStatusLCM(); //根据需要检测忙

LCM_Data = WCLCM;

LCM_E = 0;

LCM_RS = 0;

LCM_RW = 0;

LCM_E = 1;

LCM_E = 0;

}

BYTE ReadDataLCM(void)

{

LCM_E = 0;

LCM_RS = 1;

LCM_RW = 1;

LCM_E = 1;

LCM_E = 0;

return(LCM_Data);

}

BYTE ReadStatusLCM(void)

{

LCM_Data = 0xFF;

LCM_E = 0;

LCM_RS = 0;

LCM_RW = 1;

LCM_E = 1;

LCM_E = 0;

while (LCM_Data & 0x80) //检测忙信号

{ LCM_E=0;

LCM_E=1;

}

return(LCM_Data);

}

void LCMInit(void) //LCM初始化

{

LCM_Data = 0;

WriteCommandLCM(0x38,0); //三次显示模式设置,不检测忙信号

Delay5Ms();

WriteCommandLCM(0x38,0);

Delay5Ms();

WriteCommandLCM(0x38,0);

Delay5Ms();

WriteCommandLCM(0x38,1); //显示模式设置,开始要求每次检测忙信号WriteCommandLCM(0x08,1); //关闭显示

WriteCommandLCM(0x01,1); //显示清屏

WriteCommandLCM(0x06,1); // 显示光标移动设置WriteCommandLCM(0x0C,1); // 显示开及光标设置

}

void DisplayOneChar(BYTE X, BYTE Y, BYTE DData)

{

Y &= 0x1;

X &= 0xF; //限制X不能大于15,Y不能大于1

if (Y) X |= 0x40; //当要显示第二行时地址码 0x40;

X += 0x80; // 算出指令码

WriteCommandLCM(X, 0); //这里不检测忙信号,发送地址码WriteDataLCM(DData);

}

现代测试技术试题A----答案

现代道路交通测试技术 试题A----答案 一. 解:由题意频谱函数:x (ω)= dt e t x j ? +-∞ ∞ -t )(ω = dt e j ?+--2 /2 /t ττ ω =2/2/12t/ττω ω-+--j e j = () 2 /2/1ωτωτω j j e e j -- = ω 2 sin 2 ωτ =τ /2 /2sin ωτωτ ∴频谱函数虚部为0,故相频谱为0; X(0)=τωτωττ ωωω==→→2 /2 /sin lim )(lim 0 x 当ω= τ π n (n=1,2,3……)时 X (ω)=0 故幅频谱图如下: 二.解:因为信号是周期信号,可以用一个共同周期内的平均值代替整个历程的平均值 故:dt t y t x T R T T xy ? +=∞→0)()(1lim )(ττ = 1 T dt t y t x T ? -+++0 00])(sin[)sin(φθτωθω =)cos(2 1 00φωτ-y x

三.1.试述瞬态瑞雷面波无损检测基本原理及其相应的测试技术要求。 参考答案: ①基本原理:对于均匀的弹性半空间分层介质,其结构表面受到瞬态冲击作用时,将产生瞬态振动。振动组份中包括纵波、横波和瑞雷波。在一次冲击产生的波能中,瑞雷波占67%,即从一个振源向一个半无限介质表面辐射的总能量的三分之二形成瑞雷型表面波。而纵波和横波只占有少量能量;并且在表面,随着波传播距离的增大其衰减比瑞雷面波大得多。确切地说,纵波和横波引起的位移振幅沿表面随着距离的平方衰减,而瑞雷面波是随着距离的平方根而衰减,因此,在地基表面的瞬态振动中,瑞雷面波的衰减比纵波和横波衰减慢得多,瞬态表面波主要是由瑞雷波组成。我们通过一系列的关系可以得出,利用瞬态瑞雷面波的传播速度和频率可以确定不同介质的穿透深度。 ②技术要求:检测系统设计是否合理、仪表选型与安装是否符合要求,是保证质量检测精度和可靠性的关键,对其各组成部分有相应的技术要求。 1).激振部分——力锤的选择 它是整套测量系统的前哨,对路面冲击信号的产生和冲击响应信号的正确检取,是系统准确测试的基本保证。预先应根据检测深度做一些力锤冲击试验,以选择合理的力锤重量或合适材料的锤头。使瞬态冲击施加于路面表面后,能产生一组具有不同频率的瑞雷面波在介质中传播。 2).垂向检波器的选型 垂向检波器选用压电式加速度传感器。 对于层状路面结构来说,一般选择小冲击源作为振源,使其产生具有丰富频率的瑞雷面波沿地表一定深度向四周传播。对于高频短波长的波来说,选择加速度传感器,因为它具有频率范围宽,对冲击振动的频响特性好等特点。如检测像硅酸盐、水泥混凝土和沥青混凝土路面的刚性层状体系时需要选择加速度传感器。 速度、位移传感器一般不用作冲击测量。另外,正确选定压电式加速度传感器的型号也是十分重要的(必须考虑它的频率范围、动态范围、灵敏度等主要特征参数是否符合测试精度要求)。 3).安装位置的确定 测试前,应对现场路面进行调查,确定检测点,并合理布置。一般两个垂向检 波器之间的距离应视测试的路面深度而定,通常应使两个间距大于路面深度的一半以上,并且取振源到最近的传感器的距离等于两传感器之间的距离。 4).连接导线选择 仪器之间的连接导线应尽量短,且记不应将各种导线混合使用,尽量选择相同线种,且忌抖动,以免引起现场测量不稳定。 四. 参考答案:令SAM(t)=Х(t)﹡cos ω0t,则SAM(t)的傅立叶变换为 SAM(ω)= ? ∞ ∞ - Х(t)﹡cos ω0t*e t j ωdt=1/2[X(ω+ω0)+X(ω-ω0)]

单片机课程设计产生三角波、正弦波、方波

STC89C51单片机产生正弦波、方波、三角波LED显示频率源程序 #include #include #define uchar unsigned char #define uint unsignedint sbit LATCH1=P2^6;//定义锁存使能端口段锁存 sbit LATCH2=P2^7;// 位锁存 unsigned char TempData[8]; //存储显示值的全局变量 unsigned char code DuanMa[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};// 显示段码值0~9 unsigned char code DuanMa2[10]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};// 显示段码值0~9 unsigned char code DuanMa1[3]={0x77,0x7c,0x39}; unsigned char code WeiMa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//分别对应相应的数码管点亮,即位码 #define DataPort P0 sbitkeyA=P3^3; sbitkeyB=P3^4; sbitkeyC=P3^5; sbitwc=P1^0; sbitscl=P1^1; sbitsda=P1^2; sbit scl1=P1^3; sbit sda1=P1^4; sbit p5=P1^5; sbit p6=P1^6; sbit p7=P1^7; uintsign,ad; uchar temp[10], temp1[3];//定义显示区域临时存储数组

基于单片机正弦信发生器












专业班级:
学生姓名:
指导教师(签名):
一、课程设计(论文)题目
正弦波信号发生器设计
二、本次课程设计(论文)应达到的目的
本次课程设计是自动化专业学生在学习了《单片机原理及应用》课程 及《模拟电子线路》、《数字电子线路》等专业基础课程之后进行的一次综 合训练,其主要目的是加深学生对单片机软硬件技术和相关理论知识的理 解,进一步熟悉 51 单片机系统设计的基本理论、方法和技能;掌握工程 应用的基本内容和要求,力争做到理论与实际的统一;同时培养学生分析 问题、解决问题的能力和独立完成系统设计的能力,并按要求编写相关的 技术文档和设计报告等。
三、本次课程设计(论文)任务的主要内容和要求(包括原始数据、技 术参数、设计要求等)
1.设计内容
(1)选择 51 单片机,晶振采用 12MHz。
(2)设计一个能产生 0 至 50HZ 正弦波信号。通过 0832D/A 芯片完成 数模转换。

(3)频率值由键盘输入。 (4)将频率值由 LED 数码管上显示(两位)。 2.设计要求 (1)按照任务书的要求完成系统分析及方案设计。 (2)完成硬件原理图的设计,并选择相关元器件。 (3)完成控制软件流程图的设计,编写相应的单片机控制程序。 (4)撰写设计报告。 四、应收集的资料及主要参考文献: 1.李建忠.单片机原理及应用.西安电子科技大学出版社,2008 2.杨居义.单片机课程设计指导.清华大学出版社,2009 3.李海滨等.单片机技术课程设计与项目实例.中国电力出版社,2009 以及与 51 系列单片机相关的文献及教材。 五、审核批准意见
教研室主任(签字) 正弦信号发生器设计方案框图

正弦交流电的有效值

非正弦交流电有效值的计算 交变电流的大小和方向随时间作周期性变化。为方便研究交变电流的特性,根据电流的热效应引入了有效值这一物理量。 定义:若某一交流电与另一直流电在相同时间内通过同一电阻产生相等的热量,则这一直流电的电压、电流的数值分别是该交流电的电压、电流的有效值。 教材中给出了正弦交流电的有效值I与最大值的关系,那么非正 弦交流电的有效值又该如何求解呢?其方法是从定义出发,根据热效应求解。 例1. 如图1所示的交变电流,周期为T,试计算其有效值I。 图1 分析:由图1可知,该交变电流在每个周期T内都可看作两个阶段的直流电 流:前中,,后中,。在一个周期中,该交变电流在电阻R上产生的热量为: ① 设该交变电流的有效值为I,则上述热量 ② 联立①、②两式,可得有效值为 例2. 如图2所示表示一交变电流随时间变化的图象,其中,从t=0开始的每个时间内的图象均为半个周期的正弦曲线。求此交变电流的有效值。 图2 分析:此题所给交变电流虽然正负半周的最大值不同,但在任意一个周期内,前半周期和后半周期的有效值是可以求的,分别为

设所求交变电流的有效值为I,根据有效值的定义,选择一个周期的时间,利用在相同时间内通过相同的电阻所产生的热量相等,由焦耳定律得 即 解得 例3. 求如图3所示的交变电流的有效值,其中每个周期的后半周期的图象为半个周期的正弦曲线。 图3 分析:从t=0开始的任意一个周期内,前半周期是大小不变的直流电,为 ,后半周期是有效值为的交变电流。 设所求交变电流的有效值为I,根据有效值的定义,选择一个周期的时间,利用在相同时间内通过相同的电阻所产生的热量相等,由焦耳定律得 即 解得 例4. 如图4实线所示的交变电流,最大值为,周期为T,则下列有关该交变电流的有效值I,判断正确的是() 图4

基于51单片机的波形发生器的设计讲解

目录 1 引言 (1) 1.1 题目要求及分析 (1) 1.1.1 示意图 (1) 1.2 设计要求 (1) 2 波形发生器系统设计方案 (2) 2.1 方案的设计思路 (2) 2.2 设计框图及系统介绍 (2) 2.3 选择合适的设计方案 (2) 3 主要硬件电路及器件介绍 (4) 3.1 80C51单片机 (4) 3.2 DAC0832 (5) 3.3 数码显示管 (6) 4 系统的硬件设计 (8) 4.1 硬件原理框图 (8) 4.2 89C51系统设计 (8) 4.3 时钟电路 (9) 4.4 复位电路 (9) 4.5 键盘接口电路 (10) 4.7 数模转换器 (11) 5 系统软件设计 (12) 5.1 流程图: (12) 5.2 产生波形图 (12) 5.2.1 正弦波 (12) 5.2.2 三角波 (13) 5.2.3 方波 (14) 6 结论 (16) 主要参考文献 (17) 致谢...................................................... 错误!未定义书签。

1引言 1.1题目要求及分析 题目:基于51单片机的波形发生器设计,即由51单片机控制产生正弦波、方波、三角波等的多种波形。 1.1.1示意图 图1:系统流程示意图 1.2设计要求 (1) 系统具有产生正弦波、三角波、方波三种周期性波形的功能。 (2) 用键盘控制上述三种波形(同周期)的生成,以及由基波和它的谐波(5次以下)线性组合的波形。 (3) 系统具有存储波形功能。 (4) 系统输出波形的频率范围为1Hz~1MHz,重复频率可调,频率步进间隔≤100Hz,非正弦波的频率按照10次谐波来计算。 (5) 系统输出波形幅度范围0~5V。 (6) 系统具有显示输出波形的类型、重复频率和幅度的功能。

单片机相位差测试仪研究报告

_____________________ 个人资料整翌_仅限学习使用_ 基于单片机的相位差测试仪的研究 摘要 提出了一种基于8051单片机开发的低频数字相位差测量仪的设计。系统以单片机8051 及计数器,显示管为核心,构成完备的测量系统。可以对1Hz?1000Hz频率范围的信号进行 频率、相位等参数的精确测量,测相绝对误差不大于1°采用数码管显示被测信号的频率、相位差。硬 件结构简单,程序简单可读写性强,软件采用汇编语言实现,效率高。与传统的电路系统相比,其有处理速度快、稳定性高、性价比高的优点。 关键词:相位差;单片机;计数器;数码显示管 Designsof Low frequency Digital PhaseMeasurement Based on Single Chip Abstract A new ki nd of low - freque ncy digital phase measureme nt in strume nt is reside nted which is based on 8051.This is a complete system whose core is based on sin gle chip 8051 and arithmometer

and charactr on .It may measure the freque ncy and phase of the sig nal which beg in from 1 Hz to _____________________ 个人资料整翌_仅限学习使用_ 1000Hz, absolute error is not more than 1 The data are displayed on numeral displayer. Hardware structure is simple and software is realized by compiling Ianguage. Compared with traditional circuit, it has many adva ntages of faster process ing speed, good stability and high ratio betwee n property and price. Keyword: phase difference single-chip compute; . Arithmometer;charactron tube 目录

4距离测量和直线定向

第四章 距离测量和直线定向 ? 学习目标:学习光电测距、尺子量距和光学测距三种距离测量原理与方法,在掌握现代光电 测距技术原理与方法基础上,掌握钢尺量距、光学视距基本方法。 第一节 光学测距原理与方法 ? 一、概述 ? 1.基本原理:根据几何光学原理,应用三角定理进行测距的技术。 ? 余切定理可知A 、B 二点的距离D 为 ? 2.光学测距方式:光学测距的方式依角度和尺长的测量方法不同而异。 ? 二、视距法测量距离 ? 视距法测距是利用测量仪器望远镜十字丝的上、下丝获得尺子刻划读数M 、N ,从而实现距离 测量技术。 3.平视距测量方法: ? 1)经纬仪望远镜视准轴处于水平状态瞄准直立的尺子(如木制标尺); ? 2)利用望远镜读取上、下丝所截的尺面上刻划值M 、N(l 上、l 下); ? 3)按计算距离D 。 ? l=N-M= l 下-l 上 ? D=100?l 2 2γctg l D =

4.斜视距测量平距计算公式 ?A点安置经纬仪,B立尺; ?测竖直角为 , ?读数为M、N(l上、l下), ?计算: ?D AB=100(l上-l下)×cos2α 第二节距离丈量 ?一、概述 ?传统上所谓的尺子量距方法。 ?钢尺量距基本工作:定线、丈量、计算。 ?钢尺量距方法: ?一般量距方法、精密量距方法。 二、钢尺一般丈量法 ? 1.准备工作: ?1)主要工具:钢尺、垂球、测钎、标杆等。钢尺完好,刻划清楚。 ?2)工作人员组成:主要工作人员是拉尺、读数、记录共2--3人。 ?3)场地:比较平坦,已定线,并插有测钎。 ? 2.丈量工作: ?1)往测:从A丈量至B,逐段丈量整尺段n,尺段长为l o;最后丈量零尺段长q。长度为D往;?2)返测:从B丈量至A,返测全长长度为D返。 ? 3.计算与检核: ?1)计算 D往=n l o往+q往 ? D返=n l o返+q返

基于单片机的信号发生器(完整电路_程序)资料

电子与信息工程学院综合实验课程报告 实验名称:基于单片机的信号发生器的设计与实现班级:10电工2班 学号:20101851046 姓名:李俊 指导教师: 时间:

摘要 本文以STC89C51单片机为核心设计了一个低频函数信号发生器。信号发生器采用数字波形合成技术,通过硬件电路和软件程序相结合,可输出自定义波形,如 正弦波、方波、三角波、三角波、梯形波及其他任意波形,波形的频率和幅度在一定范围内可任意改变。波形和频率的改变通过软件控制,幅度的改变通过硬件实现。介绍了波形的生成原理、硬件电路和软件部分的设计原理。本系统可以产生最高频率798.6HZ的波形。该信号发生器具有体积小、价格低、性能稳定、功能齐全的优点。 关键词:低频信号发生器;单片机;D /A转换; 1设计选题及任务 设计题目:基于单片机的信号发生器的设计与实现 任务与要求: 设计一个由单片机控制的信号发生器。运用单片机系统控制产生多种波形,这些波形包括方波、三角波、锯齿波、正弦波等。信号发生器所产生的波形的频率、幅度均可调节。并可通过软件任意改变信号的波形。 基本要求: 1. 产生三种以上波形。如正弦波、三角波、矩形波等。 2.最大频率不低于500Hz。并且频率可按一定规律调节,如周期按1T,2T,3T,4T 或1T,2T,4T,8T变化。 3.幅度可调,峰峰值在0——5V之间变化。 扩展要求:产生更多的频率和波形。 2系统概述 2.1方案论证和比较 2.1.1总体方案: 方案一:采用模拟电路搭建函数信号发生器,它可以同时产生方波、三角波、正弦波。但是这种模块产生的不能产生任意的波形(例如梯形波),并且频率调节很不方便。 方案二:采用锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求,且电路复杂。

单片机数字相位差计的设计

XXXXXX项目式教学 设计报告 课程名称:电路综合设计 项目名称:单片机数字相位差计的设计专业班级: 学生姓名: 指导教师: 开课时间: 报告成绩:

数字相位差计的设计与实现 摘要 随着数字电子技术的发展,由数字逻辑电路组成的控制系统逐渐成为现代检测技术中的主流,数字测量系统也在工业中越来越受到人们的重视。 在实际工作中,常常需要测量两列频率相同的信号之间的相位差,来解决实践中出现的种种问题。例如,电力系统中电网合闸时,要求两电网的电信号之间的相位相同,这时需要精确测量两列工频信号之间的相位差。如果两列信号之间的相位差达不到相同,会出现很大的电网冲激电流,对供电系统产生巨大的破坏力,所以必须精确地测量出两列信号之间的相位差。本设计由STC89C51构成的最小系统,通过外围扩展,精确测量工频电压的相位差,采用LCD1602显示相位差,功耗小,精确度高,稳定性能好,读数方便且不需要经常调试。 关键词:单片机、低频、相位差、LCD

一、绪论 1.1课题的意义 众所周知,相位是交变信号的三要素之一,而相位差则是研究两个相同频率交流信号之间关系的重要参数。相位差的测量是电气测量的一项基本内容,其含义为测量两个同频率周期信号的相位差值。 例如某一电路系统输入信号与输出信号之间的相位差,三相交流电两个相电压或两个线电压之间的相位差,相电压与相电流之间的相位差等。 又如,在自动控制理论中,系统的相频特性为在不同频率正弦信号作用下,系统的输出信号与输入信号之间的相位和频率的函数关系。 此外,同频率正弦信号的相位差测量在工业自动化、智能控制及通讯电子等许多领域都有着广泛的应用。如电工领域中的电机功角测试,等等。 因此相位差的测量是研究网络相频特性中不可缺少的重要方面。 1.2课题要求 本设计研究了一种可测20Hz-20kHz 内波形(正弦波、三角波、矩形波)数字相位差测量仪的设计方法。主要内容是以STC89C51为控制核心,实现对音频范围内的正弦交流信号的相位的测量,可测的信号相位差在0~360? 度范围内,测量精度可达0.1? 。两路信号(同频、不同相)通过过零比较器电路整形成矩形波信号,再通过鉴相器,D 触发器二分频得到相位差信号。这样就构成了相位测量系统的测量电路。再将该相位差信号送入单片机的外部中断端口,通过单片机对数据的处理,最后方可得到所要测量的相位差,并在液晶上显示出测量结果。 二、相位测量方案论证与选择 2.1设计方案论证 方案1:相位——电压转换法 相位--电压转换式数字相位计的原理框图如图2-1

现代测量技术

上海第二工业大学 现代测量技术 学号084812099 姓名钱杰 班级08机自A2 院系机械制造及自动化 2011 年11 月 5 日

目录 前言 一、激光传感器简单介绍及其优点 (3) 二、激光测距传感器 (5) 1.激光测距的原理 (5) 2.激光测距传感器的优势: (5) 3.测距传感器的工作原理 (6) 三、激光测长传感器 (6) 四、激光精密测量的现状与未来发展 (6) 五、参考文献 (7)

激光测量 摘要:激光传感器已经广泛应用于国防、生产、医学和非电测量等各方面,激光传感器正以自己独特的优势焕发勃勃生机,本文简单介绍了激光测距传感器工作的原理和用。 关键词:激光测距、望远镜、激光测距原理与应用、应用实例 Laser measurement Abstract: laser sensor has been widely used in national defense, manufacturing, medica l and non electric measurement etc, laser sensor with its own unique advantages of vi gour and vitality, this paper briefly introduces laser ranging sensor working principle a nd use. Key words: laser rangefinder、telescope、laser ranging principle and application、examples 一、激光传感器简单介绍及其优点 激光传感器是利用激光技术进行测量的传感器。它由激光器、激光检测器和测量电路组成。激光传感器是新型测量仪表,它的优点是能实现无接触远距离测量,速度快,精度高,量程大,抗光、电干扰能力强等。 激光具有4个重要特性: (1)高方向性(即高定向性,光速发散角小),激光束在几公里外的扩展范围不过几厘米; (2)高单色性,激光的频率宽度比普通光小10倍以上; (3)高亮度,利用激光束会聚最高可产生达几百万度的温度。 (4)高相干性,两束光交迭时,产生明暗相间懂得条纹(单色光)或彩色条纹(自然光)的现象称为光的干涉。只有频率和振动方向相同,周相相等或周相差恒定的两束光才具有相干性。

单片机产生正弦波

单片机产生正弦波 一要求 采用单片机map430g2553和运算放大器lmv358产生正弦波,周期1秒。 二思路 可通过单片机产生PWM,调节参数寄存器的值,产生不同占空比的PWM信号。若占空比的变化规律是正弦的,则滤波后可得到所需正弦波形。 其中,PWM(Pulse Width Modulation)控制——脉冲宽度调制技术是通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值)。图1为用PWM波代替正弦半波的例子。(单片机输出图1b,滤波后得到图1a) 图1 用PWM波代替正弦半波

三实践 1 PWM周期计算 正弦波周期1秒,需要采用多少个周期的PWM信号去表示?数目过少,则波形不完整(极端状况只有1个周期的PWM);数目过多,则增加了单片机的计算量,并对速度有要求。这里取N=200个。 则PWM信号的周期为T=1/200秒=5毫秒。 2 PWM参数计算 PWM由定时器TimerA产生,参数主要包括:定时器时钟,周期计数,高电平计数三个。 ●定时器时钟:定时器时钟来源有4个,两个内部的(辅助时钟ACLK、子系统主时钟 SMCLK),两个外部的。这里采用内部时钟。没有外部晶体时,ACLK由内部时钟源VLOCLK(低频时钟源,12K赫兹)产生,SMCLK由内部数字时钟DCOCLK(默认1M赫兹)产生。这里建议采用较高频率的。部分代码如下: BCSCTL1 |= DIVA_0; // ACLK = VLO BCSCTL2 |= SELM_0 + DIVM_0 + DIVS_0; // MCLK = DCO, SMCLK = DCO // Configure TimerA TACTL = TASSEL1 +MC_1; // Source: SMCLK, UP mode 其中,ACLK可配置成VLOCLK的1,2,4,8分频,这里设置为1分频,即ACLK = VLO;第二行中,SELM_0的作用是选择MCLK的时钟源为DCOCLK,DIVM_0设置为MCLK = DCO,DIVS_0设置为SMCLK = DCO(默认时钟源)。 TASSEL1将定时器时钟设置为SMCLK(若为TASSEL0则选择ACLK),且未分频。模式选择MC_1为上升模式。采用上述方法设置 定时器时钟= SMCLK = DCO = 1M赫兹。 ●周期计数:上升模式表明定时器由0递增到一个上限值CCR0。CCR0需设置。 因为周期T=1/200秒,而定时器时钟= SMCLK = DCO = 1M赫兹,定时器周期t=1微秒,所以CCR0=T/t=5000,即5毫秒。 ●高电平计数:定时器由0递增到一个上限值CCR0过程中,需设置脉宽CCR1。 并且K= CCR1/ CCR0的数值每个周期(5毫秒)都变化一次,变化趋势满足正弦变化,200个5毫秒构成一个正弦变化周期。 为获得CCR1值,在matlab中输入: t=0:pi/100:2*pi; k=(sin(t)+1)/2; CCR1=round(4999*k); 可获得201个CCR1值。上式中,第一行设置了201个数,均匀分布在0-2pi 之间,第一个和最后一个分别对应0弧度和2pi弧度;第二行计算201个正弦值,偏置为0.5,全幅度为1的正弦波幅度,如图2所示:

单片机制作简易正弦波信号发生器(DAC0832)

调试时,电源的质量需要较高,不然的话,波形不易观察看清楚。 //河北工程大学信电学院自动化系 //设计调试成功 ***************将DA输出的 0V ~ -5V范围扩展成 -5V ~ +5V范围,电路如下图:*************** 如若VO2输出更平滑一些,可以在VO2处接一个小电容,滤掉高频。 (一)过程分析计算如下: ?第一级运放出来的V o1=-N*V ref/256。当V ref为+5V时,V o1=0~ -5V。 其中,V ref为参考电压,N为8位数字量输出到DAC0832 ?并结合第二级运放,是否可以推出来如下式子: V o2=-(2*V o1+V ref)=-(2*-N*V ref/256+V ref) =-(-2N*V ref/256+V ref) =2N*V ref/256-V ref 当参考电压V ref=5V时,V o2=10N/256-5。 由于要求输出的是正弦波xsinθ,幅值x不定,下面考虑幅值x分别取5和1的情况: ●当输出波形为5 sinθ时:5 sinθ=V o2 =2N*V ref/256-V ref =10N/256-5 //此时V ref=+5V 得sinθ=2N/256-1

●当输出波形为sinθ时:sinθ=V o2 =2N*V ref/256-V ref =10N/256-5 //此时V ref=+5V 得sinθ=10N/256-5 最后可以考虑输出波形的频率问题。例如要求输出特定频率的正弦波。 (二)针对输出的不同幅值波形 ?当输出波形为5 sinθ时:得sinθ=2N/256-1 这里我们要求进步为一度。具体到进步大小,和内存RAM或者ROM有关,即和你存放数据表的空间有关。放到哪个空间都可以。(这里周期采样最多256个点,步数可以为1、2、5等,自己视情况而定,这里由于是360度,256个采样点,故步的大小360/256=1.4=△θ,由此算的前三个 θ=0,1.4,2.8……,对应N为0x80,0x83,0x86……) 通过sinθ的特征和计算部分数据发现规律: 0~90度与90~180度大小是对称的;181~270度与270~359度是对称的。 故,不是所有数据都是计算的。

相位差检测

目录 一、题目要求 ........................................................ 错误!未定义书签。 二、方案设计与论证 ............................................ 错误!未定义书签。 移相电路 ......................... 错误!未定义书签。 检测电路 ......................... 错误!未定义书签。 显示电路 ......................... 错误!未定义书签。 三、结构框图等设计步骤................. 错误!未定义书签。 设计流程图........................ 错误!未定义书签。 电路图 ........................... 错误!未定义书签。 移相电路图................... 错误!未定义书签。 检测电路图................... 错误!未定义书签。 显示电路图................... 错误!未定义书签。 四、仿真结果及相关分析................. 错误!未定义书签。 移相效果 ......................... 错误!未定义书签。 相位差波形........................ 错误!未定义书签。 相位差度数........................ 错误!未定义书签。 五、误差分析........................... 错误!未定义书签。 误差分析 ......................... 错误!未定义书签。 六、总结与体会......................... 错误!未定义书签。 七、参考文献........................... 错误!未定义书签。 八、附录............................... 错误!未定义书签。 元器件清单........................ 错误!未定义书签。

现代测量技术在工程中的应用

现代测量技术在工程中运用情况 摘要:我国从20世纪80年代以来,一直都在不断引进各种先进的测绘技术,测绘技术逐渐成了工程测量中的重点。本文介绍数字测绘与城市或工业信息系统技术的应用与发展;城市地下管线探测技术发展与应用;变形监测技术应用与发展;卫星定位技术在工程测量中的应用与发展;工业测量技术的兴起、发展与应用;精密与大型工程测量现状与发展。 关键字:现代工程测量;控制测量;地形测量;施工测量;竣工测量 一、引言 工程测量是一门应用学科,传统的工程测量包括控制测量、地形测量、施工测量、竣工测量和变形监测五大部分。随着测绘技术的高速发展,工程测量技术形成了两个发展趋势:一是在上述五个部分不断出现新仪器、新方法和新手段;二是工程测量的应用领域不断扩展,出现了工业测量和地下管线探测等新的领域,还将测量新技术应用到了建筑测绘中。下面分六个方面介绍工程测量技术近几年的应用现状和发展趋势。 二、数字测绘与城市或工业信息系统技术的应用与发展 我国数字测绘技术从20世纪90年代初开始,经过十几年的发展已日渐成熟,形成了自己的方法和开发出多个具有自主版权的国产软件。现在的数字测绘正在从2维向3维发展,形成3维测绘技术。城市地理信息系统已经得到了足够的重视,工业企业地理信息系统也正在兴起。 现在数字化测绘技术已经普及,大比例尺地形图、地籍图、房产图、竣工图、地下管网图、导航电子地图等基本上都已经实现了数字化测绘,白纸测图方法已经淘汰。主要数字化测图系统有全站仪+PDA+地形图绘图软件,全站仪+便携机(PDA掌上电脑)+带有地物编码的地形图绘图软件,GPS RTK + PDA +地形图绘图软件,摄影测量进行大比例尺测图,数字摄影技术+GPS+便携机(PDA 掌上电脑)+导航图测绘软件。

单片机定时1器控制产生10Hz正弦波信号

#include #define uchar unsigned char #define uint unsigned int sbit cs=P3^5; sbit wr=P3^6; uchar j; uchar code tosin[256]={ 0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x96,0x99,0x9c,0x9f,0xa2, 0xa5,0xa8,0xab,0xae,0xb1,0xb4,0xb7,0xba,0xbc,0xbf,0xc2,0xc5, 0xc7,0xca,0xcc,0xcf,0xd1,0xd4,0xd6,0xd8,0xda,0xdd,0xdf,0xe1, 0xe3,0xe5,0xe7,0xe9,0xea,0xec,0xee,0xef,0xf1,0xf2,0xf4,0xf5, 0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd,0xfd,0xfe,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd, 0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf7,0xf6,0xf5,0xf4,0xf2,0xf1, 0xef,0xee,0xec,0xea,0xe9,0xe7,0xe5,0xe3,0xe1,0xde,0xdd,0xda, 0xd8,0xd6,0xd4,0xd1,0xcf,0xcc,0xca,0xc7,0xc5,0xc2,0xbf,0xbc, 0xba,0xb7,0xb4,0xb1,0xae,0xab,0xa8,0xa5,0xa2,0x9f,0x9c,0x99, 0x96,0x93,0x90,0x8d,0x89,0x86,0x83,0x80,0x80,0x7c,0x79,0x76, 0x72,0x6f,0x6c,0x69,0x66,0x63,0x60,0x5d,0x5a,0x57,0x55,0x51, 0x4e,0x4c,0x48,0x45,0x43,0x40,0x3d,0x3a,0x38,0x35,0x33,0x30, 0x2e,0x2b,0x29,0x27,0x25,0x22,0x20,0x1e,0x1c,0x1a,0x18,0x16, 0x15,0x13,0x11,0x10,0x0e,0x0d,0x0b,0x0a,0x09,0x08,0x07,0x06, 0x05,0x04,0x03,0x02,0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x02,0x03,0x04,0x05, 0x06,0x07,0x08,0x09,0x0a,0x0b,0x0d,0x0e,0x10,0x11,0x13,0x15, 0x16,0x18,0x1a,0x1c,0x1e,0x20,0x22,0x25,0x27,0x29,0x2b,0x2e, 0x30,0x33,0x35,0x38,0x3a,0x3d,0x40,0x43,0x45,0x48,0x4c,0x4e, 0x51,0x55,0x57,0x5a,0x5d,0x60,0x63,0x66 ,0x69,0x6c,0x6f,0x72, 0x76,0x79,0x7c,0x80 };/*正弦波码 */

基于51单片机函数信号发生器设计

摘要:本系统利用单片机AT89S52采用程序设计方法产生锯齿波、正弦波、矩形波三种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,能产1Hz—3kHz的波形。通过键盘来控制三种波形的类型选择、频率变化,并通过液晶屏1602显示其各自的类型以及数值,系统大致包括信号发生部分、数/模转换部分以及液晶显示部分三部分,其中尤其对数/模转换部分和波形产生和变化部分进行详细论述。 关键词:单片机AT89S52、DAC0832、液晶1602 Abstract: this system capitalize on AT89s52,it makes use of central processor to generate three kinds of waves, they are triangle wave, and use D/A conversion module, wave generate module and liquid crystal display of 1602, it can have the 1Hz-3KHz profile. In this system it can control wave form choosing, frequency, range,can have the sine wave, the square-wave, the triangular wave. Simultaneously may also take the frequency measurement frequency,and displays them through liquid crystal display of 1602.this design includes three modules. They are D/A conversion module, wave generate module and liquid crystal display of LED module. In this design, the wave generator into wave form module and D/A conversion module are discussed in detail. key word: AT89S52, DAC0832, liquid crystal 1602.

单片机测量频率,占空比,相位差

单片机测量频率,占空比,相位差 1、 频率及占空比的测量 如上图所示,当脉冲的上升沿来临时,将定时器打开;紧接着的下降沿来临时,读取定时器的值,假设定时时间为t1;下一个上升沿来临时关闭定时器,读取定时器的值,假设定时时间为t2。t1即为1个周期内高电平的时间,t2即为脉冲的周期。t1/t2即为占空比,1/t2即为频率。 C 语言程序如下: TH0=0; //定时器高位,初值设为0 TL0=0; //定时器低位,初值设为0 T0_num=0; //定时器溢出次数,初值设为0 while(pulse); //pulse 为脉冲的输入引脚 while(!pulse); //等待上升沿来临 TR0=1; //打开定时器 while(pusl1); //等待下降沿来临 th1=TH0;tl1=TL0;num1=T0_num; //保存定时器值 while(!pusl1); //等待上升沿来临 TR0=0; //关闭定时器 th2=TH0;tl2=TL0;num2=T0_num; //保存定时器值 2、 相位差的测量 上升沿打开定时器 下降沿读取定时器值并保存 下一个上升沿关 闭定时器,读取 定时器值并保存

测量相位差的电路如上所示,待测量的两路脉冲分别作为两个D触发器的时钟输入,两个D触发器的输入端D及S端都接高电平,第一个D触发器的输出接第二个D触发器的R端,第二个D触发器的互补输出端接第一个D触发器的R端。从下面的波形图可以看出,第一个D触发器输出的脉冲信号的占空比乘以2π即为相位差。这样就将测量两路方波信号的相位差转化为测量一路方波 信号的占空比,就可以按照前面介绍的测量占空比的方法来测量了。

基于白光干涉的绝对距离测量

第一章绪论 1.1测量绝对距离技术概论 绝对距离测量指无导轨测长。激光干涉仪测量过程中虽然可以达到纳米级甚至亚纳米级的测量精度,但也有种种局限性,如只能进行增量式测量,测量过程不能间断,以及需要导轨作为参考标准等等。这些缺点限制了激光干涉仪的应用场合。所以在实际测量中迫切需要无导轨绝对距离测量。 1.1.1绝对距离干涉测量(无导轨测量)方法 无导轨测量的研究历史应该追溯到迈克尔逊时代。在1892年把国际标准米尺与Cd红线波长相比较提高了小数重合法。在激光出现之后,激光光谱学的研究结果向人们展示了极为丰富的谱线系列和令人振奋的相干特性。1976年,C.R.Ti lford和A.G.0rszag首先报导了使用CO2激光器进行多波长干涉测长而不必求助于其他初测手段,成为严格意义上的激光多波长无导轨测量的开端。1977年C.R.Ti 1ford对于由条纹尾数确定长度的分析法进行了系统的理论分析,并且提供了合成波长的概念,对激光多波长干涉测量起了重要的推动作用。此后各国科学家开展研究。无导轨测量比有导轨测量有明显的优点,因为它不但省去了导轨,也避免了在累加计数过程中出现的误差甚至是错误,省去了滑板移动的时间等等。另一个更为重要的优点是在三维跟踪控制中应用更为方便和避免余弦误差的不断累积。激光多波长无导轨测量技术无疑会推动测量机器人的发展。 1.2绝对距离测量原理 用光学干涉仪测量长度时,干涉仪的干涉条纹与被测光程差之间的关系下: 其中L为被测长度,N,ε分别为干涉条纹的整数级次和小数部分。它们都是正数,λ是光波波长。上式中ε可以直接通过干涉仪精确测量出来,N可以有两种方法获得:一是利用条纹计数。二是利用L的已知初始值,通过计算估计,确定N即无导轨绝对距离测量法。 设被测长度L的粗测值为L0,其测量的不确定度为△L,即L= L0+△L,那么: 两式相减得: 要使整数唯一确定,只需使m1-m2<1,即△L <λs/4。即如果已知L的初值不确定度小于所用波长的四分之一,那么2L/λs的整数部分唯一确定,这时只需测量出小数级次,就可精确测量出长度L。这就是绝对距离干涉测量的基本原理。 由于直接用于长度测量的光波波长很短,因此利用单波长实现绝对距离测量是很困难的,对粗测精度要求太高,难于实现。要实现绝对距离测量,必须有一个波长较长的波。 如果当两光波的波长λ1, λ2相差较小时,λS将远大于λ1和λ2,就是说可以获得一个波长较长的拍波。该拍波也称为合成波。

信号发生器 (正弦波,方波,三角波)51单片机 C语言代码

/**************************************/ /* 信号发生器(正弦波,方波,三角波) */ /*************************************/ #include #include #define uchar unsigned char #define uint unsigned int sbit cs=P2^0; //tlc5615片选端口 sbit clk=P2^1; //tlc5615时钟线 sbit din=P2^2; //tlc5615传输端口 sbit key1=P1^0; sbit key2=P1^1; //按键的单片机接口 uchar keydat; uchar flag; //波形发生终止信号的标志位一旦被置零立马停止发信号

uchar flagsqu; //方波高低电平控制为(运用定时器1中断控制) uchar m,num; uchar dat=0xff; uchar code tosin[141]={ //正弦波的编码 0x00,0x01,0x02,0x02,0x03,0x04,0x05,0x06,0x07,0x08, 0x09,0x0a,0x0b,0x0d,0x0e,0x10,0x11,0x13,0x15,0x16, 0x18,0x1a,0x1c,0x1e,0x20,0x22,0x25,0x27,0x29,0x2b, 0x2e,0x30,0x33,0x35,0x38,0x3a,0x3d,0x40,0x43,0x45, 0x48,0x4c,0x4e,0x51,0x55,0x57,0x5a,0x5d,0x60,0x63, 0x66,0x69,0x6c,0x6f,0x70,0x71,0x72,0x73,0x74,0x75, 0x76,0x77,0x78,0x79,0x7a,0x7b,0x7c,0x7d,0x7e,0x7e, 0x7f,0x80,0x7f,0x7e,0x7e,0x7d,0x7c,0x7b,0x7a,0x79, 0x78,0x77,0x76,0x75,0x74,0x73,0x72,0x6f,0x6c,0x69, 0x66,0x63,0x60,0x5d,0x5a,0x57,0x55,0x51,0x4e,0x4c, 0x48,0x45,0x43,0x40,0x3d,0x3a,0x38,0x35,0x33,0x30, 0x2e,0x2b,0x29,0x27,0x25,0x22,0x20,0x1e,0x1c,0x1a, 0x18,0x16,0x15,0x13,0x11,0x10,0x0e,0x0d,0x0b,0x0a, 0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x02,0x01, 0x00};

相关文档
相关文档 最新文档