收藏 分销(赏)

SEW控制案例.docx

上传人:鱼** 文档编号:852361 上传时间:2024-03-29 格式:DOCX 页数:11 大小:1.08MB 下载积分:5 金币
下载 相关 举报
SEW控制案例.docx_第1页
第1页 / 共11页
SEW控制案例.docx_第2页
第2页 / 共11页


点击查看更多>>
资源描述
SEW 伺服控制器调试方法 一.硬件组态 1.选择所要组态的过程通道数,前三个过程值的含义可以在参数中设定,后面的过程值可 在 IPOS 程序中调用。(南玻镀膜线腔体溅射区的伺服电机组态为 3PD,进出口区选择 10PD) 图 1.选择组态过程通道数 2.组态好, PLC 会自动为该控制器分配地址(以 3PD 为例),分配了 3 个字的输入和 3 个 字的输出。 图 2.硬件组态完成画面 二.控制器程序 1.过程值分为过程输出字和过程输入字。过程输出值为 PLC→控制器的数值,包括控制字 和设定值;过程输入值为控制器 →PLC 的数值,包括状态字和实际值。 (如图 3 示意) 图 3.过程值描述 2.过程值的定义要靠控制器参数设置来完成。打开 MOVITOOLS 的 MT-MANAGER 画面,如图 4 图 4. MOVITOOLS 的 MT-MANAGER 画面 点击“Shell”,进入参数设置画面,点开第 8 组参数的 87.Process data description,按 照图 5 进行设置。 图 5. Process data description 参数组设置 3. 一个典型控制系统伺服电机程序如下: #include <constb.h> #include <iob.h> MOVLNK Spd; MLDATA Spd_Data; tasc2() { } tasc3() { /*-------------------------------------------------------- 读 PO 值 (from PLC) 把 PLC 中设定的值送入伺服控制器中 --------------------------------------------------------*/ H150=3; //定义 GetSys()的总线类型 H151=3; //定义 GetSys()的 PO 数量,这里是 3 个 PO _GetSys( H150,GS_PODATA ); //把 PLC 中的变量送入伺服控制器中 注 3.2 /*-------------------------------------------------------- 写 PI 值 (to PLC) --------------------------------------------------------*/ H410=3; H413=H483;  //如果是三个 PD 以上的, H+0 必须是 PD 个数 //H411 为 Status Words 1 从 P873 中设定 PI1 //H412 是实际的速度,从 P874 中设定 注 3.3 _SetSys( SS_PIDATA,H410 ); } /*============================================= Main Function (IPOS Entry Function) ===============================================*/ main() { } 几点注明: 3.1 程序里的 Hxxx (如 H150,H410,H483)表示控制器程序内部存储空间,相当于 Step7 里 的 M 中间变量,但 Hxxx 有些是作固定用处的,可以在打开 IPOS 编程画面中点击 Display-->All Variables 来查看 Hxxx。可以看到,从 H453 到 H511 是被占用的,用户不能自 定义。 图 6.查看 Variables 表 3.2 _GetSys 是个系统函数,作用是将外部系统的值送入伺服控制器(外部系统可以是外接 编码器,也可以是通过 Profibus 相连的 PLC 系统)。根据帮助文件,它的形式应该是_GetSys(H, sys) , H 就是上面所说的 Hxxx 内部变量, sys 表示了该函数的类型,程序应到到的 GS_PODATA 是 sys 的一种类型,作用就是从缓冲区读取 PLC 的过程值。 帮助文件原文如下: GS_PODATA:Reading the PO data buffer H: Bus type 0 = Reserved 1 = S0 (RS485 #1) 2 = S1 (RS485 #2) 3 = Fieldbus 4 = Reserved 5 = SBus H + 1 = Number of PO data H + 2 = PO1 H + 3 = PO2 我们用 H150 作为上面的 h 来使用, H150=3 则说明总线类型为 Fieldbus,H+1 为 H151 就是 PO1,根据图 5 所示,可以看出就是 CTRL.WORD1 (控制字 1),同理 H152 对应 PO2 为 SPEED (速度给定), PO3 未定义。再联系图 2 的硬件组态画面, Q612.0---> Q613.7 是 PLC 第一个字的输出,即 PO1 或 CTRL.WORD1。第二个输出字 PQW614 就是速度给定。 图 7.H483 显示内容 3.2  _SetSys 也可以照此理解,是将伺服系统内部过程值通过 Hxxx 送入外部系统(PLC 系 统)。 H410 要对应 PD 的个数, 因为实际组态是 3PD, 所以有 H410=3, 所以 H413 就是送入 外部系统的第一个 PI 值,根据图 5 是 STATUS.WORD1,即 PIW612。 H210 通过图 5 设置 得到了电机的实际速度, 移入 H412,从 PIW614 中可以得到。通过图6 所示方式打开 Variables 表,可以看到 H483 为“InputLevel”,它实际对应了伺服控制器上端子插排的输入值。 关于控制器上端子插排, 不同类型控制器插排或不同用处的输入得到的定义不同, 要根据实 际情况来定。 H413=H483 就意味着是将该控制器端子插排的输入信号送入 PI3,也就是 PIW616。 三.如何实际控制一台 SEW 电机 1.手动控制 用 SEW 电缆连接伺服控制器, 在“Connect to”选项框中选择“Single Inverter (Peer to Peer) ”;选择点击“Update”,系统会自动查找并在“Connected Inverters”中列出当 前联接的伺服控制器的相关信息。 图 8 图 4 画面点击“Shell”,在弹出窗口中(图 8)点手型按钮,出现图9 所示画面,就可 以进行手动控制伺服电机(不需要伺服控制器程序和 STEP7 程序)。 图 9 手动控制画面 其中 CW 是正转, CCW 是反转,点击 F11=START 就启动电机,下面的滑动条可以控制转 速高低。 手动控制可以作为测试电机和伺服控制器连线是否正确的前提, 并检查传动滚轴齿轮的 磨合状态。 2.通过连接下位 STEP7 程序控制 以图 2 所示的硬件组态为例,首先要知道控制字的定义,图 5 的参数设置了第一个输 出字为 Control word 1 ,手册第 83 页给出了 Control word 1 的定义,前 8 位 定义说明如图 10 所示。 (虽然控制字是 16 位,但高 8 位可以暂时不考虑) 图 10 Control word 1 前 8 位定义说明 根据要求, 电机启动需要 Control word 1 的 bit1 和 bit2 为 1,即 Control word 1 为 0000 0000 0000 0 110, 对应 16 位表达式为 W#16#6; 电机停止需要 bit1 为 1,即 Control word 1 为 0000 0000 0000 0010,对应 16 位表达式为 W#16#2; 快速刹车对应 16 位表达式为 W#16#0。 速度给定与变速比有关,所以不能一概而论,以南玻为例,滚轮直径为150mm,减速比为 76.37 , 即 滚 轮 转 一 圈 对 应 伺 服 电 机 转 76.37 圈 , 1m/min 对 应 滚 轮 1000/(150*pi)=2. 122rpm/min ,所 以 1m/min 相当 于给 电机 的速 度 为 2. 122*76.37=162.06 rpm/min。 (但速度给定必须为整型) 针对图 2 的硬件组态,以一个简单例子介绍如何控制伺服电机。 在 OB1 程序里编写控制程序 M200.0 为启动命令, M200. 1 为停止命令。一旦 M200.0 为 1 且没有停止信号 M200. 1,则写入控制字 6,并给速度 162 (对应 10m/min 的传动速度)。 M200. 1 位 1,则写入控制字 2 ,停止电机运行。 快速刹车, M200.2 表示刹车信号,为 1 则写入控制字 0,快速停止电机,如图 12 所示。 图 11 STEP7 控制程序(1) 图 12 STEP7 控制程序(2) 3.读取编码器的脉冲值 编码器值是一个 32 位双整型数值,所以对应到 STEP7 要占用两个字的存储空间。 以 C1M01 为例组态为 10PD 的电机。 (图 13) 用_SetSys( SS_PIDATA,H410 );函数,此时 H410=10; //表示 10PD H412=H210/10; // 实际速度值 为 PI2 H413=H511/65536; //实际脉冲值高位 PI3 H414=H511%65536; //实际脉冲值低位 PI4 即 PI3 和 PI4 分别对应编码器脉冲值的高位和低位, H511 是 IPOS 内部存储空间, 存储 数值为编码器当前值, 65536 对应 16 进制的 10000。此时要在 SHELL 里将 PI3 (P875)设 为 NO FUNCTION。根据硬件组态可知,编码器脉冲反馈值为 PID956。 图 13 10PD 电机 C1M01 组态 一个典型读取编码器脉冲值应用程序: “以高速走 4 米定长”。 (图 14) 玻璃停在 C0 的 LS100 处,开门向 C1 发送 程序第一行:门 1FV1 开到位, C0 和 C1 同时向前高速运行,感应着 LS100 (并上 LS101 作为保险)的一瞬间置位 C0M01_START_DISPATCH 信号,开始记下编码器当前脉冲值 PID956 , 放 入 "C1M01_DB".POS_PEC1 中 , 然 后 把 此 数 值 加 上 "C1M01_DB".POS_DISTANCE1_DI (4 米对应的脉冲数值),放入中间变量 #TMP_DI8 里, 电机运行 PID956 一直增加,当增加到大于 #TMP_DI8,则表明已走完 4 米距离,转为低速 运行。 图 14
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服