KR101674515B1 - System and method of providing embedded software development environment for IoT device - Google Patents

System and method of providing embedded software development environment for IoT device Download PDF

Info

Publication number
KR101674515B1
KR101674515B1 KR1020150009350A KR20150009350A KR101674515B1 KR 101674515 B1 KR101674515 B1 KR 101674515B1 KR 1020150009350 A KR1020150009350 A KR 1020150009350A KR 20150009350 A KR20150009350 A KR 20150009350A KR 101674515 B1 KR101674515 B1 KR 101674515B1
Authority
KR
South Korea
Prior art keywords
development environment
embedded software
iot
iot module
integrated development
Prior art date
Application number
KR1020150009350A
Other languages
Korean (ko)
Other versions
KR20160089747A (en
Inventor
권진만
최창현
Original Assignee
주식회사 크레스프리
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 크레스프리 filed Critical 주식회사 크레스프리
Priority to KR1020150009350A priority Critical patent/KR101674515B1/en
Publication of KR20160089747A publication Critical patent/KR20160089747A/en
Application granted granted Critical
Publication of KR101674515B1 publication Critical patent/KR101674515B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/37Compiler construction; Parser generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • H04L61/2007
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Abstract

The present invention relates to an embedded software development environment system of an IoT device and an embedded software development environment providing method using the same, wherein an IP address for network connection is provided and an integrated development environment (IDE) UI (User Interface) An IoT module for providing the integrated development environment UI to a user terminal connected with the IP address to provide a development environment for embedded software of the IoT device; And a relay server for storing the IP address assigned to the IoT module and providing the IP address information to the user terminal, wherein the IoT module is mounted on the IoT device, and the IoT module is connected to the IoT module via the IoT module, And an embedded software development environment using the embedded software development environment system for performing a specific function in the IoT device, wherein the specific function of the device is performed. According to the present invention, Even the novice developers who are not familiar with the physical interface structure of the system and the various OS environments can easily provide an integrated development environment capable of developing embedded software.

Figure R1020150009350

Description

[0001] The present invention relates to an embedded software development environment system for an IoT device and a method for providing an embedded software development environment using the same,

The present invention relates to an embedded software development environment system for an IoT device and a method for providing an embedded software development environment using the same. More particularly, the present invention relates to a method for providing an embedded software development environment using an I / The present invention relates to a method for providing an integrated development environment UI for a development environment and providing a development environment of the embedded software easily and effectively.

The term "embedded system", which is the basic technology of Ubiquitous network, has been used only in the past communication and control devices according to the rapid diffusion of high-speed internet and wireless communication and the global trend of ubiquitous network. Was given.

An embedded system refers to an electronic system that is embedded as part of an overall apparatus including electronic hardware and a mechanical part and performs a specific function. The embedded system is equipped with a processor core such as a microcontroller or a digital signal processor (DSP) , An operating system (Windows CE, or Linux kernel) is included in the system to allow the application to run certain functions on the operating system.

Such embedded systems have scalability or reprogrammability, and are used in many devices used in daily life today. They are used in communication systems, control devices, mobile phones, digital TVs, set-top boxes, home networks, smart cards, There are so many places that embedded software can not fit in, and their functions vary from simple control to complex protocol stacks.

In particular, with the development of information and communication technology (ICT), the majority of devices in the vicinity are changing to be interconnected through communication networks. Through the rapid development of ICT, It is a hyperconnected society in which people connect with each other through the Internet, that is, objects and people are connected by a network. This connects anytime to anytime and anyplace. (Internet of Things), a new connectivity ecosystem that adds a new ecosystem to the IoT device. By building embedded software on IoT devices, IoT devices can be more easily and effectively developed and improved.

In such a situation, the development environment of embedded software is much more difficult than the development environment of general software, so it is impossible to develop competitively without effective development tools, and building an easier and more effective embedded software development environment is becoming very important.

Referring to a conceptual diagram of a development environment of the conventional embedded software shown in FIG. 1, a developer develops software on a terminal 10, which is a host system, and then connects the host system 10 with a physical connection cable such as JTAG, The developed software connected to the target embedded system 30 is downloaded to the target embedded system 30 and the software developed on the target embedded system 30 is executed to monitor the execution status.

 In the development environment shown in FIG. 1, the software is developed on the host system 10 through the development program, so that it is not easy to set and install the software in the actual target embedded system 30, And the target embedded system 30, there is a problem that novice developers who are not familiar with embedded and various OS environments are difficult to access.

A method for providing an integrated development environment (IDE) in the form of a web server, which further improves the conventional development environment as shown in FIG. 1, has been proposed. Referring to FIG. 2, an integrated development environment (IDE) ) In the form of a Web server, the developer can access the web server 50 through a web browser installed in the terminal 10 and develop embedded software in an integrated development environment (IDE). By providing an integrated development environment in the form of a web server, a developer can access the web server 50 anytime and anywhere without any time and space constraints, and can easily develop an embedded software using an integrated development environment (IDE) It is possible to download the embedded software from the web server 50 onto the target embedded system 30 and monitor its execution status.

