Patent Description:
With recent development of network communication technology, an Internet-of-things (IoT) system has been developed to control many electronic apparatuses through a network. Up-to-date electronic apparatuses have a network communication function so as to be applied to the loT system.

In a current living space, legacy electronic devices having no network communication functions coexist with up-to-date electronic devices having a network communication function. Further, even the up-to-date electronic apparatus supporting the network communication function may be set by a consumer to be used without the network communication function, i.e., by keeping its network connection turned off.

To control the legacy electronic device or the electronic device of which network connection is turned off, a user performs manual control or uses a remote controller. However, the manual control of the electronic device is very inconvenient for a user. Further, the control based on the remote controller requires a number of remote controllers as many as the number of electronic devices. In particular, the remote controller not used frequently is likely to be lost and a user has to look for the remote controller. Besides, the legacy electronic device having no network communication functions or the electronic device set to turn off the network connection is only controllable at a short distance within a range of vision, but not controllable at a long distance out of the range of vision. Controlling external devices is disclosed e.g. in <CIT>, <CIT> and <CIT>.

In accordance with an aspect of the invention, there is provided an electronic apparatus according to claim <NUM>.

In accordance with another aspect of the invention, there is provided an electronic apparatus according to claim <NUM>.

In accordance with another aspect of the disclosure, which is not part of the invention as claimed, there is provided a server comprising network communicator circuitry configured to perform network communication with an electronic apparatus; and a processor configured to obtain information of an external device from the electronic apparatus through the network communicator circuitry, register the external device as a control target based on the obtained information of the external device, and control the network communicator circuitry to transmit a control command for controlling the external device to the electronic apparatus through the network communicator circuitry to make the electronic apparatus control the external device.

According to another aspect of the invention, there is provided a method of controlling an electronic apparatus according to claim <NUM>.

Preferred embodiments are covered by the appended dependent claims.

Below, embodiments of the disclosure will be described in detail with reference to accompanying drawings. Description of embodiments will be made based on details illustrated in the accompanying drawings, in which like numerals or symbols refer to elements implementing substantially like functions. As used herein, the terms "1st" or "first" and "2nd" or "second" may use corresponding components regardless of importance or order and are used to distinguish one component from another without limiting the components.

<FIG> is a schematic view of an electronic apparatus control system <NUM> according to an embodiment. The electronic apparatus control system <NUM> includes an electronic apparatus <NUM> serving as a medium of control, a server <NUM>, a control device <NUM>, and an external device <NUM> serving as a control target. The electronic apparatus <NUM> may include various electronic apparatuses, for example, a TV, a computer, a notebook computer, a smart phone, a tablet computer, a mobile phone, a smart watch, a wearable device, a computer, a multimedia player, an electronic frame, a digital billboard, a large format display (LFD), a digital signage, a set-top box, etc. Likewise, the server <NUM> may include an Internet-of-things (loT) cloud server, etc. Similarly, the control device <NUM> may include a mobile apparatus, for example, a notebook computer, a smart phone, a tablet computer, a mobile phone, a smart watch, a wearable device, a remote controller, etc. Equally, the external device <NUM> may include various external devices, which have no network communication functions or which have been set to turn off their own network connection, such as an air conditioner, an audio system, a refrigerator, a light, a door lock, a camera and the like controllable by an infrared (IR) signal. Here, the electronic apparatus <NUM> is connected to the server <NUM> through a network.

<FIG> is a block diagram of the electronic apparatus control system of <FIG>, according to an embodiment.

*27As shown therein, the electronic apparatus <NUM> includes an operation performer <NUM>, a first IR communicator circuit <NUM>, a first network communicator circuit <NUM>, a first processor <NUM>, a first memory <NUM>, etc. The electronic apparatus <NUM> serves as a medium of control between the server <NUM> and the external device <NUM>. In other words, the electronic apparatus <NUM> controls the external device <NUM> in response to a control command of the server <NUM>.

The operation performer <NUM> may for example include a display, an image obtainer, an image processor, an audio processor, etc. to carry out substantial operations of the electronic apparatus <NUM>.

The first IR communicator circuit <NUM> obtains an infrared signal from the remote controller (not shown) of the electronic apparatus <NUM> to control the operation performer <NUM>. Further, the first IR communicator circuit intercepts a first IR signal emitted from a remote controller <NUM> of the external device <NUM>, and emits a second IR signal including command information for controlling the external device <NUM>.

The first network communicator circuit <NUM> performs network communication with the server <NUM>. The first network communicator circuit <NUM> may transmit information about the external device <NUM>, for example, a device profile to the server <NUM>, or obtain a control command of the external device <NUM> from the server <NUM>. The first network communicator circuit <NUM> may for example include a radio frequency (RF) circuit that transmits/obtains an RF signal to perform wireless communication with the server <NUM>, and may be configured to perform one or more communications among Wi-Fi, Bluetooth, Zigbee, ultra-wide band (UWB), wireless universal serial bus (USB), and a near field communication (NFC). The first network communicator circuit <NUM> may perform wired communication with the server <NUM> and other apparatuses through a wired local area network (LAN). The first network communicator circuit <NUM> may be actualized by various communication ways other than a connecting portion including a connector or a terminal for wired connection.

The first processor <NUM> performs control to operate general elements of the electronic apparatus <NUM>. The first processor <NUM> may load a control program (containing one or more instructions) from the first memory <NUM> described below to perform such control operations and may include at least one central processing unit (CPU) to execute the loaded control program.

The control program may include a program(s) actualized by at least one among a basic input/output system (BIOS), a device driver, an operating system, firmware, a platform, and an application. According to an embodiment, the application may be previously installed or stored when the electronic apparatus <NUM> is manufactured, or may be installed based on data of the application obtained from the outside in the future when necessary. The data of the application may for example be downloaded from an app server such as an application market to the electronic apparatus <NUM>. Such an app server is given as an example of a computer program product of the disclosure, but not limited thereto.

The first processor <NUM> analyzes the first IR signal of the remote controller <NUM> of the external device <NUM>, which is intercepted through the first IR communicator circuit, and obtain information about the external device <NUM> through the analysis of the first IR signal, for example, a manufacturer, a product type, and the like device profile. Here, the device profile may show the manufacturer and the product name of the external device <NUM>, for example "an air conditioner of a brand A".

The first processor <NUM> identifies whether "the air conditioner of the brand A" has been registered as the control target (e.g. a virtual loT device). When the electronic apparatus <NUM> is operating while "the air conditioner of the brand A" has not been registered as the control target, the first processor <NUM> asks a user through the operation performer <NUM>, for example, the display, whether the user wants to register "the air conditioner of the brand A" as the control target. When the electronic apparatus <NUM> is not operating while "the air conditioner of the brand A" has not been registered as the control target, the first processor <NUM> operates the operation performer <NUM>, e.g. The display, to ask a user whether the user wants to register "the air conditioner of the brand A" as the control target, or to keep a standby mode and display a control-target registration event for asking a user whether the user wants to register "the air conditioner of the brand A" as the control target when the user turns on the electronic apparatus <NUM>. In this way, the first IR communicator circuit <NUM> always operates even when the electronic apparatus <NUM> is not operating, and intercepts a first IR signal emitted from the remote controller <NUM> of the surrounding external device <NUM>. Typically, the first IR communicator circuit <NUM> may easily intercept the first IR signal emitted from the remote controller <NUM> of the surrounding external device <NUM> because the IR signal is reflected from a wall or an obstacle. In some situations, a user may make the remote controller <NUM> of the external device <NUM> emit the first IR signal directly toward the electronic apparatus <NUM>, but this operation is not required for the first IR communicator circuit <NUM> to intercept the first IR signal.

The first processor <NUM> transmits the device profile to the server <NUM> through the first network communicator circuit <NUM> and requests the registration of the control target (e.g. the virtual loT device) when a user selects the external device <NUM> to be registered as the control target. In this case, the first processor <NUM> may make the server <NUM> register the functions of the external device <NUM> as the functions of the electronic apparatus <NUM>. In other words, the server <NUM> may do registration to identify that the electronic apparatus <NUM> performs various functions of "the air conditioner of the brand A". Meanwhile, the first processor <NUM> may make the server <NUM> register the electronic apparatus <NUM> as a medium for controlling "the air conditioner of the brand A". The first processor <NUM> controls the first IR communicator circuit <NUM> to generate the second IR signal for controlling the operations of the external device <NUM> based on a control command when obtaining the control command of the external device <NUM> through the server <NUM>.

The first memory <NUM> is configured to store data without limitations. The first memory <NUM> is accessed by the first processor <NUM>, and allows the first processor <NUM> to read, load, write, modify, delete, update, etc. the data. The data stored in the first memory <NUM> may for example include collected device profile data of the control target, infrared code data of products according to manufacturers, control target registration data, etc. The first memory <NUM> includes an operating system, various applications executable on the operating system, image data, appended data, etc. The first memory <NUM> includes a program (application) that performs a code analysis of the first IR signal, conversion into the second IR signal corresponding to the control command, etc..

The first memory <NUM> includes a nonvolatile memory in which the control program is stored, and a volatile memory to which at least a part of the stored control program is loaded.

The first memory <NUM> may include a storage of at least one type among a flash memory type, a hard disk type, a multimedia card micro type, a card type memory(for example, secure digital (SD), extreme digital (XD), etc.), a random access memory (RAM), a static random access memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disc, and an optical disc, etc..

The server <NUM> includes a second network communicator circuit <NUM>, a second processor <NUM>, a second memory <NUM>, etc..

The second network communicator circuit <NUM> performs network communication with the electronic apparatus <NUM> and the control device <NUM>. The second network communicator circuit <NUM> obtains the device profile of the external device <NUM> from the electronic apparatus <NUM>, and the control command of the external device <NUM> from the control device <NUM>. The second network communicator circuit <NUM> may also transmit the control command of the external device <NUM>, obtained from the control device <NUM>, to the electronic apparatus <NUM>.

The second network communicator circuit <NUM> may for example include a radio frequency (RF) circuit to transmit/obtain an RF signal for performing wireless communication with the electronic apparatus <NUM> and/or the control device <NUM>, and be configured to perform one or more communications among Wi-Fi, Bluetooth, Zigbee, UWB), wireless USB, and NFC. The second network communicator circuit <NUM> may perform wired communication with the electronic apparatus <NUM>, the control device <NUM> and other devices through the wired LAN. Besides the connecting portion including the connector or terminal for the wired connection, the second network communicator circuit <NUM> may be actualized by various communication ways.

The second processor <NUM> performs control to operate general elements of the server <NUM>. The second processor <NUM> may load a control program (containing one or more instructions) to perform such control operations and may include at least one CPU to execute the loaded control program.

The second processor <NUM> may generally control a plurality of registered control targets, e.g. a plurality of registered loT devices, based on an obtained control command.

The second processor <NUM> may also identify whether the external device <NUM>, for example "the air conditioner of the brand A" has been registered as the control target (e.g. a virtual loT device), based on the device profile obtained from the electronic apparatus <NUM>. In some embodiments, the second processor <NUM> may separately identify whether the control targets have been registered, although the second processor <NUM> may use the registration results identified by the electronic apparatus <NUM>. When "the air conditioner of the brand A" has not been registered as the control target, "the air conditioner of the brand A" is registered as the control target. In this case, the second processor <NUM> may register the functions of the external device <NUM> as the additional functions of the electronic apparatus <NUM>. In other words, the server <NUM> may make the electronic apparatus <NUM> be registered to perform various functions of "the air conditioner of the brand A". In this case, when obtaining a control command of "set the temperature level of the air conditioner higher", the second processor <NUM> identifies the control command as the function of the electronic apparatus <NUM> and transmits the control command to the electronic apparatus <NUM>.

Meanwhile, the second processor <NUM> may register the electronic apparatus <NUM> as an intermediate medium for controlling "the air conditioner of the brand A". In this case, the second processor <NUM> distinguishes "the air conditioner of the brand A" from the existing loT devices and registers "the air conditioner of the brand A" as a virtual loT device to be matched with the electronic apparatus <NUM> capable of applying IR-control to "the air conditioner of the brand A". In other words, the second processor <NUM> distinguishes "the air conditioner of the brand A" as, for example, an air conditioner without network communication capability as compared with existing loT devices which do have network communication capability. In this case, when obtaining a control command of "set the temperature level of the air conditioner higher through a TV", the second processor <NUM> transmits the control command to the electronic apparatus <NUM> so that the electronic apparatus <NUM> may serve as an intermediate medium.

When another air conditioner (e.g. an air conditioner of a brand B) is additionally registered as an IoT device to the server <NUM>, the second processor <NUM> identifies the control command of "set the temperature level of the air conditioner higher" as a control command for the air conditioner (e.g. the air conditioner of the brand B) and transmits the control command to the air conditioner (e.g. the air conditioner of the brand B).

When another air conditioner has not been registered as the loT device in the server <NUM>, the second processor <NUM> analyzes the control command of "set the temperature level of the air conditioner higher" as a control command of "set the temperature level of the air conditioner higher through the TV" and transmits the control command to the electronic apparatus <NUM> by regarding the electronic apparatus <NUM> as an intermediate medium.

When obtaining the control command for "the air conditioner of the brand A" of the virtual loT device, the second processor <NUM> transmits the control command to a matching electronic apparatus <NUM> because the second processor <NUM> cannot directly wirelessly control "the air conditioner of the brand A", thereby making "the air conditioner of the brand A" be subjected to IR control of the electronic apparatus <NUM>. For example, when obtaining "the temperature level + in the air conditioner of the brand A through the TV" from the control device <NUM>, the second processor <NUM> transmits the control command of "the temperature level + in the air conditioner of the brand A" to the TV.

The first processor <NUM> of the electronic apparatus <NUM> generates a second IR signal code based on "the temperature level + in the air conditioner of the brand A" obtained from the server through the first network communicator circuit <NUM>, and transmits the second IR signal code to the first IR communicator circuit <NUM>. The first IR communicator circuit <NUM> emits a second IR signal corresponding to "the temperature level + in the air conditioner" and controls the external device <NUM> (the air conditioner of the brand A).

The second memory <NUM> is configured to store data without limitations. The second memory <NUM> is accessed by the second processor <NUM>, and allows the second processor <NUM> to read, load, write, modify, delete, update, etc. the data. The data stored in the second memory <NUM> may for example include device profile data of control targets, device profile data obtained from the electronic apparatus <NUM>, electronic apparatus data being matched with virtually registered control targets (e.g. external devices), etc. The second memory <NUM> may include an operating system, various applications executable on the operating system, appended data, etc..

The second memory <NUM> includes a nonvolatile memory in which the control program is stored, and a volatile memory to which at least a part of the stored control program is loaded.

The control device <NUM> obtains a control command and substantially controls the external device <NUM> via the server <NUM> and the electronic apparatus <NUM>. In other words, the control device <NUM> obtains a user's control command to control the external device <NUM>.

The control device <NUM> includes a third network communicator circuit <NUM>, a third processor <NUM>, a user command obtainer <NUM>, a voice recognition engine <NUM>, etc..

The third network communicator circuit <NUM> performs network communication with the server <NUM>. The third network communicator circuit <NUM> may transmit an obtained control command of an external device <NUM> to the server <NUM>.

The third network communicator circuit <NUM> may for example include an RF circuit to transmit/obtain an RF signal to perform wireless communication with the server <NUM>, and be configured to perform one or more communications among Wi-fi, Bluetooth, Zigbee, UWB, Wireless USB, and NFC.

The third processor <NUM> performs control to operate general elements of the control device <NUM>. The third processor <NUM> may load a control program (containing one or more instructions) to perform such control operations and may include at least one CPU to execute the loaded control program.

The third processor <NUM> transmits a control command obtained through a user command obtainer <NUM> or a control command recognized by the voice recognition engine to the server <NUM> through the third network communicator circuit <NUM>.

The user command obtainer <NUM> obtains a user's input and transmits the user's input to the third processor <NUM>. The user command obtainer <NUM> may be actualized in various forms in accordance with a user's input methods, for example, a menu button displayed on a display, a remote control signal obtainer configured to obtain a remote control signal of a user's input obtained from the remote controller, a touch screen provided on the display and obtaining a user's touch input, a camera configured to detect a user's gesture input, a microphone configured to recognize a user's voice input, etc..

The voice recognition engine <NUM> recognizes (extracts) a control command for the external device <NUM> from a user's voice command uttered by the user. The voice recognition function of the voice recognition engine <NUM> may be carried out using a previously known voice recognition algorithm. For example, the voice recognition engine <NUM> may recognize a voice by extracting a voice feature vector of a voice signal, and comparing the extracted voice feature vector with voice recognition target information stored in a memory. Further, when the extracted voice feature vector is not matched with the voice recognition target information, a voice recognition result may be corrected by information of high similarity to thereby recognize a voice. Here, if there are a plurality of pieces of voice recognition target information of high similarity, a user may be allowed to select one of them.

The voice recognition engine <NUM> may be actualized by a CPU-resident embedded voice recognition engine <NUM> without limitations. For example, the voice recognition engine <NUM> may be actualized by a separate chip such as a microcomputer separated from the CPU.

When the voice recognition engine <NUM> recognizes "volume up", "volume down", "turn up the sound", "turn down the sound", or the like as a recognition result in a case where the loT control target is a TV, the third processor <NUM> transmits a control command corresponding to the recognition result to the server <NUM> and makes the server control the TV.

When the voice recognition engine <NUM> recognizes "set the temperature level of the air conditioner higher through the TV", "set the temperature level of the air conditioner lower through the TV", "set the wind level of the air conditioner stronger through the TV", "set the wind level of the air conditioner weaker through the TV", or the like as a recognition result in a case where the loT control target is the external device <NUM> (e.g. the air conditioner of the brand A), the third processor <NUM> transmits a control command corresponding to the recognition result to the server <NUM>, and then transmits the control command again to the electronic apparatus (e.g. the TV) <NUM>, thereby controlling the external device (e.g. the air conditioner of the brand A). Here, the control command may be configured under conditions that the control medium of "TV", the virtual control target of "the air conditioner of the brand A", and the operation commands for the air conditioner of the brand A of "the temperature level +", "the temperature level -" "the wind level +" and "the wind level -" are matched with one another.

The voice recognizable in the voice recognition engine <NUM> may include a speech corresponding to a control medium that includes a plurality of apparatuses such as a notebook computer, a computer, etc. in addition to a TV. The electronic apparatus and the external device may be connected in such a manner that a plurality of media, i.e. a plurality of electronic apparatuses are connected to the control target, i.e. a single external device, or one medium, i.e. a single electronic apparatus may be connected to the plurality of external devices.

The voice recognizable in the voice recognition engine <NUM> may include a speech corresponding to a control target that includes a plurality of external devices such as "refrigerator", "door lock", "audio system", "light", etc. in addition to the "air conditioner of the brand A".

The voice recognizable in the voice recognition engine <NUM> may include a speech corresponding to a control command that includes various control commands implemented in the air conditioner, such as "shutdown/stop", "subtropics", "cooling mode/cooling", "dehumidifying mode/dehumidification", "heating mode/heating", etc. in addition to the temperature level +", "the temperature level -" "the wind level +" and "the wind level -".

The voice recognition engine <NUM> may further include a voice converter (not shown) configured to convert a voice command obtained in a user command obtainer <NUM> into an electric audio signal. The audio signal converted by the voice converter is given in a pulse code modulation (PCM) form or a compressed audio waveform. Here, the voice converter may be actualized by an analog/digital (A/D) converter that digitizes a user's voice command.

The external device <NUM> includes a fourth IR communicator circuit <NUM> and a fourth processor <NUM>. The external device <NUM> will be called a legacy device having no network communication functions or a non-connected device for which a network connection is turned off. The external device <NUM> may be controlled by the first IR signal of the remote controller <NUM> or the second IR signal of the electronic apparatus <NUM>.

The fourth IR communicator circuit <NUM> obtains the first IR signal or the second IR signal, in which command information is included to control operations of the external device <NUM>.

The fourth processor <NUM> controls the operations of the external device <NUM>, based on the obtained first or second IR signal. The fourth processor <NUM> performs control to operate general elements of the external device <NUM>. The fourth processor <NUM> may load a control program (containing one or more instructions) to perform such control operations and may include at least one CPU to execute the loaded control program.

<FIG> is a block diagram of an electronic apparatus control system according to an embodiment. As shown therein, an electronic apparatus control system <NUM>' includes the electronic apparatus <NUM> serving as the control medium, the server <NUM>, the control device <NUM>, and the external device <NUM> serving as the control target. Below, the electronic apparatus control system <NUM>' will be described focusing on different parts from those of the embodiment shown in <FIG>, and repetitive descriptions will be omitted for conciseness.

In the embodiment shown in <FIG>, a voice recognition engine is not provided in the control device <NUM> but rather a voice recognition engine <NUM> is included in the server <NUM>. In some situations, it may be rather difficult to have a voice recognition function in the control device <NUM> because the control device <NUM> substantially employs a universal mobile device such as a smart phone or the like in which such a function may not always be provided. On the other hand, it is easier to have the voice recognition function at the server <NUM> because the server <NUM> is used as an apparatus dedicated to control various control targets, e.g., a plurality of external devices <NUM>.

Referring to <FIG>, in the state that the external device <NUM> has been virtually registered as the control target in the server <NUM>, the control device <NUM> obtains a user's voice command through the user command obtainer <NUM>. The control device <NUM> directly transmits the obtained voice command of the user to the server <NUM> through the third network communicator circuit <NUM>. Here, the control device <NUM> is used to obtain and transmit a user's voice command, for example, "set the temperature level of the air conditioner higher through the TV", "set the temperature level of the air conditioner lower through the TV", "set the wind level of the air conditioner stronger through the TV", "set the wind level of the air conditioner weaker through the TV", or the like to the server <NUM>.

The server <NUM> recognizes (i.e., extracts) the control command from the voice command of the user, which is obtained from the control device <NUM>, through the voice recognition engine <NUM>. The server <NUM> transmits the control command, for example, "the temperature level + in the air conditioner of the brand A" to the control medium, for example, the TV, which is contained in the control command. Here, the server <NUM> may directly transmit the second IR signal code about "the temperature level + in the air conditioner of the brand A", or send only content of the control command to the TV so that the TV can generate the second IR signal code corresponding to "the temperature level + in the air conditioner of the brand A".

<FIG> is a block diagram of an electronic apparatus control system according to an embodiment. As shown in <FIG>, an electronic apparatus control system <NUM>" includes the electronic apparatus <NUM>, the server <NUM>, the external device <NUM>, and an interactive server <NUM>. The interactive server <NUM> is provided between the electronic apparatus <NUM> and the server <NUM>. Further, the electronic apparatus control system <NUM>" shown in <FIG> directly obtains a user's voice command from the electronic apparatus <NUM> unlike in the embodiments of <FIG> and <FIG> in which the control device <NUM> obtains the voice command of the user. The operations of analyzing the first IR signal of the external device <NUM> and registering the external device <NUM> as the virtual control target are the same as those described in the first and second embodiments of <FIG> and <FIG>, and thus repetitive descriptions thereof will be omitted for conciseness.

The electronic apparatus <NUM>, i.e., the control medium for the external device <NUM>, includes the operation performer <NUM>, the first IR communicator circuit <NUM>, the first network communicator circuit <NUM>, the first processor <NUM>, the first memory <NUM> and a user command obtainer <NUM>.

The user command obtainer <NUM> obtains a user's command and transmits the obtained command to the first processor <NUM>. The user command obtainer <NUM> may be actualized in various forms in accordance with a user's input methods, for example, a menu button displayed on the display, a remote control signal obtainer configured to obtain a remote control signal of a user's command obtained from the remote controller, a touch screen provided on the display and obtaining a user's touch input, a camera configured to detect a user's gesture input, a microphone configured to recognize a user's voice input, etc..

For example, when obtaining a user's voice command through the user command obtainer <NUM>, the first processor <NUM> directly transmits the obtained voice command to the interactive server <NUM> through the first network communicator circuit <NUM>. Here, the voice command of the user may for example include such a speech as "set the temperature level of the air conditioner higher through the TV", "set the temperature level of the air conditioner lower through the TV", "set the wind level of the air conditioner stronger through the TV", "set the wind level of the air conditioner weaker through the TV", etc..

The interactive server <NUM> includes a fifth network communicator circuit <NUM>, a fifth processor <NUM>, a fifth memory <NUM>, and a voice recognition engine <NUM>.

The fifth network communicator circuit <NUM> obtains a user's voice command from the first network communicator circuit <NUM> of the electronic apparatus <NUM> to the fifth processor <NUM>.

The fifth processor <NUM> transmits the voice command of the user to the voice recognition engine <NUM>.

The voice recognition engine <NUM> recognizes a control command, for example, "the temperature level+ of the air conditioner through the TV", "the temperature level- of the air conditioner through the TV", "the wind level+ of the air conditioner through the TV", "the wind level- of the air conditioner through the TV", etc. by processing the voice command of the user, and transmits the recognized control command to the fifth processor <NUM>. Like this, the control command extracted from the voice command of the user contains command information that includes a control medium (e.g. the TV), a control target (e.g. the air conditioner), and command information (e.g. the temperature level+, the temperature level-, the wind level+, the wind level-, etc.).

The fifth processor <NUM> transmits the recognized control command to the server <NUM> through the fifth network communicator circuit <NUM>.

The server <NUM> includes the second network communicator circuit <NUM>, the second processor <NUM>, and the second memory <NUM>.

The second network communicator circuit <NUM> transmits the control command from the interactive server <NUM> to the second processor <NUM>.

The second processor <NUM> identifies whether the external device, i.e. the control target, for example, "the air conditioner of the brand A" has been registered as the virtual control target in the control command. When "the air conditioner of the brand A" has been registered as the virtual control target, the second processor <NUM> transmits the control command to the electronic apparatus <NUM> via the second network communicator circuit <NUM>. On the other hand, when the air conditioner of the brand A" has not been registered as the virtual control target, the second processor <NUM> feeds a "fail return message", which states that "the air conditioner of the brand A" is a nonregistered control target, to the interactive server <NUM> through the second network communicator circuit <NUM>.

When obtaining the "fail return message" from the server <NUM> through the fifth network communicator circuit <NUM>, the fifth processor <NUM> of the interactive server <NUM> transmits the control command to the electronic apparatus <NUM> through the fifth network communicator circuit <NUM>.

The first processor <NUM> of the electronic apparatus <NUM> generates the second IR signal code corresponding to the command information based on, for example, "the temperature level + in the air conditioner", "the temperature level- in the air conditioner", "the wind level+ in the air conditioner", "the wind level- in the air conditioner", and the like control command transmitted from the server <NUM> or the interactive server <NUM> via the first network communicator circuit <NUM>, and makes the first IR communicator circuit <NUM> emit the second IR signal.

<FIG> is a block diagram of an electronic apparatus control system according to an embodiment. An electronic apparatus control system <NUM>‴ includes the electronic apparatus <NUM> and the external device <NUM>. In the electronic apparatus control system <NUM>"', the electronic apparatus <NUM> may function as a server in itself instead of the server <NUM> and also function as the control device <NUM>.

The electronic apparatus <NUM> includes the operation performer <NUM>, the first IR communicator circuit <NUM>, the first network communicator circuit <NUM>, the first processor <NUM>, the first memory <NUM>, the user command obtainer <NUM>, and a voice recognition engine <NUM>.

The operation performer <NUM> may for example include the display, the image obtainer, the image processor, the audio processor, and the like that performs substantial operations of the electronic apparatus <NUM>.

The first IR communicator circuit <NUM> obtains an infrared signal from the remote controller (not shown) of the electronic apparatus <NUM> to control the operation performer <NUM>. Further, the first IR communicator circuit intercepts the first IR signal emitted from the remote controller <NUM> of the external device <NUM>.

