幸运时时彩平台

基于LabVIEW的步进电机控制

2019-11-18来源: elecfans关键字:LabVIEW  步进电机控制  串口

步进电机是一种将电脉冲信号转换成角位移或线位移的机电元件。它在在工业自动化控制、数控机床、机器人等领域有着广泛的应用。在远程实验系统中,经常有需要利用步进电机对一些旋钮、位置等进行自动调节。本文设计了基于虚拟仪器技术的步进电机控制方案。该方案采用虚拟仪器控制步进电机,编程简单,界面友好,易于更改程序功能,控制灵活性得到了提高。

1 步进电机工作原理
步进电机按其力矩产生原理可以分为反应式、永磁式和混合式几种。本文采用的是反应式二相四线步进电机,定子有两个线圈绕组,设其中一个线圈绕组为A相,另一个线圈绕组为B相。当给A相绕组通电时,该绕组即产生磁场,转子齿与A相绕组各齿对齐;当给B相绕组通电时,转子齿将与B相绕组各齿对齐,这样,转子就旋转了一个角度。依次给A相、B相绕组通电,就可以实现步进电机的旋转,改变通电的顺序(即先给B相绕组通电,再给A相绕组通电)就可以改变电机旋转的方向。另外,由于步进电机是由脉冲信号进行控制的,给电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的时间间隔越短,步进电机就转得越快。调整单片机发出的脉冲频率,就可以对步进电机进行调速。

2 步进电机控制硬件电路
2.1 串行接口电路
串行接口电路由RS 232串行接口、MAX232芯片和AT89S51单片机三部分构成。其中,RS 232串行接口用于连接PC的RS 232串行接口,MAX 232芯片用于衔接RS 232串行接口与AT89S51单片机,实现单片机输入/输出的串口信息到PC的串行接口信息的转换,即AT89S51单片机信号的TTL电平到RS 232电平的转换,从而实现二者之间电气特性上的兼容。具体串行接口硬件电路如图1所示。

a.jpg


2.2 驱动电路
步进电机的驱动电路有多种方案,本文采用芯片L298N进行驱动。该芯片是专用驱动集成电路,输出电流大,输出功率强。其输出电流为2 A,最高电流4 A,最高工作电压50 V,可以驱动感性负载,如大功率直流电机、步进电机、电磁阀等,特别是其输入端可以与单片机直接相连,从而很方便地受单片机控制。


采用L298N芯片可以直接控制步进电机,并可以实现电机正转与反转,实现此功能只需改变输入端的逻辑电平。同时,为了避免电机对单片机的干扰,在驱动电路中加入光耦TPL-521,进行光电隔离,从而使系统能稳定可靠的工作。具体驱动电路如图2所示。


3 步进电机控制程序设计
3.1 下位机程序设计
单片机接口程序采用C51语言编写。程序中,定义了数组table1和table2,用来存储脉冲信号对应的数据;并定义了一个控制转向的指针control mode,为该指针赋予不同的值,电机便实现正反转功能。另外,程序中还定义一个速度控制变量mode,通过PC机发送命令字改变速度控制变量的值便可以实现转速的控制。在main函数部分,先调用“串口初始化程序”,再调用“控制命令字判断程序”以实现电机的速度和转向控制。main函数的最后部分将单片机收到的命令字返回给PC机,方便观察者查看通信的情况。下面给出main函数及控制变量的程序段。
b.jpg
c.jpg
3.2 上位机程序设计
单片机PC的通信是通过单片机的串口和PC串口之间的硬件连接实现的。由于LabVIEW软件简洁直观,功能强大灵活,该设计采用LabVIEW编写上位机的控制程序。程序编写涉及VISA,它的实质是一个标准的I/O函数库。这些库函数用于编写仪器的驱动程序,完成计算机与仪器间的命令和数据传输,以实现对仪器的程控。


在LabVIEW里使用VISA,必须安装NI-VISA程序包,安装后,与串口通信相关的VISA函数位于Functions→ALL Functions→Instrurnent I/O→Serial子模板上,其中,VISA配置串口函数用于设定一些参数,并将指定的串口按特定设置初始化;VISA写入函数将“写入缓冲区”的数据写入指定的串口;VISA读取函数从指定的串口中读取指定字节的数据,并将数据返回至“读取缓冲区”;VISA关闭函数关闭指定串口的会话句柄或事件对象。

d.jpg


本文设计的步进电机控制程序采用上述的通信函数结合事件结构进行编写,并通过程序调试,实现了步进电机的转向和转速控制。程序前面板与程序框图分别如图3和图4所示。

4 结语
本文利用图形化编程语言LabVIEW编写程序实现了PC与单片机的串口通信,并结合单片机外围电路对步进电机进行了转速和转向的控制。实验证明采用LabvIEW编写的程序对步进电机进行控制具有人机交互界面友好、编程简单、效率高等特点,并且采用LabVIEW编写的控制程序移植性较强,可以很方便地被其他程序凋用以构成功能更齐全的程序。


关键字:LabVIEW  步进电机控制  串口 编辑:什么鱼 引用地址:http://news.sonata9.com/Test_and_measurement/ic480281.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:基于LabVIEW的水环境因子无线监测系统设计
下一篇:基于NI PXI和LabVIEW缩短RF功率放大器的特征化时间

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

如何将Analog Discovery™USB示波器连接到LabVIEW
步骤1:材料硬件模拟发现:链接软件(链接请参见下一步)WaveForms 2.6.2或更高版本LabVIEW(到目前为止,已经测试了2013和2014版本可以正常工作)LabView运行引擎2103(这是可选的LabVIEW编辑器替代方法,请参见下一步。)注意:安装LabVIEW需要创建一个NI帐户。您的LabVIEW安装和您使用的所有NI软件密钥都将与此帐户绑定。步骤2:安装软件安装WaveForms:链接选择要安装的NI软件选项之一选项2.1:安装LabVIEW安装LabVIEW将选项2.2:安装LabVIEW Run-Time Engine 2103安装运行时引擎将使您能够运行和编辑LabForms项目。在未安装
发表于 2020-01-07
如何将Analog Discovery™USB示波器连接到LabVIEW
基于LabVIEW软件和PXI仪器的能源存储恒电位仪
  挑战:开发一个具有易用软件具有用户友好界面、高精度和高分辨率、多频模式、低电流选项,和电子邮件/文本通知功能的恒电位仪电位/恒流器电流/阻抗分析仪系统(电位系统)  解决方案:基于LabVIEW软件和PXI仪器,使用恒电位仪来确定电池,电容和燃料电池等设备的能源存储,额定功率和内阻。  "使用先进的NI模块化仪器技术,SolRayo ETS可以达到或超过现有商用设备的速度和精度。同时,一个美观的,友好的用户界面大大提高了设备的可用性。"  可再生能源是当今世界上增长最快的市场之一。能源存储技术在风能、太阳能和生物能等“绿色”能量产生源中起着重要的作用。应用于能源存储的公共和个人资金正在暴涨,使大量前所未有
发表于 2019-12-25
基于LabVIEW的虚拟频谱分析仪的设计与实现
O 引言LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种图形化的编程语言,集成了满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能,还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。利用LabVIEW可以方便地建立各种虚拟仪器。频谱分析仪是对无线电信号进行测量的必备手段,是从事电子产品研发、生产、检验的常用工具,应用十分广泛,被称为工程师的射频万用表。传统的频谱分析仪的前端电路是一定带宽内可调谐的接收机,输入信号经变频器变频后由低通滤器输出。滤波输出信号作为垂直分量,频率作为水平分量,在示波器屏幕上绘出坐标
发表于 2019-12-11
基于LabVIEW的虚拟频谱分析仪的设计与实现
基于51单片机的温度采集系统(Labview做上位机)
做该设计的初衷是为自己的毕设打基础,因为我的毕设要做一个探测机器人,需要对某一地区的各种环境参数进行检测,然后通过WIFI返回到上位机。所以为了搞懂温度传感器以及练习上位机的设计,花了几天时间做了一个很简单的采集系统。今天把它拿出来跟各位小伙伴们分享,希望对各位有所帮助,同时也希望大佬们指出不足,起到一个相互学习,相互促进的作用。该系统原理是:51单片机把ds18b20传感器将采集到的温度值(十六进制)通过串口发送到labview,labview对单片机发来的数据做简单的处理然后显示。上位机界面上位机(接受程序)简单的硬件连接数据纪录串口部分:void main()        
发表于 2019-11-30
基于51单片机的温度采集系统(Labview做上位机)
LPC1788的多路数据采集系统下位机+LabVIEW下位机程序
包含程序源码,电路图单片机源程序如下: #include "../LPC177x_8x/LPC177x_8x.h"#include "../LPC177x_8x/type.h"#include "../ADC/adc.h"#define BEEPON            (LPC_GPIO3->CLR = 1ul << 30)                  /* 蜂鸣器工作   &n
发表于 2019-11-26
LPC1788的多路数据采集系统下位机+LabVIEW下位机程序
用LabVIEW FPGA模块实现不同时钟域的数据连续传输
摘要:为了解决基于LabVIEWFPGA模块的DMAFIFO深度设定不当带来的数据不连续问题,结合LabVIEWFPGA的编程特点和DMA FIFO的工作原理,提出了一种设定FIFO深度的方法。对FIFO不同深度的实验表明,采用该方法设定的FIFO深度能够比较好地满足系统对数据连续传输的要求。研究结果对深入展开研究和工程设计具有一定的指导意义。0 引言20世纪80年代中期,NI公司推出了一种图形化的编程语言LabVIEW,并于2003年推出FPGA模块。该模块用于对NI公司RIO设备中的FPGA进行编译,使得工程师无需了解VHDL或其他底层硬件设计工具,就可以使用FPGA技术进行系统的设计。本文使用LabVIEW FPGA
发表于 2019-11-25
用LabVIEW FPGA模块实现不同时钟域的数据连续传输
小广播
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 sonata9.com, Inc. All rights reserved
500万彩票手机app下载 博乐彩票 大发时时彩 500彩票网 吉林快3 极速3D彩票 内蒙古快3计划 小米彩票开户 疯狂斗牛 幸运时时彩