However, in the case of such a conventional web server type integrated development environment (IDE) method, when a plurality of developers simultaneously access a web server and build a source code under development, load on the web server is rapidly increased, It is difficult to perform the operation and it is necessary to secure enough server resources to solve the problem.

In addition, software, which is an important intellectual asset, is likely to be exposed to a malicious third party due to existence of a web server accessible to a large number of users.

In addition, since the development of the embedded software itself is a cross development environment that is performed by a web server outside the target embedded system, the executable file of the embedded software is downloaded to the target embedded system and the execution state thereof is monitored. It is troublesome to download and monitor the supplemented software to the target embedded system.

SUMMARY OF THE INVENTION The present invention has been made to solve the problems of the prior art as described above, and it is intended to solve a problem that a novice developer who is unfamiliar with the embedded and various OS environments is difficult to access due to the use of a physical interface in the development of embedded software.

In particular, when using an integrated development environment (IDE) system in the form of a conventional web server, when a plurality of developers concurrently access a web server to build a source code under development, load on the web server is rapidly increased, In order to solve the problem, it is necessary to secure enough server resources to solve the problem that the operating cost increases.

In addition, the software, which is an important intellectual asset, is likely to be exposed to a malicious third party due to existence of a web server accessible to a large number of users, and a problem that a large damage may occur when a web server is hacked is solved .

In order to supplement the problematic part in developing the embedded software to develop the embedded software and monitor the execution status in the target embedded system, in the cross development environment, the host executes the coding and the series of the build process, , And then downloading the software to the target embedded system and performing a series of build operations on the web server in the web server development environment, and then downloading the supplementary software to the target embedded system and executing the program .

In order to achieve the above object, an embodiment of the embedded software development environment system of the IoT device according to the present invention is provided with an IP address for network connection and an integrated development environment (UI) An IoT module for providing the integrated development environment UI to a user terminal connected to the IP address to provide a development environment for embedded software of the IoT device; And a relay server for storing the IP address assigned to the IoT module and providing the IP address information to the user terminal, wherein the IoT module is mounted on the IoT device, and the IoT module is connected to the IoT module via the IoT module, And a specific function of the device is performed.

Preferably, the IoT module includes: a communication unit for requesting an IP address assignment and accessing a network with an assigned IP address; A storage unit for storing the integrated development environment UI and storing the source code of the embedded software produced using the integrated development environment UI and the compiled executable file; A central processing unit for operating the integrated development environment UI to compile the entire source code of the embedded software produced by the user terminal, to run the compiled executable file or to interpret and execute the source code block by block; And an interface connected to the IoT device, for transmitting a control signal for performing a specific function of the IoT device according to driving of the executable file.

More preferably, the IoT module is provided with individual identification information, and the relay server may store the IP address corresponding to the individual identification information of the IoT module.

Further, the network includes an Internet network, the IoT module provides the integrated development environment UI in the form of a web server, and the user terminal is provided with a web browser supporting the use of the integrated development environment UI of the IoT module Lt; / RTI >

Further, the integrated development environment UI includes an editor for editing source code of the embedded software; A compiler for compiling the source code; And a linker that generates an executable file for the compiled source code.

Or the integrated development environment UI may include an editor for editing the source code of the embedded software; And a single graphic user interface (GUI) incorporating an interpreter for interpreting and executing the source code on a block-by-block basis.

Optionally, the single graphical user interface (GUI) further comprises: a debugger for debugging the embedded software; And a builder that performs setup, build, and root file installation functions of the embedded software.

Preferably, the IoT module may further include an authentication unit for determining whether the user is an authorized user and determining a connection permission.

The relay server includes an authentication unit for determining whether the user is an authorized user, and may provide the IP address information to the user terminal according to the user authentication result.