The first network communicator circuit <NUM> performs network communications with other external devices.

The first processor <NUM> performs control to operate general elements of the electronic apparatus <NUM>. The first processor <NUM> may load a control program (containing one or more instructions) to perform such control operations and may include at least one (CPU) to execute the loaded control program.

The first processor <NUM> may for example analyze the first IR signal of the remote controller <NUM> of the external device <NUM>, which is intercepted through the first IR communicator circuit <NUM>, and obtain a device profile showing the external device <NUM> through the analysis of the first IR signal. Here, the device profile may show that the external device <NUM> is "the air conditioner of the brand A" by way of example.

The first processor <NUM> identifies whether "the air conditioner of the brand A" has been registered as the control target (e.g. the virtual loT device). When "the air conditioner of the brand A" has not been registered as the control target and the electronic apparatus <NUM> is operating, the first processor <NUM> asks a user through the operation performer <NUM>, for example, the display whether the user wants to register "the air conditioner of the brand A" as the control target. When "the air conditioner of the brand A" has not been registered as the control target and the electronic apparatus <NUM> is not operating, the first processor <NUM> operates the operation performer <NUM>, for example, the display to ask a user whether the user wants to register "the air conditioner of the brand A" as the control target, or to keep a standby mode and display a control-target registration event for asking a user whether the user wants to register "the air conditioner of the brand A" as the control target when the user turns on the electronic apparatus <NUM>.

The first processor <NUM> registers the external device <NUM> (e.g. the air conditioner of the brand A) as the control target (e.g. the virtual loT device) based on the device profile when a user selects the registration of the control target with regard to the external device <NUM>.

The first memory <NUM> is configured to store data without limitations. The first memory <NUM> is accessed by the first processor <NUM>, and allows the first processor <NUM> to read, load, write, modify, delete, update, etc. the data. The data stored in the first memory <NUM> may for example include collected device profile data of the control target, infrared code data of products according to manufacturers, control target registration data, etc. The first memory <NUM> may include an operating system, various applications executable on the operating system, image data, appended data, etc. The first memory <NUM> includes a program (application) that performs a code analysis of the first IR signal, conversion into the second IR signal corresponding to the control command, etc..

The user command obtainer <NUM> obtains a user's input, for example, a user's voice command given in the form of a speech, and transmits the user's input to the first processor <NUM>. The user command obtainer <NUM> may be actualized in various forms in accordance with a user's input methods, for example, a menu button displayed on a display, a remote control signal obtainer configured to obtain a remote control signal of a user's input obtained from the remote controller, a touch screen provided on the display and obtaining a user's touch input, a camera configured to detect a user's gesture input, a microphone configured to recognize a user's voice input, etc..

When obtaining a user's voice command through the user command obtainer <NUM>, the first processor <NUM> transmits the voice command to the voice recognition engine <NUM>. Here, the voice command of the user may for example include a user's speech such as "set the temperature level of the air conditioner higher through the TV", "set the temperature level of the air conditioner lower through the TV", "set the wind level of the air conditioner stronger through the TV", "set the wind level of the air conditioner weaker through the TV", etc..

The voice recognition engine <NUM> recognizes a control command, for example, "the temperature level+ of the air conditioner through the TV", "the temperature level- of the air conditioner through the TV", "the wind level+ of the air conditioner through the TV", "the wind level- of the air conditioner through the TV", etc. by processing the voice command of the user, and transmits the recognized control command to the first processor <NUM>. In this way, the control command extracted from the voice command of the user contains a control medium, a control target, and command information.

The first processor <NUM> generates a second IR signal code for controlling the external device <NUM> (e.g. the air conditioner of the brand A) based on the control command, and emits a second IR signal through the first IR communicator circuit <NUM>. Here, the first processor <NUM> ignores the control command when the first processor <NUM> is the same as the control medium in a control command system.

The electronic apparatus <NUM> may make a voice command based on a speech or a remote control by registering a plurality of external devices other than one external device <NUM> (e.g., the air conditioner of the brand A) as the virtual control targets.

<FIG> is a block diagram of an electronic apparatus control system according to an embodiment. An electronic apparatus control system 1ʺʺ includes the electronic apparatus <NUM>, the control device <NUM>, and the external device <NUM>. The electronic apparatus <NUM> functions as a server in itself instead of the server <NUM>. Unlike the electronic apparatus control system of <FIG> that extracts the control command by obtaining a user's voice command in itself, the electronic apparatus control system 1ʺʺ obtains the control command extracted in the control device <NUM> through network communication. The configurations and operations of the electronic apparatus <NUM>, the control device <NUM> and the external device <NUM> are similar to those of <FIG>, and therefore descriptions thereof will be omitted for conciseness. However, as compared with the control device <NUM> in the electronic apparatus control system <NUM> of <FIG> that transmits the control command to the electronic apparatus <NUM> via the serve <NUM>, the control device <NUM> in the electronic apparatus control system 1ʺʺ of <FIG> directly transmits the control command to the electronic apparatus <NUM>.

<FIG> is a block diagram of an electronic apparatus control system according to an embodiment. The electronic apparatus control system 1ʺ‴ of <FIG> includes the electronic apparatus <NUM>, the control device <NUM>, the external device <NUM>, and the interactive server <NUM>. The interactive server <NUM> is provided between the electronic apparatus <NUM> and the control device <NUM> and extracts a control command by processing a user's voice command given in the form of a speech obtained through the control device <NUM>. In the electronic apparatus control system 1ʺ‴, the interactive server <NUM> performs functions of the server <NUM>. In the electronic apparatus control system 1ʺ‴ of <FIG>, the control device <NUM> obtains a user's voice command given in the form of a speech and then transmits the obtained voice command to the interactive server <NUM>.

The configurations and operations of the electronic apparatus <NUM>, the control device <NUM> and the external device <NUM> are similar to those of <FIG>, and thus descriptions thereof will be omitted for conciseness.

However, the electronic apparatus control system 1ʺ‴ of <FIG> is different from that of the embodiment shown in <FIG> in that the interactive server <NUM> performs the functions as the server <NUM>. In some embodiments, the interactive server <NUM> may perform only a function of recognizing the control command from a user's voice command, and the registration of the external device <NUM> as the virtual control target may be performed by the electronic apparatus <NUM>.

Below, a process of registering an external device through the electronic apparatus <NUM> and the server <NUM> in <FIG> will be described with reference to <FIG>, according to an embodiment.

At operation S10, the first IR communicator circuit <NUM> of the electronic apparatus <NUM> obtains the first IR signal from the remote controller <NUM> of the external device <NUM>. The operation of obtaining the first IR signal by the electronic apparatus <NUM> includes intercepting the first IR signal emitted while a user controls the external device <NUM>.

At operation S11, the first processor <NUM> of the electronic apparatus <NUM> obtains information about the external device <NUM> from the first IR signal. The first processor <NUM> may analyze a device profile of the external device based on the first IR signal. <FIG> illustrates a waveform showing an example of the first IR signal. As shown therein, the first IR signal may be a national electrical code (NEC). The first IR signal may include a leader code, a custom code, an inverted custom code, a data code, and an inverted data code. The custom code denotes a code for identifying a manufacturer, and the inverted custom code denotes a custom code for an error check. The data code denotes a code based on data for controlling a remote controller of an external device, and the inverted data code denotes a data code for an error check.

The first processor <NUM> of the electronic apparatus <NUM> identifies the manufacturer of the external device <NUM> based on the custom code of the first IR signal having the foregoing structure, and identifies the product type of the external device <NUM> based on the data code. In other words, a code value involved in the data code is varied depending on the product type of the external device <NUM>, and it is therefore possible to easily identify the product type of the external device <NUM> based on a templet where the code values of the data code are tabulated matching the product types of the external devices.

At operation S12, the first processor <NUM> of the electronic apparatus <NUM> transmits the obtained information of the external device to the server <NUM>.

At operation S13, the second processor <NUM> of the server <NUM> determines whether the external device has been registered as the control target, based on the information about the external device, e.g., brand and product names.

When the external device has already been registered as the control target (S13, YES), content of registration is fed back to the electronic apparatus <NUM> and the process is terminated. On the other hand, when the external device has not already been registered as the control target (S13, NO), a message of non-registration is fed back to the electronic apparatus <NUM> and operation S14 is performed.

At operation S14, it is determined whether to register the external device as a control target. When the first processor <NUM> of the electronic apparatus <NUM> obtains the non-registration message saying that the external device has not been registered, a registration user interface UI for asking a user whether to register the external device as the control target is displayed on the display. As shown in <FIG>, a display screen displays an audio system, a light, and a refrigerator, which have already been registered as control targets, and a registration UI for asking whether to register a newly detected "air conditioner of a brand A" as the control target. When a user does not want to register the external device as the control target on the registration UI (S14, NO), the process for the registration is terminated.

When a user wants to register "the air conditioner of the brand A" as the control target (S14, YES), a request is transmitted to the server <NUM> to register the external device a control target in operation S15. That is, the server <NUM> is requested to register "the air conditioner of the brand A".

At operation S16, the external device is registered as a control target. That is, the second processor <NUM> of the server <NUM> registers "the air conditioner of the brand A" as the virtual control target in response to the registration request of the electronic apparatus <NUM>.

In this case, the second processor <NUM> of the server <NUM> may register the electronic apparatus <NUM> for performing various functions of "the air conditioner of the brand A". In this case, when obtaining a control command of "set the temperature level of the air conditioner higher", the second processor <NUM> identifies the control command as the function of the electronic apparatus <NUM> and transmits the control command to the electronic apparatus <NUM>.

Meanwhile, the second processor <NUM> may register the electronic apparatus <NUM> as an intermediate medium for controlling "the air conditioner of the brand A". The second processor <NUM> registers "the air conditioner of the brand A" as the virtual loT device distinguished from the existing loT devices, by matching the electronic apparatus <NUM> capable of applying IR control to "the air conditioner of the brand A". In this case, when obtaining a control command of "set the temperature level of the air conditioner higher through the TV", the second processor <NUM> transmits the control command to the electronic apparatus <NUM> via the control medium, i.e. the electronic apparatus <NUM>.

Below, a process of registering an external device through the electronic apparatus of <FIG> will be described with reference to <FIG>, according to an embodiment.

At operation S20, the first IR communicator circuit <NUM> of the electronic apparatus <NUM> obtains the first IR signal from the remote controller <NUM> of the external device <NUM>.

At operation S21, the first processor <NUM> obtains information about the external device <NUM> from the first IR signal. That is, the first processor <NUM> may analyze a device profile of the external device based on the first IR signal.

The first processor <NUM> identifies the manufacturer of the external device <NUM> based on the custom code of the first IR signal having the foregoing structure described above, and identifies the product type of the external device <NUM> based on the data code. In other words, a code value of the data code is varied depending on the product types of the external device <NUM>, and therefore the product type of the external device <NUM> is easily identified based on a template where the code values of the data code are tabulated matching the product types of the external device.

At operation S22, the first processor <NUM> of the electronic apparatus <NUM> determines whether the external device has been registered as the control target. When it is identified that the external device has already been registered as the control target (S22, YES), the process for the registration is terminated.

When the external device has not been registered as the control target (S22, NO), it is determined whether to register the external device as a control target in operation S23. For example, a registration UI for asking whether to register the external device as the control target is displayed on the display. When it is determined not to register the external device as the control target (S23, NO), the process for the registration is terminated.

When it is determined to register the external device <NUM> as the control target (S23, YES), the external device is registered as a control target in operation S24. For example, the external device <NUM> (e.g. the air conditioner of the brand A) is registered as the control target, "the air conditioner of the brand A" is registered as the virtual control target.

Referring to <FIG>, a process of controlling an external device through the server and the electronic apparatus of <FIG> will be described, according to an embodiment.

At operation S30, the control device <NUM> obtains a voice command for controlling the external device. For example, the control device <NUM> obtains, for example, "set the temperature level of the air conditioner higher through the TV", with regard to the external device <NUM>.

At operation S31, the control device <NUM> extracts a control command from the voice command of the user.

At operation S32, the control device <NUM> transmits the extracted control command to the server.

At operation S33, the server <NUM> determines whether the external device <NUM> targeted for the control command has been registered as the control target. When the external device <NUM> has not been registered as the control target yet (S33, NO), the operation S14 of <FIG> is performed for the registration.

When the external device <NUM> has already been registered as the control target (S33, YES), the server <NUM> transmits the control command to the electronic apparatus <NUM> at operation S34. In some embodiments, the server <NUM> may transmit the second IR signal code instead of the control command.

At operation S35, the first processor <NUM> of the electronic apparatus <NUM> converts the control command obtained from the server into the second IR signal code corresponding to the command information of the external device <NUM>.

At operation S36, the first IR communicator circuit <NUM> of the electronic apparatus <NUM> emits the second IR signal corresponding to the second IR signal code (i.e. the command information).

Referring to <FIG>, a method of controlling the external device <NUM> through the server <NUM>, the interactive server <NUM>, and the electronic apparatus <NUM> of <FIG> will be described, according to an embodiment.

At operation S40, the electronic apparatus <NUM> obtains a voice command, for example, "set the temperature level of the air conditioner higher through the TV" for the external device <NUM>.

At operation S41, the electronic apparatus <NUM> transmits the voice command of the user, for example, "set the temperature level of the air conditioner higher through the TV" for the external device <NUM>, to the interactive server <NUM>.

At operation S42, the interactive server <NUM> recognizes the control command for controlling the external device from the voice command of the user. For example, the interactive server <NUM> may extract the control command from the voice command.

At operation S43, the interactive server <NUM> transmits the recognized control command to the server <NUM>.

At operation S44, the server <NUM> determines whether the external device <NUM> targeted for the control command has been registered as the control target.

When it is determined that the external device <NUM> has been registered as the control target (S44, YES), the server <NUM> transmits the control command to the electronic apparatus <NUM> at operation S45. The server <NUM> may transmit the second IR signal code instead of the control command as necessary.

At operation S46, the first processor <NUM> of the electronic apparatus <NUM> converts the control command obtained from the server into the second IR signal code corresponding to the command information for the external device <NUM>.

At operation S47, the first IR communicator circuit <NUM> of the electronic apparatus <NUM> emits the second IR signal corresponding to the second IR signal code.

When it is determined that the external device <NUM> has not been registered as the control target yet (S44, NO), the server <NUM> transmits the "fail return message", which states that the external device has not been registered yet, to the interactive server <NUM> in operation S48.

At operation S49, when the interactive server <NUM> obtains the "fail return message" from the server <NUM>, the recognized control command for the external device is transmitted to the electronic apparatus <NUM>.

At operation S50, the first processor <NUM> of the electronic apparatus <NUM> converts the control command obtained from the interactive server <NUM> to the second IR signal code corresponding to the command information for the external device <NUM>.

At operation S51, the first IR communicator circuit <NUM> of the electronic apparatus <NUM> emits the second IR signal corresponding to the second IR signal code.

Referring to <FIG>, a method of controlling an external device through the electronic apparatus of <FIG> will be described, according to an embodiment.

At operation S25, the electronic apparatus <NUM> obtains a voice command and then recognizes a control command. For example, the electronic apparatus <NUM> obtains a voice command such as "set the temperature level of the air conditioner higher through the TV" for the external device <NUM>, and then extracts the control command for the external device from the voice command of the user.

At operation S26, the first processor <NUM> of the electronic apparatus <NUM> converts the recognized control command into the second IR signal code corresponding to the command information for the external device <NUM>.

At operation S27, the first IR communicator circuit <NUM> of the electronic apparatus emits the second IR signal corresponding to the second IR signal code.

Claim 1:
An electronic apparatus (<NUM>) comprising:
an operation performer (<NUM>);
network communicator circuitry (<NUM>) configured to perform network communication with a server (<NUM>);
infrared communicator circuitry (<NUM>); and
a processor (<NUM>), configured to:
control the infrared communicator circuitry (<NUM>) to always operate regardless of whether the electronic device is operating,
obtain identification information of an external device (<NUM>) from a first infrared signal received through the infrared communicator circuitry (<NUM>) by intercepting the first infrared signal which is transmitted from a remote controller (<NUM>) to the external device (<NUM>),
identify whether the external device (<NUM>) is registered as a control target based on the identification information of the external device (<NUM>) obtained from the intercepted first infrared signal,
based on identifying that the external device (<NUM>) is not registered as the control target, control the network communicator circuitry (<NUM>) to transmit the obtained identification information of the external device (<NUM>) to the server (<NUM>) to register the external device (<NUM>) as the control target,
obtain a control command for controlling the external device (<NUM>) from the server (<NUM>), and
control the infrared communicator circuitry (<NUM>) to transmit a second infrared signal, which contains command information based on the obtained control command, to the external device (<NUM>) to make the external device (<NUM>) perform an operation corresponding to the obtained control command.