Orodha ya maudhui:

UCL-IIOT - Mfumo wa Kengele ulio na Hifadhidata na Nyekundu-nyekundu: Hatua 7
UCL-IIOT - Mfumo wa Kengele ulio na Hifadhidata na Nyekundu-nyekundu: Hatua 7

Video: UCL-IIOT - Mfumo wa Kengele ulio na Hifadhidata na Nyekundu-nyekundu: Hatua 7

Video: UCL-IIOT - Mfumo wa Kengele ulio na Hifadhidata na Nyekundu-nyekundu: Hatua 7
Video: Дж. Уорнер Уоллес: Христианство, мормонизм и атеизм-что... 2024, Novemba
Anonim
UCL-IIOT - Mfumo wa Kengele ulio na Hifadhidata na Nyekundu-nyekundu
UCL-IIOT - Mfumo wa Kengele ulio na Hifadhidata na Nyekundu-nyekundu
UCL-IIOT - Mfumo wa Kengele ulio na Hifadhidata na Nyekundu-nyekundu
UCL-IIOT - Mfumo wa Kengele ulio na Hifadhidata na Nyekundu-nyekundu

Kusudi la ujenzi huu ni kufundisha juu ya kuunganisha Arduino na Node-nyekundu na hifadhidata, ili uweze kuingia data na pia kukusanya kwa matumizi ya baadaye.

Kwa ujenzi huu mimi hutumia mfumo rahisi wa kengele ya arduino ambayo hutoa nambari 5 za data, kila moja imetengwa na koma.

Sio lazima kuwa na idadi halisi ya data na programu inaweza kuwa chochote.

Sehemu muhimu ni kwamba data imegawanywa na koma kama inavyoonekana kwenye skrini hii.

Pato linaweza kwa mfano kuangalia kama hii: "324, 0, 0, 1, 1"

(programu iliyokamilishwa na maagizo ya uundaji wa arduino imeunganishwa chini ya mafunzo haya)

Hatua ya 1: Kuanza na Node-nyekundu

Kuanza na Node-nyekundu
Kuanza na Node-nyekundu

Kwa mafunzo haya tunadhani tayari umeweka Node-nyekundu, lakini kuna vidonge vingine ambavyo hutumiwa kwa mradi huu ambavyo tunahitaji ifanye kazi

Pata kitufe cha "Dhibiti Palette" na usakinishe palettes zifuatazo.

  • node-nyekundu-dashibodi
  • node-nyekundu-node-mysql
  • nodi-nyekundu-nodi-arduino
  • node-nyekundu-node-serialport

Inapaswa kuonyesha palettes mpya upande wa menyu ya kitufe-nyekundu.

Hatua ya 2: Kugawanya Takwimu katika Node-nyekundu

Kugawanya Takwimu katika Node-nyekundu
Kugawanya Takwimu katika Node-nyekundu

Sasa kwa kuwa Node-nyekundu iko tayari kwenda tunahitaji kuanza kwa kugawanya data zetu katika vipande tofauti.

Hii ndiyo sababu tulihakikisha kuwatenganisha na koma ndani ya nambari ya Arduino.

Kwanza wacha tuanze kwa kuweka chini nodi ya Kuingiza ya Arduino, inayopatikana kwenye jopo la upande wa kushoto.

Unahitaji kuhakikisha kuwa ina serial sahihi (Mgodi hutumia COM4) bandari na kiwango cha Baud (katika programu yangu ninatumia kiwango cha baud 9600)

Ikiwa imewekwa kwa usahihi, inapaswa kusema kuwa imeunganishwa.

Ifuatayo tunaunda kizuizi cha kazi cha Javascript na kuiunganisha baada ya nodi ya uingizaji ya Arduino. Kizuizi hiki kinaturuhusu kupanga programu kwenye Javascript, na hapa tunaandika nambari ambayo inaweza kugawanya data yetu kwa kila koma.

Katika kizuizi hiki cha kazi niligawanya data yangu 5 kwa kutumia nambari ifuatayo:

