• 沒有找到結果。

I-Shou University Institutional Repository:Item 987654321/21419

N/A
N/A
Protected

Academic year: 2021

Share "I-Shou University Institutional Repository:Item 987654321/21419"

Copied!
38
0
0

加載中.... (立即查看全文)

全文

(1)

က

က!!!Ӻ!!!ε!!!Ꮲ

ၗ ૻ π ำ ࣴ ز ܌

ᅺ γ ፕ Ў

π཰ 4.0 ඵችࠠ႔ၰᏔϐࣴزᆶว৖

Investigation and Development on Smart

Gateway for Industry 4.0

ࣴزғǺ᝵ػᓄ

ࡰᏤ௲௤Ǻᄃ߷໢ റγ

ӅӕࡰᏤ௲௤ǺෞЎ೯

(2)

π཰ 4.0 ඵችࠠ႔ၰᏔϐࣴزᆶว৖

Investigation and Development on Smart

Gateway for Industry 4.0

ࣴ ز ғǺ᝵ػᓄ

StudentǺYu-Lin Su

ࡰᏤ௲௤Ǻᄃ߷໢ റγ

AdvisorǺDr. Guan-Hsiung Liaw

ӅӕࡰᏤ௲௤ǺෞЎ೯

Co-AdvisorǺV.G.M. Wen-Tung Yu

ကӺεᏢ

ၗૻπำࣴز܌

ᅺγፕЎ

A Thesis

Submitted to Department of Information Engineering

I-Shou University

In Partial Fulfillment of the Requirements

for the Master degree

in

Information Engineering

July, 2017

(3)
(4)

π཰ 4.0 ඵችπ௓႔ၰᏔϐࣴزᆶว৖

ࣴزғǺ᝵ػᓄ!

ࡰᏤ௲௤Ǻᄃ߷໢ റγ

ӅӕࡰᏤ௲௤ǺෞЎ೯ ୋᕴ࿶౛

ကӺεᏢၗૻπำࣴز܌

ᄔ ा

߈ԃٰᒿ๱ᆛၡޑזೲว৖аϷ൪ΕԄس಍ޑว৖ຫᖿԋዕǴނᖄᆛ όӆѝࢂ΋ঁཷۺǴ٠໒ۈৢ௔ӄౚǴӧӚՉӚ཰೿஥ٰΑॠڮ܄ޑว৖Ƕ ځύஒނᖄᆛ஥ډπ཰ғౢޑπ཰ 4.0ǴסᙯΑ໺಍ޑπ཰ғౢኳԄǴ೏േ ࣁࢂಃѤԛޑπ཰ॠڮǶ π཰ނᖄᆛޑ୷ᘵ೛ࡼϩࣁѤঁ೽ϩǴॄೢԏ໣ၗ਑аϷ୺Չࡰзޑ ۭቫး࿼ǵॄೢஒԏ໣ډޑၗ਑ᙯଌډ໦ᆄ٠ஒࡰз໺ၲ๏ۭቫး࿼ޑ႔ ၰᏔǵᙟᇂ᏾ঁቷ୔ޑᆛၡ೛ഢǵаϷॄೢᓯӸаϷϩ݋ၗ਑ޑ໦ᆄ՛ܺᏔǶ ᒿ๱π཰ނᖄᆛמೌޑ࡭ុว৖ǴӭфૈЪڀഢᖄᆛૈΚޑ႔ၰᏔς ԋࣁπ཰ނᖄᆛޑख़ाᜢᗖϡҹǴҁፕЎջගр΋ঁ୷ܭ Node-Red ޑඵች ࠠᖄᆛ႔ၰᏔࢎᄬ٠ჴբځᚉࠠǴᡣ٬Ҕޣѝाڀഢ୷ҁำԄᡄᒠ൩ёԾ Սௗޑπ཰೛ഢ຾Չགෳၗ਑ԏ໣Ǵӕਔёჹၗ਑຾Չ༼᏾ೀ္ǴаϷ೛ी ௓ڋᡄᒠٰӣ௓೛ഢޑၮբǶନԜϐѦǴҁፕЎӕਔଞჹதҔޑфૈගрჹ ᔈޑ RESTful API ٠ჴբϐǴᡣ٬Ҕޣёа೸ၸԜ API ᇸ᚞ޑ໒วಃΟБ

(5)

Investigation and Development on Smart

Industrial Gateway for Industry 4.0

StudentǺ Yu-Lin Su

AdvisorǺ Dr. Guan-Hsiung Liaw

Co-AdvisorǺV.G.M. Wen-Tung Yu

Department of Information Engineering

I-Shou University

ABSTRACT

In recent years, with the rapid development in networks and embedded systems, Internet of Thing (IoT) is no longer just a concept and begins to make revolutions in various industries.

Industrial Internet of Thing (IIoT) is a combination of IoT and industrial manufacturing. IIoT is acclaimed as the fourth generation of industrial revolution, and changes the traditional industrial production model in manufacturing.

The infrastructure of the IIoT is divided into four parts:

1. The sensors for collecting the data and controlling the actuators, 2. The gateways for aggregating the data from the sensors and

translating the protocols among sensors/actuators, 3. The factory connected via internet infrastructure, 4. The cloud servers for data storage and data analysis.

With the contineous development in IIoT technologies, the multifunction gateway with networking capabilities has become a important key component in IIoT. In this thesis, the architecture of a smart IIoT gateway is proposed and its prototype is implemented in a Node-Red-based platform. Via the proposed smart gateway, the users who has only a little basic programming concept can easily set up the control logics to collect data, process data, and control devices. In addition,

(6)

a set of RESTful APIs are also designed for third-party software to easily access the resources of the smart gateway.

(7)

Ҟ

Ҟ ᒵ

ᄔ ा ...I ABSTRACT ... II კ Ҟ ᒵ ...VI ߄ Ҟ ᒵ ... VII ಃ΋ക ᆣ ፕ ... 1 1.1 ߻ق ... 1 1.2 ࣴز୏ᐒᆶҞޑ ... 1 1.3 ፕЎಔᙃ่ᄬ ... 2 ಃΒക ङඳޕ᛽ᆶ࣬ᜢࣴز... 3 2.1 π཰ނᖄᆛ ... 3 2.2 Node-red ... 4

2.3 REST(Representational State Transfer) ... 6

2.4 Up Board... 7 2.5 PLC ... 9 2.6 Sensor node... 10 ಃΟക ඵች႔ၰᏔϐس಍ࢎᄬᆶթ࿿/ၮբኳԄ... 11 3.1 س಍ೕ਱ᆶфૈ ... 11 3.2 س಍ࢎᄬ ... 13 3.3 س಍ϡҹᆶၮբБԄ ... 14 ಃѤക س಍ჴբᆶ໒ว... 16 4.1 ჴբѳѠᆶჴբБݤ ... 16 4.2 ࡌҥ໒วаϷෳ၂ᕉნ ... 18 4.3 س಍фૈၮբࢬำ ... 19 4.4 ໒วҔ PLC ୖኧ ... 23

(8)

4.5 س಍фૈ৖Ң ... 23 ಃϖക ่ፕ ... 27 ୖԵЎ᝘ ... 28

(9)

კ Ҟ ᒵ

კ 1 ໒ว႔ၰᏔ܌٬Ҕޑ UP-board ... 8 კ 2 Detla DVP-12SA2... 9 კ 3 Detla DVP-12SE ... 10 კ 4 ႔ၰᏔس಍ࢎᄬ... 13 კ 5 ၮբБԄ ... 15 კ 6 ჴբࢬำკ ... 16 კ 7 ඵች႔ၰᏔ೬ᡏኳಔ... 17 კ 8 ඵች႔ၰᏔ໒วෳ၂ᕉნ... 18 კ 9 ୏բ௨ำ ... 19 კ 10 ၗ਑ԏ໣ ... 20 კ 11 ၗ਑วթ ... 21 კ 12 ၗ਑ᅱ௓ ... 22 კ 13 ႔ၰᏔޑ Node-red ϟय़... 24 კ 14 PLC API ෳ၂่݀ ... 24 კ 15 ଌр౦தॶෳ၂ᅱ௓фૈ... 25 კ 16 Node-red ኧॶ౦த೯ޕ... 25 კ 17 MQTT ೯ޕૻ৲... 26 კ 18 E-mail ೯ޕૻ৲ ... 26

(10)

߄

߄ Ҟ ᒵ

߄਱ 1 Up Board ฯᡏೕ਱[1]... 8 ߄਱ 2 DVP-SA2 аϷ DVP-12SE ໒วၗ਑ ... 23

(11)

ಃ΋ക

ᆣ ፕ

1.1 ߻ق

ᒿ๱ᆛၡמೌаϷ൪ΕԄس಍ޑว৖Ǵᡣނᖄᆛவ΋ঁཷۺའي΋ᡂ ԋࣁ྽ϞനОआޑ᝼ᚒǶԶቺ୯ගрπ཰ 4.0 ޑཷۺஒނᖄᆛ஥ΕπቷǴ೸ ၸᆛၡஒπቷϣѦεελλޑၗྍ᏾ӝଆٰǴᡣౢጕޑး࿼ϐ໔ૈ୼࣬ϕ ྎ೯аϷҬඤၗૻǴԖձܭа۳Ӛঁౢጕޑး࿼ϐ໔ޑၗૻࢂϕ࣬ᐱҥޑ ௃ݩǴނᖄᆛᡣπቷૈ୼຾Չ׳ᡫࢲޑғౢǶ ނᖄᆛ೸ၸགෳᏔ܌ᄬԋޑคጕགෳᆛၡ(WSN)ٰགޕ౜ჴШࣚޑӚ ᅿ౜ຝǴٯӵྕࡋǵᔸࡋǵߝࡋ฻฻ǴӚԄӚኬૈ୼ϸࢀр܌ӧᕉნނ౛౜ ຝޑኧॶǴ٠ஒѬ໺ଌډ຀ᔕޑᆛၡШࣚǶԶπ཰ނᖄᆛ҅ࢂ೸ၸགෳᏔٰ ԏ໣ғౢၸำ܌ౢғޑӚᅿၗૻǴஒ೭٤ኧᏵଌၲ໦ᆄѳѠϐࡕ຾Չϩ݋Ƕ ᙖҗ೭٤ϩ݋ၸࡕޑኧᏵךॺૈ୼ᡣғౢࢬำ׳уޑԖਏ౗Ǵٯӵԏ໣ғ ౢၸำύϪപᐒڀޑΘڀᑃཞރݩǴ࿶ၸ໦ᆄѳѠޑϩ݋ϐࡕךॺૈ୼ள ޕՖਔᔈ၀׳ඤᐒѠޑΘڀǴ຾ԶႣٛӢࣁᖏਔ׳ඤΘڀޑሡ؃ԶᏤठғ ౢጕޑଶᘍǴ܈ࢂӢࣁؒԖϷਔ׳ඤΘڀԶᏤठόؼࠔޑр౜Ƕ ҅Ӣࣁπ཰ނᖄᆛ܌ૈ୼஥ٰޑ੻ೀࢂӵԜޑѮεǴғౢπ௓೛ഢޑ ቷ୘ค΋ό໒ۈ௢рނᖄᆛޑπ௓೛ഢǶӚৎ೬ᡏѮᔑΨ௢рΑԾৎޑ໦ ᆄၮᆉѳѠǴӵ Amazon ޑ AWSǵMicrosoft ޑ AzureǵIBM ޑ Bluemix ฻ ฻ǶԖΑ଺ࣁȹނȹޑ൪ΕԄπ௓೛ഢǴаϷբࣁȹᆛȹޑ໦ᆄѳѠǴπ཰ ނᖄᆛԾԜவ΋ঁཷۺᙯᡂԋࣁ΋঺ёаჴሞၮՉޑس಍Ƕ

1.2 ࣴز୏ᐒᆶҞޑ

(12)

ஒ٬Ҕޣ಍܈ࢂس಍܌วрޑࡰзᙯଌډགෳᏔǶ႔ၰᏔ೯தڀഢӭᅿ໺ ᒡϟय़ǴҔٰᆶౢጕ΢ӚԄӚኬޑး࿼଺ೱௗǴ೸ၸ೭ኬޑБԄǴёаᡣ೚ ӭόڀഢ TCP/IP ೱጕфૈޑး࿼ёа೸ၸ႔ၰᏔٰஒၗ਑ᙯଌډ໦ᆄǶ ՠࢂҗܭۭቫး࿼аϷᅱ௓೛ഢޑቷৎ౲ӭǴόӕޑቷৎǵόӕޑ೯ૻ ڐۓǴᡣ೭ঁપᆐޑڐۓᙯඤΨᡂளፄᚇǶόӕး࿼܌ӣ໺ޑၗ਑ࠠᄊёૈ ΨԖ܌όӕǴ྽ၗ਑ԏ຾ٰϐࡕǴόёᗉխޑ΋ۓाჹ೭٤ၗ਑բೀ္Ǵՠ ࢂቪำԄٰೀ౛೭٤ၗ਑ਔ۳۳ሡा઻຤௞೚ӭਔ໔ǴӢԜ׆ఈჴբ΋ঁ ׳уᡫࢲǴ٠Ъёаε൯෧ϿӧำԄኗቪ೽ϩ܌઻຤ޑਔ໔ǴѝाԖ΋ۓޑ ำԄᡄᒠ୷ᘵǴ൩ૈ୼ᇸ᚞Ӧჹၗ਑բೀ္ޑඵችࠠ႔ၰᏔ ࣁჴբрᏱԖа΢фૈޑඵችࠠ႔ၰᏔǴஒ٬Ҕ౜Ԗޑ໒วހ Up-board ٰ଺ࣁ႔ၰᏔ໒วѳѠǴ٠٬Ҕ Node-red ٰ຾Չфૈ໒วǴനࡕஒӧ႔ၰ ᏔύࣁфૈᏤΕ RESTful API ᡣ٬ҔޣӧፓҔ႔ၰᏔޑфૈٰ໒วᔈҔำ Ԅਔёа׳уߡճǶ

1.3 ፕ

ፕЎಔᙃ่ᄬ

ҁጇፕЎӅϩϖകǴନҁകϐѦǴӚക࿯Ӽ௨ӵΠǺ ಃΒക ङඳޕ᛽ᆶ࣬ᜢࣴز ϟಏҁፕЎύ܌٬Ҕډޑ೬ฯᡏೕ਱аϷङඳޕ᛽Ƕ ಃΟക ඵችπ௓႔ၰᏔϐس಍ࢎᄬᆶթ࿿/ၮբኳԄ ϟಏҁፕЎ܌ගрޑس಍ࢎᄬǴаϷၮբኳԄǶ ಃѤക س಍ჴբᆶ໒ว ϟಏҁፕЎ໒วаϷჴբޑБݤᆶࢬำǶ ಃϖക ่ፕ

(13)

ಃΒക ङඳޕ᛽ᆶ࣬ᜢࣴز

2.1 π཰ނᖄᆛ

ނᖄᆛ೭΋ঁ࿤ނᖄᆛޑཷۺǴӧ 20 Шइ҃ਔ൩೏Кᅟᇂ૟ӧ҂ٰϐ ၡ೭ҁਜ྽ύගрǶᒿ๱߈൳ԃᆛၡޑזೲว৖Ǵނᖄᆛς࿶όӆѝࢂ΋ঁ ཷۺǶ Զ TwitterǵFacebook ฻ޗဂᆛઠޑԋфᡍ᛾ΑނᖄᆛޑёՉ܄Ǵ೸ၸޗ ဂᆛઠ܌ගٮޑ୍ܺǴךॺஒԾρғࢲڬᎁޑ΋Ϫೱ΢ΑᆛၡǴόፕࢂ܌ӧ ޑՏ࿼ǵ΋஭рၯޑྣТ܈ޣࢂԾيวғޑλ٣Ǵ೿ёа೸ၸޗဂᆛઠϩ٦ рѐǴ೸ၸᆛၡᡣךॺёаӧ΢य़ҬࢬǴᕇڗᒃܻӳ϶ޑ߈ݩаϷ܌ӧՏ࿼ ฻฻ޑᚳεၗૻǶԶޗဂᆛઠ೸ၸϩ݋೭٤ၗૻٰዴߥ٬Ҕޣޑ।य़܌ᡉ Ңޑᒃ϶ၗૻ೿ࢂд܌ёૈሡाޑ(ٯӵ೸ၸدૻჹ၉ޑᓎ౗аϷ੮قϕ୏ ԛኧٰղᘐ٬Ҕޣ཮གྷा࣮ډፔޑၗૻ)Ƕ ᒿ๱ޗဂᆛઠޑԋфǴΓॺ໒ۈ၂๱ஒނᖄᆛᔈҔډځдሦୱǴӵ௲ػǵ ނࢬǵؠ্ٛݯ฻฻[1]ǶނᖄᆛΨסᙯΑ௲ػޑБݤǴނᖄᆛᡣ΋ঁёа ৒ય൳ί࿤Γޑ໦ᆄ௲࠻ԋࣁёૈǶԖձܭа۳ࣁΑεໆ૽ግрૈ୼வ٣ מೌπբޑπΓ܌೛ीрޑ౜ж௲ػڋࡋǴᆛၡ΢ޑϦ໒ፐำ(ӵ MOOCs) Ǵ ᡣᏢғёаᒿਔӧԾρ܌௨ۓޑޜ໕ਔ໔ϣ຾ՉᏢಞǴΨᡣӕᏢϐ໔ёа ೸ၸᆛၡ۶ԜҬࢬၗૻǴаϷᏢಞޑЈள[2]Ƕ Զ྽ךॺஒނᖄᆛ஥ډπ཰ғౢਔǴᆶ΢ॊޑނᖄᆛᔈҔ଺εޑόӕ ൩ӧܭǴπ཰ނᖄᆛޑགෳး࿼(Device)ࢂሡा཰ЬԾՉࡌ࿼ޑǴόႽޗဂ ᆛઠ܈ࢂጕ΢Ϧ໒ፐำ฻฻ޑᔈҔǴ཰Ь໻ሡाᄬᑐ໦ᆄ՛ܺᏔس಍ǴԶ٬ ҔޣሡԾՉᖼວЋᐒ܈ႝတ(Device)ωૈᕇڗ୍ܺӢԜΨᡣπ཰ނᖄᆛԋ ΑϿኧሡाԾՉࡌᄬး࿼(Device)ǵ႔ၰᏔ(Gateway)ǵቷ୔ᆛၡ୷ҁࢎᄬǵ Ҕܭϩ݋ޑ໦ᆄس಍Ǵ೭Ѥঁ೽ϩޑނᖄᆛᔈҔǶ

(14)

ᗨฅࡌ࿼π཰ނᖄᆛሡा΋฽ࣁኧࣗεޑ׫ၗǴՠࢂځ஥ٰޑԏ੻ࢂ όёλ㉚ޑǶπ཰ނᖄᆛճҔၗૻس಍ஒғౢǵނࢬǵᆅ౛฻ࢬำ೸ၸᆛၡ ᏾ӝଆٰǴ٠೸ၸթࡌӧౢጕ΢ޑགෳᏔٰԏ໣ౢጕၗ਑Ǵ೭٤ၗ਑ӣ໺ډ ໦ᆄس಍٠຾Չೀ౛ϩ݋ϐࡕǴᡣౢጕૈ୼୷ܭ೭٤ၗૻٰ຾ՉඵችғౢǴ ຾ԶԖਏޑफ़եғౢԋҁ٠ගϲؼ౗[3]Ƕ೸ၸ೭٤ၗૻΨૈ୼ᔅշᆅ౛໘ ቫ଺р،฼ǶᏃᆅ٠όࢂ؂΋ঁౢ཰೿፾ӝᏤΕπ཰ނᖄᆛǴՠࢂӧނᖄᆛ ௪ଆޑॠڮੁዊύǴπ཰ނᖄᆛஒࣁ౜ԖғౢኳԄ஥ٰѮεޑׯᡂ೭ᗺࢂ คன࿼ᅪޑǶ

2.2 Node-red

“Node-RED is a tool for wiring together hardware devices, APIs and online services in new and interesting ways. [4]”

Node-red ࣁ IBM ܌௢рޑၮՉӧ Node.js ނᖄᆛ໒วπڀǴNode-red ࣁ ຎ᝺໒วᇟقǴࢬำϯޑำԄ೛ीᡣ໒วᡂޑΜϩޔᢀǶ٬Ҕޣѝሡाڀഢ ୷ᘵޑำԄᡄᒠǴ൩ёаᙁൂޑ໒วр܌ሡޑфૈǶԶ Node-red ೸ၸᆛ। ᘤំᏔ൩ёа଺ጓᒠǴᡣ٬ҔޣόѸΠၩᚐѦޑ໒ว೬ᡏǴҺՖ΋Ѡёа΢ ᆛЪڀഢᘤំᏔޑಖᆄး࿼Ǵѝाೱ΢ Node-red ޑᆛ।൩ёаջਔჹำԄ ຾ՉጓᒠǶ2013 ԃ IBM ஒд໒ྍǴளճܭځ໒ྍޑ੝܄Ǵᆛၡ΢Ԗᙦ൤ޑ ঺ҹ৤(࿯ᗺ)ёٮڗҔǴᡣ໒วਔ໔ёаε൯ࡋޑᕭอǶ ٬Ҕ Node-red ᗨฅόϼሡाᚐѦኗቪำԄǴՠऩࢂԖځд׳ӭޑфૈ ሡ؃Ǵ߾໪ԾՉኗቪ functionǶNode-red а JavaScript բࣁ໒วᇟقǴ࣬ၨ ܭ C аϷ JAVA ฻ำԄᇟقǴJavaScript ܰᏢܰҔǴᡣ΋૓٬ҔޣΨૈ୼ᇸ ܰޑኗቪ܌ሡфૈǶ

(15)

z Input Input ࿯ᗺ೯த೿ࢂࢬำԄ໒วޑଆᗺǴҔаௗڙӚԄӚኬૻ৲ ܈ࢂ࠾хǶ Inject - Ҕаวଌෳ၂ૻ৲Ƕ Catch - ҔаਆڗӚঁ࿯ᗺޑ error ૻ৲Ƕ Status - Ҕٰ໺ଌރᄊډځд࿯ᗺǶ

MQTT- MQTT input Ҕٰೱௗ broker аϷु᎙ TopicǶ HTTP - ௗԏ HTTP requestǶ

Web socket ȉ ҔٰவᘤំᏔԏڗ dataǴᡣᘤំᏔᆶ՛ܺᏔϐ໔ё

а຾Չ೯ૻǶ

TCP ȉ ёҔܭௗԏ࠾хૻ৲ޑ TCP portǴΨё଺ࣁ remote TCP

port ٬ҔǶ

UDP - ёҔܭௗԏ࠾хૻ৲ޑ UDP portǶ

Serial ȉ Ҕٰவ local ޑ serial port ᠐ڗ dataǶ

z Output

ଌрၗ਑ਔ܌Ҕޑ࿯ᗺ๊εӭኧ೏ϩଛӧ೭္Ǵ೯த೿ࢂ҃ᆄ ࿯ᗺǶ

Debug - Ҕܭ debug ёೱ่ԿҺՖ࿯ᗺǶ

MQTT - MQTT output Ҕٰೱௗ broker аϷ௢ኞǶ

HTTP response ȉ Ҕٰჹܭ input ਔԏډޑ HTTP request ଺рӣ

ᔈǶ

Web socket - Ҕٰӣ໺ data ๏ᘤំᏔǴᡣᘤំᏔᆶ՛ܺᏔϐ໔ёа

຾Չ೯ૻǶ

TCP - ёҔܭௗԏ࠾хૻ৲ޑ TCP portǴΨё଺ࣁ remote TCP port

٬ҔǴ܈ޣӣᙟவ TCP/UDP input port ԏډޑૻ৲Ƕ

(16)

Serial ȉ Ҕٰ໺ଌૻ৲ډ serial portǶ

z Function

ϩᜪܭԜޑ࿯ᗺ೯தࣁфૈ࿯ᗺǴ೯தՏܭࢬำޑύࢤ

Function ȉ ёҔܭኗቪԾρޑ function codeǶ

Template ȉ ബࡌ΋ঁኬ݈ǴҔٰౢғૻ৲Ƕٯӵ ȸHello{{name}},

Today is {{date}}ȹǶ

Chart tag ȉ ԏ໣ payload ޑၗ਑٠ஒځᛤᇙԋკ߄Ƕ

Delay ȉ Ҕܭۯᒨૻ৲ǵज़ڋ؂ࣾૻ৲ኧǵаϷϦѳޑ໺ଌᐒڋǶ Trigger ȉ ԏډ payload ਔёаౢғٿঁόӕޑ outputǴёբࣁ໒

ᜢ܈ޣᅱ௓٬ҔǶ

HTTP request ȉ Ҕܭวଌೀ౛ࢬำύޑ HTTP request(get, put,

post, patch, delete) Ƕ

TCP request ȉ Ҕܭวଌ TCP request аϷႣයޑӣᔈǶ Switch ȉ ٩೛ۓޑೕ߾ᔅૻ৲଺ϩࢬǶ Range ȉ ஒᒡΕޑኧӷ٩ྣ೛ۓޑКٯࢀ৔(remap)ԋќѦ΋ঁޔ (໻Ѝජጕ܄ᕭܫ) Ƕ CSV, html, json, XML ȉ ёஒૻ৲ᙯԋаа΢਱ԄǶ z Social ᆶޗҬ࣬ᜢޑ࿯ᗺǴ೿ϩᜪܭԜ

E-mail ȉԖ output ၟ input ٿᅿ࿯ᗺǶ Twitter ȉԖ output ၟ input ٿᅿ࿯ᗺǶ

ନΑа΢೭٤ Node-red ҁٰ൩Ԗޑ nodeǴനࣁ΋ঁ໒ྍ೬ᡏ۔ᆛ΢Ψ Ԗ೚ӭΓϩ٦дॺԾρኗቪޑ node ܈ࢂ flow ᡣ node-red ޑфૈ׳уֹ๓Ƕ

(17)

д׳уޑᙁዅǶӧ REST ύ؂΋ঁၗྍ೿җ URI ٰ߄ҢǴၗྍό໻໻ࢂ΋ ঁᓯӸӧ՛ܺᏔޑᔞਢǴ׳ёаࢂ΋ঁ୍ܺǴ܈ࢂ΋ঁܜຝޑၗྍǶRESTful ޑࢎᄬѸ໪ᏱԖ಍΋ޑௗαٰӸڗ܈ᏹբၗྍǴӵ HTTP/1.1 ܌ೕጄޑ GET/PUT/POST /DELETE/PATCH/HEAD/OPTIONǶ REST ٠όࢂ΋঺኱ྗǴԶࢂ΋ᅿ೛ी॥਱Ǵ၀॥਱཮೏൳ᅿ੝ۓޑࢎ ᄬ܌ऊ״Ƕ२Ӄ΋ۓाࢂ Client&Server ޑࢎᄬǵڀԖ಍΋ޑௗαǵคރᄊ ޑ໺ᒡ(Statelessness)ǵኩӸ(Cache)ǵϩቫس಍ȐLayered SystemȑаϷࡪሡ ж䱼ȐCode-On-DemandȑǶ೭ኬޑ೛ीᡣ REST Ԗ׳ӳޑӣᔈೲࡋǴ೸ၸ࠼ ЊᆄޑזڗфૈǴᡣ࠼ЊᆄόҔ΋ޔፎ؃ख़ፄޑၗྍǴΨεεޑफ़եΑ՛ܺ ᏔޑॄᏼǴԶЪ໒ว REST ࢎᄬޑ web ୍ܺΨόሡाబᖼҺՖཥޑ೛ഢǴ ёӧ౜Ԗޑ՛ܺᏔ΢ࢎᄬଆ REST ޑ web ୍ܺǶ

2.4 Up Board

Up Board ࣁ࣬྽ཥᑉޑ΋༧໒วހǴ೛ी΢ᆶ Raspberry Pi ߚத࣬՟Ǵ ځ 20X2 ޑ GPIO ଞဌΨ࣬৒ܭ Raspberry PiǴᡣдёа٬Ҕ೚ӭ஑ࣁ Raspberry Pi ܌௢рޑ঺ҹǶനεޑৡձӧܭځ Up Board ؒԖႽ Raspberry Pi ΋ኬ௦Ҕ ARM ࢎᄬ CPUǴԶࢂҔ X86 ࢎᄬޑ Intel Atom CPUǴ೭ᡣд ޑਏૈᇻᓬܭ Raspberry PiǴу΢ளճܭ X86 ޑࢎᄬǴUp Board όѝૈ୼ၮ Չ linuxǴΨૈ୼ၮՉ windows س಍Ǵᡣ΋૓ႝတ΢ૈၮՉޑำԄǴ೿ૈ୼ ޔௗ৾ډ Up Board ΢ٰၮՉǴόҔ੝ձख़ཥጓ᝿Ƕ

மεޑၮᆉਏૈǴૈ୼ᐉၠ linux ᆶ windows ٿεբ཰س಍Ǵᗋёа٬ Ҕ೚ӭ஑ࣁ Raspberry Pi ܌೛ीޑኳಔаϷᘉкހǶ೭ኬޑ੝܄ᡣ Up Board ૈ୼ᡫࢲޑၮҔӧӚᅿᔈҔ໒ว΢Ƕ

(18)

კ 1 ࣁҁፕЎύჴբ܌٬Ҕޑ Up BoardǴೕ਱ӵ߄਱ 1 ܌Ң კ კ 1 ໒ว႔ၰᏔ܌٬Ҕޑ UP-board ߄਱ 1 Up Board ฯᡏೕ਱[1] ฯᡏ! ᇥܴ! CPU! Intel¯!Atomš!x6.Z9461! Memory! 5GB!DDR4L.2711! ᓯӸޜ໔! 75!GB!eMMC! Ethernet! Gb!Ethernet!RJ.56!x2! USB! USB3/1!x5! USB4/1!x2!

(19)

2.5 PLC

PLC(Programable Logic Controller)ǴёำԄᡄᒠ௓ڋᏔǴӧ౜Ϟޑπ཰ ғౢጕ΢ޑ೚ӭԾ୏ϯ௓ڋ೿ࢂҗдֹٰԋǶPLC ೯தҗ༾ೀ౛ᏔǴᒡΕ ᒡрǴаϷ૶Ꮻᡏ܌ಔԋǶόႽ໺಍җεໆޑᝩႝᏔǵीਔᏔ܌ಔԋޑԾ୏ ϯس಍Ǵ྽ाׯᡂԾ୏ϯࢬำਔǴ٬Ҕ PLC ޑԾ୏ϯس಍όሡाϼӭጕၡ ΢ޑܘකǴ໻໻ሡा׳୏ PLC ΢ޑำԄǴ൩ёаၲԋҞ኱ǶPLC ޑᡫࢲǵ ё᎞ЪำԄܰܭኗቪǴᡣдջߡډΑϞВ٩ฅࢂπቷԾ୏ϯޑਡЈǶ ፕЎύჴբ٬Ҕޑٿීόӕޑ PLCǴу௠ DVPEN01-SL ᆛၡ೯ૻኳಔ ޑ DVP-SA2 аϷ DVP-12SEǶ კ კ 2 Detla DVP-12SA2

(20)

კ 3 Detla DVP-12SE

2.6 Sensor node

