IoT á ááºáá á¹á ááºážáá»á¬ážá á¡ááá®áá±ážááŸááºážáá»á¬ážááŸáá·áº áááºáá±á¬ááºááŸá¯áá»á¬ážááŒá¬áž á¡ááŒááºá¡ááŸááºáá¯ááºáá±á¬ááºááá¯ááºá á±áááºá¡ááœáẠá¡ááœáá·áºá áá±á¬áºáá»á°áá¬ááááºáá±á¬ááºážáá áºáá¯ááŒá áºááá·áº EdgeX 2.0 ááᯠááááºáááºáá²á·áááºá ááááºáá±á¬ááºážááẠáá®ážááŒá¬ážáá±á¬ááºážáá»áá° áá¬á·ááºáá²ááŸáá·áº áááºáááºááŸá¯á áá áºáá»á¬ážááŸáá·áº áá»áááºáááºáá¬ážááŒááºáž ááá¯ááºáá² Linux Foundation á áá¶á·ááá¯ážáá°áá®ááŸá¯á¡á±á¬ááºááœáẠá¡ááŸá®á¡ááá¯áááºážáá±á¬ á¡áá¯ááºá¡ááœá²á·áá áºáá¯á០áá®ááœááºáá¬ážááŒááºáž ááŒá áºáááºá ááááºáá±á¬ááºážá¡á áááºá¡ááá¯ááºážáá»á¬ážááᯠGo ááœááºáá±ážáá¬ážááŒá®áž Apache 2.0 ááá¯ááºá ááºá¡á±á¬ááºááœáẠááŒáá·áºáá±áá¬ážáááºá
EdgeX ááẠááá·áºá¡á¬áž áááºááŸá IoT á ááºáá á¹á ááºážáá»á¬ážááŸáá·áº áá»áááºáááºááá¯ááºááá·áº áá¶áá«ážáá±á«ááºáá»á¬ážááᯠáááºáá®ážááá¯ááºááŒá®áž á¡á¬áá¯á¶áá¶áááááá¬á¡áá»áá¯ážáá»áá¯ážá០á¡áá»ááºá¡áááºáá»á¬ážááᯠá á¯áá±á¬ááºážááá¯ááºáááºá ááááºáá±ážááẠá ááºáá á¹á ááºážáá»á¬ážááŸáá·áº á¡ááŒááºá¡ááŸááºáááºááœááºááŸá¯ááᯠá á¯á ááºážááŒá®áž ááááºážá¡áá»ááºá¡áááºáá»á¬ážááᯠá¡ááááá¯ááºáá±á¬ááºááŒááºážá á á¯á ááºážááŒááºážááŸáá·áº ááœá²ááŒááºážá áááºááŒá¬ááŒááºážáá»á¬áž áá¯ááºáá±á¬ááºááŒá®áž IoT áááááá¬áá»á¬ážááœááºáááºááŸáá·áº áá±áááááºážáá»á¯ááºáá±ážá ááºáᬠááá¯á·ááá¯áẠcloud á á®áá¶ááá·áºááœá²ááŸá¯á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááá¯á·ááŒá¬ážááœáẠááŒá¬ážáá¶áá»áááºáááºááŸá¯áá áºáá¯á¡ááŒá Ạáá¯ááºáá±á¬ááºáááºá Gateways ááẠmicroservices á¡ááŒá áºáá¯ááºááá¯ážáá¬ážáá±á¬ handlers áá»á¬ážááá¯áááºáž run ááá¯ááºáááºá TCP/IP ááœááºáááºáá»á¬ážááŸáá·áº áá®ážááŒá¬áž (IP ááá¯ááºáá±á¬) áááá¯ááá¯áá±á¬áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á ááŒáá¯ážááẠááá¯á·ááá¯áẠááŒáá¯ážáá²á·ááœááºáááºáá áºáá¯áá±á«áºááœáẠIoT á ááºáá á¹á ááºážáá»á¬ážááŸáá·áº á¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááŸá¯ááᯠá á®á ááºááá¯ááºáááºá
ááá°áá®áá±á¬ áááºááœááºáá»ááºáá»á¬ážá¡ááœáẠááááºáá±ážáá»á¬ážááᯠááœááºážáááºáá»á¬ážá¡ááŒá Ạáá±á«ááºážá ááºááá¯ááºáááºá á¥ááá¬á áááááá·áºááºá áá¶áá«ážáá±á«ááºááẠá ááºáá á¹á ááºážá á®áá¶ááá·áºááœá²ááŸá¯ (á áá áºá á®áá¶ááá·áºááœá²ááŸá¯) ááŸáá·áº áá¯á¶ááŒá¯á¶áá±ážááá¯ááºáᬠááŒá¿áá¬áá»á¬ážááᯠááŒá±ááŸááºážááá¯ááºááŒá®ážá áá¯áááááá·áºáẠ(fog server) á áá¶áá«ážáá±á«ááºááẠá¡áááºáá±áá¬ááᯠááááºážáááºážááá¯ááºááŒá®áž ááœá²ááŒááºážá áááºááŒá¬ááŸá¯áá»á¬ážááᯠáá¯ááºáá±á¬ááºááá¯ááºáááºá áááºáá±á¬ááºááŸá¯áá»á¬ážáá±ážáááºá á áá áºááẠmodular ááŒá áºáá±á¬ááŒá±á¬áá·áº áá¯ááºáá±á¬ááºááá¯ááºá áœááºážááᯠload áá±á«áºáá°áááºá áá áºáŠážáá»ááºáž node áá»á¬ážá¡ááŒá Ạááá¯ááºážááŒá¬ážáá¬ážáá«áááº- ááá¯ážááŸááºážáá±á¬ááá á¹á áá»á¬ážááœááºá gateway áá áºáá¯ááẠáá¯á¶áá±á¬ááºáá±á¬áºáááºáž IoT ááœááºáááºááŒá®ážáá»á¬ážá¡ááœáẠá¡á á¯á¡áá±ážáá áºáá¯áá¯á¶ážááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá
EdgeX ááẠIoT á ááºáá á¹á ááºážáá»á¬ážá¡ááœáẠDell Edge Gateways ááœáẠá¡áá¯á¶ážááŒá¯ááá·áº á¡ááœáá·áº Fuse IoT stack ááᯠá¡ááŒá±áá¶áá¬ážáááºá x86 ááŸáá·áº ARM CPU áá»á¬ážááá¯á¡ááŒá±áá¶áá¬ážáá±á¬ Linuxá Windows ááá¯á·ááá¯áẠmacOS áá±á«áºááœááºá¡ááŒá±áá¶áá¬ážáá±á¬áá¬áá¬áá»á¬ážá¡áá«á¡ááẠáááºááá·áºáá¬á·ááºáá²ááœááºáááᯠááá·áºááœááºážááá¯ááºáá«áááºá ááá±á¬áá»ááºááœáẠáá±áá¬ááœá²ááŒááºážá áááºááŒá¬ááŸá¯á áá¯á¶ááŒá¯á¶áá±ážá á á®áá¶ááá·áºááœá²ááŸá¯ááŸáá·áº á¡áá»áá¯ážáá»áá¯ážáá±á¬ ááŒá¿áá¬áá»á¬ážááᯠááŒá±ááŸááºážáááºá¡ááœáẠá¡áááºááá·áºáá¯ááºáá¬ážáá±á¬ ááá¯ááºáááá¯áááºáá±á¬ááºááŸá¯áá»á¬áž ááœá±ážáá»ááºááŸá¯ áá«áááºáááºá Javaá Javascriptá Pythoná Go ááŸáá·áº C/C++ áá¬áá¬á áá¬ážáá»á¬ážááᯠááá·áºááá¯ááºááá¯áẠmicroservices áá»á¬ážááœá¶á·ááŒáá¯ážááá¯ážáááºá á±áááºá¡ááœáẠá¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá IoT á ááºáá»á¬ážááŸáá·áº á¡á¬áá¯á¶áá¶áááááá¬áá»á¬ážá¡ááœáẠáá¬ááºáá±á¬ááºážáá»á¬ážááᯠáá®ááœááºáááºá¡ááœáẠSDK ááᯠáááºážááŸááºážáá¬ážáááºá
á¡áááááŒá±á¬ááºážáá²ááŸá¯áá»á¬áž-
- Angular JS áá°áá±á¬ááºááᯠá¡áá¯á¶ážááŒá¯á áááºáá®ážáá¬ážáá±á¬ áááºá¡ááºáá¬áá±á·á
áºá¡áá
áºááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºáá²á·áááºá GUI á¡áá
áºá á¡á¬ážáá¬áá»ááºáá»á¬ážáá²ááœáẠááŒá¯ááŒááºááááºážááááºážáááœááºáá°ááŒááºážááŸáá·áº áá¯ááºáá±á¬ááºááá¯ááºá
áœááºážáá»á¬áž áá»á²á·ááœááºááŒááºážá á
ááºáá
á¹á
ááºážá¡áá
áºáá»á¬ážááᯠáá»áááºáááºáááºá¡ááœáẠwizard áá
áºáá¯ááŸáááŒááºážá áá±áá¬ááŒááºáá±á¬ááºááŒááºážá¡ááœáẠáááááá¬áá»á¬ážá áááºáá¬áá±áá¬ááᯠá
á®áá¶ááá·áºááœá²ááŒááºážá¡ááœáẠáááá¬áááºááŸá¬ážá
áœá¬ ááá¯ážáááºáá¬áá±á¬ á¡ááºáá¬áá±á·á
áºááŸáá·áº áááºáá±á¬ááºááŸá¯áá»á¬ážá á¡ááŒá±á¡áá±ááᯠá
á±á¬áá·áºááŒáá·áºááá¯ááºááŸá¯ (memory áá¯á¶ážá
áœá²ááŸá¯á CPU load á
áááºááŒáá·áº)á
- ááá¯á¡áá« áááºááœááºáá±ážáááá¯ááá¯áá±á¬ááŸáá·áº áááºážááœááºáá±á¬á ááá¯ááá¯áá¯á¶ááŒá¯á¶ááŒá®áž áá±á¬ááºážááœááºáá±á¬ááœá²á·á ááºážáá¯á¶ (JSON ááá¯á¡áá¯á¶ážááŒá¯áááº) ááŸáá·áº áááºáá±á¬ááºááŸá¯á០áá¯ááºáá±á¬ááºáá²á·áá±á¬ áá±áá¬áá»á¬ážááᯠááá¯ááá¯áá±á¬ááºážááœááºá áœá¬ ááŒá±áá¬áá¶ááá·áº microservices áá»á¬ážááŸáá·áº á¡áá¯ááºáá¯ááºáááºá¡ááœáẠAPI ááᯠá¡ááŒá®ážá¡ááŒáẠááŒááºáá±ážáá¬ážáááºá
- á áœááºážáá±á¬ááºááẠááá¯ážááŒáá·áºáá¬ááŒá®áž áá±á«á·áá«ážáá±á¬ áá¯á¶á á¶áá»á¬ážááᯠáááºáá®ážááá¯ááºáááºá áá±áá¬ááᯠááááºážáááºážááẠáá¬áááºááŸáááá·áº Core Data á¡á áááºá¡ááá¯ááºážááẠááᯠááœá±ážáá»ááºááá¯ááºááẠ(á¥ááá¬á áááºááẠá¡á¬áá¯á¶áá¶áááááá¬áá»á¬ážá០áá±áá¬áá»á¬ážááᯠá á®áá¶áá±á¬ááºááœááºáá±ážáááºáᬠááá¯á¡ááºááá·áºá¡áá« áááºážááᯠáááºáá¯ááºááá¯ááºáááº)á
- áá¯á¶ááŒááºá
áááºáá»áááŸá¯ááᯠááá¯ážááŒáŸáá·áºáá¬ážááŒá®áž áááºáá±á¬ááºááŸá¯á¡áááºá¡ááœá±áž (QoS) ááᯠáá±áá»á¬á
á±áááºá¡ááœáẠáááááá¬áá»á¬ážááᯠááá¯ážáá»á²á·áá¬ážáááºá á
ááºáá
á¹á
ááºážáááºáá±á¬ááºááŸá¯áá»á¬áž (á¡á¬áá¯á¶áá¶áááááá¬áá»á¬ážááŸáá·áº á
ááºáá»á¬ážá០áá±áá¬á
á¯áá±á¬ááºážááŒááºážá¡ááœáẠáá¬áááºááŸááá±á¬ á
ááºáá
á¹á
ááºážáááºáá±á¬ááºááŸá¯áá»á¬áž) á០áá±áá¬áá¯ááºáá±á¬ááºááŒááºážááŸáá·áº á
á¯áá±á¬ááºážááŒááºážáááºáá±á¬ááºááŸá¯áá»á¬áž (Application Services) ááá¯á· áá±áá¬ááœáŸá²ááŒá±á¬ááºážááá·áºá¡áá«ááœáẠáááºááẠááá¯áá»áááºáááºááŸá¯áááŸááá² áááºáá±á·áá»áºáááºá
Ạ( Redis Pub/Subá 0MQ ááá¯á·ááá¯áẠMQTT) ááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá HTTP ááá¯á· - REST áááá¯ááá¯áá±á¬ááŸáá·áº áááºáá±á·áá»áºááœá²á
á¬ážá¡ááá·áºááœáẠQoS áŠážá
á¬ážáá±ážáá»á¬ážááᯠáá»áááºááŸáááŒááºážá Device Service á០áá±áá¬áá»á¬ážááᯠá¡ááá®áá±ážááŸááºáž áááºáá±á¬ááºááŸá¯ááá¯á· ááá¯ááºááá¯áẠááœáŸá²ááŒá±á¬ááºážááŒááºáž á¡áá«á¡ááẠCore Data áááºáá±á¬ááºááŸá¯ááá¯á· ááœá±ážáá»ááºááá¯ááºáá±á¬ áááºáá°áááºááŒááºáž áá«áááºáá«áááºá REST áááá¯ááá¯áá±á¬ááŸáá
áºááá·áº áá±áá¬ááœáŸá²ááŒá±á¬ááºážááŒááºážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ááᯠááááºážááááºážáá¬ážáá±á¬áºáááºáž áá°áááºážá¡ááá¯ááºáž á¡áá¯á¶ážáááŒá¯áá«á
- Vault áá²á·ááá¯á·áá±á¬ áá¯á¶ááŒá¯á¶áá±á¬ááá¯ááŸá±á¬ááºááŸá¯á០áá»áŸáá¯á·ááŸááºáá±áá¬áá»á¬áž (á áá¬ážááŸááºáá»á¬ážá áá±á¬á·áá»á¬ážá áááºááŒáá·áº) ááŒááºáááºááá°áááºá¡ááœáẠuniversal module (áá»áŸáá¯á·ááŸááºáá¶á·ááá¯ážáá±ážáá°) ááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºáá²á·áááºá
- áá±á¬ááºá á áºááẠáááááá¬áá»á¬ážááᯠáááºáá±á¬ááºááŸá¯áá»á¬ážááŸáá·áº áááºáááºáá»á¬ážá ááŸááºáá¯á¶áááºá á¬áááºážááᯠááááºážááááºážáááºá¡ááŒáẠáááºáá±á¬ááºááœáá·áºááŸáá·áº á¡áá±á¬ááºá¡áá¬ážá áá á áºááŒááºážááá¯á·ááᯠá á®áá¶ááá·áºááœá²ááẠá¡áá¯á¶ážááŒá¯áá«áááºá API Gateway ááẠConsul API ááá¯áá±á«áºááá¯áááºá¡ááœáẠáá¶á·ááá¯ážááŸá¯áá±ážáá«áááºá
- Docker ááœááºááááºáá¬áá»á¬ážááœáẠroot á¡ááœáá·áºáá°ážáá»á¬áž ááá¯á¡ááºááá·áº áá¯ááºáááºážá ááºáá»á¬ážááŸáá·áº áááºáá±á¬ááºááŸá¯áá»á¬áž á¡áá±á¡ááœááºááᯠáá»áŸá±á¬á·áá»áá«á ááá¯á¶ááŒá¯á¶áá±á¬áá¯ááºááœáẠRedis ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááŸáá¬ááœááºááŸá¯áááºááá¯ážáá¬ážáááºá
- API Gateway (Kong) á ááá¯ážááŸááºážáá±á¬ ááœá²á·á ááºážááŸá¯áá¯á¶á á¶á
- á¡á¬áá¯á¶áá¶áááááá¬ááŸáá·áº á
ááºáá
á¹á
ááºáž ááá·áºáááºáá±á¬ááºáá»á¬ážá¡ááŒáẠá
á¯áá±á¬ááºážáá±áá¬á¡ááŒá±á¬ááºáž á¡áá»ááºá¡áááºáá»á¬ážááᯠáááºááŸááºáá±ážááá·áº ááá¯ážááŸááºážáá±á¬ áááááá¬áááá¯ááá¯ááºáá»á¬ážá áááá¯ááá¯ááºáá»á¬ážááᯠYAML ááŸáá·áº JSON áá±á¬áºáááºáá»á¬ážááŒáá·áº áááºááŸááºááá¯ááºáááºá
- á
ááºáá
á¹á
ááºážáááºáá±á¬ááºááŸá¯á¡áá
áºáá»á¬áž áááºááá·áºáááº-
- Constrained Application Protocol ááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááŒááºážááŒáá·áº CoAP (C) ááœáẠáá±ážáá¬ážáá¬ážáááºá
- GPIO (General Pin Input/Output) áá±á«ááºáá»á¬ážááŸáá áºááá·áº Raspberry Pi áá¯ááºáá»á¬ážá¡áá«á¡ááẠá¡ááŒá¬ážá ááºáá á¹á ááºážáá»á¬ážááŸáá·áº áá»áááºáááºáááºá¡ááœáẠGPIO (Go ááœááºáá±ážáá¬ážáááº)á
- RFID áááºá á¬áááºáá°áá»á¬ážááŸáá·áºáá»áááºáááºáááºá¡ááœáẠLLRP (Low Level Reader Protocol) áááá¯ááá¯áá±á¬ááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááŒááºážááŒáá·áº LLRP (Go ááœááºáá±ážáá¬ážáááº)á
- UART (Universal Asynchronous Receiver/Transmitter) áá¶á·ááá¯ážááŸá¯ááŒáá·áº UART (Go ááœááºáá±ážáá¬ážáááº)á
- cloud á áá áºáá»á¬ážááŸáá·áº á¡ááá®áá±ážááŸááºážáá»á¬ážááœáẠáááºážááá¯á·á áá±á¬ááºáááºááœá²áá¯ááºáá±á¬ááºááŸá¯á¡ááœáẠáá±áá¬áá»á¬ážááᯠááŒááºáááºááŒááºážááŸáá·áº áááºááá¯á·ááŒááºážá¡ááœáẠáá¬áááºááŸáááá·áº Application Services á áá¯ááºáá±á¬ááºááá¯ááºá áœááºážáá»á¬ážááᯠááá¯ážáá»á²á·áá¬ážáá«áááºá á ááºáá á¹á ááºážáááá¯ááá¯ááºá¡áááºááŸáá·áº á¡áááºážá¡ááŒá áºá¡áá»áá¯ážá¡á á¬ážá¡ááá¯áẠá¡á¬áá¯á¶áá¶áááááá¬áá»á¬ážá០áá±áá¬á á áºáá¯ááºááŒááºážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ áááºáá±á¬ááºážááá·áºááœááºážáá¬ážáááºá áááºáá±á¬ááºááŸá¯áá áºáá¯ááŒáá·áº áááºáá¶áá°á¡áá»á¬ážá¡ááŒá¬ážáᶠáá±áá¬áá±ážááá¯á·ááá¯ááºááŸá¯ááŸáá·áº áááºáá±á·áá»áºáááºá áºáá»á¬ážá áœá¬ááᯠá á¬áááºážááœááºážááá¯ááºááŸá¯ááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááŒá®ážááŒá áºáááºá ááá·áºááá¯ááºááá¯áẠá¡ááá®áá±ážááŸááºážáááºáá±á¬ááºááŸá¯áá»á¬ážááᯠá¡ááŒááºáááºáá®ážáááºá¡ááœáẠááá°áá¬áá¯á¶á á¶áá áºáá¯ááᯠá¡ááá¯ááŒá¯áá¬ážáááºá
- á¡áá±ážá á¬ážáááºáá±á¬ááºááŸá¯áá»á¬ážá¡ááœáẠááœá±ážáá»ááºáá¬ážáá±á¬ ááá¯á·ááºáá¶áá«ááºáá»á¬ážááẠáá®ážááá·áºá¡áá¯á¶ážááŒá¯ááŸá¯á¡ááœáẠInternet Assigned Numbers Authority (IANA) á០á¡ááŒá¶ááŒá¯áá¬ážááá·áº á¡ááá¯ááºážáá»á¬ážááŸáá·áº ááá¯ááºáá®ááŒá®áž áááºááŸáá áá áºáá»á¬ážááŸáá·áº ááœá²ááœá²ááŸá¯áá»á¬ážááᯠááŸá±á¬ááºááŸá¬ážááá¯ááºáááºááŒá áºáááºá
source: opennet.ru