var m1 = {mada: "light1", mzigo wa malipo: msg.payload.split (",") [0]}; var m2 = {mada: "light2", mzigo wa malipo: msg.payload.split (",") [1]}; var m3 = {mada: "light3", mzigo wa malipo: msg.payload.split (",") [2]}; var m4 = {mada: "millis", malipo ya malipo: msg.payload.split (",") [3]}; var m5 = {mada: "onoff", malipo ya malipo: msg.payload.split (",") [4]}; kurudi [m1, m2, m3, m4, m5];

(badilisha nambari inahitajika)

Hakikisha node imewekwa kwa matokeo 5 (au sawa yako)

Kama inavyoonekana kwenye skrini, sasa tuna matokeo 5 ambayo kila mmoja huunganisha hadi nodi ya utatuzi na nodi ya dashibodi ya maandishi. Hii itakuwa muhimu kwa wakati tunahitaji kuiona kwenye UI.

Hatua ya 3: Hifadhidata na Wampserver

Hifadhidata na Wampserver
Hifadhidata na Wampserver

Ili hifadhidata yetu ifanye kazi unahitaji kuwa na Wampserver iliyosanikishwa. Baada ya kusanikishwa na kuonyesha kama ikoni ya kijani (baada ya kuanza huduma zote), unapaswa kufungua "phpMyAdmin" ambayo inapaswa kukuleta kwenye skrini ya kuingia. hapo awali ilibadilisha, ingiza tu "mzizi" katika jina la mtumiaji na kuingia.

Bonyeza kitufe cha phpmyadmin chini ya zana chini kwenye upau wa kushoto na inapaswa kufungua menyu ya hifadhidata, ambayo inaonekana kama inavyoonekana kwenye picha hapo juu.

Unda hifadhidata mpya na uipe jina linalohusiana na mradi wako, yangu inaitwa "mfumo wa kengele" (majina haya yatakuwa nyeti kwa kesi)

Chini ya hifadhidata hiyo, tengeneza meza mpya na uipe jina, yangu inaitwa "alarmdata"

itauliza ikiwa unataka kutumia "latin1_swedish_ci" na tunaiweka kama hiyo.

Sasa unaunda meza 6 (1 zaidi ya data tuliyonayo)

Jedwali la kwanza linahitaji kutumia hifadhidata "maandishi ya muda mrefu"

na mkusanyiko wote wa data hutumia "maandishi ya kati"

Hakikisha kuwataja. (mkusanyiko wa data wa kwanza unapaswa kuitwa "wakati"

Hatua ya 4: Hifadhidata

Hifadhidata
Hifadhidata

Hifadhidata ya Wampserver inapaswa kuangalia kitu kama hiki.

(lakini bila data halisi, kwani bado hatujapata hiyo)

Hatua ya 5: Node-nyekundu kwa Wampserver

Node-nyekundu kwa Wampserver
Node-nyekundu kwa Wampserver

Sasa tunataka data tunayoitoa kutoka kwa arduino yetu kwenda kwa Wampserver yetu.

Anza kwa kuunda kizuizi kingine cha Javascript na uiunganishe na node yetu ya uingizaji wa arduino.

Katika kizuizi hiki cha maandishi, kwa mara nyingine tena tuligawanya data zetu, lakini tunaiingiza kwenye hifadhidata yetu pia.

data ya var = msg.payload.split (","); var Green1 = data [0]; var Green2 = data [1]; var Alarm = data [2]; var Millis = data [3]; var IsActive = data [4]; var out = "INSERT IN alarmsystem.alarmdata (Muda, Green1, Green2, Alarm, Millis, IsActive) MAADILI ('" + Tarehe mpya (). toISOString (). kipande (0, 19). mahali (' T ',' ') + "', '" + Green1 + "', '" + Green2 + "', '" + Alarm + "', '" + Millis + "', '" + IsActive + "'" "; mada.topic = nje; kurudi msg;

Ilani naingiza "INSERT IN alarmsystem.alarmdata", hili ndilo jina tulilotoa hifadhidata yetu na meza, hakikisha unaandika jina haswa ulilotoa hifadhidata yako katika hilo.

Sasa unganisha kizuizi cha Javascript na node ya utatuzi na pia nodi ya "mysql" inayopatikana chini ya palette ya uhifadhi upande wa kushoto.

chini ya kizuizi cha mysql unaipa jina sawa na hifadhidata yako "mfumo wa kengele"

badilisha mtumiaji kuwa "mzizi" (jina tulilokuwa tunaingia kwenye seva yetu)

mwenyeji, bandari na hifadhidata inapaswa kujazwa tayari na:

Mwenyeji: 127.0.0.1

Bandari: 3306

Hifadhidata: mfumo wa kengele

Ikiwa yote yamefanywa sahihi, inapaswa kushikamana baada ya kupeleka mabadiliko yako.

Unapaswa pia kuona kuwa hifadhidata sasa inaweka data zako kutoka kwa Arduino moja kwa moja.

Hatua ya 6: Kutumia Takwimu Kutoka kwa Wampserver hadi Node-nyekundu

Kutumia Takwimu Kutoka kwa Wampserver hadi Node-nyekundu
Kutumia Takwimu Kutoka kwa Wampserver hadi Node-nyekundu
Kutumia Takwimu Kutoka kwa Wampserver hadi Node-nyekundu
Kutumia Takwimu Kutoka kwa Wampserver hadi Node-nyekundu

Kwa kunyoosha mwisho tunataka kuona ikiwa tunaweza kuchukua data tuliyohifadhi na kuirudisha kwenye Node-nyekundu yetu na tunatumahi kuionyesha.

Anza kwa kuweka nodi ya "sindano"

Chini ya mada katika node hii tunaweka nambari: CHAGUA * KUTOKA kwa mfumo wa kengele.alarmdata

Hii itaweza kupata hifadhidata yetu tunapobonyeza.

Unganisha node ya sindano kwa nodi mpya ya "mysql" iliyowekwa sawa na ile tuliyoifanya katika hatua ya awali.

Unganisha nodi ya mysql kwa node ya utatuzi na nodi ya templeti iliyopatikana chini ya dashibodi.

Node ya templeti itakuwa meza yetu ambayo tunaweza kusasisha kuonyesha data kutoka kwa hifadhidata kama inavyozalishwa.

Ingiza nambari iliyoonyeshwa kwenye picha ya skrini hapo juu (badilika kama inahitajika) na sasa inapaswa kuonyesha jedwali la data katika UI yetu nyekundu-Node.

Tunaweza pia kuongeza kitufe cha dashibodi kusasisha meza kutoka kwa UI yenyewe.

Anza kwa kuunda kitufe cha kifungo.

unganisha kitufe cha kifungo kwenye kizuizi cha kazi cha Javascript.

kwenye kizuizi cha kazi tunaingiza nambari ifuatayo.

msg.topic = "CHAGUA * KUTOKA kwa alarmdata ORDER BY Green1 DESC LIMIT 20"; kurudi msg;

(Green1 kuwa data ya kwanza katika jedwali)

kizuizi hiki cha kazi basi kinahitaji kushikamana na pembejeo ya nodi yetu ya mysql tuliyoifanya hapo awali katika hatua hii.

Hatua ya 7: Kukamilisha

Kukamilisha
Kukamilisha

Sasa UI yetu inapaswa kujumuisha sasisho la moja kwa moja la data yetu na meza iliyo na data kutoka kwa seva yetu yenyewe.

Hii inamaanisha tumeunda unganisho kati ya Arduino, mpango wa msingi wa UI na hifadhidata.

Ikiwa una nia ya jinsi Mfumo wangu wa Ararmino Alarm unavyofanya kazi, nimeongeza hati ambayo inaelezea jinsi hiyo imewekwa na kusanidiwa.

Pamoja na usafirishaji kamili wa programu nyekundu ya node.

Ilipendekeza: