LabVIEW控制步进电机自动升降速
基于LabVIEW的步进电机控制
基于LabVIEW的步进电机控制时间:2012-06-08 11:58:30 来源:现代电子技术作者:庄瑞荣,吴先球摘要:为了实现PC机对步进电机的自动调节,设计了基于虚拟仪器技术的步进电机控制方案。
系统采用L298N芯片进行驱动,以LabVIEW作为开发平台,并通过串口实现数据通信。
结果显示,该系统能够很方便地实现步进电机的转速转向控制,而且利用虚拟仪器开发平台LabVIEW编写上位机程序,具有编程简单,控制界面友好,程序可移植性强的特点。
关键词:步进电机;串口;LabVIEW;VISA步进电机是一种将电脉冲信号转换成角位移或线位移的机电元件。
它在在工业自动化控制、数控机床、机器人等领域有着广泛的应用。
在远程实验系统中,经常有需要利用步进电机对一些旋钮、位置等进行自动调节。
本文设计了基于虚拟仪器技术的步进电机控制方案。
该方案采用虚拟仪器控制步进电机,编程简单,界面友好,易于更改程序功能,控制灵活性得到了提高。
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电平的转换,从而实现二者之间电气特性上的兼容。
LabVIEW的步进电机控制系统设计
LabVIEW的步进电机控制系统设计作者:谭伟超来源:《电子技术与软件工程》2016年第15期摘要在步进电机控制系统中,最常见的方法是用PLC或单片机实现步进电机控制,都是非常成熟的技术,但是电路复杂不稳定,而且编程比较复杂。
本文步进电机控制系统采用LabVIEW作为开发环境,LabVIEW是一款图形化编程语言软件,编写步进电机控制程序则更加简单,提供了丰富的数据采集和库函数,调试方便等诸多优点,相对比传统的VB或者VC 语言更具有优势。
本文将虚拟仪器应用于步进电机的速度控制和转动方向控制,对步进电机的应用控制领域具有重大的意义。
【关键词】LabVIEW 步进电机控制系统1 硬件系统设计以及工作原理步进电机是将电脉冲信号转换为角位移的机电设备,通过改变脉冲频率来实现能够快速启动、反转和制动的执行元件,因此一般步进电机控制系统是指PLC或者单片机产生来脉冲电路,然后产生与转速相对应的步进脉冲,分配给步进电机的各相绕组,以实现步进电机的控制。
一般来讲,脉冲一般由微机或者一些辅助电路来产生步进电机的启动信号。
所以,本文的设计方案是使用LabVIEW完成产生频率可调的脉冲信号和布尔信号的程序,经过硬件连接,通过DAQ板卡将脉冲信号输送至驱动器,分别连接至步进电机的各个输入端,即可实现对步进电机的控制,如图1所示。
故本次设计选用的板卡为PXI-7833R,PXI-7833R多功能RIO模块提供的可编程FPGA芯片,用户根据 LabVIEW中的FPGA模块实现模拟和数字功能信号的输入、输出和PWM信号的输出。
接口部分采用PXI-7833加上相应的软件对输入的脉冲信号进行写操作,将信号加到步进电机驱动器上,实现对步进电机的控制。
2 系统软件设计LabVIEW的编程环境分为前面板和程序框图。
前面板,是图形化的人机界面,通过操作前面板可以控制调试程序。
图2是后面板,表示前面板各个控件之间的逻辑关系。
2.1 “连续运行”VI的编程根据步进电机工作原理,该控制系统应该实现连续运转运行和角度运转,所以程序用case 结构用来选择不同的运行状态。
使用LabVIEW进行电机控制实现电机的速度和位置控制
使用LabVIEW进行电机控制实现电机的速度和位置控制LabVIEW是一种功能强大的图形化编程环境,被广泛应用于各种工程领域中,包括电机控制。
本文将介绍如何使用LabVIEW进行电机控制,实现对电机的速度和位置控制。
一、LabVIEW概述LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是由美国国家仪器(National Instruments)公司开发的一款图形化编程环境。
其特点是可视化、易学易用,拥有许多强大的图形化编程工具和函数库,可以帮助工程师和科学家快速进行系统设计、数据采集、信号处理等工作。
二、LabVIEW中的电机控制1.速度控制要实现电机的速度控制,首先需要连接一个编码器或旋转传感器来获取电机的转速信息。
在LabVIEW中,可以使用DAQmx函数库中的函数来获取传感器的信号,并通过PID控制算法实现精准的速度控制。
在LabVIEW中创建一个新的VI(Virtual Instrument),然后从函数面板中选择相应的DAQmx函数,如"DAQmx Create Channel"来创建用于接收编码器信号的虚拟通道。
接着,可以使用"DAQmx Read"函数获取传感器的转速信号。
最后,通过编写PID控制算法,使用"PID.vi"函数来实现电机的速度控制。
2.位置控制要实现电机的位置控制,需要连接一个位置传感器,如光电编码器或磁编码器,并通过反馈控制算法实时检测电机的位置,并根据设定值进行控制。
在LabVIEW中,可以使用Encoder和PID函数库来实现电机的位置控制。
在LabVIEW中创建一个新的VI,然后在函数面板中选择Encoder 函数库中的函数,如"Initialize Encoders"来初始化编码器。
接着,使用"Read Encoder"函数实时读取电机的位置信息,并通过PID控制算法计算出控制信号。
基于labview的PWM电机调速
基于labview的PWM电机调速一、简介:此设计模拟工业控制现场,通过调节Labview界面中的模拟仪表,通过RS232串口通信,把转速控制信息通过串口传送到单片机中,进而利用单片机控制电动机的转速。
二、Labview前面板设计:1.左部分为通讯端口、波特率、数据位、奇偶校验位、停止位、延时等选择端口。
2.中间为所调电压的PWM波形,图中蓝绿色所示。
3.右部分显示的是等效电压的大小,图中所示为2.35V。
4.下半部分为调节电压的仪表和确定按钮,当调节好电压,按下确定键后方能调节电机转速。
三、Labview程序框图:1.串口通讯部分:2.PWM电压波形显示部分:四、硬件设计:单片机IO端口的电流太小,不足以驱动直流电机;本设计通过I0端口外接ULN2003AN驱动直流电动机。
五、单片机部分程序:/*********************************************关于频率和占空比的确定,对于12M晶振,假定PWM输出频率为1KHZ,这样定时中断次数**设定为C=10,即0.01MS中断一次,则TH0=FF,TL0=F6;由于设定中断时间为0.01ms,这样**可以设定占空比可从1-100变化。
即0.01ms*100=1ms********************************************************************* *********/#include<reg52.h> //52单片机头文件#include <intrins.h> //包含有左右循环移位子函数的库#define uint unsigned int //宏定义#define uchar unsigned char //宏定义#define V_TH0 0XFF#define V_TL0 0XF6uchar ZKB1;sbit P1_2=P1^2;void init_sys(void); /*系统初始化函数*/void main() //主函数{init_sys();while(1){/*对占空比值限定范围*/if (ZKB1>99) ZKB1=1;if (ZKB1<1) ZKB1=99;}}void timer0(void) interrupt 1 using 2{static uchar click=0; /*中断次数计数器变量*/TH0=V_TH0; /*恢复定时器初始值*/TL0=V_TL0;++click;if (click>=100) click=0;if (click<=ZKB1) /*当小于占空比值时输出低电平,高于时是高电平,从而实现占空比的调整*/P1_2=1;elseP1_2=0;}void ser() interrupt 4{RI=0;ZKB1=SBUF;}/*系统初始化函数*/void init_sys(){ZKB1=40;TMOD=0x21;//设置定时器0工作方式1,定时器1为工作方式2 TH0=V_TH0; //定时0.01sTL0=V_TL0;TH1=0xF3; //波特率2400TL1=0xF3;REN=1; //允许串口接收数据SM0=0;//串口工作方式1,8位数据传送SM1=1;EA=1;//开总中断ES=1; //串口中断开PS=1; //串口中断优先级最高ET0=1;//开定时器0中断TR1=1; //开波特率TR0=1;//启动定时器0}。
利用LabVIEW进行电机控制与调试
利用LabVIEW进行电机控制与调试LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一款基于图形化编程语言的开发环境,广泛应用于科学与工程领域的数据采集、分析、控制以及调试等方面。
本文介绍如何利用LabVIEW进行电机控制与调试,包括步进电机和直流电机的控制方法以及相关调试技巧。
一、步进电机控制步进电机是一种离散控制的电机,通过对电机驱动成组的正向或反向脉冲信号,实现旋转角度的精确控制。
LabVIEW提供了丰富的工具和函数来实现步进电机的控制。
首先,在LabVIEW中创建一个新的VI(Virtual Instrument)文件。
在Block Diagram中选择一个While Loop,并在循环内部添加若干个控制步进电机运动的代码。
例如,可以通过控制单个IO口的高低电平来实现脉冲信号的输出。
使用LabVIEW中的Digital Output模块,将其配置为输出模式,并将其与步进电机驱动器的脉冲接口连接。
然后,在每次循环迭代中,将该IO口的电平设置为高电平,然后延时适当时间,再将其设置为低电平,即可输出一个脉冲信号。
此外,还可以通过使用计数器或定时器模块来生成脉冲信号。
LabVIEW中的Counter和Timer模块可以方便地设置计数器的初值、计数范围以及计数速率。
通过适当的配置和调试,可以实现步进电机的精确控制。
二、直流电机控制直流电机是一种常见的电动机类型,广泛应用于各种机械设备中。
LabVIEW也提供了多种方法来实现直流电机的控制。
首先,在LabVIEW中创建一个新的VI文件。
使用LabVIEW中的Analog Output模块来生成电机驱动信号。
将Analog Output模块与直流电机驱动器的控制端口连接,通过调整模块输出的电压值,可以实现对直流电机的转速和方向的控制。
LabVIEW还提供了PID控制器模块,可用于进一步优化直流电机的控制效果。
基于LabVIEW的步进电机控制
基于LabVIEW的步进电机控制作者:庄瑞荣吴先球来源:《现代电子技术》2012年第04期摘要:为了实现PC机对步进电机的自动调节,设计了基于虚拟仪器技术的步进电机控制方案。
系统采用L298N芯片进行驱动,以LabVIEW作为开发平台,并通过串口实现数据通信。
结果显示,该系统能够很方便地实现步进电机的转速转向控制,而且利用虚拟仪器开发平台LabVIEW编写上位机程序,具有编程简单,控制界面友好,程序可移植性强的特点。
关键词:步进电机;串口; LabVIEW; VISA中图分类号:TN91134文献标识码:A文章编号:1004373X(2012)04020203LabVIEW based control of stepping motorsZHUANG Rui rong, WU Xian qiu(Institute of Physics and Telecommunication Engineering, South China Normal University, Guangzhou 510006, China)Abstract: In order to control the stepping motor automatically, a LabVIEW based control system for stepping motors was designed. L298N chip is adopted in the system to drive the stepping motors. The data communication between LabVIEW and the microcontroller is executed via serial port. The software and hardware of the system are presented. The experimental results show that this system has a convenient operational interface, and is easy to realize the control of rotate speed and direction.Keywords: stepping motor; serial port; LabVIEW; VISA收稿日期:20110911基金项目:国家自然科学基金资助项目(10575039)步进电机是一种将电脉冲信号转换成角位移或线位移的机电元件。
基于LabVIEW的步进电机控制系统设计
目录摘要 (II)Abstract ....................................................................................................... I II 目录.. (I)第1章绪论 (1)1.1课题研究的意义及现状 (1)1.2论文主要研究内容 (3)第2章步进电机控制系统总体方案设计 (4)2.1步进电机控制系统的方案选择 (4)2.2步进电机控制系统的开发软件选择 (6)第3章步进电机控制系统硬件的设计 (9)3.1概述 (9)3.2硬件的选择 (9)3.3硬件连线 (23)第4章步进电机控制系统软件的设计 (24)4.1软件编程环境的建立 (24)4.2“连续运行”VI的编程 (25)4.3“指定角度运行”VI的编程 (26)4.4主程序的编程 (27)4.5前面板的设计 (32)第5章实验 (34)5.1接线 (34)5.2软件调试 (36)5.3调试过程的总结 (37)结论 (38)参考文献 (39)致谢 (41)附件1 (42)附件2 (51)摘要步进电机作为执行机构,是机电一体化的关键产品之一。
步进电机突出的优点是它可以在宽广的频率范围内,通过改变脉冲频率来实现调速,快速起停、正反转控制等,并且由其组成的开环系统既简单、廉价,又非常可靠,广泛地应用在各种计算机控制的自动系统中。
随着微电子和计算机技术的发展,步进电机的需求和应用量与日俱增。
本文研究了步进电机的工作原理,对步进电机控制系统进行了整体方案的设计、硬件的选择及接线;在学习了LabVIEW的基础上,研究了LabVIEW FPGA模块的编程和应用;对PXI-7833R板卡进行了全面的学习,研究了如何使用LabVIEW对FPGA板卡进行编程;通过LabVIEW完成产生频率可调的脉冲信号和布尔信号的程序,经编译后下载到PXI-7833R板卡,以实现步进电机控制脉冲及方向信号的生成;完成了步进电机控制系统的软件设计,包括前面板设计、连续运转和指定角度运转程序以及步进电机启动和停止过程的加减速程序。
基于LabVIEW的步进电机状态控制
随着机电在工业、农业等领域的广泛应用,步进机电也越来越到多地运用到众多领域。
步进机电是一种将电脉冲信号转换为角位移的机电元件,与其它类型机电相比具有易于精确控制、无积累误差等优点, 它可以在宽广的频率范围内通过改变脉冲频率来实现调速,快速起停、正反转控制等. 步进电动机必须和驱动控制器配合使用,而不能直接接到交直流电源上工作, 步进机电的控制以数字I/O接口卡作为硬件基础,采用软件程序来实现步进机电的同步精确运动控制。
这种控制方法的关键是软件程序,软件程序的好坏将决定是否能实现步进机电的控制。
本设计采用PC机控制,通过PXI总线与步进机电相连, PC 上的操作界面采用LabVIEW 编写,文中简要概述虚拟仪器技术LabVIEW软件的特点,通过运用LabVIEW 图形编程语言设计步进机电的简单控制系统,介绍虚拟仪器编程的普通过程和方法。
这种用LabVIEW设计的系统具有控制灵便、人机交互性强、界面友好、操作方便等特点。
本系统的设计为虚拟仪器的设计寻觅了一种普遍的方法。
步进机电, LabVIEW,PXI总线步进机电又称为脉冲电动机或者阶跃电动机,它是基于最基本的电磁感应作用,将电脉冲信号转变为角位移或者线位移的开环控制元件。
单片机控制的步进机电广泛地应用于工业自动控制、数控机床、组合机床、机器人、计算机外围设备、照相机,大型望远镜,卫星天线定位系统等等。
随着经济的发展,技术的进步和电子技术的发展,步进机电的应用领域更加广阔,同时也对步进机电的运行性能提出了更高的要求。
传统的步进机电控制系统用PLC或者单片机来控制步进机电,不仅电路复杂,控制精度不高,硬件连接后不易调整、灵便性差,不能实时地满足用户对控制系统的要求。
而且编程也比较难,非专业技术人员不易掌握。
因此,传统的步进机电系统具有很大的局限性,已经不能满足时代发展的需求。
现在的步进机电系统多数选用LabVIEW软件对步进机电进行控制。
LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一种图形化的编程语言的开辟环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。
LabVIEW程序控制步进电机说明
4 仿真实验步进电机的控制步进电机运行系统的连线对于步进电机的控制程序主要在于编程控制轴的转动(PLS+/PLS-)和轴的正反向转动(DIR+/DIR-),在这里我们对于步进电机驱动器的连接方法采用共阳极接法,如图。
图共阳极接法PLS+和DIR+要共同连接在数据采集卡的+5V接口上,PLS-和DIR-分别连接数据采集卡的随意两个通道,在这里我们选择了和这两个通道。
本次试验我们使用的步进电机的型号是YH57BYGH56-401A,它的步距角是°,相电流为。
这个步进电机有四条接线,需要分别连接步进电机驱动器的A+/A-、B+/B-的端口,需要步进电机的阴阳极分别接入驱动器的阴阳极端口。
对于分辨接线接入驱动器是否正确,我们可以将其中两根线的金属外部用手捏在一起,转动步进电机的轴,如果很难转动那么说明这两根线可以接入A+/A-或B+/B-的接口中,如果顺利转动则需换线继续尝试知道难以转动。
驱动器需要接入电源运行,+V接入+25V,GND接地,如图。
这个部分具体的运行过程就是电脑控制程序给数据采集卡一个连续脉冲信号,由采集卡传递到驱动器的DIR端口,再通过DIR-来输出到步进电机,从而导致步进电机轴的转动。
图步进电机驱动器端口当驱动器的灯是红色时说明出现故障需要及时排查,电机轴失去自锁力。
绿灯亮起则可以正常工作。
步进电机驱动器的设置驱动器的设置主要是通过驱动器右侧8个上下拨动开关键来控制,SW1、SW2、SW3控制电流大小,SW4控制选择静态半流(OFF)或静态全流(ON),剩下的SW5到SW6是决定驱动器的细分程度,如图。
图驱动器的细分细分是控制精度的标志,通过增大细分能改善精度。
细分能增加电机平稳性,通常步进电机都有低频振动的特点,通过加大细分可以改善,使电机运行非常平稳。
细分驱动模式具有低速振动极小和定位精度高两大优点。
对于有时需要低速运行(即电机转轴有时工作在60rpm以下)或定位精度要求小于度的步进应用中,细分驱动器获得广泛应用。
LabVIEW的步进电机控制方法研究
第19卷第2期2008年6月中国计量学院学报Journal of China Jiliang UniversityVol.19No.2J un.2008 【文章编号】 100421540(2008)022*******【收稿日期】 2008203213【作者简介】 洪 涛(1970),男,陕西安康人,高级工程师.主要研究方向为机器视觉与质量检测.LabVIEW 的步进电机控制方法研究洪 涛1,严 滔2(1.中国计量学院质量与安全工程学院,浙江杭州310018;2.中国计量学院量新学院,浙江杭州310018)【摘 要】 介绍了一种基于LabV IEW 的步进电机控制方案,给出了控制系统的构成和具体电路.通过运用LabV IEW 的优势,系统具有良好的软件交互界面,控制效果良好,并结合A T89S52,以实现控制信号的实时检测和传输.【关键词】 步进电机;控制系统;控制信号【中图分类号】 TP273 【文献标识码】 AR esearch on step motor control system based on LabVIEWHON G Tao 1,YAN Tao 2(1.College of Quality and Safety Engineering ,China Jiliang University ,Hangzhou 310018,China ;2.Liangxin College ,China Jiliang University ,Hangzhou 310018,China )Abstract :A step motor control system based on LabV IEW was introduced.The general design of the control system and the specific circuits were described.Due to the advantages of LabVIEW ,the system had a convenient operational interface with good control effects.Meanwhile A T89S52,control signals were detected and transmitted in real 2time with A T89S52.K ey w ords :LabV IEW ;A T89S52;step motor 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件.在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,因此广泛应用于机械、电子等精密控制.步进电机并不像普通的直流电机在常规下使用.它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用.传统的方法是用逻辑电路或单片机实现步进电机控制,虽然此方法可行,但由于线路复杂而且制成后不易调整,存在一定的局限性.在某些需要对电机转动的参数进行实时修改的场合也不适用.现介绍一种由LabV IEW 结合单片机实现对步进电机的控制,能直接在LabV IEW 上实现对步进电机转速及转角的控制.与传统的单片机控制或LabV IEW 加运动采集卡控制相比,具有成本低、编程简单、方便控制等优点.本系统中控制的对象为四相五线制步进电机,但该方法也同样适用于其他类型步进电机.1 系统简介现以径向跳动测试中对工件的转动要求为例,详细描述步进电机的PC 控制方法.由于步进电机的控制脉冲由单片机预先设置,故适用于各种类型步进电机.其系统框图如图1所示.图1 系统框图Figure 1 System diagram整个控制系统由LabV IEW 前面板中输入速度与转角数值,经由LabV IEW 软件使计算机并口产生对应的信号;单片机始终对计算机并口进行监测,当发现并口输出变化时,单片机输出相应的脉冲信号给电机驱动芯片,最后经由驱动模块实现步进电机的控制.各个模块中,LabV IEW 实现数据的采集与发送,即实现方便控制的作用,同时将控制信息通过并口发送出去;单片机模块实现控制信息的接受与处理,产生控制步进电机的脉冲信号.2 LabVIEW 简介LabV IEW (Laboratory Virt ual Instrument Engineering )是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件.所有的Lab 2V IEW 应用程序,即虚拟仪器(V I ),它包括前面板(f ront panel )、流程图(block diagram )以及图标/连结器(icon/co nnector )三部分.2.1 前面板前面板是图形用户界面,也就是V I 的虚拟仪器面板,这一界面上有用户输入和显示输出两类对象,具体表现有开关、旋钮、图形以及其他控制(cont rol )和显示对象(indicator ).2.2 流程图流程图提供V I 的图形化源程序.在流程图中对V I 编程,以控制和操纵定义在前面板上的输入和输出功能.流程图中包括前面板上的控件的连线端子,还有一些前面板上没有,但编程必须有的东西,例如函数、结构和连线等.2.3 图标/连接器V I 具有层次化和结构化的特征.一个V I 可以作为子程序,这里称为子V I (subV I ),被其他V I 调用.图标与连接器在这里相当于图形化的参数.3 硬件电路设计3.1 计算机并口接口并行接口,简称并口.并口采用的是25针D 形接头.所谓“并行”是指8位数据同时通过并行线进行传送,这样数据传送速度大大提高.一般的PC 机上都有并口母头,用于信号接受与传输.本文中计算机并口的作用是将上位机中的控制信号传送到单片机上.本文中需要用到的只是并口的pin 2到pin 9这八个pin (针脚2~9是数据总线的信号,通过一个OU TPU T 命令发信给并口的门闩线路.可以得到+5V 电压).pin 18到pin 25是联通的,是地线.并行口示意图如图2.图2 并口管针排列示意图Figure 2 Diagram of terminal outgoing pins并行口中总共需要接4根线,为转速、转角、一次转动和接地四根线,分别由并口的2、3、4、22脚接至A T89S52单片机的P3.2、P3.3、P1.7及GND 脚上.转角与转速信息通过发送占空比不同的方波信号区分.3.2 单片机电路使用较为广泛的A T89S52单片机,用以接收LABV IEW 控制并口输出的信号,再经程序读取单片机中断口上的方波波长,对应修改转角与转速参数,最终实现P2口步进电机的脉冲信号输出.3.3 电机驱动本系统中步进电机驱动电路采用有高耐压、大电流达林顿阵列UL N2803.该芯片相比常用电机驱动芯片L297及L298,具有电路简单、高耐压、大电流的特点见图3.741第2期洪 涛,等:LabV IEW 的步进电机控制方法研究图3 步进电机驱动电路Figure 3 Driving circuit for step motor UL N2803芯片9脚接地,10脚接步进电机额定电压;1脚至4脚接单片机P2.4-2.7,15脚至18脚接步进电机.驱动电路由单片机控制,采用汇编语言控制P1口输出脉冲信号到UL N2803的B 口,UL N2803的COM 脚接步进电机所需额定电压.ULN2803的C 口接步进电机.3.4 总电路图总电路图如图4.4 软件编程4.1 LabVIEW 程序设计4.1.1 控制面板设计 使用时输入一次转角的大小和转速值,后按设定键.高电位与低电位为设定两次转动的间隔,最后按运行见图5.图4 总电路图Figure 4 General circuit diagram图5 控制面板示意图Figure 5 Diagram of control panel LabV IEW 程序主要实现将用户需要的转速与转角信号转换为相应不同占空比的方波信号在并口输出.4.1.2 流程图设计 LabV IEW 提供了丰富的控制流程、控制算法以及下位机通讯子V I ,通过这些子V I 之间的连接,我们就可以快速完成功能设计.在这里我们用到了逻辑判断、循环控制、延迟等待、并口通讯等子VI.最终的流程图如图6.4.2 单片机程序设计A T89S52单片机执行的功能为接收上位机的控制信号以及根据所收信号发出相应控制步进电机的脉冲信号.单片机程序运行后,对中断口进行监视,用以捕获中断口方波占空比.当电位出现下降时,沿使841中 国 计 量 学 院 学 报第19卷图6 LabVIEW 流程图Figure 6 Flow diagram of LabV IEW用定时/计数器对中断口进行信息采集,而后返回主程序并根据所读取信息发送相应频率和次数的脉冲信号,达到控制转速和转角的目的.程序框图如图7.图7 单片机程序流程图Figure 7 Flow diagram of MCU5 结 语本文所介绍的基于LabV IEW 及单片机的步进电机控制系统可实现上位机对步进电机的控制,并能实时改变其转动参数;它集合了Lab 2V IEW 的优越的人机界面,并且编程简单.这一技术的步进电机控制已成功应用在我们研制的径向圆跳动检测系统上,而且系统运行稳定,控制方便.【参 考 文 献】[1] 陈方泉,李建周.基于LabVIEW 的步进电机驱动设计及其应用[J ].上海大学学报,2006,12(1):90294.[2] 杨 林,方宇栋.LabVIEW 控制步进电机[J ].电气传动,2004(5):52254.[3] 钟绍俊,许素安,林德辉,基于LABVIEW 的分布式虚拟测试系统的设计与实现[J ].中国计量学院学报,2004,15(2):1172119.[4] 陈 龙,张新政,邓 蝉.LabVIEW 控制步进电机的并口通讯研究[J ].电子测试,2007(10):9212.[5] 赵冬梅,张 宾.LabVIEW 控制步进电机自动升降速[J ].控制系统,2006,10(1):1042105.[6] 孙冠群,李 晓,张黎锁,等.SR 电机调速系统控制器设计[J ].中国计量学院学报,2006,17(3):2072211.[7] 周 慧,马怀祥.基于LabVIEW 软件的压力锅测试系统的设计与应用[J ].轻工机械,2007,25(5):53255.[8] 项 荣,单越康,张 志,等.钢卷尺自动切零位系统研究[J ].中国计量学院学报,2006,17(4):2722275.[9] 陈 宏,陈 新.基于LabVIEW 的单片机脉冲发生器[J ].现代电子技术,2008(3):97299.[10] 刘 哲,王 峰,赵宇辉.基于LabVIEW 通信虚拟实验系统[J ].国外电子测量技术,2008,27(1):66268.[11] 周建敏.混合式步进电机驱动控制系统的设计[J ].微计算机信息,2008,24(2):1222123.941第2期洪 涛,等:LabV IEW 的步进电机控制方法研究。
LabVIEW程序控制步进电机说明
4 仿真实验4.1 步进电机的控制4.1.1 步进电机运行系统的连线对于步进电机的控制程序主要在于编程控制轴的转动(PLS+/PLS-)和轴的正反向转动(DIR+/DIR-),在这里我们对于步进电机驱动器的连接方法采用共阳极接法,如图4.1。
图4.1 共阳极接法PLS+和DIR+要共同连接在数据采集卡的+5V接口上,PLS-和DIR-分别连接数据采集卡的随意两个通道,在这里我们选择了P0.0和P0.1这两个通道。
本次试验我们使用的步进电机的型号是YH57BYGH56-401A,它的步距角是1.8°,相电流为2.8A。
这个步进电机有四条接线,需要分别连接步进电机驱动器的A+/A-、B+/B-的端口,需要步进电机的阴阳极分别接入驱动器的阴阳极端口。
对于分辨接线接入驱动器是否正确,我们可以将其中两根线的金属外部用手捏在一起,转动步进电机的轴,如果很难转动那么说明这两根线可以接入A+/A-或B+/B-的接口中,如果顺利转动则需换线继续尝试知道难以转动。
驱动器需要接入电源运行,+V接入+25V,GND接地,如图4.2。
这个部分具体的运行过程就是电脑控制程序给数据采集卡一个连续脉冲信号,由采集卡传递到驱动器的DIR端口,再通过DIR-来输出到步进电机,从而导致步进电机轴的转动。
图4.2 步进电机驱动器端口当驱动器的灯是红色时说明出现故障需要及时排查,电机轴失去自锁力。
绿灯亮起则可以正常工作。
4.1.2 步进电机驱动器的设置驱动器的设置主要是通过驱动器右侧8个上下拨动开关键来控制,SW1、SW2、SW3控制电流大小,SW4控制选择静态半流(OFF)或静态全流(ON),剩下的SW5到SW6是决定驱动器的细分程度,如图4.3。
图4.3 驱动器的细分细分是控制精度的标志,通过增大细分能改善精度。
细分能增加电机平稳性,通常步进电机都有低频振动的特点,通过加大细分可以改善,使电机运行非常平稳。
细分驱动模式具有低速振动极小和定位精度高两大优点。
LabVIEW驱动步进电机简易程序
LabVIEW驱动步进电机简易程序作者:chenfire来自-小木虫论坛步进电机是个好东西,做实验的时候如果有这么个帮手,可以省下长时间手动加压、加溶液、调节电压电流的功夫。
使做实验变得没那么辛苦、枯燥。
举个例子吧,俺们实验室做某实验,需要在两个小时里面,把电压缓慢地从0V加到300V。
而能提供这么高电压的只有一台国产设备,没有自动加压功能,计算机接口更是不用奢望了。
只有一个旋钮,自己慢慢旋吧。
为了解决这个问题,我做了个小装置,把调压旋钮换成一个齿轮,然后在旁边放一个步进电机,带动调压旋钮的齿轮慢慢旋转,电压缓慢上升。
即省下自己加压的时间,又能保证加压的速率。
就算不是为了试验,做个小装置来玩玩也可以。
程序是用LabVIEW写的,非常简单,驱动电路也是采用最简单的。
下面介绍给各位虫友,呵呵。
需要的东西:一台带并口的电脑(并口就是那个25针,旧式打印机的打印口);一个ULN2003A的芯片(1块钱),一个12V的齐纳二极管(5角),一个12V的稳压电源(充电用的适配器就行,手机丢了、坏了之后总会剩下一些),一个从报废打印机拆出来的步进电机和齿轮,一个DB25的并口插座,就够了。
先说驱动电路。
小型步进电机的驱动电压12V就够了,我用的是一个ULN2003A的芯片,里面有7条的达林顿管,只要用到4路就行了。
具体连接如下图所示。
要注意步进电机各个绕组的次序,要按顺序来连接。
图是从网上截下来的,注意上图中的Data1跟Data2两条线交叉了,其后面对应的Coil3跟coil2两组绕线也反过来排列,因此,这两组输入/输出口实际上不用反着排,按次序就行了。
再来看看电脑25DB的打印口,排列如下:从右上角的孔往左算,分别是Pin1—Pin13,我们选取四条来作为数据线,分别是Pin2—Pin5,即Data0—Data3,这四条线跟ULN2003A的第3、4、5、6脚连接。
然后从地14,13,12,11脚引出电源到步进电机的4组绕线。
LabView控制步进电机
LabView控制步进电机ronggang导语:本文主要讲了对单个步进电机的控制,通过和单片机控制的比照可以看出LabView的上风摘要:〞软件就是仪器〞,应用LabView实现仪器领域的新革命,可方便的实现对步进电机的数据收集,显示,数字输出,既可以控制单个步进电机,也可以把步进电机组成空间向量进展控制,而且构造简单,运行高效。
本文主要讲了对单个步进电机的控制,通过和单片机控制的比照可以看出LabView的上风。
关键字:LabView,步进电机,单片机,数据收集系统一.LabView简介:虚拟技术、计算机通讯技术和网络技术是信息技术最重要的组成局部,它们被称为是21世纪科学技术中的三大核心技术。
而虚拟仪器即使虚拟技术中的一个很重要的组成局部,自20世纪90年代以来,在计算机技术的推动下,以虚拟仪器为标志的通用化,智能化和网络化测量仪器及测试系统得到了迅速的开展,使得测量仪器和数据收集系统的设计方法和实现技术产生了深入的变化.所谓的虚拟技术,就是用户在通用的计算机平台上,根据测试任务的需要来定义和设计仪器的测试功能,其本质是充分利用计算机来实现和扩展传统的仪器功能,虚拟仪器技术综合也用了计算机技术,数字信号处理技术,标准总线技术和软件工程方法,它缩短了开发和调试的周期。
[1]“软件就是仪器〞反映了虚拟仪器技术的本质,这个概念克制了传统仪器的功能在制造时就被限定而不能变动的缺陷,摆脱了由传统硬件构成一件件仪器再连成系统的形式,很多功能直接就由软件来实现,打破了仪器功能只能由厂家定义,用户无法改变的形式。
以图形化软件编程方法和集成开发环境为标志的虚拟仪器开发环境是虚拟仪器技术研究的重要内容。
美国国家仪器公司〔NATIONALINSTRUMENTS简称NI〕的创新产品LabView 是目前最成功,应用最为广泛的虚拟仪器软件开发环境。
而在中国LabView才刚开场应用,它的应用量只占全世界的2%左右。
本文主要以步进电机的控制为例,通过和单片机的比拟进一步阐述LabView的上风!二.传统的步进电机控制系统:将输入的模拟信号波形进展调理〔滤波,隔离,放大等〕,并经A/D转换成数字信号,由微处理器按照功能要求对收集的数据作必要的分析和处理,然后将处理后的数据存储、显示或者经D/A转换成模拟信号输出,传统仪器是由厂家消费的,一般一种仪器只有一种功能或者数种功能,步骤如下〔图1〕。
步进电机升降速
}
if(fg1==3) //减速
{
P3_2=0;
TR1=0;
--num;
numdisy=num+1;
if(num==0xff)
{
num=12;
numdisy=num+1;
// delay(20);
writedata('r');
// delay(20);
writedata('/');
// delay(20);
writedata('m');
// delay(20);*/
if(flag==1)
{
flag=0;
writecom(0x8b);
uchar code lie[]={0xe0,0xd0,0xb0,0x70};
double code speed[]={0.078,0.072,0.066,0.060,0.054,0.048,0.042,0.036,0.030,0.024,0.018,0.012,0.006};
uchar code round[]={'0','1','2','3','4','5','6','7','8','9'};
uchar code TH_1[]={0xbe,0xdf,0xea,0xef,0xf2,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0xfa,0xfa};
uchar code TL_1[]={0xe5,0x73,0x4c,0xb9,0xfb,0x26,0xb3,0xdd,0xc4,0x7d,0x15,0x29,0xfe};
使用LabVIEW进行运动控制实现精准的位置和速度控制
使用LabVIEW进行运动控制实现精准的位置和速度控制近年来,随着工业自动化的快速发展,运动控制技术在各个领域的应用日益广泛。
而LabVIEW作为一种强大的图形化开发环境,可以帮助工程师们实现精准的位置和速度控制,具有很高的实用性和灵活性。
本文将介绍如何使用LabVIEW进行运动控制,实现精准的位置和速度控制。
一、LabVIEW简介LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种用于快速进行系统测量和控制的图形化开发环境。
它允许使用者通过图形化编程而非传统的文本编程方式来开发应用程序,极大地提高了开发效率和易用性。
二、运动控制基础知识在进行实际的运动控制之前,我们首先需要了解一些基本的运动控制概念。
1. 位置控制:即控制物体在运动过程中的位置,使其精确地到达目标位置。
2. 速度控制:即控制物体在运动过程中的速度,使其按照既定速度运行。
3. 加速度控制:即控制物体在运动过程中的加速度,使其具有平稳的加速和减速过程。
三、LabVIEW中的运动控制LabVIEW提供了丰富的运动控制函数和工具箱,使得进行精准的位置和速度控制变得更加简单和便捷。
1. 运动控制模块(Motion Control Module):该模块提供了一系列用于控制运动装置的函数和工具箱。
我们可以通过该模块实现对电机、伺服、步进驱动器等设备的运动控制。
2. 实时运动控制器(Real-Time Control Module):该模块基于实时操作系统RTX和硬实时通信,实现了精确的实时运动控制。
能够满足更高精度、更快速度的运动要求。
四、使用LabVIEW进行位置控制下面以步进电机为例,介绍如何使用LabVIEW进行位置控制。
1. 配置硬件:将步进电机与控制器连接,并确保硬件配置无误。
2. 创建控制程序:在LabVIEW中创建一个新项目,选择合适的步进电机控制器和驱动器。
LABVIEW 步进电机
实验二:步进电机实验实验目的:1、了解步进电机的工作原理及控制方法2、掌握LabVIEW软件设计控制步进电机的编程方法实验设备:实验主机箱、步进电机模块实验原理:1、硬件描述(1)步进电机的控制原理∙步进电机有三线制、五线制、六线制三种,但其控制方式均相同,必须以脉冲电流来驱动。
若每旋转一圈以20个励磁信号来计算,则每个励磁信号前进18度,其旋转角度与脉冲数成正比,正、反转可有脉冲顺序来控制。
∙步进电机的励磁方式可分为全部励磁及半步励磁,其中全部励磁又有1相励磁及2相励磁之分,而半步励磁又称1-2相励磁。
没输出一个脉冲信号,步进电机只走一步,因此,依序不断送出脉冲信号,就可以使步进电机连续转动。
本次实验利用的是2相励磁法,所以在此仅对2相励磁做简要介绍: 2相励磁法:在每一瞬间会有两个线圈同时导通,因其转矩打,振动小,故为目前使用较多的励磁方式,每送一励磁信号可走18度。
励磁顺序为AB→BC→CD→DA→AB如下图所示:STEP A B C D1 1 1 0 02 0 1 1 03 0 0 1 14 1 0 0 1电机的负载转矩与速度成反比,速度愈快负载转矩愈小,当速度快至某极限时,步进电机即不再运转。
所以在每走一步后,程序必须延时一段时间。
软件设计思路1、前面板设计:前面板包括电机的步数设定框、转向选择按钮、波形图。
如下图所示:2、框图程序设计分析:本实验程序设计了最常用的2相励磁法控制步进电机。
实验程序依次将真值表中的控制值写入数据采集卡,使数据采集卡的I/O口DO3、DO2、DO1、DO0依次输出高电平信号来触发步进电机转动。
实验程序框图利用公式节点输入公式y=t*t*t+6*t*t-5,输出接入波形图,在波形图中产生一个三次函数图形,将波形图的y坐标值提取出与时钟相连来控制步进电机的转速。
原理图如下所示:在前面板中运行程序时,在”波形图”中的三次函数图形上任选一点得到一y 值,该值传到控制‘步间延迟时间’的时钟处控制步进电机的转速,运行过程中可以通过拖动鼠标选择函数图像上不同的点即不同y值来改变步进电机的转速,y值越大说明步间延迟时间越长,电机转速越小,反之转速越大。
利用LabVIEW进行直流电机控制与调速
利用LabVIEW进行直流电机控制与调速直流电机在工业控制和自动化领域中具有重要作用,其控制与调速是一项关键技术。
LabVIEW是一款功能强大的图形化编程环境,适用于各种控制系统的设计和调试。
本文将介绍如何利用LabVIEW实现直流电机的控制与调速过程。
一、LabVIEW环境搭建首先,我们需要安装LabVIEW软件并搭建相应的开发环境。
具体步骤如下:1. 下载LabVIEW安装包并进行安装;2. 打开LabVIEW软件,在主界面选择新建一个项目;3. 在新建项目中选择合适的目录,并创建一个新的VI(Virtual Instrument)。
二、硬件连接在开始编程之前,我们需要连接实际的硬件设备,包括直流电机和相应的驱动电路。
确保电机和电路连接正确,并通过串口或USB接口将其与计算机相连。
三、编写控制程序在LabVIEW环境下,我们可以通过拖拽控件和线连接的方式来编写控制程序。
以下是一个基本的直流电机控制程序示例:1. 读取输入信号使用LabVIEW提供的输入控件,如拨动开关或旋钮,读取用户输入的控制信号。
这可以包括电机的启动、停止、加速和减速等操作。
2. 控制信号处理根据用户输入的信号,进行相应的处理和逻辑判断。
例如,当用户选择启动电机时,向驱动电路发送启动信号,并控制电机的电流或电压。
3. 电机速度调节利用PID控制算法或其他调节算法,实现电机的速度控制。
这可以通过使用LabVIEW提供的控制函数和模块来实现。
4. 输出控制信号将处理后的控制信号转换为电机可理解的信号,并通过串口或USB 接口发送到驱动电路。
这将导致电机以相应的速度和方向旋转。
5. 反馈信号读取连接电机的编码器或其他传感器,读取电机的实际转速或位置。
这将用作反馈信号,用于控制回路的闭环控制。
6. 控制回路闭环通过比较用户设定的目标速度和实际测量的速度,实现闭环控制。
根据误差信号,调整输出控制信号,以使电机的实际转速趋近于设定值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LabVIEW控制步进电机自动升降速 (1)
2008-07-21 09:39:06 来源:互联网
步进电机在开环控制系统中作为控制用电机和驱动用电机得到广泛使用,为防止失步和过冲,使用步进电机高速运行时必须有升降速过程。
本文在分析比较几种常用的升降速控制曲线基础上,利用LabVIEW通过PCI-1780卡实现了步进电机自动升降速的软件控制。
关键字:步进电机[27篇] 自动升降速[1篇] LabVIEW[24篇] 软件控制[1篇]
一、前言
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件,在办公室自动化(OA)、工厂自动化(FA)和计算机外部设备等领域作为控制用电机和驱动用电机得到广泛使用。
在各类高校机电、数控、自动化等专业的教学中,步进电机是学生必须掌握的内容。
使用步进电机的开环控制系统必须在高速运行前有一个逐渐升速的过程,否则步进电机将会失步,临到终点前必须有一个减速过程,否则会造成过冲,使定位不准,这种升降速必须在短时间内自动完成。
若用硬件方法实现,将增加硬件结构的复杂性从而增加系统故障的出现次数;用软件实现将增加计算机硬件实时计算工作量,有可能影响速度的提高,但随着计算机硬件性能的提高,CPU的更快的运算速度为自动升降速的软件实现提供了硬件保障。
而LabVIEW
(Laboratory of virtual instruments engineering workbench)是美国NI 公司利用虚拟仪器技术开发的32位、面向计算机测控领域的虚拟仪器软件开发平台[1,2]。
该软件具有十分强大的功能,包括数值函数运算、数据采集、信号处理、输入/输出控制、信号生成、图像的获取、处理和传输等,提供了编写仪器测试程序与建立数据采集系统的便捷途径。
采用旋钮、开关、波形图等构造用户界面,人机交互界面友好。
利用LabVIEW编程可以摆脱繁琐的底层命令,直接选用相关图标节点进行连线即可,容易实现程序的控制。
二、常用的步进电机自动升降速控制曲线
常用的控制曲线有以下几种
1.速度时间曲线是梯形的运动(图1)
电机做梯形运动时,其运动过程是首先以一定的加速度加速运动,当速度达到指定的速度时,开始匀速运动。
减速时,以一定的加速度减速运动到指定的速度后匀速运动或停下来。
这种升降速控制方法计算简单,节省机时,但因为加速、匀速和减速过程不能光滑过渡,即加速度对时间的函数a(t)=dv(t)/dt不是连续函数,而存在阶跃现象。
这将影响电机和机械系统的使用寿命,所以适用于控制系统处理速度较慢且对升降速过程要求不高的场合。
图1 梯形v-t曲线
2.速度时间曲线是S型的运动(图2)
图2 S型v-t曲线
图2中M-B为加加速运动阶段,B-C为加速运动阶段,C-D为减加速运动阶段,D-E为匀速运动阶段,减速时情况类似,E-F为加减速运动阶段,F-S为减速运动阶段,S-H为减减速运动阶段。
速度是时间的连续函数,从启动到加速过程的光滑过渡以及到匀速运动的过渡使电机和机械系统的使用寿命提高,但计算量大,适用于控制系统处理速度较快且对升降速过程要求较高的场合。
3.速度时间曲线是直线加抛物线型的运动(图3)
图3 直线加抛物线型v-t曲线
在对步进电机的控制中,工程上一般认为步进电机无需经过加速就直接阶跃到启动频率所对应的速度,也可在启动频率所对应的速度直接停止[3]。
因此上述直线加抛物线运动规律就演变为抛物线运动规律,由于步进电机的转矩是其速度的减函数,在高速状态下,易于产生振荡,而使用抛物线型曲线的控制方法可提高步进电机的允许上限速度,而且可以保证系统尽快由启动状态上升到高频运行状态,或尽快由运动状态停止。
所以这里我们通过编程实现近似抛物线运动规律。
三、LabVIEW软件控制的实现
根据步进电机控制电压的特点,我们选用了PCI-1780卡,这是一款基于PCI 总线的8路定时/计数卡,使用了AM9513芯片,提供8个16位计数器通道,8路数字量TTL输出和8路数字量TTL输入,它的应用包括:事件计数、触发式输出、可编程频率输出、频率测量、脉宽测量、PWM输出、产生周期性中断和延时功能等。
LabVIEW控制步进电机自动升降速 (2)
2008-07-21 09:39:06 来源:互联网
步进电机在开环控制系统中作为控制用电机和驱动用电机得到广泛使用,为防止失步和过冲,使用步进电机高速运行时必须有升降速过程。
本文在分析比较几种常用的升降速控制曲线基础上,利用LabVIEW通过PCI-1780卡实现了步进电机自动升降速的软件控制。
关键字:步进电机[27篇] 自动升降速[1篇] LabVIEW[24篇] 软件控制[1篇]
我们利用PCI-1780输出所用脉冲,通过改变脉冲的输出频率来控制步进电机的转速;通过控制输出脉冲数量的方法控制步进电机转动一定的角度;利用数字输出功能控制其方向;利用软件编程的强大功能实现步进电机的自动加减速控制。
流程如图4,步进电机控制的前面板如图5所示:
图4 自动升降速控制流程图
图5 步进电机控制前面板四、小结
基于图形化的编程语言,基于数据流的运行方式为我们开辟了步进电机控制的新领域。
本文作者创新有以下几点:
1、采用旋钮、开关等构造用户界面,人机交互界面友好。
2、将步进电机升降速的控制不但自动化,而且充分利用LabVIEW的优势将控制量和显示量实时显示出来。
3、利用计算机快速的运算速度实现了自动升降速的控制,减少了硬件的配置,使整个系统简化。
实践证明这种控制方式可以加深对步进电机及其控制的理解和掌握。
参考文献
[1]雷振山《LabVIEW 7 Express 实用技术教程》中国铁道出版社北
京 2004,p218
[2]张毅,周绍磊,杨秀霞,《虚拟仪器技术分析与应用》, 北京:机械工业出版社, 2004.2,p83-120
[3] 杨林,方宇栋,LabVIEW控制步进电机,微计算机信息,2004年第二期。