SEW内部IPOS设置和编程优选内容

上传人:无*** 文档编号:172445503 上传时间:2022-12-04 格式:PPT 页数:73 大小:2.81MB
收藏 版权申诉 举报 下载
SEW内部IPOS设置和编程优选内容_第1页
第1页 / 共73页
SEW内部IPOS设置和编程优选内容_第2页
第2页 / 共73页
SEW内部IPOS设置和编程优选内容_第3页
第3页 / 共73页
资源描述:

《SEW内部IPOS设置和编程优选内容》由会员分享,可在线阅读,更多相关《SEW内部IPOS设置和编程优选内容(73页珍藏版)》请在装配图网上搜索。

1、1严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998编辑器软件说明编辑器软件说明2严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998激活编辑器激活编辑器开始开始IPOS-Compiler编辑器编辑器3严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998编辑器程序窗口说明编辑器程序窗口说明菜单栏菜单栏工具栏工具栏程序窗口程序窗口状态栏状态栏目录栏目录栏4严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998工具栏和菜单栏工具栏和菜单栏5严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/199

2、8创建新项目创建新项目点击点击按钮按钮-创建新项目创建新项目对话框用于定义对话框用于定义IPOS程序的基本结构。程序的基本结构。初始部分初始部分任务任务2中断响应中断响应6严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998程序编辑器说明程序编辑器说明Task2程序部分程序部分初始程序部分初始程序部分激活激活Task2程序程序主程序部分(主程序部分(Task1)7严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998比较功能比较功能点击点击按钮按钮-编辑器内程序和控制器内程序比较编辑器内程序和控制器内程序比较控制器内程序和编辑器内程序不相同控制器内程序

3、和编辑器内程序不相同控制器内程序和编辑器内程序相同控制器内程序和编辑器内程序相同8严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998编译程序编译程序点击点击按钮按钮-编译程序编译程序提示编译成功或不成功提示编译成功或不成功程序扫描时间程序扫描时间程序占内存的程序占内存的比例比例9严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998编译并下载程序编译并下载程序点击点击按钮按钮-编译并下载程序编译并下载程序提示编译成功或不成功提示编译成功或不成功10严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998插入指令行插入指令行点击点击按

4、钮按钮-插入指令行插入指令行(编辑器提供了标准的输入方式编辑器提供了标准的输入方式)C-结构结构系统功能系统功能11严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998运行和停止程序运行和停止程序点击点击按钮按钮-运行程序运行程序点击点击按钮按钮-停止程序停止程序TASK2状态显示状态显示TASK1状态显示状态显示12严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998变量窗口变量窗口选择下拉菜单选择下拉菜单-显示所有的显示所有的IPOS(H1-H511)变量)变量Display/All VariablesIPOS变量包括系统变量、全局变量和用户变量

5、。变量包括系统变量、全局变量和用户变量。系统变量为有固定含义变量(系统变量为有固定含义变量(H453-H511)。)。全局变量为特殊应用模块中指定的变量。全局变量为特殊应用模块中指定的变量。用户变量为用户程序中可任意调用的变量。用户变量为用户程序中可任意调用的变量。13严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998变量窗口变量窗口选择下拉菜单选择下拉菜单-编辑编辑显示变量显示变量Display/Variable watch/Edit window选择变量选择变量增加显示变量增加显示变量删除显示变量删除显示变量显示变量区显示变量区所有变量区所有变量区14严选内容IPO

6、S-Compiler编辑器编辑器LY 2_E 10/1998选择显示方式选择显示方式点击鼠标右键选择点击鼠标右键选择显示方式显示方式显示方式:显示方式:带符号的十进制带符号的十进制 无符号的十进制无符号的十进制 十六进制十六进制 二进制二进制 ASCII代码代码15严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998注释说明注释说明多行注释多行注释/*.*/单行注释单行注释/.单行注释单行注释/说明:说明:便于用户编译和便于用户编译和解读程序。解读程序。16严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998程序信息程序信息选择下拉菜单选择下拉菜单-

7、显示程序信息显示程序信息Display/Program Information程序内存程序内存创建日期创建日期原文件目录原文件目录17严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998CompilerCompiler运算指令说明运算指令说明18严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998运算指令说明运算指令说明常用算术运算指令:常用算术运算指令:符号符号格式格式说明说明举例举例“+”H=H+H加 加H10=H11+H12;“-”H=H-H减 减H10=H11-H13;“”H=H*H乘 乘H10=H11*H14;“/”H=H/H除 除H10=

8、H11/H15;19严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998运算指令说明运算指令说明常用逻辑运算指令:常用逻辑运算指令:符号符号格式格式说明说明举例举例“”(条件(条件1)(条件)(条件2)与与“|”(条件(条件1)|(条件(条件2)或或例:例:if(H1=3)&(H2=5)H100=H1+H2;如果如果H1等于等于3,并且,并且H2等于等于5时时执行执行H100=H1+H2;例:例:if(H110)|(H25)H100=H1+H2;如果如果H1大于大于10,或者,或者H2小于小于5时时执行执行H100=H1+H2;20严选内容IPOS-Compiler编辑器

9、编辑器LY 2_E 10/1998指令说明指令说明常用位与位逻辑运算指令:常用位与位逻辑运算指令:符号符号格式格式说明说明举例举例“”(操作数(操作数1)(操作数)(操作数2)位和位位和位与与H3=H1H2“|”(操作数(操作数1)|(操作数(操作数2)位和位位和位或或H3=H1|H2“”(操作数(操作数1)(操作数)(操作数2)位和位位和位异或异或H3=H1 H2H1-0000,0000,1111,1100H2-0000,0000,0000,0101H3-0000,0000,0000,0100H1-0000,0000,1111,1100H2-0000,0000,0000,0101H3-000

10、0,0000,1111,1101H1-0000,0000,1111,1100H2-0000,0000,0000,0101H3-0000,0000,1111,1001与运算与运算异或运算异或运算或运算或运算21严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998指令说明指令说明常用移位运算指令:常用移位运算指令:例:例:H3=H1;4如果如果H1左移左移4位,右侧位,右侧 由由0添满添满符号符号格式格式说明说明举例举例“”操作数操作数左移位数左移位数操作数左移操作数左移H3=H1”操作数操作数右移位数右移位数操作数右移操作数右移H3=H110H1-0000,0000,101

11、0,0101H3-0000,1010,0101,000022严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998指令说明指令说明常用比较指令:常用比较指令:符号符号格式格式说明说明举例举例“”操作数操作数1 操作数操作数2大于大于“=”操作数操作数1=操作数操作数3大于等于大于等于“”操作数操作数1=操作数操作数4小于小于“=”操作数操作数1=5)H100=H1+H2;如果如果H1等于等于3,并且,并且H2大于等于大于等于5时时,执行执行H100=H1+H2;23严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998CompilerCompiler结构

12、指令说明结构指令说明24严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998指令说明指令说明-if.else表达:表达:if(条件)(条件)程序程序1;else 程序程序2;说明:说明:如果条件满足,执行程序如果条件满足,执行程序1;如果条件不满足,执行程序如果条件不满足,执行程序2。无无 else 分支分支有有 else 分支分支程序块(无程序块(无 else 分支)分支)程序块(有程序块(有 else 分支)分支)if(H1=3)H2=10;if(H1=3)H2=10;else H2=8;if(H1 3)H2=10;H3=11;if(H1 3)H2=9;else H2

13、=10;H3=11;例:例:25严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998指令说明指令说明-while表达:表达:while(条件)(条件)程序;程序;说明:说明:如果条件满足,程序循环执行;如果条件满足,程序循环执行;如果条件不满足,退出程序;如果条件不满足,退出程序;例例1:H2=0;H1=10;while(H1 5)H2=H2+1;H1=H1-1;H1=0;while(H1 10)continue;H2=H2+2;例例2:注:如果注:如果H1大于大于10,将不执行,将不执行 H2=H2+2指令,跳到指令,跳到while 的末端。的末端。H1=0;while

14、(1)+H1;if(H1=20)break;if(H1 10)continue;H2=H2+2;例例3:注:如果注:如果H1等于等于20,将退出,将退出while 指令;如果指令;如果H1大于大于10,跳到,跳到 while的末端。的末端。26严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998指令说明指令说明-Switchcasedefault表达:表达:说明:说明:如果表达式为如果表达式为1,执行程序,执行程序1;如果表达式为如果表达式为2,执行程序,执行程序2;当条件都不满足时,执行程序当条件都不满足时,执行程序n。注:如果注:如果H1等于等于1,H2加加1;如果如

15、果H1等于等于2,H3加加1;如果如果H1不等于不等于1、2,H4加加1;switch(表达式表达式)case Value 1:程序程序 1;case Value 2:程序程序 2;.default:程序程序n;switch(H1)case 1:+H2;break;case 2:+H3;break;default:+H4;break;例:例:27严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998常用的系统变量常用的系统变量说明说明28严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998H483(INPUT LVL)-开关量输入开关量输入开关量输入为

16、只读。开关量输入为只读。例:例:H483.6=1代表了代表了DI10为高电平的状态。为高电平的状态。例:例:H483=19=24+21+20代表了代表了DI04、DI01和和DI00为高电平的状态,为高电平的状态,其余开关量输入为低电平。其余开关量输入为低电平。注:注:二进制输入二进制输入端子定义端子定义DI17 DI16 DI15 DI14 DI13 DI12 DI11 DI10 DI05 DI04 DI03 DI02 DI01 DI00H483.x13131212111110109 98 87 76 65 54 43 32 21 10 0含义含义2 2 13132 2 12122 2 11

17、112 2 10102 2 9 92 2 8 82 2 7 72 2 6 62 2 5 52 2 4 42 2 3 32 2 2 22 2 1 12 2 0 0DI011A二进制输入二进制输入主板二进制输入主板二进制输入29严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998H482(OUTPUT LVL)-开关量输出开关量输出 H482开关量输入为只读。开关量输入为只读。例:例:H482.6=1代表了代表了DO13为高电平的状态。为高电平的状态。例:例:H482=19=24+21+20代表了代表了DO11、DI01和和DB00为高电平的状态,为高电平的状态,其余开关量输

18、出为低电平。其余开关量输出为低电平。注:注:二进制输出二进制输出端子端子DO17DO16DO15DO14DO13DO12DO11DO10DO02DO01DB00H482.X10109 98 87 76 65 54 43 32 21 10 0含义含义2 2 10102 92 82 72 62 52 42 32 22 12 0开关量输出开关量输出DIO11A主板开关量输出主板开关量输出30严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998H481(OUTPUT LVL)-开关量输出开关量输出-只写只写 H482开关量输入为只写。开关量输入为只写。例:例:H481.2=1代表

19、了设置代表了设置DO02为高电平。为高电平。例:例:H481=6=22+21代表了设置代表了设置DO02、DO01为高电平。为高电平。注:注:二进制输出二进制输出端子端子DO02DO01DB00H481.X2 21 10 0含义含义2 22 12 0主板开关量输出主板开关量输出31严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998H480(OUTPUT LVL)-开关量输出开关量输出-只写只写 H480开关量输入为只写。开关量输入为只写。例:例:H480.2=1代表了设置代表了设置DO12为高电平。为高电平。例:例:H481=6=22+21代表了设置代表了设置DO12、

20、DO11为高电平。为高电平。注:注:二进制输出二进制输出端子端子DO17DO16DO15DO14DO13DO12DO11DO10H480.X7 76 65 54 43 32 21 10 0含义含义2 2 7 72 62 52 42 32 22 12 0开关量输出开关量输出DIO11A32严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998H473(IPOS 状态字)状态字)33严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998H484(IPOS 控制字)控制字)34严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998H509、

21、H510和和H511-位置值位置值变量变量名称名称说明说明接口接口H509ACTPOS ABS绝对值编码器位置值绝对值编码器位置值X62H510ACTPOS EXT外部编码器位置值外部编码器位置值X14H511ACTPOS MOR电机编码器位置值电机编码器位置值X1535严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998SEWSEW标准功能说明标准功能说明36严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998SEW标准功能说明标准功能说明-BitClear、BitSet、BitMove、BitNegMove符号符号格式格式说明说明举例举例_Bit

22、Clear_BitClear(H,Bit)位清零_BitClear(H100,0)_BitSet_BitSet(H,Bit)位置位_BitSet(H101,2)_BitMove_BitMove(H,Bit,H,Bit)位赋值_BitMove(H10,5,H15,0)_BitMoveNeg_BitMoveNeg(H,Bit,H,Bit)位取反赋值_BitMoveNeg(H10,5,H15,0)位指令位指令37严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998SEW标准功能说明标准功能说明-BitClear、BitSet、BitMove、BitNegMove _BitSet

23、(H481,2);DI01yesno _BitClear(H481,2);Start 举例:举例:当当DI01=1时,时,DO02=1;当当DI01=0时,时,DO02=0;if(DI01)_BitSet(H481,2);/H481.1-DO02 else _BitClear(H481,2);/H481.1-DO02 38严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998SEW标准功能说明标准功能说明-_Go0符号符号:_Go0(类型)(类型)描述:描述:该指令定义参考运行类型。该指令定义参考运行类型。说明:说明:类型由类型由C、U、W、NW和和CAM或或RESET组成

24、。组成。GO0_C_W_ZP GO0_U_W_ZP GO0_C_NW_ZP GO0_U_NW_ZP GO0_C_W_CAM GO0_U_W_CAM GO0_C_NW_CAM GO0_U_NW_CAMC(Conditional)-只有在没有参考点时,参考运行有效。只有在没有参考点时,参考运行有效。U(Unconditional)-无论有无参考点,参考运行始终有效。无论有无参考点,参考运行始终有效。W(Wait)-等待,直到参考运行结束。等待,直到参考运行结束。NW(NoWait)-不等待,运行下一条指令。不等待,运行下一条指令。ZP(Zero Pulse)-参考运行到零脉冲。参考运行到零脉冲。C

25、AM-参考运行到凸轮点。参考运行到凸轮点。39严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998类型类型0:类型类型1:P903(参考类型)(参考类型)说明:说明:当定义为当定义为CAM,初始位,初始位 置为参考点。置为参考点。当定义为当定义为ZP,零脉冲位置,零脉冲位置 为参考点。为参考点。零脉冲零脉冲初始位置初始位置凸轮开关凸轮开关正转极限正转极限反转极限反转极限说明:说明:向反转极限方向运行。向反转极限方向运行。40严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998类型类型2:P903(参考类型)(参考类型)凸轮开关凸轮开关正转极限正转极限

26、反转极限反转极限说明:说明:向正转极限方向运行。向正转极限方向运行。凸轮开关的下降沿为参考凸轮开关的下降沿为参考 点。点。类型类型3:反转极限反转极限正转极限正转极限说明:说明:向正转极限方向运行。向正转极限方向运行。正转极限开关的下降沿为正转极限开关的下降沿为 参考点。参考点。41严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998类型类型4:类型类型5:P903(参考类型)(参考类型)说明:说明:向反转极限方向运行。向反转极限方向运行。反转极限开关的下降沿为反转极限开关的下降沿为 参考点。参考点。说明:说明:当前位为参考点。当前位为参考点。当前位当前位42严选内容IP

27、OS-Compiler编辑器编辑器LY 2_E 10/1998类型类型6:P903(参考类型)(参考类型)凸轮开关凸轮开关正转极限正转极限反转极限反转极限说明:说明:向正转极限方向运行。向正转极限方向运行。凸轮开关的反方向下降沿凸轮开关的反方向下降沿为参考点。为参考点。类型类型7:反转极限反转极限正转极限正转极限说明:说明:向反转极限方向运行。向反转极限方向运行。凸轮开关的反方向下降沿凸轮开关的反方向下降沿为参考点。为参考点。凸轮开关凸轮开关43严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998noGO0_U_NW_ZP!DI00yesGO0_RESET!referen

28、cereturnyesno/运行参考点运行参考点/没到参考点没到参考点DI01Start ReferenceModeEND ReferenceModeyesno/参考运行条件参考运行条件 ReferenceMode()/参考运行模式参考运行模式 if(DI01)/参考运行条件参考运行条件 _Go0(GO0_U_NW_ZP);/参考运行参考运行 while(!referenced)/没有到达参考点没有到达参考点 if(!DI00)/如如DI03=0退出参考运行程序退出参考运行程序 _Go0(GO0_RESET);return;参考运行举例参考运行举例44严选内容IPOS-Compiler编辑器编

29、辑器LY 2_E 10/1998SEW标准功能说明标准功能说明-_GoAbs符号符号:_GoAbs(类型,位置)(类型,位置)描述:描述:该指令定义运行到一个该指令定义运行到一个绝对位置绝对位置。说明:说明:类型由类型由Go_NOWAIT和和Go_WAIT组成。组成。Go_NOWAIT-不等待,运行下一条指令。不等待,运行下一条指令。Go_WAIT-等待,直到到达给定绝对位置。等待,直到到达给定绝对位置。位置可为一个常数、变量或间接变量。位置可为一个常数、变量或间接变量。指目标位和参考位指目标位和参考位之间的距离之间的距离45严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1

30、998绝对位置运行举例绝对位置运行举例StartPositioningGO_NOWAITPosition!DI00yesnoAS_PSTOPreturnyesEndPositioning!in_Position/绝对位置运行绝对位置运行/没有到达绝对位置没有到达绝对位置/DI00=0,退出绝对,退出绝对 位置运行位置运行Positioning()_GoAbs(GO_NOWAIT,Position);while(!in_Position)if(!DI00)_AxisStop(AS_PSTOP);return;46严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998SEW标准

31、功能说明标准功能说明-_GoRel符号符号:_GoRel(类型,位置)(类型,位置)描述:描述:该指令定义运行到一个该指令定义运行到一个相对位置相对位置。说明:说明:类型由类型由Go_NOWAIT和和Go_WAIT组成。组成。Go_NOWAIT-不等待,运行下一条指令。不等待,运行下一条指令。Go_WAIT-等待,直到到达给定相对位置。等待,直到到达给定相对位置。位置可为一个常数、变量或间接变量。位置可为一个常数、变量或间接变量。指目标位和当前位指目标位和当前位之间的距离之间的距离47严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998SEW标准功能说明标准功能说明-_S

32、etSys符号符号:_SetSys(系统值,变量)(系统值,变量)描述:描述:设定系统值。设定系统值。系统值包括:系统值包括:SS_N11:内部固定转速内部固定转速 n11 SS_N12:内部固定转速内部固定转速 n12 SS_N13:内部固定转速内部固定转速 n13 SS_N21:内部固定转速内部固定转速 n21 SS_N22:内部固定转速内部固定转速 n22 SS_N23:内部固定转速内部固定转速 n23 SS_PIDATA:设定设定 PI 字字*h=PI 字的个数字的个数*h+1=PI 1*h+2=PI 2*h+3=PI 3 SS_OPMODE:设定运行模式设定运行模式*h=11:CFC

33、(speed control)*h=12:CFC&torque control*h=13:CFC&IPOS(positioning)*h=14:CFC&synchronous operation(DRS11A)*h=16:SERVO(speed control)*h=17:SERVO&torque control*h=18:SERVO&IPOS(positioning)h=19:SERVO&synchronous operation(DRS11A)H100=5000;_SetSys(SS_N11,H100);H100=3;/PI字的个数字的个数 H101=10;/PI1 H102=100;/P

34、I2 H103=1000;/PI3_SetSys(SS_PIDATA,H100);H100=13;_SetSys(SS_OPMODE,H100);48严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998SEW标准功能说明标准功能说明-_SetSys SS_IMAX:设定最大电流值设定最大电流值(CFC or SERVO only);Unit:0.1%SS_POSRAMP:位控斜率位控斜率;单位单位:1 ms*h=位控上升斜率位控上升斜率 1*h+1=位控下降斜率位控下降斜率 2 SS_POSSPEED:位控转速位控转速;单位单位:0.1 rpm*h=CW速度速度*h+1=

35、CCW速度速度 H100=1000;/定义上升斜率定义上升斜率 H101=1000;/定义下降斜率定义下降斜率 _SetSys(SS_POSRAMP,H100);H100=1000;/定义定义CW转速转速 H101=1000;/定义定义CCW转速转速 _SetSys(SS_POSSPEED,H100);49严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998SEW标准功能说明标准功能说明-_GetSys符号符号:_GetSys(系统值,变量)(系统值,变量)描述:描述:读取系统值。读取系统值。系统值包括:系统值包括:GS_ACTCUR:实际电流值实际电流值 GS_ACTS

36、PEED:实际转速实际转速 GS_SPSPEED:设定转速设定转速 GS_ERROR:故障代码故障代码 GS_SYSSTATE:7-段码显示段码显示 GS_ACTPOS:实际位置实际位置 GS_SPPOS:设定位置设定位置 GS_INPUTS:二进制输入(包括主板和扩展板)二进制输入(包括主板和扩展板)GS_OUTPUTS:二进制输出(包括主板和扩展板)二进制输出(包括主板和扩展板)GS_IxT:系统的利用率系统的利用率 GS_ANINPUTS:模拟量输入模拟量输入1和和2的电压值的电压值*h=模拟量输入模拟量输入1*h+1=模拟量输入模拟量输入2将系统值存放在变量中将系统值存放在变量中50严

37、选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998SEW标准功能说明标准功能说明-_GetSys GS_ANOUTPUTS:模拟量输出模拟量输出*h=模拟量输出模拟量输出 1*h+1=模拟量输出模拟量输出 2 GS_PODATA 读取读取PO值值*h+0:总线类型总线类型 0=Reserved 1=S0(RS485#1)2=S1(RS485#2)3=Fieldbus 4=Reserved 5=SBus*h+1=PO data 的个数的个数*h+2=PO1*h+3=PO2*h+4=PO3 H100=3;/定义定义FIELDBUS总线类型总线类型 H101=3;/定义定义PO

38、值的个数值的个数 _GetSys(H100,GS_PODATA);/读取读取PO值值 H200=H103*10;/将将PO2乘以乘以10 51严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998程序举例程序举例52严选内容主板主板X13X13开关量输入说明:开关量输入说明:凸轮开关凸轮开关(P602=Reference Cam)DCOMV024DI05DI04DI03DI02DI01DI00控制器禁止控制器禁止 DGND接外部24V直流电源的0V说明:说明:1。DI00(控制器禁止)-在自动运行、点动运行和参考运行时,DI00为 高电平;急停时,DIOO为低电平。2。DI

39、03-凸轮开关。53严选内容DI011ADI011A扩展板扩展板X22X22开关量输入说明:开关量输入说明:允许参考运行允许参考运行(1秒的脉冲)秒的脉冲)允许自动运行允许自动运行(1秒的脉冲)秒的脉冲)反点运行反点运行正点运行正点运行DI16DI17DI15DI14DI13DI12DI11DI10模式选择模式选择DI10DI1110点动模式01寻参模式11自动模式说明:1。DI10、DI11为模式选择为模式选择-不同的组合可以选择点动模式、寻参模式和自动模式。不同的组合可以选择点动模式、寻参模式和自动模式。2。在点动模式下。在点动模式下-DI12高电平时为正点运行,高电平时为正点运行,DI1

40、3高电平为反点运行。高电平为反点运行。3。在参考模式下。在参考模式下-DI14 1秒秒 高电平触发参考运行。高电平触发参考运行。4。在自动模式下。在自动模式下-DI15 DI14 1秒秒 高电平触发自动运行。高电平触发自动运行。5。P610-P617=IPOS INPUT。54严选内容55严选内容 while(1)if(!DI10&DI11)/点动模式点动模式 JogMode();if(DI10&!DI11)/参考运行模式参考运行模式 ReferenceMode();if(DI10&DI11)AutomaticMode();/自动模式自动模式 主程序:主程序:Start MainInitial

41、ization1!DI10&DI11JogModeAutomaticModeDI10&DI11DI10&!DI11ReferenceModeyesyesyesnono选择点动运行选择点动运行选择寻参运行选择寻参运行选择自动运行选择自动运行56严选内容点动子程序:点动子程序:Start JogMode!DI10&DI11yesnoGS_ACTPOSCurrentPostionDI12&!DI13TargetPos=CurrentPostion+409600!DI12&DI13TargetPos=CurrentPostion-409600yesnoAS_PSTOPEnd JogModeyesno/

42、取当前位取当前位/选择正转选择正转/选择反转选择反转/运行停止运行停止/取目标位取目标位 57严选内容点动子程序:点动子程序:JogMode()/点动模式点动模式 while(!DI10&DI11)/DI10=0 DI11=1选择点动模式选择点动模式 jogspeed;/选择点动转速选择点动转速 _GetSys(currentposition,GS_ACTPOS);/读取当前位置读取当前位置 if(DI12&!DI13)/DI12=1 DI13=0选择正点运行选择正点运行 TargetPos=H511+409600;/计算目标位置计算目标位置=H511(当前位置当前位置)+409600 con

43、tinue;/跳转到跳转到while的末端的末端 if(!DI12&DI13)/DI12=0 DI13=1选择反点运行选择反点运行 TargetPos=H511-409600;/计算目标位置计算目标位置=H511(当前位置当前位置)-409600 continue;/跳转到跳转到while的末端的末端 _AxisStop(AS_PSTOP);/停止运行停止运行 58严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998noGO0_U_NW_ZP!DI00yesGO0_RESET!referencereturnyesno/运行参考点运行参考点/没到参考点没到参考点DI14St

44、art ReferenceModeEND ReferenceModeyesno/参考运行条件参考运行条件 ReferenceMode()/参考运行模式参考运行模式 if(DI14)/参考运行条件参考运行条件 _Go0(GO0_U_NW_CAM);/参考运行参考运行 while(!referenced)/没有到达参考点没有到达参考点 if(!DI00)/如如DI03=0退出参考运行程序退出参考运行程序 _Go0(GO0_RESET);return;参考运行子程序参考运行子程序59严选内容IPOS-Compiler编辑器编辑器LY 2_E 10/1998自动运行子程序自动运行子程序StartPos

45、itioningGO_NOWAITPosition!DI00yesnoAS_PSTOPreturnyesEndPositioning!in_Position/绝对位置运行绝对位置运行/没有到达绝对位置没有到达绝对位置/DI00=0,退出绝对,退出绝对 位置运行位置运行Positioning()_GoAbs(GO_NOWAIT,Position);while(!in_Position)if(!DI00)_AxisStop(AS_PSTOP);return;60严选内容IPOS程序实例程序1:开关量控制多段速通过三个端子(DI03、DI04、DI05)控制7段速度。参数设定:DI01(P600):

46、Enable/rap.stopDI03(P602):IPOS inputDI04(P603):IPOS inputDI05(P604):IPOS inputSetpointsource(P100):BIPOL./FIX.SETPTOperating mode(P700):VFC,VFC-n-Control程序将七个速度定义给H1到H7,用一个Pointer变量指示端子的变化,然后以Pointer为指针,按照端子的变化将七个速度分别传递给N11。VariableDI05DI04DI03Speed rpmH1001-1200H2010-800H3011-300H4100200H5101500H61

47、10900H7111140061严选内容/*=IPOS source file=*/#include#define InputImage (InputLevel 3)&0 x00000007)#define FixedSetpointOn _BitSet(ControlWord,4)#define FixedSetpointOff _BitClear(ControlWord,4)#define FixedSetpoint1 H1#define FixedSetpoint2 H2#define FixedSetpoint3 H3#define FixedSetpoint4 H4#define F

48、ixedSetpoint5 H5#define FixedSetpoint6 H6#define FixedSetpoint7 H7/Declaration of variableslong Pointer,FixedSetpoint;/*=Main function(IPOS initial function)=*/main()/*-Initialization -*/FixedSetpoint1=-1200*10;FixedSetpoint2=-800*10;FixedSetpoint3=-300*10;FixedSetpoint4=200*10;FixedSetpoint5=500*10

49、;FixedSetpoint6=900*10;FixedSetpoint7=1400*10;/*-Main program loop -*/while(1)Pointer=InputImage;FixedSetpoint=*Pointer;_SetSys(SS_N11,FixedSetpoint);if(Pointer=0)FixedSetpointOff;else FixedSetpointOn;开关量控制多段速程序62严选内容程序2:位控程序+中间位置变速程序主要分为两部分,首先为寻零,然后就是位控部分。位控部分利用H511 ACTPOS_MOT(实际位置)与设定的两个位置SwitchPo

50、s1和SwitchPos2比较来选择相应的速度从而达到走位过程中的变速。/*=IPOS source file=*/#include#include#pragma globals 350 365#define SECOND 1000#define referenced (StatusWord&0 x100000)#define in_Position (StatusWord&0 x80000)#define PosSpeed1 _SetSys(SS_POSSPEED,Speed1)#define PosSpeed2 _SetSys(SS_POSSPEED,Speed2)#define PosS

51、peed3 _SetSys(SS_POSSPEED,Speed3)#define CWTravel 0#define CCWTravel 1 SSPOSSPEED Speed1,Speed2,Speed3;SSPOSRAMP PosRamp1;long StartPosition,LimitPosition;long SwitchPos1,SwitchPos2;long TravelDirection;63严选内容/*=Main function(IPOS initial function)=*/main()/*-Initialization -*/Speed1.CW=Speed1.CCW=6

52、00*10;Speed2.CW=Speed2.CCW=1100*10;Speed3.CW=400*10;Speed3.CCW=1400*10;PosRamp1.Up=500;PosRamp1.Down=500;StartPosition=0;LimitPosition=200000;SwitchPos1=80000;SwitchPos2=140000;TravelDirection=CWTravel;_SetSys(SS_POSRAMP,PosRamp1);/*-Main program loop -*/while(1)if(!referenced)ReferenceTravel();else

53、 Positioning();/*=Functions=*/ReferenceTravel()if(DI00)_Go0(GO0_U_NW_ZP);while(!referenced)if(!DI00)_Go0(GO0_RESET);return;TravelDirection=CWTravel;64严选内容Positioning()if(DI01&DI00)if(TravelDirection=CWTravel)if(ActPos_Mot SwitchPos1)PosSpeed1;else if(ActPos_Mot SwitchPos2)PosSpeed2;else PosSpeed3;_G

54、oAbs(GO_NOWAIT,LimitPosition);if(in_Position)_Wait(SECOND);TravelDirection=CCWTravel;if(TravelDirection=CCWTravel)/Query condition for return travel PosSpeed3;_GoAbs(GO_NOWAIT,StartPosition);/Initiate return movement if(in_Position)/Query whether destination position reached TravelDirection=CWTravel

55、;_Wait(SECOND);else _AxisStop(AS_PSTOP);/Perform positioning stop TravelDirection=CCWTravel;/Set travel direction on return travel 65严选内容程序3:位控程序-Jog模式,寻参模式,自动位控模式主程序首先判断是否寻过参,如果没有,则进入寻参模式。如果寻参完毕,在DI01为0时进入点动模式,在DI01为1时进入自动位控模式。在点动模式下,DI03和DI04用来控制CW和CCW。程序中在寻参模式中用_Go0指令来寻零;而在点动模式下使用了_GoRel指令(让电机向某一

56、方向走相对于当前位置的一段距离,达到点动效果);在自动模式下,设定了两个位置,目的是让电机在这两个固定位置往返运动,所以用_GoAbs指令来走绝对位置。参数设定:DI01(P600):IPOS inputDI02(P601):IPOS input DI03(P602):IPOS inputDI04(P603):IPOS inputDI05(P604):CW limit SwitchDI06(P605):Reference camDI07(P606):CCW limit SwitchOperating mode(P700):&IPOSReference travel type(P903):166

57、严选内容/*=IPOS Source File=*/#include#include#pragma globals 350 365#define SECOND 1000#define referenced (StatusWord&0 x100000)#define in_Position (StatusWord&0 x80000)#define CreepTraverse _SetSys(SS_POSSPEED,CreepTraverseSpeed)#define RapidTraverse _SetSys(SS_POSSPEED,RapidTraverseSpeed)SSPOSSPEED C

58、reepTraverseSpeed,RapidTraverseSpeed;SSPOSRAMP PosRamp1;long MinPosition,MaxPosition,CurrentPos;/*=Main Function(IPOS Entry Function)=*/main()/*-Initialisation -*/RapidTraverseSpeed.CW=RapidTraverseSpeed.CCW=1400*10;CreepTraverseSpeed.CW=CreepTraverseSpeed.CCW=1000*10;PosRamp1.Up=PosRamp1.Down=500;M

59、inPosition=0;MaxPosition=80000;_SetSys(SS_POSRAMP,PosRamp1);/*-Main Loop -*/while(1)if(!referenced)ReferenceTravel();else if(DI01)AutomaticMode();else ManualMode();/*=Functions=*/ReferenceTravel()if(DI00)_Go0(GO0_U_NW_ZP);while(!referenced)if(!DI00)_Go0(GO0_RESET);return;程序:67严选内容ManualMode()CreepTr

60、averse;while(!DI01)_GetSys(CurrentPos,GS_ACTPOS);if(DI03&!DI04)_GoRel(GO_NOWAIT,1000);continue;if(!DI03&DI04)_GoRel(GO_NOWAIT,-1000);continue;_AxisStop(AS_PSTOP);AutomaticMode()CreepTraverse;_GoAbs(GO_NOWAIT,MinPosition);while(!in_Position)if(!DI01)_AxisStop(AS_PSTOP);return;_Wait(SECOND);RapidTrave

61、rse;while(DI01)_GoAbs(GO_NOWAIT,MaxPosition);while(!in_Position)if(!DI01)_AxisStop(AS_PSTOP);return;_Wait(2*SECOND);_GoAbs(GO_NOWAIT,MinPosition);while(!in_Position)if(!DI01)_AxisStop(AS_PSTOP);return;_Wait(2*SECOND);68严选内容程序4:位控程序与总线控制结合参数设定:Operating mode(P700):VFC-n-Ctrl&IPOSDI01(P601):EnableDI02

62、(P602):Reset DI03(P603):Reference camDI04(P604):CW limit SwitchDI05(P605):CCW limit SwitchDI10(P610)DI17(P617):IPOS inputDO01(P620):ReadyDO02(P621):FaultDO10(P630):IPOS outputDO11(P631):IPOS outputDO12(P632):IPOS outputDO14(P634):IPOS outputDO15(P635):IPOS outputDO16(P636):IPOS in postionDO17(P637):

63、IPOS referenceP870:ControlWord2P871:Position highP872:position lowP873:ControlWord2P874:Position highP875:position lowP876:ONP941(IPOS encoder source):Motor encoder on terminal X1569严选内容 程序仍然主要有三部分组成,寻参部分,点动部分,自动运行部分。实验中,用BUS MONITOR来发控制字。使DI00为1,并发送PO1 0806(16进制)开始寻参模式,寻参完成可分别改变DI14、DI15来进行点动的正转和反转

64、(即发送PO1 1006正转,PO1 2006反转)。发送PO1 C006 开始自动模式,自动模式的程序是走一个绝对位置,该位置是通过PO2和PO3来决定的,PO2控制高4位(16进制),PO3控制低四位(16进制)。通过发送过程输出字来确定要走的绝对位置。程序说明:70严选内容#include#include/=Travel variables#pragma globals 200 249long FaultNumber;SSPOSSPEED PosSpeed;/=Terminal assignment#define I_ControllerInhibit DI00#define I_Ena

65、ble DI01#define I_CWLimitSwitch DI04#define I_CCWLimitSwitch DI05#define I_StartReferenceTravel DI13#define I_JogCW DI14#define I_JogCCW DI15#define I_StartEnable DI16#define I_Automatic DI17#define O_Ready DO01#define O_Fault DO02#define O_IposInPosition DO16#define O_IposReference DO17#define refe

66、renced (StatusWord&0 x100000)/=Fixed values#define RAPIDTRAVERSE H10#define CREEPTRAVERSE H11#define FAULT_LIMITSWITCH 29#pragma list/*=Subroutine for initializing the drive.=*/Initialize()OptOutpIPOS =0;/Clear all outputs ControlWord =0;/Clear IPOS control word RAPIDTRAVERSE=14000;/Set rapid traverse speed CREEPTRAVERSE=2000;/Set creep traverse speed /End Initialize()/*=Fault response move clear from limit switch.=*/MoveClearFromLimitSwitch()_GetSys(FaultNumber,GS_ERROR);if(FaultNumber=FAULT_LI

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!