Мазмұны:

UCL-IIOT-Деректер базасы мен қызыл түйінмен дабыл жүйесі: 7 қадам
UCL-IIOT-Деректер базасы мен қызыл түйінмен дабыл жүйесі: 7 қадам

Бейне: UCL-IIOT-Деректер базасы мен қызыл түйінмен дабыл жүйесі: 7 қадам

Бейне: UCL-IIOT-Деректер базасы мен қызыл түйінмен дабыл жүйесі: 7 қадам
Бейне: Final Project ISS-Tracker Sensor Data Visualisation 2024, Шілде
Anonim
UCL-IIOT-Дабылдар жүйесі және қызыл-қызыл түйіндері бар дабыл жүйесі
UCL-IIOT-Дабылдар жүйесі және қызыл-қызыл түйіндері бар дабыл жүйесі
UCL-IIOT-Деректер базасы мен қызыл-түйіні бар дабыл жүйесі
UCL-IIOT-Деректер базасы мен қызыл-түйіні бар дабыл жүйесі

Бұл құрылыстың мақсаты-Arduino-ны Node-red және деректер қорымен байланыстыру туралы үйрету, сондықтан сіз деректерді тіркей аласыз және оны кейін пайдалану үшін жинай аласыз.

Бұл құрастыру үшін мен әрқайсысы үтірмен бөлінген 5 дерек нөмірін шығаратын қарапайым arduino дабыл жүйесін қолданамын.

Деректердің дәл мөлшерінің болуы міндетті емес және бағдарлама кез келген болуы мүмкін.

Маңызды бөлігі - бұл деректер скриншотта көрсетілгендей үтірмен бөлінген.

Мысалы, шығыс келесідей болуы мүмкін: «324, 0, 0, 1, 1»

(аяқталған бағдарламалау мен arduino құруға арналған нұсқаулар осы оқулықтың төменгі жағында көрсетілген)

1-қадам: Қызыл-түйіннен бастау

Қызыл түйіннен бастау
Қызыл түйіннен бастау

Бұл оқулық үшін біз сізде Node-red орнатылған деп ойлаймыз, бірақ бұл жобада жұмыс істеу үшін қажет болатын қосымша бояғыштар бар.

«Палитраны басқару» түймесін тауып, келесі бояғыштарды орнатыңыз.

  • қызыл-түйіндік бақылау тақтасы
  • түйін-қызыл-түйін-mysql
  • түйін-қызыл-түйін-ардуино
  • түйін-қызыл-түйін-сериялық порт

Ол түйін-қызыл түйме мәзірінің жағында бірнеше жаңа бояғыштарды көрсетуі керек.

2-қадам: Деректерді қызыл-қызылға бөлу

Деректерді түйін-қызыл түске бөлу
Деректерді түйін-қызыл түске бөлу

Енді Node-red баруға дайын болғандықтан, біз деректерді бөлек бөліктерге бөлуден бастауымыз керек.

Сондықтан біз оларды Arduino кодының ішіндегі үтірлермен бөлуге сенімді болдық.

Алдымен сол жақ панельде орналасқан Arduino енгізу түйінін қоюдан бастайық.

Сіз оның дұрыс сериялық (Mine COM4 қолданады) порты мен Baud жиілігінің бар екеніне көз жеткізуіңіз керек (менің бағдарламада мен 9600 байды пайдаланамын)

Егер дұрыс орнатылса, ол қосылған деп айту керек.

Әрі қарай, біз Javascript функционалдық блогын құрамыз және оны Arduino кіріс түйінінен кейін қосамыз, бұл блок бізге Javascript -те бағдарламалауға мүмкіндік береді, және біз мұнда әр үтір үшін деректерді бөлуге болатын код жазамыз.

Бұл функция блогында мен келесі деректерді пайдалана отырып, 5 дерекімді бөлдім:

var m1 = {тақырып: «жеңіл1», пайдалы жүктеме: msg.payload.split («,») [0]}; var m2 = {тақырып: «жеңіл2», пайдалы жүктеме: msg.payload.split («,») [1]}; var m3 = {тақырып: «жеңіл3», пайдалы жүктеме: msg.payload.split («,») [2]}; var m4 = {тақырып: «миллис», пайдалы жүктеме: msg.payload.split («,») [3]}; var m5 = {theme: «onoff», жүктеме: msg.payload.split («,») [4]}; қайтару [m1, m2, m3, m4, m5];

(қажет болған жағдайда кодты өзгертіңіз)

Түйіннің 5 шығысқа (немесе баламасына) орнатылғанына көз жеткізіңіз.

Скриншотта көрсетілгендей, қазір бізде әрқайсысы отладка түйініне және мәтіндік бақылау тақтасының түйініне байланыстыратын 5 шығыс бар. Бұл интерфейс интерфейсінде қажет болған кезде пайдалы болады.

3 -қадам: Wampserver көмегімен мәліметтер базасы

Wampserver көмегімен мәліметтер базасы
Wampserver көмегімен мәліметтер базасы

Біздің дерекқор жұмыс істеуі үшін сізге Wampserver орнатылуы қажет, ол орнатылғаннан кейін жасыл белгіше ретінде көрсетіледі (барлық қызметтерді іске қосқаннан кейін), сіз кіру экранына шығатын «phpMyAdmin» бағдарламасын ашуыңыз керек. бұрын өзгертілген, пайдаланушы аты мен логинге «root» енгізіңіз.

Phpmyadmin түймесін сол жақ жолақта төмендегі құралдар астындағы басыңыз, сонда ол жоғарыдағы суретте көрсетілгендей мәліметтер базасының мәзірін ашады.

Жаңа мәліметтер базасын жасаңыз және оны сіздің жобаңызға қатысты деп атаңыз, менікі «дабыл жүйесі» деп аталады (бұл атаулар регистрді ескереді)

Деректер базасында жаңа кесте жасаңыз және оған атаңыз, менікі «дабылдар» деп аталады

ол сізге «latin1_swedish_ci» қолданғыңыз келетінін сұрайды және біз оны сол күйінде сақтаймыз.

Енді сіз 6 кесте жасайсыз (біздегі мәліметтерден 1 артық)

Бірінші кесте «longtext» деректер түрін қолдануы керек.

ал қалған деректер жиынтығы «орта мәтінді» пайдаланады

Оларды атауды ұмытпаңыз. (бірінші деректер жиынтығы «уақыт» деп аталуы керек)

4 -қадам: мәліметтер базасы

Дерекқор
Дерекқор

Wampserver деректер жиынтығы келесідей болуы керек.

(бірақ нақты деректер жоқ, өйткені біз бұған әлі жеткен жоқпыз)

5-қадам: Wampserver торабы қызыл

Wampserver торабы қызыл
Wampserver торабы қызыл

Енді біз arduino -дан шығаратын деректердің біздің Wampserver -ге өтуін қалаймыз.

Басқа Javascript функция блогын құрудан бастаңыз және оны arduino кіріс түйініне қосыңыз.

Бұл сценарий блогында біз өз деректерімізді тағы бір рет бөлеміз, бірақ біз оларды дерекқорға енгіземіз.

var data = msg.payload.split («,»); var Green1 = деректер [0]; var Green2 = деректер [1]; var Alarm = деректер [2]; var Millis = деректер [3]; var IsActive = деректер [4]; var out = «INSERT INTO alarmsystem.alarmdata (Time, Green1, Green2, Alarm, Millis, IsActive) VALUES ('»+new Date (). toISOString (). tilice (0, 19).relace (' T ',') ')+«', '»+Green1+«', '»+Green2+«', '»+Alarm+«', '»+Millis+«', '»+IsActive+«')»; msg.topic = шығу; хабарды қайтару;

Назар аударыңыз, мен «INSERT INTO alarmsystem.alarmdata» енгіземін, бұл біздің мәліметтер базасы мен кестені берген атау, осында сіздің дерекқорға берген нақты атыңызды жазғаныңызға көз жеткізіңіз.

Енді Javascript блогын отладка түйініне, сонымен қатар сол жақта сақтау палитрасының астында орналасқан «mysql» түйініне қосыңыз.

mysql блогының астында сіз оны «дабыл жүйесі» деректер қорымен бірдей атайсыз

пайдаланушыны «түбірге» өзгерту (біздің серверге кіру үшін пайдаланылған атау)

хост, порт және мәліметтер базасы мыналармен толтырылуы керек:

Жүргізуші: 127.0.0.1

Порт: 3306

Мәліметтер қоры: дабыл жүйесі

Егер бәрі дұрыс жасалса, ол өзгертулерді енгізгеннен кейін қосылуы керек.

Сіз сонымен қатар деректер базасы сіздің деректеріңізді Arduino -дан тікелей тіркейтінін көруіңіз керек.

6-қадам: Wampserver-ден түйін-қызылға дейін деректерді пайдалану

Wampserver-ден түйін-қызылға дейін деректерді пайдалану
Wampserver-ден түйін-қызылға дейін деректерді пайдалану
Wampserver-ден түйін-қызылға дейін деректерді пайдалану
Wampserver-ден түйін-қызылға дейін деректерді пайдалану

Ақырғы созылу үшін біз сақталған деректерді алып, оны түйін қызылға қайта салып, оны көрсете аламыз ба, жоқ па көргіміз келеді.

«Инъекция» түйінін қоюдан бастаңыз

Бұл түйінге тақырыптың астына код қоямыз: SELECT*FROM alarmsystem.alarmdata

Бұл біздің дерекқорды басқан кезде таба алады.

Инъекциялық түйінді алдыңғы қадамда дәл орнатылған жаңа «mysql» түйініне қосыңыз.

Mysql түйінін жөндеу тақтасына және бақылау тақтасынан табылған үлгі түйініне қосыңыз.

Үлгі түйіні біздің кесте болады, біз оны деректер базасынан алынған деректерді көрсету үшін жаңарта аламыз.

Жоғарыдағы скриншотта көрсетілген кодты енгізіңіз (қажет болған жағдайда өзгертіңіз) және ол енді түйін қызыл қызыл интерфейсінде деректер кестесін көрсетуі керек.

Сондай -ақ, кестені UI -ден жаңарту үшін бақылау тақтасының түймесін қосуға болады.

Түйме түйінін жасаудан бастаңыз.

түйін түйінін Javascript функция блогына қосыңыз.

функция блогына келесі кодты енгіземіз.

msg.topic = «Green1 DESC LIMIT 20 БОЙЫНША САУЛДАНДЫРУЛЫҚТАН ТАҢДАУ *; msg қайтару;

(Green1 - кестедегі бірінші деректер айнымалысы)

бұл функция блогы осы қадамда бұрын жасаған mysql түйінінің кірісіне қосылуы керек.

7 -қадам: Аяқтау

Аяқталуда
Аяқталуда

Енді біздің интерфейске деректердің тікелей жаңартылуы мен сервердің өзінен алынған деректер кестесі кіруі керек.

Бұл біз Arduino, UI негізіндегі бағдарлама мен мәліметтер базасы арасында байланыс құрдық дегенді білдіреді.

Егер сізді Arduino дабыл жүйесі қалай жұмыс істейтіні қызықтырса, мен оның қалай бағдарламаланғанын және орнатылғанын түсіндіретін құжатты қостым.

Сондай-ақ, қызыл-қызыл бағдарламалаудың толық экспорты.

Ұсынылған: