自动投币售货机电路设计文档格式.docx

上传人:b****4 文档编号:6938061 上传时间:2023-05-07 格式:DOCX 页数:28 大小:246.36KB
下载 相关 举报
自动投币售货机电路设计文档格式.docx_第1页
第1页 / 共28页
自动投币售货机电路设计文档格式.docx_第2页
第2页 / 共28页
自动投币售货机电路设计文档格式.docx_第3页
第3页 / 共28页
自动投币售货机电路设计文档格式.docx_第4页
第4页 / 共28页
自动投币售货机电路设计文档格式.docx_第5页
第5页 / 共28页
自动投币售货机电路设计文档格式.docx_第6页
第6页 / 共28页
自动投币售货机电路设计文档格式.docx_第7页
第7页 / 共28页
自动投币售货机电路设计文档格式.docx_第8页
第8页 / 共28页
自动投币售货机电路设计文档格式.docx_第9页
第9页 / 共28页
自动投币售货机电路设计文档格式.docx_第10页
第10页 / 共28页
自动投币售货机电路设计文档格式.docx_第11页
第11页 / 共28页
自动投币售货机电路设计文档格式.docx_第12页
第12页 / 共28页
自动投币售货机电路设计文档格式.docx_第13页
第13页 / 共28页
自动投币售货机电路设计文档格式.docx_第14页
第14页 / 共28页
自动投币售货机电路设计文档格式.docx_第15页
第15页 / 共28页
自动投币售货机电路设计文档格式.docx_第16页
第16页 / 共28页
自动投币售货机电路设计文档格式.docx_第17页
第17页 / 共28页
自动投币售货机电路设计文档格式.docx_第18页
第18页 / 共28页
自动投币售货机电路设计文档格式.docx_第19页
第19页 / 共28页
自动投币售货机电路设计文档格式.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

自动投币售货机电路设计文档格式.docx

《自动投币售货机电路设计文档格式.docx》由会员分享,可在线阅读,更多相关《自动投币售货机电路设计文档格式.docx(28页珍藏版)》请在冰点文库上搜索。

自动投币售货机电路设计文档格式.docx

4自动售货机有液晶显示功能。

5实验中售货机忽略了各种故障以及缺货等因素。

(2)一次交易过程分析

为了方便分析,我们以一次交易过程为例。

1初始状态。

由电子标签显示各商品价格,显示屏显示友好界面,此时不能购买任何商品。

2投币状态。

按下投币按钮,显示投币框,按下所投币值显示屏显示投入、消费、余额数值,当所投币值超过商品价格时,相应价格选择按钮发生变化,提示可以购买。

3购买状态。

按下可以购买的选择按钮,所选的商品出现在出货框中,同时显示屏上的金额数字根据消费情况相应变化。

取走商品后出货框消失。

4退币按钮。

按下退币按钮,显示退币框,同时显示出应退币值及数量。

按下确认钮,则恢复初始状态。

到此为止,自动售货机的一个完整工作过程结束

1.2设计任务的确定

在清楚自动售货机运行工作过程的基础上,制定出设计方案,确定任务的目标,以设计出合理的仿真系统。

首先,应该做上位机与下位机的任务分工:

上位机主要用来完成仿真界面的制作过程,而下位机则主要用来完成PLC程序的编写。

其次,要分别对上位机和下位机进行资料的查找与收集。

例如在进行仿真界面的设计时可以去观看一下真正售货机的外观,必要时可以借助一些宣传图片来设计自动售货机的外型;

在进行PLC程序的编写时需要先分配PLC的I/O点,确定上、下位机的接口。

然后,分别对上、下位机分别进行设计工作。

最后,进行上位机设计结果与下位机设计结果的配合工作,经调试后完成整个系统的设计

另外,上位机与下位机的设计工作是密切配合的。

它们无论在通信中使用的变量,还是在仿真中控制的对象都应该是一致的。

总体上讲,仿真界面是被控对象,利用PLC来控制这个仿真的自动售货机,仿真的自动售货机接受PLC的控制指令并完成相应的动作;

另一方面,仿真界面中的仿真自动售货机的运行,都是由组态界面所提供的命令语言来完成的。

这是整个仿真系统内部各大部件之间的内在关系。

我主要是对自动售货机中的下位机,也就是主要是对PLC在其中的程序进行设计。

仿真程序只做了解,虽然只做了解,但是也将在下面有所介绍。

清楚了仿真实验的整体设计思路,下面就可以开始着手设计了。

1.3程序设计部分

1程序设计说明

下位机程序的编制则是利用松下PLC专用编程软件FPWIN-GR完成的。

上位机的设计与下位机的设计相互交替,同时尽量清晰地叙述,在相应的设计部分中注明是上位机的设计还是下位机的设计。

3.3.2PLC程序设计

投币过程;

价格比较过程;

选择商品过程;

退币过程。

(1)运行初期电子标签价格的内部传递程序的设计

仿真系统运行初期,要由PLC向仿真画面相应对象传递已经存储好的价格,还要给投入显示、消费显示及余额显示存储器清零,同时也要给存储退币币值的存储器清零。

程序编制过程中,要用到运行初期闭合继电器R9013、16位数据传送指令FO,同时在上位机ForceControl中,必须定义相应的变量,来实现与PLC程序的对接。

所定义的变量如表1所示。

表1初始状态变量表

根据表1编制PLC程序如图5所示。

图5运行初期电子标签价格的内部传递程序

在梯形图程序图5中,系统初始化时,通过运行初期闭合继电器R9013在第一次扫描时将数值传递给上位机。

给WR1-WR11及SV0-SV4赋初值,赋值功能通过高级指令FO实现。

至于为什么要加入WR13、WR15、WR17、WR19及WR20,在以后的程序中将介绍它们的作用。

(2).投币过程

在投币的过程中,每投下一枚硬币,投入显示将增加相应的币值,余额也增加同样币制。

先建立变量表,在编写程序。

变量表如表2所示。

对应的梯形图程序如图7所示。

表2投币过程变量表

在图中,当按下投入1角时,相当于让R200接通,之所以用一个微分指令,就是要只在接通时检测一次,不能永远加下去。

投入1角要投入显示、余额显示都相应增加相同数值,加法是由16位加法指令E20来实现的。

投入5角、1元、5元、10元,原理同上。

(3)价格比较过程

价格的比较要贯穿实验过程的始终,只要余额大于某种商品价格时,就需要输出一个信号,

图7投币过程梯形图

提示可以购买。

这里只要选择灯来代表此信号。

所建立的变量表如表3所示。

表3价格比较过程变量表

根据变量表和控制要求编写的程序如图8所示。

在梯形图8中,为了实现数据的实时比较,用了一个特殊内部继电器R9010,在程序执行过程中,R9010始终保持闭合,F60是16位数据比较指令,用它来比较余额和商品的价格,R900A是大于价格,R900B是等于标志。

当余额大于等于某种商品价格时,程序使相应的指示灯闪烁表示可以购买该种商品。

R9010

F60CMP,WR3,WR4

R900AY0

R900B

F60CMP,WR3,WR5

R900AY1

R900B

F60CMP,WR3,WR6

R900AY2

F60CMP,WR3,WR7

R900A

Y3

 

F60CMP,WR3,WR8

R900AY4

F60CMP,WR3,WR9

R900AY5

..

..

图8价格比较过程梯形图

(4)选择商品过程

当投入的币值可以购买某种商品时,按下相应的“选择”按纽即可在出货框中出现该种商品,同时消费显示栏中显示出已经消费掉的金额,余额也将扣除已消费的币值,接着余额继续与价格相比较,判断是否能继续购买。

出现在出货口的商品在没有取走前,一直保持显示状态,用鼠标点击该商品代表已经取走,出货口中的商品隐藏。

建立的变量表如表4所示。

对应的梯形图程序如图9所示。

表4选择商品过程变量表

在梯形图9中,一是要使商品出现在出货框中,二是要实现内部货币的运算。

以第一步为例,按下选择01商品键,相当于给R205加一个信号(只接受一次脉冲,所以用DF微分指令),当YO接通(01商品灯亮)时,则系统显示可以购买01商品。

由于取01商品R230是常闭触点,故Y8输出,代表在出货框中出现01商品,购买成功。

当按下取01商品按钮时,R230断开,不能输出Y8,代表01商品被取走。

内部币值的计算和是否取走商品无关,只要按下选择按钮,并且可以购买此商品就要从余额中扣除相应的金额,显示消费的币值。

加法由F20指令实现,减法由F25实现。

R205Y0R230Y8

DF

Y8

R205Y0

DF1

1F25-,WR4,WR3

F20+,WR4,WR2

R206Y1R231Y9

DF

Y9

R206Y1

1F25-,WR5,WR3

F20+,WR5,WR2

R207Y2R232YA

YA

R207Y2

1F25-,WR6,WR3

F20+,WR6,WR2

R208Y3R233YB

YB

R208Y3

1F25-,WR7,WR3

F20+,WR7,WR2

R209Y4R234YC

YC

R209Y4

1F25-,WR8,WR3

F20+,WR8,WR2

R20AY5R235YD

YD

R20AY5

1F25-,WR9,WR3

F20+,WR9,WR2

R20BY6R236YE

YE

R20BY6

1F25-,WR10,WR3

F20+,WR10,WR2

R20CY7R237YF

YF

R20CY7

1F25-,WR11,WR3

F20+,WR11,WR2

图9选择商品梯形图

(5)退币过程

在退币过程中,最主要的是完成退币的运算过程,根据结果输出相应的钱币,退币结束时还要使用到的某些寄存器重新赋零。

所建立的变量如表5所示。

对应的梯形图程序如图10所示。

表5退币过程变量表

整个退币过程在按下按钮(即R20F接通时)时执行,同样也用到一个微分指令,在接收到信号时产生一次开关脉冲,进而执行一次其下面的指令。

F32是除法指令,第一次将余额的币值除以1000,商存储于SV0中,作为退币10元的输出值。

余数则存储于特殊数据寄存器DT9015中,下次将不能被1000(10元)整除的余数除以100(5元),商且存储于SV1中,余数继续下传,直至被1角除过,由于所投币值最小是1角,并且商品价格也确定在整角,所以最终能被1角整除。

在程序的初始化时曾给WR13、WR15、WR17、WR19和WR20赋零,WR13、WR15、WR17、WR19和WR20是程序的中间量,为的只是程序在使用过程中能稳定执行,避免出现退币错误。

为什么要除以1000呢?

这主要是考虑到PLC的主要特点是执行过程稳定可靠,但执行速度较慢。

在计算时尽量将数值作为整数计算,因为是在计算机上模拟,可以把一部分功能交由计算机来实现,这里把1角当作10、5角当作50、1元当作100、5元当作500、10元当作1000,可以避免把这些数据当作有小数点的实数计算,这同前面的加1角等于10(K10)是相同的道理。

至于交由计算机的任务将在以后叙述。

退币过程结束后,PLC要将寄存器中的数值置回原定的初值0,完成一次交易,防止下一次交易时出错。

梯形图3-6用来完成对数据的初始化。

程序中分别将投入显示、消费显示、余额显示、10元存储、5元存储、1元存储、5角存储和1角存储清零,还将中间量WR13、WR15、WR17、WR19和WR20清零。

完成了以上5个过程,自动售货机的PLC控制程序基本完成,程序可以控制售货机实现各种要求的功能。

图10退币过程梯形图

3.4仿真界面与PLC的配合定义

在这一段中,将仔细分析仿真界面各部分是如何与PLC连接的。

分析过程是按照一次交易的实际情况来进行的,即由初始状态、投币状态、购买状态、退币状态到交易结束。

(1)初始状态

通过分析得知,当电子标签显示各商品的价格、显示屏显示友好界面时,不能购买任何商品。

因此先让变量poiwindows=0(系统默认)。

电子标签中的字符‘J.01’(以01商品为例)对应的变量JG01.PV与PLC程序中的地址WR4相匹配,WR4中存储的数据为250,即让字符显示2.50元。

对应的梯形图如图11所示

(2)投币状态

当投币时,按下“投币”提示字,出现投币框。

如何定义“投币”呢?

双击汉字“投币”,来到“动画连接”画面,选择“触敏动作”,在“动作描述”框中做如下定义:

按下鼠标时,poiwinJB=1,poiwinJB这个变量是控制投币框的,当poiwinJB=1时,出现钱币和提示框;

poiwinJB=0

R0

F0MV,K0,WR1

F0MV,K0,WR2

F0MV,K0,WR3

F0MV,K0,WR13

F0MV,K0,WR15

F0MV,K0,WR17

F0MV,K0,WR19

F0MV,K0,WR20

F0MV,K0,SV0

F0MV,K0,SV1

F0MV,K0,SV2

F0MV,K0,SV3

F0MV,K0,SV4

图11数据初始化梯形图

时,钱币和提示框隐藏。

下面分别定义提示框和钱币以及“确认”按钮,双击提示框,来到“动画连接”画面,定义poiwinJB=1时显示,各硬币也用同样的方法定义,“确认”按钮也同样定义,这样就使在按下汉字“投币”时,变量poiwinJB=1,从而出现投币框,以及硬币等。

我们只是定义了投币框的显示状态,用鼠标点击代替了实际过程中的饿钱币投入动作,最重要的任务是投币运算,下面介绍钱币的定义方法。

以10元为例:

双击10元硬币,开到“动画连接”画面,选择“触敏动作”中的“左键动作”,在动作描述中如下定义:

按下鼠标时,poiwinJB=1;

TR$100.PV=1;

释放鼠标时,TR$100.PV=0。

其中poiwinJB=1,是让显示屏不再显示友好界面,来到交易界面;

TR$100.PV=1时给PLC发出一个接通信号,由于TR$100.PV对应的PLC地址是R204,使得204继电器导通,转而执行相应的加10元程序。

同样定义其他钱币,注意其对应的PLC软继电器。

最后还要定义“确认”按钮。

要实现的功能是按下“确认”按钮时,所有的钱币以及提示框均消失。

当投币以后,显示屏要及时反映出投币情况,同时“选择”指示也要相应变化。

下面来定义显示屏和“选择”按钮。

显示屏要显示3种数据,分别为:

投入显示、消费显示、余额显示。

三种显示均用力控软件自带的附件—数码管来显示。

现在工具箱中点击“选择子图框”,在子图框中找到仪表中的数码管,放在显示屏中,作为投入显示,再复制两个,分别作为消费显示、余额显示。

双击数码管来到数码管属性设置画面,在表达式中作如下定义:

poiTR001.PV/100,poiTR001.PV连接的是PLC程序中的WR1软继电器,是用来存储投入显示数据的,除以100同样是为了PLC数据计算的方便。

这样就可用数码管来显示投入的币值。

同样定义消费显示,余额显示。

“选择”按钮要根据余额的数值发生闪烁和变色。

定义过程如下:

双击“选择”按钮,来到“动画连接”画面,在“颜色相关动作”中选择“闪烁”项,分别定义属性和频率,在变量选择中选择相应的指示灯变量。

以01商品的选择指示灯为例,在变量选择中选择D01.PV=1,满足条件时指示灯变色。

这样就定义好了投币状态的上位机仿真变量,配合PLC程序可以实现投币功能。

(3)购买状态

定义了投币状态,就可以购买商品了。

当选择指示灯以后,按下它,在出货口处出现我们要买的商品。

这样定义“选择”按钮:

双击“选择”按钮,来到“动画连接”画面,选择“触敏动作”中的“左键动作”,在动作描述中如下定义:

按下鼠标时XZ01.PV=1;

释放鼠标时,XZ01.PV=0。

XZ01.PV与PLC程序中的R205相对应,按下可以购买商品的选择键,转而执行相应的PLC程序,同时消费显示增加相应的币值,余额显示减少相应的币值,此时还要在出货口出现相应的商品,这时用“显示/隐藏”功能来定义在出货口中出现相应的商品。

以01商品为例,双击出货口处的小商品,来到“动画连接”,选择“显示/隐藏”项,定义CX01.PV=1时显示。

出货口框架的隐藏/显现是用程序来控制的。

当有一种商品出现在出货口,就会显示框架;

当全部商品均消失后框架隐藏。

程序如图12所示。

图中R210是控制出货口框架是否出现的继电器。

(4)退币状态

当按下“退币”按钮时,PLC要进行退币运算。

所以按下“退币”按钮就要与PLC通信,执行退币计算。

下面来定义退币按钮。

双击“退币”按钮,出现“动画连接”画面,选择“触敏动作”中的“左键动作”,动作描述为:

按下鼠标,poiwinJB=0;

poiwinTB=1;

Tenter.PV=1。

释放鼠标,Tenter.PV=0;

内部变量poiwinJB=1是让投币框消失,poiwinTB=1是让退币框出现,Tenter.PV与

图12出货口框架的隐藏/显现梯形图

PLC程序中的R20F对应。

退币框中要有5种硬币,还要有表示硬币个数的数字。

由于计算中采用的算法使得退币时按照币值大小顺序退币,例如退5元,只退一个5元,而不退5个一元。

定义表示硬币个数的变量只用一位数即可。

在退币时,要退出的硬币及个数显示,而不退的硬币隐藏。

定义钱币时(以10元为例),双击10元硬币,出现动画连接画面,选择“显示/隐藏”项,在“可见性定义”对话框中作出的表达式为TB$100.PV==0.

其他硬币定义方法同上。

定义钱币个数:

双击10元硬币个数字符“a”,出现“动画连接”画面,选择“数值输出”中的“模拟”项,作出表达试为TB$100.PV。

同时钱币个数也要定义是否隐藏,定义方法和定义钱币相同。

定义“确认”键时,按下“确认”键,代表取走了所有硬币,完成此次交易,因此退币“确认”的定义很重要。

双击“确认”键,出现“动画连接”画面,选择“触敏动作”中的“左键动作”,在动作描述栏中定义如下:

按下鼠标

poiwinTB=0;

功能:

退币框消失

TuiBiok.PV=1;

给PLC信号,闭合RO,完成数据的初始化

Poiwindows=0;

显示屏显示友好界面

为了防止在未取走商品时退币,按下“确认”键又不能返回原始状态。

在描述过程中加入以下一段程序,强行抛掉已经购买的商品。

CX01.PV=0;

CX02.PV=0;

CX03.PV=0;

CX04.PV=0;

CX05.PV=0;

CX06.PV=0;

CX07.PV=0;

CX08.PV=0;

释放鼠标时,TuiBiok.PV=0。

只是一个微分信号,不能将RO永远置为1。

还有一点要注意,“确认”键也要有隐藏的时候,定义方法同钱币。

定义退币框架:

按下“退币”按钮后就会出现退币框架。

可以这样定义:

双击退币框架,来到“动画连接”画面,选择“显示/隐藏”项,在“可见性定义”中定义poiwinTB=1时显现即可。

3.5数据连接

3.5.1定义I/O设备

数据库是从I/O驱动程序中获取过程数据的,而数据库同时可以与多个I/O驱动程序进行通信,一个I/O驱动程序也可以连接一个或多个设备。

下面创建I/O设备。

(1)在Draw导航器中双击“实时数据库”项使其展开,在展开项目中选择“PLC”项双击使其展开后,选择项目双击并定义。

(2)单击“完成”按钮返回,在“松下电工”项目下增加一项“PLC001”,如果要对I/O设备“PLC001”的配置进行修改,双击项目“PLC001”,会再次出现PLC001的“I/O设备定义”对话框。

若要删除I/O设备“PLC001”,用鼠标右键单击项目“PLC001”,在弹出的右键菜单中选择“删除”。

1数据连接

刚刚创建了一个名为“PLC001”的I/O设备,而且它连接的正是假想的PLC设备。

现在的问题是如何将已经创建的多个数据库点与PLC联系起来,以使这些点的PV参数值能与I/O设备PLC进行实时数据交换,这个过程就是建立数据连接的过程。

由于数据库可以与多个I/O设备进行数据交换,所以必须指定哪些点与哪些个I/O设备建立数据连接。

为方便其见,我们将数据列整理成如表6、表7所示。

表6数字I/O

NAMEDESC%IOLINK

[点名][说明][I/O连接]

1CX0101商品出现PV=PLC001;

序号,寄存器,地址,偏移;

2000008-2-0-0-8

2CX0202商品出现PV=PLC001;

2000009-2-0-0-9

3CX0303商品出现PV=PLC001;

20000010-2-0-0-10

4CX0404商品出现PV=PLC001;

20000011-2-0-0-11

5CX0505商品出现PV=PLC001;

20000012-2-0-0-12

6CX0606商品出现PV=PLC001;

20000013-2-0-0-13

7CX0707商品出现PV=PLC001;

20000014-2-0-0-14

8CX0808商品出现PV=PLC001;

20000015-2-0-0-15

9D0101商品灯亮PV=PLC001;

2000000-2-0-0-0

10D0202商品灯亮PV=PLC001;

2000001-2-0-0-1

11D0303商品灯亮PV=PLC001;

2000002-2-0-0-2

12D0404商品灯亮PV=PLC001;

序号,寄存器,地址,偏

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2