Мазмұны:
- 1-қадам: Қызыл-түйіннен бастау
- 2-қадам: Деректерді қызыл-қызылға бөлу
- 3 -қадам: Wampserver көмегімен мәліметтер базасы
- 4 -қадам: мәліметтер базасы
- 5-қадам: Wampserver торабы қызыл
- 6-қадам: Wampserver-ден түйін-қызылға дейін деректерді пайдалану
- 7 -қадам: Аяқтау
Бейне: UCL-IIOT-Деректер базасы мен қызыл түйінмен дабыл жүйесі: 7 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:25
Бұл құрылыстың мақсаты-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 орнатылуы қажет, ол орнатылғаннан кейін жасыл белгіше ретінде көрсетіледі (барлық қызметтерді іске қосқаннан кейін), сіз кіру экранына шығатын «phpMyAdmin» бағдарламасын ашуыңыз керек. бұрын өзгертілген, пайдаланушы аты мен логинге «root» енгізіңіз.
Phpmyadmin түймесін сол жақ жолақта төмендегі құралдар астындағы басыңыз, сонда ол жоғарыдағы суретте көрсетілгендей мәліметтер базасының мәзірін ашады.
Жаңа мәліметтер базасын жасаңыз және оны сіздің жобаңызға қатысты деп атаңыз, менікі «дабыл жүйесі» деп аталады (бұл атаулар регистрді ескереді)
Деректер базасында жаңа кесте жасаңыз және оған атаңыз, менікі «дабылдар» деп аталады
ол сізге «latin1_swedish_ci» қолданғыңыз келетінін сұрайды және біз оны сол күйінде сақтаймыз.
Енді сіз 6 кесте жасайсыз (біздегі мәліметтерден 1 артық)
Бірінші кесте «longtext» деректер түрін қолдануы керек.
ал қалған деректер жиынтығы «орта мәтінді» пайдаланады
Оларды атауды ұмытпаңыз. (бірінші деректер жиынтығы «уақыт» деп аталуы керек)
4 -қадам: мәліметтер базасы
Wampserver деректер жиынтығы келесідей болуы керек.
(бірақ нақты деректер жоқ, өйткені біз бұған әлі жеткен жоқпыз)
5-қадам: 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-ден түйін-қызылға дейін деректерді пайдалану
Ақырғы созылу үшін біз сақталған деректерді алып, оны түйін қызылға қайта салып, оны көрсете аламыз ба, жоқ па көргіміз келеді.
«Инъекция» түйінін қоюдан бастаңыз
Бұл түйінге тақырыптың астына код қоямыз: SELECT*FROM alarmsystem.alarmdata
Бұл біздің дерекқорды басқан кезде таба алады.
Инъекциялық түйінді алдыңғы қадамда дәл орнатылған жаңа «mysql» түйініне қосыңыз.
Mysql түйінін жөндеу тақтасына және бақылау тақтасынан табылған үлгі түйініне қосыңыз.
Үлгі түйіні біздің кесте болады, біз оны деректер базасынан алынған деректерді көрсету үшін жаңарта аламыз.
Жоғарыдағы скриншотта көрсетілген кодты енгізіңіз (қажет болған жағдайда өзгертіңіз) және ол енді түйін қызыл қызыл интерфейсінде деректер кестесін көрсетуі керек.
Сондай -ақ, кестені UI -ден жаңарту үшін бақылау тақтасының түймесін қосуға болады.
Түйме түйінін жасаудан бастаңыз.
түйін түйінін Javascript функция блогына қосыңыз.
функция блогына келесі кодты енгіземіз.
msg.topic = «Green1 DESC LIMIT 20 БОЙЫНША САУЛДАНДЫРУЛЫҚТАН ТАҢДАУ *; msg қайтару;
(Green1 - кестедегі бірінші деректер айнымалысы)
бұл функция блогы осы қадамда бұрын жасаған mysql түйінінің кірісіне қосылуы керек.
7 -қадам: Аяқтау
Енді біздің интерфейске деректердің тікелей жаңартылуы мен сервердің өзінен алынған деректер кестесі кіруі керек.
Бұл біз Arduino, UI негізіндегі бағдарлама мен мәліметтер базасы арасында байланыс құрдық дегенді білдіреді.
Егер сізді Arduino дабыл жүйесі қалай жұмыс істейтіні қызықтырса, мен оның қалай бағдарламаланғанын және орнатылғанын түсіндіретін құжатты қостым.
Сондай-ақ, қызыл-қызыл бағдарламалаудың толық экспорты.
Ұсынылған:
Ақылды дабыл: Raspberry Pi көмегімен жасалған ақылды дабыл сағаты: 10 қадам (суреттермен)
Ақылды дабыл: Raspberry Pi көмегімен жасалған ақылды оятқыш: Сіз ақылды сағатты алғыңыз келді ме? Егер солай болса, онда бұл сізге арналған шешім! Мен Smart Alarm Clock жасадым, бұл веб -сайтқа сәйкес дабыл уақытын өзгертуге болатын сағат. Дабыл сөнген кезде дыбыс шығады (дыбыстық сигнал) және 2 жарық қосылады
NCD сымсыз температурасы мен ылғалдылығы датчигінің қызыл-қызыл түйінін қолдану арқылы электрондық хабарландырулар жасау: 22 қадам
NCD сымсыз температурасы мен ылғалдылығы датчиктерінің электрондық поштасы бойынша ескерту жасау Node-Red: Біз мұнда NCD температурасы мен ылғалдылығы сенсорын қолданамыз, бірақ қадамдар кез келген ncd өніміне тең болады, сондықтан егер сізде басқа ncd сымсыз сенсорлары болса, тәжірибе жасаңыз. қатар байқаңыз. Бұл мәтінді тоқтату арқылы сізге
IOT Long Range сымсыз температура мен ылғалдылық сенсоры қызыл-түйінмен: 27 қадам
IOT Long Range сымсыз температура мен ылғалдылық сенсоры қызыл-түйінмен: сымсыз торлы желінің архитектурасын қолдана отырып 28 миль диапазонына дейін мақтана алатын NCD ұзақ қашықтықтағы температура мен ылғалдылық сенсорымен таныстырады. Honeywell HIH9130 температура мен ылғалдылық сенсоры жоғары температураны жібереді
Pool Pi Guy - AI басқаратын дабыл жүйесі мен Raspberry Pi көмегімен бассейнді бақылау: 12 қадам (суреттермен)
Pool Pi Guy - AI басқаратын дабыл жүйесі мен Raspberry Pi көмегімен бассейнді бақылау: Үйде бассейннің болуы көңілді, бірақ үлкен жауапкершілікпен келеді. Менің ең үлкен алаңдаушылығым - бассейннің жанында қараусыз жүргендердің бар -жоғын бақылау (әсіресе кішкентай балалар). Менің басты ренішім - бассейндегі су құбыры ешқашан сорғыдан төмен түспейтініне көз жеткізу
Arduino мен Python көмегімен DIY «PC пайдалану өлшеуішінің ROG базасы»: 5 қадам (суреттермен)
Arduino мен Python -ды қолдана отырып, DIY «PC пайдалану өлшеуішінің ROG базасы»: *********************************** +Біріншіден, бұл нұсқаулықты ағылшын тілін білмейтін адам жазған …… ағылшын профессоры емес, сондықтан мені мазақ етпес бұрын кез келген грамматикалық қате туралы хабарлаңыз .:p +және еліктемеңіз