CN106970796A - 基于状态机的冰箱主控软件设计方法 - Google Patents
基于状态机的冰箱主控软件设计方法 Download PDFInfo
- Publication number
- CN106970796A CN106970796A CN201710198118.3A CN201710198118A CN106970796A CN 106970796 A CN106970796 A CN 106970796A CN 201710198118 A CN201710198118 A CN 201710198118A CN 106970796 A CN106970796 A CN 106970796A
- Authority
- CN
- China
- Prior art keywords
- state
- working
- working condition
- mode
- main control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/22—Procedural
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F25—REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
- F25D—REFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
- F25D29/00—Arrangement or mounting of control or safety devices
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- Thermal Sciences (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本发明涉及冰箱主控软件,其公开了一种基于状态机的冰箱主控软件设计方法,解决传统技术中主控软件设计方法无法适应复杂控制逻辑和众多设备模块情况的问题。该方法包括:在进行主控软件设计时,将冰箱系统划分为多个主工作状态,在主工作状态下再划分子工作状态,并设置各状态之间的状态转移条件,状态之间的切换由状态转移条件决定。本发明适用于智能冰箱主控软件设计。
Description
技术领域
本发明涉及冰箱主控软件,具体涉及一种基于状态机的冰箱主控软件设计方法。
背景技术
目前,冰箱主控软件设计主要是采用顺序执行各个功能模块(例如压缩机控制模块、门灯控制模块、温度传感器采样模块、风机控制模块、风门控制模块和通信模块等)的方法,单片机按顺序依次处理每一个模块的逻辑判断。在控制规则简单,设备模块数量较少的情况下,这种顺序处理的方法简单易懂。但是随着高端品牌冰箱的出现,控制规则越来越复杂,设备模块数量也在增加,这种顺序处理的各种模块的软件方法很难应对复杂的控制逻辑规则,同时还会产生大量的标志位和多层次、多步骤的逻辑判断。
因此,传统软件设计方法在复杂的控制逻辑规则情况下对软件开发、调试、测试都会带来挑战,甚至很难保证软件的质量和后续的维护工作。
发明内容
本发明所要解决的技术问题是:提出一种基于状态机的冰箱主控软件设计方法,解决传统技术中主控软件设计方法无法适应复杂控制逻辑和众多设备模块情况的问题。
本发明解决其技术问题所采用的技术方案是:
基于状态机的冰箱主控软件设计方法,包括:在进行主控软件设计时,将冰箱系统划分为多个主工作状态,在主工作状态下再划分子工作状态,并设置各状态之间的状态转移条件,状态之间的切换由状态转移条件决定。
作为进一步优化,在进行主控软件设计时,将冰箱系统划分的主工作状态包括:S0:上电模式状态,S1:自检模式状态,S2:故障模式状态,S3:正常工作模式状态,S4:压缩机频率手动控制模式状态,S5:手动化霜模式状态;在自检模式状态S1下划分三个子状态,包括:S11:档位指示灯自检工作状态,S12:传感器自检工作状态,S13:压缩机自检工作状态;在正常工作模式状态S3下划分五个子状态,包括:S31:化霜加热工作状态,S32:滴水工作状态,S33:预冷工作状态,S34:制冷工作状态,S35:强冷工作状态。
作为进一步优化,在进行主控软件设计时,所述状态之间的切换由状态转移条件决定,具体包括:
当系统在上电模式S0时,
如果检测到传感器故障发生信号,则系统工作状态转移到故障工作模式状态S2;
如果检测到自检发生信号,则系统工作状态转移至自检工作状态S1;
如果检测到上电任务结束信号,则工作状态进入正常工作状态S3;
当系统在自检模式状态S1,如果检测到自检任务结束信号,则系统工作状态进入正常工作状态S3;
当系统在故障工作状态S2,如果检测到故障消除信号,则系统工作状态进入正常工作状态S3;
当系统在正常工作状态S3,如果检测到传感器故障发生信号,则系统工作状态进入故障工作模式状态S2,如果检测到压缩机手动调试发生信号,则系统工作状态进入压缩机频率手动控制模式状态S4;如果检测到手动化霜发生信号,系统工作状态进入手动化霜模式状态S5;
当系统在压缩机频率手动控制模式状态S4,如果检测到压缩机手动调试任务退出信号,系统工作状态进入正常工作模式S3;
当系统在手动化霜模式状态S5,如果检测到手动化霜任务退出信号,则系统工作状态进入正常工作模式S3。
本发明的有益效果是:
按照系统工作状态划分主控软件,能够使冰箱主控软件设计逻辑清晰,设计出来的软件又很方便于测试,从而提高软件质量。
附图说明
图1是本发明实施例中冰箱主控系统的二维状态机示意图。
具体实施方式
本发明旨在提出一种基于状态机的冰箱主控软件设计方法,解决传统技术中主控软件设计方法无法适应复杂控制逻辑和众多设备模块情况的问题。本发明中的冰箱主控软件设计并不是按照要控制的设备来划分模块,而是按照系统工作状态来划分模块(如:通常可以划分为自检状态,正常工作状态,故障工作状态,测试工作状态等)。控制的设备数量可以是很多个,但是系统的工作状态就仅仅几个。各工作状态的切换由状态转移条件决定,软件中在每一种工作状态可对相应设备进行控制,控制信号是由当前系统工作状态和输入信号来决定,这种软件设计方法叫做有限状态机设计方法,适合所有冰箱主控软件设计,能解决特别复杂的控制逻辑或者数量很多控制设备的情况。
如图1所示,本实施例中冰箱主控系统的二维状态机从纵向上观察,系统有6个工作状态,分别是S0:上电模式状态,S1:自检模式状态,S2:故障模式状态,S3:正常工作模式状态,S4:压缩机频率手动控制模式状态,S5:手动化霜模式状态;
从水平方向上看:工作状态S1有3个子状态,分别是S11:档位指示灯自检工作状态,S12:传感器自检工作状态,S13:压缩机自检工作状态。工作状态S3有5个子状S31:化霜加热工作状态,S32:滴水工作状态,S33:预冷工作状态,S34:制冷工作状态,S35:强冷工作状态。
Y1至Y15是状态转移条件,r1,r2是工作状态S1和S3对应需要执行的工作任务。
该状态机是有2个层次,纵向的s0,s1,s2,s3,s4,s5是主状态,s11,s12,s13是s1状态下的子状态,s31,s32,s33,s34,s35是s3状态下的子状态。纵向主状态机描述的内容是:
当系统在上电模式S0时,如果检测到传感器故障发生信号(Y1),则系统工作状态转移到故障工作模式状态S2。如果检测到自检发生信号(Y7),则系统工作状态转移至自检工作状态S1。如果检测到上电任务结束信号(Y8),则工作状态进入正常工作状态S3。
当系统在自检模式状态S1,如果自检任务结束信号(Y6),系统工作状态进入正常工作状态S3;
当系统在故障工作状态S2,如果检测到故障消除信号(Y2),系统工作状态进入正常工作状态S3;
当系统在正常工作状态S3,如果有故障发生信号(Y1),系统工作状态进入故障工作状态S2,如果检测到压缩机手动调试信号(Y4),系统工作状态进入压缩机频率手动控制模式状态S4;如果检测到手动化霜发生信号(Y3),系统工作状态进入手动化霜模式状态S5;
当系统在压缩机频率手动控制模式状态S4,如果检测道到压缩机手动调速任务退出信号(Y5),系统工作状态进入正常工作模式S3;
当系统在手动化霜模式状态S5,如果检测道手动化霜任务退出信号(Y6),系统工作状态进入正常工作模式S3。
基于状态机的软件设计对测试也很方便。根据图1,测试工作可以按状态机依次进行,在每个状态给出所有的输入逻辑组合,观察对应的输出信号。根据状态机进行测试,可以防止输入逻辑组合的遗漏,测试人员可以很清楚的判断当前软件在哪个状态运行。
Claims (3)
1.基于状态机的冰箱主控软件设计方法,其特征在于,包括:在进行主控软件设计时,将冰箱系统划分为多个主工作状态,在主工作状态下再划分子工作状态,并设置各状态之间的状态转移条件,状态之间的切换由状态转移条件决定。
2.如权利要求1所述的基于状态机的冰箱主控软件设计方法,其特征在于,在进行主控软件设计时,将冰箱系统划分的主工作状态包括:S0:上电模式状态,S1:自检模式状态,S2:故障模式状态,S3:正常工作模式状态,S4:压缩机频率手动控制模式状态,S5:手动化霜模式状态;在自检模式状态S1下划分三个子状态,包括:S11:档位指示灯自检工作状态,S12:传感器自检工作状态,S13:压缩机自检工作状态;在正常工作模式状态S3下划分五个子状态,包括:S31:化霜加热工作状态,S32:滴水工作状态,S33:预冷工作状态,S34:制冷工作状态,S35:强冷工作状态。
3.如权利要求2所述的基于状态机的冰箱主控软件设计方法,其特征在于,在进行主控软件设计时,所述状态之间的切换由状态转移条件决定,具体包括:
当系统在上电模式S0时,
如果检测到传感器故障发生信号,则系统工作状态转移到故障工作模式状态S2;
如果检测到自检发生信号,则系统工作状态转移至自检工作状态S1;
如果检测到上电任务结束信号,则工作状态进入正常工作状态S3;
当系统在自检模式状态S1,如果检测到自检任务结束信号,则系统工作状态进入正常工作状态S3;
当系统在故障工作状态S2,如果检测到故障消除信号,则系统工作状态进入正常工作状态S3;
当系统在正常工作状态S3,如果检测到传感器故障发生信号,则系统工作状态进入故障工作模式状态S2,如果检测到压缩机手动调试发生信号,则系统工作状态进入压缩机频率手动控制模式状态S4;如果检测到手动化霜发生信号,系统工作状态进入手动化霜模式状态S5;
当系统在压缩机频率手动控制模式状态S4,如果检测到压缩机手动调试任务退出信号,系统工作状态进入正常工作模式S3;
当系统在手动化霜模式状态S5,如果检测到手动化霜任务退出信号,则系统工作状态进入正常工作模式S3。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710198118.3A CN106970796A (zh) | 2017-03-29 | 2017-03-29 | 基于状态机的冰箱主控软件设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710198118.3A CN106970796A (zh) | 2017-03-29 | 2017-03-29 | 基于状态机的冰箱主控软件设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106970796A true CN106970796A (zh) | 2017-07-21 |
Family
ID=59336233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710198118.3A Pending CN106970796A (zh) | 2017-03-29 | 2017-03-29 | 基于状态机的冰箱主控软件设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106970796A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111101919A (zh) * | 2019-12-27 | 2020-05-05 | 三一石油智能装备有限公司 | 基于状态机的混砂车控制方法、状态机和混砂车 |
CN111811201A (zh) * | 2020-07-12 | 2020-10-23 | 南京创维家用电器有限公司 | 一种变频电脑冰箱的压缩机与风机转速调节控制方法 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1343862A (zh) * | 2000-09-11 | 2002-04-10 | 东芝株式会社 | 冰箱远距离检修系统 |
CN2660447Y (zh) * | 2003-10-30 | 2004-12-01 | 河南新飞电器有限公司 | 一种可实现独立/复合控制的电冰箱 |
CN101144671A (zh) * | 2006-09-13 | 2008-03-19 | 株式会社东芝 | 冰箱 |
US20080179409A1 (en) * | 2007-01-30 | 2008-07-31 | Johnson Controls Technology Company | Adaptive real-time optimization control |
CN101305350A (zh) * | 2005-06-09 | 2008-11-12 | 惠而浦公司 | 与家用电器内的至少一个部件通信以及对其进行管理的软件体系系统和方法 |
CN101915894A (zh) * | 2010-07-22 | 2010-12-15 | 北京交通大学 | 测试数字逻辑器件中实时有限状态机的方法 |
CN203217292U (zh) * | 2013-04-16 | 2013-09-25 | 广东金莱特电器股份有限公司 | 一种基于状态机的多功能电器控制电路 |
CN103712401A (zh) * | 2013-12-26 | 2014-04-09 | 合肥晶弘三菱电机家电技术开发有限公司 | 一种化霜系统及设置该化霜系统的冰箱 |
CN103851875A (zh) * | 2013-11-07 | 2014-06-11 | 海信(山东)冰箱有限公司 | 一种冰箱冷藏室的控制方法 |
CN104076763A (zh) * | 2013-03-12 | 2014-10-01 | 洛克威尔自动控制技术股份有限公司 | 状态机配置器 |
CN204043280U (zh) * | 2014-08-06 | 2014-12-24 | 江苏双鹿电器有限公司 | 冰箱化霜系统 |
CN104344643A (zh) * | 2013-07-30 | 2015-02-11 | 海尔集团公司 | 一种具有化霜结构的冰箱以及化霜方法 |
CN104949436A (zh) * | 2015-06-24 | 2015-09-30 | 合肥美的电冰箱有限公司 | 一种冰箱除霜控制方法、控制系统及冰箱 |
-
2017
- 2017-03-29 CN CN201710198118.3A patent/CN106970796A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1343862A (zh) * | 2000-09-11 | 2002-04-10 | 东芝株式会社 | 冰箱远距离检修系统 |
CN2660447Y (zh) * | 2003-10-30 | 2004-12-01 | 河南新飞电器有限公司 | 一种可实现独立/复合控制的电冰箱 |
CN101305350A (zh) * | 2005-06-09 | 2008-11-12 | 惠而浦公司 | 与家用电器内的至少一个部件通信以及对其进行管理的软件体系系统和方法 |
CN101144671A (zh) * | 2006-09-13 | 2008-03-19 | 株式会社东芝 | 冰箱 |
US20080179409A1 (en) * | 2007-01-30 | 2008-07-31 | Johnson Controls Technology Company | Adaptive real-time optimization control |
CN101915894A (zh) * | 2010-07-22 | 2010-12-15 | 北京交通大学 | 测试数字逻辑器件中实时有限状态机的方法 |
CN104076763A (zh) * | 2013-03-12 | 2014-10-01 | 洛克威尔自动控制技术股份有限公司 | 状态机配置器 |
CN203217292U (zh) * | 2013-04-16 | 2013-09-25 | 广东金莱特电器股份有限公司 | 一种基于状态机的多功能电器控制电路 |
CN104344643A (zh) * | 2013-07-30 | 2015-02-11 | 海尔集团公司 | 一种具有化霜结构的冰箱以及化霜方法 |
CN103851875A (zh) * | 2013-11-07 | 2014-06-11 | 海信(山东)冰箱有限公司 | 一种冰箱冷藏室的控制方法 |
CN103712401A (zh) * | 2013-12-26 | 2014-04-09 | 合肥晶弘三菱电机家电技术开发有限公司 | 一种化霜系统及设置该化霜系统的冰箱 |
CN204043280U (zh) * | 2014-08-06 | 2014-12-24 | 江苏双鹿电器有限公司 | 冰箱化霜系统 |
CN104949436A (zh) * | 2015-06-24 | 2015-09-30 | 合肥美的电冰箱有限公司 | 一种冰箱除霜控制方法、控制系统及冰箱 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111101919A (zh) * | 2019-12-27 | 2020-05-05 | 三一石油智能装备有限公司 | 基于状态机的混砂车控制方法、状态机和混砂车 |
CN111101919B (zh) * | 2019-12-27 | 2022-06-21 | 三一石油智能装备有限公司 | 基于状态机的混砂车控制方法、状态机和混砂车 |
CN111811201A (zh) * | 2020-07-12 | 2020-10-23 | 南京创维家用电器有限公司 | 一种变频电脑冰箱的压缩机与风机转速调节控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101858956B (zh) | 老化测试系统 | |
CN107831392A (zh) | 一种全电子联锁硬件智能测试系统 | |
CN104933928A (zh) | 能够自动检测电路接线正确性的实训装置 | |
CN104966456A (zh) | 一种基于profibus总线的故障设置系统 | |
CN201716331U (zh) | 老化测试系统 | |
CN101778007B (zh) | 一种自动测试can总线控制模块的i/o引脚的系统和方法 | |
CN103616890B (zh) | 一种倍福plc模块的检测方法 | |
CN106970796A (zh) | 基于状态机的冰箱主控软件设计方法 | |
CN107356883A (zh) | 一种基于电流有效值的信号灯故障检测装置及方法 | |
CN204884390U (zh) | 一种基于profibus总线的故障设置系统 | |
CN103309297A (zh) | 用于监测设备元件的系统和方法 | |
CN103604453A (zh) | 用于cvt变速箱的多功能测试装置 | |
CN101763097A (zh) | 质量流量控制器/计老化监测系统 | |
CN203366114U (zh) | 基于soa的继电保护及二次回路状态在线检修系统 | |
CN106647696B (zh) | Crh5型车司控器地面测试仪 | |
CN205374634U (zh) | 一种用于汽车连接器的快速自动检具 | |
CN204408009U (zh) | 变电站用交流电源监控装置 | |
CN200993778Y (zh) | 一种故障检测装置 | |
CN203759530U (zh) | 直升机自动驾驶系统在线断路试验器 | |
CN102681530B (zh) | 洗衣机程控器老化仿真测试方法 | |
CN205301523U (zh) | 伺服驱动器数字接口电路的测试设备 | |
CN104834301A (zh) | 汽车电子控制器的寿命测试方法及系统 | |
CN107610628B (zh) | 一种led显示单元板检测装置及方法 | |
CN103105205B (zh) | 燃气、热水、采暖综合检测系统及方法 | |
CN202886988U (zh) | 司机控制器试验台 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170721 |
|
RJ01 | Rejection of invention patent application after publication |