Taula de continguts:

Dataopsamling Af Tyverialarm IIOT 4.0: 8 Passos
Dataopsamling Af Tyverialarm IIOT 4.0: 8 Passos

Vídeo: Dataopsamling Af Tyverialarm IIOT 4.0: 8 Passos

Vídeo: Dataopsamling Af Tyverialarm IIOT 4.0: 8 Passos
Vídeo: Аниматор против Анимации 4 (оригинал) 2024, Desembre
Anonim
Dataopsamling Af Tyverialarm IIOT 4.0
Dataopsamling Af Tyverialarm IIOT 4.0

Dette projekt i faget IIOT er en videreudvikling af en

tyverialarm, som jeg har lavet på en Arduino i et tidligere project. Der er i dette projekt blevet fokuseret på lagring af de data, jeg får fra min tyverialarm, samt at lave et brugerinterface. Data bliver lagt ind i database, i en tabel med 3 kolonner, der fortæller tilstanden, hvor lang tid Arduinoen har kørt programmet og in tidsangivelse (timestamp) from computeren. Når alarmen tænder, skal der kunne sendes besked tilbage til Arduinoen om at den skal tilbage til starttilstand.

Pas 1: Materialitzador

Arduino projekt tyverialarm

Sensor tàctil Arduino

Llum RGB Arduino

Arduino trykknap

Ledning mellem Arduino i PC

Taula de pa

Programari NODE-red

WAMP SQL Server

Pas 2: programari

Fins a la base de dades de comunicacions millorades i Arduino, es pot veure el programa NODE-red. I dette program kan man ved hjælp af blok programmering kommunikere med Arduinoen. Derfra kan jeg kommunikere med databasen.

Fins a la resta de dades, es pot crear WAMP SQL Server, una base de dades, una interfície de disseny gràfica i una interfície MySQL fins a NODE-red.

Tidligere projekt

I et tidligere projectekt har jeg lavet en tyverialarm på Arduinoen. Denne tyverialarm har jeg genbrugt. Den virker ved at alarmen er slået til eller fra. Hvis den er slået til og en touch sensor bliver aktiveret, vil alarmen gå i gang. Den skal så kunne slås fra igen ved at trykke på en knap, som sætter den tilbage til starttilstanden.

Pas 3: Arduino

Arduino sender besked om hvor lang tid den har kørt og dens

alarma. Så længe den ikke er aktiveret vil den sende besked, hver gang der skiftes tilstand. Hvis den bliver aktiveret, vil den blive ved med at sende besked om, at den er aktiv. Samtidig modtager den besked fra NODE-red om at alarmen er aktiv og skal resettes tilbage til normaltilstanden.

Pas 4: base de dades

Base de dades
Base de dades

Hver gang der sker en ændring af tilstanden for alarmen

bliver følgende data lagret i databasen: Den nuværende tilstand, hvor lang tid Arduinoen har kørt, samt et timestamp, der fortæller nuværende tidspunkt.

Der bliver kommunikeret med databasen with SQL-sproget mySQL. Jeg har lavet en tabel, som fortæller alarmtilstanden, hvor mange ms Arduinoen har kørt og et timestamp der fortæller tidspunktet det er blevet registreret. For at skrive disse data ind i databasen, har jeg i NODE-red lavet en funktion, der inserter til tabellen. For at undgå gentagelser, har jeg lavet en regel, at hvis alarmtilstanden er den samme som den forrige, bliver der ikke tilføjet linjer. Den er lavet ved at jeg selecter den seneste tilføjede linje efter dates og sammenligner med alarmtilstanden fra Arduinoen.

Jeg bruger en inject til at finde den seneste aktivering af alarmen hvor den fortæller hvornår det skete. Her bruger jeg igen select till at finde den seneste røde alarm.

Pas 5: vermell del node

Node-vermell
Node-vermell
Node-vermell
Node-vermell

I NODE-red styrer man communikation og databaseopdateringer.

Programació de foregår amb alguns javascripts.

Vegeu el programa NODE-red, un dels millors components de 11 components.

Komponenten arduino I er en forbindelse til Arduinoen. Les dades de modificació de Arduinoen. Disse data er en alarmtilstand og antal ms Arduinoen har kørt adskilt af et komma og de bliver videresendt til både split og tilsql.

Components split modtager data fra arduino I og opdeler dem efter komma, for derefter at sende dem videre til navn og reset.

Component de la navegació i el taulell de control del panell, que es pot visualitzar de forma alarmant.

Els components restituïts en javascript funktion, som undersøger om der er kommet rød alarm. I så fald sendes reset videre til arduino Q.

Komponenten arduino Q er en forbindelse til Arduionoen, som resetter den.

Components tilsql er en javascript funktion, som splitter de to beskeder, hvor den første bliver lagt ind som tid og næste som alarm. I denne funktion laves muligheden for at der kun bliver inserit nye værdier når alarmtilstanden ændres. SQL fra denne funktion læser og opdaterer databasen via tyven forbindelsen.

Els components es van prohibir fins a les dades, fins i tot es poden seleccionar i inserir.

Components inject er en periodisk trigger med en periode på 15 sekunder, som læser tidspunktet for sidste røde alarm from databasen. Dette tidspunkt sendes videre til rød alarm.

Els components no es poden incloure fins a la base de dades, fins i tot injectar fins a seleccionar.

Komponenten msg.payload bruges til at debugge komponenterne og til at tjekke om jeg får det rigtige result.

Components rød alarm is felt in dashboardet, some modtager tidspunktet fra inject.

Dashboard er et skærmbillede, hvor alarmtilstanden, som er defineret i komponenten navn, står på venstre side og tidspunktet for sidste røde alarm, som er defineret ved komponenten rød alarm, med det pågældende timestamp står på højre side.

Pas 6: prova

Jeg har testet programmet ved at køre simulationer med

Arduinoen og kigge i tabellen, tot el registre de dades de bliver. Desuden har jeg holdt øje med dashboardet, og konstateret at det viser den aktuelle alarmtilstand og tidspunktet for sidste røde alarm.

Problems har været at den sidste røde alarm bliver printet some object, hvor jeg ville foretrække at det var en text. Det betyder, at det skal konverteres fra object til string. Dette har jeg ikke fundet løsningen på.

Den eneste måde at resette Arduinoen på er ved at deploy’e i NODE-red. Der er ikke kodet en metode for at rydde tabellen i databasen andet end at gøre det manuelt.

Pas 7: Videreudvikling

Der kan være udvikling i forhold til databasen i at kunne

rydde tabellen. Man kan også vise tabellen eller udtræk fra den på f.eks. Panell.

På dashboardet kan der være et skema over tabellen, som viser de seneste inserts, og en lampe i stedet for tekst for tilstanden af alarmen.

Der kunne implementeres knap for reset af rød alarm. Feu clic a la taula per obtenir dades. Der kunne være muligheder for at tjekke alarmen for weekend eller helligdage. Hvor den skal kunne resette sig selv.

Pas 8: Konklusion

Jeg har lavet en datalagring på en database der lagrer alarmtilstanden

i en tabel, hvorfra kan man tage seneste alarmtilstand. Der er lavet en grafisk brugergrænseflade, som viser nuværende tilstand samt tidspunktet for seneste alarmtilstand. Podeu visualitzar el programa NODE-red per a programació gràfica i programació per a WAMP SQL Server.

Podeu obtenir més detalls del projecte a la base de dades, així com una bona comunicació per a programadors de sistemes. Jeg har brugt NODE-red til at kommunikere data fra et Arduino project to til internettet og in relationsdatabase. Databasen er anvendt til dataopsamling og som datagrundlag for brugergrænsefladen. Jeg har brugt NODE-red til and lave and funktionelt layout af projektet og til design by brugergrænsefladen.

Recomanat: