Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
irBoardの紹介と クラウドサービスの活用
Search
Katsuyoshi Ito
December 03, 2018
Technology
1
440
irBoardの紹介と クラウドサービスの活用
平成30年度IoT現場実践研修会IoT公開セミナーでの講演資料
2018/12/3 秋田県立大学本荘 キャンパスAVホール にて開催
Katsuyoshi Ito
December 03, 2018
Tweet
Share
More Decks by Katsuyoshi Ito
See All by Katsuyoshi Ito
irBoard(アイアールボード) について
itosoft
0
460
Ladder Drive - To start IoT for manufacturing.
itosoft
0
53
irBoard活用可能性
itosoft
0
120
東北IT物産展2016スポンサーLT
itosoft
0
77
iQ-FとirBoardの接続設定
itosoft
0
590
iQ-RとirBoardの接続設定
itosoft
0
620
デジコミュ秋田 2015 オープニング
itosoft
0
1.6k
デジコミュ秋田 2015 LT 極上の密林
itosoft
0
460
はじめてのCDQ
itosoft
1
260
Other Decks in Technology
See All in Technology
え!! 日本国内でGo言語のバイリンガル勉強会を!?
logica0419
2
110
2年かけてSONiCコミュニティにマージされた話
sonic
0
100
SONiCで構築・運用する生成AI向けパブリッククラウドネットワーク
sonic
1
560
若手中心の内製アジャイル開発で研究開発に挑戦 / 20250517 Nobuhiro Kawamura & Dami Lee & Tomohiko Tanikawa
shift_evolve
1
230
Kent Beckの思想と学びの道筋 / 20250517 Ryutaro Yoshiba & Hiromitsu Akiba
shift_evolve
1
260
declaration mergingの威力:ライブラリアップデート時の書き換え作業を90%短縮するテクニック
yutake27
2
120
SRE/インフラエンジニアの市場価値とキャリアパス/Market value and career path for SRE-infrastructure engineers
takumakume
1
250
AI駆動時代の新規事業の作り方
ryohysk
2
120
AI Development in .NET - Microsoft.Extensions.AI
_mertmetin
0
120
Microsoft Fabric のライセンスについて
ryomaru0825
2
3.5k
スイッチのBMC、つかってますか?
sonic
0
520
PythonツールであるpygnmiをSONiCのgNMIに対して使ってみた
sonic
0
350
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
46
14k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Unsuck your backbone
ammeep
671
58k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Transcript
JS#PBSEͷհͱ ΫϥυαʔϏεͷ׆༻ ฏ*P5ݱ࣮ફݚमձ*P5ެ։ηϛφʔ ༗ݶձࣾҏ౻ιϑτσβΠϯ ҏ౻উྑ 2018/12/3
[email protected]
"HFOEB wJS#PBSEʹ͍ͭͯ w*P5ʹ͍ͭͯ wΫϥυαʔϏεͷ׆༻ʹ͍ͭͯ
ࣗݾհ w େઋࢢଠాொ w ԞӋࢁ຺ͷ w ळాۀߴઐֶߍଔ w ٶӽਫ਼ػגࣜձࣾࠃݟ w
ຊٕݚ w ༗ݶձ͓͓ࣾ͏ॏػ༗ݶձࣾҏ౻ιϑτσβΠϯ w ιϑτ8FCͷใަΛߦ͏ ίϛϡχςΟʔ"LJUBN ΞΩλΤϜ Λ্ཱͪ͛ w ຖ݄։࠵͍ͯͯ͠དྷΛܴ͑Δ w ӪࢁӡߦγεςϜ
ۀ༰ • PLCؔ࿈ͷιϑτมߋɺ։ൃ • εϚʔτϑΥϯɺλϒϨοτ(iOS)ΞϓϦ • όοΫΤϯυͱͯ͠WebΞϓϦέʔγϣϯ։ൃ • PCΛ༻੍͍ͨޚɺଌఆιϑτ •
ΈࠐΈιϑτ
JS#PBSE IUUQTJSCPBSEJUPTPGUDPN
தݎɾதখۀ͚̞̩̾ πʔϧˍϨγϐ w *P5ͷ׆༻ଅ͢త w ΑΓ؆୯ʹίετͰ͑ΔۀΞϓϦέʔγϣϯ ηϯαʔϞδϡʔϧࣄྫΛͬͯΒ͏ w ϩϘοτֵ໋ΠχγΞςΟϒڠٞձ͕ืू w
ܦࡁ࢈ۀল͕ࢧԉ w ୈҰճ w IUUQTXXXKNGSSJHSKQJOGPSSJ w ୈೋճ w IUUQTXXXKNGSSJHSKQFWFOUTFNJOBS w ୈҰճɺୈೋճڞʹ৹ࠪҕһͷҰԡ͠πʔϧͱͯ͠બΕΔ w બΕͨπʔϧɺϨγϐࢠͱͯ͠·ͱ·͍ͬͯ·͢ w IUUQTDPOUFOEPKQTUPSFJUFCPPL1SPEVDU -JTU NPEFTFBSDI@DSFBUPSRϩϘοτֵ໋ΠχγΞςΟϒڠٞձ
ἚεϚʔτͷͮ͘Γ Ԡԉπʔϧలࣔձ w ฏ݄ ۚ d w Ἒݝ࢈ۀٕज़Πϊϕʔγϣϯηϯλʔ w ϩϘοτֵ໋ΠχγΞςΟϒڠٞձ͕બఆͨ͠ʮΠνΦγπʔ
ϧʯΛలࣔɹ ݅͘Β͍ w JS#PBSEలࣔ͠·͢ w IUUQXXXIUDDPKQXQDPOUFOUVQMPBET UFOKJQEG
*P5πʔϧͷྨ IUUQTXXXKNGSSJHSKQFWFOUTFNJOBSIUNM JS#PBSE
iPadΛλονύωϧʹ
PLC • ϓϩάϥϚϒϧϩδοΫίϯτϩʔϥʢӳprogrammable logic controllerɺ1-$ʣɺϦϨʔճ࿏ͷସஔͱͯ͠։ ൃ͞Ε੍ͨޚஔͰ͋ΔɻϓϩάϥϚϒϧίϯτϩʔϥͱ ݺΕɻ ʙ WikipediaΑΓ ʙ
w ੜ࢈ઃඋͳͲͷࣗಈԽ '" ͷ ੍ޚஔͱͯ͠ΘΕ͍ͯΔ w ۙ-"/ΠϯλʔϑΣΠε͕ඪ४
ରԠPLC&௨৴ϓϩτίϧ ϝʔΧʔ ػछ ϓϩτίϧ ࡾඛిػ FɺQɺLɺiQ γϦʔζ MC Protocol MX
Component ΩʔΤϯε KVγϦʔζ ্Ґ௨৴ ΦϜϩϯ CJɺCP1γϦʔζ FINS/TCP ԣՏిػ FA-M3V e-RT3 ্Ґ௨৴ MODBUS MODBUS/TCP Ethernetଂػछ·ͨEthernetϞδϡʔϧ͕ඞཁ γϦΞϧ&UIFSOFUมثͰैདྷͷʹଓͰ͖Δ༷औΓΈத
irBoardΛ͏खॱ • iOSσόΠεΛ४උ • iPadɺ iPhoneɺ iPod touch • irBoardΛߪೖ
• ༻్ʹ߹Θ༷ͤͯʑͳΤσΟογϣϯ͕͋Γ·͢ • Lite൛ແྉͰ1ʹ࣮ػͱ60ଓՄೳͰධՁ༻ • ը໘Λ࡞͢Δ • ௨৴ڥΛ͑Δ • λονύωϧͱ࣮ͯ͠ߦ͢Δ
ը໘࡞
ΦʔϧΠϯϫϯ USB/LAN ฤूιϑτ ը໘σʔλ ը໘ฤू ӡ༻ ӡ༻ ฤू Ұೋ irBoard
Ұൠత ͦͷͰ༰қʹ มߋͰ͖Δ
ϓϩδΣΫτ •PLCʹର͢Δը ໘ηοτ •ͦΕͧΕ͕1ͭͷ PLCʹର͢Δը໘ ηοτΛද͢
ϓϩδΣΫτ࡞ 1.PLCͷϝʔΧʔΛબ 2.ػछબ 3.ଓઃఆ I. ϓϩτίϧ II.IPΞυϨε 4.ΠϯλϥΫγϣϯ
ϖʔδ • ϕʔεͱͳΔ •എܠ৭ •എܠը૾ •෦ஔ •Ճ •আ
෦ w Ϙλϯ w ϥϕϧ w w όʔίʔυϦʔμʔ w
εϥΠμʔ w ϝʔλʔ
௨৴ڥΛ͑Δ
LANଓ Wi-Fi ϧʔλʔ PLC iPad + irBoard Wi-Fi ଓ
֎͔Βͷଓ VPNαʔόʔ(※1)ػೳ͖ ϧʔλʔ (L2TPϓϩτίϧਪ) PLC iPad + irBoard Internet LTE/3G
VPNଓ ※1 macOS ServerͳͲΛ༻͍ͯߏ͢Δ͜ͱՄೳ iOSʹ VPNΫϥΠΞϯτػೳ͕ ඪ४Ͱೖ͍ͬͯΔ
࣮ߦ w 1-$ͱଓ w ෦σόΠε ͷಡΈॻ͖
irBoardͷ׆༻
ϦϞʔτࢹ • Εͨॴ͔Βෳͷঢ়گ ΛѲͰ͖Δɻ • ձࣾΛԣஅͯ͠ࢹ͢ Δ͜ͱՄೳ • αϙʔτ •
ΤϥʔͳͲͦͷͰঢ়گ Ѳ͔ͯ͠Βରॲ • Ҡಈ࣌ؒͷઅ
ϦϞίϯ • ௨ৗλονύωϧݻఆ͞Ε͍ͯΔ • ΕͨՕॴͷૢ࡞ʹ͕͋Δ • ஔ࡞࣌ͷಈ࡞֬ೝɺஈऔΓɺ ௐɺϝϯςφϯε => ೋਓͰ࡞ۀɺλονύωϧΛ૿͢
• irBoardΛϦϞίϯͱͯ͠༻ • Ε͍ͯͯҰਓͰ࡞ۀ͕Մೳ λονύωϧΛ૿͑͢ඞཁͳ͘ iPad 1ͰෳͷஔΛ݉༻Ͱ͖Δɻ • খ͍͞ஔ࣮ݧػͳΒॳΊ͔Βλονύωϧ ૢ࡞ϘλϯΛ͚ͭͳ͍ͱ͍͏બɻ => ߪೖඅɺઢɺՃඅݮɺখܕԽ ެӹࡒஂ๏ਓιϑτϐΞδϟ ύϯ'BDFCPPLϖʔδΑΓ
*P5
͞ΕΔཧ༝ w 8FCٕज़ͷॆ࣮ w ΫϥυαʔϏε w Ϧιʔε αʔόʔͳͲ ࣗͰ࣋ͭඞཁ͕ͳ͍ w
ނোʹΑΔஔ͖͕͑ෆཁ w εΫϦϓτݴޠ w εϚϗλϒϨοτͷීٴ w ͍ͭͰɺͲ͜Ͱɺ୭Ͱ׆༻Ͱ͖Δ w Կ͔ىͬͨ࣌͜ʹձࣾʹ͍ͳͯ֬͘ೝͰ͖Δ w *P5σόΠεͷॆ࣮ w ΠϯλʔωοτʹσʔλΛૹΕΔσόΠε͕૿͍͑ͯΔ
ैདྷͷσʔλཧ ஔ ϑϩΞʔ ձࣾ
*P5Λར༻ͨ͠σʔλཧ ձࣾ# ձࣾ" ձࣾ$ ձࣾΛԣஅͨ͠σʔλऩूɺղੳ͕༰қʹ Ͳ͜Ͱར༻Մೳ w ຊࢧళؒ w औҾઌ
w Ϣʔβʔ ԣஅ
*P5ͷߏ Πϯλʔωοτ Ϋϥυ αʔϏε Ϟϊ *P5(8 *P5EFWJDF
ͱʹ͔࢝͘ΊͯΈΑ͏ w ٿΛ͢Εϓϩʹͳͬ ͯτοϓελʔʹͳΕΔ ΜͰ͢Αɻ w ͔ͩΒ࢝Ί·͠ΐ͏ *P5͕͍͍͢͢͝͝ͱݴ͍·͕͢ʜ ٿʹྫ͑Δͱ ࣮ࡍʹ
w ·ͣ࢝ΊΔ ମݧ͢Δ w ࿅श͢Δ w ΩϟονϘʔϧ w ૉৼΓ w ֶश͢Δ w ϧʔϧ w উͭͨΊͷઓज़ w ૬खͷ͜ͱ ॳΊΔࣄͰ͔Δ͜ͱ͕͋Δ
తΛ࣋ͬͯ w লྗԽ w ੜ࢈ੑ্ w ؒҧ͍Λͳ͘͢ w ίϛϡχέʔγϣϯͷԁԽ w
ख़࿅ͷٕΛ୭ͰͰ͖ΔΑ͏ʹ
ؔ࿈ࣝ $MPVEଆ *P5EFWJDFଆ +BWB 4DSJQUݴޠ ɹɹɾ1)1 ɹɹɾ1ZUIPO ɹɹɾ3VCZ ɹɹɾ/PEFKT ɹɹɾ+BWB4DSJQU
42- $ݴޠ 6/*9 *BB4 1BB4 4BB4 ($1 "84
ΫϥυαʔϏε
ΫϥυαʔϏε w 8FCΞϓϦέʔγϣϯ w "1*͕ఏڙ͞Ε͍ͯΔ w ϚΠΫϩαʔϏε w αʔόʔϨε w
*P5ʹԿΒ͔ͷαʔϏε ͕ඞཁ αʔϏε# αʔϏε" αʔϏε$ "1* "1* "1*
ΫϥυαʔϏε w ඞཁͱ͞ΕΔ༷ʹ߹Θͤͯ࡞Γ͜Ήͷ͕Ұ൪͕ͩʜ w ࣗલͰαʔϏεΛ࡞Δͷ݁ߏେม w ϓϩάϥϛϯάΠϯϑϥɺσʔλϕʔεͷ͕ࣝඞཁʹ ͳΔ w *P5ͰωοΫʹͳΔ෦
$MPVEଆ +BWB 4DSJQUݴޠ ɹɹɾ1)1 ɹɹɾ1ZUIPO ɹɹɾ3VCZ ɹɹɾ/PEFKT ɹɹɾ+BWB4DSJQU 42- 6/*9 *BB4 1BB4 4BB4 ($1 "84
ΫϥυαʔϏε w ఏڙ͞Ε͍ͯΔαʔϏεΛ༗ޮʹ׆༻͠·͠ΐ͏ w جຊֹ݄՝ۚ w ͋Δن·ͰແྉͰ͔ͭ͑Δͷ w ۀͰར༻Ͱ͖ͦ͏ͳ͍͔ͭ͘Λհ
*'555 IUUQTJGUUUDPN
*'555 Πϑτ τϦΨʔ ͜Ε͕ى͖ͨΒ w ࣌ؒʹͳͬͨΒ w ϝʔϧΛૹͬͨΒ w ؾԹ͕͍ͭ͘ͳΒ
w Ӎͷ༧ͳΒ w ༧ఆ͕Ճ͞ΕͨΒ w 50%0͕Ճ͞ΕͨΒ w FUD
*'555 Πϑτ ΞΫγϣϯ ͦΕΛ͢Δ w ϝʔϧΛૹΔ w ௨͢Δ 5XJUUFS -*/&
'# w ϑΝΠϧʹه͢Δ w ԻָΛ໐Β͢ w ిΛ͔͚Δ w ౮ΓΛ͚ͭΔ w ༧ఆΛه͢Δ w FUD
*'555 Πϑτ ҟৗ͕ൃੜͨ͠Β ϝʔϧΛૹΔ ͕࣌ؒདྷͨΒ -*/&ΛૹΔ ϑΝΠϧʹه͢Δ ੜ࢈͕ऴྃͨ͠Β ձࣾʹདྷͨΒ ձ͔ࣾΒग़ͨΒ
ަճʹͳͬͨΒ ༧ఆʹొ͢Δ ԻָΛ໐Β͢ ిΛ͔͚Δ 伴Λ͔͚Δ ౮ΓΛ͚ͭΔ τϦΨʔͱΞΫγϣϯͷ Έ߹ΘͤͰ ༷ʑͳࣄ͕Ͱ͖Δ ҟৗ͕ൃੜͨ͠Β-*/&ͰΒͤΔ ϑΝΠϧ͕Ճ͞ΕͨΒ ੜ࢈͕ऴྃͨ͠ΒϝʔϧͰ͠ΒͤΔ
IUUQTBNCJEBUBJP "NCJFOU
"NCJFOU σʔλΛஷΊͯάϥϑԽͯ͘͠ΕΔαʔϏε IUUQTBNCJEBUBJPΑΓ
"NCJFOU Թ ࣪ ೋࢎԽૉೱ ਫҐ ੜ࢈ Քಇঢ়گ ෩ র FUD
JS#PBSEରԠ w ࣮ߦ࣌ʹ"NCJFOUʹσʔλ Λૹ৴
(PPHMF%SJWF
(PPHMF%SJWF w (PPHMFεϓϨουγʔτ w &YDFM w σʔλͷه w ڞಉ࡞ۀ͕Մೳ w
Ұݩཧ w (PPHMFϑΥʔϜ w ΞϯέʔτϑΥʔϜ w ֤छਃɹ ۈଵɺग़ுɺٳՋɺFUD w ࢴ͔ΒσδλϧσʔλͷసهΛͳ͘͢ w ճ(PPHMFεϓϨουγʔτʹ
(PPHMFεϓϨουγʔτ w σʔλͷه w Թɺ࣪ɺྲྀྔɺిѹɺిྲྀ w 1-$Ͱ4%ΧʔυͳͲʹه͢Δ༷ͳ༻్ஔ͖͑Մೳ
IUUQTTMBDLDPN
4MBDL w νϟοτπʔϧ IUUQTTMBDLDPN w ྨࣅαʔϏε w DIBUXPSL IUUQTHPDIBUXPSLDPNKB
w ίϛϡχέʔγϣϯͷԁԽ w ใͷڞ༗
4MBDL w ϩΪϯάͷهॴ w τϨʔαϏϦςΟ w νϟϯωϧͰࣄΛྨͰ͖Δ
IUUQTUSFMMPDPN
5SFMMP w λεΫཧ w ྨࣅαʔϏε w #BDLMPH IUUQTCBDLMPHDPNKB w
$ISPNF֦ுͰػೳՃ w ΨϯτνϟʔτදࣔͳͲ
λεΫཧ w 50%0Ϧετ w υϥοΫͰ༰қʹϦετؒΛҠಈͰ͖Δ
՝ཧ w &YDFMͰͷཧ w ༰қʹίϐʔ͕࡞ΕΔ w ෳਓͰߋ৽͢Δͱ࠷৽͕ͲΕ͔͔Βͳ͘ͳΔ
՝ཧ w 5SFMMPͰͷཧ w ҰݩཧͰෳਓͰ ͷ࡞ۀʹରԠ w ະॲཧɺॲཧࡁΈ͕ ҰͰ͔Δɻ w
ίϝϯτΛ͢ͱܦ Ң͕࣌ܥྻͰ֬ೝͰ ͖·͢ɻ ୭ʹґཔͯ͠୭͕ର Ԡ͔ͨ͠
ఔཧ w Ͳͷ͕Ͳͷఔʹ͍Δ͔Λදࣔ w *P5EFWJDF͔ΒϦΞϧλΠϜͰߋ৽ w ݱࡏͷঢ়گ͕֬ೝͰ͖Δ w ࣌ؒॱ൪͕ه͞ΕΔ
ΫϥυαʔϏεͱ *P5ͷ࿈ܞ
Ͳ͏ͬͯ࿈ܞ͢Δ͔ʁ w "1*͕༻ҙ͞Ε͍ͯΔ w ϓϩάϥϛϯά͕ඞཁ w ग़དྷΔ͚ͩϓϩάϥϛϯάͳ͠Ͱ Ͱ͖ͳ͍͔ʁ αʔϏε# αʔϏε"
αʔϏε$ "1* "1* "1*
-BEEFS%SJWF • ࣮ݧతϓϩδΣΫτɹ • RubyͰ༰қʹPLCͷσόΠεͷಡΈॻ͖͕Մೳ • plc["DM0"] = 1234 •
Φʔϓϯιʔε • https://github.com/ito-soft-design/ladder_drive/blob/ master/README_jp.md • ͔͜͜ΒͷdevelopϒϥϯνͰ։ൃதͰgemʹ·ͩ ө͞Ε͍ͯ·ͤΜɻ • 0.6.0͕ϦϦʔεʹͳΓ·ͨ͠ɻ • ݩʑͷతɹ=> PLCʹԾPLCΛ࡞Δ • => IoT Gateway ͱͯ͠ͷ༻్ʹΓସ͑
Ծ1-$ w JS#PBSEͱଓՄೳ w 3BTQCFSSZ1Jͷ*0͕ೖ ग़ྗͱͯ͠ར༻
ϓϥάΠϯʹΑΔ֦ு w -%؆୯ͳ͜ͱ͔͠Ͱ͖ͳ͍ͷͰϓϥάΠϯͰ֦ு w 3VCZͰߦఔ -BEEFS%SJWF σʔλۭؒ *'555ϓϥάΠϯ (PPHMF%SJWFϓϥάΠϯ 4MBDLϓϥάΠϯ
5SFMMPϓϥάΠϯ 1-$NBQQFSϓϥάΠϯ ಡΈॻ͖ 3VCZ
ϓϥάΠϯ ઃఆϑΝΠϧ -BEEFS%SJWF ෳͷ1-$͔Βใऩू ϓϥάΠϯΛ͏ͱ ΫϥυαʔϏε JS#PBSE ͦͷଞͷใ ͚ͩ͜͜ͰࡁΉ σʔλۭؒ
۩ମྫ w 5SFMMPͰͷఔཧ w ݱදʹ23ίʔυΛ͚Δɻ γʔϧϥϕϧͰ0, w JS#PBSEͰ23ίʔυಡΈऔΓ w 5SFMMPʹө͞ΕΔ
w ஔʹࡉ͢Δඞཁͳ͘*P5ԽͰ͖Δɻ ݱද " ఔ༻JS#PBSEͰಡΈऔΓ ड͔ΒఔʹҠಈ ࣌ؒه͞ΕΔ
·ͱΊ • IoT • ԿͰ͍͍ͷͰ࢝ΊͯΈ·͠ΐ͏ • Εݟ͑ͯ͘Δ͜ͱ͕͋Δ • ΫϥυαʔϏε •
৽ͨʹ࡞ΔΑΓɺ͋ΔͷΛͯ͠͏ͱ͜Ζ͔Β • APIΛѻ͑Δఔͷࣝඞཁ • ֶश͢Δ • ಘҙͳํΛҾ͖ࠐΉ • Ladder Driveͷ༷ͳΛݟ͚ͭΔ • ίϛϡχςΟ • ؒ • ใަɺڞ༗ • irBoardར༻ͷϝϦοτ • ࣌ؒɺਓһͷݮ => ਓखෆͷղফ • අ༻ͷݮ => ෦ͷݮ => খܕԽ • কདྷύιίϯΛ༻͍ͨஔͷϦϞʔτͱͯ͠ར༻Ͱ͖Δ༷ʹݕ౼த