Also, an embodiment of a method for providing an embedded software development environment using an embedded software development environment system of an IoT device according to the present invention is a method for providing an embedded software development environment using an IoT device in which a relay server receives IP address information from an IoT module Information retention phase; An IP address information providing step of the relay server requesting IP address information for the IoT module from the user terminal and providing IP address information for the IoT module to the user terminal; And providing an integrated development environment UI for providing an integrated development environment UI for a development environment of embedded software to the user terminal connected to the IP address by the IoT module.

Preferably, in the IP information retention step, the relay server receives identification information and IP address information from the IoT module and stores the IP address information in association with the identification information, The relay server can extract the IP address corresponding to the identification information of the IoT module transmitted from the user terminal and provide the extracted IP address to the user terminal.

Further, the integrated development environment UI providing step may include: an editor for editing the source code of the embedded software in the user terminal; Compilation of source code compiler; And a linker for generating an executable file for the compiled source code, as a single graphic user interface (GUI).

Or providing the integrated development environment UI may include: an editor for editing the source code of the embedded software in the user terminal; And an interpreter integrated single graphic user interface (GUI) for interpreting and executing the source code block by block.

And further performing a specific function of the IoT device according to the execution of the embedded software in the IoT module mounted on the IoT device.

Preferably, in the step of providing the integrated development environment UI, the IoT module performs authentication for the user terminal connected to the IP address, and provides an integrated development environment UI for a development environment of the embedded software according to the result have.

Alternatively, in the IP address information providing step, the user may be authenticated when the IP address information for the IoT module is requested from the user terminal, and the IP address information for the IoT module may be provided to the user terminal according to the result .

According to the present invention, it is possible for a novice developer who is not familiar with the physical interface structure of the system for developing embedded software and various OS environments to easily develop embedded software. In particular, the integrated software can be developed on the IoT module mounted on the IoT device Environment, it becomes a form that development works directly on the target system differently from the existing cross development environment. Therefore, when an integrated development environment is provided by a single web server, a plurality of developers build source code at the same time, It is possible to solve the problem that it becomes difficult to perform proper development work.

Further, in the case of a single web server type that provides an integrated development environment in general, there is a possibility that the software, which is an important intellectual property, may be maliciously leaked due to high possibility of being exposed to hacking etc. However, in the present invention, Is less likely to be exposed to hacking or the like because it is assigned to each IoT module. Further, security can be further enhanced by performing an authentication process for a user terminal connected to the relay server or each IoT module.

In order to supplement the problematic part in developing the embedded software to develop the embedded software and monitor the execution status in the target embedded system, in the cross development environment, the host executes the coding and the series of the build process, And then download it to the target embedded system. In the web server development environment, there is a problem of downloading and running the supplementary software to the target embedded system after coding and series of the build work on the web server. However, IoT module providing integrated development environment is monitored in the condition that it is mounted on IoT device which is the target system, and it is possible to correct the integrated development environment of IoT module immediately when a problem is detected, and to perform a series of build work and supplement. .

FIG. 1 is a conceptual diagram of a development environment of conventional embedded software,
Figure 2 shows a configuration diagram that provides an integrated development environment (IDE) in the form of a conventional web server,
3 shows a block diagram of an embodiment of an embedded software development environment system of the IoT device according to the present invention,
Figure 4 shows a block diagram of an embodiment of an IoT module in an embedded software development environment system of an IoT device according to the present invention,
5 shows a block diagram of a single graphical user interface (GUI) provided in an embedded software development environment system of an IoT device according to the present invention,
FIG. 6 shows a flowchart of an embodiment of a method for providing an embedded software development environment of an IoT device according to the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings.

First, the terminology used in the present application is used only to describe a specific embodiment, and is not intended to limit the present invention, and the singular expressions may include plural expressions unless the context clearly indicates otherwise. Also, in this application, the terms "comprise", "having", and the like are intended to specify that there are stated features, integers, steps, operations, elements, parts or combinations thereof, But do not preclude the presence or addition of features, numbers, steps, operations, components, parts, or combinations thereof.

In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

The present invention provides an Integrated Development Environment (UI) UI (User Interface) for developing embedded software that is driven by an IoT device. The IoT device includes an integrated IoT module It provides a development environment (IDE) to provide an easy-to-use embedded software development environment for the general public who are unfamiliar with the physical environment of a novice developer or system.

FIG. 3 shows a block diagram of an embodiment of an embedded software development environment system of the IoT device according to the present invention.

The embedded software development environment system according to the present invention may be configured to include an IoT module 400, an IoT device 500, a relay server 300, a network 200, and a user terminal 100.

