S7-1200 的运动控制
S7-1200 CPU本体集成点硬件输出点最高频率为100kHz,信号板上硬件集成点输出的最高频率为20kHz,CPU在使用PTO功能时将把集成点Qa.o,Qa.2或信号板的Q4.0作为脉冲输出点,Qa.1,Qa.3和Q4.1作为方向信号输出点,虽然使用了过程映像区的地址,但这些点会被PTO功能独立使用,不会受扫描周期的影响,其作为普通输出点的功能将被禁止。并且,PTO的输出类型只支持PNP输出,电压为DC 24V,继电器输出的点不能应用于PTO功能。
硬件输出的组态
具体操作的步骤如下:
1)选择设备组态
2)选择合适的CPU
3)在属性选项卡中激活使能高速脉冲发生器功能。
脉冲发生器组态:
脉冲输出类型选择如下图,图中组件的含义如下所述
工艺对象”轴“组态
”轴“工艺对象是用户程序与驱动的接口。工艺对象从用户程序中收到控制命令,在运行时执行并监视执行状态。“驱动”表示步进电机加电源部分或者伺服驱动器加脉冲接口转换器的机电单元。驱动是由PLC产生脉冲来控制“轴”工艺对象的。运动控制功能指令块必须在轴对象组态完成后才能使用。
工艺对象的组态包括以下几个部分:
参数组态
参数组态主要定义了轴的工程单位(如脉冲数/秒,转/分钟),软硬件限位,启动/停止速度,参考点定义等。进行参数组态前,需要添加工艺对象,具体操作为:选择项目树——>工艺对象——>插入新对象选项,如图3-18所示,双击该选项弹出插入新对象对话框,单击Motion选项,在名称文本框中输入对象名称,选择轴对象数据块编号,单击“确认”按钮确认。
单击完成后可以在项目树中看到添加好的工艺对象,双击Configuration(组态)选项进行参数组态,如图所示,进入工艺对象组态目录树,如下图所示:
(1)硬件接口
硬件接口组态如下图所示,图中所示组件的具体含义如下所述:
选择脉冲发生器:此下拉列表框中可选择使用Pulse1或Pulse2作为脉冲输出。
设备组态:此处可进入PLC模块硬件组态页面。
用户单位:为系统选择长度单位,包括毫米、米、英寸、英尺、脉冲数、角度。
(2)驱动器信号:
驱动接口组态如下图所示。图中所示组件的具体含义如下所述:
选择”启用输出“:设置使能滑台伺服的输出点。
选择”输入就绪“:设置驱动器状态正常输入点,当驱动设备正常时会给出一个开关量输出,
此信号可接入到CPU中,告知运动控制器驱动正常。如果驱动不提供这
种接口,可将此参数设为”True“。
(3)机械
机械组态如下图所示,图中所示组件的具体含义如下所述:
电机每转脉冲数:电机旋转一周所需的脉冲个数。
电机每转的运载距离:电机旋转一周机械产生的位移。
(4)位置监视
位置监视组态如下图所示,图中所示组件的具体含义如下所述。
激活硬限位开关:使能机械系统的硬件限位功能,在轴到达硬件限位开关时,它将使用急停
减速斜坡停车。
启用软限位开关:使能机械系统的软件限位功能,此功能通过程序或者组态定义系统的极限
位置。在轴到达软件限位开关,轴运动将被停止。工艺对象报故障,
在故障被确认后,轴可以恢复在工作范围内的运动。
输入硬限位开关下限
输入硬限位开关上限
选择电平:限位点有效电平,分为High Level(高电平有效)和Low Level(低电平有效)
两种
软限位开关下限位置
软限位开关上限位置
(5)动态参数
动态参数组态如下图所示,图中所示组件的具体含义如下所述:
速度限值的单位: 此处选择速度限制值单位,包括revs/min(转/分钟 )和Pulse/s(脉
冲数/ 秒)两种。
最大速度:定义系统的最大运行速度,以毫秒/秒为单位的最大速度,由系统自动计算。
启动/停止速度:定义系统的启动/停止速度,考虑到电机的扭矩等机械特性,其启动/停止
速度不能为0。
加速度
减速度
加速时间
减速时间
加/减速度与加/减速时间这两组数据,只要定义其中任意一组,系统会自动计算另外一组数 据,这里的加/减速度与加/减速时间需要用户根据实际工业要求和系统本身特性调试得出。
(6)急停
急停组态如下图所示,图中所示组件的具体含义如下所述:
紧急减速度:此处定义从最大速度到启动/停止速度的减速度
急停减速时间:此处定义从最大速度启动/停止速度的减速时间
(7)回原点
回参考点组态如下图所示,图中所示组件的含义如下所述:
输入参考点开关:此处定义参考点,一般使用数字量输入作为参考点开关。
允许硬限位开关处自动反转:此处可使能在寻找参考点过程中碰到硬件限位点自动反向,在激活
回参考点功能后,轴在碰到参考点之前碰到了硬件限位点,此时系
统认为参考点在反方向,会按组态好的斜坡减速曲线停车并反转。
若该功能并没有被激活并且轴到达硬件限位点,则回参考点过程会
被立即停止。
逼近/回原点方向:此处定义在执行寻找参考点的过程中的初始方向,包括正向寻找和负向寻找
两种方式。
参考点开关一侧:此处定义使用参考点左边沿或者右边沿。
逼近速度:在进入参考点区域时的速度。
参考速度:在进入参考点区域后,到达参考点位置时的速度。
原点位置偏移:在参考点开关位置和参考位置有差别是,在此时输入距离参考点的偏移量。轴以
到达速度接近零位,在MC_Home语句的”位置“参数指定绝对参考点坐标。
参考点位置:参考点坐标有MC_Home指令块的Position参数确定。
PLC运动控制功能块
(1)使能输入
轴在运动之前必须先被使能。MC_Power块的Enable端变为高电平后,CPU按照轴中组态好的方式使能外部伺服驱动;当Enable端变为低电平后,轴将按照StopMode中定义的模式停车。当StopMode端值为0时,将按照组态好的方式急停。当StopMode端值为1时将会立即终止输出。
(2)停止
MC_Halt块用于停止轴的运动,每个被激活的运动指令,都可以由此块停止,上升沿使能Execute后,轴会立即按组态好的减速曲线停车。
(3)复位
如果存在一个需要确认的错误,可通过上升沿激活MC_Reset块的Execute端,进行错误复位。
(4)回零
此指令用于定义参考点位置,上升沿使能Execute端,指令块按照Mode中定义好的值执行定义参考点的功能,回参考点过程执行完毕,工艺对象数据块中HomingDone位被置1。
(5)点动:
MC_MoveJog指令块用于设置轴的点动模式,Velocity端输入轴的点动速度,然后置位JogForward(向前点动)或JogBackward(向后点动)端,轴即可以动。当JogForward(向前点动)或JogBackward(向后点动)端复位时点动停止。
(7)绝对移动
Mc_MoveAbsolute 指令块需要在定义好参考点,建立起坐标系统后才能使用,通过制定参数Position和Velocity可到达机械限位内的任意一点,当上升沿使能Execute选项后,系统会自动计算当前位置和目标位置之间的脉冲数,并加速到指定速度,在到达目标位置时减速到启动/停止速度。
S7-1200 的运动控制的更多相关文章
- 如何实现PLC与THINGWORX工业物联网平台对接
物联网(Internet of Things),简称 IoT,对于制造商来说,是行业乃至世界范围内的一股变革浪潮.在我们设计和制造的产品中,将会不断嵌入各种软件.传感器和启用 IP 的连接功能.IDC ...
- 西门子S7-1200与 G120系列变频器USS通信
西门子S7-1200 紧凑型PLC在当前的市场中有着广泛的应用,作为经常与SINAMICS G120系列变频器共同使用的PLC,其USS通信协议的使用一直在市场上有着非常广泛的应用.本文将主要介绍如何 ...
- C# 读写西门子PLC数据,包含S7协议和Fetch/Write协议,s7支持200smart,300PLC,1200PLC,1500PLC
本文将使用一个gitHub开源的组件技术来读写西门子plc数据,使用的是基于以太网的TCP/IP实现,不需要额外的组件,读取操作只要放到后台线程就不会卡死线程,本组件支持超级方便的高性能读写操作 官方 ...
- python 读写西门子PLC 包含S7协议和Fetch/Write协议,s7支持200smart,300PLC,1200PLC,1500PLC
本文将使用一个gitHub开源的组件技术来读写西门子plc数据,使用的是基于以太网的TCP/IP实现,不需要额外的组件,读取操作只要放到后台线程就不会卡死线程,本组件支持超级方便的高性能读写操作 nu ...
- java android 读写西门子PLC数据,包含S7协议和Fetch/Write协议,s7支持200smart,300PLC,1200PLC,1500PLC
本文将使用一个gitHub开源的组件技术来读写西门子plc数据,使用的是基于以太网的TCP/IP实现,不需要额外的组件,读取操作只要放到后台线程就不会卡死线程,本组件支持超级方便的高性能读写操作 gi ...
- Android 打开方式选定后默认了改不回来?解决方法(三星s7为例)
Android 打开方式选定后默认了改不回来?解决方法(三星s7为例) 刚刚在测试东西,打开一个gif图,然后我故意选择用支付宝打开,然后...支付宝当然不支持,我觉得第二次打开它应该还会问我,没想到 ...
- C语言 · 打印1-200之间的素数
素数定义:除了1和本身再无其他整数可被其本身整除的数称为素数,也称质数. 举一例子打印出1-200之间所有的素数: #include<stdio.h> #include<math.h ...
- POJ 1200 字符串HASH
题目链接:http://poj.org/problem?id=1200 题意:给定一个字符串,字符串只有NC个不同的字符,问这个字符串所有长度为N的子串有多少个不相同. 思路:字符串HASH,因为只有 ...
- sicily 1200欢迎提出优化方案
水题来的……我的做法是用a[10]数组表示每个数字出现的次数. 1200. Stick 限制条件 时间限制: 1 秒, 内存限制: 32 兆 题目描述 Anthony has collected a ...
- bzoj 1200: [HNOI2005]木梳 DP
1200: [HNOI2005]木梳 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 266 Solved: 125[Submit][Status] ...
随机推荐
- Android指纹识别
原文:Android指纹识别 上一篇讲了通过FingerprintManager验证手机是否支持指纹识别,以及是否录入了指纹,这里进行指纹的验证. //获取FingerprintManager实例 F ...
- QDialog之屏蔽Esc键(简单深刻,要么重写keyPressEvent然后break忽略此事件,要么重写eventFilter然后return,都是为了忽略此事件)
简述 Qt中Esc键会在一些控件中默认的进行一些事件的触发,比如:QDialog,按下Esc键窗口消失.大多数情况下,我们不需要这么做,那么就需要对默认事件进行屏蔽. 简述 源码分析 事件过滤器 事件 ...
- Android零基础入门第44节:ListView数据动态更新
原文:Android零基础入门第44节:ListView数据动态更新 经过前面几期的学习,关于ListView的一些基本用法大概学的差不多了,但是你可能发现了,所有ListView里面要填充的数据都是 ...
- 如何使用C#创建Windows Webcam应用
原文:如何使用C#创建Windows Webcam应用 最近想用C#写一个camera的应用.搜索了Google和StackOverflow,发现大部分的sample用了WIA或者DirectShow ...
- 升级d7的代码到2010以上版本注意事项(SetLength的参数就是字符长度,而不是字节长度,但Move函数要改)
delphi2010是delphi所有版本的分水岭,其中2010—xe10.2之间版本上的代码都有比较好的兼容性,基本上都能直接进行编译,不需要过多修改,但d7距d2010跨度4个版本以上,新版本除了 ...
- 配置我的Ubuntu Server记(包括桌面及VNC,SSH,NTP,NFS服务) good
跟老板申请买了一台配置相对较好的计算机回来做GPU计算,当然,不能独享,所以做成服务器让大家都来用. 这篇日志用来记录配置过程中遇到的一些问题,以方便下次不需要到处谷歌度娘. 安装Server版系统 ...
- UITableViewStyleGrouped 设置表头出现section不为0的问题
UITableViewStyleGrouped 设置表头出现section不为0的问题 1.如果使用UITableViewStylePlain样式的表格,那么header是会在表格滑动的时候在顶部悬浮 ...
- 原生Js封装的产品图片360度展示
挺简单的一段程序,但是效果不错: 1.把需要展示的36张图片先预加载到浏览器缓存里 2.给展示图片的div添加方法 3.通过鼠标左右移动的像素转换图片 在线效果预览:http://jsfiddle.n ...
- Linux软件安装及基本概念
apt 基本用法 apt-get [options] install/remove/source 软件包1 [软件包2...] 注意:软件包不要带后缀.deb 常用命令及解释如下: apt下载软件是根 ...
- python算法与数据结构-单链表(38)
一.链表 链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的.链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成.每个结点包括 ...