- 2.65 MB
- 2022-09-27 发布
- 1、本文档由用户上传,淘文库整理发布,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,请立即联系网站客服。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细阅读内容确认后进行付费下载。
- 网站客服QQ:403074932
雷泰运动控制卡DMC1000∕DMC1000B用户手册Version2.1版权所有不得翻印\n©Copyright2010LeadshineTechnologyCo.,Ltd.AllRightsReserved.版权说明本手册版权归深圳市雷赛智能控制股份有限公司所有(以下简称雷赛公司),未经雷赛公司书面许可,任何人不得翻印、翻译和抄袭本手册中的任何内容。本手册中的信息资料仅供参考。由于改进设计和功能等原因,雷赛公司保留对本资料的最终解释权,内容如有更改,恕不另行通知。调试机器要注意安全!用户必须在机器中设计有效的安全保护装置,在软件中加入出错处理程序。否则所造成的损失,雷赛公司没有义务或责任对此负责。技术支持热线:0755-26417593网址:www.szleadtech.com.cn\nDMC1000/DMC1000B用户手册Version2.1目录关于本手册...........................................................................................................11引言.................................................................................................................22硬件概述.........................................................................................................32.1性能指标.............................................................................................................42.1.1电机控制指标.............................................................................................................42.1.2I/O信号控制指标......................................................................................................42.1.3通用指标:.................................................................................................................42.2硬件结构尺寸.....................................................................................................52.3硬件功能描述.....................................................................................................62.3.1控制卡电源供给.........................................................................................................62.3.2运动控制功能.............................................................................................................62.3.3脉冲和方向控制接口.................................................................................................92.3.4机械位置控制接口...................................................................................................112.3.5通用数字输入/输出信号接口..................................................................................132.3.6多卡运行...................................................................................................................152.4运动控制平台位置传感器及控制信号布局示例...........................................162.5步进电机驱动器接线示例...............................................................................172.5.1单端输出接法...........................................................................................................172.5.2差分输出接法...........................................................................................................173硬件配置与安装...........................................................................................183.1硬件配置...........................................................................................................183.1.1跳线配置...................................................................................................................183.1.2开关配置...................................................................................................................193.2硬件安装...........................................................................................................204软件系统概述...............................................................................................214.1硬件驱动程序...................................................................................................214.2运动控制函数库...............................................................................................214.2.1初始化、关闭运动控制卡.......................................................................................214.2.2设置脉冲输出模式...................................................................................................224.2.3单轴位置和速度控制...............................................................................................234.2.4多轴运动控制...........................................................................................................264.2.5回原点运动...............................................................................................................29技术支持热线:0755-26417593网址:www.szleadtech.com.cn\nDMC1000/DMC1000B用户手册Version2.14.2.6指令脉冲计数...........................................................................................................294.2.7通用I/O控制...........................................................................................................304.3演示程序...........................................................................................................314.4例子程序...........................................................................................................315驱动程序安装...............................................................................................325.1在WINDOWS2000/XP操作系统环境中安装步骤..........................................325.2在WINDOWS7操作系统环境中安装步骤......................................................355.3在WINDOWS98操作系统环境中安装步骤....................................................396演示软件及应用...........................................................................................426.1I/O检测演示.....................................................................................................426.2运动操作演示...................................................................................................437用户系统开发...............................................................................................457.1基于WINDOWS平台的应用软件结构.............................................................457.2VISUALBASIC6.0环境下编程..........................................................................467.3VISUALC++6.0环境下编程.............................................................................477.4编程举例...........................................................................................................487.4.1VisualC++6.0编程举例......................................................................................487.4.2VisualBasic6.0编程举例.....................................................................................518附录...............................................................................................................548.1硬件信号接口表...............................................................................................548.1.1接口X1引脚定义....................................................................................................548.1.2接口X2(X3)引脚定义........................................................................................558.1.3接口J1(DMC1000B)引脚定义...........................................................................568.2运动控制函数库...............................................................................................588.2.1函数列表...................................................................................................................588.2.2函数说明...................................................................................................................598.2.3资源文件...................................................................................................................668.3DMC1000B与DMC1000卡之间的一些说明................................................678.3.1DMC1000B与DMC1000卡的差异说明...............................................................678.3.2DMC1000B卡替换DMC1000卡的步骤...............................................................678.4常见问题库.......................................................................................................688.5抗干扰措施.......................................................................................................69技术支持热线:0755-26417593网址:www.szleadtech.com.cn\nDMC1000/DMC1000B用户手册Version2.1关于本手册本手册旨在帮助你学习DMC1000∕DMC1000B控制卡的使用,包括软件函数的调用、参数的设置、硬件接线以及应用软件的编写等。本手册总共分为8个部分:1.引言:关于本产品的大概描述和关于本产品的相关申明;2.硬件概述:关于本产品的硬件相关介绍,包括详细硬件结构尺寸和硬件功能描述,以及控制卡与步进电机驱动器接线示例等;3.硬件配置与安装:包括硬件安装步骤以及板卡设置;4.软件系统概述:关于本产品的软件相关介绍,包括本产品所支持的系统驱动程序、运动控制函数库详细说明、演示程序和例子程序的说明以及多卡运行部分;5.驱动程序安装:控制卡在各种Windows操作系统下驱动程序的详细安装步骤;6.演示软件及应用:包括演示软件的说明和使用方法;7.用户系统开发:介绍了基于windows平台的应用软件结构,以及VB和VC++开发环境下的开发方法,并提供VB和VC++开发环境下的应用实例编程入门;8.附录:提供详细硬件信号接口定义表、运动控制函数库、DMC1000B与DMC1000卡之间的一些说明、常见问题解决方法、抗干扰措施等。技术支持热线:0755-26417593网址:www.szleadtech.com.cn1\nDMC1000/DMC1000B用户手册Version2.11引言雷泰DMC1000∕DMC1000B是一款基于PCI总线的高集成度、高可靠度的脉冲式运动控制卡,可控制多达4个步进电机或伺服电机。DMC1000∕DMC1000B卡内含脉冲和方向接口,其位置指令可用单路脉冲(脉冲+方向)或双路脉冲(CW+CCW脉冲)方式输出;可以是差分式输出电路也可以是单端式输出电路。另外,除了通用输入输出信号接口外,DMC1000∕DMC1000B还包括原点、限位、减速等专用信号接口,具有即插即用、多轴同时启停功能,并可选择梯形或S形速度曲线,同时具有软件直线插补功能。雷赛公司引进美国MotionEngineering公司的先进技术,为DMC1000∕DMC1000B设计了一套易学易用、功能丰富的运动函数库,大大缩短了用户应用软件开发和调试的时间。随卡免费提供的Motion(1000、1000B)软件,不但可以演示和测试DMC1000∕DMC1000B的绝大多数控制功能,而且还可方便客户测试电机、IO信号等硬件系统。技术支持热线:0755-26417593网址:www.szleadtech.com.cn2\nDMC1000/DMC1000B用户手册Version2.12硬件概述雷泰(Leadtech)DMC1000∕DMC1000B是一款兼容PCIV2.3标准的32BitPCI标准半长卡。硬件方面分别提供了4轴的脉冲和方向控制信号,同时提供多种运动控制功能、机械位置控制信号、以及同时启停信号和通用输入输出信号。具体硬件系统框图如图2-1和图2-2所示:图2-1DMC1000运动控制卡系统框图图2-2DMC1000B运动控制卡系统框图技术支持热线:0755-26417593网址:www.szleadtech.com.cn3\nDMC1000/DMC1000B用户手册Version2.12.1性能指标2.1.1电机控制指标控制轴数:4轴,最多可支持12块控制卡同时工作(注:由于软硬件区别,DMC1000和DMC1000B两种卡不能同时在同一系统中使用);控制模式:位置控制、速度控制2种模式;脉冲输出模式:单脉冲(脉冲+方向)或双脉冲(CW+CCW);最大脉冲输出频率:DMC1000B:1.2MHz,DMC1000:400KHz,可梯形速度曲线或S形速度曲线控制;位置脉冲设置范围:0~16,777,215个脉冲(24位);2.1.2I/O信号控制指标通用I/O信号接口:DMC1000B:59路,DMC1000:28路。通用输入信号接口:DMC1000B:32路,其中16路光电隔离;DMC1000:16路,全部光电隔离;通用输出信号接口:DMC1000B:27路,其中12路光电隔离;DMC1000:12路,全部光电隔离;专用IO信号接口:20路,包括正负限位信号±EL、原点信号ORG以及正负减速信号±SD,全部光电隔离;通用数字输出口最大驱动电流:45mA,最大承受电压:35VDC;光电隔离耐压:2500VRMS;2.1.3通用指标:工作温度:0℃~50℃;工作湿度:5~85%,非结露;贮存温度:-20℃~80℃;电源:内部芯片电源(由PCI总线提供):+5VDC±5%,最大900mA;外部接口电源(需用户提供):+24VDC±5%,最大500mA;技术支持热线:0755-26417593网址:www.szleadtech.com.cn4\nDMC1000/DMC1000B用户手册Version2.12.2硬件结构尺寸雷泰(Leadtech)DMC1000和DMC1000B数字运动控制卡外形结构尺寸分别如图2-3和2-4所示:图2-3DMC1000硬件结构尺寸示意图图2-4DMC1000B硬件结构尺寸示意图技术支持热线:0755-26417593网址:www.szleadtech.com.cn5\nDMC1000/DMC1000B用户手册Version2.12.3硬件功能描述雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡硬件方面提供了多种运动控制功能,同时提供了4轴的脉冲和方向控制信号、机械位置控制信号、以及同时启停信号和通用输入输出信号接口。2.3.1控制卡电源供给雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡内部IC电源由PC机的PCI总线提供(+5VDC),外部接口需用户提供+24VDC电源。接线示意图如图2-5所示:图2-5外部I/O供电接线示意图2.3.2运动控制功能雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡为用户提供了丰富的运动控制功能,其中包括:位置控制、梯形或S型速度控制、软件直线插补运动控制等功能。2.3.2.1位置控制最基本的位置控制是指从当前位置运动到另一个位置,一般称为点位运动或定长运动。设置加∕减速度以及起始速度和最大速度等参数后执行位移控制指令,上位机将要执行的指令脉冲数写入DMC1000∕DMC1000B运动控制卡,DMC1000∕DMC1000B卡即按设定的速度输出脉冲,当输出脉冲数等于指令脉冲数时,DMC1000∕DMC1000B卡将停止输出脉冲。位移与时间的关系如图2-6所示:技术支持热线:0755-26417593网址:www.szleadtech.com.cn6\nDMC1000/DMC1000B用户手册Version2.1图2-6位移-时间曲线2.3.2.2速度控制速度控制是指电机从起始速度开始运行,加速至指定速度连续运动。只有当接收到停止命令或外部停止信号后,才减速直至停止(也可设为立即停止)。其速度与时间的关系如图2-7所示。图2-7速度控制曲线雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡为用户提供了梯形、S型速度控制模式。A)梯形曲线速度控制梯形速度曲线控制指令是使DMC1000∕DMC1000B卡按梯形速度曲线输出指令脉冲。即:电机从起始速度开始运动,加速至最大速度后保持速度不变,临结束前减速至起始速度,并停止。梯形速度曲线如图2-8所示。图2-8梯形速度曲线及其加速度曲线技术支持热线:0755-26417593网址:www.szleadtech.com.cn7\nDMC1000/DMC1000B用户手册Version2.1B)S形曲线速度控制梯形速度曲线虽然实现起来简单,但它的加速度有突变,速度曲线不平滑,因而运动中有冲击现象,容易引起机器噪声和传动机构的磨损。在梯形速度曲线上(参见图2-8),运动的不平滑主要表现在四个瞬间的速度转折及相对应的加速度突变,这四个瞬间分别是:起始时、升至最高速度时、从最高速度下降时和最后停止时。图2-9S形速度曲线及其加速度曲线若将加速度改为线性变化,则速度曲线相应将变得光滑,如图2-9所示。升速和减速阶段均变得像S的形状。采用此种速度曲线,运动更平稳,且有助于缩短加速过程、降低运动装置的振动和噪声,同时还可以延长机械传动部分的寿命。图2-10S形速度曲线2.3.2.3插补运动插补即根据给定的数学函数,在理想的轨迹式轮廓上的已知点之间,确定一些中间点的一种方法。插补方式有:直线插补、圆弧插补、抛物线插补、样条线插补等。DMC1000∕DMC1000B卡具有软件直线插补功能,可以选择任意的二技术支持热线:0755-26417593网址:www.szleadtech.com.cn8\nDMC1000/DMC1000B用户手册Version2.1轴至四轴进行直线插补(详细介绍请参考H4.2.4.2直线插补运动U中相关内容)。2.3.3脉冲和方向控制接口雷泰(Leadtech)DMC1000∕DMC1000B硬件方面提供4轴的脉冲和方向控制信号接口。用户可参考H3.1.1跳线配置U,通过设定J1~J8∕SW1~SW8跳线来设定指令脉冲为差分输出或单端输出两种电路(出厂默认均为差分输出方式)。两种典型接口电路输出分别如图2-11及2-12所示。对外接口SCSI68具体引脚分配见H8.1.1接口X1引脚定义U。图2-11差分输出方式接线图技术支持热线:0755-26417593网址:www.szleadtech.com.cn9\nDMC1000/DMC1000B用户手册Version2.1图2-12单端输出方式接线图注意:使用差分输出方式可有效的减少传输中的干扰,建议线路较长时使用差分输出方式。如图2-11所示,如果指令脉冲输出采用差分输出模式,则PUL+、PUL-和DIR+、DIR-端子组成互异的脉冲和方向信号。如图2-12所示,如果指令脉冲输出方式为单端输出,则PUL+和DIR+共用内部+5V电压,PUL-和DIR-输出端为脉冲和方向信号。请注意流过PUL-和DIR-端的电流不能超过20mA。此电流由DMC(1000、1000B)卡通过PUL+或DIR+端子提供。雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡可以输出两类脉冲信号:一种为脉冲+方向形式(单脉冲);一种为正脉冲+负脉冲(双脉冲)形式。单脉冲模式输出信号如图2-13所示:图2-13单脉冲模式双脉冲模式输出信号如图2-14所示:图2-14双脉冲模式技术支持热线:0755-26417593网址:www.szleadtech.com.cn10\nDMC1000/DMC1000B用户手册Version2.12.3.4机械位置控制接口雷泰(Leadtech)DMC1000∕DMC1000B为每个轴提均供了5个专用信号输入接口,分别为1个原点信号(ORG)输入接口、2个减速信号(SD+/SD-)输入接口以及2个限位信号(EL+/EL-)输入接口。各信号相关功能的实现均由控制卡硬件来完成,用户只需按照正确的接线方式接线,并调用相应功能的函数执行运动指令即可。2.3.4.1ORG:原点位置信号输入接口通常运动系统中都要用一个位置传感器设置一个位置参考点,即原点位置,以便于进行精确的位置控制。雷泰(Leadtech)DMC1000∕DMC1000B为每个轴提供了1个原点位置传感器输入端口ORG,对外接口SCSI68具体引脚分配见H8.1.1接口X1引脚定义U,典型接口电路如图2-15所示。原点开关请选用+24V、最小电流大于6mA的常开型开关。雷泰(Leadtech)DMC1000∕DMC1000B原点信号输入电路有低通滤波器,可以过滤高频噪声,提高可靠性。图2-15原点信号接口原理图通常在进行运动控制之前,都需要用回原点运动控制平台向原点方向运动,当运动控制卡检测到原点传感器ORG信号后,运动自动停止,并将停止位置设置为该轴的原点。具体方式和操作请参考H4.2.5回原点运动U。2.3.4.2SD+/SD-:减速位置信号输入接口运动系统中通常会用一个位置传感器设置一个减速起始点,以便于进行精确的位置控制。运动过程中当运动控制卡检测到减速信号SD后,相应轴的运行速度将减速至起始速度,若减速信号SD消失,则运行速度会重新加速至最大速度。雷泰(Leadtech)DMC1000∕DMC1000B为每个轴都提供了2个减速信号:SD+和SD-。对外接口SCSI68具体引脚分配见H8.1.1接口X1引脚定义U,典型接口原理技术支持热线:0755-26417593网址:www.szleadtech.com.cn11\nDMC1000/DMC1000B用户手册Version2.1如下图2-16所示。减速开关请选用+24V、最小电流大于6mA的常开型开关。雷泰(Leadtech)DMC1000∕DMC1000B减速信号输入电路有低通滤波器,可以过滤高频噪声,提高可靠性。图2-16减速信号接口原理图2.3.4.3EL+/EL-:正负限位信号输入接口运动系统中通常会用一个位置传感器设置一个机械限位点,以确定运动的边界位置,保护机械设备。雷泰(Leadtech)DMC1000∕DMC1000B均为每个轴提供2个机械限位信号EL+和EL-,EL+为正向限位信号,EL-为反向限位信号。当运动部件接触到限位开关时,EL+/EL-即有效,DMC1000∕DMC1000B将立即停止向该方向输出脉冲。典型接口及接线原理如图2-17所示,对外接口SCSI68具体信号引脚分配见H8.1.1接口X1引脚定义U。技术支持热线:0755-26417593网址:www.szleadtech.com.cn12\nDMC1000/DMC1000B用户手册Version2.1图2-17限位信号接口原理图限位开关请选用+24V、最小电流大于6mA的常开或常闭型开关;限位开关的类型可通过SW10(DMC1000中为S1)开关设定,详见H3.1.2开关配置U。当使用常开型限位开关时,应选择EL+/EL-信号为高电平有效(即为OFF);当使用常闭型限位开关时,应选择EL+/EL-信号为低电平有效(即为ON)。出厂默认全部为OFF,即为常开型模式;2.3.5通用数字输入/输出信号接口雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡提供了大量的通用数字I/O接口。DMC1000B有59路通用I/O口,32入27出,其中IN1~IN16以及OUT1~OUT12为光电隔离,IN17~IN32以及OUT13~OUT27为非光电隔离接口;DMC1000有28路通用I/O口,16入12出,均为光电隔离。2.3.5.1INPUT通用数字输入信号接口通用数字输入信号INPUT用于接近开关、光电开关、按键等传感器的信号输入。由于硬件配置的差别,DMC1000B卡的通用输入口驱动能力比DMC1000卡的强。位于插座X1上的通用输入口都是光电隔离的,对外接口SCSI68具体信号引脚分配见H8.1.1接口X1引脚定义U。而DMC1000B中增加的通用输入口位于扩展接口J1上,均为非光电隔离,但采用专用的接线板后,可实现J1接口的通用输入口全部光电隔离。对外接口DB37具体信号引脚分配见H8.1.3接口J1引脚定义U。通用数字输入信号电路原理图如图2-18所示:技术支持热线:0755-26417593网址:www.szleadtech.com.cn13\nDMC1000/DMC1000B用户手册Version2.1图2-18通用输入信号接口原理图2.3.5.2OUTPUT通用数字输出信号接口通用数字输出信号OUT用于控制继电器、指示灯等开关器件。由于硬件配置的差别,DMC1000B卡的通用输出口驱动能力比DMC1000卡的强。位于插座X1上的通用输出口都是光电隔离的,对外接口SCSI68具体信号引脚分配见HH8.1.1接口X1引脚定义U。而DMC1000B中增加的通用输出口位于扩展接口J1上,均为非光电隔离,但采用专用的接线板后,可实现J1接口的通用输出口全部光电隔离。对外接口DB37具体信号引脚分配见HH8.1.3接口J1引脚定义U。通用数字输出信号电路原理图如图2-19所示:图2-19通用输出口电路原理图注:通用数字输出端口的最大驱动电流为45mA,最大承受电压35V,严禁使用数字输出口直接驱动电磁阀等大电流、大功率元器件!当需要驱动小型继电器技术支持热线:0755-26417593网址:www.szleadtech.com.cn14\nDMC1000/DMC1000B用户手册Version2.1等感性负载时,线圈外必须并联一个续流二极管,以保护控制卡输出端口驱动元件ULN2803,防止在关闭继电器的瞬间,ULN2803被线圈产生的感应电动势击穿。如图2-20为DMC1000B卡与OMRON中间继电器(LY1J24VDC)接线示意图:图2-20DMC1000B卡与中间继电器接线原理图另外,当启动PC机时,DMC1000B卡输出口的初始状态可以在拨码开关SW11上面进行设置,见3.1.2开关配置。DMC1000卡则无此开关,输出口的上电初始电平为固定状态,见3.1.2开关配置。2.3.6多卡运行雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡最多支持12块卡同时工作。因此,一台PC机可以同时控制多达48轴步进∕伺服电机同时工作。(注:DMC1000与DMC1000B卡不能在同一系统中使用)。DMC1000∕DMC1000B卡支持即插即用,用户可不必关心如何设置卡的基地址和IRQ中断值,当系统启动时这些全被系统BIOS自动设定。这里值得注意的是:在多卡运行时,卡的排列有可能从左往右依次为1,2,3„,也有可能是从右往左依次为1,2,3„。这与具体的PC机有关。表2-1为卡号与轴号的对照表:表2-1多卡运行时卡号与轴号对照表第1轴第2轴第3轴第4轴卡10123卡24567卡3891011卡n(n-1)*4(n-1)*4+1(n-1)*4+2(n-1)*4+3DMC1000卡中X2接口是同步启停信号STA和STP的输入口(DMC1000B卡中该输入口位于X3接口上)。如果有两块以上的卡要同时启停,相关控制卡技术支持热线:0755-26417593网址:www.szleadtech.com.cn15\nDMC1000/DMC1000B用户手册Version2.1的接口中对应的引脚应联接在一起。以3块DMC(1000、1000B)运动控制卡为例,其接线方式如图2-21所示:图2-21多卡同时启停的连接方式2.4运动控制平台位置传感器及控制信号布局示例雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡每轴都配有2个限位信号、2个减速信号和1个原点信号输入接口。每路信号都进行了光电隔离,以减少外界对控制卡内部的干扰,保证运动控制的可靠性。图2-22为一般运动平台位置传感器及控制信号的布置图。图2-22运动平台位置传感器及控制信号的布置图技术支持热线:0755-26417593网址:www.szleadtech.com.cn16\nDMC1000/DMC1000B用户手册Version2.12.5步进电机驱动器接线示例2.5.1单端输出接法DMC(1000、1000B)卡第1轴与雷赛公司的M415B步进电机驱动器的接线方法如图2-23所示:图2-23单端输出接线图2.5.2差分输出接法DMC(1000、1000B)卡第1轴与雷赛公司MD556步进电机驱动器的接线方法如图2-24所示:图2-24差分输出接线图技术支持热线:0755-26417593网址:www.szleadtech.com.cn17\nDMC1000/DMC1000B用户手册Version2.13硬件配置与安装3.1硬件配置雷泰(Leadtech)DMC1000∕DMC1000B卡支持即插即用功能,其I/O地址的选择由系统BIOS自动指定,跟所有的支持即插即用的PCI卡(如声卡,Modem卡,网卡)一样,系统BIOS均可为其自由分配一个工作地址,您也可在系统BIOS中手工设置。DMC1000∕DMC1000B卡上有多组跳线开关J1~J8∕SW1~SW8和拨码开关S1∕SW10-SW11,分别用于设置DMC1000∕DMC1000B卡的工作方式和参数。3.1.1跳线配置跳线开关用于设置指令脉冲输出方式为差分输出或单端输出。DMC1000B卡中表示为SW1~SW8,设置方式如图3-1和图3-2所示;而DMC1000卡中则表示为J1~J8,设置方式如图3-3和图3-4所示。表3-1为脉冲和方向信号的跳线表。图3-1DMC1000B差分输出跳线设置图3-2DMC1000B单端输出跳线设置图3-3DMC1000差分输出跳线设置图3-4DMC1000单端输出跳线设置表3-1脉冲和方向信号跳线表差分输出时,单端输出时,针脚号针脚名1脚和2脚短路2脚和3脚短路2PUL0+SW2∕J1SW2∕J14DIR0+SW1∕J2SW1∕J2技术支持热线:0755-26417593网址:www.szleadtech.com.cn18\nDMC1000/DMC1000B用户手册Version2.1差分输出时,单端输出时,针脚号针脚名1脚和2脚短路2脚和3脚短路6PUL1+SW4∕J3SW4∕J38DIR1+SW3∕J4SW3∕J435PUL2+SW6∕J5SW6∕J537DIR2+SW5∕J6SW5∕J639PUL3+SW8∕J7SW8∕J741DIR3+SW7∕J8SW7∕J8注:出厂时的缺省设置为SW1~SW8(J1~J8)全为1脚和2脚短路,即差分输出方式。3.1.2开关配置DMC1000卡中配置了一个拨码开关S1用于设置EL限位模式;而DMC1000B中配置了两个拨码开关SW10和SW11,其中SW10用于设置EL限位模式,SW11用来设定输出口的上电初始电平。3.1.2.1拨码开关SW10∕S1如图3-5所示,拨码开关SW10.1~SW10.4(DMC1000卡中为S1)用来设定EL限位模式为常开型还是常闭型。EL限位的缺省设定全部为OFF,即各轴均为常开限位模式。表3-2为SW10(S1)拨码开关状态表,ON代表常闭限位模式,OFF代表常开限位模式。表3-2限位拨码开关表开关号轴号常开模式常闭模式SW10.1(S1.1)0OFF(出厂设置)ONSW10.2(S1.2)1OFF(出厂设置)ONSW10.3(S1.3)2OFF(出厂设置)ONSW10.4(S1.4)3OFF(出厂设置)ON注:SW10(S1)开关的第1位为最左端一位。技术支持热线:0755-26417593网址:www.szleadtech.com.cn19\nDMC1000/DMC1000B用户手册Version2.13.1.2.2拨码开关SW11(DMC1000B)DMC1000B卡中有拨码开关SW11.1~SW11.4,其用来设定输出口的上电初始电平。对应该关系如表3-3如示:表3-3DMC1000B输出口拨码开关表开关号输出口号高电平低电平SW11.1OUT21—OUT27OFF(出厂设置)ONSW11.2OUT13—OUT20OFF(出厂设置)ONSW11.3OUT5—OUT12OFF(出厂设置)ONSW11.4OUT1—OUT4OFFON(出厂设置)DMC1000卡输出口的上电初始电平为固定状态,不能进行设置,其具体状态如表3-4所示:表3-4DMC1000输出口初始电平输出口号初始电平OUT1—OUT4低电平OUT5—OUT12高电平3.2硬件安装雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡硬件结构遵从32bitPCI卡的结构标准,其安装方法类同于普通32bitPCI卡的安装,具体参考步骤如下:1)配戴静电腕带或触摸地线,完全释放操作员身上的静电;2)带好防静电手套,打开DMC1000∕DMC1000B的包装,参考HU3.1硬件配置UH的说明,按照实际应用的需求,完成硬件配置;3)使用辅助接口的用户,请将辅助接口与DMC1000∕DMC1000B对应的插座连接,并确保连接牢固,可靠;4)关闭PC机以及一切与PC相连的设备;5)打开PC机的机箱;6)选择一个靠近处理器的32bitPCI插槽,将DMC1000∕DMC1000B垂直插入插槽中;7)将DMC1000∕DMC1000B用螺钉紧固在PC机机箱上,确保紧固、可靠。技术支持热线:0755-26417593网址:www.szleadtech.com.cn20\nDMC1000/DMC1000B用户手册Version2.14软件系统概述雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡软件系统包括:驱动程序、运动控制函数库、演示程序、例子程序。4.1硬件驱动程序雷泰(Leadtech)DMC1000∕DMC1000B配套提供Windows98/2000/XP/Win7等操作系统环境下的驱动程序(DMC1000卡无Windows7操作系统下的驱动程序)。客户可以根据自己的需要选择相应的系统平台来开发适合自己的应用软件。硬件驱动程序具体安装方法请参考:H5驱动程序安装U。4.2运动控制函数库为了方便用户在DMC1000∕DMC1000B卡上快速开发出功能强大的应用软件,雷赛公司采用科学的函数命名体系,为用户提供一套功能齐全,易学易用的函数库。用户只需根据自己的实际需要调用其中的一部分函数即可开发出各种用途的强大软件。注:各函数具体功能介绍参考附录:H8.2.2函数说明U。4.2.1初始化、关闭运动控制卡在操作雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡之前,必须调用控制卡初始化函数为运动控制卡分配资源。同样,当结束对运动控制卡的操作时,必须调用控制卡关闭函数释放运动控制卡所占用的系统资源,使得所占资源可被其它设备使用。具体相关函数和功能如表4-1所示:表4-1初始、关闭控制卡函数说明名称功能参考1d1000_board_init初始化DMC1000/DMC1000B卡并分配系统资源HU8.2.2.1UH2d1000_board_close关闭DMC1000/DMC1000B卡并释放系统资源HU8.2.2.1UH注意:程序结束时,必须调用d1000_board_close()函数释放系统资源。例程:初始化和关闭控制卡(以标准C语言为例说明,下同)CardCount=d1000_board_init();if(CardCount==0){printf(“\n没有发现运动控制卡”);getch();return();}技术支持热线:0755-26417593网址:www.szleadtech.com.cn21\nDMC1000/DMC1000B用户手册Version2.1„„d1000_board_close();„„4.2.2设置脉冲输出模式雷泰(Leadtech)DMC1000∕DMC1000B卡采用脉冲指令控制步进∕伺服电机。虽然脉冲指令是一个十分容易理解的概念,但由于市面上众多驱动器厂家对信号接口的要求各有不同,所以在使用控制卡控制不同型号的驱动器时,必须对脉冲信号输出方式进行正确设定,系统才能正常工作。相关函数和功能如表4-2所示:表4-2脉冲设置函数说明名称功能参考1d1000_set_pls_outmode设置指定轴的脉冲输出模式HU8.2.2.2UH注意:在调用运动控制函数之前应先调用该函数来设置指令脉冲模式。指令脉冲包括两项基本信息:电机运转距离即脉冲数和电机转动方向。有两种基本指令模式:两种基本模式如表4-3所示:表4-3脉冲指令模式表模式PULn-脚输出DIRn-脚输出方向脉冲(pulse/dir)脉冲信号方向信号(电平)双脉冲(CW/CCW)正向(CW)脉冲反向(CCW)脉冲注:具体设置请参考d1000_set_pls_outmode函数具体说明HU8.2.2.2UH。4.2.2.1脉冲∕方向模式在此模式下,PULn-端子输出指令脉冲串,脉冲数对应电机运行的相应“距离”,而脉冲频率对应电机运行“速度”。DIRn-端子输出方向信号,该信号的输出电平对应电机的转动方向。此种模式在电机驱动器中应用最多。脉冲信号可以设置为上升沿有效,即脉冲信号常态为低电平,当变为高电平时电机走一步;也可设置为下降沿有效,即脉冲信号常态为高电平,当变为低电平时电机走一步。所以实际上此种模式下有两种指令类型,如图4-1所示。图4-1脉冲/方向信号图技术支持热线:0755-26417593网址:www.szleadtech.com.cn22\nDMC1000/DMC1000B用户手册Version2.14.2.2.2双脉冲模式在此模式下,PULn-和DIRn-端子分别表示正向(CW)和反向(CCW)脉冲输出。从PULn-端子输出的脉冲使电机朝正方向转动,而从DIRn-端子输出的脉冲使电机朝负方向转动。脉冲信号有上升沿或下降沿有效的选择,所以该种模式下也有两种指令类型,如图4-2所示:图4-2双脉冲信号图例程(C代码):„„d1000_set_pls_outmode(0,0);//表示设置第0轴脉冲输出模式为方向脉冲模式,PULn-信号上升沿有效。„„4.2.3单轴位置和速度控制雷泰(Leadtech)DMC1000∕DMC1000B在表述运动轨迹时可以用绝对坐标和相对坐标这两种模式,如图4-3所示。图4-3绝对坐标与相对坐标中轨迹终点的不同表达方式技术支持热线:0755-26417593网址:www.szleadtech.com.cn23\nDMC1000/DMC1000B用户手册Version2.1这两种模式各有优点,如:在绝对坐标模式中用一系列坐标点定义一条曲线,如果要修改中间某点坐标时,不会影响后续点的坐标;在相对坐标模式中,用一系列坐标点定义一条曲线,用循环命令可以重复这条曲线轨迹多次。在DMC(1000、1000B)函数库中距离或位置的单位为脉冲;速度单位为脉冲/秒;时间单位为秒。4.2.3.1梯形速度曲线运动模式通常位置控制采用这种速度控制模式。电机在运动一段指定距离时,其运动速度按梯形曲线变化,如图4-4所示。速度自动减速运行速度脉冲停止输出起始速度时间图4-4梯形速度曲线运动速度之所以要按梯形曲线变化,是因为:电机转子和被拖动的物体具有惯性,不可能在瞬间达到指定速度,因此应该有一定的加速过程。减速时亦是类似,否则电机会因为瞬间力矩不足而出现丢步、过冲(步进电机系统)或振荡(伺服电机系统)现象。实现梯形速度曲线控制的点位运动函数如表4-4所示:表4-4梯形点位控制相关函数说明名称功能参考1d1000_start_t_move以梯形速度曲线控制相对坐标的点位运动HU8.2.2.4UH2d1000_start_ta_move以梯形速度曲线控制绝对坐标的点位运动HU8.2.2.4UH注意:在DMC(1000、1000B)中加减速是对称的,所以加速时间也即减速时间。例程:执行以梯形速度曲线作点位运动„„d1000_stat_t_move(0,50000,500,6000,0.1);//设置0号轴相对坐标下运动距离为50000个脉冲、起始速度为500脉冲/秒、运行速度为6000脉冲/秒、加、减速时间均为0.1秒、以梯形速度曲线开始执行运动„„技术支持热线:0755-26417593网址:www.szleadtech.com.cn24\nDMC1000/DMC1000B用户手册Version2.14.2.3.2S形速度曲线运动模式梯形速度曲线虽然简单,但它的速度曲线不平滑,其加速度有突变,因而运动中有冲击现象,容易引起机器噪声和传动机构的磨损。若将加速度改为线性变化,则速度曲线相应将变得光滑,如HU2.3.2.2速度控制UH中的B部分S形速度曲线说明所示。加速和减速阶段均变得象“S”形状。采用此种速度曲线,运动更平稳,且有助于缩短加速过程、降低运动装置的振动和噪声,以及延长机械传动部分的寿命。设置S形速度曲线及其点位运动的函数如表4-5所示:表4-5S形速度控制相关函数说明名称功能参考1d1000_start_s_move以S形速度曲线控制相对坐标的点位运动HU8.2.2.4UH2d1000_start_sa_move以S形速度曲线控制绝对坐标的点位运动HU8.2.2.4UH例程:执行以S形速度曲线作点位运动„„d1000_stat_s_move(0,50000,500,6000,0.1);//设置0号轴相对坐标下运动距离为50000个脉冲、起始速度为500脉冲/秒、运行速度为6000脉冲/秒、加、减速时间均为0.1秒、以S形速度曲线开始执行运动„„4.2.3.3连续运动模式雷泰(Leadtech)DMC1000∕DMC1000B控制卡可以控制电机以梯形或S形速度曲线在指定加速时间内从初速度加速至运行速度,然后以该速度连续运行,直至调用停止指令或该轴遇到限位信号才会停止。连续运动的函数如表4-6所示:表4-6连续运动相关函数说明名称功能参考1d1000_start_tv_move以梯形速度曲线控制连续运动HU8.2.2.3UH2d1000_start_sv_move以S形速度曲线控制连续运动HU8.2.2.3UH例程:连续运动„„d1000_start_sv_move(0,500,6000,0.1);//设置0号轴起始速度为500脉冲/秒、运行速度为6000脉冲/秒、加、减速时间均为0.1秒、以S形速度曲线开始连续运动。„„4.2.3.4加减速过程的距离(脉冲数)计算对于梯形加速曲线运动,加、减速段的运动距离(脉冲数)都很容易计算:技术支持热线:0755-26417593网址:www.szleadtech.com.cn25\nDMC1000/DMC1000B用户手册Version2.1Dacc=(1/2)×(MaxVel+StrVel)×Tacc其中,Dacc:加速段距离MaxVel:运行速度StrVel:起始速度Tacc:加速时间由于DMC(1000、1000B)加、减速时对称的,所以减速段距离Ddec=Dacc。4.2.4多轴运动控制雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡单张卡可以同时控制4个轴以多种方式同时运动,包括多轴联动和直线插补。4.2.4.1多轴联动多个轴同时运动,一般称为多轴联动。DMC1000∕DMC1000B卡可以控制多个电机同时执行d1000_start_t_move或d1000_start_ta_move等单轴运动函数。所谓同时执行,是在程序中顺序调用这些函数,因为程序执行速度很快,在瞬间几个电机都开始运动,给人的感觉就是“同时开始运动”。多轴联动在各轴速度设置不当时,各轴停止时间不同、在起点与终点之间运动的轨迹也不是直线。如图4-5所示。4.2.4.2直线插补运动DMC1000∕DMC1000B控制卡可以指定同一卡上任意2轴、3轴以及4轴进行直线插补,插补运动的计算由专用函数完成,用户只需调用相应的运动函数并设置运动速度、加速度、终点位置等参数,不需要介入插补过程的计算工作。插补运动与多轴联动不同:插补运动不但能保证起点、终点位置准确,而且各轴的脉冲是按照直线斜率成比例发出的,所以在插补运动过程中的每一个时刻,其运动轨迹与理论曲线的误差总是小于一个脉冲当量,如图4-6所示。DMC1000∕DMC1000B控制卡直线插补相关函数如表4-7所示:技术支持热线:0755-26417593网址:www.szleadtech.com.cn26\nDMC1000/DMC1000B用户手册Version2.1表4-7直线插补运动相关函数说明名称功能参考1d1000_start_t_line启动多轴相对坐标的直线插补HU8.2.2.5UH2d1000_start_ta_line启动多轴绝对坐标的直线插补HU8.2.2.5UH二轴直线插补:如图4-7所示,2轴直线插补从P0点运动至P1点,X、Y轴同时启动,并同时到达终点。X、Y轴的运动速度之比为ΔX:ΔY,与合成的矢量速度ΔP的关系为:22PXYttt调用二轴直线插补函数时,需要设定插补矢量速度,包括其初始速度StrVel和运行速度MaxVel等参数。二轴直线插补例程(C代码):ShortAxisArray[2];技术支持热线:0755-26417593网址:www.szleadtech.com.cn27\nDMC1000/DMC1000B用户手册Version2.1ShortDistArray[2];AxisArray[0]=0;//轴0、轴1直线差补AxisArray[1]=1;DistArray[0]=1000;//△X=1000脉冲DistArray[1]=2000;//△Y=2000脉冲d1000_start_t_line(2,AxisArray,DistArray,400,1000,0.1);//起始速度为400pps,运行速度为1000pps,加、减速时间均为0.1秒。三轴直线插补:如图4-8示,XYZ3轴直线插补从P0点运动至P1点。插补过程中3轴的速度比为ΔX:ΔY:ΔZ,与合成的矢量速度ΔP的关系为:222PXYZtttt图4-8三轴直线插补调用3轴直线插补时,需要设定插补矢量速度,包括初速度StrVel和运行速度MaxVel等参数。3轴直线插补例程(C代码):ShortAxisArray[3];ShortDistArray[3];AxisArray[0]=0;//轴0、轴1、轴2直线差补AxisArray[1]=1;AxisArray[2]=2DistArray[0]=1000;//△X=1000pDistArray[1]=2000;//△Y=2000pDistArray[2]=3000;//△Z=3000pd1000_start_t_line(3,AxisArray,DistArray,400,1000,0.1);//起始速度为400pps,运行速度为1000pps,加、减速时间均为0.1秒。技术支持热线:0755-26417593网址:www.szleadtech.com.cn28\nDMC1000/DMC1000B用户手册Version2.14.2.5回原点运动在进行精确的位置控制之前,需要设定运动坐标系的原点。如图4-9所示为回原点运动的过程。图4-9回原点过程从图4-9可以看出,启动回原点运动后,设备向原点方向运动;当碰到减速开关后,电机开始减速。当速度减至初速度后,继续以该速度运行,直到原点信号有效便立即停止,该位置即为原点位置。这种方式在高速回原点的运动中特别有用。具体相关函数如表4-8所示:表4-8回原点运动相关函数说明名称功能参考1d1000_home_move启动指定轴进行回原点运动HU8.2.2.7UH2d1000_set_sd设置减速信号是否使能8.2.2.11例程:回原点运动„„d1000_home_move(0,500,5000,0.1);//设置0号轴以起始速度为500pps,运行速度为5000pps,加速时间为0.1s正向回原点运动while(d1000_check_done(0)==0)//等待回原点动作完成{}d1000_set_command_pos(0,0);//将当前第0轴位置清零,即设为第0轴原点位置„„4.2.6指令脉冲计数DMC1000∕DMC1000B每一轴都有一个24位的指令脉冲计数器,记录了当前对应轴的绝对指令脉冲位置值。可以通过调用d1000_get_command_pos函数来读取该计数器的值,也可以通过调用d1000_set_command_pos函数来设置该计数器的值。具体相关函数如表4-9所示:技术支持热线:0755-26417593网址:www.szleadtech.com.cn29\nDMC1000/DMC1000B用户手册Version2.1表4-9指令脉冲计数相关函数说明名称功能参考1d1000_get_command_pos读取指令位置计数器值HU8.2.2.9UH2d1000_set_command_pos设置指令位置计数器值HU8.2.2.9UH注:在点位运动中,每次可以输出的最大脉冲个数为16777215。例程:位置操作„„d1000_set_command_pos(0,100);//设置轴0的脉冲位置为100position=d1000_get_command_pos(0);//读取轴0的当前位置值至变量position„„4.2.7通用I/O控制雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡硬件上为用户提供了通用数字输入输出接口。用户可以使用这些数字I/O口用于检测开关信号、传感器信号等输入信号,或者输出继电器、指示灯等输出设备的控制信号。相关的函数如表4-10所示:表4-10通用IO相关函数说明名称功能参考1d1000_out_bit通用输出口输出HU8.2.2.10UH2d1000_in_bit读取通用输入口状态HU8.2.2.10UH3d1000_get_outbit读取通用输出口状态HU8.2.2.10UH例程:通用输入输出If(d1000_in_bit(1)==0)//读取INPUT1输入口的状态,判断按键是否按下{d1000_out_bit(1,0);//如果按键按下,OUT1口输出为低电平,LED发光}else{d1000_get_outbit(1,1);//如果按键未按,OUT1口输出为高电平,LED不亮}„„技术支持热线:0755-26417593网址:www.szleadtech.com.cn30\nDMC1000/DMC1000B用户手册Version2.14.3演示程序为协助用户更快掌握DMC(1000、1000B)的应用技巧、编写出更适合于特定自动化设备的应用软件,雷赛公司还随卡提供一个演示软件Motion(1000、1000B)。它具有多种运动控制功能和I/O测试功能。将DMC(1000、1000B)所配光盘放入光驱中,在相应的目录motion(1000、1000B)下,将其全部拷贝到计算机硬盘的任意指定位置后,运行motion(1000、1000B).exe,即可对控制卡的各项主要功能进行检测、学习。利用Motion(1000、1000B)软件,用户既可以快速地了解、熟悉DMC(1000、1000B)运动控制卡的软硬件功能,又可以方便快捷地测试运动控制系统在执行各种动作时的性能及特性。详细资料可参考:HU6.演示软件及应用UH。4.4例子程序雷泰(Leadtech)DMC1000∕DMC1000B运动控制卡为了方便用户利用VC或VB等编程工具对DMC(1000、1000B)进行应用开发,特针对典型的功能如:单轴运动、回零运动、插补运动等,提供了示例源代码。用户可以直接将配套的CD中相应目录sample中的代码作为程序模块,直接拷贝到您的程序工程中使用。技术支持热线:0755-26417593网址:www.szleadtech.com.cn31\nDMC1000/DMC1000B用户手册Version2.15驱动程序安装安装DMC(1000、1000B)控制卡驱动程序的过程与安装其它即插即用卡(如MODEM卡,显卡等)的驱动程序十分类似,因此本手册只提供WindowsXP/2000/98/Win7操作系统环境下的安装示例。(注:DMC1000与DMC1000B使用不同的驱动程序)5.1在Windows2000/XP操作系统环境中安装步骤1、关闭PC机并打开机箱,在PCI槽中插入DMC(1000、1000B)运动控制卡,其过程和注意事项请认真参照DMC(1000、1000B)硬件概述部分:3.硬件配置与安装;2、启动PC机,进入Windows操作系统后,系统会提示发现新硬件,并弹出如图5-1所示“找到新的硬件向导”对话框,请先不要操作此对话框,待进行第3个步骤后再操作此对话框(注:若系统未弹出此对话框或不慎将其关闭,请右键单击“我的电脑”—>选择“管理(G)”—>单击“设备管理器”,在“设备管理器”中找到带有黄色感叹号的“PCIDevice”选项,右键单击此选项,选择“更新驱动程序(P)„”即可,如图5-2所示);图5-1新的硬件安装向导技术支持热线:0755-26417593网址:www.szleadtech.com.cn32\nDMC1000/DMC1000B用户手册Version2.1图5-2更新驱动程序3、将DMC(1000、1000B)所配光盘放入光驱中,在相应的目录下,打开“inf_winxp”资料夹,找到regist2K.bat批处理文件,双击运行,系统将弹出一个如图5-3所示的DOS界面,开始自动注册DMC(1000、1000B)卡的相关信息,等待DOS界面消失,即注册自动完成。图5-3系统自动注册DMC1000B卡相关信息4、返回图5-1所示的“找到新的硬件向导”对话框。选择“从列表或指定位置安装(高级)(S)”,点击“下一步”。5、在图5-4所示的向导中,点选“在这些位置中搜索最佳驱动程序”并勾选上“在搜索中包括这个位置”,点击“浏览”。6、在弹出的“浏览文件夹”的窗口中,指向“inf_winxp”所在目录后,点击“确定”。技术支持热线:0755-26417593网址:www.szleadtech.com.cn33\nDMC1000/DMC1000B用户手册Version2.1图5-4浏览并选择安装文件夹INF7、点击“下一步”继续安装;8、安装完成后,显示界面如图5-5所示,点击“完成”。图5-5完成DMC(1000、1000B)驱动程序的安装9、打开设备管理器,如图5-6所示,在“LeisaiController”选项下可以看到DMC(1000、1000B)的驱动程序“DMC1000”和相关注册信息“LeisaiDriver”,至此,DMC(1000、1000B)控制卡就可以正常使用了。(注:只有当这两个选项都正确安装并正常运行后,DMC1000、DMC1000B卡才能正常使用);技术支持热线:0755-26417593网址:www.szleadtech.com.cn34\nDMC1000/DMC1000B用户手册Version2.1图5-6正确安装驱动程序后的设备信息5.2在Windows7操作系统环境中安装步骤1、关闭PC机并打开机箱,在PCI槽中插入DMC1000B运动控制卡(注:DMC1000卡无Windows7驱动程序),其过程和注意事项请认真参照DMC1000B硬件概述部分:3.硬件配置与安装;2、启动PC机,进入Windows7操作系统后,系统会提示发现新硬件,并在右下方的任务栏中出现如图5-7所示的信息提示,请先不要点击此信息提示,或直接将其关闭;图5-7系统提示发现新硬件3、将DMC1000B所配光盘放入光驱中,在相应的目录下,打开“inf_Win7”资料夹,找到“REG_Win7.bat”批处理文件,如图5-8所示,单击鼠标右键,选择“以管理员身份运行(A)”,系统将弹出一个如图5-9所示的DOS界面,开始自动注册DMC1000B卡的相关信息,等待DOS界面消失,即注册自动完成(注意:若在安装过程中出现提示或警告信息,请选择“安装”或“是”);技术支持热线:0755-26417593网址:www.szleadtech.com.cn35\nDMC1000/DMC1000B用户手册Version2.1图5-8以管理员身份运行批处理文件图5-9系统自动注册DMC1000B卡相关信息4、鼠标右键单击“计算机”—>选择“管理(G)”—>选择“设备管理器”,在“设备管理器”中找到带有黄色感叹号的“PCI设备”选项,右键单击此选项,选择“更新驱动程序软件(P)„”,如图5-10所示:图5-10更新驱动程序技术支持热线:0755-26417593网址:www.szleadtech.com.cn36\nDMC1000/DMC1000B用户手册Version2.15、在弹出如图5-11所示的对话框中,选择“浏览计算机以查找驱动程序软件(R)”;图5-11查找驱动程序软件6、在弹出的如图5-12所示的“更新驱动程序软件”对话框中,点击“浏览”,指向“inf_Win7”所在目录后,点击“确定”并点击“下一步”继续安装;图5-12浏览并选择安装文件夹INF7、若系统弹出如图5-13所示的安全提示对话框,请选择“始终安装此驱动程序软件(I)”,并继续安装;技术支持热线:0755-26417593网址:www.szleadtech.com.cn37\nDMC1000/DMC1000B用户手册Version2.1图5-13Windows安全提示8、安装完成后,显示界面如图5-14所示,点击“关闭”;图5-14完成DMC1000B驱动程序的安装9、打开设备管理器,如图5-15所示,在“Jungo”选项下可以看到DMC1000B的驱动程序“DMC1000”和相关注册信息“WinDriver”,至此,DMC1000B控制卡就可以正常使用了。(注:只有当这两个选项都正确安装并正常运行后,DMC1000B卡才能正常使用);图5-15正确安装驱动程序后的设备信息技术支持热线:0755-26417593网址:www.szleadtech.com.cn38\nDMC1000/DMC1000B用户手册Version2.15.3在Windows98操作系统环境中安装步骤1、关闭PC机并插入DMC(1000、1000B)控制卡,其过程和注意事项请认真参照DMC(1000、1000B)硬件概述部分:3.硬件配置与安装;2、启动PC机;3、把DMC(1000、1000B)配套光盘放入光驱中,进入Windows98时会弹出如图5-16所示的新硬件安装向导,按“下一步”继续;图5-16新硬件安装向导4、在如图5-17所示的对话框中选择“搜索设备的最新驱动程序”,单击“下一步”继续;图5-17搜索设备的最新驱动程序5、在如图5-18所示的对话框中,选择“指定位置”;技术支持热线:0755-26417593网址:www.szleadtech.com.cn39\nDMC1000/DMC1000B用户手册Version2.1图5-18寻找安装路径界面6、单击“浏览”,在图5-19中找到驱动程序的路径,点击“确定”按钮,进入图5-9对话框;图5-19寻找安装路径过程图5-20完成安装路径搜索7、如图5-20所示,系统将自动找到dmc(1000、1000B).inf文件,单击“下一步”继续;8、显示如图5-21所示的对话框,单击“下一步”继续;技术支持热线:0755-26417593网址:www.szleadtech.com.cn40\nDMC1000/DMC1000B用户手册Version2.1图5-21目标文件9、安装完成后,系统将出现图5-22所示的对话框,单击“完成”即可。图5-22安装完成10、完成上面的步骤后,接下来就是要对雷泰控制卡进行注册,运行drivers目录下的regist9x.bat文件。11、打开设备管理器可以看到DMC(1000、1000B)设备和LeisaiDriver设备。技术支持热线:0755-26417593网址:www.szleadtech.com.cn41\nDMC1000/DMC1000B用户手册Version2.16演示软件及应用雷赛公司为了方便用户尽快熟悉DMC(1000、1000B)控制卡运动功能和相关函数而配套提供的一个演示软件Motion(1000、1000B)。利用这个软件,用户既可以很快地熟悉DMC(1000、1000B)控制卡的软硬件功能,又可以方便快捷地测试电机驱动电路和系统的运动性能。当您将DMC(1000、1000B)运动控制卡的软硬件正确地安装到PC机上后,即可运行Motion(1000、1000B)软件,软件启动界面如图6-1所示。图6-1MOTION1000B软件启动界面Motion(1000、1000B)启动界面上有三个操作按钮,其功能如下:运动操作:单击该按钮,进入运动控制操作界面,可以进行各种运动的演示,如:定长运动、回原点运动、直线插补运动等;I/O检测:单击该按钮,进入I/O检测界面,可以进行各输入口状态的检测,输出口测试;退出:停止当前所有对软件进行的操作,退出Motion(1000、1000B)演示软件。6.1I/O检测演示进入IO检测界面,如图6-2所示,可以查看运动控制卡各轴的专用输入信号状态、通用输入信号状态和通用输出信号状态,并可控制每个通用输出信号的电平。技术支持热线:0755-26417593网址:www.szleadtech.com.cn42\nDMC1000/DMC1000B用户手册Version2.1图6-2MOTION1000BI/O检测界面卡号选择:多卡运行时,用于选择要测试的卡号;专用输入信号电平:检测每个轴的专用信号状态;通用输入信号电平:检测通用输入信号的电平状态;通用输出信号控制和电平:控制通用输出信号,并显示当前各输出口的电平状态。通过单击显示为“第X位”的按钮,可以改变相应位的电平状态。绿色表示该信号的电平为低电平,红色表示该信号的电平为高电平。6.2运动操作演示进入运动控制操作界面,如图6-3所示,可以选择希望演示的运动功能,并对该运动的各种参数进行设置。技术支持热线:0755-26417593网址:www.szleadtech.com.cn43\nDMC1000/DMC1000B用户手册Version2.1图6-3MOTION1000B运动控制操作界面界面各项介绍如下:卡号选择:多卡运行时,选择控制卡卡号;运动轴选择:选择运动控制的轴号;单轴运动参数设置:对回原点、连续运动、定长运动各轴的运动参数进行设置;运动方式选择:选择要演示的运动类型;直线插补参数设置:对插补运动的参数进行设置;位移方式选择:选择该次运动的位移方式;加速曲线选择:选择该次运动的加速度的曲线;脉冲设置:可以根据驱动器的具体要求设置脉冲输出类型;减速信号设置:设置减速信号是否有效。各按钮功能如下:加载参数:加载软件中上次保存的参数设置为当前设置,第一次运行会加载软件中默认保存的参数设置为当前设置;保存参数:将当前界面中设置的参数信息保存到软件中;启动:按照当前的设置进行运动;停止:停止当前所有轴的运动;位置清零:将“当前位置”中显示的各轴的位置设置为零。技术支持热线:0755-26417593网址:www.szleadtech.com.cn44\nDMC1000/DMC1000B用户手册Version2.17用户系统开发如果您对C、C++、VisualBasic等程序语言一点都不了解的话,我们建议您先花几天时间去阅读至少一本该语言的培训教材,并且通过练习掌握该语言的基本技巧,例如如何编写简单的程序,如何创建窗体和调用函数等。如果您曾用C、C++、VisualBasic等程序语言进行过运动控制软件的开发,并具有丰富的经验,那么可以浏览索引中的函数,并找到所需要的函数描述页码,跳转到“附录中运动函数库”查阅所需要的相关函数信息。7.1基于windows平台的应用软件结构使用雷泰控制卡的机器控制系统构架如图7-1所示:图7-1基于雷泰控制卡的机器控制系统构架从上面的示意图可以看出,控制系统的工作原理可以简单描述为:1.操作员的操作信息通过操作接口(包括显示屏和键盘)传递给机器控制软件;2.机器控制软件将操作信息转化为运动参数并根据这些参数调用DLL库中运动函数;3.运动函数调用雷泰运动控制卡驱动程序发出控制指令给控制卡;4.雷泰运动控制卡再根据控制指令发出相应的控制信号(脉冲、方向信号)给电机驱动器;5.电机驱动器根据控制信号来驱动电机运动;6.电机的运动通过机械传动机构转化为机器的动作。用户在开发应用软件(即机器控制软件)的过程中所需要做的就是针对上面所说的第1步和第2步进行编程。雷赛公司已提供支持DMC(1000、1000B)技术支持热线:0755-26417593网址:www.szleadtech.com.cn45\nDMC1000/DMC1000B用户手册Version2.1运动控制卡的硬件驱动程序和DLL运动函数库。这些函数提供了所有与运动控制相关的功能,使用极为方便。用户不需要更多了解硬件电路的细节以及运动和插补的计算细节,就能够使用C、C++、VisualBasic等程序语言调用这些函数来快速开发出自己的应用软件。用户编写的机器控制软件典型流程如图7-2所示:图7-2控制软件的典型流程7.2VisualBasic6.0环境下编程确保DMC(1000、1000B)运动控制卡已经插入到您的计算机插槽中,并安装好驱动程序、Motion(1000、1000B)测试软件和VB,在调用DMC(1000、1000B)运动函数之前,请做好下面几件事情:1、启动Motion(1000、1000B)测试软件,进行所需要功能的简单测试。如:单轴定长运动,以确定DMC(1000、1000B)运动控制设备已经正常工作;2、建立自己的工作目录,如:d:\vbMotion(注:此目录名可以自己指定);3、将DMC1000.bas和DMC1000.dll文件拷贝到该目录下(此文件在配套光盘Module目录下可以找到);4、运行VB,并建立一个工程,然后保存此新建的工程到vbMotion目录中;5、将运动函数库链接到您的工程项目中:A、在VB编译器的“工程(P)”菜单中选择“添加模块”;B、选择“现存”;技术支持热线:0755-26417593网址:www.szleadtech.com.cn46\nDMC1000/DMC1000B用户手册Version2.1C、选择“DMC1000.bas”;D、选择“确定”6、运动函数的调用:当您将运动函数链接到您的工程中后,就可以像调用其他API函数一样直接调用运动函数。每个函数的具体功能,请参考HU8.2.2函数说明UH,当然还可以打开模块文件DMC1000.bas了解每个函数的具体定义。在编程过程中,您可以参阅我们提供的运动函数编程示例。我们提供的VB编程示例源代码,存放在光盘的Samples目录下,只要您将控制卡及其驱动程序安装好,并安装了VB编译器,即可直接运行这些源代码。7.3VisualC++6.0环境下编程确保DMC(1000、1000B)运动控制卡已经插入到您的计算机插槽中,安装好驱动程序、Motion(1000、1000B)演示软件和VC,在调用DMC(1000、1000B)运动函数之前,请做好下面几件事情:1、启动Motion(1000、1000B)测试软件,进行所需要功能的简单测试。如:单轴定长运动,以确定DMC(1000、1000B)运动控制设备已经正常工作;2、运行VC,并建立一工程,将工程命名为vcMotion(注:此工程名可以自己指定),路径为d:\;3、将DMC1000.lib、DMC1000.h和DMC1000.dll文件拷贝到该目录下(这两个文件在配套光盘Module目录下);4、将运动函数链接到您的工程中:将DMC1000.lib加入到工程中,然后在调用运动函数的文件头部代码加入#include“DMC1000.h”语句;5、运动函数的调用:将运动函数链接到工程中后,您就可以像调用其它WindowsAPI函数一样,调用运动函数。每个函数的具体功能,请参考HU8.2.2函数说明UH,当然,还可以打开头文件DMC1000.h了解每个函数的具体语法定义。在编程过程中,您可以参阅我们提供的运动函数编程示例,我们提供了VC的编程示例源代码,存放在光盘的Samples目录下,只要您将控制卡及其驱动程序安装好,并安装好VC编译器,即可直接运行这些源代码。技术支持热线:0755-26417593网址:www.szleadtech.com.cn47\nDMC1000/DMC1000B用户手册Version2.17.4编程举例本节详细介绍如何编写一个简单的程序:点位运动控制。通过这个程序您可以了解到如何应用VC、VB等程序语言调用DMC(1000、1000B)运动控制卡的各种运动函数来实现运动控制功能。在动手编写控制程序之前,请确定:1、PC机上安装有您所需要的开发工具,如VisualC++6.0或VisualBasic6.0等。2、已经按照前述章节中相关步骤安装了控制卡,用Motion(1000、1000B)测试软件对硬件进行简单测试,以确认设备已经正常工作。如果您希望更深入了解DMC(1000、1000B)运动控制卡的编程方法,可以参阅光盘中Samples目录下的例程源代码。7.4.1VisualC++6.0编程举例1)打开VisualC++6.0;2)新建一个工程;3)选择MFCAPPWizard(exe);4)选择工程保存路径,如:E\;5)输入工程名,如:test,如图7-3所示。图7-3建立工程6)按“确定”按钮,在应用程序类型中选择“基本对话”,按“确定”,建立工程。7)修改对话框内容,增加按钮“启动”(命名IDC_BUTTON_Start)和“停技术支持热线:0755-26417593网址:www.szleadtech.com.cn48\nDMC1000/DMC1000B用户手册Version2.1止”(命名为IDC_BUTTON_Stop),如图7-4所示。图7-4添加控件8)在Motion(1000、1000B)安装目录下找到DMC1000.h和DMC1000.lib文件拷贝到E:\test目录下。9)选择“工程”->“添加工程”->“文件”,选中DMC1000.lib文件加入到工程中。10)打开testDlg.cpp文件,在头部添加语句:#include“DMC1000.h”,如图7-5所示。图7-5添加头文件11)在CTestDlg::OnInitDialog()函数中添加代码:d1000_board_init();如图技术支持热线:0755-26417593网址:www.szleadtech.com.cn49\nDMC1000/DMC1000B用户手册Version2.17-6所示。图7-6添加初始化函数12)在CTestDlg中添加一个成员函数OnCacel,在该函数中添加代码:d1000_board_close();CDialog::OnCancel();如图7-7所示。图7-7添加关闭控制卡函数13)双击“启动”按钮在按钮点击事件中输入代码:d1000_start_t_move(0,1000,400,1000,0.1);双击“停止”按钮在按钮点击时间中输入代码:d1000_decel_stop(0);如图7-8所示。技术支持热线:0755-26417593网址:www.szleadtech.com.cn50\nDMC1000/DMC1000B用户手册Version2.1图7-8添加运动控制函数14)编译,运行,按下如图7-9所示界面中的“启动”按钮,第0轴就会输出1000个脉冲。运动中可以按下“停止”按钮,即可减速停止脉冲输出。图7-9运行程序7.4.2VisualBasic6.0编程举例1)在磁盘上新建一个目录,如E:\test;2)打开VisualBasic6.0;3)新建一个工程,在对话框上添加按钮“启动”(名称修改为CB_Start)和“停止”(名称修改为CB_Stop),如图7-10所示。技术支持热线:0755-26417593网址:www.szleadtech.com.cn51\nDMC1000/DMC1000B用户手册Version2.1图7-10添加控件4)把该工程保存在E:\test目录下。5)在Motion(1000、1000B)安装目录找到DMC1000.bas和DMC1000.dll文件,拷贝到test目录下。6)选择“工程”->“添加模块”->“现存",找到test目录下的DMC1000.bas文件,添加到工程中。如图7-11所示。图7-11添加模块7)双击窗口控件,在Form_Load事件中添加代码:d1000_board_init选择Unload事件,在Form_Unload事件中添加代码:d1000_board_close双击“启动”按钮,在CB_Start_Click事件中添加代码:d1000_start_t_move0,1000,400,1000,0.1技术支持热线:0755-26417593网址:www.szleadtech.com.cn52\nDMC1000/DMC1000B用户手册Version2.1双击“停止”按钮,CB_Stop_Click事件中添加代码:d1000_decel_stop0如图7-12所示。图7-12添加运动控制函数8)运行,按下如图7-13所示界面中的“启动”按钮,第0轴就会输出1000个脉冲。运动中可以按下“停止”按钮,便会减速停止脉冲输出。图7-13运行VB所写程序技术支持热线:0755-26417593网址:www.szleadtech.com.cn53\nDMC1000/DMC1000B用户手册Version2.18附录8.1硬件信号接口表8.1.1接口X1引脚定义如图8-1所示,X1是DMC(1000、1000B)电机控制、I/O信号控制的主要接口,为SCSI-Ⅱ型68针插座。D3210-+-+-+-+NGG-3+3-G-2+2-+G-1+1-+G-0+0-+111L1L000L0LDX4321RDD3L3LRDD2L2LRDD1L1LRDD0L0LIRIRUUIRIRUUNEININININOSSEEO+SSEEOSSEEOSSEEDDPPDDPPG43210987654321098765432103333322222222221111111111987654321B/000-1CMD87654321098765432109876543210987656666666665555555555444444444433333D21021-+-+-+-+6N5432101T1T1T9T8T7T6T5T4T3TTT333L3L222L2L1DDGX11111198765UUUUUUUUUUUUIRIRUUIRIRUUINVEINININININININININININOOOOOOOOOOOODDPPDDPP图8-1接口X1示例其引脚号与信号的对应关系见表8-1所示:表8-1接口X1引脚号与信号关系表针脚名称说明针脚名称说明1GNDBUS电源地35PUL2+第2轴输出脉冲信号(+)2PUL0+第0轴输出脉冲信号(+)36PUL2-第2轴输出脉冲信号(-)3PUL0-第0轴输出脉冲信号(-)37DIR2+第2轴输出方向信号(+)4DIR0+第0轴输出方向信号(+)38DIR2-第2轴输出方向信号(-)5DIR0-第0轴输出方向信号(-)39PUL3+第3轴输出脉冲信号(+)6PUL1+第1轴输出脉冲信号(+)40PUL3-第3轴输出脉冲信号(-)7PUL1-第1轴输出脉冲信号(-)41DIR3+第3轴输出方向信号(+)8DIR1+第1轴输出方向信号(+)42DIR3-第3轴输出方向信号(-)9DIR1-第1轴输出方向信号(-)43OUT1隔离通用输出信号110EL0+隔离第0轴正向限位信号(+)44OUT2隔离通用输出信号211EL0-隔离第0轴负向限位信号(-)45OUT3隔离通用输出信号312SD0+隔离第0轴正向减速信号(+)46OUT4隔离通用输出信号413SD0-隔离第0轴负向减速信号(-)47OUT5隔离通用输出信号514ORG0隔离第0轴原点信号48OUT6隔离通用输出信号615EL1+隔离第1轴正向限位信号(+)49OUT7隔离通用输出信号7技术支持热线:0755-26417593网址:www.szleadtech.com.cn54\nDMC1000/DMC1000B用户手册Version2.1针脚名称说明针脚名称说明16EL1-隔离第1轴负向限位信号(-)50OUT8隔离通用输出信号817SD1+隔离第1轴正向减速信号(+)51OUT9隔离通用输出信号918SD1-隔离第1轴负向减速信号(-)52OUT10隔离通用输出信号1019ORG1隔离第1轴原点信号53OUT11隔离通用输出信号1120EL2+隔离第2轴正向限位信号(+)54OUT12隔离通用输出信号1221EL2-隔离第2轴负向限位信号(-)55IN5隔离通用输入信号522SD2+隔离第2轴正向减速信号(+)56IN6隔离通用输入信号623SD2-隔离第2轴负向减速信号(-)57IN7隔离通用输入信号724ORG2隔离第2轴原点信号58IN8隔离通用输入信号825EL3+隔离第3轴正向限位信号(+)59IN9隔离通用输入信号926EL3-隔离第3轴负向限位信号(-)60IN10隔离通用输入信号1027SD3+隔离第3轴正向减速信号(+)61IN11隔离通用输入信号1128SD3-隔离第3轴负向减速信号(-)62IN12隔离通用输入信号1229ORG3隔离第3轴原点信号63IN13隔离通用输入信号1330IN1隔离通用输入信号164IN14隔离通用输入信号1431IN2隔离通用输入信号265IN15隔离通用输入信号1532IN3隔离通用输入信号366EXGND外部电源地,输入33IN4隔离通用输入信号467VDD外部电源+24V,输入34EXGND外部电源地,输入68IN16隔离通用输入信号16注:当需要使用IO信号时,如限位、原点等专用信号或通用IO信号时,请务必在67脚和66脚输入+24VDC电源(请不要将电源接反)。使用ACC68_V3.2接线板的用户请注意:其上标有“VDD”与“EXGND”的引脚号,这些引脚仅仅是为接线板的电源指示灯提供电源的,当要控制IO信号时,仍需在67脚与66脚输入外部+24VDC电源。8.1.2接口X2(X3)引脚定义X2(DMC1000B卡中为X3)是多卡同时启动、同时停止、同时减速信号输入/输出口。其示意图如图8-2所示:CAPAPDCTTTTNVSSSSG654321DMC-1000/B图8-2X2/X3接口示意图其针脚号和针脚名定义见表8-2所示:技术支持热线:0755-26417593网址:www.szleadtech.com.cn55\nDMC1000/DMC1000B用户手册Version2.1表8-2接口X2/X3引脚号和信号关系表序号名称说明1GNDPC电源地2STP同时停止信号输入/输出3STA同时启动信号输入/输出4STP同时停止信号输入/输出5STA同时启动信号输入/输出6VCCPC电源(DMC1000B卡中是3.3V电压)8.1.3接口J1(DMC1000B)引脚定义DMC1000B卡中有扩展IO口的接口,其标志为J1,且其上所有IO口都为非隔离的通用输入输出口。其示意图如图8-3所示:图8-3DMC1000B接口J1示意图其针脚号和针脚名定义见表8-3所示:表8-3DMC1000B接口J1引脚号和信号关系表脚号名称I/O功能脚号名称I/O功能1IN17I非隔离通用输入信号1720GNDOPC电源地,输出2IN18I非隔离通用输入信号1821OUT13O非隔离通用输出信号133IN19I非隔离通用输入信号1922OUT14O非隔离通用输出信号144IN20I非隔离通用输入信号2023OUT15O非隔离通用输出信号155IN21I非隔离通用输入信号2124OUT16O非隔离通用输出信号166IN22I非隔离通用输入信号2225OUT17O非隔离通用输出信号177IN23I非隔离通用输入信号2326OUT18O非隔离通用输出信号188IN24I非隔离通用输入信号2427OUT19O非隔离通用输出信号199IN25I非隔离通用输入信号2528OUT20O非隔离通用输出信号2010IN26I非隔离通用输入信号2629OUT21O非隔离通用输出信号2111IN27I非隔离通用输入信号2730OUT22O非隔离通用输出信号2212IN28I非隔离通用输入信号2831OUT23O非隔离通用输出信号2313IN29I非隔离通用输入信号2932OUT24O非隔离通用输出信号24技术支持热线:0755-26417593网址:www.szleadtech.com.cn56\nDMC1000/DMC1000B用户手册Version2.1脚号名称I/O功能脚号名称I/O功能14IN30I非隔离通用输入信号3033OUT25O非隔离通用输出信号2515IN31I非隔离通用输入信号3134OUT26O非隔离通用输出信号2616IN32I非隔离通用输入信号3235OUT27O非隔离通用输出信号27173.3VOPC电源,输出36—未用183.3VOPC电源,输出37GNDOPC电源地,输出19GNDOPC电源地,输出为方便用户使用DMC1000B的扩展IO口,雷赛公司提供了专用的光电隔离接线板ACC37_7480,使用ACC37_7480接线板后可实现DMC1000B扩展IO接口的输入输出信号全部光电隔离,其ACC37_7480接线板的引脚号与信号关系如表8-4所示:表8-4ACC37_7480引脚与DMC1000B_J1信号关系表引脚号信号名称I/O功能引脚号信号名称I/O功能IN1IN17I隔离后的通用输入17OUT1OUT13O隔离后的通用输出13IN2IN18I隔离后的通用输入18OUT2OUT14O隔离后的通用输出14IN3IN19I隔离后的通用输入19OUT3OUT15O隔离后的通用输出15IN4IN20I隔离后的通用输入20OUT4OUT16O隔离后的通用输出16IN5IN21I隔离后的通用输入21OUT5OUT17O隔离后的通用输出17IN6IN22I隔离后的通用输入22OUT6OUT18O隔离后的通用输出18IN7IN23I隔离后的通用输入23OUT7OUT19O隔离后的通用输出19IN8IN24I隔离后的通用输入24OUT8OUT20O隔离后的通用输出20IN9IN25I隔离后的通用输入25OUT9OUT21O隔离后的通用输出21IN10IN26I隔离后的通用输入26OUT10OUT22O隔离后的通用输出22IN11IN27I隔离后的通用输入27OUT11OUT23O隔离后的通用输出23IN12IN28I隔离后的通用输入28OUT12OUT24O隔离后的通用输出24IN13IN29I隔离后的通用输入29OUT13OUT25O隔离后的通用输出25IN14IN30I隔离后的通用输入30OUT14OUT26O隔离后的通用输出26IN15IN31I隔离后的通用输入31OUT15OUT27O隔离后的通用输出27IN16IN32I隔离后的通用输入32OUT16未用—未用EGNDEXGNDI外部电源地,输入EGNDEXGNDI外部电源地,输入+24VVDDI外部电源+24V,输入EGNDEXGNDI外部电源地,输入技术支持热线:0755-26417593网址:www.szleadtech.com.cn57\nDMC1000/DMC1000B用户手册Version2.18.2运动控制函数库DMC(1000、1000B)运动控制函数库是一个运动控制API函数库,在其基础上开发应用软件很简单:您只要用C/C++、VisualBasic开发用户界面,并调用DMC(1000、1000B)函数库中的相关运动控制函数,您就可以随心所欲的对自己的多轴自动化设备进行精确、高速、协调的控制。因为DMC(1000、1000B)的函数库能帮您处理所有与运动控制有关的复杂问题,这样您不必了解底层硬件细节就可以根据特定的应用要求像搭积木一样开发出自己的软件系统,从而大大缩短您的软件开发周期。雷泰DMC1000运动控制卡的运动控制函数库共有11类27个函数,DMC1000B运动控制卡的运动控制函数库共有10类24个函数,分类列表如下:8.2.1函数列表函数名描述d1000_board_init初始化控制卡d1000_board_close关闭控制卡初始化函数d1000_get_base_addr(DMC1000)读取DMC1000卡的基地址d1000_get_irq_channel(DMC1000)读取DMC1000卡的中断号脉冲模式设置函数d1000_set_pls_outmode设定脉冲输出模式d1000_start_tv_move以梯形速度曲线控制一个轴连续运动d1000_start_sv_move以S形速度曲线控制一个轴连续运动d1000_get_speed读取指定轴的脉冲输出速度连续运动函数d1000_change_speed改变指定轴的脉冲输出速度d1000_immediate_stop以梯形或S形急停一个轴d1000_decel_stop以梯形或S形减速停止一个轴d1000_start_t_move以梯形速度曲线控制相对坐标的点位运动d1000_start_ta_move以梯形速度曲线控制绝对坐标的点位运动单轴运动函数d1000_start_s_move以S形速度曲线控制相对坐标的点位运动d1000_start_sa_move以S形速度曲线控制绝对坐标的点位运动d1000_start_t_line任意2、3、4轴相对坐标的直线插补运动直线插补函数d1000_start_ta_line任意2、3、4轴绝对坐标的直线插补运动回原点函数d1000_home_move回原点运动任意2轴进行相对坐标的圆弧插补圆弧插补函数d1000_start_t_arc(DMC1000)DMC1000B无圆弧插补功能运动状态检测函数d1000_check_done检测当前运动状态指令位置设定和读d1000_get_command_pos读取指令位置计数器值技术支持热线:0755-26417593网址:www.szleadtech.com.cn58\nDMC1000/DMC1000B用户手册Version2.1函数名描述取函数d1000_set_command_pos设置指令位置计数器值d1000_out_bit通用输出口输出通用IO接口函数d1000_in_bit读取通用输入口状态d1000_get_outbit读取通用输出口状态d1000_set_sd设置减速开关是否有效专用IO接口函数d1000_get_axis_status读取指定轴的所有输入状态8.2.2函数说明8.2.2.1初始化函数DWORDd1000_board_init(void)功能:为控制卡分配系统资源,并初始化控制卡。参数:无。返回值:卡数:0~12,其中0表示没有卡。DWORDd1000_board_close(void)功能:关闭控制卡,释放系统资源。参数:无。返回值:正确:返回ERR_NoError;错误:返回相关错误码,具体含义参照8.2.3资源文件,下同。DWORDd1000_get_base_addr(shortCardNo)功能:读取DMC1000卡在PC机中占用的基地址(注:DMC1000B卡无此项功能);参数:CardNo-卡号。返回值:指定卡的基地址。DWORDd1000_get_irq_channel(shortCardNo)功能:读取DMC1000卡的中断号。(注:DMC1000B卡无此项功能)参数:CardNo-卡号。返回值:指定卡占用的中断号。注意:在Windows2000下,退出程序之前一定要调用d1000_board_close函数释放控制卡占用的资源!8.2.2.2脉冲输出设置函数DWORDd1000_set_pls_outmode(shortaxis,shortpls_outmode)功能:设置控制卡脉冲输出模式,用户可以根据驱动器具体接收脉冲的模式来选择控制卡不同脉冲输出模式。技术支持热线:0755-26417593网址:www.szleadtech.com.cn59\nDMC1000/DMC1000B用户手册Version2.1参数:axis:轴号。范围0~(n×4-1),n为卡数。多卡运行时,轴号参考表2-1多卡运行时轴号对照表;pls_outmode:脉冲输出模式:0:pulse/dir模式,脉冲上升沿有效;1:pulse/dir模式,脉冲下降沿有效;2:CW/CCW模式,脉冲上升沿有效;3:CW/CCW模式,脉冲下降沿有效。返回值:正确:返回ERR_NoError;错误:返回相关错误码。8.2.2.3连续运动函数DWORDd1000_start_tv_move(shortaxis,longStrVel,LongMaxVel,doubleTacc)功能:以梯形速度曲线控制指定轴至运行速度,并以运行速度连续运行。参数:axis:轴号,范围0~(n×4-1),n为卡数。多卡运行时,轴号参考表2-1多卡运行时轴号对照表,下同;StrVel:初始速度,单位:pps;MaxVel:运行速度,单位:pps,其值的正负表示运动方向;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。DWORDd1000_start_sv_move(shortaxis,longStrVel,LongMaxVel,doubleTacc)功能:以S形速度曲线控制指定轴至运行速度,并以运行速度连续运行。参数:axis:轴号,范围0~(n×4-1),n为卡数;StrVel:初始速度,单位:pps;MaxVel:运行速度,单位:pps,其值的正负表示运动方向;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。DWORDd1000_get_speed(shortaxis)功能:读取指定轴当前脉冲输出速度;参数:axis:轴号,范围0~(n×4-1),n为卡数。返回值:指定轴当前的运动速度,单位pps。DWORDd1000_change_speed(shortaxis,longNewVel)功能:改变指定轴当前脉冲输出速度;技术支持热线:0755-26417593网址:www.szleadtech.com.cn60\nDMC1000/DMC1000B用户手册Version2.1参数:axis:轴号,范围0~(n×4-1),n为卡数;NewVel:新设置的速度,单位:pps,取值范围:1~409550;返回值:正确:返回ERR_NoError;错误:返回相关错误码。注意:d1000_change_speed函数变速后的速度与实际设定速度之间有一个允许的误差,误差值为0~50pps,具体的误差值与当前速度及速度改变量ΔV有关,其绝对值|ΔV|越小,则误差越小。DWORDd1000_decel_stop(shortaxis)功能:减速停止指定轴脉冲输出。参数:axis:轴号,范围0~(n×4-1),n为卡数。返回值:正确:返回ERR_NoError;错误:返回相关错误码。DWORDd1000_immediate_stop(shortaxis)功能:急停指定轴脉冲输出。参数:axis:轴号,范围0~(n×4-1),n为卡数。返回值:正确:返回ERR_NoError;错误:返回相关错误码。8.2.2.4点位运动函数DWORDd1000_start_t_move(shortaxis,longDist,longStrVel,longMaxVel,doubleTacc)功能:以梯形速度曲线控制指定轴至运行速度,并以相对坐标运行一段指定距离。参数:axis:轴号,范围0~(n×4-1),n为卡数。多卡运行时,轴号参考表2-1多卡运行时轴号对照表,下同;Dist:相对运动距离,单位:pulse,其值的正负表示运动方向;StrVel:初始速度,单位:pps;MaxVel:运行速度,单位:pps;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。DWORDd1000_start_ta_move(shortaxis,longPos,doubleStrVel,doubleMaxVel,doubleTacc)功能:以梯形速度曲线控制指定轴至运行速度,并以绝对坐标运行一段指定距离。技术支持热线:0755-26417593网址:www.szleadtech.com.cn61\nDMC1000/DMC1000B用户手册Version2.1参数:axis:轴号,范围0~(n×4-1),n为卡数;Pos:绝对运动位置,单位:pulse;StrVel:初始速度,单位:pps;MaxVel:运行速度,单位:pps;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。DWORDd1000_start_s_move(shortaxis,longDist,longStrVel,longMaxVel,doubleTacc)功能:以S形速度曲线控制指定轴至运行速度,并以相对坐标运行一段指定距离;参数:axis:轴号,范围0~(n×4-1),n为卡数;Dist:相对运动距离,单位:pulse,其值的正负表示运动方向;StrVel:初始速度,单位:pps;MaxVel:运行速度,单位:pps;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。DWORDd1000_start_sa_move(shortaxis,longPos,longStrVel,longMaxVel,doubleTacc)功能:以S形速度曲线控制指定轴至运行速度,并以绝对坐标运行一段指定距离。参数:axis:轴号,范围0~(n×4-1),n为卡数;Pos:绝对运动位置,单位:pulse;StrVel:初始速度,单位:pps;MaxVel:运行速度,单位:pps;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。8.2.2.5直线插补函数DWORDd1000_start_t_line(shortTotalAxis,short*AxisArray,short*DistArray,longStrVel,longMaxVel,doubleTacc)功能:启动多轴相对坐标的直线插补。参数:TotalAxis:插补轴数,范围2~4;*AxisArray,AxisArray:轴号列表;*DistArray,DistArray:对应轴号列表各轴的相对坐标的距离列表技术支持热线:0755-26417593网址:www.szleadtech.com.cn62\nDMC1000/DMC1000B用户手册Version2.1StrVel:初始速度,单位:pps;MaxVel:运行速度,单位:pps;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。DWORDd1000_start_ta_line(shortTotalAxis,short*AxisArray,short*PosArray,longStrVel,longMaxVel,doubleTacc)功能:启动多轴绝对坐标的直线插补。参数:TotalAxis:插补轴数,范围2~4;*AxisArray,AxisArray:轴号列表;*PosArray,PosArray:对应轴号列表各轴的绝对坐标的位置列表;StrVel:初始速度,单位:pps;MaxVel:运行速度,单位:pps;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。8.2.2.6圆弧插补函数DWORDd1000_start_t_arc(short*AxisArray,shortOffsetC1,shortOffsetC2,doubleAngle,longStrVel,longMaxVel,doubleTacc)功能:启动任意2轴圆弧插补运动。(DMC1000B卡不支持圆弧插补)。参数:*AxisArray:轴号列表OffsetC1:第1个轴的圆心位置,单位:pulse;OffsetC2:第2个轴的圆心位置,单位:pulse;Angle:圆弧插补角度,单位:degree;StrVel:插补初始速度,单位:pps;MaxVel:插补运行速度,单位:pps;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。注意:Angle参数取值单位为“度”,而不是“弧度”;Angle为负值时表示顺时针运动,Angle为正值时表示逆时针运动。8.2.2.7回原点函数DWORDd1000_home_move(shortaxis,longStrVel,longMaxVel,doubleTacc)功能:启动指定轴进行回原点运动。参数:axis:轴号,范围0~(n×4-1),n为卡数。多卡运行时,轴号参考技术支持热线:0755-26417593网址:www.szleadtech.com.cn63\nDMC1000/DMC1000B用户手册Version2.1表2-1多卡运行时轴号对照表,下同;StrVel:回原点运动初始速度,单位:pps;MaxVel:回原点运动速度,负值表示往负方向找原点,正值表示往正方向找原点,单位:pps;Tacc:加速时间,单位:s。返回值:正确:返回ERR_NoError;错误:返回相关错误码。8.2.2.8运动状态检测函数DWORDd1000_check_done(shortaxis)功能:检测指定轴的运动状态。参数:axis:轴号,范围0~(n×4-1),n为卡数。返回值:0:正在运行;1:脉冲输出完毕停止;2:指令停止(如调用了d1000_decel_stop函数);3:遇限位停止;4:遇原点停止。注意:1、当指定轴遇限位信号停止时,d1000_check_done函数返回3,若限位信号撤去,d1000_check_done函数返回值变为1;2、当指定轴遇原点信号停止时,d1000_check_done函数返回4,若原点信号撤去,d1000_check_done函数返回值变为1。8.2.2.9指令位置设定和读取函数DWORDd1000_get_command_pos(shortaxis)功能:读取指令位置计数器计数值。参数:axis:轴号,范围0~(n×4-1),n为卡数。多卡运行时,轴号参考表2-1多卡运行时轴号对照表,下同。返回值:指定轴当前指令位置计数器值,单位:pulse。DWORDd1000_set_command_pos(shortaxis,doublePos)功能:设置指令位置计数器计数值。参数:axis:轴号,范围0~(n×4-1),n为卡数。Pos:设置指令位置计数器值,单位:pulse。返回值:正确:返回ERR_NoError;错误:返回相关错误码。8.2.2.10通用I/O接口函数DWORDd1000_out_bit(shortBitNo,shortBitData)技术支持热线:0755-26417593网址:www.szleadtech.com.cn64\nDMC1000/DMC1000B用户手册Version2.1功能:输出通用输出信号。参数:BitNo:表示要输出的通用输出口的位号,范围参考表8-5及表8-6;BitData:输出信号:0-表示低电平;1-表示高电平。返回值:正确:返回ERR_NoError;错误:返回相关错误码。注:多卡IO位号分配说明,如表8-5和8-6所示:表8-5DMC1000B多卡IO位号分配通用输出口通用输入口卡11~271~32卡232+(1~27)32+(1~32)卡364+(1~27)64+(1~32)卡n(n-1)*32+(1~27)(n-1)*32+(1~32)表8-6DMC1000多卡IO位号分配通用输出口通用输入口卡11~121~16卡212+(1~12)16+(1~16)卡324+(1~12)32+(1~16)卡n(n-1)*12+(1~12)(n-1)*16+(1~16)DWORDd1000_in_bit(shortBitNo)功能:读取通用输入信号状态。参数:BitNo:表示要读取的通用输入口的位号,范围参考表8-5及表8-6;返回值:输入口状态:0-表示低电平;1-表示高电平。DWORDd1000_get_outbit(shortBitNo)功能:读取通用输出信号状态。参数:BitNo:通用输出口位号,范围参考表8-5及表8-6;返回值:输出口状态:0-表示低电平;1-表示高电平。8.2.2.11专用I/O接口函数DWORDd1000_set_sd(shortaxis,shortSdMode)功能:设置减速信号是否使能。参数:axis:轴号,范围0~(n×4-1),n为卡数。多卡运行时,轴号参考技术支持热线:0755-26417593网址:www.szleadtech.com.cn65\nDMC1000/DMC1000B用户手册Version2.1表2-1多卡运行时轴号对照表,下同;SdMode:减速使能模式0:SD信号无效;1:SD信号有效。返回值:正确:返回ERR_NoError;错误:返回相关错误码。DWORDd1000_get_axis_status(shortaxis)功能:读取指定轴的专用接口信号状态,包括EL+、EL-、STP、STA、SD+、SD-等信号状态。参数:axis:轴号,范围0~(n×4-1),n为卡数。返回值:指定轴专用信号接口状态,取低字节,其二进制位号与信号的对应关系如表8-7所示:表8-7返回值的位号与信号对应表位号信号电平0-EL0:高,1:低1+EL0:高,1:低2ORG0:高,1:低3STP0:高,1:低4STA0:高,1:低5-SD0:高,1:低6+SD0:高,1:低7保留保留8.2.3资源文件C/C++:DMC1000.hVisualBasic:DMC1000.bas注意:(1)在所有运动函数参数设置中,MaxVel的绝对值一定要大于StrVel的绝对值,否则参数设置无效,实际速度仍然为上次设置的值。(2)在所有运动函数中,单次运动的位移设置范围为16777215,设置参数时应在此范围内,超出最大值的设置会导致运动异常。(3)错误号的含义如下:ERR_NoError值为0,代表参数设置正确;ERR_BoardNumber值为1,代表卡号参数设置错误;ERR_ParaAxis值为2,代表轴号参数设置错误;ERR_ParaData值为3,除以上参数外的其他参数设置错误。技术支持热线:0755-26417593网址:www.szleadtech.com.cn66\nDMC1000/DMC1000B用户手册Version2.18.3DMC1000B与DMC1000卡之间的一些说明DMC1000B与DMC1000运动控制卡功能大致差不多,但还是存在一些差别,具体见以下小节中说明。8.3.1DMC1000B与DMC1000卡的差异说明一、硬件、文件差异1、DMC1000B板卡。DMC1000B是DMC1000的升级版本,它们的外部接口完全一样,因此,DMC1000B替换DMC1000时,硬件上只需要更换新板卡DMC1000B,电缆线、接线板都不需要更换,不影响用户设备外部接线。2、DMC1000B驱动程序。DMC1000B与DMC1000使用不同的驱动程序,因此,使用DMC1000B需要安装DMC1000B的驱动程序(原来DMC1000的驱动程序可以不卸载)。3、DMC1000.dll函数库不同,但头文件相同。二、性能差异1、DMC1000B的最大脉冲输出频率为1.2M,而DMC1000最大脉冲输出频率只有400K,因此,在高细分高速度运动控制中DMC1000B更有优势。2、DMC1000B增加I/O扩展口,通用I/O口更多;3、DMC1000B不支持圆弧插补。三、编程差异1、DMC1000B没有圆弧插补函数:d1000_start_t_arc2、DMC1000B没有基地址读取函数:d1000_get_base_addr(dos下使用)3、DMC1000B没有中断号读取函数:d1000_get_irq_channel(dos下使用)8.3.2DMC1000B卡替换DMC1000卡的步骤DMC1000B卡替换DMC1000卡的步骤如下:1、更换新板卡DMC1000B,硬件安装参考H3.硬件配置与安装U。2、更新驱动程序,参考U5驱动程序安装U。3、更新编程文件(DMC1000.dll)4、完成替换。注:DMC1000B可以多卡运行,但是不能与DMC1000在同一个系统中使用。技术支持热线:0755-26417593网址:www.szleadtech.com.cn67\nDMC1000/DMC1000B用户手册Version2.18.4常见问题库出现问题解决建议板卡插上后,PC机系统检查板卡驱动是否正确安装,在WINDOWS的设备管理器(可还不能识别DMC(1000、参看WINDOWS帮助文件)中查看驱动程序安装是否正常。如1000B)。果发现有相关的黄色感叹号标志,说明安装不正确,需要按照软件部分安装指引,重新安装;计算机主板兼容性差,请咨询主板供应商;PCI插槽是否完好;PCI金手指是否有异物,可用酒精清洗。PC机不能和DMCPCI金手指是否有异物,可用酒精清洗;(1000、1000B)通讯。参考软件手册检查应用软件是否编写正确。板卡和驱动器电机连接板卡上的设置脉冲发送方式和驱动器的输入脉冲方式是否匹配,后,发出脉冲时,电机不跳线J1~J8是否正确;转动。可以用motion(1000、1000B)软件进行测试,观察脉冲计数等是否正常;是否已经接上供给脉冲和方向的外部电源。控制卡已经正常工作,正检查驱动器和电机之间的连接是否正确。可以使用motion(1000、常发出脉冲,但电机不转1000B)软件进行测试。动。确保驱动器工作正常,没有出现报警。电机可以转动,但工作不检查控制卡和驱动器是否正确接地,抗干扰措施是否做好;正常。脉冲和方向信号输出端光电隔离电路中使用的限流电阻过大,工作电流偏小。能够控制电机,但电机出可能是驱动器参数设置不当,检查驱动器参数设置;现振荡或是过冲。应用软件中加减速时间和运动速度设置不合理。能够控制电机,但工作检查屏蔽线是否接地;时,回原点定位不准。原点信号开关是否工作正常;所有编码信号和原点信号是否受到干扰。限位信号不起作用。限位传感器工作不正常;限位传感器信号受干扰;应用程序紊乱。数字输入信号不能读取。接线是否正常;检查函数调用是否正确。数字输出信号不正常。接线是否正常;检查函数调用是否正确。技术支持热线:0755-26417593网址:www.szleadtech.com.cn68\nDMC1000/DMC1000B用户手册Version2.18.5抗干扰措施DMC(1000、1000B)运动控制卡严格遵循抗干扰原则精心设计,具有较高的抗干扰能力,但工业环境往往比较恶劣和复杂,影响控制系统可靠和安全运行的主要因素主要来自系统内部和外部的各种电气干扰,以及系统结构设计、安装和外部环境条件等因素。对于干扰信号严重的应用场合,建议采取一定的措施增强控制系统的抗干扰能力。可以在接地、滤波、屏蔽这三个方面,增加一些抗干扰措施:(1)DMC(1000、1000B)运动控制卡的PC电源必须和驱动器或其他干扰机器的电源分开,使用不同的电源;PC机箱必须直接接地。(2)对于一些干扰信号较大的场合建议使用滤波器对电源滤波。(3)通信电缆建议使用带屏蔽层的电缆,对于方向脉冲信号和编码器信号,建议使用双绞屏蔽线连接。对于恶劣工作环境下的输入输出信号,建议使用单独的电源供电。(4)建议机箱内电机电源线与信号线不要并行走线。(5)控制卡和电机需要有一定的距离,计算机最好安装在金属控制柜中。使用变频器时,注意变频器和控制系统要有一定的距离。技术支持热线:0755-26417593网址:www.szleadtech.com.cn69