The IoT device 500 is a smart device that supports IoT (Internet of Things), which is a object space connection network that forms an intelligent relationship such as sensing, networking, and information processing in cooperation with various devices through various networks without human intervention For example, a home appliance in a general household may include a home appliance that performs a function in connection with a network, and a factory or an office may include a production appliance, an environment control appliance, or an office appliance that performs a function in connection with a network, Portable smart devices and wearable devices that are not conscious of human beings and used in daily life can be included.

The IoT module 400 may be installed in the IoT device 500 or may be connected to the communication port of the IoT device 500 and may be connected to the IoT device 500 in accordance with various software operations mounted on the IoT module 400. [ The user terminal 100 is connected to the IoT device 500 via the IoT device 500. The IoT device 500 can be connected to the network 200 by receiving an IP address and having a communication function, The IoT device 500 may be a specialized means for providing only the integrated development environment UI so that the embedded software can be directly developed in the IoT device 500 through the module 400, Or may be means for setting various defaults for network connection of IoT device 500 or supporting various other network connection functions. Furthermore, the IoT module 400 may be connected to existing general devices that are not provided with a communication function so that general devices can be applied to the Internet IoT environment, thereby making it possible to organize existing general devices into the IoT device 500 have.

Preferably, the IoT module 400 may determine whether to permit access by determining whether the user is an authorized user.

The network 500 may include various network networks that can be used depending on situations such as wired or wireless networks. The network 500 may be limited to a network configured by connecting its own devices in a limited space, (WAN), a local area network (LAN), a personal area network (PAN), and the like, and these network networks are configured in various ways depending on the situation such as Wi-Fi, Zigbee or Bluetooth Network.

The relay server 300 is connected to the network 200 and has IP address information assigned to the IoT module 400. When the IP address information of the specific IoT module 400 is requested from the user terminal 100 To the user terminal 100, the IP address information given to the IoT module 400. [ Preferably, the unique identification information is assigned to each IoT module 400, and the relay server 300 may store unique identification information of the corresponding IoT module 400 in an IP address. In such a case, the IP address can be more efficiently searched with unique identification information of the IoT module 400. [

Preferably, the relay server 300 includes an authentication unit for determining whether the user is an authorized user, and may provide the IP address information to the user terminal according to a user authentication result.

The user terminal 100 is basically a terminal having a communication function connectable to the network 200, and may be a fixed type device such as a PC or a server, or may be a portable type device such as a portable notebook, a PDA, a smart phone, a tablet, have. In particular, since the integrated development environment (IED) can be provided in the form of a web server, the user can develop embedded software anytime and anywhere using the portable device without time and space restrictions.

FIG. 4 is a block diagram of an I / O module in an embedded software development environment system of an IoT device according to an embodiment of the present invention. Referring to FIG. Fig.

The IoT module 400 basically includes a communication unit 410, a storage unit 420, a central processing unit 430 and an interface 440. Various functional units are additionally provided according to the functions supporting the IoT device 500 Lt; / RTI >

The communication unit 410 may request the IP address assignment and access the network with the assigned IP address. The configuration in which the IP address is given and the connection is made to the network 200 may be configured according to various known communication methods. For example, An IP address may be assigned from an access point (AP) and assigned to the network 200 with an assigned IP address. When power is applied to the IOT module 400, the communication unit 410 requests the access point AP to assign an IP address and receives an IP address.

The communication unit 410 transmits the IP address of the IoT module 400 to the relay server 300. Preferably, unique identification information such as a serial number is assigned to each IoT module 400, To the relay server 300, identification information of the IoT module 400 together with the provided IP address information.

The storage unit 420 stores the integrated development environment UI, stores the source code and the executable file of the embedded software produced using the integrated development environment UI, and stores a default setting value for the IoT device 500 And various function execution files may be stored. For example, when the integrated development environment UI is operated in a compilation mode, the source code and compiled executable files may be stored in the storage 420. When the integrated development environment UI is operated in an interpreter mode, Only the source code may be stored in the storage unit 420. The compilation method or the interpreter method may be selected according to the programming language that the user uses to develop the embedded software.

The central processing unit 430 controls each configuration of the IOT module 400 as a whole and supports the embedded software development of the user by operating the integrated development environment UI. At this time, according to the programming language used by the user, The environment UI may be provided or the integrated development environment UI may be provided in an interpreter manner. If the integrated development environment UI is provided in a compilation manner, the central processing unit 430 can compile the entire source code and run the compiled executable file. If the integrated development environment UI is provided in an interpreter manner, The processing unit 430 may analyze the source code in a sequential block unit and execute the analyzed part.

4, the central processing unit 430 is installed on the IoT module 400. However, depending on the situation, the IoT module 400 may not include a central processing unit, A central processing unit built in the IoT device 500 may be used in a state in which the IoT device 500 is mounted.

Further, the communication unit 410 of the IoT module 400 may be connected to the IoT device 500 to use a central processing unit built in the IoT device 500 or connect to another hardware resource.

The interface 440 is a data connection line for transmitting and receiving data to and from the IoT device 500. The interface 440 transmits a control signal for performing a specific function of the IoT device 500 according to driving of an executable file on the IoT module 400, Therefore, the execution state information of the IoT device 500 according to the execution file driving may be received from the IoT device 500. [

4, the IoT module 400 may be provided with an authentication unit for determining whether the user is an authorized user and determining a connection permission. Here, the determination of whether or not the user is authorized can be implemented by inputting a personal code or inputting a password, and in addition, various methods related to authentication can be applied.

In addition, when the IOT module 400 is connected to the user terminal 100 through the Internet network, the IOT module 400 can provide the integrated development environment UI in the form of a web server. The integrated development environment UI operated by the IoT module 400 can be used through the browser.

Preferably, the IoT module 400 may also provide an integrated development environment UI in a single graphical user interface (GUI). For example, a single graphical user interface (GUI) provided in the embedded software development environment system of the IoT device according to the present invention, 5A is an example of a GUI supporting an integrated development environment of a compilation method, and an integrated development environment (IDE) GUI 450 is a source code of an embedded software An editor 451 for editing, a compiler 452 for compiling the source code, and a linker 453 for generating an executable file for the compiled source code. It can be provided as a GUI. If necessary, the integrated development environment (IDE) GUI 450 may further include a debugger for debugging the embedded software, a builder for performing setup, build, and root file installation functions of the embedded software, and the like have.

5B is an example of a GUI supporting an interpreter integrated development environment. The integrated development environment (IDE) GUI 460 includes an editor 461 for editing the source code of the embedded software, And an interpreter 462 for interpreting the source code in a sequential block unit and executing the interpreted part, and may be provided as an integrated GUI, and if necessary, an integrated development environment (IDE) GUI 460 ) May include a debugger for debugging the embedded software, a builder for setting up the embedded software, building and installing the root file, and the like.

In addition, a variety of tools can be integrated to make development environment easier and more efficient.

Through the system configuration according to the present invention, the user terminal 100 receives the IP address information of the specific IoT module 400 through the relay server 300 and transmits the IP address information to the corresponding IoT module 400 on the network 200 And the IOT module 400 operates the integrated integrated development environment (IED) UI to provide an embedded software development environment to the user terminal 100 connected to the IP address of the IOT module 400.

In addition, in the present invention, a method of providing an embedded software development environment of an IoT device using the embedded software development environment system of the IoT device according to the present invention is described. A flow diagram of an embodiment of a method for providing an embedded software development environment is shown.

6, the IoT module 400 is assigned an IP address to be organized in the network. When using a communication method such as Wi-Fi, the IoT module 400 transmits an IP address And receives an IP address from the access point (AP).

Then, the IoT module 400 transmits the received IP address information to the relay server 300 (S10), and the transmission of the IP address information can be performed through the network 200 network. Preferably, the IOT module 400 may transmit IP address information given to the relay server 300 and its own unique identification information together.

The relay server 300 stores the IP address information transmitted from the IoT module 400 in step S50. When the unique identification information is transmitted from the IoT module 400, the relay server 300 matches and stores the IP address information in the unique identification information . For example, when there are a plurality of IoT modules 400, the relay server 300 can identify the IP address information for the specific IoT module 400 by matching and storing the IP address information in the unique identification information.

When the user wants to use the integrated development environment on the IOT module 400 while the relay server 300 holds the IP address information of the IoT module 400, To the IoT module 400 (S110). At this time, the user can confirm the identification information of the IoT module 400 to be used and request the relay server 300 for IP address information corresponding to the identification information.

The relay server 300 extracts the IP address information given to the IoT module 400 in accordance with the IP address information request for the IoT module 400 from the user terminal 100 in step S130 and transmits the extracted IP address information to the user terminal 100 (S150). Here, the relay server 300 can search for and extract IP address information matched with the corresponding identification information among a plurality of IP address information stored based on the identification information of the IoT module 400 transmitted from the user terminal 100. [

6, the relay server 300 may perform the user authentication process. For example, before providing the IP address information assigned to the corresponding IoT module 400 to the user terminal 100, Authentication can be performed. In the authentication process, a process of inputting a password may be performed, or a process of inputting a personal identification code may be performed. In addition, a personal authentication signature may be confirmed using an authorized certificate or the like .

When the user obtains IP address information for the IoT module 400, the user can connect to the IoT module 400 by connecting the user terminal 100 to the IP address on the network 200 (S210).

Then, the user develops embedded software (S220) using the operation of the integrated development environment (IED) UI (S230) in the IOT module 400 as the user terminal 100 (S220) And a detailed description thereof will be omitted because it has been described with reference to the embodiment.

Preferably, when the user terminal 100 accesses the IoT module 400 through the Internet network 200, the IoT module 400 may provide an integrated development environment in the form of a web server, 100, a web server type integrated development environment operated by the IOT module 400 can be used.

Although not shown in FIG. 6, when the user terminal 100 tries to connect to the IP address in order to enhance security, the IoT module 400 may perform an authentication process with respect to the user terminal 100 . The authentication process may simply input a predetermined password or input an identification code assigned to each individual.

As a development process of embedded software, a series of programming and execution processes such as source code editing, compilation or interpreter interpretation, execution, and debugging of source code are generally known and not a main feature of the present invention. It is omitted.

When the executable file of the embedded software is generated, the executable file is executed on the IoT module 400. At this time, the IoT module 400 may be installed in the IoT device 500 or outside the IoT device 500 as a communication port The control signal is transmitted from the IoT module 400 to the IoT device 500 in accordance with the operation of the executable file of the embedded software on the IoT module 400 in operation S240 And the specific function of the IoT device 500 is performed (S260).

In addition, the user monitors the performance of the specific function of the IoT device 500, and can immediately modify or supplement the embedded software through the integrated development environment on the IoT module 400 to the user terminal 100 according to the result.

As described above, according to the present invention, even the novice developers who are not familiar with the physical interface structure of the system for developing embedded software and various OS environments can easily develop embedded software, and especially, the IoT module mounted on the IoT device Unlike existing cross development and web server development environment, it provides the integrated development environment so that the development work is performed directly on the target system. Therefore, the interface configuration requiring the expert knowledge between the target embedded system and the host PC due to the cross development is eliminated In the case of development in a web server integrated development environment, the cost of high-performance server resources for a large number of developers can be reduced.

Further, in the case of a single web server type that provides an integrated development environment in general, there is a possibility that the software, which is an important intellectual property, may be maliciously leaked due to high possibility of being exposed to hacking etc. However, in the present invention, Is less likely to be exposed to hacking or the like because it is assigned to each IoT module. Further, security can be further enhanced by performing an authentication process for a user terminal connected to the relay server or each IoT module.

In order to supplement the problematic part in developing the embedded software to develop the embedded software and monitor the execution status in the target embedded system, in the cross development environment, the host executes the coding and the series of the build process, And then download it to the target embedded system. In the web server development environment, there is a problem of downloading and running the supplementary software to the target embedded system after coding and series of the build work on the web server. However, IoT module providing integrated development environment is monitored in the condition that it is mounted on IoT device which is the target system, and it is possible to correct the integrated development environment of IoT module immediately when a problem is detected, and to perform a series of build work and supplement. .

The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments of the present invention are not intended to limit the scope of the present invention but to limit the scope of the present invention. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents thereof should be construed as being included in the scope of the present invention.

10, 100: user terminal,
30: Target system, 50: Web server,
200: network, 300: relay server,
400: IoT module,
410: communication unit, 420: storage unit,
440: central processing unit, 440: interface,
500: IoT device.

Claims (16)

An integrated development environment (UI) UI (User Interface) is mounted, an integrated development environment UI is provided to a user terminal connected to the IoT device and connected to the IP address And provides execution status information on a specific function execution of the IoT device by executing the source code of the embedded software developed through the integrated development environment UI or the compiled executable file on the IoT device, An IoT module that stores embedded software developed on the IoT device and executes the embedded software to support a specific function of the IoT device; And
And a relay server for storing the IP address given to the IoT module and providing the IP address information to the user terminal.
The method according to claim 1,
The IoT module includes:
A communication unit for requesting an IP address assignment and accessing a network with an assigned IP address;
A storage unit for storing the integrated development environment UI and storing the source code of the embedded software produced using the integrated development environment UI and the compiled executable file;
A central processing unit for operating the integrated development environment UI to compile the entire source code of the embedded software produced by the user terminal, to run the compiled executable file or to interpret and execute the source code block by block; And
And an interface connected to the IoT device and transmitting a control signal for performing a specific function of the IoT device according to driving of the executable file.
The method according to claim 1,
The IoT module is given individual identification information,
Wherein the relay server stores the IP address in association with the individual identification information of the IoT module.
The method according to claim 1,
The network includes an Internet network,
The IoT module provides the integrated development environment UI in the form of a web server,
Wherein the user terminal is equipped with a web browser supporting the use of the integrated development environment UI of the IoT module.
The method according to claim 1,
The integrated development environment UI includes:
Editor for editing the source code of the embedded software;
A compiler for compiling the source code; And
And a single graphical user interface (GUI) incorporating a linker for generating an executable file for the compiled source code.
The method according to claim 1,
The integrated development environment UI includes:
Editor for editing the source code of the embedded software; And
And a single graphic user interface (GUI) incorporating an interpreter for interpreting and executing the source code on a block-by-block basis.
The method according to claim 5 or 6,
The single graphical user interface (GUI)
A debugger for debugging the embedded software; And
Further comprising: a builder configured to set up, build, and install a root file of the embedded software.
3. The method of claim 2,
The IoT module includes:
Further comprising an authentication unit for determining whether the user is an authorized user and determining a connection permission.
The method according to claim 1,
The relay server includes:
And an authentication unit for determining whether the user is an authorized user,
And provides the IP address information to the user terminal according to the user authentication result.
9. An embedded software development environment system as claimed in any one of claims 1 to 6, 8 or 9,
An IP information holding step of the relay server receiving and storing IP address information from the IoT module mounted on or mounted in the IoT device;
An IP address information providing step of the relay server requesting IP address information for the IoT module from the user terminal and providing IP address information for the IoT module to the user terminal;
Providing an integrated development environment UI for a development environment of embedded software in the user terminal connected to the IP address by the IoT module, and outputting source code or compiled executable file of the embedded software developed through the integrated development environment UI to the IoT Providing an integrated development environment UI that executes execution on a device and provides execution status information on performance of a specific function of the IoT device; And
Wherein the IoT module stores embedded software developed on the IoT device through the integrated development environment UI and controls execution of a specific function of the IoT device by executing the embedded software Providing an environment.
11. The method of claim 10,
The IP information holding step includes:
Wherein the relay server receives identification information and IP address information from the IoT module and stores the IP address information in association with the identification information,
The IP address information providing step may include:
Wherein the relay server extracts an IP address corresponding to the identification information of the IoT module transmitted from the user terminal and provides the extracted IP address to the user terminal.
11. The method of claim 10,
The integrated development environment UI providing step may include:
An editor for editing the source code of the embedded software in the user terminal;
Compilation of source code compiler; And
And providing a single graphical user interface (GUI) incorporating a linker for generating an executable file for the compiled source code.
11. The method of claim 10,
The integrated development environment UI providing step may include:
An editor for editing the source code of the embedded software in the user terminal; And
And providing a single graphic user interface (GUI) in which an interpreter for interpreting and executing the source code on a block-by-block basis is integrated.
delete 11. The method of claim 10,
The integrated development environment UI providing step may include:
Wherein the IOT module authenticates the user terminal connected to the IP address and provides an integrated development environment UI for a development environment of the embedded software according to a result of the authentication.
11. The method of claim 10,
The IP address information providing step may include:
Wherein the user terminal authenticates the user when the IP address information for the IoT module is requested, and provides the IP address information for the IoT module to the user terminal according to the authentication result.
KR1020150009350A 2015-01-20 2015-01-20 System and method of providing embedded software development environment for IoT device KR101674515B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150009350A KR101674515B1 (en) 2015-01-20 2015-01-20 System and method of providing embedded software development environment for IoT device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150009350A KR101674515B1 (en) 2015-01-20 2015-01-20 System and method of providing embedded software development environment for IoT device

Publications (2)

Publication Number Publication Date
KR20160089747A KR20160089747A (en) 2016-07-28
KR101674515B1 true KR101674515B1 (en) 2016-11-09

Family

ID=56681673

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150009350A KR101674515B1 (en) 2015-01-20 2015-01-20 System and method of providing embedded software development environment for IoT device

Country Status (1)

Country Link
KR (1) KR101674515B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101993858B1 (en) 2018-10-05 2019-06-27 주식회사 엔터핀 Program development system and development method using it
KR20190095574A (en) * 2018-01-22 2019-08-16 컴즈 주식회사 A RELIABILITY TEST SYSTEM OF IoT DEVICE
US11042398B2 (en) 2018-07-09 2021-06-22 Samsung Electronics Co., Ltd. System and method for guest operating system using containers

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101972817B1 (en) * 2017-06-01 2019-08-28 주식회사 유씨드 Apparatus and method for realtime program development of device
CN109521913B (en) * 2017-09-18 2021-03-12 西安富立叶微电子有限责任公司 Enterprise-level user terminal operating system
KR102095863B1 (en) * 2018-10-31 2020-04-02 (주)아이엠티 Real-time simulation system offering general api, gui based integrated-development-environment and method thereof, and method that can record computer program for method thereof
KR102302302B1 (en) * 2018-12-24 2021-09-15 한국전자기술연구원 Ultra-Small Disposable IoT Service Infrastructure
KR102214060B1 (en) * 2019-08-20 2021-02-09 나모웹비즈주식회사 Integrated development cloud server and method for providing integrated development environment based on cloud to program software for subminiature iot device that support interwork with iot service infrastructure
CN111046021B (en) * 2019-11-30 2023-11-10 许昌许继软件技术有限公司 Internet of things type distribution transformer terminal application development platform
KR102451255B1 (en) * 2020-10-30 2022-10-07 나모웹비즈주식회사 Library management method for software development for subminiature iot device and integrated development cloud server

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100403195B1 (en) * 2001-06-27 2003-10-23 (주)바이탈즈시스템 In circuit emulator based on the web, development system and method based on the web of target embedded system using it
KR20090076700A (en) * 2008-01-09 2009-07-13 주식회사 대우일렉트로닉스 System on chip for providing development environment for embedded system
KR101392868B1 (en) * 2012-07-11 2014-05-09 전자부품연구원 Method for Providing Internet of Things Service

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190095574A (en) * 2018-01-22 2019-08-16 컴즈 주식회사 A RELIABILITY TEST SYSTEM OF IoT DEVICE
KR102456267B1 (en) 2018-01-22 2022-10-20 컴즈 주식회사 A RELIABILITY TEST SYSTEM OF IoT DEVICE
US11042398B2 (en) 2018-07-09 2021-06-22 Samsung Electronics Co., Ltd. System and method for guest operating system using containers
KR101993858B1 (en) 2018-10-05 2019-06-27 주식회사 엔터핀 Program development system and development method using it

Also Published As

Publication number Publication date
KR20160089747A (en) 2016-07-28

Similar Documents

Publication Publication Date Title
KR101674515B1 (en) System and method of providing embedded software development environment for IoT device
US9967343B2 (en) Method for providing internet of things service
EP3410759B1 (en) Method and access point for accessing network by internet-of-things device
KR101571880B1 (en) Virtualized electronic apparatus virtual machine store and method for using virtual machine service
CN107992308B (en) Plug-in management method for android terminal application program
CN106325847B (en) Method and device for acquiring application program function based on iOS platform
US11316683B2 (en) Systems and methods for providing IoT security service using hardware security module
KR20140048660A (en) Method for browsing internet of things and apparatus using the same
Anwaarullah et al. RTOS based home automation system using Android
CN102254113A (en) Method and system for detecting and intercepting malicious code of mobile terminal
CN113615141A (en) Account number association method, device, system, server and storage medium
CN113391796B (en) Construction method, device, equipment and medium of integrated development environment
CN100583038C (en) Method, system and apparatus for launching an interface with an electronic device
CN103324537A (en) Resource sharing method and device
US20160077894A1 (en) Communication infrastructure for virtual machines
KR101230917B1 (en) Machine-to-machine apparatus capable of facilitating addition of extension functionalities
CN109818972B (en) Information security management method and device for industrial control system and electronic equipment
RU2600538C2 (en) Launching applications on basis of message transmission interface (mpi) in heterogeneous medium
CN113168333A (en) Workflow configuration for a coordinated device environment
CN104010045A (en) Cloud-platform-based method for executing tasks by mobile nodes
CN112199151B (en) Application program running method and device
CN104751046B (en) A kind of user authen method and mobile terminal device of application program
US8880701B2 (en) System and method for supporting of network service
CN113448607B (en) Method and device for firmware upgrading and intelligent household appliance
CN112162873B (en) Remote calling method, electronic device and storage medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant