您的当前位置:首页正文

DS1319使用SDC库控制步进电机

2022-11-27 来源:步旅网


[应用][DS1319利用SDC库控制步进电机]

[邱志远][2012-7-20][V1.00]

1.基本信息

编写人 应用归属 软件信息 其他 版本信息 V1.00 邱志远 (运动控制) AS3.0 Acp10sdc库 修改内容 创建 审核人 硬件信息 (检查,测试,注释) X20DS1319 修改人 2.应用简介

DS1319是一个多功能数字信号处理器模块,本应用中用于生成线性运动信号。

3.内容

在SG4系统里我们可以使用Acp10sdc库来控制通过SDC(smart device controller)定义的轴,可以用来驱动不同的电机,本文的控制对象是Hayden的步进电机驱动器+步进电机。

3.1 添加必要的库

想要控制SDC定义的轴,需要Acp10sdc,Acp10man,Acp10par,NcGlobal.其中后3项在添加Acp10sdc库之后会自动添加。

3.2 添加SDC接口

在Configuration View里面打开Acp10cfg.ncc,然后点击工具栏中的

- 1 -

Insert->Interface,添加SDC接口:

3.3 定义SDC轴对象

首先在Configuration View里面添加一个NC Mapping Table,类型为ACP10:Mapping Table。在这张表里定义想要控制的轴对象,模块地址里面选中SDC的地址,需要注意的是这里的STx的x代表着节点号,但这个节点号和X2X总线上面模块的节点号没有关系。如果Additional Data中什么也不添,那么系统会默认这个轴对象为模拟的,并且只能在仿真模式下进行操作(ParID 110)。如果添加附加信息,可以将SDC PV与 一个 ACP10 axis对应上,gDSAxis_HW会在后文进行定义。

3.4 创建必要的变量

在这里定义的轴是没有外部编码器以及没有trigger信号的,是为了接下来控制步进电机做的准备。然后需要对这些变量进行必要的初始化赋值和循环控制,范例如下:

- 2 -

对于不同的对象和控制方法,所需要的数据类型大小不同,也可能需要关掉某些功能,这时就需要对应下表修改初始化赋值的程序。

- 3 -

3.5 时间参数设置。

上一步创建的必要变量和控制程序需要运行在NC Manager任务周期,这个可以在Acp10cfg.ncc里面进行设置,需要保持一致。

由于采用Acp10sdc库来控制电机的时候通常都是采用的X20模块。所以需要注意的是任务周期(如Cyclic #1)的时间需要与X2X的周期时间相对应。X2X周期时间可以在下图位置进行配置:

在系统时钟的设定上,需要保证acp10man所在的任务周期循环时间必须是时钟周期的整数倍,在下图位置进行配置:

- 4 -

接下来需要对Cyclic #1的周期时间进行设置,来对应上文的配置,需要注意的是Tolerance必须设置为0.

- 5 -

3.6 配置轴需要的参数表

在NC Mapping Table中定义轴对象的时候,定义了NC INIT parameter object和ACOPOS parameter table,需要进行相应的配置。

NC INIT parameter object中,本文控制的对象不存在正负限位以及trigger信号,所以需要将他们设置为ncACTIV_HI

ACOPOS parameter table中选择Add Group添加步进电机的必要参数:

- 6 -

至此,使用SDC控制轴的准备工作全部做完,接下来可以进行仿真或者和实际硬件的连接。

4.应用举例

DS1319用于控制步进电机的时候可以工作在两种模式:方向/频率模式或者AB模式。对应的接线如下:

Hayden的步进电机控制器使用的是方向/频率模式,所以打开DS1319的I/O Configuration进行配置,叹号处为进行的修改。

保存配置文件后,I/O Mapping里会出现对应的变量,将他们与之前定义的全局变量进行关联,需要注意的是,任务周期需要设置为Cyclic #1

- 7 -

在Test模式下,步进电机工作正常。

http://usa.loccitane.com/natural-beauty-products-skincare-l'occitane-en-provence-usa,82,1,28281,308038.htm?cm_mmc=Linkshare-_-Affiliate-_-Web-_-10

- 8 -

因篇幅问题不能全部显示,请点此查看更多更全内容