1 模块介绍

1.1 模块概述

ET200S 1STEP步进模块输出脉冲控制步进电机驱动器,输出脉冲数决定步进电机移动的距离,输出脉冲频率决定步进电机的速度。

模块订货号:6ES7138-4DC00-0AB0

1.2 模块特性

图1 1STEP 步进模块

l 1个通道,可以用于控制1个步进电机

l 参考点开关数字量输入

l 外部停止或外部脉冲使能数字量输入

l 脉冲和方向信号采用符合RS422电平差分输出

l 输出最大频率204 kHZ

l 输出最大脉冲数 1048575

l 4个LED状态指示

l 2种操作模式:寻找参考点模式、增量模式

2 模块接线

图2 1STEP 端子接线图

l 端子1、5:脉冲信号差分输出

l 端子4、8:方向信号差分输出

l 端子2、3:外部停止或外部脉冲使能数字量输入DI(功能选择见4.2节)

端子6、7:参考点开关数字量输入

3 硬件配置

1STEP 步进模块可以安装在ET200S接口模块或ET200S CPU模块后使用。

本文中以IM151–7 CPU模块为例。

表1 软硬件配置

图3 ET200S 站配置图

4 硬件组态及参数配置

4.1 硬件组态

1) 按照图2、图3完成ET200S站安装和接线。

2) 打开STEP7,在管理器中新建一个项目,然后插入一个S7-300站。

3) 进入硬件组态界面进行配置。选中IM151-7 CPU直接拖拽到站配置窗口中。

图4 插入IM151-7 CPU

4) 在4号槽和5号槽中分别插入PM-E DC24电源模块和1STEP步进模块。

图5 硬件组态

4.2 模块参数配置

图6 1STEP 模块参数界面

4.2.1 模块参数配置说明

1) Group Diagnostic:组诊断。

2) Base Frequency:基本频率,单位Hz,记作Fb。

3) Multiplier n:倍增系数 n,取值范围1-255。此倍增系数决定启动停止频率 Fss,计算公式Fss=Fb×n。

4) Time i:时间系数i,取值范围1-255。此时间系数决定加速度和减速度a,单位为Hz/ms,计算公式为a = Fb×R / (i×0.128 ms)。

5) Function DI:数字量DI输入功能选择,可以配置为外部脉冲使能输入或外部停火输入。缺省为外部脉冲使能输入。

6) External Stop,Limit Stop:外部停止,限位停止信号类型,break contact为常闭信号,make contact为常看信号。缺省为常闭信号接入。

4.2.2 本文例子采用参数

本文例子参数配置即为图6中显示参数配置

1) 不激活组诊断。

2) 基本频率4Hz。

3) 倍增系数1,启动停止频率 4Hz。

4) 时间系数1,加速度减速度 31.25 Hz/ms。

5) 外部脉冲使能输入。

6) 外部停止输入、限位输入信号类型为常闭信号输入。

5 程序编制

5.1 模块输入输出地址分配

1STEP 步进模块跟其它ET200S 功能模块类似,都是通过直接读写I/O地址对模块进行控制访问。

反馈信号(输入),占用8个字节,输入地址分配见表2。

控制信号(输出),占用8个字节,输出地址分配见表3。

表2 输入地址分配

表3 输出地址分配

5.2 项目示例程序

为了便于对该模块地址中的位、字节、字等地址的读写,通过在梯形图编程环境中使用MOVE指令,将输入地址区 PIB272-PIB279传送到MB10-MB17,将MB20-MB27传送到PQB272-PQB279。对1STEP模块的读写访问通过MB地址区完成。

1STEP 模块IO地址分配见图5。

图7 项目示例程序

6 模式说明及示例

6.1 寻找参考点模式

通过执行寻找参考点模式,对轴进行同步,即建立机械零点与电气零点对应关系。

6.1.1 寻找参考点模式说明

Mode=1

参考点开关为常开信号接入

寻找参考点输出频率 Fss、Fa

Fss 启动停止频率,描述参见 4.2.1节

Fa 输出频率 Fa = Fb ×G × R

Fb:基本频率。1STEP 模块参数中配置,描述参见 4.2.1节。

Multiplier G:倍增系数 G。取值范围1-255,模块输出地址字节0,参见表3。

Reduction Factor R:减小系数R。模块输出地址字节4第7位,参加表3。模块输出地址4.7=0,R=1;模块输出地址4.7=1,R=0.1。

图8 寻找参考点

6.1.2 寻找参考点模式示例

本文示例按照图8模式进行,即正方向寻找参考。

1. 通过变量表写输出控制变量:

图9 参考点模式控制变量

1) M24.0=1 寻找参考点模式Mode=1

2) M25.0=1、M25.1=1 由于之前模块参数配置限位开关信号为常闭输入,所以当没有软限位开关激活时,应该有信号输入。参见4.2.2节。

3) M25.2=0 不激活软件脉冲使能信号。由于之前模块参数配置已经使能DI为外部脉冲使能信号输入,此时就不再使用内部软件脉冲使能信号。参见4.2.2节。

4) 置位M24.4,然后复位M24.4(下降沿信号有效),启动寻找参考点模式。脉冲输出频率为Fa。

5) MB20=1、M24.7=0 倍增系数G=1、减小系数R=1,Fa频率值为

Fa = Fb ×G × R=4Hz×1×1=4Hz。

2.通过变量表读输入状态变量:

图10 参考点模式状态变量

1) M15.2=1外部脉冲使能信号激活。

2) M15.0=1 驱动使能。

3) 寻找参考点启动后,M14.0=1 位置任务激活,M15.7=1 位置操作执行中。等待参考点开关信号M15.1。

4) M15.1=1 参考点信号达到,寻找参考点完成。M14.4=1,同步操作完成,M14.2=1 位置到达,M15.3=1 寻找参考点停止。

6.2 增量模式

增量模式是1STEP 主要工作模式。通过该工作模式可以控制步进电机按照给定的速度移动给定的距离。

6.2.1 增量模式说明

Mode=0

输出脉冲数决定步进电机移动的距离,最大脉冲数1048575

输出脉冲频率决定步进电机的速度

增量模式输出频率 Fss、Fa

方向信号作为启动信号

注意:脉冲数对应的实际位移量和脉冲频率对应的实际速率由步进电机驱动器确定,不再1STEP模块中进行设置。

6.2.2 增量模式示例

1. 通过变量表写输出控制变量:

图11 增量模式控制变量

1) M24.0=0 增量模式Mode=0

2) M25.0=1、M25.1=1 由于之前模块参数配置限位开关信号为常闭输入,所以当没有软限位开关激活时,应该有信号输入。参见4.2.2节。

3) MB20=1、M24.7=0 倍增系数G=1、减小系数R=1,输出频率 Fa为

Fa = Fb ×G × R=4Hz×1×1=4Hz。

4) 输出脉冲数,通过MB21-23组成20位地址长度用于存放脉冲数,最大值即为 0xFFFFF=1048575

MB21 输出脉冲数(位16-位19)

MB22 输出脉冲数(位8-位15)

MB23 输出脉冲数(位0-位7)

MB21 位20-位23没有使用

本示例中赋值为0x100,即256个脉冲。

5) 置位M24.4,然后复位M24.4(下降沿信号有效),启动增量模式,正方向移动。

2.通过变量表读输入状态变量:

图12 增量模式状态变量

1)增量模式启动后,M14.0=1 位置任务激活,M15.7=1 位置操作执行中。

2)MD10 显示剩余脉冲数,图12显示还有220个脉冲没有发送。

3)MD10=0 脉冲发送完成,M14.0、M15.7清零,M14.2=1 位置到达。增量模式输出完成。

vb定义模块且使用模块_ET200S 1 STEP 步进模块使用入门相关推荐

  1. et200s模块接线图讲解_西门子ET200S 1 STEP 步进模块使用入门.doc

    西门子ET200S 1 STEP 步进模块使用入门 ET200S 1 STEP 步进模块使用入门 Getting Started of ET200S 1 STEP 5V/204KHzGetting S ...

  2. vba 定义类_VBA|工程中的四类模块的具体含义与比较

    新建一个工作簿后的VBE的工程资源管理器: 可以看到默认的3个工作表对应的模块和工作簿模块ThisWorkbook. 选择sheet1,点击"对象"列表下拉框: 可以看到一个可供选 ...

  3. python sys模块作用_浅谈Python中的模块

    模块 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Python中,一个.py文件就称之为一个模块(Mod ...

  4. c++ 获取64位进程模块地址_针对银行木马BokBot核心模块的深入分析

    一.概述 BokBot恶意软件由LUNAR SPIDER恶意组织开发和运营,在2017年首次出现,CrowdStrike的Falcon Overwatch和Falcon Intelligenc团队对被 ...

  5. python导入模块的变量_python 环境变量和import模块导入方法(详解)

    1.定义 模块:本质就是.py结尾的文件(逻辑上组织python代码)模块的本质就是实现一个功能 文件名就是模块名称 包: 一个有__init__.py的文件夹:用来存放模块文件 2.导入模块 for ...

  6. JS设计模式之Module(模块)模式、Revealing Module(揭示模块)模式

    Module(模块)模式 概念 Module模式最初被定义为一种在传统软件工程中为类提供私有和共有封装的方法. 通过这种方式,能够使一个单独的对象拥有共有/私有方法和变量,从而屏蔽来自全局作用局的特殊 ...

  7. 模块版网站与html网站,网站新闻模块代码html

    网站新闻模块代码html [2020-09-05 21:12:43]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace("/( ...

  8. python函数和模块有什么特性_python-函数包和模块

    python函数的作用: 在Python代码段中如果有一段几十行的代码,需要多次重复使用这几十行代码时,为了提高代码的可用性,将代码段放进函数体内,以后在使用中直接调用该函数模块即可,函数是一个独立的 ...

  9. python全栈开发中级班全程笔记(第二模块、第四章)(常用模块导入)

    python全栈开发笔记第二模块 第四章 :常用模块(第二部分)     一.os 模块的 详解 1.os.getcwd()    :得到当前工作目录,即当前python解释器所在目录路径 impor ...

最新文章

  1. 数据结构之链表反向打印
  2. 关于华为x2中的外置SDCard的使用
  3. linux删除文件_Linux删除文件夹用什么命令
  4. @bean 什么时候执行_写好一个Spring组件的实现步骤是什么?
  5. java高级工程师------struts的知识重点
  6. 大数据工程师简历_大数据毕业生简历该怎么写?
  7. 【180620】小人物走路、奔跑的VC++游戏特效
  8. DZ先生怪谈国标之视音频文件检索
  9. Dlink路由器后门分析
  10. 【iOS沉思录】Objective-C语言的动态性总结(编译时与运行时)
  11. 读懂SIEM建设?看这篇就够了!
  12. 兄弟Brother PT-9200DX 驱动
  13. NPOI创建DOCX常用操作
  14. Qt中国象棋之棋子的移动
  15. hurtworld正版社区服务器,《伤害世界hurtworld》正版盗版GM权限获取方法图文详解...
  16. SVPWM算法理解(二)——关于非零基本矢量幅值和线电压幅值的解释
  17. 小学生学计算机flash,计算机Flash动画教学思考
  18. 静态最优期货价差套利头寸比例估计(静态最优期货价差套利头寸比例估计是多少)
  19. 论文利器 || 复制PDF有换行?全自动帮你合并,还能自动翻译,论文+++
  20. 微信神器:一键批量下载微信好友头像并拼成一张图

热门文章

  1. STM32—— AHB、APB详解
  2. 为什么matlab生成的exe文件只能在matlab中打开,在电脑的其他地方打不开?
  3. 【Matlab】到底怎么自定义colorbar/colormap的颜色?
  4. 嵌入式深度学习运用的思路
  5. [云炬学英语]每日一句2020.8.26
  6. [C++调试笔记]diag.cpp
  7. vue手机端回退_vue移动端弹框组件,vue-layer-mobile
  8. Go进阶(2): 变量+数据类型
  9. python字符串与文本处理技巧(3):字符剔除、字符对齐、字符拼接、字符插入变量
  10. Python8:logging Module