Daftar Isi:

Dataopsamling Af Tyverialarm IIOT 4.0: 8 Langkah
Dataopsamling Af Tyverialarm IIOT 4.0: 8 Langkah

Video: Dataopsamling Af Tyverialarm IIOT 4.0: 8 Langkah

Video: Dataopsamling Af Tyverialarm IIOT 4.0: 8 Langkah
Video: BESDER Popular AI Humanoid detection & Alarm Voice DIY PTZ Wifi IP Camera 2024, November
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 projekt. 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 tertinggal dalam database, i en tabel med 3 kolonner, der fortæller tilstanden, hvor lang tid program Arduinoen har kørt og en tidsangivelse (timestamp) fra komputer. Tidak perlu khawatir, skal der kunne sendes besked tilbage til Arduinoen om at den skal tilbage til starttilstand.

Langkah 1: Materialer

Arduino projekt tyverialarm

Sensor sentuh Arduino

Lampu Arduino RGB

Arduino trykknap

Ledning mellem Arduino dan PC

Papan tempat memotong roti

Perangkat lunak NODE-merah

WAMP SQL Server

Langkah 2: Perangkat Lunak

Sampai komunikasi database mellem og Arduino, har jeg brugt program NODE-red. Saya menentukan program kan man ved hjælp af blok programmer kommunikere med Arduinoen. Derfra kan jeg kommunikere med databasen.

Sampai ketinggalan data, har jeg brugt WAMP SQL Server, beberapa database, desain grafis dan antarmuka dan antarmuka mySQL hingga NODE-red.

Proyek Tidligere

I et tidligere projekt 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 sensor sentuh 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.

Langkah 3: Arduino

Pengirim Arduino meminta om hvor lang tid den har kørt og dens

tanda bahaya. Lebih lanjut, lakukan dengan senang hati. 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 reset tilbage til normaltilstanden.

Langkah 4: Basis Data

Basis Data
Basis Data

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 med 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. Untuk skrive disse data ind i databasen, har jeg i NODE-red lavet en funktion, der inserter til tabellen. Untuk di undgå gentagelser, har jeg lavet en regel, di hvis alarmtilstanden er den samme som den forrige, bliver der ikke tilføjet linjer. Pilih dan pilih jeg selecter den seneste tilføjede linje efter dato 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. Bruger jeg igen pilih sampai di finde den seneste røde alarm.

Langkah 5: Node-merah

Node-merah
Node-merah
Node-merah
Node-merah

Saya NODE-red styer man komunikasi dengan databaseopdateringer.

Memprogram terlebih dahulu beberapa javascripts.

Herunder ses mit NODE-red program, beberapa terbaik dari 11 komponenter.

Komponenten arduino I er en forbindelse til Arduinoen. Dentumkan data modtager dari 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 dan tilsql.

Komponenten split modtager data fra arduino I og opdeler dem efter komma, untuk derefter di sende dem videre til navn og reset.

Komponen navigasi dan dashboard terasa, beberapa viser aktuel alarmtilstand.

Komponen reset er en javascript funktion, som undersger om der er kommet rød alarm. Saya salah mengirim ulang video hingga arduino Q.

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

Komponen 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 inserted nye værdier når alarmtilstanden ndres. SQL fra denne funktion læser dan opdaterer databasen melalui tyven forbindelsen.

Komponen tyven er en forbindelse til databasen, som tilsql udnytter til pilih og insert.

Komponen disuntikkan dalam pemicu periodik med en periode på 15 sekunder, beberapa tidspunktet untuk alarm sidste rde fra databasen. Dette tidspunkt mengirimkan videre til rød alarm.

Komponen di nodered er en forbindelse til databasen, som inject udnytter til select.

Komponenten msg.payload bruges til di debugge komponenterne og til di tjekke om jeg untuk hasil det rigtige.

Komponen rød alarm er et feel på dashboardet, som modtager tidspunktet fra inject.

Dasbor dan skærmbillede, hvor alarmtilstanden, som er defineret i komponenten navn, står på ventstre side og tidspunktet untuk sidste røde alarm, som er defineret ved komponenten rød alarm, med det pågældende stempel waktu.

Langkah 6: Uji

Jeg har testet diprogram di køre simulationer med

Arduino dan kigge i tabellen, om de rigtige data bliver logget. Desuden har jeg holdt je med dashboard, og konstateret di det viser den aktuelle alarmtilstand dan tidspunktet untuk sidste røde alarm.

Problemet har været at den sidste røde alarm bliver printet som object, hvor jeg ville foretrække at det var en tekst. Det betyder, pada det skal konverteres fra objek 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 untuk di rydde tabellen i databasen andet berakhir di gøre det manuelt.

Langkah 7: Videreudvikling

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

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

P dashboardet kan der være et skema di atas tabellen, beberapa sisipan viser de seneste, og en lampe i stedet untuk teks untuk tilstanden af alarmen.

Der kunne implementeres knap untuk reset af rød alarm. En anden knap til at tømme tabellen untuk data. Der kunne være muligheder untuk di tjekke alarmen untuk akhir pekan eller helligdage. Hvor den skal kunne resette sig selv.

Langkah 8: Konklusi

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

i en tabel, hvorfra kan man tage seneste alarmtilstand. Der er lavet en grafisk brugergrænseflade, som viser nuværende tilstand samt tidspunktet untuk seneste alarmtilstand. Disse ting er lavet ved hjælp af programt NODE-red for grafik og programmering mens WAMP SQL Server dan blevet brugt til di lave databasen.

Jeg har med dette projekt lært at lave en database, samt communikation mellem forskellige programmeringssystemer. Jeg har brugt NODE-red til di kommunikere data fra et Arduino projekt til internettet og en relationdatabase. Basis data menemukan hingga opsamling data dan beberapa datagrundlag untuk brugergrænsefladen. Jeg har brugt NODE-merah sampai di lave dan tata letak funktionelt setelah projektet dan sampai desain di brugergrænsefladen.

Direkomendasikan: