Cov txheej txheem:
- Kauj ruam 1: Materialer
- Kauj ruam 2: Software
- Kauj ruam 3: Arduino
- Kauj ruam 4: Database
- Kauj Ruam 5: Node-red
- Kauj Ruam 6: Xeem
- Kauj ruam 7: Videreudvikling
- Kauj Ruam 8: Txuas ntxiv
Video: Dataopsamling Af Tyverialarm IIOT 4.0: 8 Cov Kauj Ruam
2024 Tus sau: John Day | [email protected]. Kawg hloov kho: 2024-01-30 09:27
Lub koob yees duab thiab lub koob yees duab IIOT yog nyob rau hauv videoreudvikling los ntawm
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 ntawm lave thiab brugerinterface. Cov ntaub ntawv bliver lagt hauv qab kuv cov ntaub ntawv, i en ລວມ med 3 kolonner, der fortæller tilstanden, hvor lang tid Arduinoen har kørt programmet og en tidsangivelse (timestamp) fra computeren. Tsis muaj kev ceeb toom ntxiv, skal der kunne xa cov av qeeg mus rau Arduinoen om ntawm qhov chaw skal tilbage til starttilstand.
Kauj ruam 1: Materialer
Arduino projekt tyverialarm
Arduino kov sensor
Arduino RGB teeb
Arduino trykknap
Ledning mellem Arduino og PC
Cov qhob cij
NODE-liab software
WAMP SQL neeg rau zaub mov
Kauj ruam 2: Software
Til kommunikation mellem database og Arduino, har jeg brugt programmet NODE-liab. Kuv paub qhov program kan man ved hjælp af blok programmering kommunikere med Arduinoen. Derfra kan jeg kommunikere med databasen.
Til lagring af cov ntaub ntawv, har jeg brugt WAMP SQL Server, som er en database, med thiab grafisk designinterface og thiab mySQL interface mus rau NODE-liab.
Tidligere txoj haujlwm
Kuv tau hais txog qhov teeb meem no nrog jeg lavet en tyverialarm på Arduinoen. Denne tyverialarm har jeg genbrugt. Tsis txhob hnov qab lub suab nrov ntawm lub suab ceeb toom lossis lub suab nrov kom txog thaum txhua yam tshwm sim. Hvis den er slået til og en touch sensor bliver aktiveret, vil alarmen gå i laib. Tsis pub dhau lub caij nyoog ntawm _ ved at trykke på en knap, som sætter den tilbage til starttilstanden.
Kauj ruam 3: Arduino
Arduino sender besked om hvor lang tid den har kørt og dens
tswb tswb 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 ntawm sende besked om, ntawm den er aktiv. Samtidig modtager den besked fra NODE-red om at alarmen er aktiv og skal resettes tilbage til normaltilstanden.
Kauj ruam 4: Database
Hver gang der sker en ringndring af tilstanden for alarmen
bliver følgende cov ntaub ntawv lagret thiab cov ntaub ntawv: Tsis pub dhau lub sij hawm ntev, hvor lang tid Arduinoen har kørt, samt thiab timestamp, der fortæller nuværende tidspunkt.
Der bliver kommunikeret nrog databasen nrog SQL-sproget mySQL. Jeg har lavet nyob hauv kab lus, som fortæller lub tswb nrov, hvor mange ms Arduinoen har kørt og thiab timestamp der fortæller tidspunktet det er blevet registreret. Rau ntawm skrive disse cov ntaub ntawv ind hauv databasen, har jeg i NODE-liab lavet en funktion, der inserter til queuelen. Rau ntawm undgå gentagelser, har jeg lavet en regel, ntawm 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 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. Nws tus bruger jeg igen xaiv til ntawm finde den seneste røde tswb.
Kauj Ruam 5: Node-red
Kuv NODE-liab styrer txiv neej kommunikation og databaseopdateringer.
Programmeringen foregår som javascripts.
Herunder ses mit NODE-red program, som består af 11 komponenter.
Komponenten arduino Kuv tabtom txwv tsis pub mus txog Arduinoen. Hloov kho cov ntaub ntawv ntawm Arduinoen. Disse data er en alarmtilstand og antal ms Arduinoen har kørt adskilt af et komma og de bliver videresendt til både phua og tilsql.
Komponenten faib cov ntaub ntawv modtager fra arduino Kuv og opdeler dem efter komma, rau derefter ntawm sende dem videre til navn og pib dua.
Komponenten navn er thiab dashboard xav, som viser aktuel alarmtilstand.
Komponenten rov pib dua en en javascript funktion, som undersøger om der er kommet rød tswb. Kuv yog tus xa rov pib dua cov vis dis aus mus rau arduino Q.
Komponenten arduino Q er en forbindelse til Arduionoen, som resetter den.
Komponenten tilsql er en javascript funktion, som splitter de to beskeder, hvor den første bliver lagt ind som tid og næste som tswb. Kuv denne funktion laves muligheden rau ntawm der kun bliver tso nye værdier når alarmtilstanden ændres. SQL fra denne funktion læser og opdaterer databasen ntawm tyven forbindelsen.
Komponenten tyven er en forbindelse til databasen, som tilsql udnytter til xaiv og insert.
Komponenten txhaj er en periodisk trigger med en periode på 15 sekunder, som læser tidspunktet rau sidste røde tswb ntawm databasen. Dette tidspunkt xa cov vis dis aus mus rau lub tswb ceeb toom.
Komponenten nodered er en forbindelse til databasen, som txhaj udnytter til xaiv.
Komponenten msg.payload bruges til ntawm debugge komponenterne og til ntawm tjekke om jeg får det rigtige resultat.
Komponenten rød tswb er thiab xav tias på dashboardet, som modtager tidspunktet fra inject.
Dashboard er thiab skærmbillede, hvor alarmtilstanden, som er defineret i komponenten navn, står på venstre sab og tidspunktet rau sidste røde alarm, som er defineret ved komponenten rød alarm, med det pågældende timestamp står på højre
Kauj Ruam 6: Xeem
Jeg har testet programmet ved at køre simulationer med
Arduinoen og kigge nyob rau hauv daim ntawv, om de rigtige data bliver logget. Desuden har jeg holdt øje med dashboardet, og konstateret at det viser den aktuelle alarmtilstand og tidspunktet for sidste røde tswb.
Teeb meem har været ntawm lub tsev sab sidste røde tswb bliver printet som kwv, hvor jeg ville foretrække at det var en tekst. Nyob rau hauv qhov tseeb, nyob rau hauv lub skal konverteres fra kwv mus rau hlua. Ua tsaug os phooj ywg pab txhawb nqa os.
Tsis txaus ntseeg ntawm resette Arduinoen på er ved ntawm deploy'e kuv NODE-liab. Der er ikke kodet en metode rau ntawm rydde hauv daim ntawv thiab cov ntaub ntawv thiab tom kawg ntawm gøre det manuelt.
Kauj ruam 7: Videreudvikling
Yuav ua li cas koj tuaj yeem khaws cia kom ruaj ntseg rau hauv cov ntaub ntawv thiab nyob hauv
daim ntawv qhia. Tus txiv neej tuaj yeem pom vixaj tus lej lossis lwm yam udtræk fra den på f.eks. Dashboard.
På dashboardet kan der være et skema hla tab laj, som viser de seneste inserts, og en lampe kuv stedet rau tekst rau tilstanden af alarmen.
Der kunne implementeres khawm rau rov pib dua lub tswb ceeb toom. En anden knap til ntawm tømme hauv daim ntawv rau cov ntaub ntawv. Der kunne være muligheder rau ntawm tjekke alarmen rau lis xaus eller helligdage. Hvor den skal kunne resette sig selv.
Kauj Ruam 8: Txuas ntxiv
Jeg har lavet en datalagring på en database der lagrer alarmtilstanden
kuv nyob hauv, hvorfra kan man tage seneste alarmtilstand. Der er lavet en grafisk brugergrænseflade, som viser nuværende tilstand samt tidspunktet rau seneste alarmtilstand. Disse ting er lavet ved hjælp af programmet NODE-red rau grafik og programmering mens WAMP SQL Server er blevet brugt til ntawm lave databasen.
Jeg har med dette projekt lært at lave en database, samt kommunikation mellem forskellige programmeringssystemer. Jeg har brugt NODE-liab mus rau kommunikere cov ntaub ntawv fra thiab Arduino projekt kom internettet og en kev sib raug zoo database. Databasen er anvendt til dataopsamling og som datagrundlag rau brugergrænsefladen. Jeg har brugt NODE-liab til ntawm lave et funktionelt layout af projektet og til tsim los ntawm brugergrænsefladen.
Pom zoo:
Hloov-Hloov Cov Khoom Ua Si: Cov Khoom Ua Si Cov Khoom Ua Si Ua Tau Zoo!: 7 Cov Kauj Ruam (nrog Duab)
Hloov-Hloov Cov Khoom Ua Si: Cov Khoom Siv Hluav Taws Xob Ua Tau Zoo!: Qho khoom ua si hloov pauv qhib txoj hauv kev tshiab thiab kev daws teeb meem kom tso cai rau menyuam yaus uas muaj lub cev muaj peev xwm txwv lossis kev xiam oos qhab kev loj hlob los cuam tshuam nrog cov khoom ua si ntawm nws tus kheej. Hauv ntau qhov xwm txheej, cov menyuam yaus uas xav tau cov khoom ua si hloov pauv tsis tuaj yeem nkag mus
Cov av noo noo Cov Lus Qhia Tswj Xyuas Internet Txuas Cov Dej Dej (ESP32 thiab Blynk): 5 Cov Kauj Ruam
Cov av noo noo Cov lus pom zoo Tswj Xyuas Internet Txuas Cov Dej Dej (ESP32 thiab Blynk): Tsis txhawj xeeb txog koj lub vaj lossis nroj tsuag thaum koj mus rau hnub so ntev, lossis tsis nco qab ywg dej koj cov nroj tsuag txhua hnub. Zoo ntawm no yog kev daws teeb meem Nws cov av ya raws tswj hwm thiab thoob ntiaj teb txuas nrog cov dej txau dej tswj los ntawm ESP32 ntawm software pem hauv ntej kuv
UCL -IIOT - Cov Ntaub Ntawv Teev Npe ntawm Raspberry Pi: 6 Cov Kauj Ruam
UCL -IIOT - Cov Ntaub Ntawv Teev Npe ntawm Raspberry Pi: Cov lus qhia no tau tsim los ntawm Obayda Haj Hamoud thiab Sidse Henriksen rau lub tsev kawm ntawv txoj haujlwm. Lub tswv yim tseem ceeb yog khaws cov ntaub ntawv los ntawm lub teeb pom kev zoo, txiav cov ntaub ntawv mus rau lub chaw khaws ntaub ntawv wirelessly ntawm raspberry pi thiab saib xyuas cov ntaub ntawv los ntawm lub dashboard
UCL - IIoT - Cov ntaub ntawv noo noo: 6 Cov Kauj Ruam
UCL - IIoT - Cov ntaub ntawv noo noo: Cov lus qhia no, yuav muab cov ntaub ntawv rau koj ntawm cov dej noo los ntawm cov av, uas yuav tuaj yeem pom ntawm UI nrog rau ntawm liab -liab, ntxiv mus yuav tau khaws cov ntaub ntawv thiab muab tso rau hauv MySQL database, qhov no tuaj yeem pab koj kawm paub cov qauv dej f
EAL-Industri4.0-RFID Dataopsamling Til Database: 10 Cov Kauj Ruam (nrog Duab)
EAL-Industri4.0-RFID Dataopsamling Til Database: Dette projekt omhandler opsamling af v æ gtdata, registerrering af identiteter vha. RFID, lagring cov ntaub ntawv i en MySQL database vha. node-RED, samt fremvisning og behandling af de opsamlede data i et C# program i form af en Windows Form Application