{项目管理项目报告}项目自动送料车控制系统相关知识

上传人:精****库 文档编号:141239382 上传时间:2020-08-05 格式:PPT 页数:67 大小:1.07MB
返回 下载 相关 举报
{项目管理项目报告}项目自动送料车控制系统相关知识_第1页
第1页 / 共67页
{项目管理项目报告}项目自动送料车控制系统相关知识_第2页
第2页 / 共67页
{项目管理项目报告}项目自动送料车控制系统相关知识_第3页
第3页 / 共67页
{项目管理项目报告}项目自动送料车控制系统相关知识_第4页
第4页 / 共67页
{项目管理项目报告}项目自动送料车控制系统相关知识_第5页
第5页 / 共67页
点击查看更多>>
资源描述

《{项目管理项目报告}项目自动送料车控制系统相关知识》由会员分享,可在线阅读,更多相关《{项目管理项目报告}项目自动送料车控制系统相关知识(67页珍藏版)》请在金锄头文库上搜索。

1、项目十一自动送料车控制系统,项目十一 自动送料车控制系统,项目描述 任务1 认知PLC程序结构 任务2自动送料车系统工艺过程分析; 外部接线图设计和I/O接线 任务3 用经验法编程控制送料车 任务4 用顺序控制编程控制送料车,项目描述,初始状态:S1=OFF,S2=OFF,阀K1、K2,电动机M1、M2、M3皆为OFF。 气动系统,红灯灭L1=OFF,绿灯L2=ON,表示允许汽车开进装料,K1阀通电打开进料,当料斗中料到达上位S1时,K1阀关闭;5s后,红灯L1亮,绿灯L2灭。电机M3运行,电机M3运行2s后M2接通,M2运行2s后M1也接通运行,料斗出料阀K2在M1接通2s后打开出料。 当汽

2、车装料后S2=ON,料斗出料阀K2关闭,3s后电机M1停止运行,M1停止3s后m2停止,M2停止3s后M3停止,此时红灯灭L1=OFF,绿等L2=ON,汽车可以开走。 前一汽车开走5s后,下一汽车进来,如此循环。 当按下停止按钮后,系统停车顺序按汽车装满后的流程停车,直到全部到初始状态后系统停止运行。,项目实施过程,一、方案设计 (1)硬件设计 (2)软件设计 二、项目实施 (1)硬件接线 (2)程序录入 三、设备调试 四、项目报告,任务1 认知PLC程序结构,学习目标: 掌握程序控制功能指令,PLC系统控制的典型程序结构,1、S7-200的指令规约,1.1 使能输入与使能输出 梯形图中有一条

3、提供“能流”的左侧垂直母线,图中I2.4的常开触点接通时,能流流到功能块DIV_I的数字量输入端EN(Enable IN,使能输入),该输入端有能流时,功能指令DIV_I才能被执行。 如果功能块在EN处有能流而且执行时无错误,则ENO ( Enable Output,使能输出)将能流传递给下一元件。如果执行过程中有错误,能流在出现错误的功能块终止。,与ENO指令,AENO,与ENO指令 ENO是梯形图和功能框图编程时指令盒的布尔能流输出端。如果指令盒的能流输入有效,同时执行没有错误,ENO就置位,将能流向下传递。当用梯形图编程时,且指令盒后串联一个指令盒或线圈,语句表语言中用AENO指令描述。

4、 指令格式:AENO(无操作数),返回本节,与ENO指令,AENO指令只能在语句表中使用,将栈顶值和ENO位的逻辑与运算,运算结果保存到栈顶。程序如图所示。,返回本节,与ENO指令,1.2 梯形图中的网络与指令,在梯形图中,程序被划分为称为网络(Network)的独立的段,网络由触点、线圈和功能块组成。在梯形图中给出了网络的编号,如网络2。能流只能从左往右流功,网络中不能有断路、开路和反方向的能流。允许以网络为单位给梯形图程序加注释。 STL程序不使用网络,如果用Network这个关键词对程序分段,可以将STL程序转换为梯形图程序。,必须有能流输入才能执行的功能块或线圈指令称为条件输入指令,它

