ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:891.54KB ,
资源ID:4318749      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4318749.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于LabVIEW的直流电机测控系统设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于LabVIEW的直流电机测控系统设计.docx

1、基于LabVIEW的直流电机测控系统设计学号:8b岳址农林科扶大芋 机械与电子工程学院CoIigcg cl Mechanical and Elacironic Engineering9 NORTHWEST A&F UNIVERSITY虚拟仪器技术课程大作业基于LabVIEW的直流电机测控系统设计专业班级: 学生姓名: 指导教师: 完成日期: 成 绩: 1设计要求、内容 21.1要求 21.2内容 21.2.1LabVIEW 与单片机串口通信硬件 /程序设计 21.2.2电机驱动模块 /调速程序设计 61.2.3电机测速模块 /测速程序设计 81.2.4总硬件 / 程序的设计 111.3 设计环

2、境: 142设计过程 142.1设计思路 142.1.1硬件系统方案设计 142.1.2软件系统设计 142.2程序设计流程 152.3设计好的程序框图及前面板 163任务总结与展望 174个人收获 17附:个人信息 171设计要求、内容1.1要求1 理解虚拟仪器技术课程中所学的理论知识,掌握相关的设计方法和 技能,能够读懂一些不太难的程序,能够独立的设计一些不太复杂的程序;2能熟练运用LabVIEW 进行编程操作,并且能够自主的通过即时帮助通 过程序的编写明白一些未知控件的作用;3通过学习,掌握基于 LabVIEW的电机测控系统的具体设计过程,完成 设计;4 认真总结,完成计报告1.2内容1

3、.2.1 LabVIEW 与单片机串口通信硬件/程序设计单片机作为下位机核心器件,负责数据的采集和通信及电机转速的控制, 而上位机通常以基于图形界面的 Windows系统为操作平台。核心是数据通信,它 包括单片机和上位机之间的通信,而单片机和上位机之间数据通信则是整个系统 的基础。单片机和PC的通信是通过单片机的串口和 PC串口之间的硬件连接实现的。图1.1 PC与单片机串口通信线路数据通信的硬件上采用3线制,将单片机和PC串口的3个引脚(RXD、TXD、 GND)分别连在一起,即将PC和单片机的发送数据线TXD与接收数据RXD交 叉连接,两者的地线GND直接相连,而其他信号线,如握手信号线均

4、不用,采 用软件握手的方式,这样既可以实现预定的任务又可以简化电路设计。利用Keil C51和LabVIEW编写程序实现PC与单片机串口通信。C51程序:#in clude/*主程序*/void mai n(void)SCON=0x50; /*SCON:模式 1,8-bitUART,使能接收 */TMOD=0x20; /*TMOD:timer1,mode2, 8-bit reload*/TH仁 OxFD; /*TH1:reload value for 9600 baud 11.0592MHz */ TL1=0XFD;TR1=1; /*TR1:timer1 ru n*/EA=1; /*打开总中断

5、*/ES=1; /*打开串口中断*/图1.2发送程序图1.3接收程序图1.4判断通信状态程序为英璃 I tAlBX ! J+rTd. J图1.5 LabVIEW 前面板1 设计任务一PC通过串行口将数字(00, 01, 02, 03., FF,十六进制)发送给单片机, 单片机收到后回传这个数字,PC接收到回传数据后显示出来,若发送的数据和 接收到的数据相等,贝U串行通信正确,否则有错误。启始符是数字 00,结束符是数字FF。2 设计任务二(1)测试通信状态。先在文本框中输入字符串FF”,单击 测试”按钮,将字符串FF”发送到单片 机,若PC与单片机通信正常,在LabVIEW程序前面板显示字符串

6、“0K”,否则 显示字符串通信异常”。图1.7 LabVIEW与单片机串口通信测试(2)控制指示灯。将单片机接收到的数值赋给 P0 口,P0 口接一排LED,观察LED的显示结 果(表示该数值的二进制显示)是否与输入值相符合。图1.8输入“FF”图1.9输入“ 01”单片机和LabVIEW通信,在程序设计上涉及两个部分的内容。一是单片机的C51程序,二是LabVIEW的串口通信程序和界面的编制1.2.2电机驱动模块/调速程序设计图1.10 LS298N驱动模块设置IN1和IN2,确定电机的转动方向,然后对使能端输出 PWM脉冲,实现电机调速。当使能信号为0,电机处于自由停止状态;当使能信号为1

7、,且IN1 和IN2为00或11时,电机处于制动状态,阻止电机转动。C51程序:#in cludesbit IN仁 P1A0;sbit IN2=P1A1;sbit ENA=P“2;/x毫秒延时void delay (un sig ned int x)un sig ned int i,j;for(i=x;i0;i-)for(j=110;j0;j-);y微秒延时void delay_us( un sig ned int y)while(y_);/主函数void mai n()while(1)unsigned int i,cycle=1300,T=2048;/*IN1=1;IN2=0;for(i=0

8、;i200;i+)/反转PWM 脉冲delay(10);ENA=ENA; /PWM 占 空 比 为 50% , 修 改 延 时 调 整*/IN1=0;IN2=1; for(i=0;i200;i+) delay(10);ENA=ENA;/正转IN1=0;IN2=1;while(cycle1300)ENA=1;delay_us(cycle-);ENA=0;delay_us(T-cycle);123电机测速模块/测速程序设计图1.11光电耦合测速传感器模块1模块槽中无遮挡时,接收管导通,模块 DO输出低电平,遮挡时,DO输 出高电平;2、DO输出接口可以与单片机10 口直接相连,检测传感器是否有遮档

9、, 如用电机码盘则可检测电机的转速。设计选用的测速码盘有20格光栅,因此速度计算公式为:Speed=(count/20)*60 (转/分)图1.12电机测速调试1图1.13电机测速调试2C51 程序:#includesbit IN仁 P1A0;sbit IN2=P1A1;sbit ENA=P1A2;unsigned int i=0,pul=0,count=0,Speed=0;unsigned int cycle=2000,T=7000;/x 毫秒延时void delay(unsigned int x)unsigned int i,j;for(i=x;i0;i-) for(j=110;j0;j-

10、);y微秒延时void delay_us(unsigned int y)while(y-);void main()TMOD=0x15; / 打开定时器 T1 和计数器 T0,TMOD 为00010101,都为模式 1 因此矩形脉冲输入端接 P3.4EA=1;TH0=0x00;TL0=0x00;ET0=1;ET1=1;TH1=0x3C; /50ms 0x3CB0=15536TL1=0xB0;TR0=1;TR1=1;while(1) IN1=0; /自动加速正转IN2=1;while(cycle2000) /自动减速ENA=1; delay_us(cycle-);ENA=0;delay_us(T-

11、cycle);/ 定时器中断时间到 ,就读取计数器值timer3() interrupt 3TH1=0X3C;TL1=0XB0;i+;if(i20) /累计1s内的脉冲数pul=TH0; /计数器计入脉冲,每来一个矩形脉冲计数值加 1pul=pul8; /得高八位后,左移 8位,pul=pul+TL0; / 再加上低八位count+=pul;pul=0;TH0=0; /计数器速度获取后清零,进行下次获取TL0=0;if(i=20) /每秒更新一次速度pul=TH0; /计数器计入脉冲,每来一个矩形脉冲计数值加 1 pul=pul8;pul=pul+TL0; count+=pul;Speed=(

12、count/20)*60; /测得的速度(转 /分) i=0;count=0;THO=O;TLO=O;PO=Speed;计数器速度获取后清零,进行下次获取观察速度值124总硬件/程序的设计图1.14直流电机测控系统硬件原理框图图1.15总硬件设计C51总程序:#in clude#in clude #in clude #in clude #in clude sbit IN仁 P1A0;sbit IN2=P1A1;sbit ENA=P1A2;un sig ned int i=0,pul=0,co un t=O,Speed=O,Speed_dec=O;un sig ned int cycle=200

13、0,T=7000;/x毫秒延时void delay (un sig ned int x)unsigned int i,j;for(i=x;i0;i-) for(j=110;j0;j-);y微秒延时void delay_us(unsigned int y) while(y-);/* 主程序 */void main(void)SCON=0x50; /*SCON: 模式 1,8-bitUART, 使能接收 */TMOD=0x25; /*TMOD:timer1,mode2, 8-bit reload T0 计数,模式 入端接 P3.4*/,因此矩形脉冲输TH1=0xFD;/*TH1:reload va

14、lue for 9600 baudTL1=0XFD;TH0=0x00;TL0=0x00;TR1=1;/*TR1:timer1 run*/EA=1;/* 打开总中断 */ES=1;/* 打开串口中断 */TR0=1;TR1=1;/*TR1:timer1 run*/while(1)/主循环11.0592MHz */if(Speed_dec=Speed)IN1=0;IN2=0;/停转 if(Speed_decSpeed)IN1=0;/自动加速正转IN2=1; while(cycle!=T) ENA=1; delay_us(cycle+);ENA=0;delay_us(T-cycle);if(Spee

15、d_dec=0x30&Temp1=0x41&Temp1=0x46) ch1=Temp1-0x37;else ch1=0xff;pul=TH0; pul=pul8;/ 计数器计入脉冲,每来一个矩形脉冲计数值加 1pul=pul+TL0; count+=pul;Speed=(count/20)*60; /测得的速度(转 /分) i=0;count=0; TH0=0; / 计数器速度获取后清零,进行下次获取TL0=0;SBUF=Speed; / 把速度值再发回电脑端if(TI) / 如果是发送标志位,清零TI=0;1.3 设计环境:硬件环境:单片机、直流电机及驱动模块、串口。软件环境: LabVIE

16、W 编程软件、 Keil 编程软件、串口调试助手。2 设计过程2.1 设计思路2.1.1硬件系统方案设计本系统主要实现对直流电机进行测速和调速。(1) 调速控制由 LabVIEW 编程产生电机所需要控制的转速值, 将该速度值通过串口送入 单片机, 与测得的速度值进行比较,若送入值大于测量值则单片机控制直流电 机加速,若送入值小于测量值则单片机控制直流电机减速。(2) 测速控制 将电机上的测速码盘安装在光电耦合器的发射端和接收端之间, 当测速码盘 转动时,光栅阻挡光耦发射出的光信号, 在光耦接收端得到一段连续的脉冲波形, 该脉冲波形经过斯密特触发器进行整形后, 得到一形状规则的脉冲波形。 整形后

17、 的脉冲波形输出至单片机计数器端,用 C51 程序算出速度值后传回计算机 ( LabVIEW )并显示。2.1.2软件系统设计LabVIEW 程序,主要包括用户界面设计(前面板的设计)和框图程序设计两部分。(1) 用户界面设计用户界面(前面板)是虚拟仪器的重要组成部分,仪器参数的设置、测试结 果显示等功能都是通过软件实现,因此要求软件界面简单直接,便于使用。用户可根据 需要设置转速参数,并将测量结果数据显示出来。(2) 框图程序设计系统框图程序大体分为三个模块:通信模块和仪器 功能模块。通信模块模块中 包括对设定速度值的发送和对测量速度的接收;仪器功能模块主要实现参数设置 和测量结果显示。C5

18、1单片机程序设计,主要包括控制电机加速、减速,输入速度和测量速度, 比较以及串口通信程序。因为测速码盘有20片光栅,所以应将1s内计数值除以20再乘以60才得 到风扇转速(转/分)。2.2程序设计流程图2.1程序设计流程图2.3设计好的程序框图及前面板程序框图:图2.5用户界面3任务总结与展望电机测控在工业控制系统中占据非常重要的地位, 传统的电机测控,主要采用指针式仪表,通过人工读数、记录、整理统计数据、绘制曲线和编写文档等, 测控速度慢、数据不准确、数据处理和分析复杂,很难适应现代化发展的要求。 电机测控系统一般分为两大部分,即数据采集与控制部分和人机界面部分,目前 的自动控制系统常采用单

19、片机控制、工业 PC机控制、PLC控制等多种方案,利用虚拟仪器技术开发和设计了一个新型电机调速测速系统,该系统采用普通 PC机为主机,利用图形化可视测试软件 LabVIEW为软件开发平台,来测控电 机运行速度状态,采集数据并进行处理、存储、显示。设备成本低,使用方便灵 活。本次设计还有很多不足之处,比如电机调速范围只有 10-80转/分,在今后的实践中我会同我的组员一起改进,做得更好。4个人收获在本次设计中真正感受到了 LabVIEW使用图形化编程语言G在流程图中 创建源程序,这种编程方式强调信号处理的实际过程, 编程简单,调试方便的特 点。用LabVIEW大大提高了我们在本次实验中的工作效率。在这次设计中学习了很多,比如单片机的串口通信, LabVIEW串口通信,电机测速等,都是以前没研究过的,在这个过程中学习了很多单片机和 LabVIEW 的知识,同时发现并解决了很多问题,让我们受益匪浅。也意识到了设计一个系 统需要有严谨的态度,不能马虎。附:个人信息姓名学号联系方式QQE-mail

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1