基于PLC的自动售货机设计

1.1 自动售货机设计软元件

1.1.1 定时器

定时器是PLC中重要的编程元件,是累计时间增量的内部器件。定时器的工作过程与继电器控制系统的时间继电器基本相同,但它没有瞬动触点,失电时,常闭触点闭合,常开触点打开;定时器得电时,常闭触点打开,常开触点闭合。定时器的当前值、设定值均为10位有符号整数(INT),允许的最大值为32767。定时器指令表见表3-1。

表3-1 定时器指令

语句

描述

TON Txxx,PT

接通延时定时器

TOF Txxx,PT

断开延时定时器

TONR Txxx,PT

保持型接通延时定时器

BITIM OUT

起动间隔定时器

CITIM IN,OUT

计算间隔定时器

1.1.2 数学运算指令

在梯形图中,整数、双整数与浮点数的加、减、乘、除指令(见表3-2)分别执行下列运算:IN1+IN2=OUT,IN1—IN2=OUT,IN1*IN2=OUT,IN1/IN2=OUT。

表3-2 加减乘除指令

梯形图

语句表

描述

梯形图

语句表

描述

ADD_I

+I INT1,OUT

整数加法

DIV_DI

/D INT1,OUT

双整数除法

SUB_I

-I INT1,OUT

整数减法

ADD_R

+R INT1,OUT

实数加法

MUL_I

*I INT1,OUT

整数乘法

SUB_R

-R INT1,OUT

实数减法

DIV_I

/I INT1,OUT

整数除法

MUL_R

*R INT1,OUT

实数乘法

ADD_DI

+D INT1,OUT

双整数加法

DIV_R

/R INT1,OUT

实数除法

SUB_DI

-D INT1,OUT

双整数减法

MUL

MUL INT1,OUT

整数乘法产生双整数

MUL_DI

*D INT1,OUT

双整数乘法

DIV

DIV INT1,OUT

带余数的整数除法

在语句表中,整数、双整数与浮点数的加、减、乘、除指令分别执行下列运算:

IN1+ OUT =OUT,OUT—IN1=OUT,IN1* OUT =OUT,OUT /IN2=OUT。

1.2自动售货机的基本功能

自动售货机的各种动作功能和控制要求,给出了完整的自动售货机操作规程(如图3-1),并介绍了自动售货机运行系统中所包括的人工操作步骤。

在实际生活中,我们见到的售货机可以销售一些简单的日用品,如饮料、常用药品和小的生活保健用品等。售货机的基本功能就是对投入的货币进行运算,并根据货币数值判断是否能够购买某种商品,并作出相应的反应。例如:售货机中有2种商品,A商品价格为0.5元,B商品为1元。现投入1个1元硬币,当投入的货币超过A商品的价格时,A商品的选择按钮处应有变化,提示可以购买,B商品也提示。当按下选择A商品的价格时,售货机进行减法运算,从投入的货币总值中减去A商品的价格同时启动相应的电机,提取A号商品到出货口。此时售货机继续进行等待外部命令,如继续交易,则同上,如果此时不再购买而按下退币按钮,售货机则要进行退币操作,退回相应的货币,并在程序中清零,完成此次交易。由此看来,售货机一次交易要涉及加法运算、减法运算以及在退币时的除法运算,这是它的内部功能。还要有货币识别系统和货币的传动来实现完整的售货、退币功能。

  自动售货机工作流程图

1.3 自动售货机I/O点的分配

输入/输出单元通常也称I/O单元或I/O模块,是PLC与工业生产现场之间的连接部件。 PLC通过输入接口可以检测被控对象的各种数据,以这些数据作为PLC对被控制对象进行控制的依据;同时PLC又通过输出接口将处理结果送给被控制对象,以实现控制目的。本次智能抢答器I/O点的分配如表3-3所示。

表3-3 自动售货机I/O点的分配表

序号

定义点

符号

功能

1

I0.0

SB1

找零按钮

2

I0.1

SB2

食品五角按钮

3

I0.2

SB3

食品一元按钮

4

I0.3

SB4

饮料一元按钮

5

I0.4

SB5

饮料二元按钮

6

I0.5

SB6

日用二元按钮

7

I0.6

SB7

日用三元按钮

8

I2.0

SB8

投五角硬币

9

I2.1

SB9

投一元硬币

10

I2.5

SB10

找零五角

11

I2.6

SB11

找零一元

12

I3.1

SB12

食品五角行程开关

13

I3.2

SB13

食品一元行程开关

14

I3.3

SB14

饮料一元行程开关

15

I3.4

SB15

饮料二元行程开关

16

I3.5

SB16

日用二元行程开关

17

I3.6

SB17

日用三元行程开关

18

Q3.1

食品五角红灯(物品售完)

19

Q3.2

食品一元红灯(物品售完)

20

Q3.3

饮料一元红灯(物品售完)

21

Q3.4

饮料二元红灯(物品售完)

22

Q3.5

日用二元红灯(物品售完)

23

Q3.6

日用三元红灯(物品售完)

24

Q0.0

找零

25

Q0.1

出食品五角

26

Q0.2

出食品一元

27

Q0.3

出饮料一元

28

Q0.4

出饮料二元

29

Q0.5

出日用二元

30

Q0.6

出日用三元

31

Q2.1

食品五角绿灯(可以购买)

32

Q2.2

食品一元绿灯(可以购买)

33

Q2.3

饮料一元绿灯(可以购买)

34

Q2.4

饮料二元绿灯(可以购买)

35

Q2.5

日用二元绿灯(可以购买)

36

Q2.6

日用三元绿灯(可以购买)

1.4 顺序功能图(SFC)

1.4.1 什么是顺序功能图(SFC)

 

1.4.2 所选择的顺序功能图(SFC)

由于顺序功能图(SFC)有五种基本结构:顺序结构、选择性分支结构、并发性分支结构、循环结构、复合结构。本次自动售货机的SFC图,根据控制要求选用——选择性分支结构和并发性分之结构。因为选择性分支结构是一个控制流可以转入多个可能的控制流中的某一个且不允许多路分支同时执行。具体进入哪个分支,取决于控制流前面的转移条件哪一个为真。而并发性分之结构是一个工作步执行完后,需要同时开启若干条分之,并采用双水平线相连且要有一个公共转移条件,这两种顺序功能图结构符合本次自动售货机的控制要求,所以选择这两种结构。

本次自动售货机的SFC图如下图所示:

                        自动售货机顺序功能图

 

1.5 梯形图(LAD)

1.5.1 什么是梯形图(LAD)

梯形图是用的最多的PLC图形编程语言。梯形图语言是在传统电器控制系统中常用的接触器、继电器等图形表达符号的基础上演变而来的。它与电器控制线路图相似,如图3-4所示。继承了传统电器控制逻辑中使用的框架结构、逻辑运算方式和输入输出形式,具有形象、直观、实用的特点。因此,这种编程语言为广大电气技术人员所熟知,是应用最广泛的PLC的编程语言,是PLC的第一编程语言。

在梯形图中,有两根竖直的直线,被称为母线,现在很多PLC只保留了左边的母线,而把右边的母线略去不写。在梯形图中引入了“能流”的概念。左边的母线就如电源的“正极”,而右边的母线就如电源的“负极”。如果有“能流”从左至右流向线圈,则线圈被激励。如果没有能流,则线圈未被激励,“能流”在任何时刻都不会通过接点自右向左流。

1.5.2 自动售货机设计的梯形图(LAD)

本此设计自动售货机主要销售食品、饮料、日用三大类,而食品有五角和一元,饮料有一元和二元,日用有二元和三元。

本次自动售货机的梯形图如下所示:

 

1.6 自动售货机的相关说明

上面梯形图中ADD_DI双整数加法当投入五角时加5投入1元是加10,SUB_DI是双整数减法当成功购买物品时就减去物品对应的数;T37—T56表示通电延时定时器,按下物品按钮时T37—T42延时8秒,无操作时T43启动计时20秒,T44与T43配合组成投币2分钟无操作找零,T46—T56两两配合形成闪烁电路。

 自动售货机模拟操作面板

本设计统一采用按钮开关模拟物品选择,按钮内有绿灯和红灯分别表示可购买物品和物品销售完;指示灯模拟物品输出及找零如图3所示。

1.7 自动售货机的外部接线图

本次知道售货机的外部接线图如图3-6所示,SB2—SB7为物品选择按钮,当投入货币物品绿灯亮(Q2.1—Q2.6),按下SB2—SB7其中一个,对用的KM线圈得电电机转动出相应的物品(Q0.1—Q0.6),当有物品销售完其行程开关断开,物品红灯亮并同时向总部发送物品销售完的信息;当收买物品总值低于投入总值时,可按找零按钮SB1选择找一元还是五角(SB10、SB11)后KM1得电电机转动找零(Q0.0)。

图3-6 售货机的外部接线图

1.8 自动售货机仿真

程序编写好后无法验证程序的正误,编程能力很难提高,而仿真时解决这一问题的理想方法。

本次自动售货机的仿真,首先配置CPU的型号,为了自动售货机的仿真方便好看,我们选用CPU224,扩展模块我们选用2个8点输入8点输出的EM223 (8 I / 8 Q),如图所示。

 

接下来将梯形图程序编译导出,在仿真软件中把导出的ASCLL文件导入仿真软件,开启仿真软件就可以仿真。

  • 15
    点赞
  • 144
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
自动售货机是完成无人自动售货,集光、机、电一体化的商业自动化设备。自动售货机不受任何场地限制,方便快捷,可以每天24h售货,因此深受上班族的欢迎,很多城市公共场所里面都放置有自动售货机,出售的商品五花八门,从饮料、零食、香烟、糖果,到牙刷、方便面、自动照相机。近年来,我国的自动售货机行业突飞猛进:在汽车总站、商厦、医院、小区、学校等地区纷纷涌现出自动售货机的踪迹。这种方便快捷的购物方式越来越受人们青睐,同时也是现代化城市配套设施的需求。传统的自动售货机控制采用单片机作为控制核心,这样不仅会在输入输出接口上做大量的工作,而且系统的抗干扰性也比较差、可编程控制器(PLC)是综合了计算机技术、自动控制技术和通讯技术而发展起来的一种新型的工业控制装置,它具有可靠性高、编程简单、维护方便等优点,已在工业控制领域得到广泛地应用、因为自动售货机作为社会上完成商品零售和综合服务的独立设施,要求它的结构必需可靠、稳定和执行效率高。本文就详细的介绍介绍了自动售货机的结构组成,简述利用可编程控制器(PLC)控制的自动售货机控制系统的控制原理,最后给出了该控制的软硬件设计,并编写了程序总框图和一个具体的梯形图,经实践验证该控制系统是可行的。
在Matlab中,将遗传算法程序打包可以使用Matlab Compiler或者Matlab Compiler SDK来实现。这些工具允许您将Matlab代码编译为可执行文件或者独立应用程序,以便在没有Matlab运行时环境的计算机上运行。 以下是一个简单的步骤来将遗传算法程序打包: 1. 首先,确保您的遗传算法程序正常运行,没有任何错误。 2. 打开Matlab Compiler或者Matlab Compiler SDK。 3. 创建一个新的项目并导入您的遗传算法程序文件。您可以通过单击“添加文件”按钮或者拖放文件到项目中来实现。 4. 在项目设置中,选择适当的目标平台和目标操作系统,以定义您打包后的应用程序将在哪种环境中运行。 5. 配置打包选项,例如指定编译输出的文件名、图标、版本号等。 6. 单击“生成”按钮,开始编译和打包您的遗传算法程序。 7. 完成后,您将获得一个可执行文件或者独立应用程序,可以在目标计算机上运行。将该文件复制到目标计算机上,并确保目标计算机上已经安装了相应的Matlab Runtime环境(如果没有安装Matlab Compiler SDK)。 请注意,使用Matlab Compiler或者Matlab Compiler SDK打包程序可能需要一定的编程和打包经验。此外,打包后的程序可能会比原始Matlab代码更大,并且在运行时可能会有一些性能影响。因此,在打包之前,请确保对您的遗传算法程序进行充分测试和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

!chen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值