5、们不能直接连接到左侧母线上。如果需要无条件执行这些指令,可以用接在左侧母线上的SM0.0(该位始终为1)的常开触点来驱动它们。 有的线圈或功能块的执行与能流无关,例如标号指令LBL和顺序控制指令SCR等,称为无条件输入指令,应将它们直接接在左侧母线上。 不能级连的指令块没有END输出端和能流流出。JMP、CRET、LBL、NEXT、SCR和SCRE等属于这类指令。 触点比较指令没有能流输入时,输出为0,有能流输入时,输出与比较结果有关。,1.3 其他规约,SIMATIC程序编辑器中的直接地址由存储器区和地址组成,如I0.0。IEC程序编辑器用表示直接地址如I0.0。 可以用数字和字母组成的符号

6、来代替存储器的地址,符号地址便于记忆,使程序更容易理解。程序编译后下载到PLC时,所有的符号地址被转换为绝对地址。 “INPUT1为全局符号名,符#INPUT1中的“#”号表示该符号是局部变量,红色问号“?”或“?”表示需要输入的地址或数值。 梯形图中的规约: “ ”是一个开路符号,或需要能流连接。 “ |”表示输出是一个可选的能流,用于指令的级连。 符号 “”表示有一个值或能流可以使用。,2. 程序控制指令,1.1 结束指令 结束指令有两条:END和MEND。两条指令在梯形图中以线圈形式编程。 END(Conditional END ),条件结束指令 使能输入有效时,终止用户主程序。 MEN

7、D,无条件结束指令 无条件终止用户程序的执行,返回主程序的第一条指令。 用Micro/Win32编程时,不需手工输入MEND指令,而是由软件自动加在主程序结尾。 指令格式:END(无操作数),2. 暂停指令 STOP,暂停指令 使能输入有效时,该指令使主机CPU的工作方式由RUN切换到STOP方式,从而立即终止用户程序的执行。 STOP指令在梯形图中以线圈形式编程。指令不含操作数。 STOP指令可用在主程序、子程序和中断程序中。 指令格式:STOP(无操作数),返回本节,2.2 程序控制指令,2.3 监控定时器复位指令,监控定时器( Watchdog )又称看门狗,它的定时时间为500ms,每

8、次扫描都被自动复位一次,正常工作时,若扫描周期小于500ms,它不起作用。 如扫描周期大于500ms,监控定时器会停止执行用户程序。如: 1)用户程序很长; 2)出现中断事件时,执行中断程序的时间很长; 3)循环指令使扫描时间延长。 4)为了防止在正常情况下监控定时器动作,可将监控定时器复位指令插到程序适当的地方。,2.4 看门狗复位指令,WDR,看门狗复位指令 当使能输入有效时,执行WDR指令,每执行一次,看门狗定时器就被复位一次。用本指令可用以延长扫描周期,从而可以有效避免看门狗超时错误。 指令格式:WDR(无操作数) 程序实例:指令STOP、END、WDR的应用如图所示。,停止、结束、看

9、门狗指令应用,返回本节,2.5 循环指令,循环开始 FOR,循环开始指令。用来标记循环体开始, 在LAD中有3个输入端: INDX(Index):当前循环计数 INIT(Initial):循环初值 FINAL(Final):循环终值 循环结束 NEXT,循环结束指令。用来标记循环体结束, 无操作数。 指令格式:FOR INDX,INIT,FINAL NEXT,FOR指令必须与NEXT指令配套使用。允许循环嵌套,即FORNEXT循环在另一个FORNEXT循环之中,最多可嵌套8层。 图6-2中的I21接通时,执行100次标有1的外层循环,I21和I22同时接通时,执行2次标有2的内层循环。,【例6

10、-1】在I0.1=1的上升沿,将10,15,20,35这6个数分别送到VW10,VW12,VW20。,程序实例,返回本节,2.6 跳转与标号指令,1. 跳转指令 (1)跳转指令 JMP(Jump),跳转指令 使能输入有效时,使程序流程跳到同一程序中的指定标号n处执行。执行跳转指令时,逻辑堆栈的栈顶值总是1。 (2)标号指令 LBL(Label),标号指令。标记程序段, 作为跳转指令执行时跳转到的目的位置。操作数n为0255的字型数据。 指令格式:JMP n LBL n,程序实例:,如右图所示。用增减计数器进行计数,如果当前值小于500,则程序按原顺序执行,若当前值超过500,则跳转到从标号10

11、开始的程序执行。,2.7 诊断LED指令,S7-200检测到致命错误时,SFDlAG(故障诊断)LED发出红光。在V40版编程软件的系统块的“配置LED”选项卡中,如果选择了有变量被强制或是有I0错误时LED亮,出现上述诊断事件时LED将发黄光。如果两个选项都没有被选择,SFDIAG LED发黄光只受DIAG_LED指令的控制。如果此时指令的输人参数IN为0,诊断LED不亮。如果IN大于0,诊断LED发黄光。图6-4的VB10中如果有非零的错误代码,将使诊断LED亮。,3 局部变量表与子程序,3.1局部变量表 3.2建立子程序 3.3子程序调用 3.4带参数的子程序调用,3.1 局部变量表,(

12、1)局部变量与全局变量 程序中的每个POU( Program Organizational unit,程序组织单元)均有自己的由64字节L存储器组成的局部变量表。 局部变量只在它被创建的POU中有效,在局部变量表中定义。 全局符号在各POU中均有效,只能在符号表/局变量表中定义。 全局符号与局部变量名称相同时,在定义局部变量的POU中,该局部变量的定义优先。该全局定义则在其它POU中使用。 局部变量有以下优点: (a)在子程序中只用局部变量,不用绝对地址成全局符号,子程序可移植到别的项目中去。 (b)如果使用临时变量(TEMP),同一片物理存储器可在不同的程序中重复使用。,(2) 局部变量的类

13、型,TRMP(临时变量):暂时保存在局部数据区中的变量。 IN(输入变量):由调用它的POU提供的输入参数。 OUT(输出变量):返回给调用它的POU的输出参数; IN_OUT(输入/输出变量):其初始值由调用它的POU提供,被子程序修改后返回给调用它的POU。,(3)局部变量的赋值,在局部变量表中赋值时,只需指定局部变量的类型(TEMP、IN、IN_OUT或OUT)和数 据类型,不用指定存储器地址,程序编辑器自动地在L存储区中为所有局部变量指定存储器位置。起始地址为L0,18个连续的位参数分配一个字节,字节中的位地址为Lx0Lx7。字节、字和双字值在局部存储器中按字节顺序分配,例如LBx、L

14、wx或LDx。,(4)在局部变量表中增加新的变量,对于主程序与中断程序,局部变量表显示一组已被预先定义为TEMP(临时)变量的行。 要向表中增加行,只需用右健单击表中的某一行,选择“插入行”指令,在所选行的上部插入新的行,选择“插入行下”指令,在所选行的下部插入新的行。 对于子程序,局部变量表显示数据类型被项先定义为IN、IN_OUT、OUT和TEMP的一系列行,不能改变它们的顺序。如果要增加新的局部变量,必须用鼠标右键单击已有的行,并用弹出菜单在所击行的上下插入相同类型的另一局部变量。,(5)局部变量数据类型检查,局部变量作为参数向子程序传递时,在该子程序的局部变量表中指定的数据类型必须与调

15、用POU中的数据类型值匹配。 例如从主程序OB1调用子程序SBR0,使用名为INPUT1的全局符号作为子程序的输入参数。在SBR0的局部变量表中,已经定义了一个名为FIRST的局部变量作为该输入参数。当OB1调用SBR0时INPUT1的数值被传入门FIRST,INPUT1和FIRST的数据类型必须匹配。,3.2 子程序的编写,1子程序的作用 子程序常用于需要多次反复执行相同任务的地方,只需要写一次子程序,别的程序在需要子程序的时候调用它,而无需重写该程序。子程序的调用是有条件的,未调用它时不会执行子程序中的指令,因此使用子程序可以减少扫描时间。 使用子程序可以将程序分成容易管理的小块,使程序结

16、构简单清晰,易于查错和维护。如果子程序中只使用局部变量,因为与其他POU没有地址冲突,可以将子程序移植到其他项目。为了移植子程序,应避免使用全局符号和变量,例如V存储器中的绝对地址。,2. 建立子程序 (Create a Subroutine),方法1:在指令窗口中,右击Program Block图标,在弹出的选择按钮中单击 Insert Subroutine; 方法2: 用菜单Edit| Insert| Subroutine; 方法3:在编辑窗口右击编辑区,在弹出的菜单选项中选择 Insert| Subroutine 。 新建的子程序默认的程序名是SBR_n,编号n从0开始按递增顺序生成,可以在图标上直接更改子程序的程序名。在指令树窗口双击子程序的图标就可对它进行编辑。,3.3 子程序调用 ( Call Instruction),(1)子程序调用和返回指令 子程序调用 (CALL) 使能输入有效时,主机把程序控制权交给子程序name。 指令格式:CALL name 例: CALL SBR-0 子

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号