Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7417832B2 - Information processing method and information processing device - Google Patents
[go: Go Back, main page]

JP7417832B2 - Information processing method and information processing device - Google Patents

Information processing method and information processing device Download PDF

Info

Publication number
JP7417832B2
JP7417832B2 JP2020106611A JP2020106611A JP7417832B2 JP 7417832 B2 JP7417832 B2 JP 7417832B2 JP 2020106611 A JP2020106611 A JP 2020106611A JP 2020106611 A JP2020106611 A JP 2020106611A JP 7417832 B2 JP7417832 B2 JP 7417832B2
Authority
JP
Japan
Prior art keywords
information
control information
block
parameter
washing
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.)
Active
Application number
JP2020106611A
Other languages
Japanese (ja)
Other versions
JP2022002007A (en
Inventor
一樹 坂本
隼人 成瀬
竜弘 岸
健太 村上
智志 末益
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2020106611A priority Critical patent/JP7417832B2/en
Priority to PCT/JP2021/022552 priority patent/WO2021256432A1/en
Priority to CN202180042573.9A priority patent/CN115699067A/en
Priority to TW110121957A priority patent/TWI864296B/en
Publication of JP2022002007A publication Critical patent/JP2022002007A/en
Priority to JP2023213396A priority patent/JP7627870B2/en
Application granted granted Critical
Publication of JP7417832B2 publication Critical patent/JP7417832B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • DTEXTILES; PAPER
    • D06TREATMENT OF TEXTILES OR THE LIKE; LAUNDERING; FLEXIBLE MATERIALS NOT OTHERWISE PROVIDED FOR
    • D06FLAUNDERING, DRYING, IRONING, PRESSING OR FOLDING TEXTILE ARTICLES
    • D06F33/00Control of operations performed in washing machines or washer-dryers 
    • D06F33/30Control of washing machines characterised by the purpose or target of the control 
    • D06F33/32Control of operational steps, e.g. optimisation or improvement of operational steps depending on the condition of the laundry
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • General Health & Medical Sciences (AREA)
  • Textile Engineering (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Control Of Washing Machine And Dryer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Description

本開示は、情報処理方法、及び、情報処理装置に関する。 The present disclosure relates to an information processing method and an information processing device.

従来、家庭用電化製品及び住宅設備等は、その製造者等によって予め用意された運転条件(制御プログラム)に従って制御される。特許文献1には、ユーザが実施したい洗濯の運転条件を設定可能な洗濯機が開示されている。 BACKGROUND ART Conventionally, household electrical appliances, housing equipment, and the like are controlled according to operating conditions (control programs) prepared in advance by their manufacturers. Patent Document 1 discloses a washing machine that allows a user to set operating conditions for washing desired by a user.

特開2003-284889号公報Japanese Patent Application Publication No. 2003-284889

しかしながら、上記従来技術では、製品の製造者等によって予め開発された制御プログラムが製品に予め格納されていなければならず、多様なユーザの望みに合わせて制御プログラムをカスタマイズ及びアップデートすることは難しい。 However, in the above-mentioned conventional technology, a control program developed in advance by the product manufacturer or the like must be stored in the product in advance, and it is difficult to customize and update the control program in accordance with the wishes of various users.

そこで、本開示は、多種多様でかつ安全な制御プログラムを簡単に生成することができる情報処理方法などを提供する。 Therefore, the present disclosure provides an information processing method that can easily generate a wide variety of safe control programs.

本開示の一態様に係る情報処理方法は、洗濯機の運転を制御するための複数の制御情報を含む洗濯情報を生成する情報処理方法であって、それぞれが洗濯物に対する洗濯に関する運転を行う洗濯機能部を制御するパラメータに関する制御情報である複数の制御情報、及び、前記複数の制御情報を実行する順番に関する順番情報を含む洗濯情報の入力を受け付け、洗濯の順番に関するルールに基づいて前記洗濯情報を修正する。 An information processing method according to an aspect of the present disclosure is an information processing method for generating laundry information including a plurality of pieces of control information for controlling the operation of a washing machine, each of which performs an operation related to washing laundry. Accepts input of laundry information including a plurality of control information that is control information regarding parameters for controlling functional units and order information regarding the order in which the plurality of control information is executed, and executes the laundry information based on rules regarding the order of laundry. Correct.

また、本開示の他の一態様に係る情報処理方法は、洗濯機の運転を制御するための複数の制御情報を含む洗濯情報を生成する情報処理方法であって、前記複数の制御情報のそれぞれは、洗濯物に対する洗濯に関する運転を行う洗濯機能部を制御するパラメータに関する制御情報を含み、前記情報処理方法は、前記複数の制御情報のうちの第1の制御情報の入力を受け付け、受け付けた前記第1の制御情報と、洗濯の順番に関するルールと、に基づいて、前記第1の制御情報の次の順番で実行されることが許容される制御情報の条件を特定し、特定した前記条件に基づいて、前記第1の制御情報の次に実行される順番に設定される第2の制御情報の入力を制限する。 Further, an information processing method according to another aspect of the present disclosure is an information processing method for generating laundry information including a plurality of pieces of control information for controlling the operation of a washing machine, wherein each of the plurality of pieces of control information is includes control information regarding parameters for controlling a washing function unit that performs an operation related to washing laundry, and the information processing method receives an input of first control information among the plurality of control information, and Based on the first control information and a rule regarding the order of washing, specify a condition of control information that is allowed to be executed in the order following the first control information, and according to the specified condition. Based on this, input of second control information set to be executed next to the first control information is restricted.

なお、これらの包括的又は具体的な態様は、システム、装置、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。 Note that these comprehensive or specific aspects may be realized by a system, a device, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, and the system, method, integrated circuit, computer program and a recording medium may be used in any combination.

本開示の一態様に係る情報処理方法は、多種多様でかつ安全な制御プログラムを簡単に生成することができる。 The information processing method according to one aspect of the present disclosure can easily generate a wide variety of safe control programs.

図1は、実施の形態1におけるシステムのハードウェア構成図である。FIG. 1 is a hardware configuration diagram of a system in the first embodiment. 図2Aは、実施の形態1におけるクラウドサーバのハードウェア構成図である。FIG. 2A is a hardware configuration diagram of the cloud server in the first embodiment. 図2Bは、実施の形態1における装置のハードウェア構成図である。FIG. 2B is a hardware configuration diagram of the device in the first embodiment. 図2Cは、実施の形態1における端末のハードウェア構成図である。FIG. 2C is a hardware configuration diagram of the terminal in the first embodiment. 図3は、実施の形態1におけるシステムの機能構成図である。FIG. 3 is a functional configuration diagram of the system in the first embodiment. 図4は、洗濯機の構成の一例を示す図である。FIG. 4 is a diagram showing an example of the configuration of a washing machine. 図5は、洗濯機の機能構成の一例を示すブロック図である。FIG. 5 is a block diagram showing an example of the functional configuration of a washing machine. 図6Aは、実施の形態1におけるアプリケーションを規定するブロックの第1の例を示す。FIG. 6A shows a first example of blocks defining an application in the first embodiment. 図6Bは、実施の形態1におけるアプリケーションを規定するブロックの第2の例を示す。FIG. 6B shows a second example of blocks defining an application in the first embodiment. 図6Cは、実施の形態1におけるアプリケーションを規定するブロックの第3の例を示す。FIG. 6C shows a third example of blocks defining an application in the first embodiment. 図6Dは、実施の形態1におけるアプリケーションを規定するブロックの第4の例を示す。FIG. 6D shows a fourth example of blocks defining an application in the first embodiment. 図6Eは、実施の形態1におけるアプリケーションを規定するブロックの第5の例を示す。FIG. 6E shows a fifth example of blocks defining an application in the first embodiment. 図6Fは、実施の形態1におけるアプリケーションを規定するブロックの第6の例を示す。FIG. 6F shows a sixth example of blocks defining an application in the first embodiment. 図6Gは、実施の形態1におけるアプリケーションを規定するブロックの第7の例を示す。FIG. 6G shows a seventh example of blocks that define an application in the first embodiment. 図6Hは、実施の形態1におけるアプリケーションを規定するブロックの第8の例を示す。FIG. 6H shows an eighth example of blocks defining an application in the first embodiment. 図6Iは、実施の形態1におけるアプリケーションを規定するブロックの第9の例を示す。FIG. 6I shows a ninth example of blocks defining an application in the first embodiment. 図6Jは、実施の形態1におけるアプリケーションを規定するブロックの第10の例を示す。FIG. 6J shows a tenth example of blocks defining an application in the first embodiment. 図6Kは、実施の形態1におけるアプリケーションを規定するブロックの第11の例を示す。FIG. 6K shows an eleventh example of blocks defining an application in the first embodiment. 図6Lは、実施の形態1におけるアプリケーションを規定するブロックの第12の例を示す。FIG. 6L shows a twelfth example of blocks defining an application in the first embodiment. 図6Mは、実施の形態1におけるアプリケーションを規定するブロックの第13の例を示す。FIG. 6M shows a thirteenth example of blocks defining an application in the first embodiment. 図6Nは、実施の形態1におけるアプリケーションを規定するブロックの第14の例を示す。FIG. 6N shows a fourteenth example of blocks defining an application in the first embodiment. 図6Oは、実施の形態1におけるアプリケーションを規定するブロックの第15の例を示す。FIG. 6O shows a fifteenth example of blocks defining an application in the first embodiment. 図7は、実施の形態1におけるシステムのシーケンス図である。FIG. 7 is a sequence diagram of the system in the first embodiment. 図8は、実施の形態1におけるデバイスデータベースの一例を示す。FIG. 8 shows an example of the device database in the first embodiment. 図9は、実施の形態1における実行内容宣言の一例を示す。FIG. 9 shows an example of an execution content declaration in the first embodiment. 図10は、実施の形態1における実行前確認処理のフローチャートを示す。FIG. 10 shows a flowchart of the pre-execution confirmation process in the first embodiment. 図11は、実施の形態1におけるルールデータベースの一例を示す。FIG. 11 shows an example of the rule database in the first embodiment. 図12は、実施の形態1における実行内容宣言の修正の第1の例を示す。FIG. 12 shows a first example of modification of the execution content declaration in the first embodiment. 図13は、実施の形態1における実行内容宣言の修正の第2の例を示す。FIG. 13 shows a second example of modification of the execution content declaration in the first embodiment. 図14は、実施の形態1における実行内容宣言の修正の第3の例を示す。FIG. 14 shows a third example of modification of the execution content declaration in the first embodiment. 図15は、実施の形態1における実行内容宣言の修正の第4の例を示す。FIG. 15 shows a fourth example of modification of the execution content declaration in the first embodiment. 図16は、実施の形態1における実行内容宣言の修正の第5の例を示す。FIG. 16 shows a fifth example of modification of the execution content declaration in the first embodiment. 図17は、実施の形態1における実行内容宣言の修正の第6の例を示す。FIG. 17 shows a sixth example of modification of the execution content declaration in the first embodiment. 図18は、実施の形態1における実行内容宣言の修正の第7の例を示す。FIG. 18 shows a seventh example of modification of the execution content declaration in the first embodiment. 図19は、実施の形態1における実行内容宣言の修正の第8の例を示す。FIG. 19 shows an eighth example of modification of the execution content declaration in the first embodiment. 図20は、実施の形態1における実行内容宣言の修正の第9の例を示す。FIG. 20 shows a ninth example of modification of the execution content declaration in the first embodiment. 図21Aは、実施の形態1の変形例1におけるシステムのシーケンス図である。FIG. 21A is a sequence diagram of a system in Modification 1 of Embodiment 1. 図21Bは、実施の形態1の変形例2におけるシステムのシーケンス図である。FIG. 21B is a sequence diagram of the system in Modification 2 of Embodiment 1. 図21Cは、実施の形態1の変形例3におけるシステムのシーケンス図である。FIG. 21C is a sequence diagram of the system in Modification 3 of Embodiment 1. 図21Dは、実施の形態1の変形例4におけるシステムのシーケンス図である。FIG. 21D is a sequence diagram of a system in Modification 4 of Embodiment 1. 図21Eは、実施の形態1の変形例5におけるシステムのシーケンス図である。FIG. 21E is a sequence diagram of the system in Modification 5 of Embodiment 1. 図22は、実施の形態2における実行前確認処理のフローチャートを示す。FIG. 22 shows a flowchart of the pre-execution confirmation process in the second embodiment. 図23は、実施の形態3における実行前確認処理のフローチャートを示す。FIG. 23 shows a flowchart of the pre-execution confirmation process in the third embodiment. 図24は、実施の形態4における実行前確認処理のフローチャートを示す。FIG. 24 shows a flowchart of the pre-execution confirmation process in the fourth embodiment. 図25は、実施の形態4におけるルールデータベースの一例を示す。FIG. 25 shows an example of the rule database according to the fourth embodiment. 図26は、実施の形態5における情報処理システムの構成例を示す図である。FIG. 26 is a diagram illustrating a configuration example of an information processing system in Embodiment 5. 図27Aは、実施の形態5におけるブロックデータベースに格納されている情報の一例を示す図である。FIG. 27A is a diagram illustrating an example of information stored in the block database in the fifth embodiment. 図27Bは、実施の形態5におけるルールデータベースに格納されている情報の一例を示す図である。FIG. 27B is a diagram illustrating an example of information stored in the rule database according to the fifth embodiment. 図28は、実施の形態5におけるルールデータベースに含まれる汎用ルールの一例を示す図である。FIG. 28 is a diagram showing an example of general-purpose rules included in the rule database according to the fifth embodiment. 図29は、実施の形態5における情報処理システムのシーケンス図である。FIG. 29 is a sequence diagram of the information processing system in the fifth embodiment. 図30は、実施の形態5における開発ツールの全体的な処理動作を示すフローチャートである。FIG. 30 is a flowchart showing the overall processing operation of the development tool in the fifth embodiment. 図31は、実施の形態5におけるパラメータの自動修正処理の一例を示すフローチャートである。FIG. 31 is a flowchart illustrating an example of automatic parameter correction processing in the fifth embodiment. 図32は、実施の形態5におけるパラメータのエラー提示処理の一例を示すフローチャートである。FIG. 32 is a flowchart illustrating an example of parameter error presentation processing in the fifth embodiment. 図33は、実施の形態5におけるシーケンス生成画面の一例を示す図である。FIG. 33 is a diagram showing an example of a sequence generation screen in the fifth embodiment. 図34は、実施の形態5におけるブロック一覧の表示例を示す図である。FIG. 34 is a diagram illustrating a display example of a block list in the fifth embodiment. 図35Aは、実施の形態5におけるパラメータ設定領域の第1の表示例を示す図である。FIG. 35A is a diagram showing a first display example of the parameter setting area in the fifth embodiment. 図35Bは、実施の形態5におけるパラメータ設定領域の第2の表示例を示図である。FIG. 35B is a diagram showing a second display example of the parameter setting area in the fifth embodiment. 図36は、実施の形態5における機能ブロックの自動修正処理の一例を示す図である。FIG. 36 is a diagram illustrating an example of automatic correction processing of functional blocks in the fifth embodiment. 図37は、実施の形態5における機能ブロックの接続の自動修正処理の第1の例を示す図である。FIG. 37 is a diagram illustrating a first example of automatic correction processing for connection of functional blocks in the fifth embodiment. 図38は、実施の形態5における機能ブロックの接続の自動修正処理の第2の例を示す図である。FIG. 38 is a diagram illustrating a second example of automatic correction processing for connection of functional blocks in the fifth embodiment. 図39は、実施の形態5における機能ブロックの接続の自動修正処理の第3の例を示す図である。FIG. 39 is a diagram illustrating a third example of automatic correction processing for connection of functional blocks in the fifth embodiment. 図40は、実施の形態5における機能ブロックの接続の自動修正処理の第4の例を示す図である。FIG. 40 is a diagram illustrating a fourth example of automatic correction processing for connection of functional blocks in the fifth embodiment.

(本開示の基礎となった知見)
本願発明者らが本開示に至るまでの経緯を説明する。アクチュエータ及び/又は加熱器を有する家庭用電化製品等において、多様なユーザの望みに合わせて制御プログラムを開発するためには、開発環境のオープン化が求められる。すなわち、制御プログラムの開発の難度を低下させて、サードパーティが制御プログラムの開発に容易に参加できる環境が求められる。このような環境では、例えば、アパレル企業が、自社の販売する衣服を洗濯するための洗濯機の制御プログラムを開発することも可能となる。
(Findings that formed the basis of this disclosure)
The circumstances leading up to the present disclosure will be explained by the inventors of the present application. BACKGROUND ART In order to develop control programs for household electrical appliances and the like that have actuators and/or heaters in accordance with the desires of various users, an open development environment is required. In other words, there is a need for an environment that reduces the difficulty of developing control programs and allows third parties to easily participate in the development of control programs. In such an environment, for example, an apparel company could develop a control program for a washing machine that washes the clothes it sells.

そこで、本発明者らは、製品に含まれるアクチュエータ及び加熱器の制御を抽象化した機能ブロックを用いて、安全面の担保を維持しながら、制御プログラムを開発可能な環境を構築し、複数の機能ブロックの組み合わせからなる制御プログラムをパッケージ化してアプリケーションとして配信可能な仕組みを検討した。これにより、多種多彩なアプリケーションの配信が可能となり、より多様なユーザの望みに応えて製品をカスタマイズ及びアップデートすることが可能となる。しかしながら、このような環境では、危険なアプリケーション(つまり、製品を安全に制御することができないアプリケーション)が配信される可能性があり、製品の安全性が低下する。 Therefore, the present inventors created an environment in which control programs can be developed while maintaining safety by using functional blocks that abstract the control of actuators and heaters included in the product, and multiple We investigated a mechanism that allows control programs consisting of combinations of functional blocks to be packaged and distributed as applications. This makes it possible to distribute a wide variety of applications, and to customize and update products to meet the desires of a wider variety of users. However, in such an environment, dangerous applications (i.e., applications that cannot safely control the product) may be distributed, making the product less secure.

例えば、家庭用電化製品等に含まれるプログラムは、アクチュエータ及び/又は加熱器を直接制御するための機器に組込まれ、かつ、製造者により開発されたプログラムと、サードパーティにより開発されたプログラムとを互いに入り交じった状態で含むことが想定される。このとき、製造者は、サードパーティに、ノウハウを含む全ての家庭用電化製品等の情報を公開しない可能性が高い。例えば、アクチュエータ及び加熱器を駆動するパラメータ又はタイミングは、製造者の家庭用電化製品等の性能に関わるノウハウである。よって、競争力の低下につながる恐れがあるため、製造者は、サードパーティに、家庭用電化製品等を自在に駆動できるようにノウハウをオープンにする可能性は低い。 For example, programs included in household appliances, etc. are built into equipment to directly control actuators and/or heaters, and include programs developed by the manufacturer and programs developed by third parties. It is assumed that they are included in a mixed state. At this time, there is a high possibility that the manufacturer will not disclose all information, including know-how, about the household appliances to third parties. For example, the parameters or timing for driving actuators and heaters are a manufacturer's know-how related to the performance of household appliances and the like. Therefore, manufacturers are unlikely to disclose their know-how to third parties so that they can freely drive home appliances and the like, as this may lead to a decline in competitiveness.

そのため、サードパーティは、家庭用電化製品等の情報不足により、製造者が想定しない制御の組み合わせ、又はパラメータ範囲を含むアプリケーション、すなわち、安全性が担保されないアプリケーションを作成する可能性がある。このようなアプリケーションがユーザに提供されることは、ユーザに望ましくない。 Therefore, due to lack of information about household appliances, third parties may create applications that include control combinations or parameter ranges that the manufacturer did not expect, that is, applications that do not ensure safety. It is undesirable for users to be provided with such applications.

また、家庭用電化製品等の製造者は、新たな制御プログラムを提供することで、ユーザのくらしのアップデートを試みることが考えられる。しかしながら、多種多様な新たな制御プログラムの開発には、パラメータの調整、またはハードの性能評価などの膨大な工数がかかる。家庭用電化製品等は、アクチュエータ及び/又は加熱器のハードが物理的に駆動するため、家庭用電化製品等のプログラムは、スマートフォンのプログラムと比較して、性能評価などの工数が大きくなることが容易に予想される。しかし、大量生産ではなく、ユーザ一人一人の生活に応じたオンデマンド開発が求められる時代において、スマートフォンのプログラムと同様に、家庭用電化製品等の多種多様な制御プログラム開発することが求められる。そのため、製造者は、膨大な工数を低減した上で、製品の安全性を担保する多種多様なアプリケーションを作成しなければならない。 Additionally, manufacturers of household electrical appliances and the like may try to update users' lifestyles by providing new control programs. However, developing a wide variety of new control programs requires a huge amount of man-hours such as adjusting parameters and evaluating hardware performance. Since the actuator and/or heater hardware of household appliances is physically driven, programming for household appliances may require more man-hours for performance evaluation, etc., than programming for smartphones. easily predicted. However, in an era where on-demand development tailored to each user's lifestyle is required, rather than mass production, there is a need to develop a wide variety of control programs for household appliances, just like programs for smartphones. Therefore, manufacturers must create a wide variety of applications that ensure product safety while reducing a huge amount of man-hours.

さらに、製造者は、サードパーティが提供するアプリケーションを用いて家庭用電化製品等が動作した場合でも、安全に動作することを保証することを望むことが考えられる。このとき、多種多様なアプリケーションを家庭用電化製品等で実際に駆動させて安全性を検証する作業の量を低減することが望まれる。 Furthermore, manufacturers may wish to ensure that household appliances and the like operate safely even when operated using applications provided by third parties. At this time, it is desirable to reduce the amount of work involved in actually running a wide variety of applications on household electrical appliances and verifying their safety.

そこで、本開示は、アクチュエータ及び/又は加熱器を駆動する複数の機能ブロックで規定された多種多彩なアプリケーションを、より簡単かつ安全に実行することができる装置等を提供する。 Therefore, the present disclosure provides a device and the like that can more easily and safely execute a wide variety of applications defined by a plurality of functional blocks that drive actuators and/or heaters.

以下、実施の形態について、図面を参照しながら具体的に説明する。 Hereinafter, embodiments will be specifically described with reference to the drawings.

なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、請求の範囲を限定する主旨ではない。 Note that the embodiments described below are all inclusive or specific examples. The numerical values, shapes, materials, components, arrangement positions and connection forms of the components, steps, order of steps, etc. shown in the following embodiments are merely examples, and do not limit the scope of the claims.

また、各図は、必ずしも厳密に図示したものではない。各図において、実質的に同一の構成については同一の符号を付し、重複する説明は省略又は簡略化する。 Further, each figure is not necessarily strictly illustrated. In each figure, substantially the same configurations are designated by the same reference numerals, and overlapping explanations will be omitted or simplified.

(実施の形態1)
[1.1 ハードウェア構成]
本実施の形態におけるシステム1のハードウェア構成について、図1~図2Cを参照しながら説明する。図1は、実施の形態1におけるシステム1のハードウェア構成図である。図2Aは、実施の形態1におけるクラウドサーバ10のハードウェア構成図である。図2Bは、実施の形態1における装置20のハードウェア構成図である。図2Cは、実施の形態1における端末30のハードウェア構成図である。
(Embodiment 1)
[1.1 Hardware configuration]
The hardware configuration of the system 1 in this embodiment will be explained with reference to FIGS. 1 to 2C. FIG. 1 is a hardware configuration diagram of a system 1 in the first embodiment. FIG. 2A is a hardware configuration diagram of the cloud server 10 in the first embodiment. FIG. 2B is a hardware configuration diagram of the device 20 in the first embodiment. FIG. 2C is a hardware configuration diagram of the terminal 30 in the first embodiment.

図1及び図3に示すように、本実施の形態におけるシステム1は、クラウドサーバ10と、施設2a~2dで用いられる装置20a~20hと、端末30a~30dと、を備える。施設2a~2dは、例えば住宅であるが、これに限定されない。施設2a~2dは、例えばマンション、店舗、オフィス等であってもよい。システム1は、制御システムの一例である。 As shown in FIGS. 1 and 3, the system 1 in this embodiment includes a cloud server 10, devices 20a to 20h used in facilities 2a to 2d, and terminals 30a to 30d. The facilities 2a to 2d are, for example, residences, but are not limited thereto. The facilities 2a to 2d may be, for example, an apartment, a store, an office, or the like. System 1 is an example of a control system.

クラウドサーバ10は、コンピュータネットワーク(例えばインターネット)を介して提供される仮想的なサーバである。クラウドサーバ10は、コンピュータネットワークを介して、装置20a~20h及び端末30a~30dに通信可能に接続される。なお、クラウドサーバ10の代わりに物理サーバが用いられてもよい。クラウドサーバ10は、外部機器の一例である。 The cloud server 10 is a virtual server provided via a computer network (eg, the Internet). Cloud server 10 is communicatively connected to devices 20a to 20h and terminals 30a to 30d via a computer network. Note that a physical server may be used instead of the cloud server 10. The cloud server 10 is an example of an external device.

図2Aに示すように、クラウドサーバ10は、仮想的に、プロセッサ11と、プロセッサ11に接続されたメモリ12と、を備える。プロセッサ11は、メモリ12に格納されたインストラクション又はソフトウェアプログラムが実行されたときに、後述するシーケンスマネージャ及びデバイスマネージャとして機能する。 As shown in FIG. 2A, the cloud server 10 virtually includes a processor 11 and a memory 12 connected to the processor 11. The processor 11 functions as a sequence manager and a device manager, which will be described later, when instructions or software programs stored in the memory 12 are executed.

装置20a~20hは、施設2a~2dで利用される電気機械器具である。なお、図1では、施設2b~2dで利用される装置20c~20hの図示が省略されている。以下において、装置20a~20hの区別が不要な場合には装置20と記載する。 The devices 20a to 20h are electrical mechanical appliances used in the facilities 2a to 2d. Note that in FIG. 1, illustrations of the devices 20c to 20h used in the facilities 2b to 2d are omitted. In the following, when it is not necessary to distinguish between the devices 20a to 20h, they will be referred to as the device 20.

装置20としては、家庭用電化製品(家電)及び住宅設備等を用いることができる。家庭用電化製品(家電)及び住宅設備等は、住宅内で使用される機器に限られず、事業に用いられる機器も含む。なお、本開示では、家庭用電化製品及び住宅設備等を家庭用電化製品等と省略して記載することがある。家電としては、例えば、電子レンジ、炊飯器、ミキサー(Blender)、電気オーブン、電気トースター、電気ポット、ホットプレート、IH(Induction heating)調理器、ロースター、ベーカリー、電気圧力調理なべ、電気無水調理なべ、マルチクッカー、コーヒーメーカー、冷蔵庫、洗濯機、食洗器、掃除機、エアコン、空気清浄機、加湿器、ドライヤー、扇風機、及びイオン発生器等が用いられる。住宅設備としては、例えば、電動シャッター、電子ロック、及び浴槽用の電気湯沸し器等が用いられる。なお、装置20は、これらの機器に限定されない。 As the device 20, household electrical appliances (household appliances), housing equipment, etc. can be used. Household electrical appliances (home appliances) and housing equipment are not limited to equipment used in homes, but also include equipment used in business. Note that in this disclosure, household electrical appliances, housing equipment, etc. may be abbreviated as household electrical appliances, etc. Examples of home appliances include microwave ovens, rice cookers, blenders, electric ovens, electric toasters, electric pots, hot plates, IH (induction heating) cookers, roasters, bakeries, electric pressure cooking pots, and electric waterless cooking pots. , multi-cookers, coffee makers, refrigerators, washing machines, dishwashers, vacuum cleaners, air conditioners, air purifiers, humidifiers, hair dryers, electric fans, ion generators, and the like. Examples of residential equipment used include electric shutters, electronic locks, and electric water heaters for bathtubs. Note that the device 20 is not limited to these devices.

図2Bに示すように、装置20は、筐体21と、アクチュエータ22と、加熱器23と、制御部24と、を備える。なお、装置20は、アクチュエータ22及び加熱器23の少なくとも1つを備えればよく、アクチュエータ22及び加熱器23の両方を備えなくてもよい。 As shown in FIG. 2B, the device 20 includes a housing 21, an actuator 22, a heater 23, and a control unit 24. Note that the device 20 only needs to include at least one of the actuator 22 and the heater 23, and does not need to include both the actuator 22 and the heater 23.

筐体21は、アクチュエータ22と、加熱器23と、制御部24と、を収容する。また、筐体21は、対象物を処理するための内部空間を有してもよい。例えば、洗濯機の洗濯槽、電子レンジの加熱室、及び炊飯器の内釜等が、対象物を処理するための内部空間に相当する。 The housing 21 houses the actuator 22, the heater 23, and the control unit 24. Further, the housing 21 may have an internal space for processing the object. For example, the washing tub of a washing machine, the heating chamber of a microwave oven, the inner pot of a rice cooker, etc. correspond to the internal space for processing objects.

アクチュエータ22は、電気信号に基づいて入力エネルギーを物理的運動に変換する機械要素である。アクチュエータ22としては、例えば電気モータ、油圧シリンダ及び空気圧アクチュエータ等を用いることができるが、これらに限定されない。 Actuator 22 is a mechanical element that converts input energy into physical movement based on electrical signals. As the actuator 22, for example, an electric motor, a hydraulic cylinder, a pneumatic actuator, etc. can be used, but the actuator is not limited thereto.

加熱器23は、電気エネルギーを熱エネルギーに変換する電気加熱器である。加熱器23は、例えばジュール加熱、誘導加熱及び誘電加熱等により対象物を加熱する。加熱器23としては、例えば、ニクロム線、コイル及びマグネトロン等を用いることができる。 The heater 23 is an electric heater that converts electrical energy into thermal energy. The heater 23 heats the object using, for example, Joule heating, induction heating, dielectric heating, or the like. As the heater 23, for example, a nichrome wire, a coil, a magnetron, etc. can be used.

ここで、本開示の装置20が、アクチュエータ22及び/又は加熱器23を備える理由の一例を説明する。家庭用電化製品等の製造者が、アクチュエータ22及び加熱器23を駆動するパラメータ、駆動の組み合わせを全て自由に制御可能な開発環境をサードパーティに提供した場合を考える。このとき、サードパーティは、製造者が想定しているアクチュエータ22及び/又は加熱器23を安全に駆動できるパラメータ範囲、又はアクチュエータ22及び/又は加熱器23の駆動制限を逸脱して制御するプログラムを作成することが可能になる。特に、物理的に運動するアクチュエータ22、又は熱エネルギーを出力する加熱器23の、製造者の想定していない駆動は、安全性の担保の課題が大きい。製造者の想定していない駆動としては、例えば、アクチュエータの一例である電気モータの高速回転、及び、加熱器23への過電流の供給が挙げられる。本願発明者らは、過度に安全面を考慮することで、ユーザに多種多様なアプリケーションを提供できる環境の構築を阻害しないことを目指した。そこで、物理的に運動するアクチュエータ22、又は熱エネルギーを出力する加熱器23に特化して、安全面を担保することを想定し、本開示の装置20を対象としている。 Here, an example of why the device 20 of the present disclosure includes the actuator 22 and/or the heater 23 will be explained. Consider a case where a manufacturer of household electrical appliances or the like provides a third party with a development environment in which all of the parameters and drive combinations for driving the actuator 22 and the heater 23 can be freely controlled. At this time, the third party creates a program that controls the actuator 22 and/or the heater 23 outside the parameter range that allows the actuator 22 and/or the heater 23 to be driven safely, or the drive limit of the actuator 22 and/or the heater 23 that is assumed by the manufacturer. It becomes possible to create. In particular, driving the actuator 22 that physically moves or the heater 23 that outputs thermal energy that is not intended by the manufacturer poses a major problem in ensuring safety. Examples of drives that are not anticipated by the manufacturer include high-speed rotation of an electric motor, which is an example of an actuator, and supply of excessive current to the heater 23. The inventors of the present application aimed to avoid hindering the construction of an environment that can provide a wide variety of applications to users by excessively considering safety. Therefore, the device 20 of the present disclosure is targeted to ensure safety by specializing in the actuator 22 that physically moves or the heater 23 that outputs thermal energy.

制御部24は、アクチュエータ22及び/又は加熱器23を制御するコントローラであり、後述するデバイスとして機能する。制御部24は、例えば、集積回路で構成される。 The control unit 24 is a controller that controls the actuator 22 and/or the heater 23, and functions as a device described later. The control unit 24 is composed of, for example, an integrated circuit.

端末30a~30dは、施設2a~2dでそれぞれ利用され、ユーザインタフェースとして機能する。なお、図1では、施設2b~2dで利用される端末30b~30dの図示が省略されている。以下において、端末30a~30dの区別が不要な場合には端末30と記載する。 The terminals 30a to 30d are used in the facilities 2a to 2d, respectively, and function as user interfaces. Note that in FIG. 1, illustration of the terminals 30b to 30d used in the facilities 2b to 2d is omitted. In the following, when it is not necessary to distinguish between the terminals 30a to 30d, they will be referred to as the terminal 30.

端末30は、コンピュータネットワークを介してクラウドサーバ10及び装置20に接続され、後述するユーザインタフェース(UI)として機能する。端末30としては、スマートフォン及びタブレットコンピュータ等の持ち運び可能な情報端末を用いることができる。なお、端末30は、施設2a~2dの壁、床又は天井に固定された端末であってもよい。また、端末30は、装置20に含まれてもよい。例えば、端末30は、各装置20a~20hに内蔵されたディスプレイ等を有する表示端末として実現されてもよい。 The terminal 30 is connected to the cloud server 10 and the device 20 via a computer network, and functions as a user interface (UI) to be described later. As the terminal 30, a portable information terminal such as a smartphone or a tablet computer can be used. Note that the terminal 30 may be a terminal fixed to the wall, floor, or ceiling of the facilities 2a to 2d. Further, the terminal 30 may be included in the device 20. For example, the terminal 30 may be realized as a display terminal having a built-in display or the like in each of the devices 20a to 20h.

図2Cに示すように、端末30は、ディスプレイ31と、入力デバイス32と、を備える。ディスプレイ31としては、例えば液晶ディスプレイ及び有機ELディスプレイを用いることができる。入力デバイス32としては、例えばタッチパネル、キーボード、マウス及び機械式ボタン等を用いることができる。また、入力デバイス32として、音声入力デバイスが用いられてもよい。ディスプレイ31と入力デバイス32とは、タッチスクリーンとして一体で実装されてもよい。または、入力デバイス32として、ジェスチャー入力デバイスが用いられてもよい。ジェスチャー入力デバイスは、例えば、カメラと認識部とを有する。カメラはジェスチャーを含む画像を撮像し、認識部は画像を用いてジェスチャーを認識する。 As shown in FIG. 2C, the terminal 30 includes a display 31 and an input device 32. As the display 31, for example, a liquid crystal display or an organic EL display can be used. As the input device 32, for example, a touch panel, a keyboard, a mouse, a mechanical button, etc. can be used. Furthermore, a voice input device may be used as the input device 32. The display 31 and the input device 32 may be integrally implemented as a touch screen. Alternatively, a gesture input device may be used as the input device 32. The gesture input device includes, for example, a camera and a recognition unit. The camera captures an image including the gesture, and the recognition unit recognizes the gesture using the image.

[1.2 機能構成]
次に、本実施の形態におけるシステム1の機能構成について、図3を参照しながら説明する。図3は、実施の形態1におけるシステム1の機能構成図である。
[1.2 Functional configuration]
Next, the functional configuration of the system 1 in this embodiment will be explained with reference to FIG. 3. FIG. 3 is a functional configuration diagram of the system 1 in the first embodiment.

クラウドサーバ10は、シーケンスマネージャ100と、デバイスマネージャ200と、を備える。装置20a~20hは、デバイス300a~300hをそれぞれ備える。端末30a~30dは、UI400a~400dをそれぞれ備える。 The cloud server 10 includes a sequence manager 100 and a device manager 200. Apparatuses 20a-20h each include devices 300a-300h. The terminals 30a to 30d each include UIs 400a to 400d.

以下において、デバイス300a~300hの区別が不要な場合にはデバイス300と記載する。また、UI400a~400dの区別が不要な場合にはUI400と記載する。 In the following, devices 300a to 300h will be referred to as device 300 when it is not necessary to distinguish between them. Furthermore, if it is not necessary to distinguish between the UIs 400a to 400d, they will be described as UI400.

シーケンスマネージャ100は、複数のアプリケーションを管理している。複数のアプリケーションは、例えばユーザの操作によって、アプリケーション配信プラットフォームからシーケンスマネージャ100にダウンロードされる。または、アプリケーション配信プラットフォームに含まれるアプリケーションは、シーケンスマネージャ100にダウンロードされなくてもよい。その場合、シーケンスマネージャ100のデータベースに、アプリケーション配信プラットフォームに含まれるアプリケーションが紐づけていることを示す情報が記録されてもよい。アプリケーションの詳細については後述する。 Sequence manager 100 manages multiple applications. A plurality of applications are downloaded from the application distribution platform to the sequence manager 100, for example, by user operation. Alternatively, the applications included in the application distribution platform may not be downloaded to sequence manager 100. In that case, information indicating that the application included in the application distribution platform is linked may be recorded in the database of the sequence manager 100. Details of the application will be described later.

デバイスマネージャ200は、複数の施設2a~2d及び各施設2a~2dで利用されるデバイス300及びUI400を管理するためのデータベースを有する。デバイスマネージャ200は、データベースに、施設2a~2dに紐づくデバイス情報及びUI情報を記録することにより、デバイス300及びUI400を管理する。デバイス情報及びUI情報は、例えば、制御機能及び駆動機能、並びに稼働状況などを含む。例えば、デバイスマネージャ200は、デバイス300の稼働状況を管理して、デバイス300の稼働スケジュールを把握することができる。また、デバイスマネージャ200は、デバイス300のログ情報を管理してもよい。 The device manager 200 has a database for managing the plurality of facilities 2a to 2d and the devices 300 and UI 400 used in each of the facilities 2a to 2d. The device manager 200 manages the device 300 and the UI 400 by recording device information and UI information associated with the facilities 2a to 2d in a database. The device information and UI information include, for example, control functions, drive functions, operating status, and the like. For example, the device manager 200 can manage the operating status of the device 300 and understand the operating schedule of the device 300. Further, the device manager 200 may manage log information of the device 300.

なお、このようなデータベースは、デバイスマネージャ200の代わりにシーケンスマネージャ100が有してもよく、シーケンスマネージャ100及びデバイスマネージャ200の両方が有してもよい。 Note that such a database may be included in the sequence manager 100 instead of the device manager 200, or may be included in both the sequence manager 100 and the device manager 200.

デバイス300は、装置20の制御機能及び駆動機能を有する。デバイス300は、デバイスマネージャ200からの指示に従って装置20を駆動することができる。 Device 300 has the control and drive functions of apparatus 20. The device 300 can drive the apparatus 20 according to instructions from the device manager 200.

UI400は、ユーザに情報を提供し、ユーザから入力を受け付ける。 The UI 400 provides information to the user and receives input from the user.

次に、装置20の一例として洗濯機500の構成について、図4および図5を参照しながら説明する。図4は、洗濯機500の構成の一例を示す図である。図5は、洗濯機500の機能構成の一例を示すブロック図である。 Next, the configuration of a washing machine 500 as an example of the device 20 will be described with reference to FIGS. 4 and 5. FIG. 4 is a diagram showing an example of the configuration of washing machine 500. FIG. 5 is a block diagram showing an example of the functional configuration of washing machine 500.

洗濯機500は、内部空間を有する筐体501を備える。筐体501の前側には、開口が設けられ、筐体501の開口には開閉自在なドア505が設けられている。筐体501の開口には、ドア505のロックをするためのドアロック機構506が設けられている。 Washing machine 500 includes a housing 501 having an internal space. An opening is provided on the front side of the casing 501, and a door 505 that can be opened and closed is provided in the opening of the casing 501. A door lock mechanism 506 for locking the door 505 is provided at the opening of the housing 501.

筐体501の内部には、筐体501に弾性支持された水槽502が設けられている。水槽502は、洗濯機500が備える槽の一例である。水槽502の内部には、前側の一端に開口が形成され、かつ、後側の他端に底が形成されている有底円筒状の洗濯槽503(ドラムとも言う)が回転軸Ax1で回転自在に設けられている。水槽502の内面と洗濯槽503の外面との間には、隙間が形成されている。洗濯槽503の回転軸Ax1は、例えば、洗濯槽503の開口が底よりも上になるように傾斜している。 A water tank 502 that is elastically supported by the housing 501 is provided inside the housing 501 . Water tank 502 is an example of a tank included in washing machine 500. Inside the water tank 502, a bottomed cylindrical washing tank 503 (also referred to as a drum), which has an opening formed at one end on the front side and a bottom formed at the other end on the rear side, is rotatable about a rotation axis Ax1. It is set in. A gap is formed between the inner surface of the water tank 502 and the outer surface of the washing tub 503. For example, the rotation axis Ax1 of the washing tub 503 is inclined so that the opening of the washing tub 503 is above the bottom.

洗濯槽503は、洗濯槽503の側面を貫通する複数の孔が設けられている。水槽502の後面には、洗濯槽503を回転駆動する洗濯モータ504が設けられている。洗濯モータ504は、例えば、直流モータであり、インバータ制御によって回転速度を自在に制御することができる。 The washing tub 503 is provided with a plurality of holes penetrating the side surface of the washing tub 503. A washing motor 504 that rotates the washing tub 503 is provided on the rear surface of the water tub 502 . The washing motor 504 is, for example, a DC motor, and its rotational speed can be freely controlled by inverter control.

水槽502の上部には、振動センサ507が設けられている。振動センサ507は、水槽502の振動の度合いを検知する。 A vibration sensor 507 is provided at the top of the water tank 502. Vibration sensor 507 detects the degree of vibration of water tank 502.

水槽502の上部には、給水管512が接続されている。給水管512は、水道に接続される。給水管512には、水道からの水の流入を止める給水弁511が設けられている。給水弁511は、例えば、制御信号が入力されることにより電動で開閉する電磁弁である。給水管512には、洗濯槽503内に投入される液体洗剤及び/又は柔軟剤が収容されて自動投入機513が設けられている。自動投入機513は、アクチュエータを用いて制御信号に応じた量の液体洗剤及び/又は柔軟剤を計量し、計量した液体洗剤及び/又は柔軟剤を給水管512に投入する装置である。このため、水道からの水と自動投入機513により投入された所定量の液体洗剤及び/又は柔軟剤とは、給水管512において混ざり合って洗濯水となり、水槽502に流入する。なお、自動投入機513は、液体洗剤を投入するためのアクチュエータと、柔軟剤を投入するためのアクチュエータとの両方を有していてもよい。 A water supply pipe 512 is connected to the upper part of the water tank 502. Water supply pipe 512 is connected to the water supply. The water supply pipe 512 is provided with a water supply valve 511 that stops the inflow of water from the tap. The water supply valve 511 is, for example, a solenoid valve that opens and closes electrically when a control signal is input. The water supply pipe 512 is provided with an automatic dispenser 513 that accommodates liquid detergent and/or fabric softener to be dispensed into the washing tub 503 . The automatic dosing machine 513 is a device that uses an actuator to measure an amount of liquid detergent and/or softener according to a control signal, and injects the measured liquid detergent and/or softener into the water supply pipe 512. Therefore, water from the tap and a predetermined amount of liquid detergent and/or fabric softener dispensed by the automatic dispensing machine 513 mix in the water supply pipe 512 to become washing water, which flows into the water tank 502. Note that the automatic dispenser 513 may include both an actuator for dispensing liquid detergent and an actuator for dispensing softener.

また、洗濯機500には、水槽502の水位を検出する水位センサ(図示せず)が設けられている。水位センサは、水槽502に接続されている給水管512とは別の管に配置され、水槽502の内圧を検出する圧力センサであってもよい。つまり、水槽502の水位は、圧力センサの検出結果を用いて検出される。 The washing machine 500 is also provided with a water level sensor (not shown) that detects the water level of the water tank 502. The water level sensor may be a pressure sensor that is placed in a pipe different from the water supply pipe 512 connected to the water tank 502 and detects the internal pressure of the water tank 502. That is, the water level of the water tank 502 is detected using the detection result of the pressure sensor.

また、水槽502の上部には、風呂水配管517が接続されている。風呂水配管517には、家庭内の浴槽に貯められた水を導入するためのホースが接続される。風呂水配管517には、浴槽に貯められた水を汲み上げるバスポンプ516が接続されている。バスポンプ516を駆動することで、浴槽からホースを介して浴槽内の水を水槽502の内部に導入するバスポンプによる給水を行うことができる。 Further, a bath water pipe 517 is connected to the upper part of the water tank 502. A hose for introducing water stored in a domestic bathtub is connected to the bath water pipe 517. A bath pump 516 that pumps up water stored in the bathtub is connected to the bath water pipe 517. By driving the bath pump 516, water can be supplied by the bath pump that introduces water from the bathtub into the water tank 502 via a hose.

また、水槽502の上部には、風呂水配管517が接続されている。風呂水配管517には、家庭内の浴槽に貯められた水を導入するためのホースが接続される。風呂水配管517には、浴槽に貯められた水を汲み上げるバスポンプ516が接続されている。バスポンプ516を駆動することで、浴槽からホースを介して浴槽内の水を水槽502の内部に導入する注水動作を行うことができる。 Further, a bath water pipe 517 is connected to the upper part of the water tank 502. A hose for introducing water stored in a domestic bathtub is connected to the bath water pipe 517. A bath pump 516 that pumps up water stored in the bathtub is connected to the bath water pipe 517. By driving the bath pump 516, a water filling operation can be performed to introduce water from the bathtub into the water tank 502 via the hose.

水槽502の下部には、排水管521が接続されている。排水管521は、洗濯機500の外部に洗濯水を排出する排水ホースに接続されている。排水管521には、排水管521を流れる水の中の異物を取り除くための排水フィルタ522と、排水管521から排水ホースへの水が流れることを止める排水弁523とが設けられている。排水弁523は、例えば、制御信号が入力されることにより電動で開閉する電磁弁である。 A drain pipe 521 is connected to the lower part of the water tank 502. Drain pipe 521 is connected to a drain hose that discharges washing water to the outside of washing machine 500. The drain pipe 521 is provided with a drain filter 522 for removing foreign matter from the water flowing through the drain pipe 521, and a drain valve 523 that stops water from flowing from the drain pipe 521 to the drain hose. The drain valve 523 is, for example, a solenoid valve that opens and closes electrically when a control signal is input.

また、排水管521には、循環用配管525が接続されている。循環用配管525は、一端が排水管521に接続され、他端が水槽502の前側下部に接続されている。排水管521を流れ排水フィルタ522を通過した水を水槽502に戻すための配管である。循環用配管525には、水槽502内の水を循環させる循環ポンプ524が接続されている。循環ポンプ524が駆動すると、排水管521を流れたあと循環用配管525に流入した洗濯水は、循環ポンプ524によって水槽502内に戻される。 Furthermore, a circulation pipe 525 is connected to the drain pipe 521 . One end of the circulation pipe 525 is connected to the drain pipe 521, and the other end is connected to the lower front side of the water tank 502. This is a pipe for returning water that has flowed through the drain pipe 521 and passed through the drain filter 522 to the water tank 502. A circulation pump 524 that circulates water in the water tank 502 is connected to the circulation piping 525 . When the circulation pump 524 is driven, the washing water that has flowed through the drain pipe 521 and then into the circulation pipe 525 is returned to the water tank 502 by the circulation pump 524 .

また、水槽502の前側の上部にはダクト533の一端が接続されており、水槽502の後側の上部にはダクト533の他端が接続されている。ダクト533には、ダクト533内の空気を冷却した後に加熱するヒートポンプ532と、ダクト533の空気を循環させる循環ファン534とが設けられている。ヒートポンプ532は、図示しない冷媒回路により構成され、冷媒回路は、コンプレッサ、凝縮器、膨張弁および蒸発器を有する。冷媒回路内では、コンプレッサが駆動することにより冷媒が循環する。ヒートポンプ532では、ダクト533内の空気は、蒸発器で冷却された後に凝縮器で加熱される。蒸発器で冷却されることで、ダクト533内の空気中の水分が取り除かれ、その後、凝縮器で加熱されることでダクト533内の空気は、温められ乾燥した高温の空気となる。温められ乾燥した高温の空気は、循環ファン534により、水槽502の内部に送風される。これにより、水槽502の内部の衣類などの洗濯物の乾燥が促進される。 Further, one end of a duct 533 is connected to the front upper part of the water tank 502, and the other end of the duct 533 is connected to the rear upper part of the water tank 502. The duct 533 is provided with a heat pump 532 that cools and then heats the air in the duct 533, and a circulation fan 534 that circulates the air in the duct 533. The heat pump 532 is configured by a refrigerant circuit (not shown), and the refrigerant circuit includes a compressor, a condenser, an expansion valve, and an evaporator. Within the refrigerant circuit, refrigerant is circulated by driving the compressor. In the heat pump 532, the air in the duct 533 is cooled by an evaporator and then heated by a condenser. Moisture in the air in the duct 533 is removed by being cooled by the evaporator, and then, by being heated by the condenser, the air in the duct 533 is warmed and becomes dry, high-temperature air. The warmed, dry, high-temperature air is blown into the water tank 502 by the circulation fan 534. This facilitates drying of laundry such as clothes inside the water tank 502.

ダクト533の上流側には、吸気センサ531が設けられる。吸気センサ531は、ダクト533の上流側を流れる空気の温度を検知するセンサである。 An intake sensor 531 is provided on the upstream side of the duct 533. The intake sensor 531 is a sensor that detects the temperature of air flowing upstream of the duct 533.

ダクト533の下流側には、温風センサ535が設けられる。温風センサ535は、ダクト533内の空気の温度を検知する。 A warm air sensor 535 is provided downstream of the duct 533. Warm air sensor 535 detects the temperature of the air within duct 533.

ダクト533の下流側には、洗濯槽503内の洗濯物を除菌する除菌装置536が設けられる。除菌装置536は、帯電微粒子水などの効能物質を生成する。除菌装置536により生成された効能物質が含まれる空気は、循環ファン534により洗濯槽503の内部に吹き出されるため、洗濯槽503の内部の洗濯物は、効能物質により除菌される。 A sterilizing device 536 that sterilizes the laundry in the washing tub 503 is provided downstream of the duct 533. The sterilization device 536 generates an effective substance such as charged particulate water. The air containing the effective substance generated by the sterilization device 536 is blown into the washing tub 503 by the circulation fan 534, so that the laundry inside the washing tub 503 is sterilized by the effective substance.

また、水槽502の内部には、水槽502の内部に泡が発生したことを検知する第1泡センサ541および第2泡センサ542が設けられている。第1泡センサ541は、水槽502の内部に第1の量よりも多い泡が発生したことを検知する。第2泡センサ542は、水槽502の内部に第2の量よりも多い泡が発生したことを検知する。第1の量は、第2の量よりも多い。つまり、第1泡センサ541は、第2泡センサ542よりも多くの泡が発生したことを検知する。 Furthermore, inside the water tank 502, a first bubble sensor 541 and a second bubble sensor 542 are provided that detect the generation of bubbles inside the water tank 502. The first bubble sensor 541 detects that more bubbles than the first amount have been generated inside the water tank 502. The second bubble sensor 542 detects that more bubbles than the second amount have been generated inside the water tank 502. The first amount is greater than the second amount. That is, the first bubble sensor 541 detects that more bubbles are generated than the second bubble sensor 542.

また、水槽502の下部には、水槽502の洗濯水を加熱するための温水ヒータ543は設けられている。また、水槽502の下部には、水槽502内の洗濯水の温度が所定温度よりも高い温度であることを検知する温水センサ544が設けられている。 Further, a hot water heater 543 for heating the washing water in the water tank 502 is provided at the lower part of the water tank 502. Furthermore, a hot water sensor 544 is provided at the bottom of the water tank 502 to detect that the temperature of the washing water in the water tank 502 is higher than a predetermined temperature.

筐体501の前側上部には、ユーザから洗濯機500の操作のための入力を受け付ける操作パネル560が設けられている。操作パネル560は、ユーザからの入力を受け付けた結果に応じた表示を行ってもよいし、当該結果に応じた音を出力してもよい。また、操作パネル560は、制御装置550による演算結果を表示してもよいし、当該演算結果を示す音を出力してもよい。また、操作パネル560は、洗濯機500の動作状態を表示してもよいし、当該動作状態を示す音を出力してもよい。通信部570は、外部機器と通信可能であり、例えば、コンピュータネットワークに通信可能に接続される通信インタフェースである。通信部570は、無線LAN(Local Area Network)インタフェースであってもよいし、有線LAN(Local Area Network)インタフェースであってもよいし、携帯電話通信網に接続するためのインタフェースであってもよい。また、通信部570は、クラウドサーバ10に通信可能に接続されているハブ機器(図示せず)と通信可能に接続されていてもよい。つまり、通信部570は、ハブ機器を経由してクラウドサーバ10と通信可能に接続されていてもよい。通信部570は、ハブ機器との間で、赤外線・近距離無線通信などによって通信を行ってもよいし、上記で例示した通信インタフェースで通信を行ってもよい。 An operation panel 560 is provided at the front upper part of the housing 501 to receive input from the user for operating the washing machine 500. The operation panel 560 may perform a display according to the result of receiving input from the user, or may output a sound according to the result. Further, the operation panel 560 may display the calculation result by the control device 550, or may output a sound indicating the calculation result. Further, operation panel 560 may display the operating state of washing machine 500, or may output a sound indicating the operating state. The communication unit 570 is capable of communicating with external devices, and is, for example, a communication interface communicably connected to a computer network. The communication unit 570 may be a wireless LAN (Local Area Network) interface, a wired LAN (Local Area Network) interface, or an interface for connecting to a mobile phone communication network. . Further, the communication unit 570 may be communicably connected to a hub device (not shown) that is communicably connected to the cloud server 10. That is, the communication unit 570 may be communicably connected to the cloud server 10 via a hub device. The communication unit 570 may communicate with the hub device using infrared rays, short-range wireless communication, or the like, or may communicate using the communication interface exemplified above.

筐体501には、制御装置550が設けられている。制御装置550は、振動センサ507、水位センサ515、吸気センサ531、温風センサ535、第1泡センサ541、第2泡センサ542、及び、温水センサ544の各種センサからの検知結果を取得する。制御装置550は、検知結果に応じて、洗濯モータ504、ドアロック機構506、給水弁511、自動投入機513、バスポンプ516、排水弁523、循環ポンプ524、ヒートポンプ532、循環ファン534、除菌装置536、温水ヒータ543、及び、操作パネル560の動作を制御する。なお、洗濯モータ504、ドアロック機構506、給水弁511、自動投入機513、バスポンプ516、排水弁523、循環ポンプ524、ヒートポンプ532、循環ファン534、除菌装置536、及び、温水ヒータ543は、洗濯物に対して洗濯に関する運転を行う洗濯機能部の一例であり、また、アクチュエータ22又は加熱器23の一例である。 A control device 550 is provided in the housing 501. The control device 550 acquires detection results from various sensors such as a vibration sensor 507, a water level sensor 515, an intake sensor 531, a warm air sensor 535, a first foam sensor 541, a second foam sensor 542, and a hot water sensor 544. The control device 550 controls the washing motor 504, door lock mechanism 506, water supply valve 511, automatic dispenser 513, bath pump 516, drain valve 523, circulation pump 524, heat pump 532, circulation fan 534, and sterilization according to the detection result. The operations of the device 536, hot water heater 543, and operation panel 560 are controlled. Note that the washing motor 504, door lock mechanism 506, water supply valve 511, automatic dispenser 513, bath pump 516, drain valve 523, circulation pump 524, heat pump 532, circulation fan 534, sterilization device 536, and hot water heater 543 are , is an example of a washing function unit that performs washing-related operations on laundry, and is also an example of the actuator 22 or the heater 23.

ここで、アプリケーションについて説明する。本実施の形態では、アプリケーション(以下、略してアプリということもある)とは、アクチュエータ22及び/又は加熱器23を駆動する複数の機能ブロック(以下、略してブロック)で規定される制御プログラムを意味する。複数のブロックの各々は、アクチュエータ22又は加熱器23を駆動するためのパラメータを含むことができる。具体的には、複数のブロックの各々は、アクチュエータ22又は加熱器23の制御を抽象化したものである。なお、複数のブロックの各々は、制御情報の一例である。 Here, the application will be explained. In the present embodiment, an application (hereinafter also referred to as an application for short) is a control program defined by a plurality of functional blocks (hereinafter referred to as blocks for short) that drive the actuator 22 and/or heater 23. means. Each of the plurality of blocks can include parameters for driving the actuator 22 or heater 23. Specifically, each of the plurality of blocks abstracts control of the actuator 22 or the heater 23. Note that each of the plurality of blocks is an example of control information.

なお、アプリケーションは、アクチュエータ22及び/又は加熱器23を駆動する複数のブロックに加えて、アクチュエータ22及び/又は加熱器23を駆動しないブロックを含んでもよい。アクチュエータ22及び/又は加熱器23を駆動しないブロックの一例は、デバイス300の有するインタフェースを用いた情報表示、デバイス300の有するブザーを用いた音声出力、デバイス300の有するランプの点灯または消灯などを含む。また、ブロックは、アクチュエータ22又は加熱器23の駆動を開始する条件を含んでもよい。例えば、第1ブロック、第2ブロックを含むアプリケーションを例に説明する。ここで、第1ブロックの実行中に、第2ブロックに切り替える際に、第2ブロックに含まれる開始条件を満たしたときに、第1ブロックから第2ブロックに切り替える。また、ブロックは、開始条件ではなく、終了条件を含んでいてもよい。第1ブロックの実行中に、第2ブロックに切り替える際に、第1ブロックに含まれる終了条件を満たしたときに、第1ブロックから第2ブロックに切り替える。 Note that, in addition to a plurality of blocks that drive the actuator 22 and/or the heater 23, the application may include a block that does not drive the actuator 22 and/or the heater 23. Examples of blocks that do not drive the actuator 22 and/or the heater 23 include information display using an interface included in the device 300, audio output using a buzzer included in the device 300, turning on or off a lamp included in the device 300, etc. . Further, the block may include a condition for starting driving the actuator 22 or the heater 23. For example, an application including a first block and a second block will be explained. Here, when switching to the second block during execution of the first block, the first block is switched to the second block when a start condition included in the second block is satisfied. Furthermore, a block may include an end condition instead of a start condition. During execution of the first block, when switching to the second block, the first block is switched to the second block when a termination condition included in the first block is satisfied.

次に、洗濯機500のアプリケーションを規定するブロックの具体例について図6A~図6Oを用いて説明する。図6A~図6Oで示されるブロックのそれぞれは、洗濯機能部による運転を制御するパラメータに関する制御情報である。制御情報は、洗濯機500によって実行可能な、洗濯に関する運転を制御するための情報であればよい。洗濯機能部による運転は、洗濯物に対する洗濯に関する運転であり、例えば、洗濯量検知動作、給水動作、注水濯ぎ動作、洗剤投入動作、柔軟剤投入動作、撹拌動作、ドラム回転動作、脱水動作、排水動作、ドアロック動作、浸漬動作、除菌・抗菌動作、ブザー動作、送風動作、及び、乾燥動作の少なくとも1つを含む。 Next, specific examples of blocks that define applications of washing machine 500 will be described using FIGS. 6A to 6O. Each of the blocks shown in FIGS. 6A to 6O is control information regarding parameters that control the operation of the washing function section. The control information may be information for controlling washing-related operations that can be executed by washing machine 500. The operations performed by the washing function section are operations related to washing the laundry, such as laundry amount detection operation, water supply operation, water pouring rinsing operation, detergent injection operation, softener injection operation, stirring operation, drum rotation operation, spin-drying operation, and drainage operation. operation, door lock operation, dipping operation, sterilization/antibacterial operation, buzzer operation, blowing operation, and drying operation.

図6Aは、実施の形態1におけるアプリケーションを規定するブロックの第1の例を示す。図6Aに示すブロック1000は、洗濯槽503に投入された衣類などの洗濯物の量を検知する洗濯量検知動作を制御するブロックである。洗濯量検知動作では、例えば、洗濯モータ504を駆動させることで洗濯モータ504に流れるトルク電流を検出することで、検出したトルク電流に予め対応付けられた洗濯量を制御装置550のメモリを参照することで特定し、特定した洗濯量を洗濯槽503内の洗濯量として検知する。 FIG. 6A shows a first example of blocks defining an application in the first embodiment. A block 1000 shown in FIG. 6A is a block that controls a laundry amount detection operation that detects the amount of laundry such as clothes put into the washing tub 503. In the washing amount detection operation, for example, by driving the washing motor 504 and detecting the torque current flowing through the washing motor 504, the memory of the control device 550 is referred to for the washing amount that is previously associated with the detected torque current. The specified amount of laundry is detected as the amount of laundry in the washing tub 503.

図6Bは、実施の形態1におけるアプリケーションを規定するブロックの第2の例を示す。図6Bに示すブロック1010は、水槽502への給水動作を制御するブロックであり、パラメータ1011、1012を含む。パラメータ1011は、水槽502内への給水量を給水後の水位で示す値を含む。パラメータ1011は、アクチュエータ22及び/又は加熱器23の動作タイミングを示すとも言い換えることができる。制御装置550は、例えば、水位センサ515により検知された水槽502の水位がパラメータ1011で示される水位になるまで給水を継続しておき、パラメータ1011で示される水位になったときに給水を停止する制御を行う。パラメータ1012は、給水経路を指定するパラメータを含む。パラメータ1012は、具体的には、給水弁511を開にすることで給水管512から給水する第1の給水経路での給水か、バスポンプ516を駆動することで風呂水配管517から給水する第2の給水経路での給水かを指定するパラメータである。第1の給水経路での給水の場合、制御装置550は、給水弁511を開にすることで給水を開始し、給水弁511を閉にすることで給水を停止する。第2の給水経路での給水の場合、制御装置550は、バスポンプ516の駆動を開始することで給水を開始し、バスポンプ516の駆動を停止することで給水を停止する。 FIG. 6B shows a second example of blocks defining an application in the first embodiment. A block 1010 shown in FIG. 6B is a block that controls the water supply operation to the water tank 502, and includes parameters 1011 and 1012. The parameter 1011 includes a value indicating the amount of water supplied into the water tank 502 in terms of the water level after water supply. The parameter 1011 can also be said to indicate the operation timing of the actuator 22 and/or the heater 23. For example, the control device 550 continues supplying water until the water level of the water tank 502 detected by the water level sensor 515 reaches the water level indicated by the parameter 1011, and stops the water supply when the water level reaches the water level indicated by the parameter 1011. Take control. Parameter 1012 includes a parameter specifying a water supply route. Specifically, the parameter 1012 is configured to either supply water through the first water supply route, which supplies water from the water supply pipe 512 by opening the water supply valve 511, or supply water from the bath water pipe 517, by driving the bath pump 516. This is a parameter that specifies whether water is supplied through the water supply route 2. In the case of water supply through the first water supply route, the control device 550 starts water supply by opening the water supply valve 511, and stops water supply by closing the water supply valve 511. In the case of water supply through the second water supply route, the control device 550 starts the water supply by starting the drive of the bath pump 516, and stops the water supply by stopping the drive of the bath pump 516.

なお、給水動作において第2の給水経路で給水が行われる場合において、所定期間(例えば、5~10分間)経過してもパラメータ1011で示される水位にならなかった場合、制御装置550は、第2の給水経路から第1の給水経路に切り替えて給水を行ってもよい。 Note that when water is supplied through the second water supply route in the water supply operation, if the water level does not reach the level indicated by the parameter 1011 even after a predetermined period of time (for example, 5 to 10 minutes) has passed, the control device 550 Water may be supplied by switching from the second water supply route to the first water supply route.

図6Cは、実施の形態1におけるアプリケーションを規定するブロックの第3の例を示す。図6Cに示すブロック1020は、水槽502への注水濯ぎ動作を制御するブロックであり、パラメータ1021~1025を含む。注水濯ぎ動作は、水槽502へ水を供給しながら洗濯槽503を回転させて洗濯物および水を撹拌することで洗濯物を濯ぐ動作である。注水濯ぎ動作では、例えば、上限水位から下限水位までの間で、給水または排水を繰り返すことで水槽502ないの水位を上下させながら、洗濯槽503を回転させて洗濯物を濯ぐ動作である。パラメータ1021は、注水濯ぎ動作において水槽502へ給水するときの水位の上限を示す値を含む。パラメータ1021は、給水を停止し、かつ、排水弁523を開にする動作のトリガとなる水位を示すとも言い換えることができる。パラメータ1022は、水槽502へ給水するときの水位の下限を示す値を含む。パラメータ1022は、給水を開始し、かつ、排水弁523を閉にする動作のトリガとなる水位を示すとも言い換えることができる。このように、パラメータ1021、1022は、アクチュエータ22及び/又は加熱器23の動作タイミングを示すとも言い換えることができる。パラメータ1023は、注水濯ぎ動作の動作時間を示す値を含む。パラメータ1023は、アクチュエータ22及び/又は加熱器23の駆動時間を示すとも言い換えることができる。パラメータ1024は、洗濯槽503の回転数(回転速度)、つまり、洗濯モータ504の回転速度を示す値を含む。パラメータ1025は、撹拌強さを示す値を含む。撹拌強さを示す値は、例えば、濯ぎ動作における1回の洗濯槽503の回転が開始されてからパラメータ1024で示される回転速度に到達させるまでの時間を示す値である。パラメータ1024、1025は、アクチュエータ22及び/又は加熱器23の駆動の強度を示すとも言い換えることができる。 FIG. 6C shows a third example of blocks defining an application in the first embodiment. A block 1020 shown in FIG. 6C is a block that controls the rinsing operation of pouring water into the water tank 502, and includes parameters 1021 to 1025. The water pouring rinsing operation is an operation of rinsing the laundry by rotating the washing tub 503 while supplying water to the water tub 502 and stirring the laundry and water. In the water pouring rinsing operation, for example, the laundry is rinsed by rotating the washing tub 503 while raising and lowering the water level in the water tub 502 by repeatedly supplying or draining water between the upper limit water level and the lower limit water level. The parameter 1021 includes a value indicating the upper limit of the water level when water is supplied to the water tank 502 in the water pouring rinsing operation. The parameter 1021 can also be said to indicate the water level that triggers the operation of stopping the water supply and opening the drain valve 523. Parameter 1022 includes a value indicating the lower limit of the water level when water is supplied to water tank 502. In other words, the parameter 1022 indicates the water level that triggers the operation to start water supply and close the drain valve 523. In this way, the parameters 1021 and 1022 can be said to indicate the operation timing of the actuator 22 and/or the heater 23. Parameter 1023 includes a value indicating the operating time of the water injection rinsing operation. The parameter 1023 can also be said to indicate the driving time of the actuator 22 and/or the heater 23. Parameter 1024 includes a value indicating the number of rotations (rotational speed) of washing tub 503, that is, the rotational speed of washing motor 504. Parameter 1025 includes a value indicating the stirring strength. The value indicating the stirring strength is, for example, a value indicating the time from the start of one rotation of the washing tub 503 in the rinsing operation until the rotation speed indicated by the parameter 1024 is reached. The parameters 1024 and 1025 can also be said to indicate the driving strength of the actuator 22 and/or the heater 23.

図6Dは、実施の形態1におけるアプリケーションを規定するブロックの第4の例を示す。図6Dに示すブロック1030は、洗剤投入動作を制御するブロックであり、パラメータ1031を含む。洗剤投入動作は、自動投入機513のアクチュエータを駆動することで給水管512に所定量の液体洗剤を自動的に投入する動作である。パラメータ1031は、給水管512への液体洗剤の投入量を示す値を含む。パラメータ1031は、自動投入機513の液体洗剤を投入するアクチュエータの動作量を示すとも言い換えることができる。 FIG. 6D shows a fourth example of blocks defining an application in the first embodiment. Block 1030 shown in FIG. 6D is a block that controls the detergent injection operation and includes parameters 1031. The detergent injection operation is an operation in which a predetermined amount of liquid detergent is automatically poured into the water supply pipe 512 by driving the actuator of the automatic injection machine 513. Parameter 1031 includes a value indicating the amount of liquid detergent introduced into water supply pipe 512. The parameter 1031 can also be said to indicate the amount of operation of the actuator of the automatic dispenser 513 for dispensing liquid detergent.

図6Eは、実施の形態1におけるアプリケーションを規定するブロックの第5の例を示す。図6Eに示すブロック1040は、柔軟剤投入動作を制御するブロックであり、パラメータ1041を含む。柔軟剤投入動作は、自動投入機513のアクチュエータを駆動することで給水管512に所定量の柔軟剤を自動的に投入する動作である。パラメータ1041は、給水管512への柔軟剤の投入量を示す値を含む。パラメータ1041は、自動投入機513の柔軟剤を投入するアクチュエータの動作量を示すとも言い換えることができる。 FIG. 6E shows a fifth example of blocks defining an application in the first embodiment. Block 1040 shown in FIG. 6E is a block that controls the softener injection operation and includes parameters 1041. The softener injection operation is an operation in which a predetermined amount of softener is automatically poured into the water supply pipe 512 by driving the actuator of the automatic injection machine 513. Parameter 1041 includes a value indicating the amount of softener added to water supply pipe 512. The parameter 1041 can also be said to indicate the amount of operation of the actuator of the automatic dispenser 513 that dispenses the softener.

図6Fは、実施の形態1におけるアプリケーションを規定するブロックの第6の例を示す。図6Fに示すブロック1050は、洗濯機の撹拌動作を制御するブロックであり、パラメータ1051~1058を含む。パラメータ1051は、撹拌の種類を示す情報(例えば、通常、もみ洗い、揺り)を含む。パラメータ1051は、機能の種類を示すとも言い換えることができる。パラメータ1052は、ドラム(洗濯槽503)の回転数(回転速度)、つまり、洗濯モータ504の回転速度を示す値を含む。パラメータ1052は、アクチュエータ22及び/又は加熱器23の駆動の強度を示すとも言い換えることができる。パラメータ1053は、撹拌動作における1回の洗濯槽503の回転時間、つまり、洗濯モータ504の駆動時間を示す値を含む。パラメータ1054は、撹拌動作における洗濯槽503の1回の回転動作と次の回転動作の間の回転を停止している時間、つまり、洗濯モータ504の停止時間を示す値を含む。パラメータ1055は、撹拌動作の動作時間を示す値を含む。パラメータ1053~1055は、アクチュエータ22及び/又は加熱器23の駆動時間を示すとも言い換えることができる。パラメータ1056は、水槽502内への給水を開始することを示す値を含む。つまり、パラメータ1056は、給水弁511を開状態にすることを示す値を含む。パラメータ1056は、アクチュエータ22及び/又は加熱器23の駆動後の状態を示すとも言い換えることができる。パラメータ1057は、循環ポンプの回転方向(正転又は反転)を示す値を含む。パラメータ1058は、撹拌強さを示す値を含む。撹拌強さを示す値は、例えば、濯ぎ動作における1回の洗濯槽503の回転が開始されてからパラメータ1052で示される回転速度に到達させるまでの時間を示す値である。なお、ブロック1050は、水槽502内の水温が所定の温度に上昇するまで温水ヒータ543を駆動するパラメータを含んでいてもよい。 FIG. 6F shows a sixth example of blocks defining an application in the first embodiment. Block 1050 shown in FIG. 6F is a block that controls the stirring operation of the washing machine, and includes parameters 1051 to 1058. The parameter 1051 includes information indicating the type of stirring (for example, normal, massaging, shaking). The parameter 1051 can also be said to indicate the type of function. The parameter 1052 includes a value indicating the number of rotations (rotational speed) of the drum (washing tub 503), that is, the rotational speed of the washing motor 504. The parameter 1052 can also be said to indicate the driving strength of the actuator 22 and/or the heater 23. The parameter 1053 includes a value indicating the rotation time of the washing tub 503 once during the stirring operation, that is, the drive time of the washing motor 504. The parameter 1054 includes a value indicating the time during which the rotation of the washing tub 503 is stopped between one rotation operation and the next rotation operation in the stirring operation, that is, the time during which the washing motor 504 is stopped. Parameter 1055 includes a value indicating the operation time of the stirring operation. The parameters 1053 to 1055 can also be said to indicate the driving time of the actuator 22 and/or the heater 23. Parameter 1056 includes a value indicating that water supply into water tank 502 is to be started. That is, the parameter 1056 includes a value indicating that the water supply valve 511 is to be opened. The parameter 1056 can also be said to indicate the state of the actuator 22 and/or the heater 23 after being driven. Parameter 1057 includes a value indicating the rotation direction (normal rotation or reverse rotation) of the circulation pump. Parameter 1058 includes a value indicating the stirring strength. The value indicating the stirring strength is, for example, a value indicating the time from the start of one rotation of the washing tub 503 in the rinsing operation until the rotation speed indicated by the parameter 1052 is reached. Note that block 1050 may include a parameter for driving hot water heater 543 until the water temperature in water tank 502 rises to a predetermined temperature.

制御装置550は、撹拌動作において、パラメータ1051で示される種類の撹拌を行う。制御装置550は、パラメータ1052で示される回転数で洗濯モータ504をパラメータ1056で示される撹拌強さで回転させ、撹拌動作の開始からパラメータ1055で示される動作時間が経過すると洗濯モータ504を停止する。また、制御装置550は、撹拌動作において、パラメータ1056に基づいて給水弁511を開にする。また、制御装置550は、撹拌動作において、パラメータ1057で示される回転方向に循環ポンプ524を動作させる。 In the stirring operation, the control device 550 performs the type of stirring indicated by the parameter 1051. The control device 550 rotates the washing motor 504 at a rotation speed indicated by a parameter 1052 and an agitation strength indicated by a parameter 1056, and stops the washing motor 504 when the operating time indicated by a parameter 1055 has elapsed from the start of the stirring operation. . Furthermore, the control device 550 opens the water supply valve 511 based on the parameter 1056 during the stirring operation. Furthermore, the control device 550 operates the circulation pump 524 in the rotational direction indicated by the parameter 1057 in the stirring operation.

図6Gは、実施の形態1におけるアプリケーションを規定するブロックの第7の例を示す。図6Gに示すブロック1060は、ドラム回転動作を制御するブロックであり、パラメータ1061~1064を含む。パラメータ1061は、ドラム(洗濯槽503)の回転数(回転速度)、つまり、洗濯モータ504の回転速度を示す値を含む。パラメータ1061は、アクチュエータ22及び/又は加熱器23の駆動の強度を示すとも言い換えることができる。パラメータ1062は、ドラム(洗濯槽503)の回転方向を示す値を含む。パラメータ1062は、アクチュエータ22及び/又は加熱器23の動作の種類を示すとも言い換えることができる。パラメータ1063は、水槽502内への給水を開始することを示す値を含む。つまり、パラメータ1063は、給水弁511を開状態にすることを示す値を含む。パラメータ1063は、アクチュエータ22及び/又は加熱器23の駆動後の状態を示すとも言い換えることができる。パラメータ1064は、循環ポンプ524の回転方向(正転又は反転)を示す値を含む。なお、ブロック1060は、水槽502内の水温が所定の温度に上昇するまで温水ヒータ543を駆動するパラメータを含んでいてもよい。 FIG. 6G shows a seventh example of blocks defining an application in the first embodiment. Block 1060 shown in FIG. 6G is a block that controls the drum rotation operation and includes parameters 1061 to 1064. Parameter 1061 includes a value indicating the number of rotations (rotational speed) of the drum (washing tub 503), that is, the rotational speed of washing motor 504. The parameter 1061 can also be said to indicate the driving strength of the actuator 22 and/or the heater 23. Parameter 1062 includes a value indicating the rotation direction of the drum (washing tub 503). The parameter 1062 can also be said to indicate the type of operation of the actuator 22 and/or the heater 23. Parameter 1063 includes a value indicating that water supply into water tank 502 is to be started. That is, the parameter 1063 includes a value indicating that the water supply valve 511 is to be opened. The parameter 1063 can also be said to indicate the state of the actuator 22 and/or the heater 23 after being driven. Parameter 1064 includes a value indicating the rotation direction (normal rotation or reverse rotation) of circulation pump 524. Note that block 1060 may include a parameter for driving hot water heater 543 until the water temperature in water tank 502 rises to a predetermined temperature.

制御装置550は、ドラム回転動作において、パラメータ1061で示される回転数で洗濯モータ504をパラメータ1062で示される回転方向で回転させる。また、制御装置550は、ドラム回転動作において、パラメータ1063に基づいて給水弁511を開にする。また、制御装置550は、ドラム回転動作において、パラメータ1064に基づく方向に循環ポンプ524を動作させる。 In the drum rotation operation, control device 550 rotates washing motor 504 at a rotation speed indicated by parameter 1061 and in a rotation direction indicated by parameter 1062. Furthermore, the control device 550 opens the water supply valve 511 based on the parameter 1063 during the drum rotation operation. Furthermore, the control device 550 operates the circulation pump 524 in a direction based on the parameter 1064 in the drum rotation operation.

図6Hは、実施の形態1におけるアプリケーションを規定するブロックの第8の例を示す。図6Hに示すブロック1070は、脱水動作を制御するブロックであり、パラメータ1071、1072を含む。パラメータ1071は、ドラム(洗濯槽503)の回転数(回転速度)、つまり、洗濯モータ504の回転速度を示す値を含む。パラメータ1071は、アクチュエータ22及び/又は加熱器23の駆動の強度を示すとも言い換えることができる。パラメータ1072は、脱水動作の動作時間を示す値を含む。制御装置550は、脱水動作において、パラメータ1071に示される回転数で洗濯モータ504を回転させ、脱水動作の開始からパラメータ1072で示される動作時間が経過すると洗濯モータ504を停止する。 FIG. 6H shows an eighth example of blocks defining an application in the first embodiment. Block 1070 shown in FIG. 6H is a block that controls the dehydration operation and includes parameters 1071 and 1072. The parameter 1071 includes a value indicating the number of rotations (rotational speed) of the drum (washing tub 503), that is, the rotational speed of the washing motor 504. The parameter 1071 can also be said to indicate the driving strength of the actuator 22 and/or the heater 23. Parameter 1072 includes a value indicating the operation time of the dehydration operation. During the spin-drying operation, the control device 550 rotates the washing motor 504 at the rotation speed indicated by the parameter 1071, and stops the washing motor 504 when the operating time indicated by the parameter 1072 has elapsed from the start of the spin-drying operation.

図6Iは、実施の形態1におけるアプリケーションを規定するブロックの第9の例を示す。図6Iに示すブロック1080は、水槽502からの排水動作を制御するブロックであり、パラメータ1081、1082を含む。パラメータ1081は、排水弁523の開状態又は閉状態を示す値を含む。パラメータ1082は、排水を停止するトリガとなる水位を示す値を含む。制御装置550は、排水動作において、排水弁523を開状態に動作させることで水槽502内の洗濯水を洗濯機500外への排水動作を開始する。制御装置550は、その後水位センサにより水槽502の水位がパラメータ1082で示される水位であることが検知されると排水弁523を閉状態に動作させて、排水動作を終了する。 FIG. 6I shows a ninth example of blocks defining an application in the first embodiment. A block 1080 shown in FIG. 6I is a block that controls the drainage operation from the water tank 502, and includes parameters 1081 and 1082. Parameter 1081 includes a value indicating the open state or closed state of drain valve 523. Parameter 1082 includes a value indicating the water level that triggers stopping drainage. In the draining operation, control device 550 opens drain valve 523 to start draining the washing water in water tank 502 to the outside of washing machine 500. After that, when the water level sensor detects that the water level in the water tank 502 is the water level indicated by the parameter 1082, the control device 550 closes the drain valve 523 and ends the draining operation.

図6Jは、実施の形態1におけるアプリケーションを規定するブロックの第10の例を示す。図6Jに示すブロック1090は、ドアロック動作を制御するブロックであり、パラメータ1091を含む。パラメータ1091は、ドアロック機構506をロック状態にするかロック解除状態にするかを示す値を含む。パラメータ1091は、アクチュエータ22及び/又は加熱器23の駆動後の状態を示すとも言い換えることができる。制御装置550は、パラメータ1091がドアロック機構506をロック状態にすることが示されている場合で、ドアロック機構506がロック解除状態である場合、ドアロック機構506をロック状態に切り替える。制御装置550は、パラメータ1091がドアロック機構506をロック解除状態にすることが示されている場合で、ドアロック機構506がロック状態である場合、ドアロック機構506をロック解除状態に切り替える。 FIG. 6J shows a tenth example of blocks defining an application in the first embodiment. Block 1090 shown in FIG. 6J is a block that controls the door lock operation and includes parameters 1091. The parameter 1091 includes a value indicating whether the door lock mechanism 506 is to be in a locked state or an unlocked state. The parameter 1091 can also be said to indicate the state of the actuator 22 and/or the heater 23 after being driven. If the parameter 1091 indicates that the door lock mechanism 506 is to be in the locked state and the door lock mechanism 506 is in the unlocked state, the control device 550 switches the door lock mechanism 506 to the locked state. If the parameter 1091 indicates that the door lock mechanism 506 is to be placed in the unlocked state and the door lock mechanism 506 is in the locked state, the control device 550 switches the door lock mechanism 506 to the unlocked state.

図6Kは、実施の形態1におけるアプリケーションを規定するブロックの第11の例を示す。図6Kに示すブロック1100は、浸漬動作を制御するブロックであり、パラメータ1101、1102を含む。パラメータ1101は、循環ポンプ524の回転方向(正転又は反転)を示す値を含む。パラメータ1102は、浸漬動作の動作時間を示す値を含む。制御装置550は、パラメータ1101で示される回転方向に循環ポンプ524を動作させ、浸漬動作の開始からパラメータ1102で示される動作時間が経過すると循環ポンプ524を停止する。 FIG. 6K shows an eleventh example of blocks defining an application in the first embodiment. Block 1100 shown in FIG. 6K is a block that controls the dipping operation and includes parameters 1101 and 1102. The parameter 1101 includes a value indicating the rotation direction (normal rotation or reverse rotation) of the circulation pump 524. Parameter 1102 includes a value indicating the operating time of the dipping operation. The control device 550 operates the circulation pump 524 in the rotational direction indicated by the parameter 1101, and stops the circulation pump 524 when the operating time indicated by the parameter 1102 has elapsed from the start of the dipping operation.

図6Lは、実施の形態1におけるアプリケーションを規定するブロックの第12の例を示す。図6Lに示すブロック1110は、除菌・抗菌動作を制御するブロックであり、パラメータ1111、1112を含む。パラメータ1111は、除菌装置536及び循環ファン534を駆動させる動作時間を示す値を含む。パラメータ1112は、循環ファン534の回転数(回転速度)を示す値を含む。制御装置550は、除菌・抗菌動作において、除菌装置536及び循環ファン534を駆動させ、パラメータ1111で示される動作時間が経過すると除菌装置536及び循環ファン534を停止する。除菌・抗菌動作において、制御装置550は、循環ファン534をパラメータ1112で示される回転数(回転速度)で駆動する。 FIG. 6L shows a twelfth example of blocks defining an application in the first embodiment. A block 1110 shown in FIG. 6L is a block that controls sterilization and antibacterial operations, and includes parameters 1111 and 1112. The parameter 1111 includes a value indicating the operating time for driving the sterilization device 536 and circulation fan 534. The parameter 1112 includes a value indicating the number of rotations (rotational speed) of the circulation fan 534. In the sterilization/antibacterial operation, the control device 550 drives the sterilization device 536 and the circulation fan 534, and stops the sterilization device 536 and the circulation fan 534 when the operating time indicated by the parameter 1111 has elapsed. In the sterilization/antibacterial operation, the control device 550 drives the circulation fan 534 at the number of rotations (rotational speed) indicated by the parameter 1112.

図6Mは、実施の形態1におけるアプリケーションを規定するブロックの第13の例を示す。図6Mに示すブロック1120は、ブザー動作を制御するブロックであり、パラメータ1121を含む。パラメータ1121は、操作パネル560のスピーカを駆動させる動作時間を示す値を含む。制御装置550は、ブザー動作において、ブザー音を出力し、ブザー音の出力を開始してからパラメータ1121で示される動作時間が経過するとブザー音の出力を停止する。 FIG. 6M shows a thirteenth example of blocks defining an application in the first embodiment. Block 1120 shown in FIG. 6M is a block that controls buzzer operation and includes parameters 1121. The parameter 1121 includes a value indicating the operating time for driving the speaker of the operation panel 560. In the buzzer operation, the control device 550 outputs a buzzer sound, and stops outputting the buzzer sound when the operation time indicated by the parameter 1121 has elapsed after starting the output of the buzzer sound.

図6Nは、実施の形態1におけるアプリケーションを規定するブロックの第14の例を示す。図6Nに示すブロック1130は、送風動作を制御するブロックであり、パラメータ1131、1132を含む。パラメータ1131は、循環ファン534を駆動させる動作時間を示す値を含む。パラメータ1132は、循環ファン534により水槽502内に送風される空気の温度を示す値を含む。制御装置550は、送風動作において、循環ファン534を駆動させ、循環ファン534の駆動を開始してからパラメータ1131で示される動作時間が経過すると循環ファン534を停止する。または、制御装置550は、送風動作において、循環ファン534を駆動させ、循環ファン534の駆動を開始してからパラメータ1132で示される温度以下に低下したことが温風センサ535で検知されると循環ファン534を停止する。 FIG. 6N shows a fourteenth example of blocks defining an application in the first embodiment. A block 1130 shown in FIG. 6N is a block that controls the air blowing operation, and includes parameters 1131 and 1132. The parameter 1131 includes a value indicating the operating time for driving the circulation fan 534. Parameter 1132 includes a value indicating the temperature of the air blown into water tank 502 by circulation fan 534. In the air blowing operation, the control device 550 drives the circulation fan 534, and stops the circulation fan 534 when the operation time indicated by the parameter 1131 has elapsed since the start of driving the circulation fan 534. Alternatively, in the air blowing operation, the control device 550 drives the circulation fan 534, and when the warm air sensor 535 detects that the temperature has decreased to below the temperature indicated by the parameter 1132 after starting the drive of the circulation fan 534, the control device 550 causes the circulation fan 534 to circulate. Fan 534 is stopped.

図6Oは、実施の形態1におけるアプリケーションを規定するブロックの第15の例を示す。図6Oに示すブロック1140は、乾燥動作を制御するブロックであり、パラメータ1141を含む。パラメータ1141は、低温、標準、しっかりなどの乾燥動作のパターン(動作モード)を示す値を含む。具体的には、低温のパターンでは、洗濯槽503内の温度が所定温度より低い低温での乾燥が行われる。標準のパターンでは、洗濯槽503内の温度が所定温度より高い標準の温度での乾燥が行われる。しっかりのパターンでは、洗濯槽503内が乾燥状態であることが検知された後から一定時間の乾燥が継続される。制御装置550は、吸気センサ531により検出された吸気側の温度と、温風センサ535により検出された排気側の温度との差が所定の差未満である場合に、乾燥状態であると判断する。なお、それぞれのパターンは、乾燥動作の時間[m]、循環ファン534のファン回転数[rpm]、吸気センサ531及び/又は温風センサ535による乾燥検知温度[deg]、パラメータ1051と同じ撹拌種類、パラメータ1052と同じドラム回転数[rpm]、パラメータ1053と同じドラムON時間[s]、パラメータ1054と同じドラムOFF時間[s]などの組み合わせにより構成されていてもよい。 FIG. 6O shows a fifteenth example of blocks defining an application in the first embodiment. Block 1140 shown in FIG. 6O is a block that controls the drying operation and includes parameters 1141. Parameters 1141 include values indicating drying operation patterns (operation modes) such as low temperature, standard, and firm. Specifically, in the low temperature pattern, drying is performed at a low temperature where the temperature inside the washing tub 503 is lower than a predetermined temperature. In the standard pattern, drying is performed at a standard temperature in which the temperature inside the washing tub 503 is higher than a predetermined temperature. In the steady pattern, drying continues for a certain period of time after it is detected that the inside of the washing tub 503 is in a dry state. The control device 550 determines that the dry state is present when the difference between the temperature on the intake side detected by the intake air sensor 531 and the temperature on the exhaust side detected by the warm air sensor 535 is less than a predetermined difference. . In addition, each pattern includes the drying operation time [m], the fan rotation speed [rpm] of the circulation fan 534, the drying detection temperature [deg] by the intake air sensor 531 and/or the hot air sensor 535, and the same stirring type as the parameter 1051. , the same drum rotation speed [rpm] as the parameter 1052, the same drum ON time [s] as the parameter 1053, the same drum OFF time [s] as the parameter 1054, etc.

アプリケーションを規定するためには、図6A~図6Nで示したようなブロックが複数用いられる。なお、図6A~図6Oに示す複数のブロックは例示であり、洗濯機500のためのブロックは、これらに限定されない。例えば、複数のブロックは、抽象化レベルによって階層化されてもよい。 To define an application, a plurality of blocks as shown in FIGS. 6A to 6N are used. Note that the plurality of blocks shown in FIGS. 6A to 6O are merely examples, and the blocks for washing machine 500 are not limited to these. For example, multiple blocks may be layered by abstraction level.

例えば、製造者向けの階層と製造者以外向けの階層とで抽象化レベルを変更してもよい。製造者以外の例は、他の製造者向けの階層、サードパーティ向けの階層である。
この時、製造者向けの階層は、製造者以外向けの階層より抽象度が低い。抽象度が低いことは、アクチュエータ及び加熱器を駆動するパラメータに近い内容が制御されることを意味する。
For example, the abstraction level may be changed between a hierarchy for manufacturers and a hierarchy for non-manufacturers. Non-manufacturer examples are hierarchies for other manufacturers, hierarchies for third parties.
At this time, the hierarchy for manufacturers has a lower level of abstraction than the hierarchy for non-manufacturers. A low level of abstraction means that the content close to the parameters that drive the actuators and heaters are controlled.

一方、製作者は、ノウハウ及び安全性を担保する最小の抽象化レベルを有するブロックを製造者以外向けに提供することで、製造者以外がアプリケーションを開発可能にする。製造者は、一般ユーザに、さらに高い抽象化レベルを有するブロックを提供することで、より多くの人がアプリケーションを開発可能にできる。さらに高い抽象化レベルは、例えば、一般ユーザ自身が専門的な知識がなくても理解できる用語で規定されたブロックに対応する。専門的な知識がなくても理解できる用語は、例えば、家庭用電化製品等の機能自体に対応する内容である。具体的には、洗濯機においての「洗い」ブロック中の水量に関するパラメータとして「たっぷり」を選択した場合に、一つの具体化されたレイヤーにおいては、給水ブロックにおける水位パラメータを60mmから100mmに上げ、撹拌ブロックにおける回転量パラメータを120rpmから100rpmに下げるなどの変更が行われる。上記より、抽象度の高いレベルにおけるブロックの並べ替え及びパラメータ変更は、より抽象度の低いブロックで実現することができる。これらのブロックにより、アクチュエータ及び加熱器の駆動に関する安全性、秘匿性を担保しながら、その組替、パラメータ調整によって自由にアプリケーション開発を行うことができる。 On the other hand, the manufacturer makes it possible for non-manufacturers to develop applications by providing blocks with a minimum level of abstraction that ensures know-how and safety to non-manufacturers. Manufacturers can enable more people to develop applications by providing blocks with higher levels of abstraction to general users. A higher level of abstraction corresponds, for example, to blocks defined in terms that can be understood by general users themselves without specialized knowledge. Terms that can be understood without specialized knowledge are, for example, those that correspond to the functions of household electrical appliances and the like. Specifically, when "plenty" is selected as the parameter regarding the amount of water in the "wash" block of a washing machine, in one materialized layer, the water level parameter in the water supply block is increased from 60 mm to 100 mm, Changes are made such as lowering the rotation amount parameter in the stirring block from 120 rpm to 100 rpm. From the above, rearranging blocks and changing parameters at a higher level of abstraction can be realized using blocks at a lower level of abstraction. These blocks allow application development to be carried out freely by rearranging and adjusting parameters while ensuring safety and confidentiality regarding the drive of the actuator and heater.

[1.3 処理]
次に、以上のように構成されたシステム1の処理について図7を参照しながら説明する。図7は、実施の形態1におけるシステム1のシーケンス図である。
[1.3 Processing]
Next, the processing of the system 1 configured as above will be explained with reference to FIG. 7. FIG. 7 is a sequence diagram of the system 1 in the first embodiment.

[1.3.1 準備フェーズF100]
まず、準備フェーズF100について説明する。
[1.3.1 Preparation phase F100]
First, the preparation phase F100 will be explained.

(ステップS110)
シーケンスマネージャ100は、デバイスマネージャ200にシーケンスマネージャ情報を送信する。このシーケンスマネージャ情報の送信は、例えばシステム管理者の命令により行われる。デバイスマネージャ200は、受信したシーケンスマネージャ情報を例えばシーケンスマネージャデータベースに登録する。なお、シーケンスマネージャ情報がシーケンスマネージャデータベースに予め登録されている場合は、このステップはスキップされてもよい。
(Step S110)
Sequence manager 100 sends sequence manager information to device manager 200. This sequence manager information is transmitted, for example, by a system administrator's command. The device manager 200 registers the received sequence manager information in, for example, a sequence manager database. Note that if the sequence manager information is registered in the sequence manager database in advance, this step may be skipped.

シーケンスマネージャ情報は、例えばシーケンスマネージャ100の識別子及び/又はアドレス(例えばURL(Uniform Resource Locator)、IP(Internet Protocol)アドレス等)を含む。さらに、シーケンスマネージャ情報は、任意の情報を含んでもよい。 The sequence manager information includes, for example, an identifier and/or address (eg, a URL (Uniform Resource Locator), an IP (Internet Protocol) address, etc.) of the sequence manager 100. Furthermore, sequence manager information may include any information.

(ステップS112)
デバイス300は、デバイスマネージャ200にデバイス情報1201を送信する。このデバイス情報1201の送信は、例えばデバイス300がコンピュータネットワークに接続されたときに行われる。デバイスマネージャ200は、受信したデバイス情報1201をデバイスデータベース1200に登録する。なお、デバイス情報1201がデバイスデータベース1200に予め登録されている場合は、このステップはスキップされてもよい。
(Step S112)
The device 300 transmits device information 1201 to the device manager 200. This device information 1201 is transmitted, for example, when the device 300 is connected to a computer network. The device manager 200 registers the received device information 1201 in the device database 1200. Note that if the device information 1201 is registered in the device database 1200 in advance, this step may be skipped.

なお、デバイス情報1201は、UI400に送信されてから、UI400を介してデバイスマネージャ200に登録されてもよい。 Note that the device information 1201 may be sent to the UI 400 and then registered in the device manager 200 via the UI 400.

デバイス情報1201は、デバイス300の識別子及び/又はアドレスを含む。さらに、デバイス情報1201は、任意の情報を含んでもよい。図8は、実施の形態1におけるデバイスデータベースの一例を示す。図8のデバイスデータベース1200には、デバイス情報1201を含む複数のデバイス情報が登録されている。各デバイス情報は、デバイスIDと、アドレスと、種別と、製造者名と、アクチュエータ/加熱器と、劣化レベルと、を含む。アクチュエータ/加熱器は、デバイス300を構成するアクチュエータ22及び/又は加熱器23の識別情報である。劣化レベルは、デバイス300を構成するアクチュエータ22及び/又は加熱器23が劣化しているか否かを示す劣化情報の一例である。ここでは、劣化レベルは、値が増加すればより劣化していることを示す。デバイス情報1201に、実行可能なブロックの情報が含まれていてもよい。実行可能なブロックに関する情報とは、データベースに含まれるブロックが実行可能又は実行不可能が対応付けられた情報でもよいし、実行可能なブロックのみの情報でもよい。また、ブロックが実行可能か否かは、デバイス情報1201に含まれるアクチュエータ/加熱器などの情報に基づいて予め準備され得る。 Device information 1201 includes an identifier and/or address of device 300. Furthermore, device information 1201 may include arbitrary information. FIG. 8 shows an example of the device database in the first embodiment. A plurality of pieces of device information including device information 1201 are registered in the device database 1200 in FIG. Each device information includes a device ID, address, type, manufacturer name, actuator/heater, and deterioration level. Actuator/heater is identification information of actuator 22 and/or heater 23 that constitute device 300. The deterioration level is an example of deterioration information indicating whether or not the actuator 22 and/or the heater 23 that constitute the device 300 have deteriorated. Here, the deterioration level indicates that as the value increases, the deterioration level increases. The device information 1201 may include information on executable blocks. The information regarding executable blocks may be information in which blocks included in the database are associated with executable or non-executable blocks, or may be information only about executable blocks. Further, whether or not a block is executable can be prepared in advance based on information on the actuator/heater, etc. included in the device information 1201.

なお、デバイス情報1201は、施設2a~2dを特定可能な情報を含んでもよい。 Note that the device information 1201 may include information that allows identification of the facilities 2a to 2d.

(ステップS114)
UI400は、デバイスマネージャ200にUI情報を送信する。このUI情報の送信は、例えばユーザの指示により行われる。デバイスマネージャ200は、受信したUI情報を例えばUIデータベースに登録する。なお、UI情報がUIデータベースに予め登録されている場合は、このステップはスキップされてもよい。
(Step S114)
The UI 400 transmits UI information to the device manager 200. This UI information is transmitted, for example, according to a user's instruction. The device manager 200 registers the received UI information in, for example, a UI database. Note that this step may be skipped if the UI information is registered in the UI database in advance.

UI情報は、例えばUI400の識別子及び/又はアドレスを含む。さらに、UI情報は、任意の情報を含んでもよい。 The UI information includes, for example, the identifier and/or address of the UI 400. Furthermore, the UI information may include arbitrary information.

なお、UI情報は、施設2a~2dを特定可能な情報を含んでもよい。 Note that the UI information may include information that allows identification of the facilities 2a to 2d.

以上の処理により、シーケンスマネージャ100、デバイスマネージャ200、デバイス300及びUI400は、互いに紐づけられ、互いに接続を確立することができる。このより、準備フェーズF100が終了する。 Through the above processing, the sequence manager 100, device manager 200, device 300, and UI 400 are linked to each other and can establish a connection with each other. This completes the preparation phase F100.

[1.3.2 アプリ実行前フェーズF200]
次に、アプリ実行前フェーズF200について説明する。なお、アプリ実行前フェーズF200の前には、UI400を介したユーザからの指示に従って、アプリケーション配信プラットフォームからシーケンスマネージャ100にアプリケーションがダウンロードされている。このようにシーケンスマネージャ100にアプリケーションがダウンロードされた状態で以下の処理が行われる。
[1.3.2 Application pre-execution phase F200]
Next, the pre-application execution phase F200 will be explained. Note that, before the pre-application execution phase F200, the application is downloaded from the application distribution platform to the sequence manager 100 in accordance with instructions from the user via the UI 400. With the application downloaded to the sequence manager 100 in this manner, the following processing is performed.

(ステップS210)
UI400は、ユーザからアプリ実行要求を受け付け、アプリケーションの識別情報を含むアプリ実行要求をシーケンスマネージャ100に送信する。例えば、ユーザは、UI400を介して、シーケンスマネージャ100にダウンロードされている複数のアプリケーションの中からアプリケーションを選択し、選択したアプリケーションの実行を指示する。
(Step S210)
The UI 400 receives an application execution request from a user, and transmits the application execution request including application identification information to the sequence manager 100. For example, the user selects an application from a plurality of applications downloaded to the sequence manager 100 via the UI 400, and instructs execution of the selected application.

なお、UI400からシーケンスマネージャ100に送信されるアプリ実行要求は、施設2a~2dを特定可能な情報とセットで送信される。 Note that the application execution request sent from the UI 400 to the sequence manager 100 is sent as a set with information that can identify the facilities 2a to 2d.

なお、アプリ実行要求は、ユーザから明示的に受け付けられなくてもよい。例えば、ユーザの行動又は状態を検出し、検出結果に基づいて自動的にアプリ実行要求がシーケンスマネージャ100に送信されてもよい。 Note that the application execution request does not have to be explicitly accepted from the user. For example, the user's behavior or state may be detected and an application execution request may be automatically sent to the sequence manager 100 based on the detection result.

(ステップS212)
シーケンスマネージャ100は、アプリ実行要求によって識別されたアプリケーションの実行内容宣言をデバイスマネージャ200に送信する。実行内容宣言は、実行するアプリケーションを規定する複数のブロックの情報及び施設2a~2dを特定可能な情報を含む。
(Step S212)
The sequence manager 100 transmits the execution content declaration of the application identified by the application execution request to the device manager 200. The execution content declaration includes information on a plurality of blocks that define applications to be executed and information that can specify the facilities 2a to 2d.

図9は、実施の形態1における実行内容宣言の一例を示す図である。図9には、図6A~図6Oに示す洗濯機のための複数のブロックを組み合わせて規定されたアプリケーションのための実行内容宣言1300が表されている。実行内容宣言1300は、複数のブロック1301、及び、各ブロック1301の実行に必要なデバイスに関する情報1302、及び、各ブロック1301を実行する順番に関する順番情報1303を含む。実行内容宣言1300は、洗濯情報の一例である。洗濯情報は、洗濯機能部による複数種類の運転を制御するパラメータに関する複数の制御情報のうちから、1つの制御情報で構成されていてもよいし、複数の制御情報が組み合わせられた情報であってもよい。ここでいう、複数の制御情報とは、例えば、図6A~図6Oで例示したブロック1000、1010、1020、1030、1040、1050、1060、1070、1080、1090、1100、1110、1120、1130、1140により示される情報である。 FIG. 9 is a diagram illustrating an example of an execution content declaration in the first embodiment. FIG. 9 shows an execution content declaration 1300 for an application defined by combining a plurality of blocks for the washing machine shown in FIGS. 6A to 6O. The execution content declaration 1300 includes a plurality of blocks 1301, information 1302 regarding devices necessary for executing each block 1301, and order information 1303 regarding the order in which each block 1301 is executed. The execution content declaration 1300 is an example of laundry information. The washing information may be composed of one piece of control information from among a plurality of pieces of control information regarding parameters that control a plurality of types of operations by the washing function section, or may be information that is a combination of a plurality of pieces of control information. Good too. The plural pieces of control information here include, for example, the blocks 1000, 1010, 1020, 1030, 1040, 1050, 1060, 1070, 1080, 1090, 1100, 1110, 1120, 1130 illustrated in FIGS. 6A to 6O, This is the information indicated by 1140.

なお、実行内容宣言1300は、デバイスに関する情報1302を含まなくてもよい。その場合、複数のブロック1301の情報から、受け取った施設情報が示す施設で該当ブロックを実行可能なデバイスを、デバイスマネージャ200が検索してデバイス割付けを行う必要がある。 Note that the execution content declaration 1300 does not need to include the information 1302 regarding the device. In this case, the device manager 200 needs to search for a device that can execute the corresponding block in the facility indicated by the received facility information from the information of the plurality of blocks 1301 and perform device allocation.

なお、図9では、デバイスに関する情報1302は、デバイス300の型番を示しているが、これに限定されない。デバイスに関する情報1302は、ブロックに割付可能なデバイス300の条件を示すことができれば、どのような情報であってもよい。例えば、デバイスに関する情報1302は、複数の型番を含んでもよいし、デバイスの種別、使用目的、配置場所、又は、これらの任意の組み合わせのみを含んでもよい。 Note that in FIG. 9, the device-related information 1302 indicates the model number of the device 300, but is not limited to this. The device-related information 1302 may be any information as long as it can indicate the conditions of the device 300 that can be allocated to the block. For example, the information 1302 regarding the device may include a plurality of model numbers, or may include only the type of device, purpose of use, location, or any combination thereof.

(ステップS214)
デバイスマネージャ200は、実行内容宣言1300に含まれる各ブロックに対して、施設2a~2dを特定可能な情報を基にして、デバイスマネージャ200に紐付けられているデバイス300を割り付ける。例えば、デバイスマネージャ200は、図9に示す複数のブロック1301の各々に、図8のデバイスデータベース1200に、受け取った施設情報が示す施設に接続済として登録されている、型番WM-0001を有するデバイスDEV001を割り付ける。なお、デバイス300の稼働状態又はクラウドへの接続状態が管理されている場合には、稼働中のデバイス300の割り付けが禁止されてもよい。
(Step S214)
The device manager 200 allocates a device 300 linked to the device manager 200 to each block included in the execution content declaration 1300 based on information that can identify the facilities 2a to 2d. For example, the device manager 200 stores a device having a model number WM-0001 that is registered in the device database 1200 in FIG. 8 as connected to the facility indicated by the received facility information in each of the plurality of blocks 1301 shown in FIG. Assign DEV001. Note that if the operating state of the device 300 or the connection state to the cloud is managed, allocation of the operating device 300 may be prohibited.

なお、例えば図9に示す複数のブロックが、受け取った施設情報が示す施設に接続済として登録されていない場合、すなわち、該当施設において対象デバイスが存在していない場合、デバイスマネージャ200は実行内容宣言されたアプリケーションの実行が不可であることをシーケンスマネージャ200に通知する。 Note that, for example, if the plurality of blocks shown in FIG. 9 are not registered as connected to the facility indicated by the received facility information, that is, if the target device does not exist in the facility, the device manager 200 declares the execution details. The sequence manager 200 is notified that the executed application cannot be executed.

(ステップS215)
デバイスマネージャ200は、デバイス割り付けの結果をデバイス300に通知する。これにより、アプリケーションに含まれる複数のブロックが、それぞれ割り付けられたデバイス300に送信される。
(Step S215)
The device manager 200 notifies the device 300 of the device allocation results. As a result, a plurality of blocks included in the application are transmitted to the respective allocated devices 300.

(ステップS216)
デバイス300は、ブロックの実行前にブロックを確認する。つまり、デバイス300は、ブロックを実行する前に、ブロックが実行されたときにデバイス300で問題が生じないかをチェックする。例えばデバイス300は、安全及び/又は効率上の問題をチェックする。
(Step S216)
Device 300 verifies the block before executing the block. That is, before executing a block, the device 300 checks whether a problem will occur in the device 300 when the block is executed. For example, device 300 checks for safety and/or efficiency issues.

そして、デバイス300は、確認結果に基づいて、ブロックを変更する。これにより、問題が生じないようにブロックが修正される。 The device 300 then changes the block based on the confirmation result. This fixes the block so that the problem does not occur.

このような実行前確認処理について、図10を参照しながら、さらに詳細に説明する。図10は、実施の形態1における実行前確認処理のフローチャートを示す。 Such pre-execution confirmation processing will be described in more detail with reference to FIG. 10. FIG. 10 shows a flowchart of the pre-execution confirmation process in the first embodiment.

(ステップS2165)
デバイス300は、ブロックに対応するルールを取得する。ルールは、洗濯の順番に関するルールである。ルールでは、第1ブロック(第1の制御情報)の次に第2ブロック(第2の制御情報)が実行される実行内容宣言1300が許容されるか否かが規定されている。つまり、ルールでは、実行内容宣言1300で規定されている複数のブロック1301の内の連続して実行される2つのブロックの順番が許容されるか否かが規定されている。例えば、デバイス300は、ルールデータベースを参照して、連続して実行される2つのブロックの順番が許容されない条件を取得する。ルールデータベースは、例えばデバイス300に含まれてもよいし、シーケンスマネージャ100又はデバイスマネージャ200に含まれてもよい。
(Step S2165)
The device 300 obtains the rule corresponding to the block. The rules are rules regarding the order of washing. The rules define whether the execution content declaration 1300 in which the second block (second control information) is executed after the first block (first control information) is permitted. In other words, the rules define whether or not the order in which two blocks are executed consecutively among the plurality of blocks 1301 defined in the execution content declaration 1300 is allowed. For example, the device 300 refers to the rule database to obtain a condition in which the order of two blocks to be executed consecutively is not allowed. The rule database may be included in the device 300, the sequence manager 100, or the device manager 200, for example.

以下、ルールデータベース1400で規定されるルールについて図11を参照しながら、具体的に説明する。図11は、実施の形態1におけるルールデータベースの一例を示す。図11のルールデータベース1400には、第1のルール1401、第2のルール1402、第3のルール1403、第4のルール1404、及び、第5のルール1405が登録されている。第1のルール1401、第2のルール1402、第3のルール1403、第4のルール1404、及び、第5のルール1405の各々は、第1ブロック(第1の制御情報)の次に第2ブロック(第2の制御情報)が実行されることが許容されないことが規定されている。つまり、第1のルール1401、第2のルール1402、第3のルール1403、第4のルール1404、及び、第5のルール1405の各々は、洗濯の順番に関するルールである。 Hereinafter, the rules defined in the rule database 1400 will be specifically explained with reference to FIG. 11. FIG. 11 shows an example of the rule database in the first embodiment. A first rule 1401, a second rule 1402, a third rule 1403, a fourth rule 1404, and a fifth rule 1405 are registered in the rule database 1400 in FIG. Each of the first rule 1401, the second rule 1402, the third rule 1403, the fourth rule 1404, and the fifth rule 1405 has a second block next to the first block (first control information). It is specified that the block (second control information) is not allowed to be executed. That is, each of the first rule 1401, second rule 1402, third rule 1403, fourth rule 1404, and fifth rule 1405 is a rule regarding the order of washing.

第1のルール1401では、例えば、第1ブロックが洗濯機500の水槽502への給水に関するパラメータを含み、かつ、第2ブロックが禁水環境で実行される運転を制御するパラメータを含むことが許容されない。この場合の第1ブロックは、例えば、ブロック1010、1020、1050、1060である。禁水環境で実行される運転は、水槽502に水が貯められているときに実行されることが許容されない運転を含む。禁水環境は、具体的には、水槽502の水位が所定の水位(例えば、水位センサが検知可能な最低水位)よりも低い水位であることである。つまり、水槽502に水が貯められているときとは、水槽502の水位が所定の水位以上の水位であることである。第2ブロックは、例えば、ブロック1000、1070、1110などである。ブロック1000の洗濯量検知動作が禁水環境で実行される運転であるのは、洗濯物が浸水している状態では、精度よく洗濯物の量を検知することが難しいからである。また、ブロック1070の脱水動作が禁水環境で実行される運転であるのは、洗濯物が浸水している状態では、効果的に脱水することが難しいからである。また、ブロック1110の除菌・抗菌動作が禁水環境で実行される運転であるのは、洗濯物が浸水している状態では、帯電微粒子水などの効能物質が含まれる空気を洗濯槽503へ放出しても効能物質の性能が十分に得られないからである。 The first rule 1401 allows, for example, that the first block includes parameters related to water supply to the water tank 502 of the washing machine 500, and the second block includes parameters for controlling operations performed in a water-free environment. Not done. The first blocks in this case are blocks 1010, 1020, 1050, and 1060, for example. Operations executed in a water-prohibited environment include operations that are not allowed to be executed when water is stored in the water tank 502. Specifically, the water-prohibited environment means that the water level of the water tank 502 is lower than a predetermined water level (for example, the lowest water level that can be detected by a water level sensor). In other words, when water is stored in the water tank 502, it means that the water level in the water tank 502 is equal to or higher than a predetermined water level. The second blocks are, for example, blocks 1000, 1070, 1110, etc. The reason why the laundry amount detection operation in block 1000 is performed in a water-free environment is because it is difficult to accurately detect the amount of laundry when the laundry is submerged in water. Further, the reason why the dewatering operation in block 1070 is performed in a water-free environment is because it is difficult to dehydrate the laundry effectively when it is submerged in water. In addition, the sterilization/antibacterial operation in block 1110 is performed in a water-free environment because when the laundry is submerged in water, air containing effective substances such as charged particulate water is pumped into the washing tub 503. This is because even if released, the performance of the effective substance cannot be sufficiently obtained.

第2のルール1402では、例えば、第1ブロックが洗濯機500の水槽502内の加熱に関するパラメータを含み、かつ、第2ブロックが禁熱環境で実行される運転を制御するパラメータを含むことが許容されない。この場合の第1ブロックは、例えば、ブロック1140である。また、この場合の第1ブロックは、温水ヒータ543を水槽502内の洗濯水の温度が所定の水温(例えば60度)以上になるまで駆動するパラメータを含む場合のブロック1050、1060などであってもよい。禁熱環境で実行される運転は、水槽502内の温度が所定の温度以上のときに実行されることが許容されない運転を含む。禁熱環境は、具体的には、水槽502内の空間の温度が所定の温度未満となること、または、水槽502内の洗濯水の温度が所定の水温未満となることである。第2ブロックは、例えば、パラメータ1081が排水弁523を示す場合のブロック1080、パラメータ1091がドアロックを解除することを示す場合のブロック1090などである。ブロック1080の排水動作が禁熱環境で実行される運転であるのは、高温水が洗濯機500の外部の排水管に流れることで、排水管が熱で変形したり破損したりすることを防止するためである。ブロック1090のドアロックの解除動作が禁熱環境で実行される運転であるのは、ユーザがドア505を開けて洗濯槽503内の洗濯物を取り出そうとしたときにユーザが高温の洗濯物に触れることを防止するためである。 The second rule 1402 allows, for example, that the first block includes parameters related to heating in the water tank 502 of the washing machine 500, and the second block includes parameters for controlling operations performed in a heat-free environment. Not done. The first block in this case is block 1140, for example. In addition, the first block in this case is blocks 1050, 1060, etc. that include a parameter for driving the hot water heater 543 until the temperature of the washing water in the water tank 502 reaches a predetermined water temperature (for example, 60 degrees Celsius) or higher. Good too. The operation executed in a heat-free environment includes an operation that is not allowed to be executed when the temperature inside the water tank 502 is higher than a predetermined temperature. Specifically, the heat-free environment means that the temperature of the space within the water tank 502 becomes less than a predetermined temperature, or that the temperature of the washing water in the water tank 502 becomes less than a predetermined water temperature. The second block is, for example, block 1080 when the parameter 1081 indicates the drain valve 523, block 1090 when the parameter 1091 indicates to release the door lock, etc. The reason why the draining operation in block 1080 is performed in a heat-free environment is that high-temperature water flows into the drain pipe outside the washing machine 500 to prevent the drain pipe from being deformed or damaged by heat. This is to do so. The door lock release operation in block 1090 is performed in a heat-free environment when the user comes into contact with hot laundry when the user opens the door 505 and attempts to take out the laundry in the washing tub 503. This is to prevent this from happening.

第3のルール1403では、例えば、第1ブロックが水が貯められている洗濯機500の洗濯槽503の回転に関するパラメータを含み、かつ、第2ブロックが禁動環境で実行される運転を制御するパラメータを含むことが許容されない。この場合の第1ブロックは、例えば、ブロック1050、1060、1070などである。禁動環境で実行される運転は、水槽502(または洗濯槽503)内の水面を動かすことが許容されない運転を含む。禁動環境は、具体的には、水槽502(または洗濯槽503)が所定の振幅(または所定の変位)未満で振動または静止していることである。第2ブロックは、例えば、ブロック1010、1020などである。ブロック1010が禁動環境で実行される運転であるのは、水面が動いている状態では正確に水位を検知することが難しいからである。 In the third rule 1403, for example, the first block includes parameters related to the rotation of the washing tub 503 of the washing machine 500 in which water is stored, and the second block controls the operation performed in a prohibited environment. Inclusion of parameters is not allowed. The first blocks in this case are, for example, blocks 1050, 1060, 1070, etc. The operation performed in a prohibited environment includes an operation in which movement of the water surface in the water tank 502 (or the washing tank 503) is not allowed. Specifically, the prohibited environment is that the water tank 502 (or the washing tub 503) is vibrating or standing still with less than a predetermined amplitude (or a predetermined displacement). The second blocks are blocks 1010, 1020, etc., for example. The reason why block 1010 is an operation performed in a prohibited environment is because it is difficult to accurately detect the water level when the water surface is moving.

なお、図示していないが、例えば、撹拌動作を実行しながら給水動作を実行するブロックにおいて撹拌動作を開始して所定時間後に給水動作を開始する場合、撹拌動作のサブブロックを第1ブロックとみなし、給水動作のサブブロックを第2ブロックとみなしてもよい。 Although not shown, for example, in a block that performs a water supply operation while performing a stirring operation, when the stirring operation is started and the water supply operation is started after a predetermined time, the sub-block of the stirring operation is regarded as the first block. , the water supply operation sub-block may be regarded as the second block.

第4のルール1404では、例えば、第1ブロックが洗濯機500の水槽502(または洗濯槽503)内への送風に関するパラメータを含み、かつ、第2ブロックが禁動環境で実行される運転を制御するパラメータを含むことが許容されない。この場合の第1ブロックは、例えば、ブロック1130、1140などである。禁動環境で実行される運転は、水槽502(または洗濯槽503)内の水面を動かすことが許容されない運転を含む。禁動環境は、具体的には、水槽502(または洗濯槽503)内の水位が所定の振幅(または所定の変位)未満で振動または静止していることである。第2ブロックは、例えば、ブロック1010、1020などである。ブロック1010が禁動環境で実行される運転であるのは、水面が動いている状態では正確に水位を検知することが難しいからである。 In the fourth rule 1404, for example, the first block includes parameters related to air blowing into the water tank 502 (or washing tank 503) of the washing machine 500, and the second block controls the operation performed in a prohibited environment. It is not allowed to include parameters that The first blocks in this case are blocks 1130, 1140, etc., for example. The operation performed in a prohibited environment includes an operation in which movement of the water surface in the water tank 502 (or the washing tank 503) is not allowed. Specifically, the prohibited environment is that the water level in the water tank 502 (or washing tub 503) is vibrating or stationary with less than a predetermined amplitude (or a predetermined displacement). The second blocks are blocks 1010, 1020, etc., for example. The reason why block 1010 is an operation performed in a prohibited environment is because it is difficult to accurately detect the water level when the water surface is moving.

第5のルール1405では、例えば、第1ブロックが洗濯機500の洗濯槽503を第1の回転で回転させるパラメータを含み、かつ、第2ブロックが第1の回転とは異なる第2の回転で洗濯槽503を回転させるパラメータを含むことが許容されない。ここで、第1の回転と第2の回転との回転が異なるとは、それぞれの回転速度が互いに異なることであってもよい。つまり、第1の回転における第1回転速度は、第2の回転の第2回転速度と異なっていてもよい。。また、第1の回転と第2の回転との回転が異なるとは、それぞれの回転の向きが互いに異なることであってもよい。つまり、第1の回転の向きは、第2の回転の向きと異なっていてもよい。 In the fifth rule 1405, for example, the first block includes a parameter for rotating the washing tub 503 of the washing machine 500 in a first rotation, and the second block includes a parameter for rotating the washing tub 503 of the washing machine 500 in a second rotation different from the first rotation. It is not allowed to include a parameter for rotating the washing tub 503. Here, the first rotation and the second rotation may be different in rotation speed from each other. That is, the first rotational speed in the first rotation may be different from the second rotational speed in the second rotation. . Furthermore, the first rotation and the second rotation may be different in direction from each other. That is, the first rotation direction may be different from the second rotation direction.

この場合の第1ブロックは、例えば、ブロック1050、1060、1070などである。第2ブロックは、例えば、第1ブロックとは回転が異なるブロック1050、1060、1070などである。 The first blocks in this case are, for example, blocks 1050, 1060, 1070, etc. The second blocks are, for example, blocks 1050, 1060, 1070, etc. whose rotation is different from the first block.

なお、図11では、第1のルール1401、第2のルール1402、第3のルール1403、第4のルール1404、及び、第5のルール1405の各々は、第1ブロックの次に第2ブロックが実行されることが許容されないことが規定されているとしたが、第1ブロックの次に第2ブロックが実行されることが許容されることが規定されていてもよい。この場合であっても、ルールとして規定されていない組み合わせの第1ブロックおよび第2ブロックの組み合わせの実行が許容されないこととして定義することができる。 Note that in FIG. 11, each of the first rule 1401, second rule 1402, third rule 1403, fourth rule 1404, and fifth rule 1405 is set to the second block after the first block. Although it is specified that the second block is not allowed to be executed, it may be specified that the second block is allowed to be executed after the first block. Even in this case, it can be defined that execution of a combination of the first block and the second block that is not specified as a rule is not permitted.

例えば、アクチュエータ22又は加熱器23は、筐体21の内部空間などのデバイス300の環境に応じて安全に駆動できるパラメータが変わり、許容されるブロックの順番はアクチュエータ22又は加熱器23自体の性能のみに依存しない場合がある。したがって、いずれの環境でも安全に駆動するために、安全性を考慮する比重が高い順番になり、多種多様なアプリケーションの開発の余地が低減することになる。そこで、ルールは、アプリケーションと独立して、デバイス300等の情報と対応付けられてもよい。そのようなルールが用いられることで、安全性及び多種多様なアプリケーションの開発を両立できる。 For example, the parameters that allow the actuator 22 or the heater 23 to be safely driven change depending on the environment of the device 300 such as the internal space of the casing 21, and the permissible order of blocks is limited to the performance of the actuator 22 or the heater 23 itself. may not depend on Therefore, in order to drive safely in any environment, safety is given higher priority, reducing the scope for developing a wide variety of applications. Therefore, the rules may be associated with information about the device 300 and the like independently of the application. By using such rules, it is possible to achieve both safety and the development of a wide variety of applications.

ルールは、アクチュエータ22又は加熱器23が安全に駆動できる順番で組み合わせられた複数のブロックに関連する。安全に駆動できる順番で組み合わせられた複数のブロックは、ブロックの開始条件又は終了条件を考慮された順番であってもよい。第2ブロックの開始条件に達するまで、第1ブロックを実行することで、アクチュエータ22又は加熱器23の安全性に影響がある負荷かかる場合を想定したブロックが実行される順番が設定され得る。つまり、ブロックが実行される順番は、アクチュエータ22又は加熱器23の性能、ブロックの開始条件又は終了条件などに依存する。 The rules relate to a plurality of blocks combined in an order that allows the actuator 22 or heater 23 to be safely driven. The plurality of blocks that are combined in an order that allows safe driving may be an order that takes into consideration the start condition or end condition of the blocks. By executing the first block until the start condition for the second block is reached, the order in which the blocks are executed can be set assuming a case where a load that affects the safety of the actuator 22 or the heater 23 is applied. That is, the order in which the blocks are executed depends on the performance of the actuator 22 or the heater 23, the start condition or end condition of the block, and the like.

第1のルール1401、第2のルール1402、第3のルール1403、第4のルール1404、及び、第5のルール1405の各々は、さらに、種別と、製造者名と、アクチュエータ/加熱器と、を有していてもよい。これにより、デバイス300は、ルールデータベース1400から、ブロックで駆動されるアクチュエータ22又は加熱器23に対応するルールを取得することができる。 Each of the first rule 1401, second rule 1402, third rule 1403, fourth rule 1404, and fifth rule 1405 further includes the type, manufacturer name, actuator/heater, and , may have. Thereby, the device 300 can acquire the rule corresponding to the actuator 22 or heater 23 driven by the block from the rule database 1400.

(ステップS2166)
デバイス300は、第1ブロックの次に第2ブロックを実行することが許容されるか否かを判定する。ここで、第1ブロックの次に第2ブロックを実行することが許容されないと判定された場合(S2166のNo)、デバイス300は、以降のステップS2167をスキップして実行前確認処理を終了する。一方、第1ブロックの次に第2ブロックを実行することが許容されると判定された場合(S2166のYes)、デバイス300は、次のステップS2167に進む。
(Step S2166)
The device 300 determines whether it is allowed to execute the second block after the first block. Here, if it is determined that executing the second block after the first block is not permitted (No in S2166), the device 300 skips the subsequent step S2167 and ends the pre-execution confirmation process. On the other hand, if it is determined that it is permissible to execute the second block after the first block (Yes in S2166), the device 300 proceeds to the next step S2167.

(ステップS2167)
デバイス300は、ルールデータベース1400のルールに基づいて実行内容宣言1300を修正し、実行前確認処理を終了する。実行内容宣言1300の修正とは、例えば、実行内容宣言1300に、第1ブロックの次に実行される順番の制御情報として第3ブロック(第3の制御情報)を追加することである。実行内容宣言1300の修正とは、例えば、実行内容宣言1300に、第1ブロックに含まれるパラメータに関する情報、又は、第2ブロックに含まれるパラメータに関する情報を修正することである。実行内容宣言1300の修正とは、例えば、第2ブロックの実行を制限することである。または、実行内容宣言1300の修正とは、上記のブロックの追加、パラメータの修正、及び、第2ブロックの実行の制限の任意の組み合わせであってもよい。
(Step S2167)
The device 300 modifies the execution content declaration 1300 based on the rules in the rule database 1400, and ends the pre-execution confirmation process. Modifying the execution content declaration 1300 means, for example, adding a third block (third control information) to the execution content declaration 1300 as control information for the order of execution after the first block. Modifying the execution content declaration 1300 means, for example, modifying information regarding parameters included in the first block or information regarding parameters included in the second block in the execution content declaration 1300. Modifying the execution content declaration 1300 means, for example, restricting the execution of the second block. Alternatively, the modification of the execution content declaration 1300 may be any combination of the above-mentioned addition of blocks, modification of parameters, and restriction of execution of the second block.

このような実行内容宣言1300の修正の具体例について図12~図20を参照しながら説明する。 A specific example of such modification of the execution content declaration 1300 will be described with reference to FIGS. 12 to 20.

図12は、実施の形態1における実行内容宣言の修正の第1の例を示す。図12では、実行内容宣言において、給水動作のブロック1010の次に禁水環境で実行される運転である脱水動作のブロック1070が実行されることが示されている。これは、第1のルール1401で許容されないため、制御装置550は、ブロック1010の次に実行される順番の制御情報として水槽502からの排水に関するパラメータを含む排水動作のブロック1080を追加する。つまり、給水動作の次に脱水動作が実行されることが設定されていたとしても、制御装置550は、給水動作と脱水動作との間に排水動作を追加する。このため、脱水動作が開始される前に水槽502を禁水環境とすることができ、効果的に脱水することができる。 FIG. 12 shows a first example of modification of the execution content declaration in the first embodiment. In FIG. 12, the execution content declaration indicates that the water supply operation block 1010 is followed by the dewatering operation block 1070, which is an operation executed in a water-prohibited environment. Since this is not allowed by the first rule 1401, the control device 550 adds a drainage operation block 1080 that includes parameters related to drainage from the water tank 502 as control information to be executed next to the block 1010. In other words, even if it is set that the dehydration operation is performed next to the water supply operation, the control device 550 adds the drainage operation between the water supply operation and the dewatering operation. Therefore, the water tank 502 can be made into a water-free environment before the dewatering operation is started, and water can be effectively dehydrated.

なお、図12において、脱水動作のブロック1070の代わりに除菌・抗菌動作のブロック1110が設定されていたとしても同様に、ブロック1070とブロック1110との間に排水動作のブロック1080を追加してもよい。これにより、除菌・抗菌動作が開始される前に水槽502を禁水環境とすることができ、効果的に洗濯物を除菌することができる。 In addition, in FIG. 12, even if the sterilization/antibacterial operation block 1110 is set instead of the dehydration operation block 1070, the drainage operation block 1080 is similarly added between the block 1070 and the block 1110. Good too. Thereby, the water tank 502 can be made into a water-free environment before the sterilization/antibacterial operation is started, and the laundry can be effectively sterilized.

また、図12において、給水動作のブロック1010の代わりに、注水動作のブロック1020や、給水動作のパラメータを含む、撹拌動作のブロック1050、ドラム回転動作のブロック1060が設定されている場合も上記と同様に、その直後に排水動作のブロック1080を追加することで上記と同様の効果が得られる。 In addition, in FIG. 12, the above case also applies when a water pouring operation block 1020, a stirring operation block 1050 that includes parameters for the water supply operation, and a drum rotation operation block 1060 are set instead of the water supply operation block 1010. Similarly, the same effect as described above can be obtained by adding the drain operation block 1080 immediately after that.

図13は、実施の形態1における実行内容宣言の修正の第2の例を示す。図13では、図12と同様に実行内容宣言において、給水動作のブロック1010の次に禁水環境で実行される運転である脱水動作のブロック1070が実行されることが示されている。これは、第1のルール1401で許容されないため、制御装置550は、ブロック1070の直前に水槽502からの排水に関するパラメータ1073を追加するように、ブロック1070を修正することでブロック1070Aを新たに生成してもよい。パラメータ1073は、排水弁523を開に制御することを示すパラメータである。このため、脱水動作が開始される前に水槽502を禁水環境とすることができ、効果的に脱水することができる。 FIG. 13 shows a second example of modification of the execution content declaration in the first embodiment. In FIG. 13, as in FIG. 12, the execution content declaration indicates that the water supply operation block 1010 is followed by the dewatering operation block 1070, which is an operation executed in a water-prohibited environment. Since this is not allowed by the first rule 1401, the control device 550 generates a new block 1070A by modifying the block 1070 to add a parameter 1073 regarding drainage from the water tank 502 immediately before the block 1070. You may. Parameter 1073 is a parameter indicating that the drain valve 523 is controlled to be open. Therefore, the water tank 502 can be made into a water-free environment before the dewatering operation is started, and water can be effectively dehydrated.

なお、図13において、脱水動作のブロック1070の代わりに除菌・抗菌動作のブロック1110が設定されていたとしても同様に、パラメータ1073をブロック1110の直前に追加するようにブロック1110を修正してもよい。これにより、除菌・抗菌動作が開始される前に水槽502を禁水環境とすることができ、効果的に洗濯物を除菌することができる。 In addition, in FIG. 13, even if block 1110 for sterilization/antibacterial operation is set instead of block 1070 for dehydration operation, block 1110 is similarly modified to add parameter 1073 immediately before block 1110. Good too. Thereby, the water tank 502 can be made into a water-free environment before the sterilization/antibacterial operation is started, and the laundry can be effectively sterilized.

また、図13において、給水動作のブロック1010の代わりに、注水動作のブロック1020や、給水動作のパラメータを含む、撹拌動作のブロック1050、ドラム回転動作のブロック1060が設定されている場合も上記と同様に、その直後のブロックに当該ブロックの動作が行われる直前に排水が行われるようにパラメータ1073を追加することで上記と同様の効果が得られる。 In addition, in FIG. 13, the above case also applies when a water injection operation block 1020, a stirring operation block 1050 that includes water supply operation parameters, and a drum rotation operation block 1060 are set instead of the water supply operation block 1010. Similarly, the same effect as above can be obtained by adding parameter 1073 to the block immediately after that so that drainage is performed immediately before the operation of the block.

図14は、実施の形態1における実行内容宣言の修正の第3の例を示す。図14では、実行内容宣言において、給水動作のブロック1010の次に禁水環境で実行される運転である洗濯量検知動作のブロック1000が実行されることが示されている。これは、第1のルール1401で許容されないため、制御装置550は、ブロック1010の次に実行される順番のブロック1000の実行を制限する。具体的には、制御装置550は、ブロック1000を削除する、または、ブロック1000の実行をスキップする。また、制御装置550は、逐次ブロックを読み込んで実行している場合、ブロック1010の実行が終了した後に、運転を停止することでブロック1000の実行を制限してもよい。このため、精度よく洗濯物の量を検知することが難しい環境下において、洗濯量検知動作が行われることを抑制することができる。よって、洗濯量検知動作に係る消費電力を低減することができる。 FIG. 14 shows a third example of modification of the execution content declaration in the first embodiment. In FIG. 14, the execution content declaration indicates that after block 1010 of water supply operation, block 1000 of laundry amount detection operation, which is an operation executed in a water-prohibited environment, is executed. Since this is not allowed by the first rule 1401, the control device 550 restricts the execution of block 1000, which is the next block to be executed after block 1010. Specifically, control device 550 deletes block 1000 or skips execution of block 1000. Further, when the control device 550 sequentially reads and executes the blocks, the control device 550 may limit the execution of the block 1000 by stopping the operation after the execution of the block 1010 is completed. Therefore, it is possible to suppress the laundry amount detection operation from being performed in an environment where it is difficult to accurately detect the amount of laundry. Therefore, power consumption related to the laundry amount detection operation can be reduced.

図15は、実施の形態1における実行内容宣言の修正の第4の例を示す。図15では、実行内容宣言において、乾燥動作のブロック1140の次に禁熱環境で実行される運転であるドアロック解除動作のブロック1090が実行されることが示されている。これは、第2のルール1402で許容されないため、制御装置550は、ブロック1140の次に実行される順番の制御情報として洗濯槽503内の放熱に関するパラメータを含む送風動作のブロック1130を追加する。つまり、乾燥動作の次にドアロック解除動作が実行されることが設定されていたとしても、制御装置550は、乾燥動作とドアロック解除動作との間に送風動作を追加する。このため、ドアロック解除動作が開始される前に洗濯槽503内の温度を所定の温度未満に低下させることができ、ユーザが高温の洗濯物に触れることを抑制することができる。なお、送風動作のブロック1130を追加する代わりに、送風動作がドアロック解除動作の直前に行われるように、送風動作を行うパラメータをドアロック解除動作のブロック1090に追加してもよいし、乾燥動作のブロック1140に追加してもよい。 FIG. 15 shows a fourth example of modification of the execution content declaration in the first embodiment. In FIG. 15, the execution content declaration indicates that block 1140 of the drying operation is followed by block 1090 of the door unlocking operation, which is an operation executed in a heat-free environment. Since this is not allowed by the second rule 1402, the control device 550 adds a block 1130 for air blowing operation that includes parameters regarding heat radiation in the washing tub 503 as control information to be executed next to the block 1140. In other words, even if the door unlocking operation is set to be performed after the drying operation, the control device 550 adds the blowing operation between the drying operation and the door unlocking operation. Therefore, the temperature inside the washing tub 503 can be lowered below a predetermined temperature before the door unlocking operation is started, and the user can be prevented from touching hot laundry. Note that instead of adding the air blowing operation block 1130, a parameter for performing the air blowing operation may be added to the door unlocking operation block 1090 so that the air blowing operation is performed immediately before the door unlocking operation. may be added to block 1140 of operations.

図16は、実施の形態1における実行内容宣言の修正の第5の例を示す。図16では、実行内容宣言において、所定の水温以上の高温水での撹拌動作のブロック1050の次に禁熱環境で実行される運転である排水動作のブロック1080が実行されることが示されている。これは、第2のルール1402で許容されないため、制御装置550は、ブロック1050の次に実行される順番の制御情報として放熱に関するパラメータを含む待機動作のブロック1150を追加する。ブロック1150による待機動作では、制御装置550は、所定期間(例えば10分間)が経過するまで次のブロック1080の実行を待機する。つまり、高温水での撹拌動作の次に排水動作が実行されることが設定されていたとしても、制御装置550は、高温水での撹拌動作と排水動作との間に待機動作を追加する。このため、排水動作が開始される前に水槽502内の洗濯水の温度を所定の水温未満に低下させることができ、高温水が洗濯機500の外部の排水管に流れることを抑制することができる。なお、待機動作のブロック1150を追加する代わりに、待機動作が排水動作の直前に行われるように、待機動作を行うパラメータを排水動作のブロック1080に追加してもよいし、撹拌動作のブロック1050に追加してもよい。なお、放熱するための動作の一例として待機動作を挙げたがこれに限らずに、給水動作の後に排水動作を行うことで放熱を行ってもよい。 FIG. 16 shows a fifth example of modification of the execution content declaration in the first embodiment. In FIG. 16, the execution content declaration indicates that block 1050 of the stirring operation with high-temperature water above a predetermined water temperature is followed by block 1080 of the drainage operation, which is an operation performed in a heat-free environment. There is. Since this is not allowed by the second rule 1402, the control device 550 adds a standby operation block 1150 that includes parameters related to heat radiation as control information to be executed next to the block 1050. In the standby operation according to block 1150, controller 550 waits to execute the next block 1080 until a predetermined period of time (eg, 10 minutes) has elapsed. In other words, even if it is set that the drainage operation is performed next to the stirring operation with high-temperature water, the control device 550 adds a standby operation between the stirring operation with high-temperature water and the drainage operation. Therefore, the temperature of the washing water in the water tank 502 can be lowered below a predetermined water temperature before the draining operation starts, and it is possible to prevent high-temperature water from flowing into the drain pipe outside the washing machine 500. can. Note that instead of adding the standby operation block 1150, a parameter for performing the standby operation may be added to the draining operation block 1080 so that the standby operation is performed immediately before the draining operation, or the stirring operation block 1050 may be added to. In addition, although the standby operation was mentioned as an example of the operation for radiating heat, the present invention is not limited to this, and heat may be radiated by performing a draining operation after the water supply operation.

図17は、実施の形態1における実行内容宣言の修正の第6の例を示す。図17では、実行内容宣言において、撹拌動作のブロック1050の次に禁動環境で実行される運転である給水動作のブロック1010が実行されることが示されている。これは、第3のルール1403で許容されないため、制御装置550は、ブロック1050の次に実行される順番の制御情報として所定期間(例えば1分間)何もせずに待機する動作に関するパラメータを含む待機動作のブロック1150を追加する。つまり、撹拌動作の次に給水動作が実行されることが設定されていたとしても、制御装置550は、撹拌動作と給水動作との間に待機動作を追加する。このため、給水動作が開始される前に水槽502(または洗濯槽503)が所定の振幅(または所定の変位)未満で振動または静止させることができ、水面の揺れを低減することができる。なお、待機動作のブロック1150を追加する代わりに、待機動作が給水動作の直前に行われるように、待機動作を行うパラメータを給水動作のブロック1010に追加してもよいし、撹拌動作のブロック1050に追加してもよい。 FIG. 17 shows a sixth example of modification of the execution content declaration in the first embodiment. In FIG. 17, the execution content declaration indicates that the water supply operation block 1010, which is an operation executed in a prohibited environment, is executed next to the stirring operation block 1050. Since this is not allowed by the third rule 1403, the control device 550 performs a standby operation that includes a parameter related to an operation of waiting without doing anything for a predetermined period (for example, 1 minute) as control information to be executed next in block 1050. Add action block 1150. That is, even if it is set that the water supply operation is performed next to the stirring operation, the control device 550 adds a standby operation between the stirring operation and the water supply operation. Therefore, the water tank 502 (or the washing tub 503) can be vibrated or stopped at less than a predetermined amplitude (or a predetermined displacement) before the water supply operation is started, and the shaking of the water surface can be reduced. Note that instead of adding the standby operation block 1150, parameters for performing the standby operation may be added to the water supply operation block 1010 so that the standby operation is performed immediately before the water supply operation, or the stirring operation block 1050 may be added to.

なお、図17において、給水動作のブロック1010の代わりに注水動作のブロック1120や、給水動作のパラメータを含む、撹拌動作のブロック1050、ドラム回転動作のブロック1060が設定されていたとしても同様に、撹拌動作と給水動作のパラメータを含むブロックとの間に待機動作のブロック1150を追加してもよい。これにより、給水動作が開始される前に水槽502を禁動環境とすることができ、給水動作において効果的に水槽502の水位を検知することができる。 In addition, in FIG. 17, even if a water pouring operation block 1120, a stirring operation block 1050 that includes parameters for the water supply operation, and a drum rotation operation block 1060 are set instead of the water supply operation block 1010, the same effect will occur. A standby operation block 1150 may be added between blocks including parameters for stirring operation and water supply operation. Thereby, the water tank 502 can be made into a prohibited environment before the water supply operation is started, and the water level of the water tank 502 can be effectively detected during the water supply operation.

また、図17において、撹拌動作のブロック1050の代わりに、ドラム回転動作のブロック1060のブロックが設定されている場合も上記と同様に、その直後に待機動作のブロック1150を追加することで上記と同様の効果が得られる。 In addition, in FIG. 17, when a drum rotation operation block 1060 is set instead of the stirring operation block 1050, the above can be achieved by adding the standby operation block 1150 immediately after it in the same way as above. A similar effect can be obtained.

図18は、実施の形態1における実行内容宣言の修正の第7の例を示す。図18では、実行内容宣言において、送風動作のブロック1130の次に禁動環境で実行される運転である給水動作のブロック1010が実行されることが示されている。これは、第4のルール1404で許容されないため、制御装置550は、ブロック1130の次に実行される順番の制御情報として所定期間(例えば1分間)何もせずに待機する動作に関するパラメータを含む待機動作のブロック1150を追加する。つまり、送風動作の次に給水動作が実行されることが設定されていたとしても、制御装置550は、送風動作と給水動作との間に待機動作を追加する。このため、給水動作が開始される前に水面の揺れを低減することができる。なお、待機動作のブロック1150を追加する代わりに、待機動作が給水動作の直前に行われるように、待機動作を行うパラメータを給水動作のブロック1010に追加してもよいし、送風動作のブロック1130に追加してもよい。 FIG. 18 shows a seventh example of modification of the execution content declaration in the first embodiment. In FIG. 18, the execution content declaration indicates that the water supply operation block 1010, which is an operation executed in a prohibited environment, is executed next to the air blowing operation block 1130. Since this is not allowed by the fourth rule 1404, the control device 550 performs a standby operation that includes a parameter regarding an operation of waiting without doing anything for a predetermined period (for example, 1 minute) as control information to be executed next in block 1130. Add action block 1150. In other words, even if the water supply operation is set to be performed next to the air blowing operation, the control device 550 adds a standby operation between the air blowing operation and the water supply operation. Therefore, shaking of the water surface can be reduced before the water supply operation is started. Note that instead of adding the standby operation block 1150, a parameter for performing a standby operation may be added to the water supply operation block 1010 so that the standby operation is performed immediately before the water supply operation, or the air blowing operation block 1130 may be added to.

なお、図18において、給水動作のブロック1010の代わりに注水動作のブロック1120や、給水動作のパラメータを含む、撹拌動作のブロック1050、ドラム回転動作1060のブロックが設定されていたとしても同様に、送風動作と給水動作のパラメータを含むブロックとの間に待機動作のブロック1150を追加してもよい。これにより、給水動作が開始される前に水槽502を禁動環境とすることができ、給水動作において効果的に水槽502の水位を検知することができる。 In addition, in FIG. 18, even if a water pouring operation block 1120, a stirring operation block 1050, and a drum rotation operation block 1060, which include water supply operation parameters, are set instead of the water supply operation block 1010, A standby operation block 1150 may be added between blocks including parameters for air blowing operation and water supply operation. Thereby, the water tank 502 can be made into a prohibited environment before the water supply operation is started, and the water level of the water tank 502 can be effectively detected during the water supply operation.

図19は、実施の形態1における実行内容宣言の修正の第8の例を示す。図19では、実行内容宣言において、脱水動作のブロック1070の次に脱水動作とは異なる回転を用いた運転である撹拌動作のブロック1050が実行されることが示されている。これは、第5のルール1403で許容されないため、制御装置550は、ブロック1070の次に実行される順番の制御情報として所定期間(例えば30秒間)何もせずに待機する動作に関するパラメータを含む待機動作のブロック1150を追加する。つまり、脱水動作の次に脱水動作とは異なる回転を用いた撹拌動作が実行されることが設定されていたとしても、制御装置550は、脱水動作と撹拌動作との間に待機動作を追加する。このため、撹拌動作が開始される前に洗濯槽503を停止させることができ、容易に他の回転の撹拌動作に切り替えることができる。なお、待機動作のブロック1150を追加する代わりに、待機動作が撹拌動作の直前に行われるように、待機動作を行うパラメータを撹拌動作のブロック1050に追加してもよいし、脱水動作のブロック1070に追加してもよい。なお、2つのブロックは脱水動作と撹拌動作との組み合わせに適用されることに限らない。撹拌動作、ドラム回転動作および脱水動作のうちの2つの組み合わせに適用されてもよいし、撹拌動作の次に異なる回転の撹拌動作の組み合わせに適用されてもよいし、ドラム回転動作の次に異なる回転のドラム回転動作の組み合わせに適用されてもよいし、脱水動作の次に異なる回転の脱水動作の組み合わせに適用されてもよい。なお、待機動作を追加する代わりに、洗濯槽503の回転を制動する動作を追加することで洗濯槽503の回転を停止させてもよい。 FIG. 19 shows an eighth example of modification of the execution content declaration in the first embodiment. In FIG. 19, the execution content declaration indicates that the block 1070 of the dehydration operation is followed by the block 1050 of the stirring operation, which is an operation using a rotation different from that of the dehydration operation. Since this is not permitted by the fifth rule 1403, the control device 550 performs a standby operation that includes a parameter regarding an operation of waiting without doing anything for a predetermined period (for example, 30 seconds) as control information to be executed next in block 1070. Add action block 1150. In other words, even if it is set that a stirring operation using a rotation different from that of the dehydration operation is performed after the dehydration operation, the control device 550 adds a standby operation between the dehydration operation and the stirring operation. . Therefore, the washing tub 503 can be stopped before the stirring operation starts, and it is possible to easily switch to another rotational stirring operation. Note that instead of adding the standby operation block 1150, parameters for performing the standby operation may be added to the stirring operation block 1050 so that the standby operation is performed immediately before the stirring operation, or the dewatering operation block 1070 may be added to. Note that the two blocks are not limited to being applied to the combination of the dehydration operation and the stirring operation. It may be applied to a combination of two of the stirring operation, drum rotation operation, and dewatering operation, it may be applied to a combination of stirring operations with different rotations next to the stirring operation, or it may be applied to a combination of stirring operations with different rotations next to the stirring operation, or different rotation operations after the drum rotation operation. The present invention may be applied to a combination of rotational drum rotation operations, or may be applied to a combination of a dewatering operation followed by a different rotational dewatering operation. Note that instead of adding the standby operation, the rotation of the washing tub 503 may be stopped by adding an action of braking the rotation of the washing tub 503.

図20は、実施の形態1における実行内容宣言の修正の第9の例を示す。図20では、実行内容宣言において、脱水動作のブロック1070を含むブロック1070Bの次に、脱水動作とは異なる回転を用いた運転である撹拌動作のブロック1050を含むブロック1050Bが実行されることが示されている。ブロック1070Bは、脱水動作のブロック1070の直後に待機するパラメータ1074をさらに含む。また、ブロック1050Bは、撹拌動作のブロック1050の直前に待機するパラメータ1057をさらに含む。このように、ブロック1070Bの次に実行される順番に設定されているブロック1050Bにおいて、パラメータ1074およびパラメータ1057が重複している。この場合、制御装置550は、重複しているパラメータ1074を削除する。なお、制御装置550は、パラメータ1074を削除する代わりにパラメータ1057を削除してもよい。 FIG. 20 shows a ninth example of modification of the execution content declaration in the first embodiment. In FIG. 20, the execution content declaration indicates that after block 1070B including block 1070 for dehydration operation, block 1050B including block 1050 for stirring operation, which is an operation using a rotation different from the dehydration operation, is executed. has been done. Block 1070B further includes a parameter 1074 that waits immediately after block 1070 of the spin operation. Block 1050B further includes a parameter 1057 that waits immediately before block 1050 of the stirring operation. In this way, the parameters 1074 and 1057 are duplicated in block 1050B, which is set to be executed next to block 1070B. In this case, the control device 550 deletes the duplicate parameter 1074. Note that the control device 550 may delete the parameter 1057 instead of deleting the parameter 1074.

ここで、図7の説明に戻る。 Here, we return to the explanation of FIG. 7.

(ステップS217)
デバイス300は、実行前確認の結果をデバイスマネージャ200に送信する。ブロックが変更されている場合には、変更されたブロックがデバイスマネージャ200に送信されてもよい。
(Step S217)
The device 300 sends the results of the pre-execution confirmation to the device manager 200. If the block has been modified, the modified block may be sent to device manager 200.

(ステップS218)
デバイスマネージャ200は、デバイス割り付けの結果をシーケンスマネージャ100に回答する。また、実行前確認においてブロックが変更されている場合には、変更されたブロックを含むアプリケーションがシーケンスマネージャ100に送信されてもよい。
(Step S218)
The device manager 200 replies to the sequence manager 100 with the result of device allocation. Further, if a block has been changed in the pre-execution confirmation, an application including the changed block may be sent to the sequence manager 100.

(ステップS220)
シーケンスマネージャ100は、デバイスマネージャ200からの割付結果通知を受けて、UI400を介してユーザに実行準備完了を通知する。
(Step S220)
The sequence manager 100 receives the allocation result notification from the device manager 200 and notifies the user of completion of execution preparation via the UI 400.

(ステップS222)
UI400は、アプリケーションが実行されるデバイスの一覧を表示するとともに、ユーザからアプリケーション実行の確認の入力を受け付けるためのグラフィカルユーザインタフェース(GUI)を表示する。なお、UI400は、ユーザからデバイスの割り付けの変更を受け付けてもよい。また、UI400は、デバイスの一覧を表示しなくてもよい。
(Step S222)
The UI 400 displays a list of devices on which the application is executed, and also displays a graphical user interface (GUI) for receiving input from the user to confirm execution of the application. Note that the UI 400 may accept changes in device allocation from the user. Further, the UI 400 does not need to display a list of devices.

(ステップS224)
UI400は、ユーザから実行確認の入力を受けて、デバイスマネージャ200にアプリ開始指示を送信する。デバイスマネージャ200は、アプリ開始指示をシーケンスマネージャ100に転送する。
(Step S224)
The UI 400 receives an execution confirmation input from the user and sends an application start instruction to the device manager 200. The device manager 200 transfers the application start instruction to the sequence manager 100.

なお、ステップS220、S222、及びS224は、アプリケーションが実行される前にユーザに改めて情報を提供しているが、ユーザの作業が増える可能性があるため、省略されてもよい。 Note that steps S220, S222, and S224 provide information to the user again before the application is executed, but may be omitted since they may increase the user's work.

以上により、アプリ実行前フェーズF200が終了する。 With the above, the pre-application execution phase F200 ends.

[1.3.3 アプリ実行フェーズF300]
次に、アプリ実行フェーズF300について説明する。
[1.3.3 Application execution phase F300]
Next, the application execution phase F300 will be explained.

(ステップS310)
シーケンスマネージャ100は、アプリ開始指示を受けて、アプリケーションに含まれる複数のブロックの中から最初のブロック(第1ブロック)を選択する。そして、シーケンスマネージャ100は、選択した第1ブロックの実行指示をデバイスマネージャ200に送信する。
(Step S310)
Upon receiving an application start instruction, the sequence manager 100 selects the first block (first block) from among a plurality of blocks included in the application. Then, the sequence manager 100 transmits an instruction to execute the selected first block to the device manager 200.

なお、複数のブロックが連続して動作される場合、シーケンスマネージャ100は、複数のブロックの実行指示をまとめてデバイスマネージャ200に送信してもよい。 Note that when a plurality of blocks are operated continuously, the sequence manager 100 may send execution instructions for the plurality of blocks to the device manager 200 at once.

デバイスマネージャ200は、シーケンスマネージャ100から受信した第1ブロックの実行指示に基づいて、第1ブロックに割り付けられたデバイス300に第1ブロックの実行指示を送信する。 Based on the first block execution instruction received from the sequence manager 100, the device manager 200 transmits the first block execution instruction to the device 300 allocated to the first block.

(ステップS312)
デバイスマネージャ200は、第1ブロックの実行指示を受けて、各デバイスのスケジュール(使用予定時間)を更新する。
(Step S312)
The device manager 200 receives the execution instruction of the first block and updates the schedule (scheduled usage time) of each device.

(ステップS314)
デバイス300は、第1ブロックの実行指示を受けて、第1ブロックを実行する。
(Step S314)
The device 300 receives the instruction to execute the first block and executes the first block.

(ステップS316)
デバイス300は、第1ブロックの実行が完了したときに、完了通知をデバイスマネージャ200に送信する。なお、第1ブロックの実行中にエラーが発生した場合には、デバイス300は、エラー情報をデバイスマネージャ200に送信してもよい。また、デバイス300は、第1ブロックの実行中に、イベント情報をデバイスマネージャ200に送信してもよい。イベント情報としては、例えば、センサの出力値又は機器操作等を用いることができるが、これに限定されない。デバイスマネージャ200は、デバイス300から受信した完了通知及び/又は各種情報をシーケンスマネージャ100に転送する。
(Step S316)
The device 300 sends a completion notification to the device manager 200 when the execution of the first block is completed. Note that if an error occurs during execution of the first block, the device 300 may send error information to the device manager 200. Further, the device 300 may transmit event information to the device manager 200 during execution of the first block. As the event information, for example, a sensor output value or a device operation can be used, but the event information is not limited thereto. The device manager 200 transfers the completion notification and/or various information received from the device 300 to the sequence manager 100.

(ステップS318)
シーケンスマネージャ100は、第1ブロックの完了通知を受けて、アプリケーションの進捗を更新し、次のブロック(第2ブロック)を選択する。また、シーケンスマネージャ100は、エラー情報を受信した場合に、エラー情報に対応する処理(例えば、1つ前のブロックに戻る、最初のブロックに戻る、待機等)を実行する。エラー情報に対応する処理の情報は、例えば、シーケンスマネージャ100に予め保持されてもよいし、UI400を介してユーザから受け付けられてもよい。また、シーケンスマネージャ100は、イベント情報を受信した場合に、イベント情報に対応する処理を実行する。例えば、イベント情報に水位センサの出力値が含まれる場合、シーケンスマネージャ100は、実行中のブロックに含まれる水位を表示するための水位パラメータを更新する。
(Step S318)
Upon receiving the notification of completion of the first block, the sequence manager 100 updates the progress of the application and selects the next block (second block). Furthermore, when receiving error information, the sequence manager 100 executes processing corresponding to the error information (for example, returning to the previous block, returning to the first block, waiting, etc.). Information on the process corresponding to the error information may be held in advance in the sequence manager 100, for example, or may be received from the user via the UI 400. Further, when receiving event information, the sequence manager 100 executes processing corresponding to the event information. For example, if the event information includes the output value of a water level sensor, the sequence manager 100 updates the water level parameter for displaying the water level included in the block being executed.

(ステップS320)
シーケンスマネージャ100は、選択した第2ブロックの実行指示をデバイスマネージャ200に送信する。
(Step S320)
The sequence manager 100 transmits an instruction to execute the selected second block to the device manager 200.

なお、第2ブロックの実行指示は、第1ブロックの実行指示(S310)と同一のデバイスに対する指示でもよいし、異なるデバイスへの指示でもよい。 Note that the second block execution instruction may be directed to the same device as the first block execution instruction (S310), or may be directed to a different device.

なお、第2ブロックの実行指示は、第1ブロックの実行指示と同様に、複数のブロックの実行指示をまとめてデバイスマネージャ200に送信してもよい。 Note that the execution instruction for the second block may be transmitted to the device manager 200 as a set of execution instructions for a plurality of blocks, similar to the execution instruction for the first block.

以降の処理は第1ブロックのための処理(S312~S318)と同様であるので、図示及び説明を省略する。アプリケーションに含まれるブロックが順に実行され、最後のブロックの実行が完了すれば、アプリ実行フェーズF300が終了する。 The subsequent processing is the same as the processing for the first block (S312 to S318), so illustration and description will be omitted. The blocks included in the application are executed in order, and when the execution of the last block is completed, the application execution phase F300 ends.

なお、ここでは、ブロックの実行は1つずつ順に指示されているが、これに限定されない。例えば、同一のデバイスが割り付けられた複数のブロックの実行は、まとめて指示されてもよい。その場合、あらかじめ各ブロックが機能実行のパラメータ範囲を満たすかの確認を行ったり、変更に対応するブロックを実行前にデバイス側にダウンロードしたりしてもよい。また、例えば、複数のデバイスに対して各々のブロック実行指示を行ってもよい。 Note that although the blocks are instructed to be executed one by one here, the execution of the blocks is not limited to this. For example, execution of multiple blocks to which the same device is allocated may be collectively instructed. In that case, it may be confirmed in advance whether each block satisfies the parameter range for function execution, or the block corresponding to the change may be downloaded to the device side before execution. Further, for example, each block execution instruction may be given to a plurality of devices.

[1.4 効果など]
以上のように、本実施の形態では、ブロックを含むアプリケーションとルールデータベースとにより、多様多種なアプリケーションを開発可能な環境を提供し、その環境下で自由に開発したアプリケーションに対して、物理的に運動するアクチュエータ22、又は熱エネルギーを出力する加熱器23の安全な駆動することを可能にしている。言い換えると、アプリケーションを自由に開発可能な環境を提供するとともに、アプリケーションと独立して安全性を担保するための機能を提供できる。その結果、例えば、自由度の高い多様多種なアプリケーションの開発と、安全性を担保するためのルールデータベースの開発とを並行して作成することが可能になり、多様多種なアプリケーションを早期に開発することが可能にすることができる。
[1.4 Effects etc.]
As described above, in this embodiment, an environment in which a wide variety of applications can be developed is provided using applications including blocks and a rule database, and applications developed freely in this environment are physically This makes it possible to safely drive the moving actuator 22 or the heater 23 that outputs thermal energy. In other words, it provides an environment in which applications can be developed freely, and also provides functions to ensure security independently of the applications. As a result, for example, it becomes possible to develop a wide variety of applications with a high degree of freedom and to create a rule database to ensure safety in parallel, allowing for the early development of a wide variety of applications. can be made possible.

また、アプリケーションの提供後においても、ルールデータベースを変更することで、より安全性を担保したアプリケーションへの変更も可能になる。また、事前に製造者が想定しない状況の改善が必要になった場合においても、多様多種なアプリケーション自体を変更せずとも、アプリケーションとは独立して、ルールデータベースを規定していることで、ルールデータベースを更新することで、全てのアプリケーションへの対応が可能になる。 Furthermore, even after an application has been provided, by changing the rule database, it is possible to change the application to one that ensures more safety. In addition, even if it becomes necessary to improve a situation that the manufacturer has not anticipated in advance, the rule database can be defined independently of the application, without having to change the various applications themselves. By updating the database, it becomes compatible with all applications.

アプリケーション自体を変更せずに、アプリケーションが実行されたときの状態を検知することでエラー処理のルールベースを保持する対処方法も考えられる。しかし、この対処方法は、常にエラーの状態になった後に対処することになり、家電に負荷がかかる状況、又は安全性が担保できない状況になることを許容することを意味する。そこで、アプリケーションとは独立にルールデータベースを保有し、ルールデータを参照してアプリケーションの内容を変更することで、安全性を担保することを可能にしている。 Another possible solution is to maintain the error handling rule base by detecting the state of the application when it is executed, without changing the application itself. However, this method of dealing with the problem always involves dealing with it after the error has occurred, which means allowing a situation where the household appliances are overloaded or a situation where safety cannot be guaranteed. Therefore, by maintaining a rule database independent of the application and changing the application content by referring to the rule data, it is possible to ensure safety.

本実施の形態における洗濯機500は、クラウドサーバ10(外部機器)と通信可能な洗濯機500である。洗濯機500は、クラウドサーバ10から実行内容宣言(洗濯情報)を受信する通信部570と、洗濯情報に基づいて、洗濯物に対して、洗濯に関する運転を行う洗濯機能部と、洗濯機能部を制御する制御装置550とを備える。実行内容宣言は、それぞれが洗濯機能部の運転を制御するパラメータに関する制御情報である複数のブロック、及び、複数のブロックを実行する順番に関する順番情報を含む。制御装置550は、洗濯の順番に関するルールに基づいて実行内容宣言を修正し、修正後の実行内容宣言に含まれる制御情報を実行することで実行内容宣言に基づく運転を洗濯機能部に実行させる。 The washing machine 500 in this embodiment is a washing machine 500 that can communicate with the cloud server 10 (external device). The washing machine 500 includes a communication unit 570 that receives execution content declaration (washing information) from the cloud server 10, a washing function unit that performs washing-related operations on laundry based on the washing information, and a washing function unit. and a control device 550 for controlling. The execution content declaration includes a plurality of blocks, each of which is control information regarding parameters for controlling the operation of the washing function section, and order information regarding the order in which the plurality of blocks are executed. The control device 550 modifies the execution content declaration based on the rules regarding the order of washing, and causes the washing function unit to execute the operation based on the execution content declaration by executing the control information included in the modified execution content declaration.

これによれば、複数のブロックで規定されたアプリケーションに基づいて洗濯機能部を駆動させることができる。従って、洗濯機500の制御を抽象化したブロックを用いたアプリケーションの開発が可能となり、多種多彩なアプリケーションを製造者だけではなく、サードパーティも開発することができ、これらのアプリケーションを洗濯機500で簡単に実行することが可能となる。さらに、アプリケーションに基づいて洗濯機能部が駆動される前に、許容されない実行内容宣言を修正することができる。したがって、洗濯機能部が許容されない順番の動作を実行することを抑制することができる。つまり、もしアプリケーション開発者が誤って洗濯機能部が許容されない順番の動作を実行するよう指示を行った場合でも、洗濯機500を安全に制御することができないアプリケーションが実行されることを抑制することができる。また、洗濯機500が非効率的に動作することを抑制することができる。したがって、アプリケーション開発者は、洗濯機能部の安全性の担保よりもユーザに適することを重視したアプリケーションを作成した場合でも、アプリケーションで制御される洗濯機500の安全性を向上させることができる。また、洗濯機500の動作効率を向上させることができ、消費電力を低減することができる。 According to this, the washing function section can be driven based on applications defined by a plurality of blocks. Therefore, it is possible to develop applications using blocks that abstract the control of the washing machine 500, and not only manufacturers but also third parties can develop a wide variety of applications. It can be easily executed. Additionally, unacceptable performance declarations can be modified before the laundry function is activated based on the application. Therefore, it is possible to prevent the washing function section from performing operations in an unacceptable order. In other words, even if an application developer mistakenly instructs the washing function unit to perform operations in an unacceptable order, execution of an application that cannot safely control the washing machine 500 can be inhibited. Can be done. Further, it is possible to prevent washing machine 500 from operating inefficiently. Therefore, even when an application developer creates an application that emphasizes suitability for the user rather than ensuring the safety of the washing function section, it is possible to improve the safety of the washing machine 500 controlled by the application. Moreover, the operating efficiency of washing machine 500 can be improved and power consumption can be reduced.

また例えば、制御装置550は、実行内容宣言に含まれる第1ブロック、及び、順番情報において第1ブロックの次に実行される順番に設定されている第2ブロックの実行がルールで許容されない場合、実行内容宣言に、第1ブロックの次に実行される順番の制御情報として第3ブロックを追加してもよい。 For example, if the control device 550 does not allow execution of the first block included in the execution content declaration and the second block that is set in the order of execution after the first block in the order information, The third block may be added to the execution content declaration as control information for the order of execution after the first block.

これによれば、連続して実行される2つのブロックが許容されない場合、当該2つのブロックの間の順番に第3ブロックを追加することができるので、洗濯機能部が許容されない順番の2つのブロックの動作を実行することを防止することができる。 According to this, if two blocks that are executed consecutively are not allowed, a third block can be added in the order between the two blocks, so that the washing function unit can replace the two blocks in the order that is not allowed. can be prevented from performing the following actions.

また例えば、制御装置550は、実行内容宣言に含まれる第1ブロック、及び、順番情報において第1ブロックの次に実行される順番に設定されている第2ブロックの実行がルールで許容されない場合、第1ブロックに含まれるパラメータに関する情報、又は、第2ブロックに含まれるパラメータに関する情報を修正してもよい。 For example, if the control device 550 does not allow execution of the first block included in the execution content declaration and the second block that is set in the order of execution after the first block in the order information, Information regarding parameters included in the first block or information regarding parameters included in the second block may be modified.

これによれば、連続して実行される2つのブロックが許容されない場合、当該2つのブロック内のいずれかに含まれるパラメータに関する情報を修正することができるので、洗濯機能部が許容されない順番の2つのブロックの動作を実行することを防止することができる。 According to this, if two blocks that are executed consecutively are not allowed, the information regarding the parameters included in either of the two blocks can be modified, so that the washing function section It is possible to prevent one block of operations from being executed.

また例えば、制御装置550は、実行内容宣言に含まれる第1ブロック、及び、順番情報において第1ブロックの次に実行される順番に設定されている第2ブロックの実行がルールで許容されない場合、第2ブロックの実行を制限してもよい。 For example, if the control device 550 does not allow execution of the first block included in the execution content declaration and the second block that is set in the order of execution after the first block in the order information, Execution of the second block may be restricted.

これによれば、連続して実行される2つのブロックが許容されない場合、第2ブロックの実行を制限することができるので、洗濯機能部が許容されない順番の2つのブロックの動作を実行することを防止することができる。 According to this, when two blocks to be executed consecutively are not allowed, execution of the second block can be restricted, so that the washing function section does not execute the operations of the two blocks in the order that is not allowed. It can be prevented.

また例えば、第1のルールでは、第1ブロックが洗濯機500の水槽502への給水に関するパラメータを含み、かつ、第2ブロックが禁水環境で実行される運転を制御するパラメータを含むことが許容されなくてもよい。例えば、禁水環境で実行される運転は、水槽502に水が貯められているときに実行されることが許容されない運転を含んでもよい。このため、水槽502に水がある状態で実行されても十分な効果が得られない第2ブロックに基づく運転が実行されることを防止することができる。これにより、無駄な運転を抑制でき、消費電力を低減することができる。 For example, in the first rule, it is permissible for the first block to include parameters related to water supply to the water tank 502 of the washing machine 500, and for the second block to include parameters for controlling operations performed in a water-prohibited environment. It doesn't have to be done. For example, operations performed in a water-prohibited environment may include operations that are not allowed to be performed while water is stored in water tank 502. Therefore, it is possible to prevent the operation based on the second block from being executed, which would not produce sufficient effects even if executed with water in the water tank 502. Thereby, wasteful operation can be suppressed and power consumption can be reduced.

また例えば、第2のルールでは、第1ブロックが洗濯機500の水槽502内の加熱に関するパラメータを含み、かつ、第2ブロックが禁熱環境で実行される運転を制御するパラメータを含むことが許容されなくてもよい。例えば、禁熱環境で実行される運転は、水槽502内の温度が所定の温度以上のときに実行されることが許容されない運転を含んでもよい。このため、水槽502内の温度が所定の温度以上であるときに実行されることを抑制できるため、水槽502内の高温環境が洗濯機500の外部に悪影響を与えることを低減することができ、安全性を担保することができる。 For example, in the second rule, it is allowed that the first block includes parameters related to heating in the water tank 502 of the washing machine 500, and the second block includes parameters for controlling the operation performed in a heat-free environment. It doesn't have to be done. For example, the operation performed in a heat-free environment may include an operation that is not allowed to be performed when the temperature in the water tank 502 is equal to or higher than a predetermined temperature. Therefore, it is possible to suppress execution when the temperature inside the water tank 502 is higher than a predetermined temperature, so it is possible to reduce the adverse effect of the high temperature environment inside the water tank 502 on the outside of the washing machine 500. Safety can be guaranteed.

また例えば、第3のルールでは、第1ブロックが水が貯められている洗濯槽503の回転に関するパラメータを含み、かつ、第2ブロックが禁動環境で実行される運転を制御するパラメータを含むことが許容されなくてもよい。例えば、禁動環境で実行される運転は、洗濯槽503内の水面を動かすことが許容されない運転を含んでもよい。このため、水面の揺れを低減した状態で第2ブロックの運転を制御することができるため、効果的に第2ブロックの運転を制御することができる。 For example, in the third rule, the first block includes parameters related to the rotation of the washing tub 503 in which water is stored, and the second block includes parameters for controlling the operation performed in a prohibited environment. may not be allowed. For example, an operation performed in a prohibited environment may include an operation in which movement of the water surface in the washing tub 503 is not allowed. Therefore, since the operation of the second block can be controlled while the shaking of the water surface is reduced, the operation of the second block can be effectively controlled.

また例えば、第4のルールでは、第1ブロックが洗濯機500の洗濯槽503内への送風に関するパラメータを含み、かつ、第2ブロックが禁動環境で実行される運転を制御するパラメータを含むことが許容されなくてもよい。このため、水面の揺れを低減した状態で第2ブロックの運転を制御することができるため、効果的に第2ブロックの運転を制御することができる。 For example, in the fourth rule, the first block includes parameters related to air blowing into the washing tub 503 of the washing machine 500, and the second block includes parameters for controlling operations performed in a prohibited environment. may not be allowed. Therefore, since the operation of the second block can be controlled while the shaking of the water surface is reduced, the operation of the second block can be effectively controlled.

また例えば、第5のルールでは、第1ブロックが洗濯機500の洗濯槽503を第1の回転で回転させるパラメータを含み、かつ、第2ブロックが第1の回転とは異なる第2の回転で洗濯槽503を回転させるパラメータを含むことが許容されなくてもよい。例えば、第1の回転における第1回転速度は、第2の回転の第2回転速度と異なっていてもよい。また例えば、第1の回転の向きは、第2の回転の向きと異なっていてもよい。このため、異なる回転の運転が連続して実行されることを抑制でき、効果的に洗濯槽503の回転を切り替えることができる。 For example, in the fifth rule, the first block includes a parameter for rotating the washing tub 503 of the washing machine 500 in a first rotation, and the second block includes a parameter for rotating the washing tub 503 of the washing machine 500 in a second rotation different from the first rotation. Including a parameter for rotating the washing tub 503 may not be allowed. For example, the first rotational speed during the first rotation may be different from the second rotational speed during the second rotation. Also, for example, the first direction of rotation may be different from the second direction of rotation. For this reason, it is possible to suppress the operation of different rotations from being performed continuously, and it is possible to effectively switch the rotation of the washing tub 503.

また例えば、制御装置550は、第1ブロックが洗濯機500の水槽502への給水に関するパラメータを含み、かつ、第2ブロックが禁水環境で実行される運転を制御するパラメータを含む場合、第1のルールに基づいて、実行内容宣言に、第1ブロックと第2ブロックとの間に実行される順番の制御情報として、水槽502からの排水に関するパラメータを含む第3ブロックを追加する。このため、禁水環境で実行される運転が開始される前に排水することで水槽502を禁水環境とすることができ、効果的に第2ブロックの動作を実行することができる。 Further, for example, if the first block includes parameters related to water supply to the water tank 502 of the washing machine 500 and the second block includes parameters for controlling the operation performed in a water-prohibited environment, the control device 550 controls the first block. Based on the rule, a third block including parameters related to drainage from the water tank 502 is added to the execution content declaration as control information for the order of execution between the first block and the second block. Therefore, by draining water before starting an operation performed in a water-free environment, the water tank 502 can be made into a water-free environment, and the operation of the second block can be effectively executed.

また例えば、制御装置550は、第1ブロックが洗濯機500の水槽502への給水に関するパラメータを含み、かつ、第2ブロックが禁水環境で実行される運転を制御するパラメータを含む場合、第1のルールに基づいて、禁水環境で実行される運転を制御するパラメータの直前に水槽502からの排水に関するパラメータを追加するように、第2ブロックを修正してもよい。このため、禁水環境で実行される運転が開始される前に排水することで水槽502を禁水環境とすることができ、効果的に第2ブロックの動作を実行することができる。 Further, for example, if the first block includes parameters related to water supply to the water tank 502 of the washing machine 500 and the second block includes parameters for controlling the operation performed in a water-prohibited environment, the control device 550 controls the first block. Based on the rule, the second block may be modified to add a parameter regarding drainage from the water tank 502 immediately before the parameter controlling the operation performed in a water-prohibited environment. Therefore, by draining water before starting an operation performed in a water-free environment, the water tank 502 can be made into a water-free environment, and the operation of the second block can be effectively executed.

また例えば、制御装置550は、第1ブロックが洗濯機500の水槽502内の加熱に関するパラメータを含み、かつ、第2ブロックが禁熱環境で実行される運転を制御するパラメータを含む場合、第2のルールに基づいて、実行内容宣言に、第1ブロックと第2ブロックとの間に実行される順番の制御情報として、水槽502の放熱に関するパラメータを含む第3ブロックを追加してもよい。このため、禁熱環境で実行される運転が開始される前に放熱することで水槽502の温度を低下させて禁熱環境とすることができ、効果的に第2ブロックの動作を実行することができる。 Further, for example, when the first block includes parameters related to heating in the water tank 502 of the washing machine 500 and the second block includes parameters for controlling the operation performed in a heat-free environment, the control device 550 controls the second block. Based on the rule, a third block including parameters related to heat radiation of the water tank 502 may be added to the execution content declaration as control information for the order of execution between the first block and the second block. Therefore, by dissipating heat before starting the operation performed in a heat-free environment, the temperature of the water tank 502 can be lowered to create a heat-free environment, and the operation of the second block can be effectively executed. Can be done.

また例えば、制御装置550は、第1ブロックが洗濯機500の水槽502内の加熱に関するパラメータを含み、かつ、第2ブロックが禁熱環境で実行される運転を制御するパラメータを含む場合、第2のルールに基づいて、禁熱環境で実行される運転を制御するパラメータの直前に水槽502の放熱に関するパラメータを追加するように、第2ブロックを修正してもよい。このため、禁熱環境で実行される運転が開始される前に放熱することで水槽502の温度を低下させて禁熱環境とすることができ、効果的に第2ブロックの動作を実行することができる。 Further, for example, when the first block includes parameters related to heating in the water tank 502 of the washing machine 500 and the second block includes parameters for controlling the operation performed in a heat-free environment, the control device 550 controls the second block. Based on the rule, the second block may be modified to add a parameter related to heat radiation of the water tank 502 immediately before the parameter controlling the operation performed in a heat-free environment. Therefore, by dissipating heat before starting the operation performed in a heat-free environment, the temperature of the water tank 502 can be lowered to create a heat-free environment, and the operation of the second block can be effectively executed. Can be done.

また例えば、制御装置550は、ルールに基づき、実行内容宣言に含まれる第1ブロック、及び、順番情報において第1ブロックの次に実行される順番に設定されている第2ブロックが重複する場合、(i)第1ブロックもしくは第2ブロックを削除する、又は、(ii)第1ブロックに含まれるパラメータに関する情報もしくは第2ブロックに含まれるパラメータに関する情報を削除してもよい。このため、重複している動作のブロックまたはパラメータを削除するため、無駄な動作を実行することを低減することができる。よって、消費電力を低減することができる。 For example, the control device 550 may control, based on the rule, if the first block included in the execution content declaration and the second block set in the order information to be executed next to the first block overlap, (i) The first block or the second block may be deleted, or (ii) the information regarding the parameters included in the first block or the information regarding the parameters included in the second block may be deleted. Therefore, since blocks or parameters of duplicate operations are deleted, it is possible to reduce the execution of unnecessary operations. Therefore, power consumption can be reduced.

また例えば、本実施の形態における装置20において、制御部24は、第1のルールを参照して、第1パラメータ範囲に含まれるパラメータを、アクチュエータ22及び加熱器23の少なくとも1つの駆動が許容される範囲に含まれるパラメータに変更することで、アプリケーションを変更してもよい。 For example, in the device 20 according to the present embodiment, the control unit 24 refers to the first rule and sets the parameters included in the first parameter range so that at least one of the actuator 22 and the heater 23 is allowed to be driven. The application may be changed by changing the parameters to fall within the specified range.

これによれば、許容されない第1パラメータ範囲に含まれるパラメータを許容される範囲に含まれるパラメータに変更することができるので、例えば、アプリケーションの開発者は、アクチュエータ22及び加熱器23が安全に駆動することを考慮する優先度を下げて自由にアプリケーションを開発ができ、さらにアクチュエータ22及び加熱器23を制御する装置20に組み込まれるソフトウェアの開発者は、アプリケーション一つ一つの安全性を毎回チェックすることなくブロックを実行でき、アクチュエータ22及び/又は加熱器23が許容されないパラメータで駆動されることを防止することができる。 According to this, a parameter included in the unacceptable first parameter range can be changed to a parameter included in the acceptable range, so that, for example, an application developer can safely drive the actuator 22 and heater 23. Applications can be developed freely by lowering the priority of considering The block can be executed without any error, and it is possible to prevent the actuator 22 and/or the heater 23 from being driven with unacceptable parameters.

また例えば、本実施の形態における装置20において、制御部24は、第1のルールを参照して、第1パラメータ範囲に含まれるパラメータを、アクチュエータ22及び加熱器23の少なくとも1つの駆動が許容される範囲に含まれるパラメータに変更し、かつ、複数のブロックに新たなブロックを追加することで、アプリケーションを変更してもよい。 For example, in the device 20 according to the present embodiment, the control unit 24 refers to the first rule and sets the parameters included in the first parameter range so that at least one of the actuator 22 and the heater 23 is allowed to be driven. The application may be changed by changing the parameters to fall within the specified range and adding a new block to the plurality of blocks.

これによれば、許容されない第1パラメータ範囲に含まれるパラメータを許容される範囲に含まれるパラメータに変更することができるので、アクチュエータ22及び/又は加熱器23が許容されないパラメータで駆動されることを防止することができる。さらに、新たなブロックを追加することもできるので、パラメータの変更によって低下した機能を新たなブロックで補完することも可能となる。 According to this, a parameter included in the unacceptable first parameter range can be changed to a parameter included in the acceptable range, so that it is possible to prevent the actuator 22 and/or heater 23 from being driven with unacceptable parameters. It can be prevented. Furthermore, since new blocks can be added, it is also possible to supplement functions degraded due to parameter changes with new blocks.

また例えば、本実施の形態における装置20において、制御部24は、第1パラメータ範囲に含まれるパラメータを有するブロックを削除することで、アプリケーションを変更してもよい。 For example, in the device 20 according to the present embodiment, the control unit 24 may change the application by deleting a block having a parameter included in the first parameter range.

これによれば、許容されない第1パラメータ範囲に含まれるパラメータを有するブロックを削除することができるので、アクチュエータ22及び/又は加熱器23が許容されないパラメータで駆動されることを防止することができる。例えば、アクチュエータ22及び加熱器23が、アプリケーション開発者が指定したパラメータをそもそも実行することができない場合に、削除を行うことで、デバイスが混乱することなく制御を行うことができる。一方で、削除された旨をユーザに通知を行ってもよい。 According to this, blocks having parameters included in the unacceptable first parameter range can be deleted, so it is possible to prevent the actuator 22 and/or the heater 23 from being driven with unacceptable parameters. For example, if the actuator 22 and the heater 23 cannot execute the parameters specified by the application developer, by deleting them, the device can be controlled without becoming confused. On the other hand, the user may be notified of the deletion.

また例えば、本実施の形態における装置20において、制御部24は、第1のルールを参照して、複数のブロックに含まれる複数のパラメータの各々が、第1パラメータ範囲に含まれるか否かを判定し、パラメータが第1パラメータ範囲に含まれると判定された場合、当該パラメータを有するブロックを変更してもよい。 For example, in the apparatus 20 according to the present embodiment, the control unit 24 refers to the first rule and determines whether each of the plurality of parameters included in the plurality of blocks is included in the first parameter range. If it is determined that the parameter is included in the first parameter range, the block having the parameter may be changed.

これによれば、より確実に、許容されない第1パラメータ範囲に含まれるパラメータを有するブロックを変更することができる。 According to this, a block having a parameter included in the unacceptable first parameter range can be changed more reliably.

また例えば、本実施の形態における装置20において、アプリケーションは、複数のブロックのそれぞれが実行される順番情報と、複数のブロックのそれぞれが実行されるタイミングの情報とを含んでもよい。各ブロックのタイミングの情報は、例えば、当該ブロックの開始タイミングと、他のブロック(例えば1番目のブロック)の開始又は終了のタイミングとの間の時間を示す。 For example, in the device 20 according to the present embodiment, the application may include information on the order in which each of the plurality of blocks is executed and information on the timing at which each of the plurality of blocks is executed. The timing information for each block indicates, for example, the time between the start timing of the block and the start or end timing of another block (for example, the first block).

これによれば、アプリケーションは、順番及びタイミングの情報を含むことができ、各ブロックの持つパラメータ範囲を確認しながら、シーケンシャルに判断して実行することができる。 According to this, the application can include order and timing information, and can be sequentially determined and executed while checking the parameter range of each block.

また例えば、本実施の形態における装置20において、第1パラメータ範囲は、アクチュエータ22及び加熱器23の少なくとも1つを耐久温度に到達させるパラメータの範囲であってもよい。 For example, in the device 20 according to the present embodiment, the first parameter range may be a parameter range that causes at least one of the actuator 22 and the heater 23 to reach an endurance temperature.

これによれば、アプリケーションが実行されたときにアクチュエータ22及び/又は加熱器23が耐久温度に到達することを抑制することができ、アプリケーションで制御される装置20の安全性を向上させることができる。 According to this, it is possible to suppress the actuator 22 and/or the heater 23 from reaching the durable temperature when the application is executed, and it is possible to improve the safety of the device 20 controlled by the application. .

また例えば、本実施の形態における装置20は、内部空間を有する筐体21を備えてもよく、第1パラメータ範囲は、内部空間を耐久温度に到達させるパラメータの範囲であってもよい。 For example, the device 20 in this embodiment may include a casing 21 having an internal space, and the first parameter range may be a parameter range that causes the internal space to reach an endurance temperature.

これによれば、アプリケーションが実行されたときに筐体21の内部空間が耐久温度に到達することを抑制することができ、アプリケーションで制御される装置20の安全性を向上させることができる。 According to this, it is possible to suppress the internal space of the casing 21 from reaching the durable temperature when the application is executed, and it is possible to improve the safety of the device 20 controlled by the application.

(実施の形態1の変形例)
なお、上記実施の形態1では、システム1の処理について図7を参照しながら説明したが、処理の流れについてはこれに限定されない。特に、詳細に説明している実行前確認(S216)について、実行前確認が行われるタイミング及び主体となるモジュールはこれに限定されない。そこで、システム1のシーケンス図のいくつかの変形例について、図21A~図21Eを参照しながら具体的に説明する。
(Modification of Embodiment 1)
Note that in the first embodiment, the processing of the system 1 has been described with reference to FIG. 7, but the flow of the processing is not limited thereto. In particular, regarding the pre-execution confirmation (S216) described in detail, the timing at which the pre-execution confirmation is performed and the main module are not limited to this. Therefore, some modified examples of the sequence diagram of the system 1 will be specifically explained with reference to FIGS. 21A to 21E.

図21Aは、実施の形態1の変形例1におけるシステム1のシーケンス図である。図21Aでは、実行前確認(S216)は、デバイス300が実行指示を受けて(S310)ブロックを実行する(S314)直前に、デバイス300によって行われる。 FIG. 21A is a sequence diagram of the system 1 in the first modification of the first embodiment. In FIG. 21A, the pre-execution confirmation (S216) is performed by the device 300 immediately before the device 300 receives an execution instruction (S310) and executes the block (S314).

これにより、デバイス300に組み込まれるソフトウェアは、ブロックの実行直前に実行前確認を行うというシンプルな構成とすることができる。すなわち、ステップS215及びS217を省略することができる。その結果、それらの処理を行うための機能及び通信APIをデバイス300に組み込む必要がなくなり、デバイス300に搭載されるマイコンの使用メモリ等を低減することが可能となる。 As a result, the software installed in the device 300 can have a simple configuration that performs pre-execution confirmation immediately before executing a block. That is, steps S215 and S217 can be omitted. As a result, there is no need to incorporate functions and communication APIs for performing these processes into the device 300, and it becomes possible to reduce the memory used by the microcomputer installed in the device 300.

なお、実行前確認の結果がデバイスマネージャ200及び/又はUI400に通知されてもよい。例えば、実行前確認を行った結果としてパラメータの変更又はブロックの実行停止指示が行われた場合に、デバイスマネージャ200又はUI400に確認結果が通知されてもよい。 Note that the result of the pre-execution confirmation may be notified to the device manager 200 and/or the UI 400. For example, if a parameter change or block execution stop instruction is issued as a result of pre-execution confirmation, the device manager 200 or UI 400 may be notified of the confirmation result.

図21Bは、実施の形態1の変形例2におけるシステム1のシーケンス図である。図21Bでは、実行前確認(S216)は、デバイスマネージャ200が割付結果通知(S218)を行う際に、そのままデバイスマネージャ200によって行われる。 FIG. 21B is a sequence diagram of the system 1 in the second modification of the first embodiment. In FIG. 21B, the pre-execution confirmation (S216) is directly performed by the device manager 200 when the device manager 200 notifies the allocation result (S218).

これにより、デバイス300に組み込まれるソフトウェアは、実行前確認(S216)の機能を含まなくてもよい。したがって、デバイス300が有するメモリの使用を抑えることができ、デバイス300のコストダウンにつながる。 Accordingly, the software installed in the device 300 does not need to include the pre-execution confirmation (S216) function. Therefore, the use of memory included in the device 300 can be suppressed, leading to cost reduction of the device 300.

また、上記実施の形態1では、デバイス300によるブロック実行(S314)について、クラウドサーバ10に実装されたシーケンスマネージャ100からの指示によって行われる処理の流れを説明したが、ブロック実行(S314)が行われる形態についても、これに限定されない。 Furthermore, in the first embodiment described above, regarding block execution (S314) by the device 300, the flow of processing performed based on instructions from the sequence manager 100 implemented in the cloud server 10 has been described. The form in which it is displayed is not limited to this.

例えば、シーケンスマネージャ100からの通知内容を、デバイス300内のメモリに保存し、装置20が有するUI又は端末30が有するUI400を通じたユーザからの直接の指示により、ブロックが実行されてもよい。すなわち、アプリケーションをデバイス内にダウンロードしておいて、ユーザが任意のタイミングでアプリケーションを実行する形態としてもよい。 For example, the content of the notification from the sequence manager 100 may be stored in the memory within the device 300, and the block may be executed in response to a direct instruction from the user through the UI included in the device 20 or the UI 400 included in the terminal 30. That is, the application may be downloaded into the device and the user may execute the application at any timing.

図21Cは、実施の形態1の変形例3におけるシステム1のシーケンス図である。図21Cでは、アプリ実行フェーズF300において、シーケンスマネージャ100からデバイス300に、デバイス300で実行される1以上のブロックが通知される(S310C)。そして、デバイス300は、通知された1以上のブロックをメモリに保存する(S311C)。 FIG. 21C is a sequence diagram of the system 1 in the third modification of the first embodiment. In FIG. 21C, in the application execution phase F300, the sequence manager 100 notifies the device 300 of one or more blocks to be executed by the device 300 (S310C). Then, the device 300 stores the notified one or more blocks in memory (S311C).

その後、デバイス300は、ユーザから、保存された1以上のブロックの実行の指示を受け付け(S312C)、1以上のブロックを第1ブロックから順に実行する(S314)。 Thereafter, the device 300 receives an instruction to execute one or more stored blocks from the user (S312C), and executes the one or more blocks in order from the first block (S314).

以上のように、ブロックをデバイス300に保存することで、デバイスマネージャ200とデバイス300との通信を介さずにデバイス300の制御が行えるため、クラウドサーバ10と装置20間の通信が不安定になることによってデバイス300の動作が停止したり遅延が生じたりするリスクを低減することができる。そのため、本変形例は、クラウドサーバ10との通信の信頼性が低い環境において、及び/又は、アプリケーション実行中のデバイスの動作停止や遅延が許容されないデバイス300において、より効果的である。 As described above, by storing blocks in the device 300, the device 300 can be controlled without communication between the device manager 200 and the device 300, which makes the communication between the cloud server 10 and the device 20 unstable. This can reduce the risk that the operation of the device 300 will stop or be delayed. Therefore, this modification is more effective in an environment where communication with the cloud server 10 is unreliable, and/or in the device 300 where stopping or delaying the operation of the device during application execution is unacceptable.

なお、変形例3においても、実施の形態1と同様に、実行前確認(S216)は重要な意味を有するが、実行前確認(S216)が行われるタイミングや主体となるモジュールは図21Cに限定されない。すなわち、変形例3は、変形例1又は2と組み合わされてもよい。 Note that in Modification 3, as in Embodiment 1, the pre-execution confirmation (S216) has an important meaning, but the timing at which the pre-execution confirmation (S216) is performed and the main module are limited to FIG. 21C. Not done. That is, modification 3 may be combined with modification 1 or 2.

図21Dは、実施の形態1の変形例4におけるシステム1のシーケンス図である。変形例4は、変形例1と変形例3との組み合わせに相当する。変形例4では、図21Dに示すように、実行前確認(S216)は、デバイス300が実行指示を受けて(S312C)ブロックを実行する(S314)直前にデバイス300によって行われる。 FIG. 21D is a sequence diagram of the system 1 in the fourth modification of the first embodiment. Modification 4 corresponds to a combination of Modification 1 and Modification 3. In modification 4, as shown in FIG. 21D, the pre-execution confirmation (S216) is performed by the device 300 immediately before the device 300 receives the execution instruction (S312C) and executes the block (S314).

ブロックをデバイス300にダウンロードしておいて、ユーザが任意のタイミングでブロックを実行する場合、ブロックをダウンロードするタイミングと実行するタイミングとが大きくずれる可能性が高まる。すなわち、ブロックをデバイス300にダウンロードしてから数日後、数か月後、又は数年後等にブロックが実行される場合が考えられる。その場合、ブロックがダウンロードされてからブロックが実行されるまでの間にデバイス300の劣化レベル等が変わる恐れもある。そのため、ブロックの実行が劣化レベルの影響を受けるデバイス300では、ブロックが実行される直前にデバイス300によって実行前確認が行われることで、劣化レベルに応じた実行前確認が可能となる。 If a block is downloaded to the device 300 and the user executes the block at an arbitrary timing, there is a high possibility that the timing at which the block is downloaded and the timing at which the block is executed are significantly different from each other. That is, the block may be executed several days, months, or years after the block is downloaded to the device 300. In that case, there is a possibility that the level of deterioration of the device 300 changes between when the block is downloaded and when the block is executed. Therefore, in the device 300 where the execution of a block is affected by the degradation level, the device 300 performs pre-execution confirmation immediately before the block is executed, making it possible to perform pre-execution confirmation according to the degradation level.

図21Eは、実施の形態1の変形例5におけるシステム1のシーケンス図である。変形例5は、変形例2と変形例3との組み合わせに相当する。変形例5では、図21Eに示すように、実行前確認(S216)は、デバイスマネージャ200が割付結果通知(S218)を行う際に、そのままデバイスマネージャ200によって行われる。 FIG. 21E is a sequence diagram of the system 1 in the fifth modification of the first embodiment. Modification 5 corresponds to a combination of Modification 2 and Modification 3. In modification 5, as shown in FIG. 21E, the pre-execution confirmation (S216) is directly performed by the device manager 200 when the device manager 200 notifies the allocation result (S218).

(実施の形態2)
次に、実施の形態2について説明する。本実施の形態では、アプリケーションが認証済みである場合に実行前確認がスキップされる点が上記実施の形態1と主として異なる。以下に、上記実施の形態1と異なる点を中心に本実施の形態について説明する。
(Embodiment 2)
Next, a second embodiment will be described. This embodiment differs from the first embodiment in that the pre-execution confirmation is skipped if the application has been authenticated. The present embodiment will be described below, focusing on the differences from the first embodiment.

なお、本実施の形態におけるシステム1のハードウェア構成及び機能構成は、上記実施の形態1と同様であるので、図示及び説明を省略する。 Note that the hardware configuration and functional configuration of the system 1 in this embodiment are the same as those in the first embodiment, so illustration and description will be omitted.

[2.1 処理]
本実施の形態では、上記実施の形態1における実行前確認のステップS216がステップS216Aに代わる点を除いて、上記実施の形態1の処理と同様である。したがって、実行前確認処理のステップS216Aについて図22を参照しながら説明する。
[2.1 Processing]
This embodiment is the same as the process of the first embodiment, except that step S216 of the pre-execution confirmation in the first embodiment is replaced with step S216A. Therefore, step S216A of the pre-execution confirmation process will be described with reference to FIG. 22.

図22は、実施の形態2における実行前確認処理のフローチャートを示す。 FIG. 22 shows a flowchart of the pre-execution confirmation process in the second embodiment.

(ステップS2161A)
デバイス300は、アプリ認証情報を取得する。アプリ認証情報は、アプリケーションが認証済みである場合に認証済みであることを示す情報を含む。
(Step S2161A)
The device 300 acquires application authentication information. The application authentication information includes information indicating that the application has been authenticated, if the application has been authenticated.

アプリケーションの認証は、例えばアプリケーションの品質を保証するための仕組みであり、アプリケーションの安全性及び/又は同一性(改ざんされていないこと)などの確認を可能とする。認証情報の付与されているアプリケーションの一例を説明する。アプリケーションのコードの変更履歴がパラメータ範囲の変更が行われなかったことを示す場合、アプリケーションに認証済みであることを示す情報が対応付けられている。 Application authentication is a mechanism for assuring the quality of an application, for example, and makes it possible to confirm the safety and/or identity (that it has not been tampered with) of the application. An example of an application provided with authentication information will be described. If the change history of the application code indicates that the parameter range has not been changed, information indicating that the application has been authenticated is associated with the application.

(ステップS2162A)
デバイス300は、取得されたアプリ情報に基づいて、アプリケーションが認証済みであるか否かを判定する。ここで、アプリケーションが認証済みであると判定された場合(S2162AのYes)、デバイス300は、以降のステップS2165~ステップS2167をスキップして実行前確認処理を終了する。一方、アプリケーションが認証済みではないと判定された場合(S2162AのNo)、デバイス300は、次のステップS2165に進む。
(Step S2162A)
The device 300 determines whether the application has been authenticated based on the acquired application information. Here, if it is determined that the application has been authenticated (Yes in S2162A), the device 300 skips subsequent steps S2165 to S2167 and ends the pre-execution confirmation process. On the other hand, if it is determined that the application is not authenticated (No in S2162A), the device 300 proceeds to the next step S2165.

[2.2 効果など]
以上のように、本実施の形態における装置20は、アクチュエータ22及び加熱器23の少なくとも1つと、アクチュエータ22及び加熱器23の少なくとも1つを制御する制御部24と、を備え、制御部24は、アクチュエータ22及び加熱器23の少なくとも1つを駆動する複数のブロックで規定され、かつ認証済みか否かを示す情報を含むアプリケーションを取得し、複数のブロックの各々は、アクチュエータ22又は加熱器23を駆動するためのパラメータを有し、アプリケーションが認証済みであることを示す情報を含まない場合、アクチュエータ22及び加熱器23の少なくとも1つの駆動が許容されない第1パラメータ範囲を定義する第1のルールを参照して、複数のブロックの少なくとも1つを変更することでアプリケーションを変更し、複数のブロックの少なくとも1つは、第1パラメータ範囲に含まれるパラメータを有し、変更したアプリケーションに基づいて、少なくとも1つのアクチュエータ22を駆動する。
[2.2 Effects etc.]
As described above, the device 20 in this embodiment includes at least one of the actuator 22 and the heater 23, and the control section 24 that controls at least one of the actuator 22 and the heater 23. , an application is defined by a plurality of blocks that drive at least one of the actuator 22 and the heater 23 and includes information indicating whether or not it has been authenticated, and each of the plurality of blocks drives the actuator 22 or the heater 23. a first rule defining a first parameter range in which driving of at least one of the actuator 22 and the heater 23 is not allowed if the application has a parameter for driving the application and does not include information indicating that the application is authenticated; , the application is changed by changing at least one of the plurality of blocks, at least one of the plurality of blocks has a parameter included in the first parameter range, and based on the changed application, At least one actuator 22 is driven.

これによれば、複数のブロックで規定されたアプリケーションに基づいてアクチュエータ22及び/又は加熱器23を駆動することができる。したがって、装置20の制御を抽象化したブロックを用いたアプリケーションの開発が可能となり、そのように開発された多種多彩なアプリケーションを装置20で簡単に実行することが可能となる。さらに、アプリケーションに基づいてアクチュエータ22及び/又は加熱器23が駆動される前に、許容されない第1パラメータ範囲に含まれるパラメータを有するブロックを変更することができる。したがって、アクチュエータ22及び/又は加熱器23が許容されないパラメータで駆動されることを抑制することができる。つまり、装置20を安全に制御することができないアプリケーションが実行されることを抑制することができ、アプリケーションで制御される装置20の安全性を向上させることができる。さらに、アプリケーションが認証済みでない場合に、アプリケーションの変更を伴う処理を行うことができ、アプリケーションが認証済みである場合に処理負荷の軽減を図ることができる。したがって、全てのアプリケーションに対するパラメータ範囲に対する判定処理を行う必要は無く、認証を行うことによる管理によって、処理負荷の軽減とともに、パラメータ範囲の設計の基準ができ、アプリケーション開発者にとっては、より容易かつ安全な設計が可能となる。 According to this, the actuator 22 and/or the heater 23 can be driven based on applications defined by a plurality of blocks. Therefore, it becomes possible to develop applications using blocks that abstract the control of the device 20, and it becomes possible to easily execute a wide variety of applications developed in this way on the device 20. Additionally, blocks having parameters that fall within the unacceptable first parameter range can be modified before actuator 22 and/or heater 23 is driven based on the application. Therefore, it is possible to prevent the actuator 22 and/or the heater 23 from being driven with unacceptable parameters. In other words, it is possible to prevent an application that cannot safely control the device 20 from being executed, and it is possible to improve the safety of the device 20 controlled by the application. Further, when the application has not been authenticated, processing that involves changing the application can be performed, and when the application has been authenticated, the processing load can be reduced. Therefore, there is no need to perform judgment processing on parameter ranges for all applications, and management through authentication reduces processing load and provides a standard for designing parameter ranges, making it easier and safer for application developers. design becomes possible.

また例えば、本実施の形態における装置20において、アプリケーションが認証済みであることを示す情報を有する場合、第1のルールを参照せずに、アプリケーションケーションを変更しなくてもよい。 For example, in the device 20 according to the present embodiment, if the application has information indicating that it has been authenticated, the application does not need to be changed without referring to the first rule.

これによれば、アプリケーションが認証済みである場合に、ブロックを変更するための処理をスキップすることができ、処理負荷を軽減することができる。 According to this, when the application has been authenticated, the process for changing the block can be skipped, and the processing load can be reduced.

(実施の形態3)
次に、実施の形態3について説明する。本実施の形態では、アプリケーションの制作者と装置の製作者とが同一である場合に実行前確認がスキップされる点が上記実施の形態1と主として異なる。以下に、上記実施の形態1と異なる点を中心に本実施の形態について説明する。
(Embodiment 3)
Next, Embodiment 3 will be described. This embodiment mainly differs from the first embodiment in that the pre-execution confirmation is skipped when the application producer and the device producer are the same. The present embodiment will be described below, focusing on the differences from the first embodiment.

なお、本実施の形態におけるシステム1のハードウェア構成及び機能構成は、上記実施の形態1と同様であるので、図示及び説明を省略する。 Note that the hardware configuration and functional configuration of the system 1 in this embodiment are the same as those in the first embodiment, so illustration and description will be omitted.

[3.1 処理]
本実施の形態では、上記実施の形態1における実行前確認のステップS216がステップS216Bに代わる点を除いて、上記実施の形態1の処理と同様である。したがって、実行前確認処理のステップS216Bについて図23を参照しながら説明する。
[3.1 Processing]
This embodiment is the same as the processing in the first embodiment, except that step S216 of the pre-execution confirmation in the first embodiment is replaced with step S216B. Therefore, step S216B of the pre-execution confirmation process will be described with reference to FIG. 23.

図23は、実施の形態3における実行前確認処理のフローチャートを示す。 FIG. 23 shows a flowchart of the pre-execution confirmation process in the third embodiment.

(ステップS2161B)
デバイス300は、アプリ制作者情報を取得する。アプリ制作者情報は、アプリケーションの制作者を示す。制作者は、アプリケーションを制作した会社、個人又は団体等を意味し、開発者又は著者と呼ばれる場合もある。
(Step S2161B)
The device 300 acquires application creator information. The application creator information indicates the creator of the application. The producer refers to a company, individual, or organization that produced an application, and may also be called a developer or author.

(ステップS2163B)
デバイス300は、デバイス製作者情報を取得する。デバイス製作者情報は、デバイスの製作者を示す。製作者は、デバイス300(つまり装置20)を製作した会社、個人又は団体等を意味し、製造者と呼ばれる場合もある。
(Step S2163B)
The device 300 acquires device manufacturer information. The device manufacturer information indicates the manufacturer of the device. The manufacturer refers to a company, individual, or organization that manufactured the device 300 (that is, the apparatus 20), and may also be referred to as a manufacturer.

(ステップS2164B)
デバイス300は、アプリケーションの制作者とデバイス300の製作者とが異なるか否かを判定する。アプリケーションの制作者が個人であり、デバイス300の製作者が会社である場合、デバイス300は、アプリケーションの制作者が属する会社とデバイス300の製作者とが一致すれば、アプリケーションの制作者とデバイス300の製作者とが同じであると判定してもよい。また、デバイス300は、アプリケーションの制作者がデバイス300の製作者の開発委託先であれば、アプリケーションの制作者とデバイス300の製作者とが同じであると判定してもよい。
(Step S2164B)
The device 300 determines whether the creator of the application and the creator of the device 300 are different. If the application creator is an individual and the device 300 manufacturer is a company, if the company to which the application creator belongs and the device 300 manufacturer match, the application creator and the device 300 It may be determined that the creators of the two are the same. Further, the device 300 may determine that the application creator and the device 300 creator are the same if the application creator is a development entrusted company of the device 300 creator.

ここで、アプリケーションの制作者とデバイス300の製作者とが同じである場合(S2164BのNo)、デバイス300は、以降のステップS2165~ステップS2167をスキップして実行前確認処理を終了する。一方、アプリケーションの制作者とデバイス300の製作者とが異なる場合(S2164BのYes)、デバイス300は、次のステップS2165に進む。 Here, if the creator of the application and the creator of the device 300 are the same (No in S2164B), the device 300 skips subsequent steps S2165 to S2167 and ends the pre-execution confirmation process. On the other hand, if the creator of the application and the creator of the device 300 are different (Yes in S2164B), the device 300 proceeds to the next step S2165.

[3.2 効果など]
以上のように、本実施の形態における装置20は、アクチュエータ22及び加熱器23の少なくとも1つとアクチュエータ22及び加熱器23の少なくとも1つを制御する制御部24と、を備え、制御部24は、アクチュエータ22及び加熱器23の少なくとも1つを駆動する複数のブロックで規定され、かつ制作者を示す情報を含むアプリケーションを取得し、複数のブロックの各々は、アクチュエータ22又は加熱器23を駆動するためのパラメータを有し、装置20の製作者を示す情報を取得し、アプリケーションの制作者と装置20の製作者とが異なる場合、アクチュエータ22及び加熱器23の少なくとも1つの駆動が許容されない第1パラメータ範囲を定義する第1のルールを参照して、複数のブロックの少なくとも1つを変更することでアプリケーションを変更し、複数のブロックの少なくとも1つは、第1パラメータ範囲に含まれるパラメータを有し、変更したアプリケーションに基づいて、アクチュエータ22及び加熱器23の少なくとも1つを駆動する。
[3.2 Effects etc.]
As described above, the device 20 according to the present embodiment includes the control unit 24 that controls at least one of the actuator 22 and the heater 23, and the control unit 24 that controls at least one of the actuator 22 and the heater 23. Obtain an application that is defined by a plurality of blocks that drive at least one of the actuator 22 and the heater 23 and includes information indicating the creator, and each of the plurality of blocks is configured to drive the actuator 22 or the heater 23. information indicating the manufacturer of the device 20 is obtained, and if the manufacturer of the application and the manufacturer of the device 20 are different, the first parameter does not allow driving of at least one of the actuator 22 and the heater 23. Modifying the application by modifying at least one of the plurality of blocks with reference to a first rule defining a range, wherein at least one of the plurality of blocks has a parameter included in the first parameter range. , drives at least one of the actuator 22 and the heater 23 based on the modified application.

これによれば、複数のブロックで規定されたアプリケーションに基づいてアクチュエータ及び/又は加熱器を駆動することができる。したがって、装置20の制御を抽象化したブロックを用いたアプリケーションの開発が可能となり、そのように開発された多種多彩なアプリケーションを装置20で簡単に実行することが可能となる。さらに、アプリケーションに基づいてアクチュエータ22及び/又は加熱器23が駆動される前に、許容されない第1パラメータ範囲に含まれるパラメータを有するブロックを変更することができる。したがって、アクチュエータ22及び/又は加熱器23が許容されないパラメータで駆動されることを抑制することができる。つまり、装置20を安全に制御することができないアプリケーションが実行されることを抑制することができ、アプリケーションで制御される装置20の安全性を向上させることができる。さらに、アプリケーションの制作者と装置20の製造者とが異なる場合に、アプリケーションの変更を伴う処理を行うことができ、アプリケーションの制作者と装置20の製造者とが同じ場合には、処理負荷の軽減を図ることができる。 According to this, the actuator and/or the heater can be driven based on applications defined by a plurality of blocks. Therefore, it becomes possible to develop applications using blocks that abstract the control of the device 20, and it becomes possible to easily execute a wide variety of applications developed in this way on the device 20. Additionally, blocks having parameters that fall within the unacceptable first parameter range can be modified before actuator 22 and/or heater 23 is driven based on the application. Therefore, it is possible to prevent the actuator 22 and/or the heater 23 from being driven with unacceptable parameters. In other words, it is possible to prevent an application that cannot safely control the device 20 from being executed, and it is possible to improve the safety of the device 20 controlled by the application. Furthermore, if the application creator and the device 20 manufacturer are different, processing that involves changing the application can be performed, and if the application creator and the device 20 manufacturer are the same, the processing load can be reduced. This can be reduced.

(実施の形態4)
次に、実施の形態4について説明する。本実施の形態では、装置の劣化レベルに対応するルールを用いて実行前確認が行われる点が上記実施の形態1と主として異なる。以下に、上記実施の形態1と異なる点を中心に本実施の形態について説明する。
(Embodiment 4)
Next, Embodiment 4 will be described. This embodiment differs from the first embodiment mainly in that pre-execution confirmation is performed using rules corresponding to the deterioration level of the device. The present embodiment will be described below, focusing on the differences from the first embodiment.

なお、本実施の形態におけるシステム1のハードウェア構成及び機能構成は、上記実施の形態1と同様であるので、図示及び説明を省略する。 Note that the hardware configuration and functional configuration of the system 1 in this embodiment are the same as those in the first embodiment, so illustration and description will be omitted.

[4.1 処理]
本実施の形態では、上記実施の形態1における実行前確認のステップS216がステップS216Cに代わる点を除いて、上記実施の形態1の処理と同様である。したがって、実行前確認処理のステップS216Cについて図24を参照しながら説明する。
[4.1 Processing]
This embodiment is the same as the processing in the first embodiment, except that step S216 of the pre-execution confirmation in the first embodiment is replaced with step S216C. Therefore, step S216C of the pre-execution confirmation process will be described with reference to FIG. 24.

図24は、実施の形態4における実行前確認処理のフローチャートを示す。 FIG. 24 shows a flowchart of the pre-execution confirmation process in the fourth embodiment.

(ステップS2163C)
デバイス300は、デバイス劣化情報を取得する。デバイス劣化情報は、装置20に含まれるアクチュエータ22及び/又は加熱器23の劣化レベルを示す。劣化レベルの検出方法は、特に限定されず、例えばセンサによって検出されればよい。
(Step S2163C)
The device 300 acquires device deterioration information. The device deterioration information indicates the deterioration level of the actuator 22 and/or the heater 23 included in the device 20. The method for detecting the deterioration level is not particularly limited, and may be detected using a sensor, for example.

(ステップS2165C)
デバイス300は、劣化レベルに対応するルールを取得する。例えば、デバイス300は、ルールデータベースを参照して、ブロックが駆動するアクチュエータ22又は加熱器23の劣化レベルに対応するパラメータ範囲を取得する。
(Step S2165C)
The device 300 obtains a rule corresponding to the deterioration level. For example, the device 300 refers to the rule database to obtain a parameter range corresponding to the deterioration level of the actuator 22 or heater 23 driven by the block.

図25は、実施の形態4におけるルールデータベースの一例を示す。図25のルールデータベース1400Cには、ルール1401C~1404Cが登録されている。ルール1401C~1404Cの各々は、非許容範囲を定義するパラメータ範囲を有する。例えば、ルール1401Cは、劣化レベル0のモータMM0001のために、1000rpmより大きい範囲を非許容範囲として有する。例えば、ルール1402Cは、劣化レベル1のモータMM0001のために、800rpmより大きい範囲を非許容範囲として有する。つまり、ルール1402Cは、ルール1401Cよりも非許容範囲が広く、許容範囲が狭い。 FIG. 25 shows an example of the rule database according to the fourth embodiment. Rules 1401C to 1404C are registered in the rule database 1400C of FIG. 25. Each of rules 1401C-1404C has parameter ranges that define unacceptable ranges. For example, rule 1401C has a range greater than 1000 rpm as an unacceptable range for motor MM0001 with degradation level 0. For example, rule 1402C has a range greater than 800 rpm as an unacceptable range for motor MM0001 with degradation level 1. In other words, the rule 1402C has a wider non-permissible range and a narrower permissible range than the rule 1401C.

ルール1401C~1404Cの各々は、さらに、種別と、製造者名と、アクチュエータ/加熱器と、劣化レベルと、を有する。これにより、デバイス300は、ルールデータベース1400Cから、ブロックで駆動されるアクチュエータ22又は加熱器23の劣化レベルに対応するルールを取得することができる。例えば、デバイス300は、脱水動作のブロックで駆動されるモータMM0001の劣化レベルが0である場合、脱水ブロックのために、図25のルールデータベース1400Cを参照してルール1401Cを取得する。 Each of the rules 1401C to 1404C further includes a type, a manufacturer name, an actuator/heater, and a deterioration level. Thereby, the device 300 can acquire a rule corresponding to the deterioration level of the actuator 22 or heater 23 driven by the block from the rule database 1400C. For example, when the deterioration level of the motor MM0001 driven by the dehydration block is 0, the device 300 refers to the rule database 1400C in FIG. 25 to obtain the rule 1401C for the dehydration block.

なお、劣化レベルを決定する項目は、例えば、デバイス300に含まれるアクチュエータ22及び/又は加熱器23の使用回数、使用時間、又は稼働開始から現在まで使用日数である。これらの項目は、ユーザの使用に対して概ね比例関係で増えると想定される。よって、項目に対応する値が大きくなるごとに、劣化レベルが大きくなるようにルールが決定される。 Note that the items that determine the deterioration level are, for example, the number of times the actuator 22 and/or the heater 23 included in the device 300 are used, the time of use, or the number of days of use from the start of operation to the present. These items are assumed to increase approximately in proportion to user usage. Therefore, a rule is determined such that the deterioration level increases as the value corresponding to the item increases.

また、劣化レベルを決定する項目は、例えば、加熱器23の温度の加算値、又はアクチュエータ22及び/又は加熱器23の入力及び出力の再現度合である。加熱器23の温度の加算値とは、加熱器23が駆動されたときの温度を加算した値である。例えば、ブロック実行時の加熱器23の平均温度、中間温度、又は最大温度が用いられる。加熱器23の温度は、加熱器23の限界温度に対する実行温度の割合、加熱器23の限界温度に対する実行温度の差分であってもよい。 Further, the item that determines the deterioration level is, for example, the added value of the temperature of the heater 23 or the degree of reproducibility of the input and output of the actuator 22 and/or the heater 23. The added value of the temperature of the heater 23 is a value obtained by adding the temperature when the heater 23 is driven. For example, the average temperature, intermediate temperature, or maximum temperature of the heater 23 during block execution is used. The temperature of the heater 23 may be a ratio of the execution temperature to the limit temperature of the heater 23, or a difference between the execution temperature and the limit temperature of the heater 23.

アクチュエータ22及び/又は加熱器23の入力及び出力の再現度合とは、アクチュエータ22及び/又は加熱器23を駆動するための入力値とアクチュエータ22及び/又は加熱器23の出力との関係を参照して求められる。所定の入力に対する実際の出力値と、関係に規定された出力値との割合が用いられる。 The degree of reproducibility of the input and output of the actuator 22 and/or the heater 23 refers to the relationship between the input value for driving the actuator 22 and/or the heater 23 and the output of the actuator 22 and/or the heater 23. is required. A ratio between the actual output value for a given input and the output value specified in the relationship is used.

[4.2 効果など]
以上のように、本実施の形態における装置20は、アクチュエータ22及び加熱器23の少なくとも1つと、アクチュエータ22及び加熱器23の少なくとも1つを制御する制御部24と、を備え、制御部24は、アクチュエータ22及び加熱器23の少なくとも1つを駆動する複数のブロックで規定されたアプリケーションを取得し、複数のブロックの各々は、アクチュエータ22又は加熱器23を駆動するためのパラメータを有し、アクチュエータ22及び加熱器23の少なくとも1つが劣化しているか否かを示す劣化情報を取得し、劣化情報がアクチュエータ22及び加熱器23の少なくとも1つが劣化していないことを示している場合、アクチュエータ22及び加熱器23の少なくとも1つの駆動が許容されない第1パラメータ範囲を定義する第1のルールを参照して、複数のブロックに含まれる少なくとも1つの第1ブロックを変更することでアプリケーションを変更し、少なくとも1つの第1ブロックは、第1パラメータ範囲に含まれるパラメータを有し、劣化情報がアクチュエータ22及び加熱器23の少なくとも1つが劣化していることを示している場合、アクチュエータ22及び加熱器23の少なくとも1つの駆動が許容されない、第1パラメータ範囲と異なる第2パラメータ範囲を定義する第2のルールを参照して、複数のブロックに含まれる少なくとも1つの第2ブロックを変更することでアプリケーションを変更し、少なくとも1つの第2ブロックは、第2パラメータ範囲に含まれるパラメータを有し、変更したアプリケーションに基づいて、アクチュエータ22及び加熱器23の少なくとも1つを駆動する。
[4.2 Effects etc.]
As described above, the device 20 in this embodiment includes at least one of the actuator 22 and the heater 23, and the control section 24 that controls at least one of the actuator 22 and the heater 23. , an application defined by a plurality of blocks that drive at least one of the actuator 22 and the heater 23 is obtained, each of the plurality of blocks has a parameter for driving the actuator 22 or the heater 23, and the actuator If at least one of the actuator 22 and the heater 23 has deteriorated, and the deterioration information indicates that at least one of the actuator 22 and the heater 23 has not deteriorated, the actuator 22 and the heater 23 have deteriorated. Modifying the application by changing at least one first block included in the plurality of blocks with reference to a first rule defining a first parameter range in which driving at least one of the heaters 23 is not allowed, and at least One first block has a parameter included in the first parameter range, and when the deterioration information indicates that at least one of the actuator 22 and the heater 23 has deteriorated, the one of the actuator 22 and the heater 23 is Modify the application by changing at least one second block included in the plurality of blocks with reference to a second rule defining a second parameter range different from the first parameter range in which at least one drive is not allowed. However, the at least one second block has a parameter included in the second parameter range and drives at least one of the actuator 22 and the heater 23 based on the changed application.

これによれば、複数のブロックで規定されたアプリケーションに基づいてアクチュエータ22及び/又は加熱器23を駆動することができる。したがって、装置20の制御を抽象化したブロックを用いたアプリケーションの開発が可能となり、そのように開発された多種多彩なアプリケーションを装置20で簡単に実行することが可能となる。さらに、アプリケーションに基づいてアクチュエータ22及び/又は加熱器23が駆動される前に、許容されない第1パラメータ範囲に含まれるパラメータを有するブロックを変更することができる。したがって、アクチュエータ22及び/又は加熱器23が許容されないパラメータで駆動されることを抑制することができる。つまり、装置20を安全に制御することができないアプリケーションが実行されることを抑制することができ、アプリケーションで制御される装置20の安全性を向上させることができる。さらに、装置20の劣化情報に応じて異なるパラメータ範囲を用いることができ、ブロックを用いることで、経年劣化していくデバイスのパフォーマンスを考慮しながら、アプリケーション側からのアクチュエータ22及び/又は加熱器23への駆動指示を実行し、アプリケーションで制御される装置20の安全性をより向上させることができる。 According to this, the actuator 22 and/or the heater 23 can be driven based on applications defined by a plurality of blocks. Therefore, it becomes possible to develop applications using blocks that abstract the control of the device 20, and it becomes possible to easily execute a wide variety of applications developed in this way on the device 20. Additionally, blocks having parameters that fall within the unacceptable first parameter range can be modified before actuator 22 and/or heater 23 is driven based on the application. Therefore, it is possible to prevent the actuator 22 and/or the heater 23 from being driven with unacceptable parameters. In other words, it is possible to prevent an application that cannot safely control the device 20 from being executed, and it is possible to improve the safety of the device 20 controlled by the application. Furthermore, different parameter ranges can be used depending on the deterioration information of the device 20, and by using blocks, the actuator 22 and/or heater 23 can be controlled from the application side while taking into account the performance of the device as it ages. The safety of the device 20 controlled by the application can be further improved.

(実施の形態5)
上記実施の形態1~4では、既に配信されているアプリケーションに含まれるブロックが、そのアプリケーションが実行される前に変更される。本実施の形態では、そのアプリケーションに含まれるブロックが変更されるタイミングが、アプリケーションが配信される前、つまり、そのアプリケーションが開発または制作される段階であって、その点で本実施の形態は上記実施の形態1~4とは異なる。以下、本実施の形態について、上記実施の形態1~4と異なる点を中心に、詳細に説明する。なお、本実施の形態は、ブロックの変更のタイミング以外については、上記実施の形態1~4と同様であってもよい。また、本実施の形態における各構成要素のうち、実施の形態1~4と同一の構成要素については、実施の形態1~4と同一の符号を付し、詳細な説明を省略する。
(Embodiment 5)
In the first to fourth embodiments described above, blocks included in an application that has already been distributed are changed before the application is executed. In this embodiment, the timing at which the blocks included in the application are changed is before the application is distributed, that is, at the stage when the application is being developed or produced. This is different from Embodiments 1 to 4. The present embodiment will be described in detail below, focusing on the differences from the first to fourth embodiments described above. Note that this embodiment may be the same as the first to fourth embodiments described above except for the timing of changing blocks. Further, among the constituent elements in this embodiment, the same constituent elements as in Embodiments 1 to 4 are given the same reference numerals as in Embodiments 1 to 4, and detailed description thereof will be omitted.

[5.1 構成]
図26は、アプリケーションの開発に用いられる情報処理システムの構成例を示す図である。
[5.1 Configuration]
FIG. 26 is a diagram illustrating a configuration example of an information processing system used for application development.

情報処理システム2000は、ブロックデータベース41と、ルールデータベース42と、開発ツール50と、複数の装置20および複数の端末30と、アプリ提供サーバ60と、シーケンスマネージャ100とを備える。例えば、情報処理システム2000に備えられるこれらの構成要素は、インターネットなどの通信ネットワークを介して接続される。 The information processing system 2000 includes a block database 41, a rule database 42, a development tool 50, a plurality of devices 20 and a plurality of terminals 30, an application providing server 60, and a sequence manager 100. For example, these components included in the information processing system 2000 are connected via a communication network such as the Internet.

ブロックデータベース41は、ブロックDBとも呼ばれ、複数の機能ブロックを含むブロック一覧を格納している記録媒体である。なお、これらの機能ブロックは、実施の形態1~4と同様、ブロックとも呼ばれる。ルールデータベース42は、ルールDBとも呼ばれ、複数のルールを格納している記録媒体である。なお、ルールデータベース42は、例えば図11に示すルールデータベース1400と同様であってもよい。また、これらの記録媒体は、ハードディスク、RAM(Read Only Memory)、ROM(Random Access Memory)、または半導体メモリなどである。なお、このような記録媒体は、揮発性であっても不揮発性であってもよい。 The block database 41 is also called a block DB, and is a recording medium that stores a list of blocks including a plurality of functional blocks. Note that these functional blocks are also called blocks as in the first to fourth embodiments. The rule database 42 is also called a rule DB, and is a recording medium that stores a plurality of rules. Note that the rule database 42 may be similar to the rule database 1400 shown in FIG. 11, for example. Further, these recording media include a hard disk, a RAM (Read Only Memory), a ROM (Random Access Memory), or a semiconductor memory. Note that such a recording medium may be volatile or nonvolatile.

開発ツール50は、例えば、プロセッサ51と、メモリ52と、ディスプレイ53と、入力部54とを備えるコンピュータシステムである。プロセッサ51は、例えばメモリ52に格納されたインストラクション又はソフトウェアプログラムを実行することによって後述の各処理を実行し、ディスプレイ53に文字または画像などを表示する。ディスプレイ53は、例えば液晶ディスプレイ、プラズマディスプレイ、有機EL(Electro-Luminescence)ディスプレイなどであるが、これらに限定されない。入力部54は、例えばキーボード、タッチセンサ、タッチパッドまたはマウスなどとして構成されている。このような開発ツール50は、例えばアプリケーションの開発者によって利用され、複数の機能ブロックを含むシーケンスまたはアプリケーションを生成する。なお、本実施の形態では、この開発ツール50は、情報処理装置の一例である。 The development tool 50 is, for example, a computer system including a processor 51, a memory 52, a display 53, and an input unit 54. The processor 51 executes each process described below by executing instructions or software programs stored in the memory 52, for example, and displays characters or images on the display 53. The display 53 is, for example, a liquid crystal display, a plasma display, an organic EL (Electro-Luminescence) display, etc., but is not limited to these. The input unit 54 is configured as, for example, a keyboard, a touch sensor, a touch pad, or a mouse. Such a development tool 50 is used, for example, by an application developer to generate a sequence or an application that includes a plurality of functional blocks. Note that in this embodiment, the development tool 50 is an example of an information processing device.

アプリ提供サーバ60は、開発ツール50によって生成されたアプリケーションを、その開発ツール50から通信ネットワークを介して取得して保持する。そして、アプリ提供サーバ60は、端末30に備えられているUI400からの指示に応じて、保持しているアプリケーションをシーケンスマネージャ100にダウンロードする。 The application providing server 60 acquires and holds the application generated by the development tool 50 from the development tool 50 via the communication network. The application providing server 60 then downloads the held application to the sequence manager 100 in response to an instruction from the UI 400 provided in the terminal 30.

図27Aは、ブロックデータベース41に格納されている情報の一例を示す図である。図27Bは、ルールデータベース42に格納されている情報の一例を示す図である。 FIG. 27A is a diagram showing an example of information stored in the block database 41. FIG. 27B is a diagram showing an example of information stored in the rule database 42.

ブロックデータベース41は、図27Aに示すように、洗濯機を駆動するための機能ブロックの一覧を、上述のブロック一覧として格納している。例えば、ブロック一覧41aが格納されている。ブロック一覧41aは、洗濯機を駆動するための機能ブロック1000、1010、1020、及び1030などを含む。これらの機能ブロックは、上記実施の形態1~4のブロックと同一または類似であってもよい。 As shown in FIG. 27A, the block database 41 stores a list of functional blocks for driving the washing machine as the above-mentioned block list. For example, a block list 41a is stored. The block list 41a includes functional blocks 1000, 1010, 1020, 1030, etc. for driving the washing machine. These functional blocks may be the same as or similar to the blocks in Embodiments 1 to 4 above.

ルールデータベース42は、図27Bに示すように、洗濯機に適用される少なくとも1つのルールからなるルール群を格納している。例えば、ルール群42aが格納されている。ルール群42aは、洗濯機に適用されるルールR1000、R1010、R1020、及びR1030などを含む。これらのルールは、上記実施の形態1~4のルールと同一または類似であってもよい。 As shown in FIG. 27B, the rule database 42 stores a rule group consisting of at least one rule applied to washing machines. For example, a rule group 42a is stored. The rule group 42a includes rules R1000, R1010, R1020, R1030, etc. applied to washing machines. These rules may be the same as or similar to the rules of Embodiments 1 to 4 above.

ここで、洗濯機のルールR1010、R1020、及びR1030のそれぞれは、例えば、所定のメーカによって製造された所定の型式の洗濯機に適用される専用ルールである。具体的には、その専用ルールR1010、R1020、R1030などのそれぞれは、例えば図11に示すルール1401~1405であってもよい。 Here, each of the washing machine rules R1010, R1020, and R1030 is a dedicated rule applied to a predetermined model of washing machine manufactured by a predetermined manufacturer, for example. Specifically, each of the dedicated rules R1010, R1020, R1030, etc. may be rules 1401 to 1405 shown in FIG. 11, for example.

一方、洗濯機のルールR1000は、例えば、複数種の洗濯機のそれぞれに適用可能な、洗濯機の汎用ルールである。 On the other hand, the washing machine rule R1000 is a general washing machine rule that can be applied to each of a plurality of types of washing machines, for example.

図28は、ルールデータベース42に含まれる汎用ルールの一例を示す図である。 FIG. 28 is a diagram showing an example of general-purpose rules included in the rule database 42.

ルールデータベース42に格納されている洗濯機のルール群42aには、例えば図28の(a)に示す汎用ルールR1000が含まれていてもよい。この汎用ルールR1000は、複数種の洗濯機のそれぞれに適用可能なパラメータ範囲(500rpm,+∞)を示す。その複数種の洗濯機は、複数の製造業者から提供されている洗濯機を含む。また、各製造業者が複数の型式の洗濯機を提供していれば、その複数種の洗濯機は、その複数の型式の洗濯機を含む。つまり、汎用ルールR1000に示されるルールであるパラメータ範囲は、製造業者および型式を問わず、どのような洗濯機にも適用される。なお、そのパラメータ範囲は、実施の形態1~4と同様、非許容範囲を定義していてもよい。例えば、汎用ルールR1000は、500rpmより大きい範囲を非許容範囲として示す。また、非許容範囲は、実施の形態1~4と同様、例えば筐体21の内部空間、アクチュエータ22又は加熱器23を耐久温度に到達させるパラメータの範囲であってもよい。 The washing machine rule group 42a stored in the rule database 42 may include, for example, a general rule R1000 shown in FIG. 28(a). This general rule R1000 indicates a parameter range (500 rpm, +∞) applicable to each of multiple types of washing machines. The multiple types of washing machines include washing machines provided by multiple manufacturers. Furthermore, if each manufacturer provides multiple types of washing machines, the multiple types of washing machines include those multiple types of washing machines. In other words, the parameter range that is the rule shown in the general rule R1000 is applicable to any washing machine regardless of manufacturer or model. Note that the parameter range may define an unacceptable range as in the first to fourth embodiments. For example, general rule R1000 indicates a range greater than 500 rpm as an unacceptable range. Further, as in the first to fourth embodiments, the non-permissible range may be, for example, a range of parameters that cause the internal space of the casing 21, the actuator 22, or the heater 23 to reach the durable temperature.

また、その洗濯機の汎用ルールR1000は、図28の(b)に示すように、複数の製造業者のそれぞれの洗濯機に適用されるパラメータ範囲を示していてもよい。例えば、汎用ルールR1000は、製造業者「A社」から提供される複数の型式の洗濯機に適用されるパラメータ範囲(800rpm,+∞)と、製造業者「B社」から提供される複数の型式の洗濯機に適用されるパラメータ範囲(600rpm,+∞)となどを示す。 Further, the general rule R1000 for the washing machine may indicate a parameter range applied to each washing machine of a plurality of manufacturers, as shown in FIG. 28(b). For example, the general rule R1000 is a parameter range (800 rpm, +∞) that is applied to multiple models of washing machines provided by manufacturer "Company A" and a parameter range (800 rpm, +∞) that is applied to multiple models of washing machines provided by manufacturer "Company B". This shows the parameter range (600 rpm, +∞) applicable to the washing machine.

なお、汎用ルールは、洗濯機の構造の種別によって、異なるルールに設定されていてもよい。洗濯機の構造の種別とは、例えば、洗濯槽の回転軸が上下方向に沿っている縦型洗濯機と、洗濯槽の回転軸が上下方向に対して交差しているドラム式洗濯機とがある。このように、洗濯機の構造の種別が異なると、洗濯の方法が大きく異なるため、洗濯機の構造の種別毎に、異なる汎用ルールに分けて設定されていてもよい。例えば、縦型洗濯機の汎用ルールは、縦型洗濯機であれば各製造業者で共通に適用されてもよいし、ドラム型洗濯機の汎用ルールは、ドラム型洗濯機であれば各製造業者で共通に適用されてもよい。また、専用ルールにおいて、洗濯機の構造の種別によって、異なるルールに設定されていてもよい。 Note that the general rules may be set to different rules depending on the type of structure of the washing machine. For example, the type of structure of a washing machine is a vertical washing machine in which the rotation axis of the washing tub runs along the vertical direction, and a drum-type washing machine in which the rotation axis of the washing tub crosses the vertical direction. be. As described above, since the washing method differs greatly depending on the type of structure of the washing machine, different general rules may be set separately for each type of structure of the washing machine. For example, a general rule for a top-loading washing machine may apply to all manufacturers if it is a top-loading washing machine, and a general rule for a drum-type washing machine may apply to each manufacturer for a drum-type washing machine. may be commonly applied. Moreover, in the dedicated rules, different rules may be set depending on the type of structure of the washing machine.

[5.2 処理]
図29は、情報処理システム2000のシーケンス図である。
[5.2 Processing]
FIG. 29 is a sequence diagram of the information processing system 2000.

(ステップS11)
まず、開発ツール50は、1つ以上の機能ブロックをインストールする。具体的には、開発ツール50は、ブロックデータベース41から1つ以上の機能ブロックをダウンロードによって取得する。例えば、開発ツール50は、洗濯機のブロック一覧41aを取得してもよく、そのブロック一覧41aの一部の機能ブロックのみを取得してもよい。そして、開発ツール50は、その取得された1以上の機能ブロックを、シーケンスの生成に利用可能な状態にする。
(Step S11)
First, the development tool 50 installs one or more functional blocks. Specifically, the development tool 50 acquires one or more functional blocks from the block database 41 by downloading. For example, the development tool 50 may acquire a block list 41a of washing machines, or may acquire only some functional blocks from the block list 41a. The development tool 50 then makes the acquired one or more functional blocks usable for sequence generation.

ここで、ブロックデータベース41に格納されている各機能ブロックには、その機能ブロックに対応するデバイス情報が付加されていてもよい。このデバイス情報は、そのデバイス情報に対応する機能ブロックに応じて駆動する例えば装置20の製造業者、種別、型式、または型番などを示す。したがって、開発ツール50は、それらのデバイス情報に基づいて、1つ以上の機能ブロックをダウンロードしてもよい。例えば、開発ツール50は、同一の製造業者から提供されている各装置20を駆動するための1つ以上の機能ブロックをダウンロードしてもよく、調理の温めに用いられる各装置20を駆動するための1つ以上の機能ブロックをダウンロードしてもよい。 Here, each functional block stored in the block database 41 may have attached device information corresponding to that functional block. This device information indicates, for example, the manufacturer, type, model, model number, etc. of the device 20 that is driven according to the functional block corresponding to the device information. Accordingly, development tool 50 may download one or more functional blocks based on their device information. For example, the development tool 50 may download one or more functional blocks for driving each device 20 provided by the same manufacturer, and for driving each device 20 used for cooking heating. One or more functional blocks may be downloaded.

(ステップS12)
次に、開発ツール50は、シーケンスを生成する。具体的には、開発ツール50は、操作者による入力部54への入力操作に応じて、ダウンロード済みの1以上の機能ブロックを用いてシーケンスを生成する。なお、操作者は、シーケンスであるアプリケーションの開発者であってもよい。本実施の形態では、開発ツール50は、このステップS12において、上述のルールを参照し、そのルールに基づいてアプリケーションを変更する。
(Step S12)
Next, the development tool 50 generates a sequence. Specifically, the development tool 50 generates a sequence using one or more downloaded functional blocks in response to an input operation to the input unit 54 by the operator. Note that the operator may be a developer of an application that is a sequence. In this embodiment, the development tool 50 refers to the above-mentioned rules and changes the application based on the rules in step S12.

(ステップS13)
次に、開発ツール50は、生成されたシーケンスのアップロードを行う。具体的には、開発ツール50は、操作者による入力部54への入力操作に応じて、生成されたシーケンスをアプリ提供サーバ60に送信するための送信情報を、そのシーケンスの内容に基づいて生成し、その送信情報をアプリ提供サーバ60に送信する。この送信情報は、例えばJSON(JavaScript Object Notation)などであってもよい。これにより、そのシーケンスがアプリ提供サーバ60に送信されて、アプリケーションとしてアプリ提供サーバ60に格納される。
(Step S13)
Next, the development tool 50 uploads the generated sequence. Specifically, the development tool 50 generates transmission information for transmitting the generated sequence to the application providing server 60 based on the contents of the sequence in response to an input operation by the operator to the input unit 54. Then, the transmission information is transmitted to the application providing server 60. This transmission information may be, for example, JSON (JavaScript Object Notation). Thereby, the sequence is transmitted to the application providing server 60 and stored therein as an application.

(ステップS14)
次に、端末30のユーザは、その端末30のUI400を操作することによって、アプリ提供サーバ60にアクセスし、アプリ提供サーバ60に格納されているアプリケーションの一覧を閲覧する。そして、UI400は、そのユーザによる操作に応じて、一覧からアプリケーションを選択し、そのアプリケーションのダウンロードをアプリ提供サーバ60に要求する。
(Step S14)
Next, the user of the terminal 30 accesses the application providing server 60 by operating the UI 400 of the terminal 30 and views a list of applications stored in the application providing server 60. Then, the UI 400 selects an application from the list in response to the user's operation, and requests the application providing server 60 to download the application.

(ステップS15)
アプリ提供サーバ60は、UI400からのダウンロードの要求を受け付けると、そのユーザに紐づくシーケンスマネージャ100に、選択されたアプリケーションをダウンロードする。
(Step S15)
Upon receiving the download request from the UI 400, the application providing server 60 downloads the selected application to the sequence manager 100 associated with the user.

図30は、開発ツール50の全体的な処理動作を示すフローチャートである。具体的には、図30に示すフローチャートは、図29のシーケンスにおけるステップS11およびS12の詳細な処理動作を示す。 FIG. 30 is a flowchart showing the overall processing operation of the development tool 50. Specifically, the flowchart shown in FIG. 30 shows detailed processing operations of steps S11 and S12 in the sequence of FIG. 29.

(ステップS21)
開発ツール50は、まず、例えば洗濯機500を駆動するための複数の機能ブロックをインストールする。
(Step S21)
The development tool 50 first installs, for example, a plurality of functional blocks for driving the washing machine 500.

(ステップS22)
次に、開発ツール50は、操作者による入力部54への入力操作に応じて、機能ブロックの配置処理を行う。すなわち、開発ツール50は、ステップS21でインストールされた複数の機能ブロックをディスプレイ53に表示し、操作者による入力部54への入力操作に応じて、その表示されている複数の機能ブロックから、1つの機能ブロックを選択する。そして、開発ツール50は、操作者による入力部54への入力操作に応じて、その機能ブロックをディスプレイ53上のシーケンス生成画面における選択ブロック領域に配置する。シーケンス生成画面については、図33を用いて後述する。つまり、操作者は、複数の機能ブロックのうちの1つの機能ブロックをその選択ブロック領域にドラッグ&ドロップする。
(Step S22)
Next, the development tool 50 performs a process of arranging functional blocks in response to an input operation to the input unit 54 by the operator. That is, the development tool 50 displays the plurality of functional blocks installed in step S21 on the display 53, and selects one from the plurality of displayed functional blocks in response to an input operation to the input unit 54 by the operator. Select one functional block. Then, the development tool 50 arranges the functional block in the selected block area on the sequence generation screen on the display 53 in response to the input operation by the operator on the input unit 54. The sequence generation screen will be described later using FIG. 33. That is, the operator drags and drops one of the plurality of functional blocks onto the selected block area.

(ステップS23)
次に、開発ツール50は、操作者による入力部54への入力操作に応じて、ステップS22で配置された機能ブロックのパラメータ設定処理を行う。すなわち、開発ツール50は、上述のシーケンス生成画面におけるパラメータ設定領域に、その機能ブロックに用いられるパラメータの内容を受け付けるための受付画像を表示する。そして、開発ツール50は、操作者による入力部54への入力操作に応じて、そのパラメータの内容を受け付けて、そのパラメータの内容をパラメータ設定領域に表示する。これにより、その機能ブロックに対してパラメータが設定される。なお、機能ブロックのパラメータは、初期値が予め設定されていてもよい。
(Step S23)
Next, the development tool 50 performs parameter setting processing for the functional blocks placed in step S22 in response to the input operation to the input unit 54 by the operator. That is, the development tool 50 displays a reception image for accepting the contents of the parameters used for the functional block in the parameter setting area on the above-described sequence generation screen. Then, the development tool 50 receives the content of the parameter in response to the input operation by the operator on the input unit 54, and displays the content of the parameter in the parameter setting area. This sets the parameters for that functional block. Note that the parameters of the functional blocks may have initial values set in advance.

(ステップS24)
次に、開発ツール50は、洗濯機500に適用されるルールを参照し、そのステップS23で設定されたパラメータが、そのルールに示されるパラメータ範囲外、すなわち非許容範囲外であるか否かを判定する。
(Step S24)
Next, the development tool 50 refers to the rules applied to the washing machine 500 and determines whether the parameters set in step S23 are outside the parameter range indicated in the rules, that is, outside the unacceptable range. judge.

(ステップS25)
開発ツール50は、ステップS24でパラメータが非許容範囲外ではないと判定すると(ステップS24のNo)、パラメータ設定サポート処理を行う。このパラメータ設定サポート処理では、開発ツール50は、操作者にエラーを提示するエラー提示処理、または、パラメータの自動修正処理を行う。パラメータの自動修正処理では、開発ツール50は、非許容範囲のパラメータを許容範囲内のパラメータに変更することによって、その機能ブロックを変更する。エラー提示処理では、開発ツール50は、例えば、直前のステップS23で設定されたパラメータが非許容範囲内であることを示すメッセージをエラーとしてディスプレイ53に表示し、そのパラメータの変更を操作者に促す。そして、開発ツール50は、ステップS25の処理が行われた後には、ステップS23からの処理を繰り返し行う。
(Step S25)
When the development tool 50 determines in step S24 that the parameter is not outside the unacceptable range (No in step S24), it performs parameter setting support processing. In this parameter setting support process, the development tool 50 performs an error presentation process for presenting an error to the operator or an automatic parameter correction process. In the automatic parameter correction process, the development tool 50 changes the functional block by changing a parameter that is not in an allowable range to a parameter that is within an allowable range. In the error presentation process, the development tool 50 displays, for example, a message indicating that the parameter set in the immediately preceding step S23 is within an unacceptable range on the display 53 as an error, and prompts the operator to change the parameter. . After the process of step S25 is performed, the development tool 50 repeatedly performs the process from step S23.

なお、ステップS25においてパラメータの自動修正処理が行われた後に、ステップS23の処理が行われる場合には、そのステップS23では、開発ツール50は、その自動修正処理によって変更された後のパラメータをパラメータ設定領域に表示する。一方、ステップS25においてエラー提示処理が行われた後に、ステップS23の処理が行われる場合には、そのステップS23では、開発ツール50は、上述と同様、再び、操作者による入力部54への入力操作に応じて、そのパラメータの内容を受け付ける。これにより、その機能ブロックに対してパラメータが変更される。つまり、機能ブロックが変更される。 Note that if the process of step S23 is performed after the parameter automatic correction process is performed in step S25, in step S23, the development tool 50 converts the parameters changed by the automatic correction process into parameters. Display in the settings area. On the other hand, if the process in step S23 is performed after the error presentation process is performed in step S25, in step S23, the development tool 50 again receives input from the operator into the input unit 54, as described above. Depending on the operation, the contents of the parameter are accepted. This changes the parameters for that functional block. In other words, the functional blocks are changed.

なお、機能ブロックのパラメータは、固定された値が設定されていてもよい。この場合、開発ツール50は、ステップS24およびS25の処理を行わなくてもよい。 Note that the parameters of the functional blocks may be set to fixed values. In this case, the development tool 50 does not need to perform steps S24 and S25.

(ステップS26)
開発ツール50は、ステップS24でパラメータが非許容範囲外であると判定すると(ステップS24のYes)、さらに、そのステップS22で配置された機能ブロックの接続が許可されている否かを判定する。例えば、ステップS22では、選択ブロック領域に既に配置されている他の機能ブロックである既存ブロックの直前または直後に、機能ブロックが配置される。その結果、機能ブロックは、その既存ブロックに接続された状態で配置される。つまり、機能ブロックによる装置20の処理と、既存ブロックによる装置20の処理とが連続して実行されるように、その機能ブロックが配置される。この場合、開発ツール50は、洗濯機500に適用される接続ルールを参照することによって、その機能ブロックと既存ブロックとの接続が許可されているか否かを判定する。つまり、開発ツール50は、実施の形態1のステップS2166と同様に、第1ブロックの次に第2ブロックを実行することが許容されるか否かを判定することで、第1ブロックと第2ブロックとの接続が許可されているか否かを判定する。なお、接続ルールは、例えば図11に示すルール1401~1405であってもよい。
(Step S26)
When the development tool 50 determines in step S24 that the parameter is outside the unacceptable range (Yes in step S24), it further determines in step S22 whether connection of the placed functional blocks is permitted. For example, in step S22, a functional block is placed immediately before or after an existing block that is another functional block that has already been placed in the selected block area. As a result, the functional block is placed in a state connected to its existing block. In other words, the functional blocks are arranged so that the processing of the device 20 by the functional blocks and the processing of the device 20 by the existing blocks are executed consecutively. In this case, the development tool 50 refers to the connection rules applied to the washing machine 500 to determine whether connection between the functional block and the existing block is permitted. In other words, similarly to step S2166 of the first embodiment, the development tool 50 determines whether or not it is permissible to execute the second block after the first block. Determine whether connection with the block is permitted. Note that the connection rules may be rules 1401 to 1405 shown in FIG. 11, for example.

(ステップS27)
開発ツール50は、ステップS26で接続が許可されていないと判定すると(ステップS26のNo)、接続サポート処理を行う。この接続サポート処理では、開発ツール50は、操作者にエラーを提示するエラー提示処理、または、接続の自動修正処理を行う。そして、開発ツール50は、ステップS22からの処理を繰り返し行う。ステップS27における接続の自動修正処理では、例えば、実施の形態1におけるステップS2167と同様の処理が行われてもよい。
(Step S27)
When the development tool 50 determines in step S26 that connection is not permitted (No in step S26), it performs connection support processing. In this connection support process, the development tool 50 performs an error presentation process for presenting an error to the operator or an automatic connection correction process. The development tool 50 then repeatedly performs the processing from step S22. In the connection automatic correction processing in step S27, for example, processing similar to step S2167 in the first embodiment may be performed.

なお、ステップS27において接続の自動修正処理が行われた後に、ステップS22の処理が行われる場合には、そのステップS22では、開発ツール50は、その自動修正処理によって接続し直された2以上の機能ブロックを選択ブロック領域に表示する。一方、ステップS27においてエラー提示処理が行われた後に、ステップS22の処理が行われる場合には、そのステップS22では、開発ツール50は、上述と同様、再び、操作者による入力部54への入力操作に応じて、機能ブロックを配置し直す。また、ステップS27からステップS22の処理が繰り返される場合には、開発ツール50は、機能ブロックのパラメータは既に許容範囲内に設定されているため、ステップS22以降のステップS23~S25の処理をスキップしてもよい。 Note that if the process in step S22 is performed after the connection automatic correction process is performed in step S27, in step S22, the development tool 50 Display the functional block in the selected block area. On the other hand, if the process in step S22 is performed after the error presentation process is performed in step S27, in step S22, the development tool 50 again receives input from the operator into the input unit 54, as described above. Rearrange the functional blocks according to the operation. Furthermore, when the processing from step S27 to step S22 is repeated, the development tool 50 skips the processing from step S23 to S25 after step S22, since the parameters of the functional block are already set within the allowable range. You can.

(ステップS28)
開発ツール50は、ステップS26で接続が許可されていると判定すると(ステップS26のYes)、さらに、操作者による入力部54への入力操作に応じて、シーケンスの生成が完了したか否かを判定する。ここで、開発ツール50は、シーケンスの生成が完了していないと判定すると(ステップS28のNo)、ステップS22からの処理を繰り返し行う。このときには、開発ツール50は、ステップS21でインストールされた複数のブロックから新たなブロックを、操作者による入力部54への入力操作に応じて選択して、上述の選択ブロック領域に配置する。
(Step S28)
When the development tool 50 determines that the connection is permitted in step S26 (Yes in step S26), the development tool 50 further determines whether or not the generation of the sequence has been completed in accordance with the input operation to the input unit 54 by the operator. judge. Here, if the development tool 50 determines that the generation of the sequence is not completed (No in step S28), it repeats the processing from step S22. At this time, the development tool 50 selects a new block from the plurality of blocks installed in step S21 according to the input operation to the input unit 54 by the operator, and arranges it in the above-mentioned selected block area.

(ステップS29)
開発ツール50は、ステップS28でシーケンスの生成が完了したと判定すると(ステップS28のYes)、さらに、生成されたシーケンス全体の流れが許可されているか否かを判定する。例えば、そのシーケンスの中で、第1の機能ブロックよりも前または後に第2の機能ブロックが配置されている。一方、洗濯機500に適用される組み合わせルールでは、その第1の機能ブロックと第2の機能ブロックとの組み合わせは、許可されていない。このような場合、開発ツール50は、その生成されたシーケンス全体の流れが許可されていないと判定する。あるいは、洗濯機500に適用される組み合わせルールでは、その第1の機能ブロックよりも前または後には、第2の機能ブロックが配置されていることが求められている。このような場合、開発ツール50は、その生成されたシーケンス全体の流れが許可されていると判定する。
(Step S29)
When the development tool 50 determines that the generation of the sequence is completed in step S28 (Yes in step S28), the development tool 50 further determines whether or not the flow of the entire generated sequence is permitted. For example, in the sequence, a second functional block is placed before or after the first functional block. On the other hand, according to the combination rule applied to washing machine 500, the combination of the first functional block and the second functional block is not permitted. In such a case, the development tool 50 determines that the flow of the entire generated sequence is not permitted. Alternatively, the combination rule applied to washing machine 500 requires that a second functional block be placed before or after the first functional block. In such a case, development tool 50 determines that flow of the entire generated sequence is permitted.

(ステップS30)
開発ツール50は、ステップS29でシーケンス全体の流れが許可されていないと判定すると(ステップS29のNo)、配置サポート処理を行う。この配置サポート処理では、開発ツール50は、操作者にエラーを提示するエラー提示処理、または、機能ブロックの配置の自動修正処理を行う。そして、開発ツール50は、ステップS22からの処理を繰り返し行う。
(Step S30)
If the development tool 50 determines in step S29 that the flow of the entire sequence is not permitted (No in step S29), it performs placement support processing. In this placement support process, the development tool 50 performs an error presentation process for presenting an error to the operator or an automatic correction process for the placement of functional blocks. The development tool 50 then repeatedly performs the processing from step S22.

なお、ステップS30において配置の自動修正処理が行われた後に、ステップS22の処理が行われる場合には、そのステップS22では、開発ツール50は、その自動修正処理によって配置し直された2以上の機能ブロックを選択ブロック領域に表示する。また、ステップS30からステップS22の処理が繰り返される場合には、開発ツール50は、機能ブロックのパラメータは既に許容範囲内に設定されているため、ステップS22以降のステップS23~S25の処理をスキップしてもよい。また、開発ツール50は、機能ブロックの接続は既に許可されているため、ステップS26およびS27の処理をスキップしてもよい。さらに、開発ツール50は、ステップS28の処理もスキップしてもよい。 Note that if the process of step S22 is performed after the automatic correction process of the arrangement is performed in step S30, in step S22, the development tool 50 Display the functional block in the selected block area. Furthermore, when the processing from step S30 to step S22 is repeated, the development tool 50 skips the processing from step S23 to S25 after step S22, since the parameters of the functional block are already set within the allowable range. You can. Furthermore, since the development tool 50 has already been permitted to connect the functional blocks, it may skip the processing in steps S26 and S27. Furthermore, the development tool 50 may also skip the process of step S28.

なお、開発ツール50は、ステップS29およびS30の処理をスキップしてもよい。 Note that the development tool 50 may skip the processing of steps S29 and S30.

図31は、パラメータの自動修正処理の一例を示すフローチャートである。 FIG. 31 is a flowchart illustrating an example of automatic parameter correction processing.

図30に示す例では、1つの機能ブロックが選択されて配置されるたびに、その機能ブロックのパラメータに対する判定と自動修正処理とが行われる。しかし、本開示では、その例に限定されることなく、開発ツール50は、図31に示すフローチャートにしたがって各処理を行ってもよい。 In the example shown in FIG. 30, each time one functional block is selected and placed, determination and automatic correction processing are performed on the parameters of that functional block. However, in the present disclosure, the development tool 50 may perform each process according to the flowchart shown in FIG. 31 without being limited to that example.

(ステップS41)
開発ツール50は、操作者による入力部54への入力操作に応じて、例えば洗濯機500を駆動するためのN個(Nは2以上の整数)の機能ブロックからM個(Mは1以上かつN以下の整数)の機能ブロックを選択する。つまり、開発ツール50は、制御対象機器である洗濯機500に備えられているアクチュエータ22及び加熱器23の少なくとも1つを駆動するためのN個の機能ブロックから、操作者による入力部54への入力操作に応じて、M個の機能ブロックのそれぞれを選択ブロックとして選択する。
(Step S41)
The development tool 50 selects M functional blocks (M is 1 or more and (an integer less than or equal to N) is selected. In other words, the development tool 50 allows input by the operator to the input unit 54 from N functional blocks for driving at least one of the actuator 22 and the heater 23 included in the washing machine 500, which is the device to be controlled. Each of the M functional blocks is selected as a selection block according to the input operation.

(ステップS42)
次に、開発ツール50は、選択されたM個の機能ブロックのそれぞれにパラメータを設定することによって、シーケンス、すなわちアプリケーションを生成する。つまり、開発ツール50は、M個の選択ブロックの各々に、アクチュエータ22又は加熱器23を駆動するためのパラメータを、操作者による入力部54への入力操作に応じて設定することで、M個の選択ブロックで規定されたアプリケーションを生成する。
(Step S42)
Next, the development tool 50 generates a sequence, that is, an application, by setting parameters for each of the selected M functional blocks. In other words, the development tool 50 sets the parameters for driving the actuator 22 or the heater 23 in each of the M selection blocks according to the input operation to the input unit 54 by the operator. Generate the application specified by the selection block.

(ステップS43)
次に、開発ツール50は、洗濯機500に適用されるルールを参照する。例えば、開発ツール50は、ステップS42で生成されたアプリケーションが複数種の洗濯機に適用される場合には、汎用ルールR1000を参照する。また、開発ツール50は、ステップS42で生成されたアプリケーションが所定の型式の洗濯機に適用される場合には、専用ルールR1010、R1020及びR1030のうちのその型式の洗濯機500に対応付けられているルールを参照する。つまり、開発ツール50は、ステップS42で生成されるアプリケーションが、制御対象機器専用のアプリケーションか、その制御対象機器と、その制御対象機器以外の機器とに適用される汎用のアプリケーションかを判定する。そして、開発ツール50は、アクチュエータ22及び加熱器23の少なくとも1つの駆動が許容されないパラメータ範囲をそれぞれ定義する複数のルール候補のうちの、そのアプリケーションの判定結果に応じたルール候補を、上述のルールとして参照する。
(Step S43)
Next, the development tool 50 refers to the rules applied to the washing machine 500. For example, the development tool 50 refers to the general rule R1000 when the application generated in step S42 is applied to multiple types of washing machines. Furthermore, when the application generated in step S42 is applied to a predetermined model of washing machine, the development tool 50 is configured to match the application generated in step S42 to that model of washing machine 500 among dedicated rules R1010, R1020, and R1030. Refer to the existing rules. That is, the development tool 50 determines whether the application generated in step S42 is an application dedicated to the controlled device or a general-purpose application applied to the controlled device and devices other than the controlled device. Then, the development tool 50 selects a rule candidate according to the determination result of the application from among the plurality of rule candidates each defining a parameter range in which driving of at least one of the actuator 22 and the heater 23 is not allowed. Reference as

(ステップS44)
そして、開発ツール50は、ステップS42で設定されたM個の機能ブロックのそれぞれのパラメータが、上述のルールに示される非許容範囲に含まれるか否かを判定する。
(Step S44)
The development tool 50 then determines whether the parameters of each of the M functional blocks set in step S42 fall within the non-permissible range indicated by the above-described rule.

(ステップS45)
ここで、開発ツール50は、そのパラメータが非許容範囲に含まれていると判定すると(ステップS44のYes)、そのパラメータを有する機能ブロックを変更する。つまり、開発ツール50は、アクチュエータ22及び加熱器23の少なくとも1つの駆動が許容されないパラメータ範囲を定義するルールを参照して、M個の選択ブロックの少なくとも1つを変更することでアプリケーションを変更する。ここで、そのM個の選択ブロックの少なくとも1つは、そのパラメータ範囲に含まれるパラメータを有する。
(Step S45)
Here, if the development tool 50 determines that the parameter is included in the unacceptable range (Yes in step S44), it changes the functional block that has the parameter. That is, the development tool 50 changes the application by changing at least one of the M selection blocks with reference to the rule that defines the parameter range in which driving of at least one of the actuator 22 and the heater 23 is not allowed. . Here, at least one of the M selected blocks has a parameter included in the parameter range.

(ステップS46)
そして、開発ツール50は、変更したアプリケーションを出力する。
(Step S46)
The development tool 50 then outputs the modified application.

図32は、パラメータのエラー提示処理の一例を示すフローチャートである。 FIG. 32 is a flowchart illustrating an example of parameter error presentation processing.

図30に示す例では、1つの機能ブロックが選択されて配置されるたびに、その機能ブロックのパラメータに対する判定とエラー提示処理とが行われる。しかし、本開示では、その例に限定されることなく、開発ツール50は、図32に示すフローチャートにしたがって各処理を行ってもよい。 In the example shown in FIG. 30, each time one functional block is selected and placed, determination and error presentation processing are performed on the parameters of that functional block. However, in the present disclosure, the development tool 50 may perform each process according to the flowchart shown in FIG. 32 without being limited to that example.

(ステップS41~S44)
開発ツール50は、図31に示す例と同様、ステップS41~S44の処理を実行する。
(Steps S41 to S44)
The development tool 50 executes the processes of steps S41 to S44 as in the example shown in FIG.

(ステップS51)
開発ツール50は、ステップS44でパラメータが非許容範囲に含まれていると判定すると(ステップS44のYes)、そのパラメータを有する機能ブロックを自動的に変更することなく、ディスプレイ53にエラーを表示する。これにより、操作者にエラーが提示される。つまり、ステップS43、S44およびS51の処理では、開発ツール50は、ルールを参照することによって、エラーを提示する。具体的には、開発ツール50は、アクチュエータ22及び加熱器23の少なくとも1つの駆動が許容されないパラメータ範囲を定義するルールを参照して、M個の選択ブロックの少なくとも1つが、上述のパラメータ範囲に含まれるパラメータを有する場合には、操作者に対してエラーを提示する。
(Step S51)
If the development tool 50 determines in step S44 that the parameter is within the unacceptable range (Yes in step S44), it displays an error on the display 53 without automatically changing the functional block that has the parameter. . This presents an error to the operator. That is, in the processing of steps S43, S44, and S51, the development tool 50 presents an error by referring to the rule. Specifically, the development tool 50 refers to a rule that defines a parameter range in which driving of at least one of the actuator 22 and the heater 23 is not allowed, and determines whether at least one of the M selection blocks falls within the above parameter range. If any parameters are included, an error is presented to the operator.

(ステップS52)
そのエラーを見た操作者は、開発ツール50の入力部54への入力操作を行うことによって、ステップS42で設定されたパラメータを変更する。その結果、開発ツール50は、機能ブロックを変更する。つまり、開発ツール50は、エラーの提示を受けた操作者による入力操作に応じて、M個の選択ブロックの少なくとも1つを変更することでアプリケーションを変更する。そして、開発ツール50は、ステップS43からの処理を繰り返し実行する。
(Step S52)
The operator who sees the error changes the parameters set in step S42 by performing an input operation on the input unit 54 of the development tool 50. As a result, the development tool 50 modifies the functional block. In other words, the development tool 50 changes the application by changing at least one of the M selection blocks in response to the input operation by the operator who is presented with the error. The development tool 50 then repeatedly executes the processing from step S43.

(ステップS46)
開発ツール50は、ステップS44において、パラメータが非許容範囲に含まれていないと判定すると(ステップS44のNo)、アプリケーションを出力する。このとき、ステップS52でアプリケーションが変更されていれば、変更されたアプリケーションが出力される。一方、ステップS52でアプリケーションが変更されていなければ、ステップS42で生成されたアプリケーションが出力される。
(Step S46)
If the development tool 50 determines in step S44 that the parameter is not included in the unacceptable range (No in step S44), it outputs the application. At this time, if the application has been changed in step S52, the changed application is output. On the other hand, if the application has not been changed in step S52, the application generated in step S42 is output.

ここで、ステップS51の処理が繰り返される場合には、開発ツール50は、その繰り返しの回数に応じて、エラーの提示形態を変更してもよい。例えば、開発ツール50は、エラーの提示回数がK回(Kは2以上の整数)以上の場合には、上述のパラメータ範囲に含まれないパラメータを操作者に提示する。つまり、開発ツール50は、エラーの提示回数がK回以上の場合には、パラメータ範囲に含まれないパラメータ、すなわち非許容範囲に含まれないパラメータを、機能ブロックに設定されるパラメータの候補としてディスプレイ53に表示する。これにより、その候補が、例えばアプリケーション開発者である操作者に提案される。その結果、その候補を見たアプリケーション開発者である操作者は、開発ツール50の入力部54への入力操作を行うことによって、ステップS42で設定されたパラメータを、その候補に容易に変更することができる。 Here, if the process of step S51 is repeated, the development tool 50 may change the presentation form of the error depending on the number of times the process is repeated. For example, if the number of error presentations is K or more (K is an integer of 2 or more), the development tool 50 presents parameters that are not included in the above parameter range to the operator. In other words, if the number of errors presented is K or more, the development tool 50 displays parameters that are not included in the parameter range, that is, parameters that are not included in the unacceptable range, as candidates for parameters to be set in the function block. 53. Thereby, the candidate is proposed to an operator who is, for example, an application developer. As a result, the operator who is an application developer who sees the candidate can easily change the parameters set in step S42 to the candidate by performing an input operation on the input section 54 of the development tool 50. Can be done.

または、開発ツール50は、エラーの提示回数がK回以上の場合には、上述のパラメータ範囲に含まれないパラメータの範囲を操作者に提示してもよい。つまり、開発ツール50は、エラーの提示回数がK回以上の場合には、パラメータの許容範囲をディスプレイ53に表示する。これにより、その許容範囲を見たアプリケーション開発者である操作者は、開発ツール50の入力部54への入力操作を行うことによって、ステップS42で設定されたパラメータを、許容範囲内のパラメータに容易に変更することができる。 Alternatively, if the number of errors presented is K or more, the development tool 50 may present the operator with a parameter range that is not included in the above parameter range. That is, the development tool 50 displays the permissible range of the parameter on the display 53 when the number of errors presented is K or more. As a result, the operator who is an application developer who has seen the allowable range can easily change the parameters set in step S42 to parameters within the allowable range by performing an input operation to the input section 54 of the development tool 50. can be changed to .

[5.3 表示例]
図33は、シーケンス生成画面の一例を示す図である。
[5.3 Display example]
FIG. 33 is a diagram showing an example of a sequence generation screen.

開発ツール50は、上述のシーケンス生成画面をディスプレイ53に表示する。シーケンス生成画面は、パラメータ設定領域D1と、ブロック一覧領域D2と、対象装置領域D3と、選択ブロック領域D4とを含む。 The development tool 50 displays the above-described sequence generation screen on the display 53. The sequence generation screen includes a parameter setting area D1, a block list area D2, a target device area D3, and a selection block area D4.

パラメータ設定領域D1には、機能ブロックに用いられるパラメータの内容を受け付けるための受付画像が表示される。 In the parameter setting area D1, a reception image for accepting the contents of parameters used for the functional block is displayed.

ブロック一覧領域D2には、複数種の装置20のそれぞれのブロック一覧が表示される。これらのブロック一覧は、ブロックデータベース41からダウンロードされて開発ツール50にインストールされた機能ブロックを含む。 In the block list area D2, a list of blocks for each of the plurality of types of devices 20 is displayed. These block lists include functional blocks downloaded from the block database 41 and installed in the development tool 50.

対象装置領域D3には、複数種の装置20から選択された装置20の種別名が表示される。 In the target device area D3, the type name of the device 20 selected from the plurality of types of devices 20 is displayed.

選択ブロック領域D4には、ブロック一覧領域D2に表示されるブロック一覧から選択された機能ブロックが配置されて表示される。その機能ブロックは、例えばアイコンとして表示される。 Functional blocks selected from the block list displayed in the block list area D2 are arranged and displayed in the selected block area D4. The functional block is displayed as an icon, for example.

例えば、操作者は、開発ツール50の入力部54に対する入力操作を行うことによって、アプリケーションが適用される装置20の種別名を決定する。開発ツール50は、その決定された種別名を対象装置領域D3に表示する。例えば、その決定された種別名「洗濯機」が表示される。続いて、操作者は、入力操作を行うことによって、ブロック一覧領域D2に表示されるブロック一覧から、決定された種別名「洗濯機」の装置20を駆動するための機能ブロックを選択する。そして、操作者は、入力操作を行うことによって、選択された機能ブロック、すなわち選択ブロックを選択ブロック領域D4に配置する。この機能ブロックの選択および配置は、ドラッグ&ドロップによって行われてもよい。この選択ブロック領域D4に配置される1つ以上の機能ブロックは、その配置されている順に実行されてもよい。つまり、アプリケーションは、その選択ブロック領域D4に配置されるM個の選択ブロックのそれぞれが実行される順番の情報と、そのM個の選択ブロックのそれぞれが実行されるタイミングの情報とを含む。 For example, the operator determines the type name of the device 20 to which the application is applied by performing an input operation on the input unit 54 of the development tool 50. The development tool 50 displays the determined type name in the target device area D3. For example, the determined type name "washing machine" is displayed. Subsequently, the operator selects a functional block for driving the device 20 with the determined type name "washing machine" from the block list displayed in the block list area D2 by performing an input operation. Then, the operator places the selected functional block, that is, the selected block, in the selected block area D4 by performing an input operation. This selection and arrangement of functional blocks may be performed by drag and drop. One or more functional blocks arranged in this selected block area D4 may be executed in the order in which they are arranged. That is, the application includes information on the order in which each of the M selected blocks arranged in the selected block area D4 is executed, and information on the timing at which each of the M selected blocks is executed.

機能ブロックが選択ブロック領域D4に配置されると、開発ツール50は、パラメータ設定領域D1に、その機能ブロックに用いられるパラメータの受付画像を表示する。 When a functional block is placed in the selected block area D4, the development tool 50 displays an acceptance image of parameters used for the functional block in the parameter setting area D1.

図34は、ブロック一覧の表示例を示す図である。 FIG. 34 is a diagram showing a display example of a block list.

操作者は、図33に示すブロック一覧領域D2に表示されている複数の装置20のそれぞれの種別名のうち、これから生成するアプリケーションが適用される装置20の種別名を、入力部54に対する入力操作を行うことによって選択する。開発ツール50は、その選択された種別名の装置20に対応するブロック一覧を、例えば図34に示すように表示する。例えば、図34に示すように、洗濯機が選択されると、開発ツール50は、その洗濯機のブロック一覧を表示する。例えば、そのブロック一覧は、洗濯量検知、給水、注水、洗剤投入、柔軟剤投入、撹拌、ドラム回転、脱水、排水、ドアロック、浸漬、除菌・抗菌、ブザー、送風、及び乾燥のそれぞれの機能を実現する機能ブロックを含む。 The operator inputs the type name of the device 20 to which the application to be generated will be applied from among the type names of the plurality of devices 20 displayed in the block list area D2 shown in FIG. Select by doing. The development tool 50 displays a list of blocks corresponding to the device 20 with the selected type name, as shown in FIG. 34, for example. For example, as shown in FIG. 34, when a washing machine is selected, the development tool 50 displays a list of blocks for that washing machine. For example, the list of blocks includes washing amount detection, water supply, water injection, detergent injection, fabric softener injection, stirring, drum rotation, dehydration, drainage, door lock, soaking, disinfection/antibacterial, buzzer, air blower, and drying. Contains functional blocks that implement functions.

操作者は、入力部54への入力操作を行うことによって、このように表示されるブロック一覧から機能ブロックを選択し、その選択された機能ブロックを、図33に示す選択ブロック領域D4に配置する。つまり、開発ツール50は、このような入力操作に応じて、図30に示すステップS22の処理、すなわち機能ブロックの配置処理を行う。 The operator selects a functional block from the block list displayed in this manner by performing an input operation on the input unit 54, and arranges the selected functional block in the selected block area D4 shown in FIG. . That is, the development tool 50 performs the process of step S22 shown in FIG. 30, that is, the process of arranging functional blocks, in response to such input operations.

図35A及び図35Bは、パラメータ設定領域D1の表示例を示す図である。 35A and 35B are diagrams showing display examples of the parameter setting area D1.

開発ツール50は、例えば図35A及び図35Bに示すように、装置20である洗濯機の機能ブロックに含まれるパラメータの内容を受け付けるための受付画像を、パラメータ設定領域D1に表示する。洗濯機には、脱水の機能を実現する機能ブロックと、ドラム回転の機能を実現する機能ブロックとを適用することができる。 For example, as shown in FIGS. 35A and 35B, the development tool 50 displays a reception image for accepting the contents of parameters included in the functional block of the washing machine that is the device 20 in the parameter setting area D1. A functional block that implements a dehydration function and a functional block that implements a drum rotation function can be applied to a washing machine.

例えば図35Aに示すパラメータ設定領域D1の受付画像は、脱水の機能ブロックに含まれる複数のパラメータの内容を受け付けるための画像である。例えば、脱水の機能ブロックは、脱水の設定回転数と、継続時間とをそれぞれパラメータとして含む。操作者は、その受付画像を見て、入力部54への入力操作を行うことにより、その設定回転数および継続時間のそれぞれの数値を、設定回転数のパラメータおよび継続時間のパラメータのそれぞれの内容として入力する。 For example, the acceptance image of the parameter setting area D1 shown in FIG. 35A is an image for accepting the contents of a plurality of parameters included in the dehydration functional block. For example, the dehydration functional block includes the set rotation speed and duration of dehydration as parameters. The operator looks at the reception image and performs an input operation on the input unit 54 to input the values of the set rotation speed and duration time, and the contents of the set rotation speed parameter and duration time parameter. Enter as .

同様に、図35Bに示すパラメータ設定領域D1の受付画像は、ドラム回転の機能ブロック1060に含まれる複数のパラメータの内容を受け付けるための画像である。例えば、ドラム回転の機能ブロックは、ドラム回転の設定回転数と、ドラム回転の設定回転方向と、給水のオン/オフと、循環ポンプのオン/オフ及び回転方向とをそれぞれパラメータとして含む。操作者は、その受付画像を見て、入力部54への入力操作を行うことにより、その設定回転数およびの数値を、設定回転数のパラメータとして入力する。さらに、操作者は、設定回転方向の右回転および左回転のうちの一方と、給水に対するオンおよびオフのうちの一方と、循環ポンプに対するオンおよびオフのうちの一方と、循環ポンプに対する循環方向の正転および反転のうちの一方とを、回転方向のパラメータ、給水のパラメータ、および、循環ポンプのパラメータのそれぞれの内容として入力する。開発ツール50は、その入力された各パラメータの内容を受け付けることによって、ドラム回転の機能ブロックに用いられる各パラメータを設定する。 Similarly, the acceptance image in the parameter setting area D1 shown in FIG. 35B is an image for accepting the contents of a plurality of parameters included in the drum rotation functional block 1060. For example, the drum rotation functional block includes, as parameters, a set rotation speed of the drum rotation, a set rotation direction of the drum rotation, on/off of water supply, and on/off and rotation direction of the circulation pump. The operator views the reception image and performs an input operation on the input unit 54 to input the set rotation speed and the numerical value of the set rotation speed as a parameter for the set rotation speed. In addition, the operator controls one of the set rotation directions, clockwise and counterclockwise, one of water supply on and off, the circulation pump on and off, and the circulation direction of the circulation pump. One of normal rotation and reverse rotation is input as the contents of each of the rotation direction parameter, water supply parameter, and circulation pump parameter. The development tool 50 sets each parameter used in the drum rotation functional block by accepting the contents of each input parameter.

このように、開発ツール50は、操作者の入力操作に応じて、図30に示すステップS23のパラメータ設定処理を行う。 In this way, the development tool 50 performs the parameter setting process of step S23 shown in FIG. 30 in response to the input operation by the operator.

また、開発ツール50は、このように機能ブロックに含まれる各パラメータが設定されると、図30のステップS24のように、その機能ブロックに対応する装置20のルールを参照することによって、そのパラメータが非許容範囲外か否かを判定する。 Further, when each parameter included in a functional block is set in this way, the development tool 50 refers to the rules of the device 20 corresponding to the functional block, as in step S24 in FIG. Determine whether or not is outside the unacceptable range.

図36は、機能ブロックの自動修正処理の一例を示す図である。 FIG. 36 is a diagram illustrating an example of automatic correction processing of functional blocks.

例えば、図36の(a)に示すように、操作者は、入力部54に対する入力操作を行うことによって、洗濯機500の脱水の機能ブロック1070に含まれる回転数および継続時間のそれぞれの数値を入力する。これにより、脱水の機能ブロック1070に用いられる各パラメータが設定される。 For example, as shown in FIG. 36(a), by performing an input operation on the input unit 54, the operator inputs the respective numerical values of the rotation speed and duration included in the dehydration function block 1070 of the washing machine 500. input. As a result, each parameter used in the dehydration function block 1070 is set.

このように各パラメータが設定されると、開発ツール50は、その機能ブロックの自動修正処理を行う。まず、開発ツール50は、その機能ブロックに対応する洗濯機500のルールを参照する。例えば、開発ツール50は、図27Bに示すルールデータベース42aに含まれる何れか1つのルールを参照する。そのルールは、汎用ルールR1000であっても、専用ルールR1010などであってもよい。 Once each parameter is set in this manner, the development tool 50 performs automatic correction processing for the functional block. First, the development tool 50 refers to the rules of the washing machine 500 corresponding to the functional block. For example, the development tool 50 refers to any one rule included in the rule database 42a shown in FIG. 27B. The rule may be a general rule R1000, a special rule R1010, or the like.

そして、開発ツール50は、入力されたパラメータである回転数の数値、例えば1200rpmが、ルールに示されるパラメータ範囲に含まれる、すなわちその数値が非許容範囲に含まれると判定すると、そのパラメータの数値を修正する。例えば、そのパラメータ範囲が、1000rpmを超える範囲である場合、開発ツール50は、図36の(b)に示すように、設定温度の数値を1200rpmから1000rpmに修正する。このとき、開発ツール50は、その回転数を下げるため、継続時間が長くなるように、その継続時間のパラメータを修正してもよい。このようなパラメータの修正によって、脱水の機能ブロックが変更される。すなわち、その機能ブロックを含むアプリケーションが変更される。これにより、洗濯機500の安全性を担保することができる。 Then, when the development tool 50 determines that the input parameter, ie, the rotation speed value, for example, 1200 rpm, is included in the parameter range indicated in the rule, that is, the value is included in the non-permissible range, the development tool 50 determines that the value of the parameter is Correct. For example, if the parameter range exceeds 1000 rpm, the development tool 50 modifies the numerical value of the set temperature from 1200 rpm to 1000 rpm, as shown in FIG. 36(b). At this time, the development tool 50 may modify the duration parameter so that the duration becomes longer in order to lower the number of revolutions. Modification of such parameters changes the dehydration functional block. That is, the application including the functional block is changed. Thereby, the safety of washing machine 500 can be ensured.

図37は、機能ブロックの接続の自動修正処理の第1の例を示す図である。 FIG. 37 is a diagram illustrating a first example of automatic correction processing for connection of functional blocks.

例えば、図37の(a)に示すように、操作者は、機能の順番を設定するための設定画面D6において、入力部54に対する入力操作を行うことによって、脱水の機能ブロック1070の次の順番に実行される機能ブロックとして撹拌の機能ブロック1050を配置する入力をする。これは、第5のルール1403で許容されないため、開発ツール50は、図37の(b)に示すように、脱水の機能ブロック1070の次に実行される順番の制御情報として所定期間(例えば30秒間)何もせずに待機する動作に関するパラメータを含む待機動作の既往ブロック1150を追加する。つまり、脱水動作の機能ブロック1070の次に脱水動作とは異なる回転を用いた撹拌動作の機能ブロック1050が配置されると、開発ツール50は、脱水動作の機能ブロック1070と撹拌動作の機能ブロック1050との間に待機動作の機能ブロック1150を追加する修正を自動的に行う。このような機能ブロックの順番に他の機能ブロックを追加する修正によって、機能ブロックの接続が変更される。すなわち、その機能ブロックを含むアプリケーションが変更される。これにより、洗濯機500の安全性を担保することができる。 For example, as shown in FIG. 37(a), the operator can change the order of the dehydration function block 1070 by performing an input operation on the input section 54 on the setting screen D6 for setting the order of functions. An input is made to arrange the stirring function block 1050 as a function block to be executed. Since this is not allowed by the fifth rule 1403, the development tool 50 sets the control information for the next execution order of the dehydration function block 1070 for a predetermined period (for example, 30 A waiting operation history block 1150 is added that includes parameters related to an operation of waiting without doing anything (seconds). In other words, when the functional block 1050 for a stirring operation using a rotation different from that for the dehydrating operation is placed next to the functional block 1070 for the dewatering operation, the development tool 50 can select the functional block 1070 for the dehydrating operation and the functional block 1050 for the stirring operation. A modification is automatically made to add a function block 1150 for standby operation between the two. The connection of the functional blocks is changed by such modification of adding another functional block to the order of the functional blocks. That is, the application including the functional block is changed. Thereby, the safety of washing machine 500 can be ensured.

なお、開発ツール50は、図37の(b)に示すように、自動修正を行った場合、自動修正を行った理由を示すメッセージD7を設定画面D6に表示してもよい。 Note that, as shown in FIG. 37(b), when automatic correction is performed, the development tool 50 may display a message D7 indicating the reason for automatic correction on the setting screen D6.

図38は、機能ブロックの接続の自動修正処理の第2の一例を示す図である。 FIG. 38 is a diagram illustrating a second example of automatic correction processing for connection of functional blocks.

例えば、図38の(a)に示すように、操作者は、機能の順番を設定するための設定画面D6において、入力部54に対する入力操作を行うことによって、脱水の機能ブロック1070の次の順番に実行される機能ブロックとして撹拌の機能ブロック1050を配置する入力をする。これは、第5のルール1403で許容されないため、開発ツール50は、図38の(b)に示すように、脱水の機能ブロック1070の次に撹拌の機能ブロック1050を配置できない旨のメッセージD8を設定画面D6に表示してもよい。なお、メッセージD8は、機能ブロックの順番を修正するか否かをユーザに問い合わせる表示を含んでいてもよい。図38の(b)に示すように問い合わせる表示に「はい」、「いいえ」が含まれており、ユーザにより「はい」への入力が行われた場合、開発ツール50は、修正を受け付ける画面に切り替えてもよい。「いいえ」への入力が行われた場合、開発ツール50は、機能の順番を設定する画面D6の表示を終了してもよい。 For example, as shown in FIG. 38A, the operator can change the order of the dehydration function block 1070 by performing an input operation on the input section 54 on the setting screen D6 for setting the order of functions. An input is made to arrange the stirring function block 1050 as a function block to be executed. Since this is not allowed by the fifth rule 1403, the development tool 50 sends a message D8 indicating that the stirring function block 1050 cannot be placed next to the dehydration function block 1070, as shown in FIG. 38(b). It may be displayed on the setting screen D6. Note that the message D8 may include a display asking the user whether or not to modify the order of the functional blocks. As shown in FIG. 38(b), if the inquiry display includes "Yes" and "No" and the user inputs "Yes", the development tool 50 displays a screen for accepting modifications. You may switch. If "No" is input, the development tool 50 may end displaying the screen D6 for setting the order of functions.

図39は、機能ブロックの接続の自動修正処理の第3の一例を示す図である。 FIG. 39 is a diagram illustrating a third example of automatic correction processing for connection of functional blocks.

例えば、図39の(a)に示すように、操作者は、機能の順番を設定するための設定画面D6において、入力部54に対する入力操作を行うことによって、脱水の機能ブロック1070の次の順番に実行される機能ブロックとして、ブロック一覧領域D2から撹拌の機能ブロック1050をドラックアンドドロップで配置しようとしたとする。これは、第5のルール1403で許容されないため、開発ツール50は、図39の(b)に示すように、脱水の機能ブロック1070の次に撹拌の機能ブロック1050を配置できない旨のメッセージD9を設定画面D6に表示してもよい。なお、メッセージD9は、他の機能ブロックを選択することを促すメッセージを含んでいてもよい。この場合にメッセージD9に含まれる、他の機能ブロックは、各ルールによって許容される機能ブロックを具体的に提示してもよい。 For example, as shown in FIG. 39(a), the operator can change the order of the dehydration function block 1070 by performing an input operation on the input section 54 on the setting screen D6 for setting the order of the functions. Assume that an attempt is made to place a stirring functional block 1050 from the block list area D2 as a functional block to be executed by drag and drop. Since this is not allowed by the fifth rule 1403, the development tool 50 sends a message D9 indicating that the stirring function block 1050 cannot be placed next to the dehydration function block 1070, as shown in FIG. 39(b). It may be displayed on the setting screen D6. Note that the message D9 may include a message prompting the user to select another functional block. In this case, other functional blocks included in message D9 may specifically present functional blocks permitted by each rule.

図40は、機能ブロックの接続の自動修正処理の第4の一例を示す図である。 FIG. 40 is a diagram illustrating a fourth example of automatic correction processing for connection of functional blocks.

例えば、図40に示すように、操作者は、機能の順番を設定するための設定画面D6において、入力部54に対する入力操作を行うことによって、脱水の機能ブロック1070を配置した場合、開発ツール50は、脱水の機能ブロック1070の次に実行される順番が各ルールによって許容されない機能ブロックが選択できないことを示す表示態様でブロック一覧領域D2aを表示してもよい。この場合、例えば、開発ツール50は、撹拌の機能ブロック1050およびドラム回転の機能ブロック1060を示す表示に取り消し線を引いた表示態様としてもよいし、グレーアウトした表示態様としてもよいし、ブロック一覧領域の選択対象から削除してもよい。 For example, as shown in FIG. 40, when the operator places the dehydration function block 1070 by performing an input operation on the input section 54 on the setting screen D6 for setting the order of functions, the development tool 50 may display the block list area D2a in a display manner that indicates that a functional block whose execution order after the dehydration functional block 1070 is not permitted by each rule cannot be selected. In this case, for example, the development tool 50 may have a display mode in which the stirring function block 1050 and the drum rotation function block 1060 are crossed out, grayed out, or in a block list area. may be removed from the selection targets.

図39および図40で例示したように、開発ツール50は、複数の機能ブロックのうちの第1の機能ブロックの入力を受け付け、受け付けた第1の機能ブロックと、選択の順番に関するルールと、に基づいて、第1の機能ブロックの次の順番で実行されることが許容される機能ブロックの条件を特定し、特定した条件に基づいて、第1の機能ブロックの次に実行される順番に設定される第2の機能ブロックの入力を制限してもよい。 As illustrated in FIGS. 39 and 40, the development tool 50 accepts the input of the first functional block among the plurality of functional blocks, and inputs the received first functional block and the rules regarding the order of selection. Based on the specified conditions, a condition for a functional block that is allowed to be executed in the order following the first functional block is specified, and based on the specified condition, the function block is set to be executed in the order subsequent to the first functional block. The input of the second functional block may be limited.

[5.4 効果など]
以上のように、本実施の形態では、ブロックを含むアプリケーションとルールデータベースとにより、多様多種でかつ安全なアプリケーションを開発可能な環境を提供することができる。したがって、その環境下で自由に開発したアプリケーションに対して、物理的に運動するアクチュエータ22、又は熱エネルギーを出力する加熱器23の安全な駆動することを可能にしている。その結果、例えば、自由度の高い多様多種なアプリケーションの開発と、安全性を担保するためのルールデータベースの開発とを並行して作成することが可能になり、多様多種でかつ安全なアプリケーションを早期に開発することを可能にすることができる。
[5.4 Effects etc.]
As described above, in this embodiment, it is possible to provide an environment in which a wide variety of safe applications can be developed using applications including blocks and a rule database. Therefore, it is possible to safely drive the physically moving actuator 22 or the heater 23 that outputs thermal energy for applications freely developed in that environment. As a result, for example, it is now possible to develop a wide variety of applications with a high degree of freedom and to create a rule database to ensure safety in parallel, allowing the development of diverse and safe applications at an early stage. can be made possible to develop.

また、本実施の形態と、実施の形態1~4のうちの何れかの形態とを組み合わせれば、アプリケーションの提供後においても、ルールデータベースを変更することで、より安全性を担保したアプリケーションへの変更も可能になる。また、事前に製造者が想定しない状況の改善が必要になった場合においても、多様多種なアプリケーション自体を変更せずとも、アプリケーションとは独立して、ルールデータベースが規定されているため、そのルールデータベースを更新することで、全てのアプリケーションへの対応が可能になる。 Furthermore, if this embodiment is combined with any of Embodiments 1 to 4, the rule database can be changed even after the application has been provided, making the application more secure. It is also possible to change. In addition, even if it becomes necessary to improve a situation that the manufacturer has not anticipated in advance, the rule database is defined independently of the application, so there is no need to change the various applications themselves. By updating the database, it becomes compatible with all applications.

例えば、本実施の形態における情報処理方法は、洗濯機500の運転を制御するための複数の制御情報を含む洗濯情報を生成する。この情報処理方法は、複数のブロック(制御情報)、及び、順番情報を含むシーケンス(洗濯情報)の入力を受け付け、洗濯の順番に関するルールに基づいてシーケンスを修正する。複数のブロックのそれぞれは、洗濯物に対する洗濯に関する運転を行う洗濯機能部を制御するパラメータに関する。順番情報は、複数のブロックを実行する順番に関する。 For example, the information processing method in this embodiment generates laundry information that includes a plurality of pieces of control information for controlling the operation of washing machine 500. This information processing method accepts input of a plurality of blocks (control information) and a sequence (washing information) including order information, and modifies the sequence based on rules regarding the order of washing. Each of the plurality of blocks relates to parameters for controlling a washing function unit that performs an operation related to washing laundry. The order information relates to the order in which multiple blocks are executed.

これによれば、複数のブロックで規定されたアプリケーションに基づいて洗濯機能部を駆動させることができる。従って、洗濯機500の制御を抽象化したブロックを用いたアプリケーションの開発が可能となり、多種多彩なアプリケーションを製造者だけではなく、サードパーティも開発することができ、これらのアプリケーションを洗濯機500で簡単に実行することが可能となる。さらに、この開発時には、許容されない順番のブロックを自動的に修正することができる。したがって、洗濯機能部が許容されない順番の動作を実行することを抑制することができる。つまり、もしアプリケーション開発者が洗濯機能部が許容されない順番の動作を誤って設定した場合でも、洗濯機500を安全に制御することができないアプリケーションが生成されることを抑制することができる。また、洗濯機500が非効率的に動作するアプリケーションが生成されることを抑制することができる。したがって、アプリケーション開発者が、洗濯機能部の安全性の担保よりもユーザに適することを重視したアプリケーションを作成した場合でも、アプリケーションで制御される洗濯機500の安全性を担保することができ、その安全性を向上させることができる。また、洗濯機500の動作効率を向上させることができ、消費電力を低減することができる。 According to this, the washing function section can be driven based on applications defined by a plurality of blocks. Therefore, it is possible to develop applications using blocks that abstract the control of the washing machine 500, and not only manufacturers but also third parties can develop a wide variety of applications. It can be easily executed. Furthermore, during this development, blocks in an unacceptable order can be automatically corrected. Therefore, it is possible to prevent the washing function section from performing operations in an unacceptable order. In other words, even if the application developer mistakenly sets the washing function unit to operate in an unacceptable order, it is possible to prevent the creation of an application that cannot safely control the washing machine 500. Furthermore, generation of an application that causes washing machine 500 to operate inefficiently can be suppressed. Therefore, even if an application developer creates an application that emphasizes suitability for the user rather than ensuring the safety of the washing function section, the safety of the washing machine 500 controlled by the application can be ensured. Safety can be improved. Moreover, the operating efficiency of washing machine 500 can be improved and power consumption can be reduced.

また例えば、開発ツール50は、シーケンスに含まれる第1ブロック、及び、順番情報において第1ブロックの次に実行される順番に設定されている第2ブロックの実行がルールで許容されない場合、シーケンスに、第1ブロックの次に実行される順番の制御情報として第3ブロックを追加してもよい。 For example, if the rules do not allow execution of the first block included in the sequence and the second block that is set to be executed next to the first block in the order information, the development tool 50 adds , a third block may be added as control information of the order to be executed next to the first block.

これによれば、連続して実行される2つのブロックが許容されない場合、当該2つのブロックの間の順番に第3ブロックを追加することができるので、洗濯機能部が許容されない順番の2つのブロックの動作を実行することを防止することができる。 According to this, if two blocks that are executed consecutively are not allowed, a third block can be added in the order between the two blocks, so that the washing function unit can replace the two blocks in the order that is not allowed. can be prevented from performing the following actions.

また例えば、開発ツール50は、シーケンスに含まれる第1ブロック、及び、順番情報において第1ブロックの次に実行される順番に設定されている第2ブロックの実行がルールで許容されない場合、第1ブロックに含まれるパラメータに関する情報、又は、第2ブロックに含まれるパラメータに関する情報を修正してもよい。 For example, if the rules do not allow execution of the first block included in the sequence and the second block that is set to be executed next to the first block in the order information, the development tool 50 may execute the first block included in the sequence. The information regarding the parameters included in the block or the information regarding the parameters included in the second block may be modified.

これによれば、連続して実行される2つのブロックが許容されない場合、当該2つのブロック内のいずれかに含まれるパラメータに関する情報を修正することができるので、洗濯機能部が許容されない順番の2つのブロックの動作を実行することを防止することができる。 According to this, if two blocks that are executed consecutively are not allowed, the information regarding the parameters included in either of the two blocks can be modified, so that the washing function section It is possible to prevent one block of operations from being executed.

また例えば、開発ツール50は、シーケンスに含まれる第1ブロック、及び、順番情報において第1ブロックの次に実行される順番に設定されている第2ブロックの実行がルールで許容されない場合、第2ブロックの実行を制限してもよい。 For example, if the rules do not permit the execution of the first block included in the sequence and the second block that is set to be executed next to the first block in the order information, the development tool 50 may execute the second block included in the sequence. Block execution may be restricted.

これによれば、連続して実行される2つのブロックが許容されない場合、第2ブロックの実行を制限することができるので、洗濯機能部が許容されない順番の2つのブロックの動作を実行することを防止することができる。 According to this, when two blocks to be executed consecutively are not allowed, execution of the second block can be restricted, so that the washing function section does not execute the operations of the two blocks in the order that is not allowed. It can be prevented.

また例えば、第1のルールでは、第1ブロックが洗濯機500の水槽502への給水に関するパラメータを含み、かつ、第2ブロックが禁水環境で実行される運転を制御するパラメータを含むことが許容されなくてもよい。例えば、禁水環境で実行される運転は、水槽502に水が貯められているときに実行されることが許容されない運転を含んでもよい。このため、水槽502に水がある状態で実行されても十分な効果が得られない第2ブロックに基づく運転が実行されることを防止することができる。これにより、無駄な運転を抑制でき、消費電力を低減することができる。 For example, in the first rule, it is permissible for the first block to include parameters related to water supply to the water tank 502 of the washing machine 500, and for the second block to include parameters for controlling operations performed in a water-prohibited environment. It doesn't have to be done. For example, operations performed in a water-prohibited environment may include operations that are not allowed to be performed while water is stored in water tank 502. Therefore, it is possible to prevent the operation based on the second block from being executed, which would not produce sufficient effects even if executed with water in the water tank 502. Thereby, unnecessary operation can be suppressed and power consumption can be reduced.

また例えば、第2のルールでは、第1ブロックが洗濯機500の水槽502内の加熱に関するパラメータを含み、かつ、第2ブロックが禁熱環境で実行される運転を制御するパラメータを含むことが許容されなくてもよい。例えば、禁熱環境で実行される運転は、水槽502内の温度が所定の温度以上のときに実行されることが許容されない運転を含んでもよい。このため、水槽502内の温度が所定の温度以上であるときに実行されることを抑制できるため、水槽502内の高温環境が洗濯機500の外部に悪影響を与えることを低減することができ、安全性を担保することができる。 For example, in the second rule, it is allowed that the first block includes parameters related to heating in the water tank 502 of the washing machine 500, and the second block includes parameters for controlling the operation performed in a heat-free environment. It doesn't have to be done. For example, the operation performed in a heat-free environment may include an operation that is not allowed to be performed when the temperature in the water tank 502 is equal to or higher than a predetermined temperature. Therefore, it is possible to suppress execution when the temperature inside the water tank 502 is higher than a predetermined temperature, so it is possible to reduce the adverse effect of the high temperature environment inside the water tank 502 on the outside of the washing machine 500. Safety can be guaranteed.

また例えば、第3のルールでは、第1ブロックが水が貯められている洗濯槽503の回転に関するパラメータを含み、かつ、第2ブロックが禁動環境で実行される運転を制御するパラメータを含むことが許容されなくてもよい。例えば、禁動環境で実行される運転は、洗濯槽503内の水面を動かすことが許容されない運転を含んでもよい。このため、水面の揺れを低減した状態で第2ブロックの運転を制御することができるため、効果的に第2ブロックの運転を制御することができる。 For example, in the third rule, the first block includes parameters related to the rotation of the washing tub 503 in which water is stored, and the second block includes parameters for controlling the operation performed in a prohibited environment. may not be allowed. For example, an operation performed in a prohibited environment may include an operation in which movement of the water surface in the washing tub 503 is not allowed. Therefore, since the operation of the second block can be controlled while the shaking of the water surface is reduced, the operation of the second block can be effectively controlled.

また例えば、第4のルールでは、第1ブロックが洗濯機500の洗濯槽503内への送風に関するパラメータを含み、かつ、第2ブロックが禁動環境で実行される運転を制御するパラメータを含むことが許容されなくてもよい。このため、水面の揺れを低減した状態で第2ブロックの運転を制御することができるため、効果的に第2ブロックの運転を制御することができる。 For example, in the fourth rule, the first block includes parameters related to air blowing into the washing tub 503 of the washing machine 500, and the second block includes parameters for controlling operations performed in a prohibited environment. may not be allowed. Therefore, since the operation of the second block can be controlled while the shaking of the water surface is reduced, the operation of the second block can be effectively controlled.

また例えば、第5のルールでは、第1ブロックが洗濯機500の洗濯槽503を第1の回転で回転させるパラメータを含み、かつ、第2ブロックが第1の回転とは異なる第2の回転で洗濯槽503を回転させるパラメータを含むことが許容されなくてもよい。例えば、第1の回転における第1回転速度は、第2の回転の第2回転速度と異なっていてもよい。また例えば、第1の回転の向きは、第2の回転の向きと異なっていてもよい。このため、異なる回転の運転が連続して実行されることを抑制でき、効果的に洗濯槽503の回転を切り替えることができる。 For example, in the fifth rule, the first block includes a parameter for rotating the washing tub 503 of the washing machine 500 in a first rotation, and the second block includes a parameter for rotating the washing tub 503 of the washing machine 500 in a second rotation different from the first rotation. Including a parameter for rotating the washing tub 503 may not be allowed. For example, the first rotational speed during the first rotation may be different from the second rotational speed during the second rotation. Also, for example, the first direction of rotation may be different from the second direction of rotation. For this reason, it is possible to suppress the operation of different rotations from being performed continuously, and it is possible to effectively switch the rotation of the washing tub 503.

また例えば、開発ツール50は、第1ブロックが洗濯機500の水槽502への給水に関するパラメータを含み、かつ、第2ブロックが禁水環境で実行される運転を制御するパラメータを含む場合、第1のルールに基づいて、シーケンスに、第1ブロックと第2ブロックとの間に実行される順番の制御情報として、水槽502からの排水に関するパラメータを含む第3ブロックを追加する。このため、禁水環境で実行される運転が開始される前に排水することで水槽502を禁水環境とすることができ、効果的に第2ブロックの動作を実行することができる。 For example, if the first block includes parameters related to water supply to the water tank 502 of the washing machine 500 and the second block includes parameters for controlling operations performed in a water-prohibited environment, the development tool 50 may Based on the rule, a third block including parameters related to drainage from the water tank 502 is added to the sequence as control information for the order of execution between the first block and the second block. Therefore, by draining water before starting an operation performed in a water-free environment, the water tank 502 can be made into a water-free environment, and the operation of the second block can be effectively executed.

また例えば、開発ツール50は、第1ブロックが洗濯機500の水槽502への給水に関するパラメータを含み、かつ、第2ブロックが禁水環境で実行される運転を制御するパラメータを含む場合、第1のルールに基づいて、禁水環境で実行される運転を制御するパラメータの直前に水槽502からの排水に関するパラメータを追加するように、第2ブロックを修正してもよい。このため、禁水環境で実行される運転が開始される前に排水することで水槽502を禁水環境とすることができ、効果的に第2ブロックの動作を実行することができる。 For example, if the first block includes parameters related to water supply to the water tank 502 of the washing machine 500 and the second block includes parameters for controlling operations performed in a water-prohibited environment, the development tool 50 may Based on the rule, the second block may be modified to add a parameter regarding drainage from the water tank 502 immediately before the parameter controlling the operation performed in a water-prohibited environment. Therefore, by draining water before starting an operation performed in a water-free environment, the water tank 502 can be made into a water-free environment, and the operation of the second block can be effectively executed.

また例えば、開発ツール50は、第1ブロックが洗濯機500の水槽502内の加熱に関するパラメータを含み、かつ、第2ブロックが禁熱環境で実行される運転を制御するパラメータを含む場合、第2のルールに基づいて、シーケンスに、第1ブロックと第2ブロックとの間に実行される順番の制御情報として、水槽502の放熱に関するパラメータを含む第3ブロックを追加してもよい。このため、禁熱環境で実行される運転が開始される前に放熱することで水槽502の温度を低下させて禁熱環境とすることができ、効果的に第2ブロックの動作を実行することができる。 Further, for example, if the first block includes parameters related to heating in the water tank 502 of the washing machine 500 and the second block includes parameters for controlling the operation performed in a heat-free environment, the development tool 50 may Based on the rule, a third block including parameters related to heat radiation of the water tank 502 may be added to the sequence as control information for the order of execution between the first block and the second block. Therefore, by dissipating heat before starting the operation performed in a heat-free environment, the temperature of the water tank 502 can be lowered to create a heat-free environment, and the operation of the second block can be effectively executed. Can be done.

また例えば、開発ツール50は、第1ブロックが洗濯機500の水槽502内の加熱に関するパラメータを含み、かつ、第2ブロックが禁熱環境で実行される運転を制御するパラメータを含む場合、第2のルールに基づいて、禁熱環境で実行される運転を制御するパラメータの直前に水槽502の放熱に関するパラメータを追加するように、第2ブロックを修正してもよい。このため、禁熱環境で実行される運転が開始される前に放熱することで水槽502の温度を低下させて禁熱環境とすることができ、効果的に第2ブロックの動作を実行することができる。 Further, for example, if the first block includes parameters related to heating in the water tank 502 of the washing machine 500 and the second block includes parameters for controlling the operation performed in a heat-free environment, the development tool 50 may Based on the rule, the second block may be modified to add a parameter related to heat radiation of the water tank 502 immediately before the parameter controlling the operation performed in a heat-free environment. Therefore, by dissipating heat before starting the operation performed in a heat-free environment, the temperature of the water tank 502 can be lowered to create a heat-free environment, and the operation of the second block can be effectively executed. Can be done.

また例えば、開発ツール50は、ルールに基づき、シーケンスに含まれる第1ブロック、及び、順番情報において第1ブロックの次に実行される順番に設定されている第2ブロックが重複する場合、(i)第1ブロックもしくは第2ブロックを削除する、又は、(ii)第1ブロックに含まれるパラメータに関する情報もしくは第2ブロックに含まれるパラメータに関する情報を削除してもよい。このため、重複している動作のブロックまたはパラメータを削除するため、無駄な動作を実行することを低減することができる。よって、消費電力を低減することができる。 For example, based on the rule, if the first block included in the sequence and the second block set to be executed next to the first block in the order information overlap, (i ) The first block or the second block may be deleted, or (ii) the information regarding the parameters included in the first block or the information regarding the parameters included in the second block may be deleted. Therefore, since blocks or parameters of duplicate operations are deleted, it is possible to reduce the execution of unnecessary operations. Therefore, power consumption can be reduced.

(実施の形態5の変形例1)
実施の形態5では、開発ツール50は、装置20(洗濯機500)とは別の装置により構成されているとしたがこれに限らない。洗濯機500は、開発ツール50が有する機能と同様の機能を有していてもよい。この場合の洗濯機は、制御装置550および操作パネル560が、開発ツール50が有する機能と同様の機能を実現してもよい。これにより、ユーザは、洗濯機の操作パネル56を操作することによって、機能ブロックのパラメータの設定、機能ブロックの順番の設定などのようにアプリケーションの開発(作成)を行うことができる。
(Modification 1 of Embodiment 5)
In the fifth embodiment, the development tool 50 is configured as a device different from the device 20 (washing machine 500), but the invention is not limited to this. Washing machine 500 may have the same functions as development tool 50. In the washing machine in this case, the control device 550 and the operation panel 560 may realize the same functions as the development tool 50. Thereby, by operating the operation panel 56 of the washing machine, the user can develop (create) an application, such as setting parameters of functional blocks and setting the order of functional blocks.

(他の実施の形態)
以上、本開示の1つまたは複数の態様に係るシステムについて、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示の1つまたは複数の態様の範囲内に含まれてもよい。
(Other embodiments)
The system according to one or more aspects of the present disclosure has been described above based on the embodiments, but the present disclosure is not limited to the embodiments. Unless departing from the spirit of the present disclosure, various modifications that can be thought of by those skilled in the art may be made to the present embodiment, and embodiments constructed by combining components of different embodiments may also include one or more of the present disclosure. may be included within the scope of the embodiments.

また、上記各実施の形態において、シーケンスマネージャ100及びデバイスマネージャ200は、クラウドサーバ10に含まれていたが、これに限定されない。シーケンスマネージャ100及び/又はデバイスマネージャ200は、装置20に含まれてもよい。また、UI400は、端末30に含まれていたが、装置20に含まれてもよい。 Further, in each of the above embodiments, the sequence manager 100 and the device manager 200 are included in the cloud server 10, but the present invention is not limited thereto. Sequence manager 100 and/or device manager 200 may be included in apparatus 20. Furthermore, although the UI 400 was included in the terminal 30, it may also be included in the device 20.

また、上記各実施の形態において、劣化情報に基づいて、アプリケーションが変更されてもよい。例えば、デバイス300は、複数の劣化レベルと複数のパラメータの変換方法とが対応付けられたパラメータ変換情報を参照して、劣化レベルに対応する変換方法を取得し、取得した変換方法を用いてブロックに含まれるパラメータを変換してもよい。変換方法としては、例えば、変換後の値で定義されてもよいし、変換前の値に適用される係数で定義されてもよい。 Further, in each of the embodiments described above, the application may be changed based on the deterioration information. For example, the device 300 refers to parameter conversion information in which a plurality of degradation levels and a plurality of parameter conversion methods are associated with each other, obtains a conversion method corresponding to the degradation level, and blocks using the obtained conversion method. You may convert parameters included in . The conversion method may be defined, for example, by a value after conversion, or by a coefficient applied to a value before conversion.

また、上記各実施の形態では、実行前確認においてパラメータが非許容範囲に含まれる場合にブロックを変更し、その後ブロックが実行されていたが、これに限ったものではない。例えば、パラメータが非許容範囲に含まれる場合に、デバイス300の状態が想定と異なっていたときは、ブロックを実行せず、デバイスマネージャ200及び/又はシーケンスマネージャ100に実行中止(エラー)が通知されてもよい。 Further, in each of the above embodiments, when a parameter is included in an unacceptable range in the pre-execution confirmation, the block is changed and the block is then executed, but the present invention is not limited to this. For example, if a parameter falls within an unacceptable range and the state of the device 300 is different from expected, the block is not executed and the device manager 200 and/or sequence manager 100 is notified of execution abort (error). You can.

複数の機能ブロックで規定されたアプリケーションを実行することができる家庭用電化製品等に利用できる。 It can be used in household electrical appliances and the like that can execute applications defined by multiple functional blocks.

1 システム
2a、2b、2c、2d 施設
10 クラウドサーバ
11 プロセッサ
12 メモリ
20、20a、20b、20c、20d、20e、20f、20g、20h 装置
21 筐体
22 アクチュエータ
23 加熱器
24 制御部
30、30a、30b、30c、30d 端末
31 ディスプレイ
32 入力デバイス
41 ブロックデータベース
42、1400、1400C ルールデータベース
50 開発ツール
51 プロセッサ
52 メモリ
53 ディスプレイ
54 入力部
60 アプリ提供サーバ
100 シーケンスマネージャ
200 デバイスマネージャ
300、300a、300b、300c、300d、300e、300f、300g、300h デバイス
400、400a、400b、400c、400d UI
500 洗濯機
501 筐体
502 水槽
503 洗濯槽
504 洗濯モータ
505 ドア
506 ドアロック機構
507 振動センサ
511 給水弁
512 給水管
513 自動投入機
515 水位センサ
516 バスポンプ
517 風呂水配管
521 排水管
522 排水フィルタ
523 排水弁
524 循環ポンプ
525 循環用配管
531 吸気センサ
532 ヒートポンプ
533 ダクト
534 循環ファン
535 温風センサ
536 除菌装置
541 第1泡センサ
542 第2泡センサ
543 温水ヒータ
544 温水センサ
550 制御装置
560 操作パネル
570 通信部
1000、1010、1020、1030、1040、1050、1060、1070、1080、1090、1100、1110、1120、1130、1140、1301 ブロック
1011、1012、1021~1023、1031、1041、1051~1056、1061~1064、1071、1072、1081、1091、1101、1102、1111、1112、1121、1131、1132、1141 パラメータ
1200 デバイスデータベース
1201 デバイス情報
1300 実行内容宣言
1302 デバイスに関する情報
1303 順番情報
1401~1405、1401C、1402C、1403C、1404C ルール
2000 情報処理システム
F100 準備フェーズ
F200 アプリ実行前フェーズ
F300 アプリ実行フェーズ
R1000 汎用ルール
R1010、R1020、R1030 専用ルール
1 System 2a, 2b, 2c, 2d Facility 10 Cloud server 11 Processor 12 Memory 20, 20a, 20b, 20c, 20d, 20e, 20f, 20g, 20h Device 21 Housing 22 Actuator 23 Heater 24 Control unit 30, 30a, 30b, 30c, 30d terminal 31 display 32 input device 41 block database 42, 1400, 1400C rule database 50 development tool 51 processor 52 memory 53 display 54 input section 60 application providing server 100 sequence manager 200 device manager 300, 300a, 300b, 300c , 300d, 300e, 300f, 300g, 300h Device 400, 400a, 400b, 400c, 400d UI
500 Washing machine 501 Housing 502 Water tank 503 Washing tank 504 Washing motor 505 Door 506 Door lock mechanism 507 Vibration sensor 511 Water supply valve 512 Water supply pipe 513 Automatic dispenser 515 Water level sensor 516 Bath pump 517 Bath water piping 521 Drain pipe 522 Drain filter 523 Drain valve 524 Circulation pump 525 Circulation piping 531 Intake sensor 532 Heat pump 533 Duct 534 Circulation fan 535 Warm air sensor 536 Sterilization device 541 First foam sensor 542 Second foam sensor 543 Hot water heater 544 Hot water sensor 550 Control device 560 Operation panel 570 Communication department 1000, 1010, 1020, 1030, 1040, 1050, 1060, 1070, 1080, 1090, 1100, 1110, 1120, 1130, 1140, 1301 Block 1011, 1012, 1021-1023, 1031, 1041, 1051-1056 , 1061 to 1064, 1071, 1072, 1081, 1091, 1101, 1102, 1111, 1112, 1121, 1131, 1132, 1141 Parameters 1200 Device database 1201 Device information 1300 Execution content declaration 1302 Information about devices 1303 Order information 1401 to 1405, 14 01C , 1402C, 1403C, 1404C Rule 2000 Information processing system F100 Preparation phase F200 Pre-application execution phase F300 Application execution phase R1000 General-purpose rule R1010, R1020, R1030 Dedicated rule

Claims (21)

洗濯機の運転を制御するための洗濯情報を生成する、プロセッサにより実行される情報処理方法であって、
それぞれが洗濯物に対する前記運転を行う洗濯機能部を制御するパラメータに関する制御情報である複数の制御情報、及び、前記複数の制御情報を実行する順番に関する順番情報を含む第1の洗濯情報の入力を受け付け、
洗濯の順番に関するルールに基づいて前記第1の洗濯情報を修正し、修正により得られた第2の洗濯情報を前記洗濯情報として生成し、
前記洗濯機は前記洗濯機能部を有し、
前記第2の洗濯情報は、前記第2の洗濯情報に含まれる複数の制御情報を、前記第2の洗濯情報に含まれる順番情報で示される順番に前記洗濯機能部に実行させるための情報である
情報処理方法。
An information processing method executed by a processor that generates washing information for controlling operation of a washing machine, the method comprising:
inputting first laundry information including a plurality of control information, each of which is control information regarding a parameter for controlling a washing function unit that performs the operation on the laundry; and order information regarding the order in which the plurality of control information is executed; Reception,
modifying the first laundry information based on rules regarding the order of laundry , and generating second laundry information obtained by the modification as the laundry information;
The washing machine has the washing function section,
The second laundry information is information for causing the laundry function section to execute a plurality of pieces of control information included in the second laundry information in the order indicated by the order information included in the second laundry information. be
Information processing method.
前記修正では、前記第1の洗濯情報に含まれる第1の制御情報、及び、前記第1の洗濯情報に含まれる前記順番情報において前記第1の制御情報の次に実行される順番に設定されている第2の制御情報の実行が前記ルールで許容されない場合、前記第1の洗濯情報に、前記第1の制御情報の次に実行される順番の制御情報として第3の制御情報を追加する
請求項1に記載の情報処理方法。
In the modification, the first control information included in the first washing information and the order information included in the first washing information are set to the order in which the first control information is executed next. If execution of the second control information is not permitted by the rules, third control information is added to the first washing information as control information to be executed next to the first control information. The information processing method according to claim 1.
前記修正では、前記第1の洗濯情報に含まれる第1の制御情報、及び、前記第1の洗濯情報に含まれる前記順番情報において前記第1の制御情報の次に実行される順番に設定されている第2の制御情報の実行が前記ルールで許容されない場合、前記第1の制御情報に含まれる前記パラメータに関する情報、又は、前記第2の制御情報に含まれる前記パラメータに関する情報、を修正する
請求項1に記載の情報処理方法。
In the modification, the first control information included in the first washing information and the order information included in the first washing information are set to the order in which the first control information is executed next. If execution of the second control information is not permitted by the rules, the information regarding the parameters included in the first control information or the information regarding the parameters included in the second control information is corrected. The information processing method according to claim 1.
洗濯機の運転を制御するための複数の制御情報を含む洗濯情報を生成する、プロセッサにより実行される情報処理方法であって、
前記複数の制御情報のそれぞれは、洗濯物に対する前記運転を行う洗濯機能部を制御するパラメータに関する制御情報を含み、
前記情報処理方法は、前記複数の制御情報の入力を受け付けることで前記洗濯情報を生成し、
前記洗濯情報の生成では、
前記複数の制御情報のうちの第1の制御情報の入力を受け付け、
受け付けた前記第1の制御情報と、洗濯の順番に関するルールと、に基づいて、前記第1の制御情報の次の順番で実行されることが許容される制御情報の条件を特定し、
特定した前記条件に基づいて、前記第1の制御情報の次に実行される順番に設定される第2の制御情報の入力を制限する
情報処理方法。
An information processing method executed by a processor that generates laundry information including a plurality of control information for controlling the operation of a washing machine , the method comprising :
Each of the plurality of pieces of control information includes control information regarding parameters for controlling a washing function unit that performs the operation on the laundry,
The information processing method generates the laundry information by receiving input of the plurality of control information,
In generating the laundry information,
receiving input of first control information among the plurality of control information;
Based on the received first control information and rules regarding the order of washing, specifying conditions for control information that are allowed to be executed in the next order of the first control information,
An information processing method that limits input of second control information that is set in an order of execution after the first control information, based on the specified condition.
前記ルールでは、前記第1の制御情報が前記洗濯機の槽への給水に関するパラメータを含み、かつ、前記第2の制御情報が禁水環境で実行される運転を制御するパラメータを含むことが許容されない
請求項2から4のいずれか1項に記載の情報処理方法。
The rule allows that the first control information includes parameters related to water supply to a tub of the washing machine, and that the second control information includes parameters for controlling operations performed in a water-prohibited environment. The information processing method according to any one of claims 2 to 4.
前記禁水環境で実行される運転は、前記槽に水が貯められているときに実行されることが許容されない運転を含む
請求項5に記載の情報処理方法。
The information processing method according to claim 5, wherein the operation executed in a water-prohibited environment includes an operation that is not allowed to be executed when water is stored in the tank.
前記ルールでは、前記第1の制御情報が前記洗濯機の槽内の加熱に関するパラメータを含み、かつ、前記第2の制御情報が禁熱環境で実行される運転を制御するパラメータを含むことが許容されない
請求項2から4のいずれか1項に記載の情報処理方法。
The rule allows that the first control information includes parameters related to heating in the tub of the washing machine, and that the second control information includes parameters for controlling operations performed in a heat-free environment. The information processing method according to any one of claims 2 to 4.
前記禁熱環境で実行される運転は、前記槽内の温度が所定の温度以上のときに実行されることが許容されない運転を含む
請求項7に記載の情報処理方法。
The information processing method according to claim 7, wherein the operation executed in the heat-free environment includes an operation that is not allowed to be executed when the temperature inside the tank is equal to or higher than a predetermined temperature.
前記ルールでは、前記第1の制御情報が水が貯められている前記洗濯機の槽の回転に関するパラメータを含み、かつ、前記第2の制御情報が禁動環境で実行される運転を制御するパラメータを含むことが許容されない
請求項2から4のいずれか1項に記載の情報処理方法。
In the rule, the first control information includes a parameter related to rotation of a tub of the washing machine in which water is stored, and the second control information includes a parameter for controlling an operation performed in a prohibited environment. The information processing method according to any one of claims 2 to 4, wherein the information processing method is not allowed to include.
前記ルールでは、前記第1の制御情報が前記洗濯機の槽内への送風に関するパラメータを含み、かつ、前記第2の制御情報が禁動環境で実行される運転を制御するパラメータを含むことが許容されない
請求項2から4のいずれか1項に記載の情報処理方法。
In the rule, the first control information may include parameters regarding air blowing into the tub of the washing machine, and the second control information may include parameters for controlling an operation performed in a prohibited environment. The information processing method according to any one of claims 2 to 4, wherein the information processing method is not allowed.
前記禁動環境で実行される運転は、前記槽内の水面を動かすことが許容されない運転を含む
請求項9または10に記載の情報処理方法。
The information processing method according to claim 9 or 10, wherein the operation executed in the prohibited environment includes an operation in which movement of the water surface in the tank is not allowed.
前記ルールでは、前記第1の制御情報が前記洗濯機の槽を第1の回転で回転させるパラメータを含み、かつ、前記第2の制御情報が前記第1の回転とは異なる第2の回転で前記槽を回転させるパラメータを含むことが許容されない
請求項2から4のいずれか1項に記載の情報処理方法。
In the rule, the first control information includes a parameter for rotating a tub of the washing machine in a first rotation, and the second control information includes a parameter for rotating a tub of the washing machine in a second rotation different from the first rotation. The information processing method according to any one of claims 2 to 4, wherein the information processing method is not allowed to include a parameter for rotating the tank.
前記第1の回転における第1回転速度は、前記第2の回転の第2回転速度と異なる
請求項12に記載の情報処理方法。
The information processing method according to claim 12, wherein a first rotational speed in the first rotation is different from a second rotational speed in the second rotation.
前記第1の回転の向きは、前記第2の回転の向きと異なる
請求項12に記載の情報処理方法。
The information processing method according to claim 12, wherein the first rotation direction is different from the second rotation direction.
前記修正では、前記第1の洗濯情報に含まれる第1の制御情報が前記洗濯機の槽への給水に関するパラメータを含み、かつ、前記第1の洗濯情報に含まれる前記順番情報において前記第1の制御情報の次に実行される順番に設定されている第2の制御情報が禁水環境で実行される運転を制御するパラメータを含む場合、前記ルールに基づいて、前記第1の洗濯情報に、前記第1の制御情報と前記第2の制御情報との間に実行される順番の制御情報として、前記槽からの排水に関するパラメータを含む第3の制御情報を追加する
請求項1に記載の情報処理方法。
In the modification, the first control information included in the first washing information includes a parameter regarding water supply to the tub of the washing machine, and the order information included in the first washing information includes the first control information. If the second control information set in the order to be executed next to the control information includes a parameter for controlling an operation executed in a water-prohibited environment, based on the rule, the second control information is set to be executed next to the first washing information. , adding third control information including a parameter regarding drainage from the tank as control information in the order of execution between the first control information and the second control information. Information processing method.
前記修正では、前記第1の洗濯情報に含まれる第1の制御情報が前記洗濯機の槽への給水に関するパラメータを含み、かつ、前記第1の洗濯情報に含まれる前記順番情報において前記第1の制御情報の次に実行される順番に設定されている第2の制御情報が禁水環境で実行される運転を制御するパラメータを含む場合、前記ルールに基づいて、前記禁水環境で実行される運転を制御するパラメータの直前に前記槽からの排水に関するパラメータを追加するように、前記第2の制御情報を修正する
請求項1に記載の情報処理方法。
In the modification, the first control information included in the first washing information includes a parameter regarding water supply to the tub of the washing machine, and the order information included in the first washing information includes the first control information. If the second control information set in the order to be executed next to the control information includes a parameter for controlling an operation executed in a water-free environment, based on the rule, the second control information is set in the order of execution in the water-free environment. The information processing method according to claim 1, wherein the second control information is modified so as to add a parameter related to drainage from the tank immediately before a parameter that controls the operation of the tank.
前記修正では、前記第1の洗濯情報に含まれる第1の制御情報が前記洗濯機の槽内の加熱に関するパラメータを含み、かつ、前記第1の洗濯情報に含まれる前記順番情報において前記第1の制御情報の次に実行される順番に設定されている第2の制御情報が禁熱環境で実行される運転を制御するパラメータを含む場合、前記ルールに基づいて、前記第1の洗濯情報に、前記第1の制御情報と前記第2の制御情報との間に実行される順番の制御情報として、前記槽の放熱に関するパラメータを含む第3の制御情報を追加する
請求項1に記載の情報処理方法。
In the modification, the first control information included in the first washing information includes a parameter regarding heating in the tub of the washing machine, and the order information included in the first washing information includes the first control information. If the second control information set in the order to be executed next to the control information includes a parameter for controlling an operation executed in a heat-free environment, based on the rule, the second control information is set to be executed next to the first washing information. The information according to claim 1, wherein third control information including a parameter regarding heat radiation of the tank is added as control information in the order of execution between the first control information and the second control information. Processing method.
前記修正では、前記第1の洗濯情報に含まれる第1の制御情報が前記洗濯機の槽内の加熱に関するパラメータを含み、かつ、前記第1の洗濯情報に含まれる前記順番情報において前記第1の制御情報の次に実行される順番に設定されている第2の制御情報が禁熱環境で実行される運転を制御するパラメータを含む場合、前記ルールに基づいて、前記禁熱環境で実行される運転を制御するパラメータの直前に前記槽の放熱に関するパラメータを追加するように、前記第2の制御情報を修正する
請求項1に記載の情報処理方法。
In the modification, the first control information included in the first washing information includes a parameter regarding heating in the tub of the washing machine, and the order information included in the first washing information includes the first control information. If the second control information set in the order to be executed next to the control information includes a parameter for controlling an operation to be executed in a heat-free environment, based on the rule, the second control information is set to be executed in the heat-free environment. The information processing method according to claim 1, wherein the second control information is modified so as to add a parameter related to heat radiation of the tank immediately before a parameter that controls the operation of the tank.
前記修正では、前記ルールに基づき、前記第1の洗濯情報に含まれる第1の制御情報、及び、前記第1の洗濯情報に含まれる前記順番情報において前記第1の制御情報の次に実行される順番に設定されている第2の制御情報が重複する場合、(i)前記第1の制御情報もしくは前記第2の制御情報を削除する、又は、(ii)前記第1の制御情報に含まれる前記パラメータに関する情報もしくは前記第2の制御情報に含まれる前記パラメータに関する情報を削除する
請求項1に記載の情報処理方法。
In the modification, based on the rule, the first control information included in the first washing information and the order information included in the first washing information are executed next to the first control information. If the second control information set in the same order overlaps, (i) delete the first control information or the second control information, or (ii) delete the The information processing method according to claim 1, further comprising deleting information regarding the parameter included in the second control information or information regarding the parameter included in the second control information.
洗濯機の運転を制御するための洗濯情報を生成する情報処理装置であって、
プロセッサと、
前記プロセッサに接続されたメモリとを備え、
前記プロセッサは、前記メモリを用いて、
それぞれが洗濯物に対する前記運転を行う洗濯機能部を制御するパラメータに関する制御情報である複数の制御情報、及び、前記複数の制御情報を実行する順番に関する順番情報を含む第1の洗濯情報の入力を受け付け、
洗濯の順番に関するルールに基づいて前記第1の洗濯情報を修正し、修正により得られた第2の洗濯情報を前記洗濯情報として生成し、
前記洗濯機は前記洗濯機能部を有し、
前記第2の洗濯情報は、前記第2の洗濯情報に含まれる複数の制御情報を、前記第2の洗濯情報に含まれる順番情報で示される順番に前記洗濯機能部に実行させるための情報である
情報処理装置。
An information processing device that generates laundry information for controlling the operation of a washing machine,
a processor;
a memory connected to the processor;
The processor uses the memory to:
inputting first laundry information including a plurality of control information, each of which is control information regarding a parameter for controlling a washing function unit that performs the operation on the laundry; and order information regarding the order in which the plurality of control information is executed; Reception,
modifying the first laundry information based on rules regarding the order of laundry , and generating second laundry information obtained by the modification as the laundry information;
The washing machine has the washing function section,
The second laundry information is information for causing the laundry function section to execute a plurality of pieces of control information included in the second laundry information in the order indicated by the order information included in the second laundry information. be
Information processing device.
洗濯機の運転を制御するための複数の制御情報を含む洗濯情報を生成する情報処理装置であって、前記複数の制御情報のそれぞれは、洗濯物に対する前記運転を行う洗濯機能部を制御するパラメータに関する制御情報を含み、
前記情報処理装置は、
プロセッサと、
前記プロセッサに接続されたメモリとを備え、
前記プロセッサは、前記メモリを用いて、
前記複数の制御情報の入力を受け付けることで前記洗濯情報を生成し、
前記洗濯情報の生成では、
前記複数の制御情報のうちの第1の制御情報の入力を受け付け、
受け付けた前記第1の制御情報と、洗濯の順番に関するルールと、に基づいて、前記第1の制御情報の次の順番で実行されることが許容される制御情報の条件を特定し、
特定した前記条件に基づいて、前記第1の制御情報の次に実行される順番に設定される第2の制御情報の入力を制限する
情報処理装置。
An information processing device that generates laundry information including a plurality of pieces of control information for controlling the operation of a washing machine, wherein each of the plurality of pieces of control information includes parameters for controlling a washing function unit that performs the operation on the laundry. contains control information about
The information processing device includes:
a processor;
a memory connected to the processor;
The processor uses the memory to:
generating the laundry information by accepting input of the plurality of control information;
In generating the laundry information,
receiving input of first control information among the plurality of control information;
Based on the received first control information and rules regarding the order of washing, specifying conditions for control information that are allowed to be executed in the next order of the first control information,
An information processing apparatus that limits input of second control information set in an order of execution after the first control information, based on the specified condition.
JP2020106611A 2020-06-19 2020-06-19 Information processing method and information processing device Active JP7417832B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2020106611A JP7417832B2 (en) 2020-06-19 2020-06-19 Information processing method and information processing device
PCT/JP2021/022552 WO2021256432A1 (en) 2020-06-19 2021-06-14 Information processing device and information processing method
CN202180042573.9A CN115699067A (en) 2020-06-19 2021-06-14 Information processing device and information processing method
TW110121957A TWI864296B (en) 2020-06-19 2021-06-16 Information processing device and information processing method
JP2023213396A JP7627870B2 (en) 2020-06-19 2023-12-18 Information processing method and information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020106611A JP7417832B2 (en) 2020-06-19 2020-06-19 Information processing method and information processing device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023213396A Division JP7627870B2 (en) 2020-06-19 2023-12-18 Information processing method and information processing device

Publications (2)

Publication Number Publication Date
JP2022002007A JP2022002007A (en) 2022-01-06
JP7417832B2 true JP7417832B2 (en) 2024-01-19

Family

ID=79244717

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020106611A Active JP7417832B2 (en) 2020-06-19 2020-06-19 Information processing method and information processing device
JP2023213396A Active JP7627870B2 (en) 2020-06-19 2023-12-18 Information processing method and information processing device

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023213396A Active JP7627870B2 (en) 2020-06-19 2023-12-18 Information processing method and information processing device

Country Status (4)

Country Link
JP (2) JP7417832B2 (en)
CN (1) CN115699067A (en)
TW (1) TWI864296B (en)
WO (1) WO2021256432A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2024075421A1 (en) * 2022-10-05 2024-04-11
CN118814412B (en) * 2023-04-21 2025-11-21 重庆海尔滚筒洗衣机有限公司 Degerming control method and device, main control board and washing equipment
CN119352262B (en) * 2024-10-30 2025-09-23 珠海格力电器股份有限公司 Parameter recommendation method for clothing processing equipment, electronic equipment and clothing processing equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001293283A (en) 2000-04-13 2001-10-23 Matsushita Electric Ind Co Ltd Dehydration combined washing machine
JP2003284889A (en) 2002-03-28 2003-10-07 Toshiba Corp Washing machine
CN106637808A (en) 2015-11-04 2017-05-10 松下家电研究开发(杭州)有限公司 Washing machine with program automatic correcting function and program automatic correcting method thereof
JP6479275B1 (en) 2017-12-26 2019-03-06 三菱電機株式会社 Machining program correction device and machining program correction method
WO2019136208A1 (en) 2018-01-05 2019-07-11 JM Driver LLC (dba Lynx Technology) Reconfigurable embedded rules engine for internet of things (iot) devices

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05111593A (en) * 1991-10-18 1993-05-07 Sanyo Electric Co Ltd Washing machine
JP2000029501A (en) 1998-07-10 2000-01-28 Matsushita Electric Ind Co Ltd Control method updating method, control method monitoring method, and their devices
JP2000116980A (en) 1998-10-16 2000-04-25 Nippon Kentetsu Co Ltd Washing machine load determination method
JP2012139285A (en) 2010-12-28 2012-07-26 Toshiba Corp Laundry apparatus
JP6074612B2 (en) * 2012-06-12 2017-02-08 パナソニックIpマネジメント株式会社 Washing machine system
JP6131019B2 (en) * 2012-10-15 2017-05-17 シャープ株式会社 Washing machine
CN108070978B (en) * 2016-11-18 2020-12-29 上海小吉互联网科技有限公司 Intelligent washing machine with internet of things and control method thereof
DE102016225274A1 (en) 2016-12-16 2018-06-21 BSH Hausgeräte GmbH Control of a household appliance

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001293283A (en) 2000-04-13 2001-10-23 Matsushita Electric Ind Co Ltd Dehydration combined washing machine
JP2003284889A (en) 2002-03-28 2003-10-07 Toshiba Corp Washing machine
CN106637808A (en) 2015-11-04 2017-05-10 松下家电研究开发(杭州)有限公司 Washing machine with program automatic correcting function and program automatic correcting method thereof
JP6479275B1 (en) 2017-12-26 2019-03-06 三菱電機株式会社 Machining program correction device and machining program correction method
WO2019136208A1 (en) 2018-01-05 2019-07-11 JM Driver LLC (dba Lynx Technology) Reconfigurable embedded rules engine for internet of things (iot) devices

Also Published As

Publication number Publication date
JP2022002007A (en) 2022-01-06
JP7627870B2 (en) 2025-02-07
CN115699067A (en) 2023-02-03
TWI864296B (en) 2024-12-01
TW202202690A (en) 2022-01-16
JP2024026402A (en) 2024-02-28
WO2021256432A1 (en) 2021-12-23

Similar Documents

Publication Publication Date Title
JP7627870B2 (en) Information processing method and information processing device
JP7844693B2 (en) Information processing method and information processing device
JP2025137764A (en) DEVICE COMPRISING ACTUATOR AND/OR HEATER AND METHOD FOR CONTROLLING SUCH DEVICE - Patent application
JP2025114828A (en) Information processing method and information processing device
JP7390606B2 (en) Washing machine and control system
JP7717090B2 (en) Driving device, driving method, and program
JP7486075B2 (en) Washing machine, control method, and control system
JP7648622B2 (en) DEVICE COMPRISING ACTUATOR AND/OR HEATER AND METHOD FOR CONTROLLING SUCH DEVICE - Patent application
WO2022137616A1 (en) Drive device, drive method, and program
JP7641963B2 (en) DEVICE COMPRISING ACTUATOR AND/OR HEATER AND METHOD FOR CONTROLLING SUCH DEVICE - Patent application
TWI865789B (en) Washing machine, control method and control system
JP7766261B2 (en) Sheet processing device, control method, and control system
JP7842269B2 (en) Information processing method and information processing device
JP7854597B2 (en) Home appliance systems, home appliances, and control methods
JP2024108428A (en) Home appliance system, home appliance, and control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231110

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231219

R151 Written notification of patent or utility model registration

Ref document number: 7417832

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151