ӧނᖄᆛύ೚ӭགෳᏔ٠ؒԖڀഢ୷ҁޑ೯ૻૈΚǴ܈ࢂሡा೸ၸԖ ጕޑБԄٰ໺ᒡǴՠࢂ܎ጕډ႔ၰᏔٰ຾Չ໺ᒡǴอຯᚆ܈೚ؒԖୢᚒǴՠ ࢂຯᚆ܎ߏϐࡕǴӵՖթጕǵ᏾ጕஒ཮ࢂ΋εୢᚒǴԶЪԖጕޑགෳး࿼྽ ғౢጕሡाуΕཥᐒѠਔΨ཮೷ԋ֚ᘋǶӢԜඹԖа΢ୢᚒޑགෳᏔ܈ޣ ࢂး࿼ௗ΢ᏱԖคጕ໺ᒡૈΚޑ Sensor NodeǴᡂԋΑ΋ঁࡐӳޑှ،БݤǶ ೸ၸᏱԖคጕ໺ᒡૈΚޑ Sensor NodeǴᡣךॺёаᇸ᚞ޑஒၗ਑ӣ໺ډ႔ ၰᏔǴԶόҔᏼЈጕၡթ࿿ޑୢᚒǶ

(21)

ಃΟക ඵች႔ၰᏔϐس಍ࢎᄬᆶթ࿿/ၮբ

ኳԄ

ҁക࿯ϩΟλ࿯Ǵಃ 3.1 ࿯ஒϟಏඵች႔ၰᏔޑфૈೕ਱Ƕಃ 3.2 ࿯ϟ ಏس಍ࢎᄬǶಃ 3.3 ࿯ஒϟಏϡҹϐ໔ӵՖၮբǶ

3.1 س಍ೕ਱ᆶфૈ

ҁፕЎ܌ගрϐඵች႔ၰᏔфૈೕ਱ЬाϩࣁѤঁ೽ϩ! z ୏բ௨ำ i. фૈҞ኱ aǵ ٬Ҕޣёа٬ҔԜфૈֹٰԋ΋ೱՍޑфૈ୏բǴவၗ਑ ԏ໣ډᅱ௓วթ฻фૈ೿ёа΋ԛ೛ۓֹԋǶ bǵ ໒р API ٰٮᔈҔำԄ໒ว٬ҔǶ ii. фૈೕ਱ aǵ Ӛঁфૈࣣ໪ۓကӳдॺ܌ሡाޑ೛ۓၗ਑ٮ୏բ௨ำ٬ Ҕ໒рᏹ଺ၗ਑৤܌Ҕޑ APIǴБߡᔈҔำԄ໒วǶ z ၗ਑ԏ໣ i. фૈҞ኱ aǵ ႔ၰᏔૈ୼ۓයԏଌ೛ഢ΢གෳᏔԏ໣ޑၗ਑Ǵ٠ஒၗ਑ ༊໣Կၗ਑৤Ƕ ii. фૈೕ਱

aǵ ٬Ҕ MODBUS/RTU ܈ MODBUS/TCP ޑБԄԏ໣ၗ਑Ƕ bǵ ႔ၰᏔଌрԏڗ೛ഢၗ਑ޑፎ؃Ǵᡣ೛ഢ΢ޑགෳᏔӣ໺

ၗ਑Ƕ

(22)

z ၗၗ਑วթ! j/ фૈҞ኱! bǵ ଞჹ੝ۓၗ਑຾ՉഢҽǶ! cǵ ሡा sensor!data ޑၗ਑ਔǴёӛၗ਑৤ाၗ਑Ǵ႔ၰᏔ཮ Ѻхၗ਑৤ၗ਑٠ӣ໺Ƕ! jj/фૈೕ਱! bǵ ᡣ٬ҔޣԾՉ೛ۓวթၗ਑ጄൎǶ! cǵ ၸ HTTPǵFTPǵemail ܈ MQTT ଺ၗ਑วթ๏੝ۓჹຝǶ! dǵ ஒҁӦᆄၗ਑৤ϣ৒ഢҽǴ೸ၸ HTTPǵFTPǵemail ܈ MQTT ໺ଌԿ໦ᆄǶ! z ၗ਑ᅱ௓! j/ фૈҞ኱! bǵ ᅱ௓ᐒѠၮբǴפрԖୢᚒޑၗ਑Ǵ٠֋ޕ٬ҔޣǶ! cǵ ջਔᅱ௓ၗ਑Ǵӧၗ਑ቪΕၗ਑৤ਔ΋ٳКჹǴр౜ό಄ చҹޑၗ਑ਔวѲ೯ޕǶ! dǵ ٬Ҕޣ٬Ҕ API ᏹբǴԾՉ೛ۓКჹచҹǴڗளၗ਑৤ၗ ਑ࡕၮբǶ! jj/фૈೕ਱! bǵ ٬ҔޣԾՉۓကόӕ೛ഢၗ਑᝾ҢచҹǴаϷ᝾Ңၗૻว թБԄǴхࡴ E.MailǴMQTTǴᙁૻǶ! cǵ ёӧၗ਑ԏ໣ਔ଺᝾Ңచҹ܈ࡺምచҹޑջਔКჹǴ٠ஒ ่݀ӣ໺๏٬ҔޣǶ! dǵ ਥᏵ٬Ҕޣܭ API ᒧۓޑచҹǴჹၗ਑৤ၗ਑ᅱ௓Ƕ!

(23)

3.2 س

س಍ࢎᄬ

ӧπ཰ނᖄᆛύǴ႔ၰᏔஒ଺ࣁ”ނ” ޑۭቫ sensor аϷբࣁ”ᆛ”ޑ໦ ᆄѳѠՍᖄଆٰǴՠࢂۭቫޑး࿼ёૈӚԾ௦ҔόӕޑڐۓǵٰԾόӕޑቷ ৎǴӢԜҁፕЎගрΑ΋ঁૈ୼፾ᔈӚᅿሡ؃ڀԖၨଯᡫࢲࠠޑඵችࠠ႔ ၰᏔࢎᄬǶ ҁፕЎ܌ගрޑس಍ࢎᄬӵკ 4 ܌ҢǴ႔ၰᏔ೸ၸΌϼᆛၡ܈ࢂՉ୏ ᆛၡٰೱ่ډᆛሞᆛၡǶ೸ၸೱௗډᆛሞᆛၡ႔ၰᏔёаஒၗ਑΢໺ډ໦ ᆄѳѠǵௗԏ٠ӣᔈٰԾѦ೽ᆛၡޑ REST APIǵ٬Ҕ E-mail аϷ MQTT ٰ วଌ೯ޕаϷஒၗ਑৤଺౦ӦഢҽǶ

კ 4 ႔ၰᏔس಍ࢎᄬ

Զ႔ၰᏔϣࡌ΋ঁၗ਑৤ٰᓯӸ sensor ӣ໺ޑၗ਑Ǵ٠ࢎ೛΋ঁ RESTful Server ٰගٮ API ୍ܺǶMQTT ServerǵFTP ClinetǵFTP Serverǵ E-mail Clinet ߾Ҕٰჴ౜ၗ਑วթаϷ᝾֋ૻ৲ޑวթфૈǶ Gateway RESTful Server Data Collection Database Scheduler Internet Ethernet / Cellular Ethernet / RS485

Device Device …… Device

Sensor Node Sensor Node Sensor Node …… Ethernet Wi-Fi E-mail Clinet FTP Clinet FTP Server MQTT Server

Cloud Platform RESTful Application

E-mail/MQTT Notification

E-mail/FTP/MQTT/Http Backup

(24)

ᆶۭቫ೛ഢ Devive аϷ Sensor node ޑೱ่БԄ߾೸ၸԖጕޑΌϼᆛ ၡǵRS-485 аϷคጕޑ Wi-FiǶ

3.3 س

س಍ϡҹᆶၮբБԄ

ךॺਥᏵ߻΋࿯ޑس಍ೕ਱ٰ೛ीس಍೬ᡏϡҹǴၮբᜢᖄӵკ 5 ܌ ҢǴ٬Ҕޣ೸ၸԾՉ໒วޑᔈҔำԄڥћ API ٰჹ႔ၰᏔ຾ՉᏹբǶ

аᔈҔำԄำԄวଌ request ๏ၮՉܭ႔ၰᏔ΢ޑ API Server բࣁ᏾ঁ ၮբࢬำޑଆۈᗺǴAPI Server ٠ஒԏډޑၗૻ໺ଌ๏୏բ௨ำǴҗܭ Node-red ࢎᄬޑୢᚒǴคݤᙖҗำԄٰԾ୏ౢғ flowǴѸ໪җᒃԾᏹբ Node-Node-red ϟय़ٰЋ୏ཥቚǴӢԜ،ۓ೸ၸ୏բ௨ำ೭ঁфૈٰڥћၗ਑วթǵၗ਑ԏ ໣ǵၗ਑ᅱ௓೭ΟঁфૈǴ୏բ௨ำ཮٩Ᏽ٬Ҕޣ೛ۓޑਔ໔ۓਔڥћ٬Ҕ ޣ܌ᒧޑфૈǴᡣ٬Ҕޣёа୺ՉӭঁόӕޑࢬำǴԶόѸЋ୏ཥቚӭঁ flow ٰၲԋҞޑǴόၸऩࢂӕਔ୺ՉޑࢬำၸӭǴёૈ཮ၶ΢ critical section ޑୢᚒǴ೭ᗺࢂሡा੮ཀޑǶ ၗ਑วթ೭ঁϡҹӧԏډ௨ำޑڥћϐࡕ཮ӛၗ਑৤ፎ؃٬Ҕޣ܌ࡰ ۓޑၗ਑Ǵ྽ၗ਑วթϡҹԏډၗ਑৤ၗ਑ࡕӆ೸ၸ٬ҔޣࡰۓޑБԄ(E-mailǵMQTTǵHTTPǵFTP)ஒၗ਑วଌрѐǶ Զၗ਑ԏ໣фૈӧԏډ௨ำޑڥћϐࡕ཮ᖃ٬Ҕޣ܌ࡰۓޑး࿼ύԏ ໣ၗ਑Ǵԏډၗ਑ϐࡕஒၗ਑ӸΕၗ਑৤Ǵऩࢂ٬ҔޣԖा؃ჹၗ਑բᅱ௓ ԏ໣ډޑၗ਑ନΑӸΕၗ਑৤ϐΨ཮ӕਔวଌ๏ၗ਑ᅱ௓೽ҹǴၗ਑ᅱ௓ ೽ҹว౜ኧॶ౦தਔǴߡ཮٬ҔᙁૻǵE-mail ܈ MQTT วଌ᝾֋೯ޕ๏٬ ҔޣǶ

(25)

კ 5 ၮբБԄ Application ೸ၸBQJቪΕ ௨ำၗ਑'೛ۓၗ਑ Database API Server ୏բ௨ำ ၗ਑วթ F.nbjm NRUU GUQ IUUQ ၗ਑ᅱ௓ ၗ਑ԏ໣ ୏բ௨ำ٩ྣ೛ۓၗ਑ ٰڥћӚঁфૈ Efwjdf F.nbjm NRUU TNT Xbsojoh User Opujgjdbujpo ၗ਑วթவၗ਑ ৤᠐ڗࡰۓޑၗ ਑٠วଌрѐ

(26)

ಃѤക س಍ჴբᆶ໒ว

ҁക࿯ϩϖλ࿯Ǵಃ 4.1 ࿯ჴբѳѠаϷჴբБݤǴϟಏჴբࢬำаϷ ໒วѳѠ܌٬Ҕޑ೬ᡏኳಔǴ٠ϟಏӼးࢬำǶಃ 4.2 ࿯ϟಏ໒วаϷෳ၂ ᕉნǴ٠చӈᇥܴǶಃ 4.3 ࿯ஒკှӚфૈޑၮբࢬำǶಃ 4.5 ࿯߾཮৖Ң фૈǶ

4.1 ჴբѳѠᆶჴբБݤ

კ 6 ჴբࢬำკ ҁፕЎ٬Ҕ Up board ٰჴբඵች႔ၰᏔޑ໒วѳѠǴբ཰س಍ࣁ Ubuntu 16.04Ǵ܌٬Ҕޑ೬ᡏаϷހҁဦዸచӈӵΠǶ z Node.js (v6.10.0) ˤ z Node-red (v0.17.2) ˤ „ node-red-node-twilio (v0.0.14) [6]ˤ „ node-red-contrib-modbus (v1.2.1) [7]ˤ „ node-red-contrib-looptimer (v0.0.8)[8]ˤ „ node-red-node-mysql(v0.0.16)[9] „ node-red-contrib-mp-function(v1.0.5)[10] z MySQL (v5.7)ˤ

ܭ Up board ΢Ӽးֹ Ubuntu բ཰س಍ࡕǴӃӼး NPM(JavaScript ޑ

ዴᇡфૈ

(27)

ёаᡣ٬ҔޣᇸܰޑܭӚঁόӕހҁޑ Node.js ଺ϪඤǶ z Ӽး n : $sudo npm install n z ೸ၸ n Ӽး Node.js : $sudo n X.X.X(婳⮯ X.X.X ࿼ඤࣁހҁဦ ዸǴٯӵ”sudo n 6.10.0”) z ٬Ҕ n Ϫඤ Node.js 䇰㛔: $sudo n炻຾Εᒧ᏷ฝय़ࡕ٬ҔБӛᗖ΢ Π຾Չᒧ᏷Ǵֹԋᒧ᏷ࡕࡪ Enter ୺Չ)ऩ໻Ӽး΋ঁހҁޑ Node.jsǴ߾ᒧ᏷ฝय़Ψ໻཮Ԗ΋ঁހҁޑ Node.js ё଺ᒧ᏷)ˤ ֹԋ Node.js ޑӼးࡕջёӼး Node-redǶ

z

Ӽး Node-red ;!$sudo npm install -g node-red

!

z

୺Չ Node-red ;!$node-red

!

ֹԋ Node-red ӼးࡕǴѺ໒ᘤំᏔܭᆛ֟ӈᒡΕ” http://127.0.0.1:1880/” ջё຾Ε Node-red ޑᏹբϟय़Ƕ Զ Node-red ঺ҹӼးޑࡰзǴ߾٩ྣӚঁ঺ҹޑᇥܴࣁྗǴ୤΋ሡݙ ཀޑޑࢂǴӼး঺ҹਔሡஒҞᒵϪඤډ Node-red ޑӼးҞᒵۭΠ(ऩӼးਔ ؒԖᡂ׳ Node-red ޑႣ೛ӼးՏ࿼ǴޔௗᒡΕ$cd ~/.node-red ϷёϪඤډ ӼးҞᒵ)Ƕ კ კ 7 ඵች႔ၰᏔ೬ᡏኳಔ OS (Ubuntu16.04) Restful Server Data Collection Database Scheduler E-mail Clinet Node-red Node.js MySQL FTP Clinet FTP Server MQTT Server

(28)

ځύඵች႔ၰᏔޑ೬ᡏኳಔӵკ 7 ܌ҢǴಃΟക܌ගрޑфૈεӭኧ ೿ஒ೸ၸ Node-red ٰჴբǶ

4.2 ࡌ

ࡌҥ໒วаϷෳ၂ᕉნ

კ 8 ඵች႔ၰᏔ໒วෳ၂ᕉნ

ҁس಍ޑᕉნ໒วࢎᄬӵკ 8 ܌ҢǴҗ΋೽բࣁ႔ၰᏔޑ Up Boardǵ ٿ೽բࣁ Device ޑ PLCǵ΋೽໒วҔޑ PCǵ΋ᆵ Wi-Fi RouterǵаϷኧ೽ բࣁ Sensor Node ޑ Up Board ܌ಔԋǶஒ Router ೱ΢ Internet ࡕǴ໒วҔ PCǵ႔ၰᏔǵаϷ PLC ࣣ೸ၸΌϼᆛၡٰᆶ Router ೱጕǴSensor node ߾ ٬Ҕ Wi-Fi ٰᆶ Router ࡌҥคጕೱ่Ǵᡣ႔ၰᏔǵPLCǵSensor nodeǵ໒ วҔ PCǴ೿ೀӧӕ΋ঁ୔ୱᆛၡ྽ύǴаኳᔕჴሞπ཰౜൑ޑᆛၡᕉნǶ

UP Board

UP Board

Sensor Node

Wi-Fi

႔ၰᏔ

Ethernet

Develop PC

Wi-Fi Router

Internet

DVP-12SA2

DVP-12SE

PLC

UP Board

UP Board

PLC

(29)

4.3 س

س಍фૈၮբࢬำ

კ 9 ୏բ௨ำ 2 ୏բ௨ำϐࢬำӵკ!: ܌Ңϩࣁ 4 ؁ᡯǴ؁ᡯచӈᇥܴӵΠ! ! ! Ʉ2 ೯ၸՍௗ႔ၰᏔ RESTful!API ޑᔈҔำԄჹ႔ၰᏔΠࡰзǶ! ! Ʉ3 RESTful!Server ஒࡰз໺ଌ๏ SchedulerǶ! !Ʉ4 Scheduler!٩ྣࡰзڥћၗ਑ԏ໣ǵၗ਑วթǵځдΟঁфૈǶ! PLC Scheduler Data Collection UP Board PLC RESTful Server 2 Internet 1 RESTful Application 1 Sensor Node Sensor Node Node-red Sensor Node Data Publish Data monitor

(30)

! ! კ 10 ၗ਑ԏ໣! 3 ၗ਑ԏ໣ϐࢬำӵკ!21 ܌Ңϩࣁ 6 ؁ᡯǴ؁ᡯచӈᇥܴӵΠ! Ʉ2 ೯ၸՍௗ႔ၰᏔ RESTful!API ޑᔈҔำԄჹ႔ၰᏔΠࡰзǶ! Ʉ3 RESTful!Server ஒࡰз໺ଌ๏ SchedulerǶ! Ʉ4 Scheduler!ஒၗ਑)Sensor!Node ϐઠဦǵၗ਑ԏ໣ϐਔ໔୔ ໔฻*໺ଌ๏!Data!CollectionǶ! Ʉ5 Data!Collection ॄೢԏ໣ Sensor!Node ܈ PLC ΢ࡰۓޑၗ਑Ƕ! ! ! ! Ʉ6 Data!Collection!ஒԏ໣ډޑၗ਑໺ډ DatabaseǶ! ! ! PLC Scheduler Data Collection UP Board 3 4 5 PLC RESTful Server 2 Internet 1 RESTful Application 1 Sensor Node Sensor Node Database Node-red Sensor Node

(31)

! ! კ 11 ၗ਑วթ! 4 ၗ਑วթϐࢬำӵკ!22 ܌Ңϩࣁ 5 ؁ᡯǴ؁ᡯచӈᇥܴӵΠ! Ʉ2 ೯ၸՍௗ႔ၰᏔ RESTful!API ޑᔈҔำԄჹ႔ၰᏔΠࡰзǶ! Ʉ3 RESTful!Server ஒࡰз໺ଌ๏ SchedulerǶ! Ʉ4 !Scheduler!ஒวթၗ਑܌ሡ᠐೛ۓၗ਑໺ଌ๏ Data!PublishǶ! Ʉ5 !RESTful!Server ԏډࡰзࡕǴவ Database ගڗၗ਑Ǵ٠೸ၸ FTPǵMQTTǵE.mail ஒၗ਑วթрѐǶ! ! ! Sensor Node UP Board RESTful Server Internet 1 RESTful Application 1 Sensor Node Sensor Node

E-mail Clinet FTP Clinet FTP Server MQTT Server Database Node-red PLC PLC 2 Data Publish Scheduler 4 4

(32)

! ! კ 12 ၗ਑ᅱ௓! 5 ၗ਑วթϐࢬำӵკ!23 ܌Ңϩࣁ 7 ؁ᡯǴ؁ᡯచӈᇥܴӵΠ! Ʉ2 ೯ၸՍௗ႔ၰᏔ RESTful!API ޑᔈҔำԄჹ႔ၰᏔΠࡰзǶ! Ʉ3 RESTful!Server ஒࡰз໺ଌ๏ SchedulerǶ! Ʉ4 !Scheduler!ஒวթၗ਑܌ሡ᠐೛ۓၗ਑໺ଌ๏ Data!PublishǶ! Ʉ5 Data!Collection ॄೢԏ໣ Sensor!Node ܈ PLC ΢ࡰۓޑၗ਑Ƕ! Ʉ6 Data! Collection! ஒԏ໣ډޑၗ਑໺ډ Database аϷ Data! MoniterǶ! Ʉ7 ӵ݀ԏډޑኧॶ౦தǴ೸ၸ MQTTǵSMSǵE.mailǴ೯ޕ٬Ҕ ޣǶ! ! ! Sensor Node Scheduler Data Collection UP Board 3 4 5 RESTful Server 2 Internet 1 RESTful Application 1 Sensor Node Sensor Node Database Node-red MQTT Server PLC PLC E-mail Clinet SMS Data monitor 5 6

(33)

4.4 ໒

໒วҔ PLC ୖኧ

߄਱ 2 ࣁ PLC ܌٬Ҕޑ໒วၗ਑ǴᗨฅٿѠ PLC ࠠဦόӕǴՠࣣࣁ Detla ޑ DVP سӈǴӢԜ Modbu ܌ჹᔈޑӦࣣ֟࣬ӕǶ ߄਱ 2 DVP-SA2 аϷ DVP-12SE ໒วၗ਑

4.5 س಍фૈ৖Ң

ҁക࿯ஒ৖Ң Node-red ޑϟय़аϷ೸ၸ API ٰᄒڗࡰۓ PLC ΢ࡰۓឯ Տޑၗ਑Ǵ٠ෳ၂ၗ਑ᅱ௓фૈǶ բࣁ᏾ঁ႔ၰᏔфૈਡЈޑ Node-red ϟय़ӵკ 13 ܌ҢǴௗΠٰा٬ Ҕ curl ٰෳ၂ځၗ਑ԏ໣ޑ API фૈǶ

٬Ҕ PLC ೭ঁ API ٰᕇڗ PLC ΢ਔដޑࣾኧǴΨ൩ࢂ modbus address 0x1521 ೭ঁឯՏޑၗ਑Ƕ

ಃ΋ឯՏ fc(Function codes ) ༤Ε 3ǴಃΒឯஒ 16 ຾Տޑ modbus address 1521 ᙯԋ 10 ຾ࣁϐࡕ༤ΕǴಃΟឯՏ߾ࢂ༤ΕԾ 1521 ໒ۈᕴӅा᠐൳ঁ ኩӸᏔǴԶךॺѝ᠐΋ঁǴ܌а༤Ε 1ǴࡰзӵΠǴკ 14 ࣁᒡр่݀Ǵё а࣮ډ႔ၰᏔӣ໺ӣٰޑኧॶǶ

Class Identifiers Modbus Address(HEX) PLC Address Type Comment VAR RTC_SEC 1521 D1313 WORD PLC CLOCK 䦹 VAR RTC_MIN 1522 D1314 WORD PLC CLOCK ⇭ VAR RTC_HR 1523 D1315 WORD PLC CLOCK 㘩 VAR RTC_Day 1524 D1316 WORD PLC CLOCK ⤐ VAR RTC_Month 1525 D1317 WORD PLC CLOCK 㛯 VAR RTC_Week 1526 D1318 WORD PLC CLOCK 怘 VAR RTC_Year 1527 D1319 WORD PLC CLOCK ⹛

VAR Input_COS 1064-1065 D100 REAL COS姯䭾弟⅌(0-360ľ㵕滅㕟) VAR Output_COS 1066-1067 D102 REAL COS姯䭾弟⇡(㵕滅㕟) VAR Input_SIN 1068-1069 D104 REAL SIN姯䭾弟⅌(0-360ľ㵕滅㕟) VAR Output_SIN 106A-106B D106 REAL SIN姯䭾弟⅌(㵕滅㕟) VAR NO200 10C8 D200 WORD 㕟‣200

… … … … VAR NO300 112C D300 WORD 㕟‣300

(34)

curl http://127.0.0.1:1880/PLC?fc=3&address=5409&quantity=1კ 13 ႔ၰᏔޑ Node-red ϟय़ კ 14 PLC API ෳ၂่݀ ௗΠٰ৖Ңၗ਑ᅱ௓ޑ᝾֋೯ޕวଌфૈǴڅཀଌр౦தኧॶҔаෳ ၂ᅱ௓фૈࢂցૈ׳҅தၮբ٠วр᝾֋೯ޕǴӵკ 15 ܌ҢǴࡺཀ٬Ҕ΋ ঁ inject node ٰวଌຬр҅தॶޑኧӷ 99Ǵа᠐ڗࣾኧٰ଺ࣁጄٯǴࣾኧ όёૈԖຬၸ 60 ޑኧॶǴӢԜௗԏډ 99 ೭ঁኧӷߡ཮วр᝾֋೯ޕǶ வკ 16 ёа࣮ډ node-red ѓБޑ debug ឯՏԏډΑૻ৲Ǵਔ໔ࣁΠϱ ޑ 4 ᗺ 10 ϩ 55 ࣾǴԶ MQTT ܭ 4 ᗺ 10 ϩ 56 ࣾௗԏډ೯ޕૻ৲Ǵӵკ

(35)

კ 15 ଌр౦தॶෳ၂ᅱ௓фૈ

(36)

კ 17 MQTT ೯ޕૻ৲

(37)

ಃϖക ่ፕ

೸ၸჴբ೭ঁа Node-red բࣁфૈਡЈޑඵች႔ၰᏔᡣךॺёаѺ೷ р׳уᡫࢲޑπ཰ނᖄᆛس಍Ǵளճܭ Node-red ޗဂޑࢲ៌Ǵ೚ӭࢬำޑ ໒ว೿όҔவᓐډ׀ᒃΚᒃࣁǴNode-red ޑࢬำϯ໒วǴΨᡣ٬Ҕޣѝा ڀഢᙁൂޑำԄᡄᒠ൩ૈၲԋд܌གྷाளфૈǶ ՠ೭ኬޑ໒วБԄΨόӄฅࢂӳೀǴӧᡂளᙁൂޑӕਔΨᡂ࣬Ӧቚу Α΋٤ज़ڋǴٯӵаۭቫး࿼ޑཥቚٰᇥǴ౛གྷޑБԄᔈ྽ࢂᡣ٬Ҕޣёа ೸ၸำԄᙁൂޑཥቚး࿼Ǵ܈ࢂཥቚ΋ঁཥޑࢬำǴՠࢂҗܭ node-red ޑ ࢎᄬךॺѸ໪຾ډ႔ၰᏔޑ Node-red ϟय़ٰЋ୏ཥቚ node ܈ࢬำǴӵ݀ሡ ाཥቚޑး࿼ϼӭǴ܈ࢂӢࣁౢጕޑሡ؃Ǵሡा࿶தޑᡂ׳ғౢࢬำǴஒ཮ ઻຤௞όλਔ໔Ǵ೭ࢂ௦Ҕ Node-red ٰ໒ว܌़ғрளલᗺǴՠࢂ࣬ჹޑǴ ӵ݀౜൑ޑး࿼όӭਔǴ٬Ҕ Node-red ٰ໒วϸॹࢂόᒱޑᒧ᏷ Զҁԛჴբ௦Ҕޑ໒ว݈ UP BoardǴᡏᑈλਏૈமεǴΨૈ୼٬Ҕ࣬ ৒ܭ Raspberry Pi ޑӭኧኳಔǴᡣдૈ୼೸ၸуး೯ૻኳಔǴٰᆶ௦Ҕځд όӕ೯ૻϟय़ޑπ௓೛ഢ଺ೱௗ(RS485ǵRS232 ฻฻)Ǵᗨฅ౜Ϟޑπ௓೛ ഢӭࣁ x86 ࢎᄬǴՠࢂ x86 ࢎᄬޑނᖄᆛ೛ഢӧѱ൑΢ϝฅឦܭϿኧǴӢ Ԝऩ௦Ҕ UP Board ٰ໒วౢࠔ prototype ޑ၉Ǵёૈ཮ၶ΢ሡाӭ޸ᚐѦޑ фϻٰჹำԄዸ଺Ҭΰጓ᝿ޑୢᚒǶԶҁԛ໒ว܌٬Ҕޑ Node-red ٬Ҕ Node.js ଺໒วǴӢԜό཮࿘ډ΢ॊޑୢᚒǴόၸऩࢂ໒วၸำύԖѺᆉा ௦Ҕ C ᇟقٰ଺໒วޑ၉Ǵ೭ࢂॶளԵቾаϷӭу੮ཀޑ΋ᗺǶ

(38)

ୖԵЎ᝘

[1] Li Da Xu, Wu He, Shancang Li, ” Internet of Things in Industries: A Survey,” IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS , vol. 10, no. 4 , pp. 2233-2243, November 2014.

[2] J. Rifkin, ނᖄᆛॠڮ. Translated by ഋሺ, ഋ⃎࣓, Ѡчѱ: ୘ڬрހ, 2014.

[3] A. Botthof, E.A. Hartmann, π཰4.0 ่ӝނᖄᆛᆶεኧᏵޑಃѤԛπ཰ॠ

ڮ. Translated by ቅݒ, Ѡчѱ: Ѥ༧ҏЎബ, 2015.

[4] Node-red. Retrieved Feb 13, 2017, from https://nodered.org/

[5] Up Board | Power Up Your Ideas! - Specifications. Retrieved Jul 18, 2017, from http://www.up-board.org/up/specifications/

[6] node-red-contrib-sms-twilio - Node-RED. Retrieved Jul 18, 2017, from https://flows.nodered.org/node/node-red-contrib-sms-twilio

[7] node-red-contrib-modbus - Node-RED. Retrieved Jul 18, 2017, from https://flows.nodered.org/node/node-red-contrib-modbus

[8] node-red-contrib-looptimer - Node-RED. Retrieved Jul 18, 2017, from https://flows.nodered.org/node/node-red-contrib-looptimer

[9] node-red-node-mysql - Node-RED. Retrieved Jul 18, 2017, from https://flows.nodered.org/node/node-red-node-mysql

[10]node-red-contrib-mp-function - Node-RED. Retrieved Aug 28, 2017, from https://flows.nodered.org/node/node-red-contrib-mp-function

參考文獻

相關文件

To date we had used PSO and successfully found optimal designs for experiments up to 8 factors for a mixture model, nonlinear models up to 6 parameters and also for more involved

Wi-Fi Supported Network Environment and Cloud-based Technology to Enhance Collaborative Learning... • Curriculum is basically a lesson plan that functions as a map

Wi-Fi Supported Network Environment and Cloud-based Technology to Enhance Collaborative Learning.. Centre for Learning Sciences and Technologies (CLST) The Chinese University of

In the third quarter of 2002, the Census and Statistics Department conducted an establishment survey (5) on business aspirations and training needs, upon Hong Kong’s

Provide all public sector schools with Wi-Fi coverage to enhance learning through the use of mobile computing devices, in preparation for the launch of the fourth IT in

 Provide education and training for teachers and school faculty regarding the knowledge about Internet safety, awareness, and strategies of cyberbullying (Tangen &

Provide all public sector schools with Wi-Fi coverage to enhance learning through the use of mobile computing devices, in preparation for the launch of the fourth IT in

community, including the students, teachers, support staff (counsellors, social workers);.. parents and board of governors, are involved in confronting the issue