Mozilla WebThings Gateway 0.9 ์‚ฌ์šฉ ๊ฐ€๋Šฅ, ์Šค๋งˆํŠธ ํ™ˆ ๋ฐ IoT ์žฅ์น˜์šฉ ๊ฒŒ์ดํŠธ์›จ์ด

๋ชจ์งˆ๋ผ ํšŒ์‚ฌ ะพะฟัƒะฑะปะธะบะพะฒะฐะปะฐ ์‹ ์ œํ’ˆ ์ถœ์‹œ WebThings ๊ฒŒ์ดํŠธ์›จ์ด 0.9๋ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์—…๋ฐ์ดํŠธ WebThings ํ”„๋ ˆ์ž„์›Œํฌ 0.12, ํ”Œ๋žซํผ์„ ํ˜•์„ฑํ•˜๋‹ค ์›น์‚ฌ๋ฌผ, ๋‹ค์–‘ํ•œ ์นดํ…Œ๊ณ ๋ฆฌ์˜ ์†Œ๋น„์ž ์žฅ์น˜์— ์ ‘๊ทผํ•˜๊ณ  ๋ฒ”์šฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์›น ์‚ฌ๋ฌผ API ๊ทธ๋“ค๊ณผ์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ์กฐ์งํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ ํ™•์‚ฐ MPL 2.0์— ๋”ฐ๋ผ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

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

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

Mozilla WebThings Gateway 0.9 ์‚ฌ์šฉ ๊ฐ€๋Šฅ, ์Šค๋งˆํŠธ ํ™ˆ ๋ฐ IoT ์žฅ์น˜์šฉ ๊ฒŒ์ดํŠธ์›จ์ด

๋‘ ๋ฒˆ์งธ ์ค‘์š”ํ•œ ํ˜์‹ ์€ ์ด์‚ฌํšŒ ์ง€์› ๊ตฌํ˜„์ž…๋‹ˆ๋‹ค. ๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด 4, ๋‹ค๋ฅธ Raspberry Pi ๋ณด๋“œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ค€๋น„๋œ ๋ถ„๋ฆฌ ๋œ ์กฐ๋ฆฝ Raspbian ๋ฐฐํฌํŒ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋Šฅ์  ๊ฐœ์„  ์‚ฌํ•ญ ์ค‘์—๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ํ‘ธ์‹œ ์•Œ๋ฆผ์„ ํ†ตํ•ด ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๊ธฐ ์œ„ํ•ด ์ด์ „์— ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์‹œ์Šคํ…œ์„ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์ƒˆ๋กœ์šด ์œ ํ˜•์˜ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ(์•Œ๋ฆผ)์˜ ๊ตฌํ˜„์ด ์ฃผ๋ชฉ๋ฉ๋‹ˆ๋‹ค. Notifier๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ง‘์•ˆ์˜ ๋ชจ์…˜ ์„ผ์„œ๊ฐ€ ํŠธ๋ฆฌ๊ฑฐ๋  ๋•Œ SMS ๋˜๋Š” ์ด๋ฉ”์ผ์„ ๋ณด๋‚ด๋Š” ๋“ฑ ๋‹ค์–‘ํ•œ ํ†ต์‹  ์ฑ„๋„์„ ํ†ตํ•ด ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๊ธฐ ์œ„ํ•œ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ๋งŒ๋“ค๊ณ  ๊ทœ์น™์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „์†ก๋œ ์•Œ๋ฆผ์˜ ์šฐ์„ ์ˆœ์œ„๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Mozilla WebThings Gateway 0.9 ์‚ฌ์šฉ ๊ฐ€๋Šฅ, ์Šค๋งˆํŠธ ํ™ˆ ๋ฐ IoT ์žฅ์น˜์šฉ ๊ฒŒ์ดํŠธ์›จ์ด

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

Mozilla WebThings Gateway 0.9 ์‚ฌ์šฉ ๊ฐ€๋Šฅ, ์Šค๋งˆํŠธ ํ™ˆ ๋ฐ IoT ์žฅ์น˜์šฉ ๊ฒŒ์ดํŠธ์›จ์ด

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

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

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

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

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

์ถœ์ฒ˜ : opennet.ru

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