Mozilla๋Š” WebThings ํ”Œ๋žซํผ์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.

XNUMX๋…„๊ฐ„์˜ ์‹คํ—˜๊ณผ ๊ฐœ๋ฐœ ๋์— ๋ชจ์งˆ๋ผ(Mozilla) ์ œ์‹œ ํ”Œ๋žซํผ ์›น์‚ฌ๋ฌผ์ด์ „์— ๊ฐœ๋ฐœ๋œ ํ”„๋กœ์ ํŠธ๊ฐ€ ํฌํ•จ๋œ WebThings ํ”„๋ ˆ์ž„์›Œํฌโ€Šะธ WebThings ๊ฒŒ์ดํŠธ์›จ์ด, ๋‹ค์–‘ํ•œ ๋ฒ”์ฃผ์˜ ์†Œ๋น„์ž ์žฅ์น˜์— ์ ‘๊ทผํ•˜๊ณ  ๋ณดํŽธ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์›น ์‚ฌ๋ฌผ API ๊ทธ๋“ค๊ณผ์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ์กฐ์งํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ ํ™•์‚ฐ MPL 2.0์— ๋”ฐ๋ผ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

WebThings ํ”„๋ ˆ์ž„์›Œํฌ๋Š” Web Things API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง์ ‘ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋Š” IoT ์žฅ์น˜๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ๊ต์ฒด ๊ฐ€๋Šฅํ•œ ๊ตฌ์„ฑ ์š”์†Œ ์ง‘ํ•ฉ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์žฅ์น˜๋Š” ์›น์„ ํ†ตํ•œ ํ›„์† ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด WebThings Gateway ๊ธฐ๋ฐ˜ ๊ฒŒ์ดํŠธ์›จ์ด ๋˜๋Š” ํด๋ผ์ด์–ธํŠธ ์†Œํ”„ํŠธ์›จ์–ด(mDNS ์‚ฌ์šฉ)์— ์˜ํ•ด ์ž๋™์œผ๋กœ ๊ฐ์ง€๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Web Things API์— ๋Œ€ํ•œ ์„œ๋ฒ„ ๊ตฌํ˜„์€ ๋‹ค์Œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ˜•์‹์œผ๋กœ ์ค€๋น„๋ฉ๋‹ˆ๋‹ค.
Python,
์ž๋ฐ”,

๋…น, ์•„๋‘ ์ด๋…ธ ะธ ๋งˆ์ดํฌ๋กœํŒŒ์ด์ฌ.

WebThings ๊ฒŒ์ดํŠธ์›จ์ด ์ด ๋‹ค์–‘ํ•œ ๋ฒ”์ฃผ์˜ ์†Œ๋น„์ž ๋ฐ IoT ์žฅ์น˜์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ๊ฐ ํ”Œ๋žซํผ์˜ ๊ธฐ๋Šฅ์„ ์ˆจ๊ธฐ๊ณ  ๊ฐ ์ œ์กฐ์—…์ฒด์— ํŠน์ •ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์—†๋Š” ๋ฒ”์šฉ ๊ณ„์ธต์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ ์ž‘์„ฑ์ž : Node.js ์„œ๋ฒ„ ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜๋Š” JavaScript์—์„œ. IoT ํ”Œ๋žซํผ๊ณผ ๊ฒŒ์ดํŠธ์›จ์ด๋ฅผ ์ƒํ˜ธ ์ž‘์šฉํ•˜๋ ค๋ฉด ZigBee ๋ฐ ZWave ํ”„๋กœํ† ์ฝœ, WiFi๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ GPIO๋ฅผ ํ†ตํ•œ ์ง์ ‘ ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒŒ์ดํŠธ์›จ์ด๊ฐ€ ์žˆ๋Š” ํŽŒ์›จ์–ด ์ค€๋น„๋œ ๋‹ค์–‘ํ•œ Raspberry Pi ๋ชจ๋ธ์—๋„ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ๊พธ๋Ÿฌ๋ฏธ OpenWrt ๋ฐ ๋ฐ๋น„์•ˆ์šฉ.

Mozilla๋Š” WebThings ํ”Œ๋žซํผ์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฒŒ์ดํŠธ์›จ์ด ๊ฐ€๋Šฅ ํ™•๋ฆฝํ•˜๋‹ค Raspberry Pi ๋ณด๋“œ์— ์ง‘ ์•ˆ์˜ ๋ชจ๋“  IoT ์žฅ์น˜๋ฅผ ํ†ตํ•ฉํ•˜๊ณ  ์›น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์Šค๋งˆํŠธ ํ™ˆ ์ œ์–ด ์‹œ์Šคํ…œ์„ ํ™•๋ณดํ•˜์„ธ์š”. ๋˜ํ•œ ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋‹ค์Œ์„ ํ†ตํ•ด ์žฅ์น˜์™€ ์ƒํ˜ธ ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ถ”๊ฐ€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์›น ์‚ฌ๋ฌผ API. ๋”ฐ๋ผ์„œ ๊ฐ ์œ ํ˜•์˜ IoT ์žฅ์น˜์— ๋Œ€ํ•ด ์ž์ฒด ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค์น˜ํ•˜๋Š” ๋Œ€์‹  ๋‹จ์ผ ํ†ตํ•ฉ ์›น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. WebThings Gateway๋ฅผ ์„ค์น˜ํ•˜๋ ค๋ฉด ์ œ๊ณต๋œ ํŽŒ์›จ์–ด๋ฅผ SD ์นด๋“œ์— ๋‹ค์šด๋กœ๋“œํ•˜๊ณ , ๋ธŒ๋ผ์šฐ์ €์—์„œ "gateway.local" ํ˜ธ์ŠคํŠธ๋ฅผ ์—ด๊ณ , WiFi, ZigBee ๋˜๋Š” ZWave์— ๋Œ€ํ•œ ์—ฐ๊ฒฐ์„ ์„ค์ •ํ•˜๊ณ , ๊ธฐ์กด IoT ์žฅ์น˜๋ฅผ ์ฐพ๊ณ , ์™ธ๋ถ€ ์•ก์„ธ์Šค๋ฅผ ์œ„ํ•œ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ์ถ”๊ฐ€ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ์žฅ์น˜๋ฅผ ํ™ˆ ํ™”๋ฉด์— ํ‘œ์‹œํ•˜์„ธ์š”.

๊ฒŒ์ดํŠธ์›จ์ด๋Š” ๋กœ์ปฌ ๋„คํŠธ์›Œํฌ์˜ ์žฅ์น˜ ์‹๋ณ„, ์ธํ„ฐ๋„ท์—์„œ ์žฅ์น˜์— ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์›น ์ฃผ์†Œ ์„ ํƒ, ๊ฒŒ์ดํŠธ์›จ์ด ์›น ์ธํ„ฐํŽ˜์ด์Šค์— ์•ก์„ธ์Šคํ•˜๊ธฐ ์œ„ํ•œ ๊ณ„์ • ์ƒ์„ฑ, ๋…์  ZigBee ๋ฐ Z-Wave ํ”„๋กœํ† ์ฝœ์„ ์ง€์›ํ•˜๋Š” ์žฅ์น˜๋ฅผ ๊ฒŒ์ดํŠธ์›จ์ด์— ์—ฐ๊ฒฐํ•˜๋Š” ๋“ฑ์˜ ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ†ตํ•œ ์›๊ฒฉ ํ™œ์„ฑํ™” ๋ฐ ์žฅ์น˜ ๋„๊ธฐ, ์ง‘ ์ƒํƒœ ์›๊ฒฉ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ๋น„๋””์˜ค ๊ฐ์‹œ. ์›น ์ธํ„ฐํŽ˜์ด์Šค์™€ API ์™ธ์—๋„ ๊ฒŒ์ดํŠธ์›จ์ด์—๋Š” ์Œ์„ฑ ๋ช…๋ น์„ ์ธ์‹ํ•˜๊ณ  ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์‹คํ—˜์ ์ธ ์Œ์„ฑ ์ œ์–ด ์ง€์›๋„ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: "์ฃผ๋ฐฉ์— ๋ถˆ์„ ์ผœ์„ธ์š”").

์ƒˆ๋กœ์šด WebThings ํ”Œ๋žซํผ ๋ฐœํ‘œ์™€ ํ•จ๊ป˜ ๋ฆด๋ฆฌ์Šค๊ฐ€ ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. WebThings ๊ฒŒ์ดํŠธ์›จ์ด 0.8, ์ด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜์‹ ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

  • ํ™ˆ ๋„คํŠธ์›Œํฌ์˜ ๋ชจ๋“  IoT ์žฅ์น˜ ๋ฐ ์„ผ์„œ์˜ ์ž‘๋™์— ๋Œ€ํ•œ ํ†ต๊ณ„๋ฅผ ์ˆ˜์ง‘ํ•˜๊ณ  ์‹œ๊ฐ์  ๊ทธ๋ž˜ํ”„ ํ˜•ํƒœ๋กœ ํ•ด๋‹น ํ™œ๋™์„ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” ์ด๋ฒคํŠธ ๋กœ๊น… ์‹œ์Šคํ…œ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ถ€์žฌ ์ค‘์— ๋ฌธ์„ ๋ช‡ ๋ฒˆ ์—ด๊ณ  ๋‹ซ์•˜๋Š”์ง€, ์ง‘ ์•ˆ ์˜จ๋„๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ณ€ํ–ˆ๋Š”์ง€, ์Šค๋งˆํŠธ ์†Œ์ผ“์— ์—ฐ๊ฒฐ๋œ ์—๋„ˆ์ง€ ์žฅ์น˜๊ฐ€ ์–ผ๋งˆ๋‚˜ ์†Œ๋น„๋˜์—ˆ๋Š”์ง€, ๋™์ž‘ ๊ฐ์ง€๊ธฐ๊ฐ€ ์ž‘๋™๋œ ์‹œ๊ฐ„ ๋“ฑ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฐจํŠธ๋Š” ์‹œ๊ฐ„, ์ผ, ์ฃผ ๋‹จ์œ„๋กœ ์ž‘์„ฑํ•˜๊ณ  ์‹œ๊ฐ„ ์ฒ™๋„์— ๋”ฐ๋ผ ์Šคํฌ๋กคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    Mozilla๋Š” WebThings ํ”Œ๋žซํผ์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.

  • ์ฆ‰๊ฐ์ ์ธ ๋Œ€์‘์ด ํ•„์š”ํ•œ ์ด๋ฒคํŠธ ๋ฐœ์ƒ ์‹œ ํŠธ๋ฆฌ๊ฑฐ๋  ์ˆ˜ ์žˆ๋Š” ์•Œ๋žŒ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ฒฝ๋ณด๋Š” ์—ฐ๊ธฐ, ๋ˆ„์ถœ ๋˜๋Š” ์ผ์‚ฐํ™”ํƒ„์†Œ ๊ฐ์ง€๊ธฐ์˜ ํ™œ์„ฑํ™”๋ฟ ์•„๋‹ˆ๋ผ ๋„๋‚œ ์‹ ํ˜ธ๊ฐ€ ์žˆ์„ ๋•Œ์—๋„ ์—ฐ๊ฒฐ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ ํ˜ธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด SMS ๋˜๋Š” ๊ธฐํƒ€ ์•Œ๋ฆผ ์ˆ˜๋‹จ์„ ํ†ตํ•ด ์‹ ํ˜ธ ๋ฐœ์ƒ ์•Œ๋ฆผ์„ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    Mozilla๋Š” WebThings ํ”Œ๋žซํผ์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.

  • ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ๋‘ ๋„คํŠธ์›Œํฌ๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์„ ๋•Œ ํ•œ ๋ฌด์„  ๋„คํŠธ์›Œํฌ์—์„œ ๋‹ค๋ฅธ ๋ฌด์„  ๋„คํŠธ์›Œํฌ๋กœ ์ „ํ™˜ํ•˜๋ ค๋ฉด ์ฝ˜์†” ๋ช…๋ น์„ ์‹คํ–‰ํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์›น ์ธํ„ฐํŽ˜์ด์Šค(์„ค์ • โžก ๋„คํŠธ์›Œํฌ ์„น์…˜)๋ฅผ ํ†ตํ•ด ๋„คํŠธ์›Œํฌ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์—ฌ๊ธฐ์—์„œ IP ์ฃผ์†Œ ํ• ๋‹น์„ ๊ด€๋ฆฌํ•˜๊ณ , ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฌด์„  ๋„คํŠธ์›Œํฌ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ , ์•ก์„ธ์Šค ํฌ์ธํŠธ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    Mozilla๋Š” WebThings ํ”Œ๋žซํผ์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.

  • ์ค€๋น„๋จ ๋„คํŠธ์›Œํฌ ์•ก์„ธ์Šค๋ฅผ ์ œ๊ณตํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์Šค๋งˆํŠธ ํ™ˆ ์ œ์–ด ๋…ธ๋“œ๋กœ๋„ ๋ผ์šฐํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” OpenWrt ๊ธฐ๋ฐ˜ ๋ผ์šฐํ„ฐ์šฉ ์‹คํ—˜ ํŒจํ‚ค์ง€์ž…๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ์šฐ๋ฆฌ๋Š” ์Šค๋งˆํŠธ ํ™ˆ ๋ฐ ๋ฌด์„  ์•ก์„ธ์Šค ํฌ์ธํŠธ ์„ค์ •์„ ์œ„ํ•œ ํ†ตํ•ฉ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” Things Gateway์— ๋Œ€ํ•œ ํ†ตํ•ฉ ์ง€์›์„ ํ†ตํ•ด OpenWrt ๊ธฐ๋ฐ˜์˜ ์ž์ฒด ๋ฐฐํฌํŒ์„ ์ค€๋น„ํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค. ํ˜„์žฌ WebThings Gateway๋Š” ์ด๋ฏธ ๋ฌด์„  ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์•„๋‹Œ ๋ฌด์„  ์•ก์„ธ์Šค ํฌ์ธํŠธ๋กœ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€