首页 理论教育 主控系统设计方案包括的内容

主控系统设计方案包括的内容

时间:2023-06-15 理论教育 版权反馈
【摘要】:图5-60 自动售货系统的状态转移图模块化设计方法最显著的优势有两个:一是协同设计;二是在调试、更改某个有缺陷的子模块时,不会影响到其他模块的实现结果,从而保证设计的稳定性与可靠性。状态机设计方法中,设计思路与控制程序的流程图更加接近,实现起来比较简洁明了。

主控系统设计方案包括的内容

1.方案一:采用模块化的设计方案

根据自动售货机的组成结构和工作流程,主控系统的软件采用模块化的方法进行设计,主要由初始化、投币过程、价格比较过程、商品选择、显示、退币和报警等模块组成,其中一些主要模块的功能如图5-59所示。

(1)投币模块 在投币过程中,每投下一枚硬币,经钱币识别传感器信号传递给PLC,该模块将完成辨别硬币的真伪和判定具体的币值,可以进行钱币的叠加,并显示出相应的币值。

(2)价格比较模块 投币完成后,系统对余额中钱币数据和可以购买的商品价格进行区间比较,若大于或等于商品的价格,则可以购买该商品,指示灯亮。

(3)货物选择模块 此模块可以实现用户对商品的选择购买。

(4)退币模块 系统可在顾客购买完商品后退回余币。在退币过程中,最主要的是要完成退币的运算过程,运算结果放在数据寄存器,根据结果起动退币电动机工作,输出相应的钱币,退币结束时还要给程序中使用到的某些寄存器重新赋0。

按照上面划分的模块,逐个模块编写程序代码及进行仿真,最后综合在一起,上升到顶层模块代码进行仿真及调试。

2.方案二:采用状态机的设计方案

自动售货机要求每次投币一枚,分为五角和一元两种,根据两种币值的投币信号指示售货机是否发货以及是否找零。这种情形可以用状态机进行描述,可定义7个状态,根据每次投入的币值决定下一个状态的变化,7个状态的含义如下:

STATUS0:投币时,售货机内没有硬币;

STATUS1:投币时,售货机内已有5角硬币;

STATUS2:投币时,售货机内已有1元硬币;

STATUS3:投币时,售货机内已有1元5角硬币;(www.xing528.com)

STATUS4:投币时,售货机内已有2元硬币;

STATUS5:投币时,售货机内已有2元5角硬币;

STATUS6:投币时,售货机内已有3元硬币。

978-7-111-42984-5-Chapter05-67.jpg

图5-58 系统程序流程图

978-7-111-42984-5-Chapter05-68.jpg

图5-59 模块化设计框图

由于投币信号five_jiao和one_yuan不会同时为1,所以只有三种组合会引起状态发生转移。若商品价格为2.5元,当已投入2.5元时仍继续投币,则售一件商品后转至FIVE或TEN状态;若已经投入3元,则将找零的5角作为基数,状态转移至TEN或FIFTEEN,开始新的转移。通过上述分析可画出状态转移图,如图5-60所示。

978-7-111-42984-5-Chapter05-69.jpg

图5-60 自动售货系统的状态转移图

模块化设计方法最显著的优势有两个:一是协同设计;二是在调试、更改某个有缺陷的子模块时,不会影响到其他模块的实现结果,从而保证设计的稳定性与可靠性。模块化的设计方法一般在规模较大的设计中才有更好的性能表现。状态机设计方法中,设计思路与控制程序的流程图更加接近,实现起来比较简洁明了。因此,下面选择状态机来设计自动售货机。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