基于单片机的磁悬浮小球控制系统设计 - 图文(6)

2020-04-16 13:01

河南科技大学毕业论文

void iniPWM() { }

void PID() { }

void main() {

P1ASF=0x01; AUXR1=0x00; CCAPM0=0x42; iniCOM(); iniPWM(); EADC=1; PS=0; PADC=1;

17

CCON=0; CL=0; CH=0; CMOD=0x00;

CCAP0H=CCAP0L=0xff; CCAPM0=0x42; PCA_PWM0=0x00; CR=1;

u1=u0+a0*(k2-k1)+a1*k2+a2*(k2-2*k1+k0); u1=(u1<0?0:u1); u1=(u1>=255?255:u1); CCAP0H=u1; u0=u1;

adc_resl[0]&=0x03;

k0=k1;k1=k2;k2=position-adc_res[0]-adc_resl[0]/4.0;

河南科技大学毕业论文

ES=0; EA=1; ADCX(0);

CCAP0H=0;

while(1) {

ADCX(0); PID();

// waitnms(de_time); }

void int_ADC() interrupt 5 { }

void COM_int() interrupt 4 {

if(RI)RI=0; SBUF=adc_res[0]; while(!TI); TI=0; }

§4 .1.2 调试软件的介绍及调试方法

本次使用软件调试运用了labvew程序,首先先来介绍一下这个程序。 简介

18

SBUF=adc_res[0]; while(!TI); TI=0; }

adc_res[0]=ADC_RES; adc_resl[0]=ADC_RESL;

河南科技大学毕业论文

与 C 和BASIC 一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据

LabVIEW标志:

显示及数据存储,等等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种用图标代替文本行创建应用程序的图形化编程语言。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而 LabVIEW 则采用数据流编程方式,程序框图中节点之间的数据流向决定了VI及函数的执行顺序。VI指虚拟仪器,是 LabVIEW 的程序模块。

LabVIEW 提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户界面在 LabVIEW 中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制。这就是图形化源代码,又称G代码。LabVIEW 的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码。 特点:

尽可能采用了通用的硬件,各种仪器的差异主要是软件。

可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。

用户可以根据自己的需要定义和制造各种仪器。 未来:

虚拟仪器研究的另一个问题是各种标准仪器的互连及与计算机的连接。目前使用较多的是IEEE488 或 GPIB协议。未来的仪器也应当是网络化的。

LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW 集成了与满足 GPIB、VXI、RS-232和 RS-485 协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。

19

河南科技大学毕业论文

图形化的程序语言,又称为 “G” 语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。

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

LABVIEW有很多优点,尤其是在某些特殊领域其特点尤其突出。 测试测量:

LABVIEW最初就是为测试测量而设计的,因而测试测量也就是现在LABVIEW最广泛的应用领域。经过多年的发展,LABVIEW在测试测量领域获得了广泛的承认。至今,大多数主流的测试仪器、数据采集设备都拥有专门的LabVIEW驱动程序,使用LabVIEW可以非常便捷的控制这些硬件设备。同时,用户也可以十分方便地找到各种适用于测试测量领域的LabVIEW工具包。这些工具包几乎覆盖了用户所需的所有功能,用户在这些工具包的基础上再开发程序就容易多了。有时甚至于只需简单地调用几个工具包中的函数,就可以组成一个完整的测试测量应用程序。 控制:

控制与测试是两个相关度非常高的领域,从测试领域起家的LabVIEW自然而然地首先拓展至控制领域。LabVIEW拥有专门用于控制领域的模块----LabVIEWDSC。除此之外,工业控制领域常用的设备、数据线等通常也都带有相应的LabVIEW驱动程序。使用LabVIEW可以非常方便的编制各种控制程序。 仿真:

LabVIEW包含了多种多样的数学运算函数,特别适合进行模拟、仿真、原型设计等工作。在设计机电设备之前,可以先在计算机上用LabVIEW搭建仿真原型,验证设计的合理性,找到潜在的问题。在高等教育领域,有时如果使用LabVIEW进行软件模拟,就可以达到同样的效果,使学生不致失去实践的机会。 儿童教育:

由于图形外观漂亮且容易吸引儿童的注意力,同时图形比文本更容易被儿童

20

河南科技大学毕业论文

接受和理解,所以LabVIEW非常受少年儿童的欢迎。对于没有任何计算机知识的儿童而言,可以把LabVIEW理解成是一种特殊的“积木”:把不同的原件搭在一起,就可以实现自己所需的功能。著名的可编程玩具“乐高积木”使用的就是LabVIEW编程语言。儿童经过短暂的指导就可以利用乐高积木提供的积木搭建成各种车辆模型、机器人等,再使用LabVIEW编写控制其运动和行为的程序。除了应用于玩具,LabVIEW还有专门用于中小学生教学使用的版本。 快速开发:

根据笔者参与的一些项目统计,完成一个功能类似的大型应用软件,熟练的LabVIEW程序员所需的开发时间,大概只是熟练的C程序员所需时间的1/5左右。所以,如果项目开发时间紧张,应该优先考虑使用LabVIEW,以缩短开发时间。 跨平台:

如果同一个程序需要运行于多个硬件设备之上,也可以优先考虑使用LabVIEW。LabVIEW具有良好的平台一致性。LabVIEW的代码不需任何修改就可以运行在常见的三大台式机操作系统上:Windows、Mac OS 及 Linux。除此之外,LabVIEW还支持各种实时操作系统和嵌入式设备,比如常见的PDA、FPGA以及运行VxWorks和PharLap系统的RT设备。 调试方法:

调试是通过调节PID的几个控制参数来调节对小球的控制,PID的参数包括KP,KI,KD,分别是比例增益,积分增益,微分增益。从减小偏差的角度出发,我们应该增加KP,但另一方面,KP还影响着系统的稳定性,KP增加通常导致系统稳定性下降,过大的KP往往使系统产生激烈的震荡和不稳定。而在积分控制器中,调节规律是偏差e经过积分控制器的积分作用得到控制器的输出信号u。微分控制器则是针对被调量的变化率来进行调节,而不需要等到被调量已经出现较大的偏差后才开始动作,即微分调节器可以对被调量的变化趋势进行调节,及时出现大的偏差。所以要合理的调节3个参数,使小球悬浮。

21


基于单片机的磁悬浮小球控制系统设计 - 图文(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中小企业业务流程自动化解决方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: