Det sidste årti af Industry 4.0-revolutionen har vist værdien og vigtigheden af maskinlæring (ML) på tværs af vertikaler og miljøer, med større indflydelse på produktionen end muligvis nogen anden applikation. Organisationer, der implementerer en mere automatiseret, pålidelig og omkostningseffektiv Operational Technology (OT)-strategi, har ført an, idet de anerkender fordelene ved ML ved at forudsige samlebåndsfejl for at undgå dyr og uplanlagt nedetid. Alligevel er der stadig udfordringer for teams af alle størrelser for hurtigt og med en lille indsats at demonstrere værdien af ML-baseret anomalidetektion for at overtale ledelses- og finansieringsejere til at allokere det nødvendige budget til at implementere disse nye teknologier. Uden adgang til dataforskere til modeltræning eller ML-specialister til at implementere løsninger på lokalt niveau, har adoption virket uden for rækkevidde for teams på fabriksgulvet.
Nu kan teams, der indsamler sensordatasignaler fra maskiner på fabrikken, låse op for styrken ved tjenester som f.eks Amazon Timestream, Amazon Lookout for udstyrog AWS IoT Core for nemt at skrue op og teste et fuldt produktionsklart system på den lokale kant for at hjælpe med at undgå katastrofale nedetidshændelser. Lookout for Equipment bruger din unikke ML-model til at analysere indkommende sensordata i realtid og præcist identificere tidlige advarselstegn, der kan føre til maskinfejl. Dette betyder, at du kan opdage unormale udstyr med hastighed og præcision, hurtigt diagnosticere problemer, træffe foranstaltninger for at reducere dyr nedetid og reducere falske advarsler. Responsteams kan advares med specifikke punkter, hvilke sensorer der indikerer problemet, og omfanget af indvirkningen på den detekterede hændelse.
I dette indlæg viser vi dig, hvordan du kan konfigurere et system til at simulere hændelser på din fabriksgulv med en trænet model og opdage unormal adfærd ved hjælp af Timestream, Lookout for Equipment og AWS Lambda funktioner. Trinene i dette indlæg understreger AWS Management Console UI, der viser, hvordan tekniske mennesker uden en udviklerbaggrund eller stærke kodningsevner kan bygge en prototype. Brug af simulerede sensorsignaler vil give dig mulighed for at teste dit system og opnå selvtillid, før du går over til produktion. Til sidst bruger vi i dette eksempel Amazon Simple Notification Service (Amazon SNS) for at vise, hvordan teams kan modtage meddelelser om forudsagte hændelser og reagere for at undgå katastrofale følger af samlebåndsfejl. Derudover kan teams bruge Amazon QuickSight for yderligere analyser og dashboards til rapportering.
Løsningsoversigt
For at komme i gang indsamler vi først et historisk datasæt fra dine fabrikssensoraflæsninger, indtager dataene og træner modellen. Med den trænede model satte vi så op IoT-enhedssimulator at udgive MQTT-signaler til et emne, der vil tillade test af systemet for at identificere ønskede produktionsindstillinger, før produktionsdata bruges, hvilket holder omkostningerne nede.
Følgende diagram illustrerer vores løsningsarkitektur.
Arbejdsgangen indeholder følgende trin:
- Brug eksempeldata til at træne Lookout for Equipment-modellen og de medfølgende mærkede data til at forbedre modellens nøjagtighed. Med en samplerate på 5 minutter kan vi træne modellen på 20–30 minutter.
- Kør en AWS CloudFormation skabelon for at aktivere IoT Simulator og oprette en simulering for at udgive et MQTT-emne i formatet af sensordatasignalerne.
- Opret en IoT-regelhandling for at læse MQTT-emnet og sende emnenyttelasten til Timestream til lagring. Disse er realtidsdatasæt, der vil blive brugt til at konkludere med ML-modellen.
- Opsæt en Lambda-funktion udløst af Amazon Eventbridge at konvertere data til CSV-format for Lookout for Equipment.
- Opret en Lambda-funktion til at parse Lookout for Equipment-model-inferencing-outputfil i Amazon Simple Storage Service (Amazon S3), og hvis der er forudsagt fejl, send en e-mail til den konfigurerede adresse. Brug desuden AWS Lim, Amazonas Athena, og QuickSight for at visualisere sensordatabidragene til den forudsagte fejlhændelse.
Forudsætninger
Du skal have adgang til en AWS-konto for at konfigurere miljøet til registrering af uregelmæssigheder.
Simuler data og indtag det i AWS Cloud
For at konfigurere dine data og indlæsningskonfiguration skal du udføre følgende trin:
- Download træningsfilen subsystem-08_multisensor_training.csv og etiketfilen labels_data.csv. Gem filerne lokalt.
- På Amazon S3-konsollen i din foretrukne region skal du oprette en bøtte med et unikt navn (f.eks.
l4e-training-data)
, ved at bruge standardkonfigurationsindstillingerne. - Åbn spanden og vælg Upload, derefter Tilføj filer.
- Upload træningsdataene til en mappe kaldet
/training-data
og etiketdataene til en mappe kaldet/labels
.
Dernæst opretter du ML-modellen, der skal trænes med dataene fra S3-bøtten. For at gøre dette skal du først oprette et projekt.
- På Lookout for Equipment-konsollen skal du vælge Opret projekt.
- Navngiv projektet og vælg Opret projekt.
- På Tilføj datasæt side, skal du angive din S3-spandplacering.
- Brug standardindstillingerne for Lav en ny rolle , Aktiver CloudWatch-logfiler.
- Vælg Efter filnavn forum Skema detektionsmetode.
- Vælg Start indtagelse.
Indtagelse tager et par minutter at fuldføre.
- Når indlæsningen er fuldført, kan du gennemgå datasættets detaljer ved at vælge Se datasæt.
- Rul ned på siden og gennemgå Detaljer efter sensor sektion.
- Rul til bunden af siden for at se, at sensorgraden for data fra tre af sensorerne er mærket
Low
. - Vælg alle sensorregistreringer undtagen de tre med Lav grad.
- Vælg Opret model.
- På Angiv modeldetaljer side, giv modellen et navn og vælg Næste.
- På Konfigurer inputdata side, skal du indtaste værdier for trænings- og evalueringsindstillingerne og en prøvefrekvens (for dette indlæg, 1 minut).
- Spring over Off-time detektion indstillinger og vælg Næste.
- På Angiv dataetiketter side, skal du angive S3-mappens placering, hvor etiketdataene er.
- Type Lav en ny rolle.
- Vælg Næste.
- På Gennemgå og træne side, vælg Start træning.
Med en prøvehastighed på 5 minutter bør modellen tage 20-30 minutter at bygge.
Mens modellen bygger, kan vi sætte resten af arkitekturen op.
Simuler sensordata
- Vælg Start Stack at lancere en CloudFormation-skabelon til at opsætte de simulerede sensorsignaler vha IoT Simulator.
- Når skabelonen er lanceret, skal du navigere til CloudFormation-konsollen.
- På Stakke side, vælg
IoTDeviceSimulator
for at se stakdetaljerne. - På Udgange fanen, find
ConsoleURL
nøgle og den tilsvarende URL-værdi. - Vælg URL'en for at åbne loginsiden til IoT Device Simulator.
- Opret et brugernavn og en adgangskode og vælg Log ind.
- Gem dine legitimationsoplysninger, hvis du skal logge ind igen senere.
- Fra IoT Device Simulator-menulinjen skal du vælge Enhedstyper.
- Indtast et enhedstypenavn, f.eks
My_testing_device
. - Indtast et MQTT-emne, som f.eks
factory/line/station/simulated_testing
. - Vælg Tilføj attribut.
- Indtast værdierne for attributten
signal5
, som vist i følgende skærmbillede. - Vælg Gem.
- Vælg Tilføj attribut igen og tilføj de resterende attributter for at matche prøvesignaldataene, som vist i følgende tabel.
. | signal5 | signal6 | signal7 | signal8 | signal48 | signal49 | signal78 | signal109 | signal120 | signal121 |
Lav | 95 | 347 | 27 | 139 | 458 | 495 | 675 | 632 | 742 | 675 |
Hi | 150 | 460 | 217 | 252 | 522 | 613 | 812 | 693 | 799 | 680 |
- På Simuleringer fanebladet, vælg Tilføj simulering.
- Giv simulationen et navn.
- Angiv Simuleringstype as Bruger oprettet, Enhedstype som den nyligt oprettede enhed, Dataoverførselsinterval som 60, og Datatransmissionsvarighed som 3600.
- Til sidst skal du starte den simulering, du lige har oprettet, og se nyttelasterne, der er genereret på Simuleringsdetaljer side ved at vælge Specifikation.
Nu hvor signaler bliver genereret, kan vi konfigurere IoT Core til at læse MQTT-emnerne og dirigere nyttelasterne til Timestream-databasen.
- På IoT Core-konsollen, under Meddelelsesruting i navigationsruden skal du vælge Regler.
- Vælg Opret regel.
- Indtast et regelnavn, og vælg Næste.
- Indtast følgende SQL-sætning for at trække alle værdierne fra det offentliggjorte MQTT-emne:
- Vælg Næste.
- Til Regel handlinger, søg efter Timestream-tabellen.
- Vælg Opret Timestream-database.
En ny fane åbnes med Timestream-konsollen.
- Type Standard database.
- Navngiv databasen
sampleDB
Og vælg Opret database.
Du bliver omdirigeret til Timestream-konsollen, hvor du kan se den database, du har oprettet.
- Vend tilbage til fanen IoT Core og vælg
sampleDB
forum Databasens navn. - Vælg Opret tidsstrømstabel at tilføje en tabel til databasen, hvor sensordatasignalerne vil blive lagret.
- På Timestream-konsollen Opret tabel fanebladet, vælg
sampleDB
forum Databasens navn, gå indsignalTable
forum Tabelnavn, og vælg Opret tabel. - Vend tilbage til IoT Core-konsolfanen for at fuldføre IoT-meddelelsesroutingsreglen.
- Indtast
Simulated_signal
forum Dimensionsnavn og 1 for Dimensioner værdi, Og vælg derefter Opret ny rolle.
- Navngiv rollen
TimestreamRole
Og vælg Næste. - På Gennemgå og opret side, vælg Opret.
Du har nu tilføjet en regelhandling i IoT Core, der dirigerer de offentliggjorte data til MQTT-emnet til en Timestream-database.
Forespørgselstidsstrøm til analyse
For at forespørge Timestream til analyse skal du udføre følgende trin:
- Bekræft, at dataene gemmes i databasen ved at navigere til Timestream-konsollen og vælge Query Editor.
- Vælg Vælg bord, vælg derefter indstillingsmenuen og Vis data.
- Vælg Kør for at forespørge i tabellen.
Nu hvor data bliver gemt i strømmen, kan du bruge Lambda og EventBridge til at trække data hvert 5. minut fra bordet, formatere det og sende det til Lookout for Equipment for at få slutninger og forudsigelsesresultater.
- Vælg på Lambda-konsollen Opret funktion.
- Til Runtime, vælg Python 3.9.
- Til Lagkilde, Vælg Angiv et ARN.
- Indtast det korrekte ARN for din region fra aws pandas ressource.
- Vælg Tilføj.
- Indtast følgende kode i funktionen, og rediger den, så den matcher S3-stien til en bøtte med mappen
/input
(opret en bøttemappe til disse datastrømfiler, hvis de ikke allerede er til stede).
Denne kode bruger awswrangler
bibliotek for nemt at formatere dataene i den nødvendige CSV-formular, der er nødvendig for Lookout for Equipment. Lambda-funktionen navngiver også datafilerne dynamisk efter behov.
- Vælg Implementer.
- På Konfiguration fanebladet, vælg Generel konfiguration.
- Til Timeout, vælg 5 minutter.
- I Funktionsoversigt sektion, skal du vælge Tilføj trigger med EventBridge som kilde.
- Type Opret en ny regel.
- Navngiv reglen
eventbridge-cron-job-lambda-read-timestream
og tilføjerate(5 minutes)
forum Tidsplan udtryk. - Vælg Tilføj.
- Tilføj følgende politik til din Lambda-udførelsesrolle:
Forudsige uregelmæssigheder og underret brugerne
Udfør følgende trin for at konfigurere forudsigelse og meddelelse om uregelmæssigheder:
- Vend tilbage til projektsiden Lookout for Equipment og vælg Planlæg slutning.
- Navngiv tidsplanen og angiv den tidligere oprettede model.
- Til Indtast data, angiv S3
/input
placering, hvor filer skrives ved hjælp af Lambda-funktionen og EventBridge-udløseren. - sæt Dataoverførselsfrekvens til 5 minutter og forlade Offset forsinkelsestid at 0 minutter.
- Indstil en S3-sti med
/output
som mappen og efterlad andre standardværdier. - Vælg Planlæg slutning.
Efter 5 minutter skal du kontrollere S3 /output
sti for at bekræfte, at forudsigelsesfiler er oprettet. For mere information om resultaterne, se Gennemgang af konklusioner.
Til sidst opretter du en anden Lambda-funktion, der udløser en notifikation ved hjælp af Amazon SNS, når en anomali forudsiges.
- På Amazon SNS-konsollen skal du vælge Opret emne.
- Til Navn, gå ind
emailnoti
. - Vælg Opret.
- I Detaljer afsnit, for Type, Vælg standard.
- Vælg Opret emne.
- På Abonnementer fanen, opret et abonnement med E-mail type as protokol og en slutpunkts-e-mailadresse, du kan få adgang til.
- Vælg Opret abonnement og bekræft abonnementet, når e-mailen ankommer.
- På Emne fanen, skal du kopiere ARN.
- Opret endnu en Lambda-funktion med følgende kode og indtast ARN-emnet
MY_SYS_ARN
: - Vælg Implementer at implementere funktionen.
Når Lookout for Equipment registrerer en anomali, er forudsigelsesværdien 1 i resultaterne. Lambdakoden bruger JSONL-filen og sender en e-mailmeddelelse til den konfigurerede adresse.
- Under Konfiguration, vælg Tilladelser , Rollenavn.
- Vælg Vedhæft politikker og tilføje
AmazonS3FullAccess
,AmazonSNSFullAccess
til rollen. - Tilføj endelig en S3-trigger til funktionen og angiv
/output
spand.
Efter et par minutter vil du begynde at se e-mails ankomme hvert 5. minut.
Visualiser slutningsresultater
Efter at Amazon S3 har lagret forudsigelsesresultaterne, kan vi bruge AWS Glue Data Catalog med Athena og QuickSight til at oprette rapporteringsdashboards.
- På AWS Glue-konsollen skal du vælge Crawlere i navigationsruden.
- Vælg Opret crawler.
- Giv webcrawleren et navn, som f.eks
inference_crawler
. - Vælg Tilføj en datakilde og vælg S3 skovlstien med
results.jsonl
filer. - Type Gennemgå alle undermapper.
- Vælg Tilføj en S3-datakilde.
- Vælg Opret ny IAM-rolle.
- Opret en database og angiv et navn (f.eks.
anycompanyinferenceresult
). - Til Crawler tidsplan, vælg On demand.
- Vælg Næste, Og vælg derefter Opret crawler.
- Når webcrawleren er færdig, skal du vælge Kør crawler.
- Åbn forespørgselseditoren på Athena-konsollen.
- Vælg Rediger indstillinger for at konfigurere en forespørgselsresultatplacering i Amazon S3.
- Hvis du ikke har oprettet en bøtte, skal du oprette en nu via Amazon S3-konsollen.
- Vend tilbage til Athena-konsollen, vælg spanden, og vælg Gem.
- Tilbage til editor fanen i forespørgselseditoren og kør en forespørgsel til
select *
fra/output
S3 mappe. - Gennemgå resultaterne, der viser anomalidetektion som forventet.
- For at visualisere forudsigelsesresultaterne skal du navigere til QuickSight-konsollen.
- Vælg Ny analyse , Nyt datasæt.
- Til Datasætkilde, vælg Athena.
- Til Datakildenavn, gå ind
MyDataset
. - Vælg Opret datakilde.
- Vælg den tabel, du har oprettet, og vælg derefter Brug tilpasset SQL.
- Indtast følgende forespørgsel:
- Bekræft forespørgslen og vælg Visualiser.
- Vælg Drejebord.
- Angiv tidsstempel , sensor forum Rækker.
- Angiv forudsigelse , ScoreVærdi forum Værdier.
- Vælg Tilføj Visual at tilføje et visuelt objekt.
- Vælg Lodret søjlediagram.
- Angiv Timestamp forum X-aksen, ScoreVærdi forum Værdiog Sensor forum Gruppe/Farve.
- Skift ScoreVærdi til Samlet: Gennemsnit.
Ryd op
Manglende sletning af ressourcer kan medføre yderligere gebyrer. For at rydde op i dine ressourcer skal du udføre følgende trin:
- Vælg på QuickSight-konsollen Nye i navigationsruden.
- Slet alle de ressourcer, du har oprettet som en del af dette indlæg.
- Naviger til datasæt side og slet de datasæt, du har oprettet.
- På Lookout for Equipment-konsollen skal du slette de projekter, datasæt, modeller og slutningsplaner, der bruges i dette indlæg.
- Slet databasen og tilknyttede tabeller på Timestream-konsollen.
- På Lambda-konsollen skal du slette EventBridge- og Amazon S3-udløserne.
- Slet S3-buckets, IoT Core-reglen og IoT-simuleringer og -enheder.
Konklusion
I dette indlæg lærte du, hvordan du implementerer maskinlæring til forudsigelig vedligeholdelse ved hjælp af streamingdata i realtid med en low-code tilgang. Du lærte forskellige værktøjer, der kan hjælpe dig i denne proces, ved at bruge administrerede AWS-tjenester som Timestream, Lookout for Equipment og Lambda, så operationelle teams ser værdien uden at tilføje yderligere arbejdsbyrder til overhead. Fordi arkitekturen bruger serverløs teknologi, kan den skaleres op og ned for at opfylde dine behov.
For flere databaserede læringsressourcer, besøg AWS Blog hjemmeside.
Om forfatteren
Matt Reed er Senior Solutions Architect i Automotive and Manufacturing hos AWS. Han brænder for at hjælpe kunder med at løse problemer med cool teknologi for at gøre alles liv bedre. Matt elsker at cykle på mountainbike, stå på ski og hænge ud med venner, familie og hunde og katte.
- SEO Powered Content & PR Distribution. Bliv forstærket i dag.
- Platoblokkæde. Web3 Metaverse Intelligence. Viden forstærket. Adgang her.
- Kilde: https://aws.amazon.com/blogs/machine-learning/use-machine-learning-to-detect-anomalies-and-predict-downtime-with-amazon-timestream-and-amazon-lookout-for-equipment/
- 1
- 10
- 100
- 11
- 28
- 7
- 9
- a
- Om
- adgang
- Adgang til data
- Konto
- nøjagtighed
- præcist
- tværs
- Handling
- tilføjet
- Yderligere
- Derudover
- adresse
- Vedtagelse
- Alle
- allerede
- Amazon
- Amazon Timestream
- analyse
- analysere
- ,
- afsløring af anomalier
- En anden
- Anvendelse
- tilgang
- arkitektur
- Ankommer
- Assembly
- forbundet
- attributter
- Automatiseret
- automotive
- AWS
- AWS Lim
- baggrund
- Bar
- fordi
- før
- være
- fordele
- Bedre
- Blog
- krop
- Bund
- budget
- bygge
- Bygning
- kaldet
- tilfælde
- katalog
- katastrofale
- Katte
- udfordringer
- afgifter
- kontrollere
- Vælg
- vælge
- kunde
- kode
- Kodning
- indsamler
- fuldføre
- tillid
- Konfiguration
- Bekræfte
- Konsol
- indeholder
- indhold
- sammenhæng
- bidrag
- konvertere
- Cool
- Core
- Tilsvarende
- omkostningseffektiv
- Omkostninger
- kunne
- crawler
- skabe
- oprettet
- Legitimationsoplysninger
- Cross
- skik
- Kunder
- skære
- data
- Database
- datasæt
- dato tid
- årti
- Standard
- defaults
- forsinkelse
- demonstrere
- indsætte
- detaljer
- opdaget
- Detektion
- Udvikler
- enhed
- Enheder
- forskellige
- direkte
- Dont
- ned
- nedetid
- Tidligt
- nemt
- Edge
- editor
- effekt
- effekter
- indsats
- emails
- understrege
- muliggøre
- Endpoint
- Indtast
- Miljø
- miljøer
- udstyr
- Ether (ETH)
- evaluering
- begivenhed
- begivenheder
- alles
- eksempel
- Undtagen
- udførelse
- forventet
- dyrt
- fabrik
- Manglende
- familie
- få
- File (Felt)
- Filer
- finansiere
- Finde
- Fornavn
- Gulvlampe
- efter
- formular
- format
- venner
- fra
- fuldt ud
- funktion
- funktioner
- yderligere
- Gevinst
- genereret
- få
- Giv
- klasse
- gruppe
- Hænge
- hjælpe
- hjælpe
- historisk
- Home
- Hvordan
- How To
- HTML
- HTTPS
- identificere
- KIMOs Succeshistorier
- gennemføre
- gennemføre
- importere
- betydning
- Forbedre
- in
- Indgående
- industrien
- industri 4.0
- oplysninger
- indgang
- tingenes internet
- IoT-enhed
- spørgsmål
- spørgsmål
- IT
- deltage
- json
- holde
- Nøgle
- etiket
- Etiketter
- Efternavn
- lancere
- lanceret
- føre
- lærte
- læring
- Forlade
- Led
- Niveau
- Bibliotek
- Livet
- Line (linje)
- lidt
- lokale
- lokalt
- placering
- Lav
- maskine
- machine learning
- Maskiner
- vedligeholdelse
- lave
- lykkedes
- ledelse
- Produktion
- Match
- midler
- Mød
- Menu
- besked
- beskeder
- minutter
- ML
- model
- modeller
- mere
- navn
- navne
- Naviger
- navigering
- Navigation
- Behov
- behov
- Ny
- Nye teknologier
- underretning
- meddelelser
- objekt
- ONE
- åbent
- åbner
- operationelle
- Indstillinger
- ordrer
- organisationer
- OS
- Andet
- ejere
- pandaer
- brød
- del
- lidenskabelige
- Adgangskode
- sti
- Mennesker
- plato
- Platon Data Intelligence
- PlatoData
- politik
- Indlæg
- magt
- Precision
- forudsige
- forudsagde
- forudsige
- forudsigelse
- foretrækkes
- præsentere
- tidligere
- problemer
- behandle
- produktion
- projekt
- projekter
- prototype
- give
- forudsat
- offentliggøre
- offentliggjort
- hurtigt
- Sats
- nå
- Læs
- ægte
- realtid
- modtage
- for nylig
- optegnelser
- reducere
- region
- pålidelig
- forblive
- resterende
- Rapportering
- påkrævet
- ressource
- Ressourcer
- Svar
- svar
- REST
- resultere
- Resultater
- afkast
- gennemgå
- revolution
- roller
- Herske
- Kør
- Gem
- Scale
- planlægge
- forskere
- Søg
- Anden
- Sektion
- syntes
- sensorer
- Serverless
- Tjenester
- sæt
- indstillinger
- bør
- Vis
- vist
- underskrive
- Signal
- signaler
- Skilte
- Simpelt
- simulation
- simulator
- størrelser
- færdigheder
- So
- løsninger
- Løsninger
- SOLVE
- Kilde
- specialister
- specifikke
- hastighed
- Spin
- stable
- starte
- påbegyndt
- Statement
- Steps
- Stadig
- opbevaring
- opbevaret
- forhandler
- Strategi
- strøm
- streaming
- stærk
- emne
- abonnement
- sådan
- systemet
- bord
- Tag
- tager
- hold
- Teknisk
- Teknologier
- Teknologier
- skabelon
- prøve
- Test
- Projekterne
- The Source
- tre
- tid
- tidsstempel
- til
- værktøjer
- emne
- Emner
- Tog
- uddannet
- Kurser
- udløse
- udløst
- ui
- under
- enestående
- låse
- URL
- brug
- Bruger
- UTC
- værdi
- Værdier
- verificere
- udgave
- vertikaler
- via
- Specifikation
- advarsel
- som
- vilje
- uden
- skriftlig
- Din
- zephyrnet