IoT Linker๋ ์ฐ์ ์ฉ IoT ํ๊ฒฝ์ ์๋ก ์ฝ๊ฒ ์ฐ๊ฒฐํ ์ ์๋๋ก ๋์์ฃผ๋ IIoT ์๋น์ค ํ๋ ์ ์ํฌ์ ๋๋ค. ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด ๊ฐ์ ์ํ ์ปดํจํฐ์์ ๋์ ๊ฐ๋ฅ ํ๋ฉฐ ๋น ๋ฅธ์๋ต์ ์งํฅ ํฉ๋๋ค. ๋ฃฐ ๊ธฐ๋ฐ์ ์ด๋ฒคํธ๋ฅผ ํ์ง ํฉ๋๋ค. ํ์งํ ์ด๋ฒคํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ค์๊ฐ์ผ๋ก ์ก์ ์ ๋ฐ์ํ์ฌ ํ๊ฒฝ์ ์ํฅ์ ์ค๋๋ค. ๋ํ ์ฌ์ฉ์๋ค์ด ์ฝ๊ฒ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ ํ ์ ์๋ ํ๊ฒฝ์ ์ ๊ณตํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค.
- IoT Data Acquisition (๋ฐ์ดํฐ ์์ง)
- IoT Device Management (์ฅ์น ๊ด๋ฆฌ)
- IoT Rule Engine (๋ฃฐ ์์ง)
- IoT Event Management (์ด๋ฒคํธ ๊ด๋ฆฌ)
- IoT Action Management (์ก์ ์ฒ๋ฆฌ)
- IoT Data Analytics (๋ฐ์ดํฐ ๋ถ์)
- Data Tag ๊ธฐ๋ฐ ๋ฐ์ดํฐ ์์ง
- ๊ณ ์ ๋ฐ์ดํฐ ์์ง ์ง์ (ms ๋จ์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ,์์ง๋ ๋ฐฐ์ด ๋ฐ์ดํฐ์ ๋ํ ์ฒ๋ฆฌ,์ด๋ฏธ์ง ๋ฐ์ดํฐ ์ฒ๋ฆฌ)
- ์ ์ฌ์ ๋๋ฐ์ด์ค์์๋ ์๋ฒ๋ฅผ ๊ตฌ์ถํ์ฌ ์ธ์ ์ด๋์๋ ๋๋ฐ์ด์ค๊ฐ ์ฐ๊ณ๊ฐ ๊ฐ๋ฅํ ๋ง์ดํฌ๋ก IoT ์๋ฒ ๊ตฌ์ถ ํ๋ค. (๋ผ์ฆ๋ฒ ๋ฆฌํ์ด)
- ํ๋ซํผ์ ์ต์ ๊ธฐ๋ฅ๋ง ์ ๊ณตํ๋ค. (์์ง(Mqtt),์ฅ์น ๊ด๋ฆฌ,์ฒ๋ฆฌ(Context Engin),์ค์๊ฐ ์ ๊ณต(Websocket),๋ฐ์ดํฐ ๋ถ์(๋ถ์),๋์ฌ๋ณด๋)
- ์ฝ๊ฒ ๋จธ์ ๋ฌ๋ ํ๋ซํผ๊ณผ์ ์ฐ๊ณํ๋ค.(๋ฐ์ดํฐ ๋ถ์์ด ์ฉ์ด)
- Context Package : Rule ๋ฃฐ์ ์ด์ฉํด์ ์ด๋ฒคํธ ๊ฒ์ถ์ ์ํํ๋ ํจํค์ง
- Net Package : ์ธ๋ถ ์ธ๋ถ ์ธํฐํ์ด์ค ํจํค์ง
- Database Package : ๋ฐ์ด๋ฒ ์ด์ค ๊ด๋ จ ํจํค์ง
- Messaging Package : ๋ฉ์์ง ๊ด๋ จ ํจํค์ง
- Golang: https://golang.org/
- nats :https://www.nats.io/
- ๊ฐ ํ๋ก๊ทธ๋จ์ ๋ถ๋ฆฌํ์ฌ ์์คํ ์ ์ข ์์ฑ์ ์ค์ธ๋ค. ๋ฉ์์ง ํ๋ ์ด๋ฒคํธ ๋ฒ์ค๋ฅผ ์ฌ์ฉํ๋ค๋ฉด ๊ฐ ๊ฐ ํ๋ก๊ทธ๋จ ์ค์์ ๋ฉ์์ง ํ๋ฅผ ์ด์ฉํด์ ๋ฐ์ดํฐ ๊ณต์ ๋ฐ ์ํธ ์์ฉ ๊ฐ๋ฅ
- Redis ์์ ์ํํ๋ Device & Tag ๋งค์นญ ๋ถ๋ถ์ ์ง์ ๋ชฝ๊ณ ๋๋น์์ ์ํํ๋๋ก ์์ ์์
- Root/main.go ๋ ๊ฐ App ์คํํ๋ ์ญํ ์ํ
DATA TYPE |
---|
BIT |
NUMBER |
ARRAY |
STRING |
JSON |
IMAGE |
GEO POINT |
Object | ID_TYPE |
---|---|
Location | LOCATION_ID |
Devcie | UUID |
TAG | TAG_NAME |
- Redis๋ฅผ ์ด์ฉํ ์ฌ์ฉ์ ์ ์ ํ์
- ํ ํฌ๋ฐ ๋๋ฐ์ด์ค์ ํ ํฝ์ ๋ ๋์ค์ ์ ์ฅํ์ฌ ์ฒ๋ฆฌ
- ๋๋ฐ์ด์ค ๋ฐ ํ ๊ทธ๋ฅผ ์์ฑํ๋ฉด ํ ํฝ์ ๋ ๋์ค์ ์ ์ฅํ๋ค.
- ํ ํฝ์ MQTT ์ฐ๊ฒฐ์ ๊ตฌ๋ ์ ๋ฑ๋กํ๋ค.
- ๋ฉ์์ง๊ฐ ๋ค์ด์ค๋ฉด ํด๋น ํ ํฝ์ด ๋ฉ์์ง์ ์๋์ง ๊ฒ์ฌํ๋ค.
- ํ ํฝ์ ๊ฒ์ฌํ์ฌ ํต์ฌ ์ ๋ณด๋ฅผ ๊ตฌํ๋ค. ๋๋ฐ์ด์ค ์ ๋ณด/ ํ ํฌ ์ ๋ณด
- ํด๋น ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ๋ฉ์์ง๋ฅผ ์ฒ๋ฆฌ ํ๋ค.
- ์๋น์ค ํฌํธ, Queue ์ฐ๊ฒฐ ์ ๋ณด, ์ธ์ฆ ์ ๋ณด๋ ๋ฐ๋ก ๋ฐ์ , ์ธ์ฆ ์ ๋ณด๋ Redis ๋ฅผ ์ด์ฉํด์ ์ฒ๋ฆฌ ๊ฐ๋ฅ
์๋ฌธ์๋ง ์ฌ์ฉ ๊ธฐ๋ณธ TAG ํค tag ๋ณ ํ ํฝ์ ๋ ๋์ค์ ์ ์ฅํ์ฌ ์บ์ฌ๋ก ์ฌ์ฉ ์๋์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํจ ๋ค๋ฅธ ํ๋กํ ์ฝ์์๋ ๋ ๋์ค๋ฅผ ์ด์ฉํ๋ฉด ์ฝ๊ฒ ๋๋ฐ์ด์ค์ ์ ๊ทผ ๊ฐ๋ฅํ๋ค. (๊ธ์ ์ ๊ณ ๋ ค ) topic:<์ค์ ํ ํฝ> topic์ ์ ๋ฐ์ดํฐ ํ์ ์ผ๋ก ์ ์ฅํ์ฌ ์ค๋ณต์ ๋ง๋๋ค. sadd,smember
- ์ผ์ ์๊ฐ๋ง๋ค ๋ฃฐ ๊ฒ์ฌํ ํด๋น ์ด๋ฒคํธ ๋ฐ์
WAITING ํ์์๋ฆฌ์ฆ ๋ฃฐ (๋ค์ด์ค๋ ๋ฐ์ดํฐ์ ์์ฐจ์ ์ธ ๋ชจ๋ ํ๊ตฐ ํธ์ฐจ ๋ฑ์ ๊ฒ์ถ ํ์ฌ ํ๋ณํ๋ ๋ฃฐ )
๋ณตํฉ ๋ฃฐ (๋ณตํฉ์ ์ธ ํ ๊ทธ์ ์ ๋ณด๋ก ์ด๋ฒคํธ ํ๋ณ ->๋ ๋์ค๋ฅผ ์ด์ฉํ์ฌ ๋ณตํฉ์ ์ธ ํ ํฌ ์ ๋ณด๋ฅผ ๋ฌถ์ด์ ์ ์ฅ)
๋จธ์ ๋ฌ๋ ๋ชจ๋ธ (๋จธ์ ๋ฌ๋๋ชจ๋ธ์ ํ๋ณ๋ ํจ์ฒ๋ค์ ๋ณตํฉ๋ฃฐ์ ์ด์ฉํ์ฌ ํ๋ณ )
- ํ ์์ ๋ชจ๋ธ์ ์ ์ฉ ํ ์ ์๋ ํ๋ ์ ์ํฌ ๊ตฌ์ถ
- ์ค๋์ค ๋ชจ๋ธ ์ง์(๋ชจ๋ธ ๋ฐ์ดํฐ ONNX)
CANCELLED ์ผ์ ์ฃผ๊ธฐ๋ง๋ค ํ์ผ ์ ์ฅ(์ ๋ง ํ์ํ์ง ์๋ฌธ ๋ชฝ๊ณ ๋๋น์์ ์กฐํํด์ ๋ณด์ฌ์ฃผ๋๊ฒ ๋ ํจ๊ณผ์ )
- ํซ ๋ฐ์ดํฐ (๋ง์ ์์ ๋ฐ์ดํฐ๋ฅผ ๋น ๋ฅด๊ฒ ์ธ์ฌ์ดํธ ๋ถ์)
- ์ฝ๋ ๋ฐ์ดํฐ (๋ฐ์ดํฐ๋ฅผ ๋์ ํด์ ๋ฐ์ดํฐ ๋ถ์)
- ์คํธ๋ฆผ ๋ฐ์ดํฐ ๋ถ์ (์ค์๊ฐ ํต๊ณ ๋ถ์, ์ด๋ํ๊ท )
- Tag ๋ณ ์์ ฏ ํ์
- ๊ทธ๋ฃน ๋ณ ์์ ฏ ํ์
- ์นด๋ UI
- Websocket
- ์ฌ์ฉ์ ์์ง ์ ๋ณด(๋ฉ์ผ )
- ๋ฑ๊ธ(admin,manager,customer)
- manager,admin,costomer
- ์์ ๊ถ ๊ฐ๋ ์ด ํ์
- Tag, Group , Device ์ค๋ ๊ฐ๋ ์ด ํ์ ํ๋ค.
- ํฅํ๋ฅผ ์ํ์ฌ ๊ตฌํ์ ๋ฏธ๋ฃธ
- Tag ๋ณ๊ฒฝ ์ด๋ฒคํธ๋ฅผ ๊ฐ์งํ์ฌ Bloker์ ๋ฑ๋ก์ ํด์ ํ๊ฑฐ๋ ๋ฑ๋ก ํ๋ค.
- Read/Write tag ์ง์
- ์ค์นด๋ค์ ์ ์ฌํ๊ฒ ๊ตฌ์ฑ ํ์(๊ธฐ์กด PLC ๋ฐ์ดํฐ์ ์ ํฉ ํ๋๋ก ๊ตฌ์ฑ)
- @listens_for(Image, โafter_deleteโ) ์ฐธ๊ณ
- ๋ฐ์ดํฐ ํ์
- ํ ๊ทธ ์ด๋ฆ
- ๋๋ฐ์ด์ค์์ ์ ์ผํ ์ด๋ฆ์ ๊ฐ์ง
- Topic ์ ๊ฐ์ง ๋ ๋์ค์ ํ ํฝ์ ๋ฑ๋ก ํ๋ค.
- LocationType ์ง์
- ๋๋ฐ์ด์ค ์์น
- ๋ ผ๋ฆฌ์ ์์น๋ gps ์ ๋ณด ๋ณด์
- ๋น๋ฉ ๊ณต์ฅ ์์ฃผ
- TAG๊ฐ ์กด์ฌํ๋ ๋๋ฐ์ด์ค
- ํ๋์จ์ด ๋ฐ ์ํํธ์จ์ด
- ํ ํฌ๋ฅผ ๋ณด์ ํ๊ณ ์์
- UUID๊ธฐ์ค์ ID๋ฅผ ๊ฐ์ง: 022db29c-d0e2-11e5-bb4c-60f81dca7676
- ๋๋ฐ์ด์ค ํ์ ์ ์ ์ ์ผ๋ก ํ๋๊ฐ ๋์ ์ผ๋ก ํด์ผํ๋๊ฐ?
- Rule
- ์คํ ์ก์ N๊ฐ
- ๋ฐ์ ์ด๋ฒคํธ N๊ฐ
- ๋ฃฐ ์ข ๋ฅ
- ๋ฃฐ์ ๋ฐ์ดํฐ ํ์ ๋ณ๋ก ์ ์
- ๋ฃฐ์ ์์ Json ๋ฐ์ดํฐ๋ฅผ ์ ์ฐํ๊ฒ ์ฒ๋ฆฌ ํ๋๋ก ๊ตฌ์ฑ ํ์(์คํฌ๋ฆฝํธ ์์ง)
DATA TYPE Rule All ๊ธฐ๋ณธ ์ ์ฅ BIT True/flas,On/Off NUMBER </>,= , ๋ฒ์๋ด, ๋ฒ์ ๋ฐ / ARRAY ํฉ๊ณ/ํ๊ท /๋ถ์ฐ/๊ธฐ์ธ๊ธฐ/๋นํธ์ฐ์ฐ STRING ๊ฐ๋ค / ๋ค๋ฅด๋ค Json ์์ฑ ์ฐ์ฐ
- ๋ฃฐ์ ๋ฐ๋ผ์ ์ํ๋๋ ์ก์
- ์ ์ฅ
- ๋ฉ์์ง ์ ์ก
- ์ถ๊ฐ๋ฃฐ ์ง์
- ์๋ก์ด ํ ํฌ๋ฅผ ๋ง๋ค์ด์ ๋ ๋์ค์ ์ ์ฅ
- ์ฐ์ฐ ์ ์ฅ
- ๋ฃฐ์ ๋ฐ๋ผ์ ์ด๋ฒคํธ ๋ฐ์
- ๊ทธ๋ฃน์ ๋ฐ๋ผ์ ์ด๋ฒคํธ ๋ฐ์
- ํ์ ๋ผ์ธ์ ๋์คํ๋ ์ด ํ๊ธฐ ์ข์ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ ธ์ผ ํจ
- ์ด๋ฒคํธ ํ์ ์ ๊ฐ์ง๋ค. (์๋,์๋ฆผ,์ ์,ํ์ )
- ์ด๋ฒคํธ ์ฒ๋ฆฌ ํ์คํ ๋ฆฌ ์ ์ฅ
- ์ก์ ์ฒ๋ฆฌ ํ์คํ ๋ฆฌ ์ ์ฅ
- ๋ณต์์ ๋์ฌ ๋ณด๋ ๊ตฌ์ฑ ๊ฐ๋ฅ
- Layout ๊ตฌ์ฑ์ ๋ํ ๋ฐฉ์ ๋ชจ์
- ์ฌ์ฉ์ ๊ตฌ์ฑ ๊ฐ๋ฅ
- ์ฐ์ ์ฉ ๊ตฌ์ฑ์ ์ ํฉํ๋๋ก ๊ตฌ์ฑ
- SCADA ์ํ์ ๋ํด์ ์๊ฐํด ๋ณด์
- TAG๋ณ ์์ ฏ ์ง์
- ๋ฐ์ดํฐ ํ์ ์ ๋ฐ๋ผ์ ์ง์
- ๊ฐ์ฒด๋ ๋ชจ์์ ์ง์ ํ๊ฑฐ๋ ๋ณต์๋ ์ง์
- ๋ณต์์ ์์ ฏ ๊ตฌ์ฑ
- ๊ทธ๋ฃน ๊ฐ์ฒด ์ง์ (๊ทธ๋ฃน ๊ฐ์ฒด ๋ชจ์๋ ์ฌ๋ฌ๊ฐ์ง ๊ตฌ์ฑ)
- ๊ฐ๋จํ๊ฒ ๋ณด์ด๋ ๋ทฐ๋ ์์์ผ๋ฉด ํ๋ค. ํด๋ฆญ์ ํฐ ํ๋ฉด์ ๋ณด์ฌ์ค(์์ด๋์ด)
- ์ฃผ๊ธฐ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ค.
- ๋์ผ ํ๋ก์ธ์ค๋ฅผ ์ด์ฉํด์ ๋ฐ์ดํฐ๋ฅผ ์ ์ง ์์ด ๊ณ์ ์์งํ๋ค.
- ์ ๋ฌ๋ฆฌ ๋ชจ๋ํฐ๋ง ๊ธฐ๋ฅ์ ๋ฃ๋๋ค.
- ์ ๋ฌ๋ฆฌ์์ ์์ ์ ์ถ๊ฐํ๋ ๋ฐฉ์์ ์ด์ฉํด์ Chain ํํ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ค.
- ๊ทธ๋ฃน๋จ์๋ก ํ ํฌ ์ฒ๋ฆฌ
- ์ด์ ํด๋์ค๋ก ์ฒ๋ฆฌํ ํ์ ์์
- ๋ ๋์ค์ ๋ฃ์ ๋ฉ์์ง๋ฅผ ๋ฉ์์ง ์ฒ๋ฆฌ ํ๋ก์ธ์ค๋ก ์ฒ๋ฆฌ ํ๋ค.
- ๊ทธ๋ฃน๋จ์ ํ๋ก์ธ์ค ํ ๊ทธ ๋จ์ ํ๋ก์ธ์ค
- ํด๋น ๋ฉ์์ง์ ์์ฑ์ ๊ฐ์ ๋น๊ตํด์ ์ฒ๋ฆฌ ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ๋ค.
- ์ด๊ธฐ์๋ ํด๋น ํ ํฌ ๊ธฐ๊ฐ ๋ฑ์ ์ง์ ํ์ฌ ๋ฉ์์ง๋ฌ๋ฅผ ์ ์ฅํ๋๋ก ํ์
- ๊ธฐ๊ฐ,Tag or Group ์ง์ , ์กฐ๊ฑด ์ง์ ๋ณต์์ ์ก์ ์ ์ง์
- ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๊ธฐ๋ฅ์์ค๊ณ ํ์
์ปจํ ์คํธ ์ฒ๋ฆฌ ๊ตฌ์กฐ | |
---|---|
๋ฆฌ์์ค: Tag/ Group/ ๋ฐ์ดํฐ (๋ฉ์์ง) | |
์กฐ๊ฑด : < > = ๊ธฐ๊ฐ | |
์ก์ : ํ์ผ์ ์ฅ | |
Action ์ฌ์ฉํ ์ ์๋ Adpter
- FilerAdapter
- RestAdapter
- MailAdapter
- ๋๋ฐ์ด์ค ํ์์์ ์๊ฐ ๋์ ๋ณด์ ํ ํ ๊ทธ์ ๋ฉ์์ง๊ฐ ์์ ๊ฒฝ์ฐ TimeOut ์ผ๋ก ํ๋ณ
- ๋๋ฐ์์ ์ฃผ๊ธฐ์ ์ผ๋ก ํ์ ๋ ๋ ค์ ์ปค๋ฅ์ ์ ํ์ธ (์ ์์ ์ธ ์๋์ด ์ด๋ ค์)
- task Type ์ฃผ๊ธฐ์ ์ธ ์์
- ์ผํ์ฑ ์์
- ์ผ์ ๊ธฐ๊ฐ๋์ ์ ์ง๋๋ ์์ ?? ๊ฐ๋ฅํ์ง ํ์ธ ํ์
- ๊ธด ์๊ฐ์ด ๊ฑธ๋ฆฌ๋ ์์
- ๋ ๋์ค ํ๋ฅผ ๊ฐฑ์ ํ๋ค.
- ๋ฉ์์ง๋ฅผ ์์ ํ๋ฉด ๋ ๋์ค์ ๋ฃ๋๋ค. Set Json ํํ๋ก ๋ฃ๋๋ค.
- ํ๋ ๊ทธ๋ฃน ๋ฐ ํ ํฌ์ ์ฒ๋ฆฌ ๋ฐฉ์์ ๋ฐ๋ผ์ ์ฒ๋ฆฌ ํ๋ค.
- ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฃฐ์ ๋ฐ๋ผ์ ๊ทธ๋ฃน์ด๋ ํ ๊ทธ์ ์ ๋ณด๋ฅผ ์ฒ๋ฆฌ ํ๋ค. ์์ง ๋ฃฐ์ ์ ๋ณด ์ฒ๋ฆฌ ๋ฐฉ์์ ์์ง ๋ฏธ์
- Dashboard Websocket ๊ธฐ๋ฅ ์ถ๊ฐ
- IoTLinker run
mosquitto -v or service moquitto start
์๋น์ค ์๋์์ systemctl enable mongod.service
์๋น์ค ์๋ ์์ sudo service mongod start
- use pyMongo
- use mongoengin
- http://docs.mongoengine.org/
- ๊ฐ ๋ ธ๋๋ค์ด ๋๋ฐ์ด์ค ์ ๋ณด๋ฅผ ๊ฒ์ดํธ์จ์ด์ ๋ฑ๋กํ๊ณ ์์ฒญ์ UUID ๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๊ณตํ๋ค.
- ๋๋ฐ์ด์ค ๋ฐ์ดํฐ ์บ์ฌ ๊ธฐ๋ฅ์ ๋ด๋น
- ๊ฐ ๋ ธ๋๋ฅผ ๋คํธ์ํฌ๋ก ๊ตฌ์ฑํ๊ณ ์๋จ์์ ๊ฒ์ดํธ ์จ์ด๋ฅผ ํตํด์ ์ฌ๋ฌ ๋ ธ๋๋ฅผ ํตํฉ