ã¢ãŒããã¯ãã£
IronFlockã¯åæ£ã·ã¹ãã ã§ããã2ã€ã®ã¬ã€ã€ãŒã§æ§æãããŠããŸãïŒéçšçŸå Žã§ã¢ããªã±ãŒã·ã§ã³ãå®è¡ããèªåŸçãªãšããžããã€ã¹ãšãããªãŒãå šäœã®ããŒã¿ã¹ãã¬ãŒãžãããã·ã¥ããŒããAIã調æŽãæäŸããäžå€®ãµãŒãã¹ã§ãããªã¢ã«ã¿ã€ã ã¡ãã»ãŒãžãããŒã«ãŒããã¹ãŠãæ¥ç¶ããŸãã
ããã¯çŽç²ãªãšããžãã©ãããã©ãŒã ã§ãçŽç²ãªã¯ã©ãŠããã©ãããã©ãŒã ã§ããããŸããããã®äž¡æ¹ã§ã â ãããŠã¢ãŒããã¯ãã£ã¯ãåã¬ã€ã€ãŒãæãåŸæãšããããšãè¡ãããã«èšèšãããŠããŸãã
ã·ã¹ãã ã®å šäœå
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ ââââââââââââ
â äžå€®ãµãŒãã¹ â â ä»®æ³ â
â â â ããã€ã¹ â
â ââââââââââââ ââââââââââââ ââââââââââââ ââââââââââ â ââââââââââââ
â â FleetDB â â Backend â â AI â â Web â â ââ Custom ââ
â â Cluster â â Service â â Service â â UI â â ââ Serviceââ
â â(Timescaleâ â â â â â â â ââââââââââââ
â â DB) â â â â â â â â â Agent â
â ââââââ¬ââââââ ââââââ¬ââââââ ââââââ¬ââââââ âââââ¬âââââ â ââââââ¬ââââââ
â â â â â â â
â âââââââââââââââŽâââââââ¬âââââââŽâââââââââââââ â â
â â â â
â âââââââââŽââââââââ â â
â â WAMP Message ââââââââââââââââââââââââââââââ
â â Broker â â
â âââââââââ¬ââââââââ â
â â â
ââââââââââââââââââââââââââââââŒâââââââââââââââââââââââââââââ
â
ââââââââââââââââŒââââââââââââââ
â â â
âââââââââŽâââ âââââââââŽâââ ââââââââŽââââ
â Edge â â Edge â â Edge â
â Device 1 â â Device 2 â â Device 3 â
ââââââââââââ ââââââââââââ ââââââââââââ
ââ Apps ââ ââ Apps ââ ââ Apps ââ
ââ(Docker)ââ ââ(Docker)ââ ââ(Docker)ââ
ââââââââââââ ââââââââââââ ââââââââââââ
â Agent â â Agent â â Agent â
ââââââââââââ ââââââââââââ ââââââââââââ3ã€ã®ã¬ã€ã€ãŒ
1. ãšããžããã€ã¹ â èªåŸçãªã¢ããªã±ãŒã·ã§ã³å®è¡ããŒã
ãšããžããã€ã¹ã¯IronFlockã®äžæ žçãªå®è¡ããŒãã§ããåããã€ã¹ã¯è»œéãªãšãŒãžã§ã³ããš1ã€ä»¥äžã®ã³ã³ããåãããã¢ããªã±ãŒã·ã§ã³ïŒDockerïŒãå®è¡ããŸããããã€ã¹ã¯èªåŸçã§ãïŒäžå€®ãµãŒãã¹ããåæãããŠãåäœãç¶ç¶ãããããã¯ãŒã¯ã埩æ§ãããšèªåçã«åæ¥ç¶ããŸãã
ãšããžããã€ã¹ã¯Linux察å¿ã®ä»»æã®ããŒããŠã§ã¢ã§ã â Raspberry Piãç£æ¥çšPCãNVIDIA Jetsonãx86ã²ãŒããŠã§ã€ãã«ã¹ã¿ã ARMããŒããªã©ã
ãšããžããã€ã¹ã§åäœãããã®ïŒ
- IronFlockãšãŒãžã§ã³ã â ããã€ã¹ã®ã©ã€ããµã€ã¯ã«ã管çããOTAã¢ããããŒããåŠçããã³ã³ãããå®è¡ããã¡ãã»ãŒãžãããŒã«ãŒãžã®æ¥ç¶ãç¶æããŸã
- ã客æ§ã®ã¢ããªã±ãŒã·ã§ã³ â ä»»æã®ããã°ã©ãã³ã°èšèªã§Dockerã³ã³ãããšããŠãããã€ãããŸãããããã®ã¢ããªã¯PLCãã»ã³ãµãŒããããŒã¿ãåéããå¶åŸ¡ããžãã¯ãå®è¡ããããŒã«ã«HMIãæäŸããAIã¢ãã«ãå®è¡ãããªã©ãLinuxã¢ããªã±ãŒã·ã§ã³ãå®è¡ã§ããããããããšãè¡ããŸã
ãšããžããã€ã¹ã¯ããã©ã«ãã§ãã¹ãŠã®æ¥ç¶ãå€åãã«éå§ããŸã â ã€ã³ããŠã³ãããŒããéãå¿ èŠã¯ãããŸããããã ããããŒã«ã«HMIãAPIãšã³ããã€ã³ããå ¬éãããªã©ãå¿ èŠã«å¿ããŠããã€ã¹ããŒããéžæçã«éãããšãã§ããŸãã詳现ã¯ãšããžããã€ã¹ïŒãšãŒãžã§ã³ããåç §ããŠãã ããã
2. äžå€®ãµãŒãã¹ â ããªãŒãå šäœã®ããŒã¿ãUIãã€ã³ããªãžã§ã³ã¹
äžå€®ã¬ã€ã€ãŒã¯ãããªãŒãå šäœã®ãã¥ãŒãŸãã¯æ°žç¶çãªã€ã³ãã©ã¹ãã©ã¯ãã£ãå¿ èŠãšããæ©èœãæäŸããŸããåäžå€®ãµãŒãã¹ã¯ç¬ç«ããŠã¹ã±ãŒã©ãã«ã§ã â ãµãŒãã¹ã¯äºãã«åœ±é¿ãäžããããšãªããæé·ããããªãŒãã«å¯Ÿå¿ããããã«æ°Žå¹³æ¹åã«ã¹ã±ãŒã«ã§ããŸãïŒ
- FleetDB â ããã€ã¹ããåéããããã¹ãŠã®ãã¬ã¡ããªããŒã¿ãä¿åããPostgreSQL/TimescaleDBããŒã¿ããŒã¹ã®ã¯ã©ã¹ã¿ãŒãåãããžã§ã¯ãã¯å°çšã®ããŒãã«ãšèªèšŒæ å ±ãæã€ç¬èªã®éé¢ãããããŒã¿ããŒã¹ã€ã³ã¹ã¿ã³ã¹ãååŸããŸããã¯ã©ã¹ã¿ãŒã¢ãŒããã¯ãã£ã«ããããããžã§ã¯ãéã§ã®æ°Žå¹³ã¹ã±ãŒãªã³ã°ãå¯èœã§ããFleetDBã¯æç³»åã¹ãã¬ãŒãžãã¹ã±ãžã¥ãŒã«ãããéèšãåŠçããããã·ã¥ããŒããšAIã¯ãšãªã®ããŒã¿ããã¯ãšã³ããšããŠæ©èœããŸãã
- ããã¯ãšã³ããµãŒãã¹ â ããã€ã¹ããããžã§ã¯ããã¢ããªããŠãŒã¶ãŒã¢ã«ãŠã³ãããªãªãŒã¹ãããã³ãã¹ãŠã®ããªãŒãã¬ãã«ã®æäœã管çããŸããWeb APIãå ¬éããããžãã¹ããžãã¯å±€ãåŠçããŸããå¢å ããAPIè² è·ãšããã€ã¹ç»é²ã«å¯Ÿå¿ããããã«æ°Žå¹³æ¹åã«ã¹ã±ãŒã«ããŸãã
- FleetDBãµãŒãã¹ â ããã€ã¹ããã®åä¿¡ããŒã¿ã¹ããªãŒã ãåŠçããããŒã¿å€æãåŠçããããã³ããšã³ãã«ãªã¢ã«ã¿ã€ã ããã·ã¥ããŒãããŒã¿ãæäŸããã¢ã©ãŒã è©äŸ¡ã管çããŸããããŒã¿åã蟌ã¿éã«åãããŠç¬ç«ããŠã¹ã±ãŒã«ããŸãã
- AIãµãŒãã¹ â AIãšãŒãžã§ã³ãã®äŒè©±ããªãŒã±ã¹ãã¬ãŒã·ã§ã³ããäŒè©±ã®å±éã«å¿ããŠå°éãšãŒãžã§ã³ããåçã«è¿œå ã»åé€ããŸããèªç¶èšèªã¯ãšãªãã«ãŒãã£ã³ã°ããã¡ãã»ãŒãžãããŒã«ãŒãä»ããŠããã€ã¹åŽã®é¢æ°ãåŒã³åºãããªã¢ã«ã¿ã€ã ã§ãã£ãŒããšåæãçæããŸãããããžã§ã¯ãéã®åæAIäŒè©±ããµããŒãããããã«ã¹ã±ãŒã«ããŸãã
- Web UI â ãªãã¬ãŒã¿ãŒãããªãŒãã管çããããã·ã¥ããŒãã衚瀺ããã¢ã©ãŒã ãèšå®ããã¢ããªãéçºããAIã¢ã·ã¹ã¿ã³ããšå¯Ÿè©±ãããã©ãŠã¶ããŒã¹ã®ã³ã³ãããŒã«ãã¬ãŒã³ã
- ã³ã³ããã¬ãžã¹ã㪠â ãã¹ãŠã®ã¢ããªã®Dockerã€ã¡ãŒãžãä¿åããããªãŒãå ã®ä»»æã®ããã€ã¹ãžã®OTAãããã€ã¡ã³ããå¯èœã«ããŸããã¢ããªã«ã¿ãã°ã®æé·ã«åãããŠã¹ãã¬ãŒãžãšã¹ã«ãŒããããç¬ç«ããŠã¹ã±ãŒã«ããŸãã
äžå€®ãµãŒãã¹ã¯IronFlock CloudïŒIronFlockã管çïŒãŸãã¯ã客æ§ã®ã€ã³ãã©ã¹ãã©ã¯ãã£ã§ãªã³ãã¬ãã¹ãããã€ã¡ã³ããšããŠå®è¡ã§ããŸãã詳现ã¯äžå€®ãµãŒãã¹ãåç §ããŠãã ããã
3. ä»®æ³ããã€ã¹ â ã«ã¹ã¿ã äžå€®ã³ã³ãã¥ãŒãããŒã
ç©çãšããžããã€ã¹ã«å ããŠãIronFlockã§ã¯ä»®æ³ããã€ã¹ãããããžã§ãã³ã°ã§ããŸã â ç©çããªãŒããšäžç·ã«ãããžã§ã¯ãã«åå ããã¯ã©ãŠããã¹ãåã³ã³ãã¥ãŒãããŒãã§ããä»®æ³ããã€ã¹ã¯ç©çããã€ã¹ãšåãIronFlockãšãŒãžã§ã³ããå®è¡ããåãã¡ãã»ãŒãžã«ãŒãã£ã³ã°ã«åå ããä»»æã®ã³ã³ããåãããã¢ããªã±ãŒã·ã§ã³ãå®è¡ã§ããŸãã
ä»®æ³ããã€ã¹ã®äžè¬çãªçšéïŒ
- ããªãŒãå šäœã®èŠç¹ãå¿ èŠãšããGrafanaãNode-REDãNetdataãJupyterãªã©ã®äžå€®ããªãŒããµãŒãã¹ã®å®è¡
- è€æ°ã®ç©çããã€ã¹ããããŒã¿ãéçŽããããŒã¿åŠçãã€ãã©ã€ã³ã®ãã¹ãã£ã³ã°
- ãšããžããŒããŠã§ã¢ã«ã¯èšç®è² è·ãé«ãããAIæšè«ãµãŒãã¹ã®å®è¡
- å€éšã·ã¹ãã ïŒSAPãERPãã¯ã©ãŠãAPIïŒãIronFlockãããžã§ã¯ãã«æ¥ç¶ãããããã³ã«ããªããžãšããŠã®äœ¿çš
ä»®æ³ããã€ã¹ã¯å¥ã®æ©èœã§ã¯ãªãããããžã§ã¯ãã®å®å šãªåå è ã§ããããã€ã¹ãªã¹ãã«è¡šç€ºãããOTAã¢ããããŒããåä¿¡ãããã®ã¢ããªã¯åãã¡ãã»ãŒãžãããŒã«ãŒãéããŠãšããžããã€ã¹ã¢ããªãšéä¿¡ããŸãã
詳现ã¯ä»®æ³ããã€ã¹ãåç §ããŠãã ããã
ã¡ãã»ãŒãžãããŒã«ãŒ â æ¥çå€
IronFlockã®ãã¹ãŠã®ã³ã³ããŒãã³ãã¯ãäžå€®ã®WAMPïŒWeb Application Messaging ProtocolïŒã¡ãã»ãŒãžãããŒã«ãŒãéããŠéä¿¡ããŸãããããŒã«ãŒã¯ä»¥äžãæäŸããŸãïŒ
- ãªã¢ã«ã¿ã€ã Pub/Subã¡ãã»ãŒãžã³ã° â ããã€ã¹ããã¬ã¡ããªãå ¬éããããã·ã¥ããŒããã©ã€ãããŒã¿ããµãã¹ã¯ã©ã€ãããã¢ããªãåæ¹åã«éä¿¡
- RPCïŒãªã¢ãŒãããã·ãŒãžã£ã³ãŒã«ïŒ â AIãµãŒãã¹ãããã€ã¹åŽã®é¢æ°ãåŒã³åºããããã¯ãšã³ããããã€ã¹äžã®ã³ã³ããæäœãããªã¬ãŒãããªãã¬ãŒã¿ãŒãã³ãã³ããéä¿¡
- ãããžã§ã¯ãéé¢ â åãããžã§ã¯ã-ã¢ããªã®çµã¿åãããç¬èªã®æå·åŠçã«éé¢ãããã¡ãã»ãŒãžã³ã°ã¬ã«ã ãååŸããããããžã§ã¯ãã®ããã€ã¹ã¯å¥ã®ãããžã§ã¯ãã®ã¡ãã»ãŒãžãèŠãããšãã§ããŸãã
- èªèšŒ â ãããŒã«ãŒãžã®ãã¹ãŠã®æ¥ç¶ã«æå¹ãªèªèšŒæ å ±ãå¿ èŠ
ã¡ãã»ãŒãžãããŒã«ãŒããããIronFlockãåæãããããŒãã®éãŸãã§ã¯ãªã忣ã·ã¹ãã ã«ããŠãããã®ã§ããäžå€®ã¯ã©ãŠãã§å®è¡ãããAIãšãŒãžã§ã³ãã¯ãå·¥å Žããã¢ã®ç©çããã€ã¹äžã®é¢æ°ãåŒã³åºãããªã¢ã«ã¿ã€ã ã§çµæãåãåãããšãã§ããŸã â äž¡æ¹ãåããããŒã«ãŒã«æ¥ç¶ãããŠããããã§ãã
詳现ã¯ã¡ãã»ãŒãžãããŒã«ãŒïŒWAMPïŒãåç §ããŠãã ããã
ã¹ã±ãŒã©ããªãã£ãšç¡åæ¢ã¢ããããŒã
IronFlockã¢ãŒããã¯ãã£ã®ãã¹ãŠã®ã³ã³ããŒãã³ãã¯æ°Žå¹³ã¹ã±ãŒãªã³ã°ãåæã«èšèšãããŠããŸããããã¯ãšã³ããFleetDBãAIãµãŒãã¹ãã¡ãã»ãŒãžãããŒã«ãŒãã³ã³ããã¬ãžã¹ããªã¯ããããç¬ç«ããŠã¹ã±ãŒã«ã§ããããªãŒãã®æ¡å€§ãããŒã¿éã®å¢å ãåææ¥ç¶ãŠãŒã¶ãŒã®å¢å ã«å¯Ÿå¿ã§ããŸãââä»ã®ã·ã¹ãã éšåã«åœ±é¿ãäžããããšãªãã
çŸåšããã¹ãŠã®ã·ã¹ãã ã³ã³ããŒãã³ããã»ãŒç¡åæ¢ã¢ããããŒãããµããŒãããŠãããã¢ã¯ãã£ããªæ¥ç¶ãããŒã¿ãããŒãã»ãšãã©äžæããããšãªãæ°ããŒãžã§ã³ã«ã¢ããã°ã¬ãŒãã§ããŸããã¯ã©ã¹ã¿åãããã¡ãã»ãŒãžãããŒã«ãŒããã®æ¹åŒãžç§»è¡ããæåŸã®ã³ã³ããŒãã³ãã§ããããã©ãããã©ãŒã å šäœãã»ãŒãµãŒãã¹äžæãªãã§æŽæ°ã§ããããã«ãªããŸããã
ã¢ãŒããã¯ã㣠vs. åŸæ¥ã®SCADA
åŸæ¥ã®SCADAãã©ãããã©ãŒã ïŒIgnitionãWinCCãWonderwareïŒã¯ã²ãŒããŠã§ã€äžå¿ã¢ãã«ã«åŸããŸãïŒ1ã€ã®äžå€®ãµãŒããŒããã¹ãŠãè¡ããŸã â ã¿ã°åéãå±¥æŽä¿åãç»é¢è¡šç€ºãã¢ã©ãŒã åŠçãã¹ã¯ãªããã£ã³ã°ãããšããžãã¯ãã®äžå€®ãµãŒããŒã«ããŒã¿ãäŸçµŠããPLCã«éããŸããã
IronFlockã¯ãããé転ãããŸãããšããžããã€ã¹ã¯å®å šãªèšç®èœåãæã€èªåŸçãªã¢ããªã±ãŒã·ã§ã³å®è¡ããŒãã§ããäžå€®ãµãŒãã¹ã¯ããªãŒãå šäœã®ãã¥ãŒãå¿ èŠãªãã®ãåŠçããŸãïŒæ°žç¶çãªããŒã¿ã¹ãã¬ãŒãžãããã·ã¥ããŒããAIãªãŒã±ã¹ãã¬ãŒã·ã§ã³ãããªãŒã管çãã©ã¡ãã®ã¬ã€ã€ãŒã仿¹ã«åŸå±ããŠããŸãã â çžäºè£å®çã§ãã
| åŽé¢ | åŸæ¥ã®SCADA | IronFlock |
|---|---|---|
| ãšããžã®åœ¹å² | ãã ããŒã¿ãœãŒã¹ïŒPLC â ã²ãŒããŠã§ã€ïŒ | å®å šãªã¢ããªã±ãŒã·ã§ã³ãå®è¡ããèªåŸçãªã³ã³ãã¥ãŒãããŒã |
| äžå€®ã®åœ¹å² | ãã¹ãŠãè¡ãïŒã²ãŒããŠã§ã€ãµãŒããŒïŒ | ããªãŒãå šäœã®ããŒã¿ãUIãAIãèª¿æŽ |
| ã¢ããªããã〠| äžå€®ã²ãŒããŠã§ã€äžã®ã¢ãžã¥ãŒã« | ãšããžããã€ã¹äžã®Dockerã³ã³ãã |
| ãªãã©ã€ã³åäœ | ã²ãŒããŠã§ã€ãªãã§ã¯ãšããžã忢 | ãšããžããã€ã¹ã¯èªåŸçã«åäœãç¶ç¶ |
| ã¹ã±ãŒãªã³ã° | ã²ãŒããŠã§ã€ãµãŒããŒã远å | ãšããžããã€ã¹ã远å |
| éä¿¡ | ã²ãŒããŠã§ã€ããPLCãžã®ããŒãªã³ã°/OPC | ãªã¢ã«ã¿ã€ã åæ¹åã¡ãã»ãŒãžã³ã°ïŒWAMPïŒ |
ãããã€ã¡ã³ããªãã·ã§ã³
IronFlockã®äžå€®ãµãŒãã¹ã¯ã3ã€ã®æ§æã§å®è¡ã§ããŸãïŒ
| ã¢ãŒã | äžå€®ãµãŒãã¹ | ãšããžããã€ã¹ | ãŠãŒã¹ã±ãŒã¹ |
|---|---|---|---|
| ã¯ã©ãŠãïŒããã©ã«ãïŒ | IronFlockãããŒãžãã¯ã©ãŠã | ã€ã³ã¿ãŒãããçµç±ã§æ¥ç¶ | ã»ãšãã©ã®ãããã€ã¡ã³ã |
| ã¢ãã©ã€ã¢ã³ã¹ | çŸå Žã«èšçœ®ããäºåèšå®æžã¿ããã¯ã¹ â ãšããžããã€ã¹ãšããŠãæ©èœ | ããŒã«ã«ãããã¯ãŒã¯çµç±ã§æ¥ç¶ | æ©æ¢°ã¡ãŒã«ãŒ / OEM |
| ãã©ã€ããŒãã¯ã©ãŠã | ã客æ§ã®DMZ / VPC / ããŒã¿ã»ã³ã¿ãŒ | ããŒã«ã«ãããã¯ãŒã¯çµç±ã§æ¥ç¶ | ãšã¢ã®ã£ãããèŠå¶ç°å¢ |
3ã€ã®ã¢ãã«ã®è©³çŽ°ãªæ¯èŒã«ã€ããŠã¯ãããã€ã¡ã³ããªãã·ã§ã³ãåç §ããŠãã ããã