历史上的今天

今天是:2024年11月18日(星期一)

2019年11月18日 | 基于LabVIEW的步进电机控制

发布者:楼高峰 来源: 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  步进电机控制  串口 引用地址:基于LabVIEW的步进电机控制

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

推荐阅读

2018年双十一购物狂欢节尽管已经收官,但商品的配送仍然热火朝天,为了让剁手党们尽早拿到快递,快递员真的很辛苦,“双十一派件高峰,小哥熬夜抢快递柜”,“快递员三天两夜睡了不到8小时的觉”,这一类的新闻层出不穷。 最后一公里的快递配送难题如何解决,是各大物流最大痛点。人口红利消失,人力成本飙升的当下,单纯的靠招聘快递员已经不能满足配...
氧分析仪原理 常用的氧分析仪主要有热磁式和氧化锆式两种。氧分析仪、露点仪、氢分析仪、红外线分析仪、报警仪、焦炉煤气氧分析仪、水泥窑气体分析仪、电石炉尾气分析仪、高炉喷煤系统、半水煤气分析仪。(1)热磁式氧分析仪  其原理是利用烟气组分中氧气的磁化率特别高这一物理特性来测定烟气中含氧量。氧气为顺磁性气体(气体能被磁场所吸引的称为顺磁...
是德科技公司(NYSE:KEYS)日前宣布,通过分销渠道和直销渠道同步推出新型 Infiniium EXR系列8 通道示波器。是德科技是一家领先的技术公司,致力于帮助企业、服务提供商和政府客户加速创新,创造一个安全互联的世界。 新型 Infiniium EXR 系列示波器不但功能强大、直观易用,而且其总体拥有成本也颇具优势,性能更是可以与 Keysight Infiniium MXR 示...
特斯拉已经开始在超级充电站部署星链天线,旨在充电时为特斯拉车主提供互联网服务。不可否认,特斯拉的超级充电网络提供了非常不错的充电体验。虽然其他公司的充电站网络也正在迎头赶上,努力缩小差距,但特斯拉在充电网络上的早期投资已经初见成效。尽管充电站都在努力提高效率让充电时间更短,但特斯拉车主在充电站充电30分以上的情况仍然比较常见。通常...

史海拾趣

问答坊 | AI 解惑

如何学好电子技术-致初学者

学习电子技术是一个循序渐进的过程,我个人认为应该分五步来走: 第一步,培养兴趣。受家庭影响,我从小就对电子技术产生了浓厚兴趣,整天把一些电池、导线、小灯泡连来连去,为搞清楚收音机里为何能发出人说话唱歌的声音,拆坏了家里唯一的半 ...…

查看全部问答∨

视频监控传输技术方案的选择

视频监控传输技术方案的选择 自从上世纪八十年代末期以来,视频监控技术得到越来越广泛的应用,随着系统应用的不断推广,相应的有关技术也处于不断的淘汰更新的过程之中。在视频监控系统的初期,人们利用同轴电缆进行视频信号的传输,在监控中心采 ...…

查看全部问答∨

zigbee开发工具

ZigBee网络 ZigBee2007/PRO开发系统:http://www.wxlmcu.com/Pro/Read.aspx?id=35 ZigBee网络专业开发系统:http://www.wxlmcu.com/Pro/Read.aspx?id=3 ZigBee网络教学系统:http://www.wxlmcu.com/Pro/Read.aspx?id=6 ZigBee网络经济开发 ...…

查看全部问答∨

关于锁相环问题

请问各位大侠,什么产品会用到锁相环电路的设计呢?哪一种产品对这项技术的要求比较高呢?…

查看全部问答∨

驱动开发

如何向一个寄存器的某一位写值呢? 我在开发一个led的驱动,用2440的cpu,将这个led接在一个gpio口上,用寄存器的某一位控制led的关灭,但是没成功,希望哪位大侠能给我提点建议,小弟万分感谢!…

查看全部问答∨

关于rip2 查询的问题, 我发送了查询消息,怎么没有应答啊, 代码如下

#include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> #include <netinet/in.h> #include <sys/socket.h> #include <arpa/inet.h> #include <unistd.h> #include <errno ...…

查看全部问答∨

pc中的文件如何直接导入移动终端

我想做个程序,使生成的文件可以直接导入wince的指定目录下。请问怎么实现?因为我在pc上,得不到移动设备路径。只要得到路径就行。谢谢…

查看全部问答∨

关于开关电源

我要做的是一个开关稳压电源。。。市电经过变压器(220转18V)后经过整流滤波后再经过DC-DC变换。。变为30-36可调的输出电压。。。大家帮忙看下。。我的设计电路图出来的电压值达不到30V。。。请问这个是什么原因?是不是UC3843出来的PWM有问题。。 ...…

查看全部问答∨

有一张图我想把它变成uc/gui中所支持的数据

用的RTT + uc/GUI 图片的格式要求如下 GUI_CONST_STORAGE GUI_BITMAP picture = { 128, /* XSize */ 128, /* YSize */ 256, /* BytesPerLine */ 16, /* BitsPerPixel */ (unsigned char *)acItem_test, /* Pointer to picture data */ ...…

查看全部问答∨

来看看TI M4的高价评估板!!

EKC-LM4F232 - EKC-LM4F232 Evaluation Kit with CodeSourcery Tools价格还是很不给力的,$149.00 有感兴趣的朋友请关注TI官网 http://www.ti.com/tool/ek-lm4f232?DCMP=cortexm4f&HQS=ek-lm4f232…

查看全部问答∨
小广播
最新测试测量文章

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved