“工控机+数字采集卡”控制步进电机的相关问题求助

[复制链接]
查看11 | 回复1 | 2008-7-29 12:39:49 | 显示全部楼层 |阅读模式
在步进电机位置控制中采用了工控机通过数据采集卡6126和8316向步进电机控制器发脉冲来控制步进电机的运动,可有几个问题我一直想不明白,想向各位大侠请教一下。
原始的控制程序如下:
Private Sub xdd_Click()
Dim kAs Integer
Dim iAs Integer
Do While i <= 1024
i = i + 1
k = W_6126_DO(DO_LOW_BYTE, 5)
k = W_6126_DO(DO_LOW_BYTE, 5)
k = W_6126_DO(DO_LOW_BYTE, 5)
k = W_6126_DO(DO_LOW_BYTE, 5)
i = i + 1 - 1
k = W_6126_DO(DO_LOW_BYTE, 4)
k = W_6126_DO(DO_LOW_BYTE, 4)
k = W_6126_DO(DO_LOW_BYTE, 4)
i = i
i = i
Loop
k = W_6126_DO(DO_LOW_BYTE, 16)
End Sub
第一个问题是:
对于原始程序根据我的理解是工控机向步进电机控制器发了1024个脉冲,然后我根据步进电机的相关参数计算出步进电机应该运行40um,可我用激光干涉仪测得的实际距离只有2um左右。我想问一下各位大侠,数据卡向步进电机发脉冲的原理是怎样的,这段程序向步进电机驱动器具体发送了多少个脉冲?步进电机按照这个脉冲数准确的运动距离应该是多少?
第二个问题是:
在程序中为什么要重复的给数据卡的数字输出口写入控制字?我曾经试着改变重复写入的次数,发现只写入一次时,步进电机无法运行。我想问一下,只写一次为什么不行呢?
请各位大虾赐教,谢谢各位大侠了

回复

使用道具 举报

千问 | 2008-7-29 12:39:49 | 显示全部楼层
不能重复发出脉冲信号啊步进电机的基本原理 步进电机作为执行元件,是机电一体化的关键产品之一, 广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。 步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行