Electronic device, method, and non-transitory computer-readable storage medium for classifying floor plans
The solution enhances the user experience by utilizing a reference floor plan to automatically place devices on the user interface.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- SAMSUNG ELECTRONICS CO LTD
- Filing Date
- 2025-11-05
- Publication Date
- 2026-06-11
AI Technical Summary
The increasing number of deployable devices in smart home applications complicates the user experience by requiring extensive manual placement on floor plans, leading to inefficiency and user frustration.
Utilizing a reference floor plan with similar structure to the user's plan to automatically place devices based on mapping data, reducing the need for manual drag-and-drop interactions.
Enhances user experience by minimizing the need for manual placement of devices on the floor plan, enhancing the user interface by automatically aligning the devices on the floor plan, and reducing the need for manual placement of devices on the floor plan, and improving the placement of devices on the user interface.
Smart Images

Figure KR2025018003_11062026_PF_FP_ABST
Abstract
Description
Electronic device, method, and non-transient computer-readable storage medium for classifying floor plans
[0001] The following descriptions relate to an electronic device, method, and non-transient computer-readable storage medium for classifying floor plans.
[0002] The electronic device can display a user interface including a floor plan of the user's home. The electronic device can display objects of the user's devices on the floor plan based on drag and drop. The electronic device can control the objects based on user input regarding the objects of the devices.
[0003] The information described above may be provided as related art for the purpose of aiding understanding of the present disclosure. No claim or determination is made as to whether any of the foregoing may be applied as prior art related to the present disclosure.
[0004] An electronic device is provided. The electronic device may include a communication circuit. The electronic device may include a display. The electronic device may include a memory that stores instructions and includes one or more storage media. The electronic device may include at least one processor that includes a processing circuit. When the instructions are executed individually or collectively by the at least one processor, the electronic device may cause the electronic device to transmit a first message to a server device for requesting at least one reference floor plan. When the instructions are executed individually or collectively by the at least one processor, the electronic device may cause the electronic device to receive from the server device a second message containing information about the at least one reference floor plan selected based on information about the user's floor plan and information about the user's at least one device registered with the server device. When the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the at least one reference plan including at least one device associated with the at least one reference plan corresponding at least partially to the user's at least one device. When the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the electronic device to select a reference plan among the at least one reference plans based on user input. When the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the electronic device to acquire mapping data including information about a room in the reference plan that is mapped to a room in the user's plan.When the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the user's at least one device to be displayed on the user's plan view based on the mapping data.
[0005] A method performed by an electronic device is provided. The method may include the operation of transmitting a first message to a server device for requesting at least one reference floor plan. The method may include the operation of receiving from the server device a second message containing information about the at least one reference floor plan selected based on information about the user's floor plan and information about the user's at least one device registered in the server device. The method may include the operation of displaying the at least one reference floor plan including at least one device associated with the at least one reference floor plan that corresponds at least partially to the user's at least one device. The method may include the operation of selecting a reference floor plan from among the at least one reference floor plans based on user input. The method may include the operation of acquiring mapping data containing information about a room in the reference floor plan that is mapped to a room in the user's floor plan. The method may include the operation of displaying the user's at least one device placed on the user's floor plan based on the mapping data.
[0006] A non-transient computer-readable storage medium is provided. The non-transient computer-readable storage medium may store one or more programs. The one or more programs may include instructions that cause the electronic device to transmit a first message to a server device for requesting at least one reference floor plan when executed individually or collectively by at least one processor of the electronic device. The one or more programs may include instructions that cause the electronic device to receive from the server device a second message that includes information about the at least one reference floor plan selected based on information about the user's floor plan and information about the user's at least one device registered with the server device when executed individually or collectively by at least one processor of the electronic device. The one or more programs may include instructions that cause the electronic device to display the at least one reference floor plan including at least one device associated with the at least one reference floor plan that corresponds at least partially to the user's at least one device when executed individually or collectively by at least one processor of the electronic device. The above one or more programs may include instructions that cause the electronic device to select a reference plan among the at least one reference plan based on user input when executed individually or collectively by at least one processor of the electronic device. The above one or more programs may include instructions that cause the electronic device to acquire mapping data including information about a room in the reference plan mapped to a room in the user's plan when executed individually or collectively by at least one processor of the electronic device.The above one or more programs may include instructions that cause the electronic device to display the user's at least one device placed on the user's plan view based on the mapping data when executed individually or collectively by at least one processor of the electronic device.
[0007] In relation to the description of the drawings, the same or similar reference numerals may be used for identical or similar components.
[0008] Figure 1 is a block diagram of an electronic device in a network environment.
[0009] Figure 2 illustrates the components of an electronic device and a server.
[0010] Figure 3 illustrates a user interface associated with a floor plan.
[0011] Figure 4 is a flowchart showing the operations of a server for identifying a group of reference floor plans.
[0012] FIGS. 5a to 5d illustrate plan views.
[0013] FIG. 6 is a flowchart illustrating the operations of an electronic device for displaying a device on a user plan based on the device arrangement in a reference plan.
[0014] FIGS. 7a through 7d illustrate an example of displaying a device on a user plan based on the arrangement of the device in a reference plan.
[0015] FIG. 8 illustrates a user interface for controlling devices arranged on a user plan.
[0016] The terms used in this disclosure are used merely to describe specific embodiments and are not intended to limit the scope of other embodiments. A singular expression may include a plural expression unless the context clearly indicates otherwise. Terms used herein, including technical or scientific terms, may have the same meaning as generally understood by those skilled in the art described in this disclosure. Terms used in this disclosure that are defined in a general dictionary may be interpreted as having the same or similar meaning as they have in the context of the relevant technology, and are not to be interpreted in an ideal or overly formal sense unless explicitly defined in this disclosure. In some cases, even terms defined in this disclosure are not to be interpreted to exclude the embodiments of this disclosure.
[0017] In the various embodiments of the present disclosure described below, a hardware-based approach is described as an example. However, since the various embodiments of the present disclosure include techniques using both hardware and software, the various embodiments of the present disclosure do not exclude a software-based approach.
[0018] Additionally, in this disclosure, expressions of "greater than" or "less than" may be used to determine whether a specific condition is satisfied or fulfilled; however, this is merely for the purpose of expressing an example and does not exclude descriptions of "greater than" or "less than." Conditions described as "greater than" may be replaced with "greater than," conditions described as "less than" may be replaced with "less than," and conditions described as "greater than and less than" may be replaced with "greater than and less than." Furthermore, "A" to "B" below refer to at least one of elements from A (including A) to B (including B). Below, "C" and / or "D" refers to including at least one of "C" or "D," i.e., {"C", "D", "C" and "D"}.
[0019] Figure 1 is a block diagram of an electronic device in a network environment.
[0020] Referring to FIG. 1, in a network environment (100), an electronic device (101) may communicate with an electronic device (102) through a first network (198) (e.g., a short-range wireless communication network) or with at least one of an electronic device (104) or a server (108) through a second network (199) (e.g., a long-range wireless communication network). According to one embodiment, the electronic device (101) may communicate with the electronic device (104) through a server (108). According to one embodiment, the electronic device (101) may include a processor (120), memory (130), input module (150), sound output module (155), display module (160), audio module (170), sensor module (176), interface (177), connection terminal (178), haptic module (179), camera module (180), power management module (188), battery (189), communication module (190), subscriber identification module (196), or antenna module (197). In some embodiments, at least one of these components (e.g., connection terminal (178)) may be omitted from the electronic device (101), or one or more other components may be added. In some embodiments, some of these components (e.g., sensor module (176), camera module (180), or antenna module (197)) may be integrated into a single component (e.g., display module (160)).
[0021] The processor (120) can control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) by executing software (e.g., a program (140)), for example, and can perform various data processing or operations. According to one embodiment, as at least part of the data processing or operations, the processor (120) can store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in volatile memory (132), process the commands or data stored in volatile memory (132), and store the resulting data in non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or an auxiliary processor (123) that can operate independently or together with it (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor). For example, if the electronic device (101) includes a main processor (121) and an auxiliary processor (123), the auxiliary processor (123) may be configured to use lower power than the main processor (121) or to be specialized for a designated function. The auxiliary processor (123) may be implemented separately from the main processor (121) or as part thereof.
[0022] The auxiliary processor (123) may control at least some of the functions or states associated with at least one component of the electronic device (101) (e.g., display module (160), sensor module (176), or communication module (190)) on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. According to one embodiment, the auxiliary processor (123) (e.g., image signal processor or communication processor) may be implemented as part of another functionally related component (e.g., camera module (180) or communication module (190)). According to one embodiment, the auxiliary processor (123) (e.g., neural network processing unit) may include a hardware structure specialized for processing an artificial intelligence model. The artificial intelligence model may be generated through machine learning. Such learning may be performed, for example, on the electronic device (101) itself where the artificial intelligence model is executed, or through a separate server (e.g., server (108)). The learning algorithm may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model may include a plurality of artificial neural network layers.An artificial neural network may be a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to the hardware structure, the artificial intelligence model may include a software structure, either additionally or substantially.
[0023] The memory (130) can store various data used by at least one component of the electronic device (101) (e.g., processor (120) or sensor module (176)). The data may include, for example, software (e.g., program (140)) and input or output data for related commands. The memory (130) may include volatile memory (132) or non-volatile memory (134).
[0024] The program (140) may be stored as software in memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).
[0025] The input module (150) can receive commands or data to be used for a component of the electronic device (101) (e.g., processor (120)) from outside the electronic device (101) (e.g., user). The input module (150) may include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).
[0026] The sound output module (155) can output a sound signal to the outside of the electronic device (101). The sound output module (155) may include, for example, a speaker or a receiver. The speaker may be used for general purposes, such as multimedia playback or recording playback. The receiver may be used to receive incoming calls. According to one embodiment, the receiver may be implemented separately from the speaker or as part thereof.
[0027] The display module (160) can visually provide information to an external (e.g., user) of the electronic device (101). The display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling said device. According to one embodiment, the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of the force generated by said touch.
[0028] The audio module (170) can convert sound into an electrical signal or, conversely, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150) or output sound through the sound output module (155) or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphones) connected directly or wirelessly to the electronic device (101).
[0029] The sensor module (176) can detect the operating state of the electronic device (101) (e.g., power or temperature) or the external environmental state (e.g., user state) and generate an electrical signal or data value corresponding to the detected state. According to one embodiment, the sensor module (176) may include, for example, a gesture sensor, a gyroscope sensor, a barometric pressure sensor, a magnetic sensor, an accelerometer sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biosensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
[0030] The interface (177) may support one or more specified protocols that can be used for the electronic device (101) to be connected directly or wirelessly to an external electronic device (e.g., electronic device (102)). According to one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
[0031] The connection terminal (178) may include a connector through which the electronic device (101) can be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
[0032] The haptic module (179) can convert an electrical signal into a mechanical stimulus (e.g., vibration or movement) or an electrical stimulus that can be perceived by the user through tactile or kinesthetic senses. According to one embodiment, the haptic module (179) may include, for example, a motor, a piezoelectric element, or an electric stimulation device.
[0033] The camera module (180) can capture still images and video. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.
[0034] The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented, for example, as at least part of a power management integrated circuit (PMIC).
[0035] The battery (189) can supply power to at least one component of the electronic device (101). According to one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
[0036] The communication module (190) can support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between an electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may include one or more communication processors that operate independently of the processor (120) (e.g., application processor) and support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., cellular communication module, short-range wireless communication module, or GNSS (global navigation satellite system) communication module) or a wired communication module (194) (e.g., LAN (local area network) communication module, or power line communication module). The corresponding communication module among these communication modules can communicate with an external electronic device (104) through a first network (198) (e.g., a short-range communication network such as Bluetooth, WiFi (wireless fidelity) direct, or IrDA (infrared data association)) or a second network (199) (e.g., a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN). These various types of communication modules may be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) can identify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) using subscriber information (e.g., International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module (196).
[0037] The wireless communication module (192) can support 5G networks and next-generation communication technologies following 4G networks, for example, new radio access technology. NR access technology can support high-speed transmission of high-capacity data (enhanced mobile broadband (eMBB)), minimization of terminal power and connection of multiple terminals (massive machine type communications (mMTC)), or high reliability and low latency (ultra-reliable and low-latency communications (URLLC)). The wireless communication module (192) can support a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate, for example. The wireless communication module (192) can support various technologies for securing performance in the high-frequency band, such as beamforming, massive MIMO (multiple-input and multiple-output), full-dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large-scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), external electronic device (e.g., electronic device (104)), or network system (e.g., second network (199)). According to one embodiment, the wireless communication module (192) may support a Peak data rate (e.g., 20 Gbps or more) for eMBB realization, loss coverage (e.g., 164 dB or less) for mMTC realization, or U-plane latency (e.g., downlink (DL) and uplink (UL) each 0.5 ms or less, or round trip 1 ms or less) for URLLC realization.
[0038] An antenna module (197) can transmit a signal or power to or from an external source (e.g., an external electronic device). According to one embodiment, the antenna module (197) may include an antenna comprising a radiator made of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). According to one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as a first network (198) or a second network (199), may be selected from the plurality of antennas, for example, by a communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device through the selected at least one antenna. According to some embodiments, in addition to the radiator, other components (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as part of the antenna module (197).
[0039] According to various embodiments, the antenna module (197) may form a mmWave antenna module. According to one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent to a first surface (e.g., bottom surface) of the printed circuit board and capable of supporting a specified high frequency band (e.g., mmWave band), and a plurality of antennas (e.g., array antennas) disposed on or adjacent to a second surface (e.g., top surface or side surface) of the printed circuit board and capable of transmitting or receiving a signal of the specified high frequency band.
[0040] At least some of the above components can be connected to each other via a communication method between peripheral devices (e.g., bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)) and exchange signals (e.g., commands or data) with each other.
[0041] According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) through a server (108) connected to a second network (199). Each of the external electronic devices (102, or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations performed on the electronic device (101) may be performed on one or more of the external electronic devices (102, 104, or 108). For example, if the electronic device (101) needs to perform a function or service automatically or in response to a request from a user or another device, the electronic device (101) may request one or more external electronic devices to perform at least part of the function or service instead of performing the function or service itself or additionally. One or more external electronic devices that receive the above request may execute at least part of the requested function or service, or additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may provide the result as is or additionally processed as at least part of the response to the request. For this purpose, for example, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used. The electronic device (101) may provide ultra-low latency services using, for example, distributed computing or mobile edge computing. In another embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server using machine learning and / or neural networks. According to one embodiment, the external electronic device (104) or the server (108) may be included within a second network (199).The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
[0042] Figure 2 illustrates the components of an electronic device and a server.
[0043] Referring to FIG. 2, the system (200) may include an electronic device (101) and a server (210) to support an Internet of Things (IoT) platform for a smart home. In the following, the specific details regarding the processor (211), memory (212), and communication circuit (213) of the server (210) may be substantially the same as the details regarding the processor (201), memory (202), and communication circuit (203) of the electronic device (101).
[0044] In FIG. 2, the electronic device (101) may include a processor (201), memory (202), communication circuit (203), and / or a display (204). For example, the processor (201), memory (202), communication circuit (203), and display (204) may be electronically and / or operably coupled with each other by a communication bus. Operatably coupled hardware components may mean that a direct or indirect connection between hardware components is established wired or wirelessly so that a second hardware component (e.g., memory (202), communication circuit (203), and / or display (204)) is controlled by a first hardware component (e.g., processor (201)). Although the hardware components of the electronic device (101) illustrated in FIG. 2 are illustrated in different blocks, the present disclosure is not limited thereto. For example, some of the hardware components shown in FIG. 2 (e.g., at least some of the processor (201), memory (202), communication circuit (203), and / or display (204)) may be included in a single integrated circuit such as a system on chip (SoC) or a system in package (SIP). The type and number of hardware components included in the electronic device (101) are not limited to those shown in FIG. 2. For example, the electronic device (101) may include only some of the hardware components shown in FIG. 2.
[0045] In one embodiment, the electronic device (101) may include a processor (201). The processor (201) may include a hardware component for processing data based on one or more instructions. The hardware component for processing data may include, for example, an arithmetic and logic unit (ALU), a floating point unit (FPU), and a field programmable gate array (FPGA). As an example, the hardware component for processing data may include a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processing unit (DSP), a microcontroller (MCU), and / or a neural processing unit (NPU). The number of processors (201) may be one or more. For example, the processor (201) may have the structure of a multi-core processor, such as a dual core, a quad core, or a hexa core. The processor (201) of FIG. 2 can have substantially the same content as the processor (120) of FIG. 1 applied.
[0046] In one embodiment, the processor (201) may include various processing circuits and / or a plurality of processors. For example, the term “processor” as used herein, including in the claims, may include various processing circuits including at least one processor, and one or more of the at least one processor may be configured to perform the various functions described below in a distributed manner, individually and / or collectively. As used below, where “processor,” “at least one processor,” and “one or more processors” are described as being configured to perform various functions, these terms encompass, for example, but not limited to, situations where one processor performs some of the cited functions and other processor(s) perform other parts of the cited functions, and also situations where one processor can perform all of the cited functions. Additionally, the at least one processor may include a combination of processors that perform the enumerated / disclosed various functions, for example, in a distributed manner. The at least one processor may execute program instructions to achieve or perform the various functions.
[0047] In one embodiment, the electronic device (101) may include a memory (202). The memory (202) may include a hardware component for storing data and / or instructions that are input to or output from the processor (201). For example, the memory (202) may include a volatile memory such as random-access memory (RAM) and / or a non-volatile memory such as read-only memory (ROM). The volatile memory may include, for example, at least one of dynamic RAM (DRAM), static RAM (SRAM), cache RAM, and pseudo SRAM (PSRAM). The non-volatile memory may include, for example, programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), flash memory, a hard disk, a compact disk, and an embedded multimedia card (eMMC).
[0048] In one embodiment, one or more instructions (or commands) representing operations and / or operations performed by the processor (201) of the electronic device (101) may be stored within the memory (202) of the electronic device (101). A set of one or more instructions may be referred to as a program, firmware, operating system, process, routine, sub-routine, and / or application. Hereinafter, being installed within the electronic device (101) may mean that one or more instructions provided in the form of an application are stored within the memory (202), and that one or more applications are stored in an executable format by the processor (201) of the electronic device (101). The specific details regarding the memory (202) of FIG. 2 may be substantially the same as the details regarding the memory (130) of FIG. 1.
[0049] In one embodiment, the electronic device (101) may include a communication circuit (203). The communication circuit (203) may include a circuit for supporting the transmission and / or reception of electrical signals between the electronic device (101) and an external electronic device different from the electronic device (101) (e.g., a server (210)). The communication circuit (203) may include at least one of a modem, an antenna, and an O / E (optic / electronic) converter. The communication circuit (203) may support the transmission and / or reception of electrical signals based on various types of communication means such as Ethernet, Bluetooth, BLE (Bluetooth Low Energy), ZigBee, LTE (Long Term Evolution), and 5G NR (New Radio). The specific details regarding the communication circuit (203) of FIG. 2 may be substantially the same as those regarding the communication module (109) and / or antenna module (197) of FIG. 1.
[0050] In one embodiment, the electronic device (101) may include a display (204). The display (204) may include a display panel, a touch sensor, and / or a processing circuit. In one embodiment, the display panel may be used to display visual information (e.g., an image, a screen, an object, a UI (user interface), a GUI (graphic user interface), and / or a visual object). For example, the display panel may have a display area capable of receiving touch input. In one embodiment, the touch sensor may be used to obtain data about an external object located on the display panel. For example, the touch sensor may be located within or on the display panel to provide an area of the display panel capable of receiving touch input. For example, the touch sensor may be configured to obtain data about contact points on at least some part of said area. In one embodiment, the processing circuit may control the touch sensor. For example, the processing circuit may process signals or data obtained (or received) through the touch sensor. The specific details regarding the display (204) of FIG. 2 can be substantially applied in the same way as the details regarding the display module (160) of FIG. 1.
[0051] FIG. 3 illustrates a user interface associated with a floor plan. FIG. 3 describes a method for placing devices owned by a user of an electronic device (101) on a user interface associated with a floor plan. For example, devices may be registered in advance with a server (210) as associated with the electronic device (101).
[0052] Referring to FIG. 3, the electronic device (101) can display a user interface through a display (204). For example, the electronic device (101) can provide a user interface for placing devices owned by the user on a floor plan (300) based on user input (e.g., drag and drop). The user interface can be associated with an application of an Internet of Things (IoT) platform for a smart home.
[0053] The user interface may include a floor plan (300). The floor plan (300) may be an image representing the structural features of a building (e.g., a home) in two dimensions (2D). FIG. 2 illustrates a two-dimensional floor plan (300), but the present disclosure is not limited thereto. For example, the floor plan (300) may be represented in three dimensions (3D).
[0054] The user interface may include objects (e.g., images and / or text) for devices owned by the user. In the example illustrated in FIG. 3, the user interface may include objects for device (301) (e.g., air conditioner), objects for device (302) (e.g., ceiling light), objects for device (303) (e.g., refrigerator), and objects for device (304) (e.g., TV (television)). However, this is merely an example for illustrative purposes and the present disclosure is not limited thereto. The user interface of FIG. 3 may include objects for devices owned by the user and / or registered with the server (210) in association with the electronic device (101).
[0055] The electronic device (101) can place devices on the floor plan (300) based on user input (e.g., drag and drop). The electronic device (101) can control the devices based on user input (e.g., touch input) for the objects of the devices placed on the floor plan (300). For example, the electronic device (101) can transmit a signal to the device to control the device. In one example, the electronic device (101) can display the objects of the device (301) in a first part of the floor plan (300) based on drag and drop for the objects of the device (301). The first part of the floor plan (300) may correspond to a location where the device (301) is placed within the building corresponding to the floor plan (300). The electronic device (101) can control the device (301) (e.g., setting the temperature of an air conditioner) based on user input (e.g., touch input) for an object of the device (301) displayed in the first part of the floor plan (300). In one example, the electronic device (101) can display an object of the device (302) in the second part of the floor plan (300) based on drag-and-drop for an object of the device (302). The second part of the floor plan (300) may correspond to a location where the device (302) is placed within a building corresponding to the floor plan (300). The electronic device (101) can control the device (302) (e.g., setting the luminance) based on user input (e.g., touch input) for an object of the device (302) displayed in the second part of the floor plan (300). In one example, the electronic device (101) can display the object of the device (303) in a third part of the floor plan (300) based on drag-and-drop of the object of the device (303). The third part of the floor plan (300) may correspond to a location where the device (303) is placed within a building corresponding to the floor plan (300).The electronic device (101) can control the device (303) (e.g., setting the temperature of a refrigerator) based on user input (e.g., touch input) for an object of the device (303) displayed in the third part of the floor plan (300). In one example, the electronic device (101) can display an object of the device (304) in the fourth part of the floor plan (300) based on drag-and-drop for an object of the device (304). The fourth part of the floor plan (300) may correspond to a location where the device (304) is placed within a building corresponding to the floor plan (300). The electronic device (101) can control the device (304) (e.g., turning a TV on / off) based on user input (e.g., touch input) for an object of the device (304) displayed in the fourth part of the floor plan (300).
[0056] As described above, the user can place device objects on a floor plan of a user interface associated with a smart home. The user can control the devices by providing user input (e.g., touch input) to the device objects placed on the floor plan. However, due to the development of Internet of Things (IoT) technology, the number of deployable devices on the floor plan of the user interface is increasing. Therefore, requiring the user to place all devices on the floor plan of the user interface can lead to a deterioration of the user experience (UX) for users utilizing applications associated with smart homes. To address the aforementioned problems, a reference floor plan having a structure similar to the user's floor plan can be used. For example, by automatically placing devices on the user's floor plan based on the placement data of devices in the reference floor plan, the number of user inputs (e.g., drag and drop) required to place devices can be reduced. In the following, the operations of an electronic device (101) and a server (210) for placing devices on a user's plan based on information from a reference plan are described.
[0057] FIG. 4 is a flowchart illustrating the operations of a server for identifying a group of reference plan drawings. The operations of FIG. 4 can be performed by the server (210) of FIG. 2. For example, at least some of the operations can be controlled by the processor (211) of the server (210). In the following, each operation may be performed sequentially, but is not necessarily performed sequentially. For example, the order of each operation may be changed. For example, at least two operations may be performed in parallel.
[0058] Referring to FIG. 4, in operation 401, a server (210) according to one embodiment may generate a plurality of map data for a plurality of floor plans. For example, in each of the plurality of floor plans, the number of rooms (e.g., 5) may be the same. In one example, each of the plurality of floor plans may have the same number of first-type rooms (e.g., living room) (e.g., 1) and the same number of second-type rooms (e.g., bedroom) (e.g., 4). However, this is merely an example and the present disclosure is not limited thereto.
[0059] In one embodiment, the server (210) may acquire a plurality of floor plans. For example, a floor plan may be represented based on IMDF (indoor mapping data format) as it represents the structural features of a building (e.g., a home). However, this is merely an example and the present disclosure is not limited thereto. For example, a floor plan may be represented based on a data format different from IMDF.
[0060] In one embodiment, the server (210) may generate map data for each of a plurality of floor plans. For example, the map data may be generated based on the number of adjacent rooms for each room in the floor plan. For example, the server (210) may generate map data based on identifying the number of adjacent first-type rooms and the number of adjacent second-type rooms for each room among the rooms included in the floor plan. For example, the map data may be expressed as {number of adjacent second-type rooms, number of adjacent first-type rooms} for each room included in the floor plan. In one example, the map data may be expressed based on JSON (JavaScript Object Notation). However, this is merely an example, and the present disclosure is not limited thereto. For example, the map data may be expressed in a form other than JSON.
[0061] In one example, the first floor plan may include a first room, a second room, a third room, a fourth room, and a fifth room. The first room may correspond to a first type (e.g., a living room). The second room, the third room, the fourth room, and the fifth room may correspond to a second type (e.g., a bedroom). The first room may be adjacent to the second room, the third room, the fourth room, and the fifth room. Map data for the first room may correspond to {4, 0}. The second room may be adjacent to the first room and the third room. Map data for the second room may correspond to {1, 1}. The third room may be adjacent to the first room and the second room. Map data for the third room may be {1, 1}. The fourth room may be adjacent to the first room and the fifth room. Map data for the fourth room may be {1, 1}. The fifth room may be adjacent to the first room and the fourth room. The map data for the fifth room may be {1, 1}. The map data of the first floor plan may be sorted in descending order based on the number of rooms. In one example, the map data of the first floor plan may be as shown in [Table 1] below.
[0062] Map data of the first floor plan{"Living Room": [{"Bedroom": 4, "Living Room": 0}],"Bedroom": [{"Bedroom": 1, "Living Room": 1},{"Bedroom": 1, "Living Room": 1},{"Bedroom": 1, "Living Room": 1},{"Bedroom": 1, "Living Room": 1}]}
[0063] In one example, the second floor plan may include a first room, a second room, a third room, a fourth room, and a fifth room. The first room may correspond to a first type (e.g., a living room). The second room, the third room, the fourth room, and the fifth room may correspond to a second type (e.g., a bedroom). The first room may be adjacent to the second room, the third room, the fourth room, and the fifth room. Map data for the first room may correspond to {4, 0}. The second room may be adjacent to the first room and the third room. Map data for the second room may correspond to {1, 1}. The third room may be adjacent to the first room, the second room, and the fourth room. Map data for the third room may correspond to {2, 1}. The fourth room may be adjacent to the first room, the third room, and the fifth room. Map data for the fourth room may correspond to {2, 1}. The fifth room may be adjacent to the first room and the fourth room. Map data for the fifth room may correspond to {1, 1}. Map data for the second floor plan may be sorted in descending order based on the number of rooms. In one example, map data for the second floor plan sorted in descending order may be as shown in [Table 2] below.
[0064] Map data of the second floor plan{"Living Room": [{"Bedroom": 4, "Living Room": 0}],"Bedroom": [{"Bedroom": 2, "Living Room": 1},{"Bedroom": 2, "Living Room": 1},{"Bedroom": 1, "Living Room": 1},{"Bedroom": 1, "Living Room": 1}]}
[0065] In operation 402, a server (210) according to one embodiment can identify reference plan groups based on a plurality of map data. For example, the server (210) can identify one or more plan figures having the same map data among a plurality of plan figures as a single reference plan group. One or more plan figures included in the reference plan group can be classified as plan figures having similar structures. In one example, the first plan figure and the second plan figure described above have different map data, so they can be classified into different reference plan group. The server (210) can assign a classification code to the plan figures included in the reference plan group. In one example, a first classification code can be assigned to the plan figures included in the first reference plan group. In one example, a second classification code can be assigned to the plan figures included in the second reference plan group.
[0066] In operation 403, a server (210) according to one embodiment may store information about reference plan groups. For example, the server (210) may store plan groups to which classification codes have been assigned in a database. In one example, the server (210) may store information mapping the identifier of a plan group and the classification code of a plan group in the database. In one example, the database may be configured within memory (212).
[0067] In one embodiment, the server (210) may receive a message from the electronic device (101) requesting reference floor plans for a user's floor plan. The message may include an identifier for the user's floor plan. The server (210) may identify a classification code for the floor plan based on the identifier for the floor plan. The server (210) may identify reference floor plans for the floor plan based on the classification code. The reference floor plans may have the same classification code as the floor plan. In one example, the reference floor plans may have devices registered with the server (210) as associated with the electronic device (101). The server (210) may send a message to the electronic device (101) containing information about reference floor plans having devices registered with the server (210) as associated with the electronic device (101).
[0068] FIGS. 5a through 5d illustrate floor plans. FIGS. 5a through 5d classify a first floor plan (510), a second floor plan (520), a third floor plan (530), and a fourth floor plan (540), and describe the operations of a server (210) for generating device deployment data.
[0069] In the following, the floor plan may be represented based on IMDF (indoor mapping data format). Based on the floor plan, the server (210) may identify the number of adjacent first-type rooms (e.g., living room) and the number of adjacent second-type rooms (e.g., bedroom) for each room included in the floor plan. The server (210) may generate map data based on the number of adjacent first-type rooms and the number of adjacent second-type rooms for each room. For example, the map data may be represented as {number of adjacent second-type rooms, number of adjacent first-type rooms} for each room included in the floor plan. For example, the map data may be sorted in descending order based on the number of rooms. For example, the map data may be represented based on JSON (JavaScript Object Notation).
[0070] Referring to FIG. 5a, the first floor plan (510) may include a living room (511), a bedroom (512), a bedroom (513), a bedroom (514), and a bedroom (515). The living room (511) may be adjacent to the bedroom (512), bedroom (513), bedroom (514), and bedroom (515). Map data for the living room (511) may correspond to {4, 0}. The bedroom (512) may be adjacent to the living room (511) and bedroom (513). Map data for the bedroom (512) may correspond to {1, 1}. The bedroom (513) may be adjacent to the living room (511) and bedroom (512). Map data for the bedroom (513) may be {1, 1}. The bedroom (514) may be adjacent to the living room (511) and bedroom (515). Map data for the bedroom (514) may correspond to {1, 1}. The bedroom (515) may be adjacent to the living room (511) and the bedroom (514). Map data for the bedroom (515) may be {1, 1}. The server (210) may generate map data for the first floor plan (510) by sorting the data in descending order based on the number of adjacent rooms. For example, the map data for the first floor plan (510) may be as shown in [Table 3] below.
[0071] Map data of the first floor plan (510) {"Living Room": [{"Bedroom": 4, "Living Room": 0}],"Bedroom 1": [{"Bedroom": 1, "Living Room": 1},{"Bedroom 2": 1, "Living Room": 1},{"Bedroom 3": 1, "Living Room": 1},{"Bedroom 4": 1, "Living Room": 1}]}
[0072] Referring to FIG. 5b, the second floor plan (520) may include a living room (521), a bedroom (522), a bedroom (523), a bedroom (524), and a bedroom (525). The living room (521) may be adjacent to the bedroom (522), bedroom (523), bedroom (524), and bedroom (525). Map data for the living room (521) may correspond to {4, 0}. The bedroom (522) may be adjacent to the living room (521) and bedroom (523). Map data for the bedroom (522) may correspond to {1, 1}. The bedroom (523) may be adjacent to the living room (521) and bedroom (522). Map data for the bedroom (523) may correspond to {1, 1}. The bedroom (524) may be adjacent to the living room (521) and bedroom (525). Map data for the bedroom (525) may correspond to {1, 1}. The bedroom (525) may be adjacent to the living room (521) and the bedroom (524). Map data for the bedroom (525) may correspond to {1, 1}. The server (210) may generate map data for the second floor plan (520) by sorting the data in descending order based on the number of adjacent rooms. For example, the map data for the second floor plan (520) may be as shown in [Table 4] below.
[0073] Map data of the second floor plan (520) {"Living Room": [{"Bedroom": 4, "Living Room": 0}],"Bedroom 1": [{"Bedroom": 1, "Living Room": 1},{"Bedroom 2": 1, "Living Room": 1},{"Bedroom 3": 1, "Living Room": 1},{"Bedroom 4": 1, "Living Room": 1}]}
[0074] Referring to FIG. 5c, the third floor plan (530) may include a living room (531), a bedroom (532), a bedroom (533), a bedroom (534), and a bedroom (535). The living room (531) may be adjacent to the bedroom (532), bedroom (533), bedroom (534), and bedroom (535). Map data for the living room (531) may correspond to {4, 0}. The bedroom (532) may be adjacent to the living room (531) and bedroom (533). Map data for the bedroom (532) may correspond to {1, 1}. The bedroom (533) may be adjacent to the living room (531), bedroom (532), and bedroom (534). Map data for the bedroom (533) may correspond to {2, 1}. Bedroom (534) may be adjacent to the living room (531), bedroom (533), and bedroom (535). Map data for bedroom (534) may correspond to {2, 1}. Bedroom (535) may be adjacent to the living room (531) and bedroom (534). Map data for bedroom (535) may correspond to {1, 1}. The server (210) may generate map data for the third floor plan (530) by sorting the data in descending order based on the number of adjacent rooms. For example, the map data for the third floor plan (530) may be as shown in [Table 5] below.
[0075] Map data of the third floor plan (530) {"Living Room": [{"Bedroom": 4, "Living Room": 0}],"Bedroom 1": [{"Bedroom": 2, "Living Room": 1},{"Bedroom 2": 2, "Living Room": 1},{"Bedroom 3": 1, "Living Room": 1},{"Bedroom 4": 1, "Living Room": 1}]}
[0076] The rooms in the map data exemplified in [Table 5] and the rooms included in the third floor plan (530) illustrated in FIG. 5c can be mapped. For example, the server (210) can map the rooms in the map data and the rooms in the third floor plan (530) based on the number of rooms. For example, if the number of rooms is the same, the server (210) can map the rooms in the map data and the rooms in the third floor plan (530) based on the priority of adjacent rooms. For example, if the priority is also the same, the server (210) can randomly map the rooms in the map data and the rooms in the third floor plan (530). In one example, in [Table 5], “Living Room” can correspond to Living Room (531). “Bedroom 1” can correspond to any of Bedroom (533) or Bedroom (534). The following description is based on the premise that “Bedroom 1” corresponds to Bedroom (533). “Bedroom 2” may correspond to Bedroom (534). “Bedroom 3” may correspond to Bedroom (532), which has a higher priority among the adjacent rooms, Bedroom (532) or Bedroom (535). “Bedroom 4” may correspond to Bedroom (535).
[0077] Referring to FIG. 5d, the fourth floor plan (540) may include a living room (541), a bedroom (542), a bedroom (543), a bedroom (544), and a bedroom (545). The living room (541) may be adjacent to the bedroom (542), bedroom (543), bedroom (544), and bedroom (545). Map data for the living room (541) may correspond to {4, 0}. The bedroom (542) may be adjacent to the living room (541) and bedroom (543). Map data for the bedroom (542) may correspond to {1, 1}. The bedroom (543) may be adjacent to the living room (541), bedroom (542), and bedroom (544). Map data for the bedroom (543) may correspond to {2, 1}. Bedroom (544) may be adjacent to the living room (541), bedroom (543), and bedroom (545). Map data for bedroom (544) may correspond to {2, 1}. Bedroom (545) may be adjacent to the living room (541) and bedroom (544). Map data for bedroom (545) may correspond to {1, 1}. The server (210) may generate map data for the fourth floor plan (540) by sorting the data in descending order based on the number of adjacent rooms. For example, the map data for the fourth floor plan (540) may be as shown in [Table 6] below.
[0078] Map data of the fourth floor plan (540) {"Living Room": [{"Bedroom": 4, "Living Room": 0}],"Bedroom 1": [{"Bedroom": 2, "Living Room": 1},{"Bedroom 2": 2, "Living Room": 1},{"Bedroom 3": 1, "Living Room": 1},{"Bedroom 4": 1, "Living Room": 1}]}
[0079] The rooms in the map data exemplified in [Table 6] and the rooms included in the fourth floor plan (540) illustrated in FIG. 5d can be mapped. For example, the server (210) can map the rooms in the map data and the rooms in the fourth floor plan (540) based on the number of rooms. For example, if the number of rooms is the same, the server (210) can map the rooms in the map data and the rooms in the fourth floor plan (540) based on the priority of adjacent rooms. For example, if the priority is also the same, the server (210) can randomly map the rooms in the map data and the rooms in the fourth floor plan (540). In one example, in [Table 6], “Living Room” can correspond to Living Room (541). “Bedroom 1” can correspond to any of Bedroom (543) or Bedroom (544). The following description is based on the premise that “Bedroom 1” corresponds to Bedroom (543). “Bedroom 2” may correspond to Bedroom (544). “Bedroom 3” may correspond to Bedroom (542), which has a higher priority among the adjacent rooms, Bedroom (542) or Bedroom (545). “Bedroom 4” may correspond to Bedroom (545).
[0080] Hereinafter, operations of a server (210) generating device placement data are described with reference to the fourth floor plan (540) illustrated in FIG. 5d. For example, each room included in the fourth floor plan (540) may include multiple areas identified based on adjacent rooms. In one example, a bedroom (543) may include a first area (e.g., an area adjacent to a bathroom) that is not adjacent to the living room (541), bedroom (542), and bedroom (544), a second area adjacent to the living room (541), a third area adjacent to the bedroom (544), and a fourth area adjacent to the bedroom (542). In one example, a device (e.g., a TV) may be located in the first area of the bedroom (543). When a device (e.g., a TV) is located in the first area of the bedroom (543), the server (210) may generate device placement data for the fourth floor plan (540) as shown in [Table 7] below.
[0081] Device layout data of the fourth floor plan (540) {"Living room": {"0": [], "1": [], "2": [], "3": []},"Bedroom 1": {"0": ["TV"], "1": [], "2": [], "3": []},"Bedroom 2": {"0": [], "1": [], "2": [], "3": []},"Bedroom 3": {"0": [], "1": [], "2": [], "3": []},"Bedroom 4": {"0": [], "1": [], "2": [], "3": []}}
[0082] In [Table 7], “Bedroom” 1 may correspond to Bedroom (543). “0” of “Bedroom 1” may represent a first area among the multiple areas of Bedroom (543) that is not adjacent to Living Room (541), Bedroom (542), and Bedroom (544). “1” of “Bedroom 1” may represent a second area among the multiple areas of Bedroom (543) that is adjacent to Living Room (541). “2” of “Bedroom 1” may represent an area among the multiple areas of Bedroom (543) that is adjacent to Bedroom (544). “3” of “Bedroom 1” may represent an area among the multiple areas of Bedroom (543) that is adjacent to Bedroom (542). However, the above description is merely an example and the present disclosure is not limited thereto.
[0083] Referring to [Table 2] through [Table 6] described above, the map data of the first plan view (510) and the map data of the second plan view (520) are identical, and the map data of the third plan view (530) and the map data of the fourth plan view (540) are identical. Therefore, the server (210) can classify the first plan view (510) and the second plan view (520) into a first reference plan view group. For example, the first reference plan view group may include the first plan view (510) and the second plan view (520). In one example, a first classification code may be assigned to the first plan view (510) and the second plan view (520) included in the first reference plan view group. The server (210) can classify the third plan view (530) and the fourth plan view (540) into a second reference plan view group. For example, the second reference plan group may include a third plan (530) and a fourth plan (540). In one example, a second classification code may be assigned to the third plan (530) and the fourth plan (540) included in the second reference plan group.
[0084] A server (210) may receive a message from an electronic device (101) requesting reference floor plans. The message may include an identifier of a user floor plan of the electronic device (101). The server (210) may identify a classification code of the floor plan based on the identifier of the floor plan. The server (210) may identify reference floor plans for the floor plan based on the classification code. In one example, if the user floor plan is a first floor plan (510), the server (210) may identify a second floor plan (520) based on the first classification code. In one example, if the user floor plan is a third floor plan (530), the server (210) may identify a fourth floor plan (540) based on the second classification code. The server (210) may transmit a message containing information about the reference floor plans to the electronic device (101). Information regarding reference plans may include device placement data of reference plans in which devices (or devices requested by the user) registered in the server (210) as associated with the reference plans and / or electronic device (101) are placed.
[0085] FIG. 6 is a flowchart illustrating the operations of an electronic device for displaying a device on a user plan based on the device arrangement in a reference plan. The operations of FIG. 6 can be performed by the electronic device (101) of FIG. 1 and FIG. 2. For example, at least some of the operations can be controlled by the processor (201) of the electronic device (101). In the following, each operation may be performed sequentially, but is not necessarily performed sequentially. For example, the order of each operation may be changed. For example, at least two operations may be performed in parallel.
[0086] Referring to FIG. 6, in operation 601, an electronic device (101) according to one embodiment may transmit a message to a server (210) to request reference floor plans for a user floor plan. In one example, a reference floor plan is a floor plan having a structure similar to the user floor plan and may be referred to as a similar floor plan, a candidate floor plan, or other terms having an equivalent technical / functional meaning. In one example, a message may be referred to as a request message or other terms having an equivalent technical / functional meaning.
[0087] In one embodiment, a message for requesting reference floor plans may include information about a user floor plan. For example, the information about the user floor plan may be an identifier of the user floor plan. For example, the identifier of the user floor plan may be used to identify the classification code of the user floor plan in the server (210). The classification code may be used to identify reference floor plans corresponding to the classification code in the server (210). For example, reference floor plans may be selected by the server (210) based on information about the user floor plan and information about the user's devices registered in the server (210) as associated with the electronic device (101). For example, the reference floor plans may be devices registered in the server (210) as associated with the electronic device (101). In one example, the reference floor plans may be devices owned by the user of the electronic device (101). In a non-limiting example, a message for requesting reference floor plans may include at least one identifier for at least one device among the devices owned by the user. If the message includes an identifier for at least one device, the reference floor plans may be those in which at least one device is placed.
[0088] In operation 602, an electronic device (101) according to one embodiment may receive a message from a server (210) containing information about a plurality of reference plans. For example, the information about the plurality of reference plans may include a plurality of reference plans and a plurality of device placement data for the plurality of reference plans. For example, the device placement data may include identifiers of rooms in the reference plans, identifiers of regions within each of the rooms, and / or identifiers of devices. The device placement data may indicate regions where devices are placed within the reference plans according to the arrangement of the identifiers. In one example, the message containing information about the plurality of reference plans may be referred to as a response message or other terms having an equivalent technical / functional meaning.
[0089] In operation 603, an electronic device (101) according to one embodiment may display a plurality of reference plan views through a display (204). In one example, the electronic device (101) may display objects of devices corresponding to the user's devices (e.g., images and / or text) together on the reference plan views. However, this is merely an example and the present disclosure is not limited thereto. For example, objects of devices corresponding to the user's devices may not be displayed on the reference plan views.
[0090] In operation 604, an electronic device (101) according to one embodiment can select (or identify) one reference plan among a plurality of reference plans based on user input (e.g., touch input).
[0091] In operation 605, an electronic device (101) according to one embodiment can obtain mapping data. For example, the mapping data can be used to identify areas of rooms included in a user floor plan that correspond to areas of rooms included in a reference floor plan.
[0092] In one embodiment, the electronic device (101) may generate map data of a user floor plan. The map data may include identifiers of rooms included in the user floor plan (e.g., “Living Room”, “Bedroom 1”, “Bedroom 2”, “Bedroom 3”, and / or “Bedroom 4”). The electronic device (101) may generate mapping data based on the map data of the user floor plan and / or device placement data of a reference floor plan. In one example, the mapping data may be referred to as device placement data of the user floor plan or other terms having an equivalent technical / functional meaning. For example, the electronic device (101) may identify rooms in the user floor plan corresponding to rooms in the reference floor plan based on the mapping data. For example, the electronic device (101) may identify areas in the user floor plan where devices are placed corresponding to areas in the rooms in the reference floor plan based on the mapping data.
[0093] In operation 606, an electronic device (101) according to one embodiment may display images (and / or texts) of devices on a user plan. The electronic device (101) may identify areas for displaying images of devices on the user plan based on mapping data. The electronic device (101) may display objects of devices on the identified areas within the user plan.
[0094] FIGS. 7a through 7d illustrate an example of displaying a device on a user floor plan based on the device placement in a reference floor plan. FIGS. 7a and 7b describe the operations of a server (210) for generating placement data of a device (725) in a first floor plan (710). FIGS. 7c and 7d describe the operations of an electronic device (101) for displaying a device (745) on a second floor plan (730) using the placement data of a device (725) in the first floor plan (710). For example, the first floor plan (710) may be a reference floor plan, and the second floor plan (730) may be a user floor plan. The device (725) and the device (745) may be devices of the same type (e.g., TV (television)).
[0095] Referring to FIGS. 7a and 7b, the first floor plan (710) may include a living room (711), a bedroom (712), a bedroom (713), a bedroom (714), and a bedroom (715). The server (210) may generate map data based on the structure of the first floor plan (710). For example, the map data of the first floor plan (710) may be as shown in [Table 8] below.
[0096] Map data of the first floor plan (710) {"Living Room": [{"Bedroom": 4, "Living Room": 0}],"Bedroom 1": [{"Bedroom": 2, "Living Room": 1},{"Bedroom 2": 2, "Living Room": 1},{"Bedroom 3": 1, "Living Room": 1},{"Bedroom 4": 1, "Living Room": 1}]}
[0097] The mapping relationship between the rooms in the map data exemplified in [Table 5] and the rooms illustrated in FIG. 7a may be as follows. For example, the electronic device (101) may map the rooms in the map data and the rooms illustrated in FIG. 7a based on the number of adjacent rooms of the corresponding room. In one example, “Living Room” may correspond to the living room (711) which has the largest number of adjacent rooms. “Bedroom 1” may correspond to either bedroom (713) or bedroom (714). Since the number of adjacent rooms in bedroom (713) and bedroom (714) is the same, “Bedroom 1” may be randomly determined from either bedroom (713) or bedroom (714). Hereinafter, “Bedroom 1” is described on the premise that it corresponds to bedroom (713). “Bedroom 2” may correspond to bedroom (714). “Bedroom 3” may correspond to the bedroom (712) with a higher priority among bedroom (712) and bedroom (715) having the same number of adjacent rooms. For example, the priority of the bedroom (713) adjacent to bedroom (712) is higher than the priority of the bedroom (714) adjacent to bedroom (175). “Bedroom 4” may correspond to bedroom (715). As illustrated in FIGS. 7a and 7b, a device (725) may be placed in the bedroom (713) of the first floor plan (710). The bedroom (713) may include a first area (721), a second area (722), a third area (723), and a fourth area (724). For example, the first area (721) may be an area not adjacent to the living room (711), bedroom (712), and bedroom (714). For example, the second area (722) may be an area adjacent to the living room (711). For example, the third area (723) may be an area adjacent to the bedroom (714). For example, the fourth area (724) may be an area adjacent to the bedroom (712). The device (725) may be placed in the first area (721) of the bedroom (713) of the first floor plan (710).That is, a device (725) may be placed in the first area (721) of the bedroom (713) on the reference floor plan. The server (210) may generate device placement data for the first floor plan (710) based on the data. For example, the device placement data for the first floor plan (710) may be as shown in [Table 9] below.
[0098] Device layout data of the first floor plan (710) {"Living room": {"0": [], "1": [], "2": [], "3": []},"Bedroom 1": {"0": ["TV"], "1": [], "2": [], "3": []},"Bedroom 2": {"0": [], "1": [], "2": [], "3": []},"Bedroom 3": {"0": [], "1": [], "2": [], "3": []},"Bedroom 4": {"0": [], "1": [], "2": [], "3": []}}
[0099] In response to receiving a message requesting a reference plan for the second plan (730), the server (210) may transmit a message containing device placement data of the first plan (710) to the electronic device (101).
[0100] Referring to FIGS. 7c and 7d, the second floor plan (730) may include a living room (731), a bedroom (732), a bedroom (733), a bedroom (734), and a bedroom (735). The electronic device (101) may generate map data based on the structure of the second floor plan (730). For example, the map data of the second floor plan (730) may be as shown in [Table 10] below.
[0101] Map data of the second floor plan (730) {"Living Room": [{"Bedroom": 4, "Living Room": 0}],"Bedroom 1": [{"Bedroom": 2, "Living Room": 1},{"Bedroom 2": 2, "Living Room": 1},{"Bedroom 3": 1, "Living Room": 1},{"Bedroom 4": 1, "Living Room": 1}]}
[0102] The electronic device (101) can identify the rooms of the first floor plan (710) corresponding to the rooms of the map data. For example, the electronic device (101) can identify the rooms of the first floor plan (710) corresponding to the rooms of the map data based on the number of adjacent rooms and / or the priority of adjacent rooms (e.g., the number of rooms adjacent to the room in question). In one example, “Living Room” may correspond to Living Room (731). “Bedroom 1” may correspond to Bedroom (733). “Bedroom 2” may correspond to Bedroom (734). “Bedroom 3” may correspond to Bedroom (732). “Bedroom 4” may correspond to “Bedroom (735)”. For example, the electronic device (101) may generate device placement data of the second plan (730) based on device placement data of the first plan (710) and map data of the second plan (730). In one example, the device placement data of the second plan (730) may be referred to as mapping data or other terms having an equivalent technical / functional meaning. For example, the mapping data may be used to identify the corresponding room of the second plan (730) corresponding to each room of the rooms of the first plan (710). For example, the mapping data may be used to identify the corresponding area of the room of the second plan (730) corresponding to each area of the plurality of areas included in the room of the first plan (710).
[0103] The electronic device (101) can generate device placement data of the second plan (730) based on mapping data. For example, the device placement data of the second plan (730) may be as shown in [Table 11] below.
[0104] Device layout data of the second floor plan (730) {"Living room": {"0": [], "1": [], "2": [], "3": []},"Bedroom 1": {"0": ["TV"], "1": [], "2": [], "3": []},"Bedroom 2": {"0": [], "1": [], "2": [], "3": []},"Bedroom 3": {"0": [], "1": [], "2": [], "3": []},"Bedroom 4": {"0": [], "1": [], "2": [], "3": []}}
[0105] As illustrated in FIG. 7b, the bedroom (733) corresponding to “Bedroom 1” may include a first area (741), a second area (742), a third area (743), and a fourth area (744). For example, the first area (741) corresponding to “0” may be an area not adjacent to the living room (731), bedroom (732), and bedroom (734). For example, the second area (742) corresponding to “1” may be an area adjacent to the living room (731). For example, the third area (743) corresponding to “2” may be an area adjacent to the bedroom (734). For example, the fourth area (744) corresponding to “3” may be an area adjacent to the bedroom (732). The electronic device (101) can identify that the device (745) is placed in the first area (741) of the bedroom (733) based on the device placement data of the second floor plan (730). The electronic device (101) can display an object (e.g., image and / or text) for the device (745) on the first area (741) of the second floor plan (730). As described above, the electronic device (101) can display the device in an area of the user floor plan (e.g., second floor plan (730)) identified using the device placement data of the reference floor plan (e.g., first floor plan (710)). By automatically placing the device using the device placement data of the reference floor plan, the number of user inputs (e.g., drag and drop) for placing the devices can be reduced. By reducing the number of user inputs required to place devices, the user experience (UX) of users using smart home-related applications can be improved.
[0106] FIG. 8 illustrates a user interface for controlling devices placed on a user floor plan. The user interface illustrated in FIG. 8 may include a user floor plan (800). An electronic device (101) may display a user input interface through a display (204).
[0107] Referring to FIG. 8, the user floor plan (800) may have devices arranged based on device placement data of a reference floor plan. For example, the user floor plan (800) may include a living room (810), a bedroom (820), a bedroom (830), a bedroom (840), and a bedroom (850). For example, the living room (810) may have a device (811) (e.g., air conditioner), a device (812) (e.g., ceiling light), and a device (813) (e.g., air conditioner) arranged. For example, the bedroom (820) may have a device (821) arranged. For example, the bedroom (830) may have a device (831) and a device (832) (e.g., TV (television)) arranged. For example, the bedroom (840) may have a device (841) arranged. For example, the bedroom (850) may be in a state where the device (851) is placed.
[0108] The electronic device (101) can perform control over the device based on identifying user input for one of the objects of the device displayed on the user floor plan (800). In one example, the electronic device (101) can control the device (811) (e.g., setting the temperature of the air conditioner) based on user input (e.g., touch input) for an object of the device (811) displayed in the living room (810) of the user floor plan (800). In one example, the electronic device (101) can control the device (812) (e.g., setting the luminance) based on user input for an object of the device (812) displayed in the living room (810) of the user floor plan (800). In one example, the electronic device (101) can control the device (832) (e.g., turn on / off of a TV) based on user input for the device (832) displayed in the bedroom (830) of the user floor plan (800).
[0109] The technical problems to be solved in this disclosure are not limited to those mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art to which this disclosure pertains.
[0110] The electronic device described above may include a communication circuit. The electronic device may include a display. The electronic device may include a memory that stores instructions and includes one or more storage media. The electronic device may include at least one processor that includes a processing circuit. When the instructions are executed individually or collectively by the at least one processor, the electronic device may cause the electronic device to transmit a first message to a server device for requesting at least one reference floor plan. When the instructions are executed individually or collectively by the at least one processor, the electronic device may cause the electronic device to receive from the server device a second message containing information about the at least one reference floor plan selected based on information about the user's floor plan and information about the user's at least one device registered with the server device. When the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the at least one reference plan including at least one device associated with the at least one reference plan corresponding at least partially to the user's at least one device. When the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the electronic device to select a reference plan among the at least one reference plans based on user input. When the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the electronic device to acquire mapping data including information about a room in the reference plan that is mapped to a room in the user's plan.When the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the user's at least one device to be displayed on the user's plan view based on the mapping data.
[0111] For example, information regarding the reference plan received from the server device may include information indicating the room in which the device associated with the reference plan is placed, and information indicating the area in which the device associated with the reference plan is placed among a plurality of areas of the room in the reference plan.
[0112] For example, when the above instructions are executed individually or collectively by the at least one processor, the electronic device may be caused to identify the room in the floor plan corresponding to the room in the reference floor plan based on identifying the number of adjacent rooms for each of the rooms included in the user's floor plan.
[0113] For example, when executed individually or collectively by the at least one processor, the above instructions may cause to identify an area of the room in the floor plan corresponding to an area where the device associated with the reference floor plan is placed, based on information indicating an area where the device associated with the reference floor plan is placed. When executed individually or collectively by the at least one processor, the above instructions may cause to display the user's device corresponding to the device associated with the reference floor plan on the area of the floor plan.
[0114] For example, when the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the user to control a device identified based on user input among the at least one device of the user displayed in the user's plan view.
[0115] For example, when the above instructions are executed individually or collectively by the at least one processor, the electronic device may cause the mapping data to be generated based on information regarding the reference floor plan and information indicating the number of adjacent rooms for each of the plurality of rooms included in the user's floor plan.
[0116] For example, when the instructions are executed individually or collectively by the at least one processor, the electronic device may be caused to identify the room in the floor plan corresponding to the room in the reference floor plan based on the mapping data. When the instructions are executed individually or collectively by the at least one processor, the electronic device may be caused to identify the area where the user's device is located among a plurality of areas of the room in the floor plan based on the mapping data.
[0117] For example, the mapping data may indicate at least one area among the entire areas of the plan where the user's at least one device is placed.
[0118] For example, the number of first-type rooms adjacent to the room in the above-mentioned floor plan may be the same as the number of first-type rooms adjacent to the room in the above-mentioned reference floor plan. The number of second-type rooms adjacent to the room in the above-mentioned floor plan may be the same as the number of second-type rooms adjacent to the room in the above-mentioned reference floor plan.
[0119] For example, the number of rooms included in the above floor plan may be the same as the number of rooms included in the above reference floor plan.
[0120] A method performed by an electronic device as described above may include the operation of transmitting a first message to a server device for requesting at least one reference floor plan. The method may include the operation of receiving from the server device a second message containing information about the at least one reference floor plan selected based on information about the user's floor plan and information about the user's at least one device registered in the server device. The method may include the operation of displaying the at least one reference floor plan including at least one device associated with the at least one reference floor plan that corresponds at least partially to the user's at least one device. The method may include the operation of selecting a reference floor plan from among the at least one reference floor plans based on user input. The method may include the operation of acquiring mapping data containing information about the room of the reference floor plan mapped to the room of the user's floor plan. The method may include the operation of displaying the user's at least one device placed on the user's floor plan based on the mapping data.
[0121] For example, information regarding the reference plan received from the server device may include information indicating the room in which the device associated with the reference plan is placed, and information indicating the area in which the device associated with the reference plan is placed among a plurality of areas of the room in the reference plan.
[0122] For example, the above method may include an operation of identifying the room in the floor plan corresponding to the room in the reference floor plan based on identifying the number of adjacent rooms for each of the rooms included in the user's floor plan.
[0123] For example, the above method may include an operation of identifying an area of the room in the floor plan corresponding to an area where the device associated with the reference floor plan is placed, based on information indicating an area where the device associated with the reference floor plan is placed. The above method may include an operation of displaying the user's device corresponding to the device associated with the reference floor plan on the area of the floor plan.
[0124] For example, the above method may include an operation to control a device identified based on user input among the at least one device of the user displayed in the user's plan view.
[0125] For example, the above method may include an operation of generating the mapping data based on information regarding the reference floor plan and information indicating the number of adjacent rooms for each of the plurality of rooms included in the user's floor plan.
[0126] For example, the above method may include an operation of identifying the room in the floor plan corresponding to the room in the reference floor plan based on the mapping data. The above method may include an operation of identifying an area for the placement of the user's device among a plurality of areas of the room in the floor plan based on the mapping data.
[0127] For example, the mapping data may indicate at least one area among the entire areas of the plan where the user's at least one device is placed.
[0128] For example, the number of first-type rooms adjacent to the room in the above-mentioned floor plan may be the same as the number of first-type rooms adjacent to the room in the above-mentioned reference floor plan. The number of second-type rooms adjacent to the room in the above-mentioned floor plan may be the same as the number of second-type rooms adjacent to the room in the above-mentioned reference floor plan.
[0129] For example, the number of rooms included in the above floor plan may be the same as the number of rooms included in the above reference floor plan.
[0130] The effects obtainable from the present disclosure are not limited to those mentioned above, and other unmentioned effects will be clearly understood by those skilled in the art to which the present disclosure belongs.
[0131] For one or more embodiments, at least one of the components described in one or more of the prior art drawings may be configured to perform one or more operations, techniques, processes and / or methods as described in the present disclosure. For example, a processor (e.g., a baseband processor) described in the present disclosure in relation to one or more of the prior art drawings may be configured to operate according to one or more examples described in the present disclosure. As another example, circuits associated with user equipment (UE), a base station, a network element, etc., as described above in relation to one or more of the prior art drawings may be configured to operate according to one or more examples described herein.
[0132] Any of the embodiments described above may be combined with any other embodiment (or combination of embodiments) unless otherwise explicitly stated. The foregoing description of one or more embodiments is for illustrative and explanatory purposes only, and is not intended to limit or exhaust the scope of the embodiments in the exact form disclosed. Modifications and variations are possible in light of the foregoing teachings or may be obtained from the practice of various embodiments.
[0133] The electronic devices according to the various embodiments disclosed in this document may be of various forms. The electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, electronic devices, or consumer electronics. The electronic devices according to the embodiments of this document are not limited to the devices described above.
[0134] The various embodiments of this document and the terms used therein are not intended to limit the technical features described in this document to specific embodiments, and should be understood to include various modifications, equivalents, or substitutions of said embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of said items unless the relevant context clearly indicates otherwise. In this document, phrases such as "A or B," "at least one of A and B," "at least one of A or B," "A, B or C," "at least one of A, B and C," and "at least one of A, B, or C" may each include any one of the items listed together in the corresponding phrase, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used simply to distinguish said components from other said components and do not limit said components in any other aspect (e.g., importance or order). Where any (e.g., 1st) component is referred to as "coupled" or "connected" to another (e.g., 2nd) component, with or without the terms "functionally" or "communicationly," it means that said any component may be connected to said other component directly (e.g., via a wire), wirelessly, or through a third component.
[0135] The term “module” as used in the various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example. A module may be a component formed integrally, or a minimum unit of said component or a part thereof that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
[0136] Various embodiments of the present document may be implemented as software (e.g., program (140)) comprising one or more instructions stored in a storage medium (e.g., internal memory (136) or external memory (138)) readable by a machine (e.g., electronic device (101)). For example, a processor (e.g., processor (120)) of the machine (e.g., electronic device (101)) may call at least one of the one or more instructions stored in the storage medium and execute it. This enables the machine to be operated to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code that can be executed by an interpreter. The storage medium readable by the machine may be provided in the form of a non-transitory storage medium. Here, 'non-temporary' simply means that the storage medium is a tangible device and does not contain a signal (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently and cases where it is stored temporarily.
[0137] According to one embodiment, the method according to the various embodiments disclosed herein may be provided by being included in a computer program product. The computer program product may be traded between a seller and a buyer as a product. The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or distributed online (e.g., download or upload) through an application store (e.g., Play Store™) or directly between two user devices (e.g., smartphones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily created on a device-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.
[0138] According to various embodiments, each component (e.g., module or program) of the components described above may include a singular or multiple entities, and some of the multiple entities may be separated and placed in other components. According to various embodiments, one or more of the components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Generally or additionally, multiple components (e.g., module or program) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the multiple components in the same or similar manner as those performed by the corresponding component among the multiple components prior to integration. According to various embodiments, operations performed by the module, program, or other components may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
Claims
1. In an electronic device, Communication circuit; display; Memory for storing instructions and including one or more storage media; and It includes at least one processor comprising a processing circuit, and When the above instructions are executed individually or collectively by the at least one processor, the electronic device, Sending a first message to a server device to request at least one reference floor plan, A second message is received from the server device, the message comprising information about the at least one reference plan selected based on information about the user's plan and information about at least one device of the user registered in the server device, and Displaying the at least one reference plan including at least one device associated with the at least one reference plan that corresponds at least partially to the at least one device of the above user, and Based on user input, a reference plan is selected from among the at least one reference plan, and Mapping data including information about the room in the reference floor plan that is mapped to the room in the floor plan of the user above, and Causing to display the at least one device of the user positioned on the user's plan view based on the above mapping data, Electronic device.
2. In Paragraph 1, The information regarding the reference floor plan received from the server device includes information indicating the room in which the device related to the reference floor plan is placed, and information indicating the area in which the device related to the reference floor plan is placed among a plurality of areas of the room in the reference floor plan. Electronic device.
3. In Paragraph 2, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, Causing to identify the room in the floor plan corresponding to the room in the reference floor plan based on identifying the number of adjacent rooms for each of the rooms included in the floor plan of the user above. Electronic device.
4. In Paragraph 3, When the above instructions are executed individually or collectively by the at least one processor, Based on information indicating the area where the device is placed in relation to the above reference plan, the area of the room in the plan corresponding to the area where the device is placed in relation to the above reference plan is identified, and Causing to display the user's device corresponding to the device associated with the reference plan on the area of the above plan. Electronic device.
5. In Paragraph 1, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, Causing to control a device identified based on user input among at least one device of the user displayed in the plan view of the user. Electronic device.
6. In Paragraph 1, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, Causing to generate the mapping data based on information regarding the above reference floor plan and information indicating the number of adjacent rooms for each of the plurality of rooms included in the user's floor plan. Electronic device.
7. In Paragraph 6, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, Based on the above mapping data, identify the room in the above floor plan corresponding to the room in the above reference floor plan, and, Causing to identify the area where the user's device is placed among a plurality of areas of the room in the floor plan based on the above mapping data, Electronic device.
8. In Paragraph 1, The above mapping data indicates at least one area among the entire areas of the above plan where the user's at least one device is placed, Electronic device.
9. In Paragraph 1, The number of first-type rooms adjacent to the room in the above-mentioned floor plan is the same as the number of first-type rooms adjacent to the room in the above-mentioned reference floor plan, and The number of Type 2 rooms adjacent to the room in the above floor plan is the same as the number of Type 2 rooms adjacent to the room in the above reference floor plan. Electronic device.
10. In Paragraph 1, The number of rooms included in the above floor plan is the same as the number of rooms included in the above reference floor plan, Electronic device.
11. In a method performed by an electronic device, The operation of transmitting a first message to a server device to request at least one reference floor plan; The operation of receiving from the server device a second message including information about the user's floor plan and information about the at least one reference floor plan selected based on information about the user's at least one device registered in the server device; An operation of displaying the at least one reference plan including at least one device associated with the at least one reference plan that corresponds at least partially to the at least one device of the user; The operation of selecting a reference plan from among the at least one reference plan based on user input; The operation of acquiring mapping data including information about the room of the reference floor plan that is mapped to the room of the floor plan of the user; and A method comprising an operation of displaying the at least one device of the user positioned on the user's plan view based on the above mapping data. method.
12. In Paragraph 11, The information regarding the reference floor plan received from the server device includes information indicating the room in which the device related to the reference floor plan is placed, and information indicating the area in which the device related to the reference floor plan is placed among a plurality of areas of the room in the reference floor plan. method.
13. In Paragraph 12, Based on identifying the number of adjacent rooms for each of the rooms included in the floor plan of the user, the operation of identifying the room in the floor plan corresponding to the room in the reference floor plan further includes method.
14. In Paragraph 13, An operation of identifying an area of the room in the floor plan corresponding to an area where the device is placed in relation to the reference floor plan, based on information indicating an area where the device is placed in relation to the reference floor plan; and Further including the operation of displaying the user's device corresponding to the device associated with the reference plan on the area of the plan view. method.
15. In Paragraph 11, A method further comprising controlling a device identified based on user input among at least one device of the user displayed in the plan view of the user. method.