Hvordan man effektivt implementerer applikationer til sporing af aktiver med flere tilslutningsmuligheder
2023-01-11
Avancerede applikationer til sporing af aktiver, f.eks. overvågning af husdyr, flådestyring og logistik, registrerer automatisk aktuelle statusoplysninger og positionskoordinater for sporede objekter. En indbygget transponder videresender logningsdata til skyen og gør dem tilgængelige for kontrolcentret eller en mobilenhed. På fabriksgulvet er det ofte nødvendigt med trådløse dataopdateringer med kort rækkevidde for at udveksle logistikdata, proceshistorik og overvågningsdata, ændre konfigurationer eller udføre firmwareopdateringer i transponderhukommelsen.
Udviklere af sådanne systemer til sporing af aktiver står over for den udfordring at designe en multifunktionel sensortransponder, der kommunikerer via forskellige radioprotokoller med lang og kort rækkevidde, indsamler en lang række måledata, fungerer i månedsvis uden udskiftning af batterier og gør alle data tilgængelige via internettjenester. Desuden skal designerne opnå alt dette, samtidig med at de skal sænke omkostningerne og reducere tiden til markedsføringen.
Selv om opgavens enorme omfang kan være overvældende, kan designere spare meget tid og energi ved at bruge udviklingskits, der allerede indeholder meget af den nødvendige hardware og software.
Denne artikel omhandler de tekniske krav til avanceret sporing af aktiver på tværs af flere applikationer. Derefter introduceres et multifunktionelt udviklingskit fra STMicroelectronics, som reducerer den krævede indsats til prototype-design, test og evaluering betydeligt. Den giver et indblik i de vigtigste funktionelle funktioner i udviklingskittet og viser, hvordan udviklere nemt kan tilpasse funktionerne i de kombinerede System On Chip-moduler (SoC) uden at skulle kode og derefter hente og visualisere data fra skyen.
Funktioner af en trådløs måletransponder
Der findes en lang række anvendelsesområder for sporing af aktiver, som hver især kræver meget specifikt teknisk udstyr til transponderen og det tilknyttede netværk. Figur 1 viser de tekniske egenskaber ved en trådløs transponder til måling i fire anvendelseskategorier.
Figur 1: Funktionerne i en trådløs transponder til måling afhænger af applikationen til sporing af aktiver. (Billedkilde: STMicroelectronics)
En autonom transponder, der medføres sammen med objektet, skal registrere miljøpåvirkninger, objektets position og status (registrering, figur 1), lagre dem og udsende dem ved næste lejlighed via en af en række forskellige trådløse grænseflader (tilslutning). Signalbehandling og konvertering til forskellige trådløse protokoller skal håndteres af en tilstrækkelig kraftig mikrocontroller (MCU) med en høj grad af datasikkerhed ("Behandling og sikkerhed"). MCU'en styrer også energistyringen ("Strømstyring") og sikrer dermed, at transponderbatteriet har en lang levetid.
Den nødvendige datatilgængelighed for en applikation til sporing af aktiver påvirker kompleksiteten af sensorerne og kræver passende tilslutningsmuligheder. For forudsigelige kendte transportruter, f.eks. ved pakkeudbringning, er det tilstrækkeligt at gemme målesignalerne i transponderen. Dataene kan derefter aflæses på tæt hold ved hjælp af Bluetooth low energy (BLE) eller NFC-kommunikation (near field communication) ved det næste logistiske kontrolpunkt.
I forbindelse med flådestyring, logistik og overvågning af husdyr over lange afstande skal dataoverførslen fra transponderen via skyen til slutbrugerapplikationen foregå så tæt på realtid som muligt. Transponderen kræver derfor en mobil radiogrænseflade til at dække en stor rækkevidde. Valgmulighederne omfatter LoRaWAN (Long Range Wide Area Network), Sigfox og Narrowband-Internet of Things (NB-IoT), fordi disse protokoller er optimeret til dataoverførsler med lavt gennemløb og energibesparende dataoverførsler.
Et komplet økosystem til sporing af aktiver for mindre udviklingsarbejde
Systemdesignere, der ønsker at realisere deres applikation til sporing af aktiver (ASTRA) på en omkostnings- og tidseffektiv måde, kan bruge den multifunktionelle STEVAL-ASTRA1B-udviklingsplatform fra STMicroelectronics. Platformen omfatter flere IC'er og SoC-moduler, hvilket i høj grad forenkler prototyping, programmering, testning og evaluering af innovative sporings- og overvågningsløsninger. Udviklingskittet består af et modulært evalueringskort, firmware-biblioteker, programmeringsværktøjer og kredsløbsdokumentation samt en app til mobile enheder og en webbaseret visualiseringsgrænseflade (figur 2).
Figur 2: Det færdige økosystem til sporing af aktiver strækker sig fra den trådløse transponder til skyen til slutapplikationen, hvilket reducerer udviklingsarbejdet. (Billedkilde: STMicroelectronics)
STEVAL-ASTRA1B-kortet er baseret på to SoC-moduler med lav effekt til kort- og langdistanceforbindelser samt NFC. Der er indbygget et modul til datasikkerhedsfunktioner. Carrier-kortet har flere miljø- og bevægelsessensorer samt et GNSS-modul (Global Navigation Satellite System), der leverer positionskoordinater og muliggør geofencing. Et strømstyringssystem regulerer driftstilstanden for alle enhedskomponenter og styrer strømforsyningen. Strømforsyningen består af en switch-konverter, et batteri og en USB-C-opladningscontroller for at forlænge batteriets levetid mest muligt. Ved levering omfatter kittet et 480 milliampere-timer (mAh) litiumpolymerbatteri (Li-Poly), et etui, en SMA-antenne (LoRa) og en NFC-antenne.
STEVAL-ASTRA1B-kortets IC'er og SoC'er omfatter:
- To trådløse SoC'er:
- STM32WB5MMGH6TR: Dette SoC-modul baseret på et trådløst 2,4 gigahertz (GHz) trådløst Ultra-Low-Power Arm® Cortex®-M4/M0+ MCU fungerer som den primære applikationsprocessor og understøtter 802.15.4, BLE 5.0, Thread og Zigbee
- STM32WL55JCI6: Denne trådløse SoC er baseret på en trådløs Ultra-Low-Power Arm Cortex M0+ MCU og understøtter LoRa, Sigfox og GFSK ved sub 1 gigahertz (GHz) (150 - 960 megahertz (MHz))
- ST25DV64K-JFR8D3: NFC-sender
- TESEO-LIV3F: GNSS-modul med samtidig multikonstellation
- Miljø- og bevægelsessensorer:
- STTS22HTR: Digital temperatursensor; -40 til 125 °C
- LPS22HHHTR: Tryksensor; 26 til 126 kilopascal (kPa), absolut
- HTS221TR: Fugtigheds- og temperatursensor; 0 til 100 % relativ fugtighed (RH) I²C, SPI ±4,5 % RH
- LIS2DTW12TR: Accelerometer X-, Y- og Z-akse; ±2g, 4g, 8g, 16g 0,8 Hertz (Hz) til 800 Hz
- LSM6DSO32XTR: Accelerometer, gyroskop, temperatursensor I²C, SPI-udgang
- STSAFE-A110: Sikkerhedselement
- Batteridrevet løsning med smart strømstyringsarkitektur:
- ST1PS02BQTR: Buck switching regulator IC; positivt justerbar, 1,8 volt, 1 udgang, 400 milliampere (mA)
- STBC03JR: Batterioplader IC til lithium-ion (Li-ion) eller Li-Poly
- TCPP01-M12: Beskyttelse af USB Type-C og strømforsyning
Evalueringskortet fungerer ved temperaturer fra +5 til 35 °C og bruger følgende frekvensbånd:
- BLE: 2400 MHz til 2480 MHz, +6 decibel refereret til en milliwatt (mW) (dBm)
- LoRaWAN: 863 MHz til 870 MHz, +14 dBm (begrænset af firmwaren)
- GNSS (modtager): 1559 MHz til 1610 MHz
- NFC: 13,56 MHz
Den interne struktur af STEVAL-ASTRA1B
ASTRA-transponderen opfører sig som en datalogger og opdeler sin datastrøm i tre hovedblokke, der hver især består af hardware- og softwaredrivere samt applikationslaget (figur 3). Dataindgangen (Figur 3, venstre) opfanger alle sensorsignaler om bord. Den centrale blok (figur 3, midten) behandler og lagrer dataene. Endelig udsendes de lagrede data trådløst (figur 3 til højre). I tilfælde af en rekonfiguration, en firmwareopdatering eller skrivning af proces-/logistikdata går signalstrømmen i den modsatte retning.
Figur 3: Datastrøm i den trådløse måletransponder: sensorsignalerne (venstre) behandles, lagres (midten) og sendes (højre), når muligheden opstår. (Billedkilde: STMicroelectronics)
FP-ATR-ASTRA1-firmwaren udvider STMicroelectronics' STM32Cube-udviklingsmiljø og implementerer en komplet applikation til sporing af aktiver, der understøtter langtrækkende (LoRaWAN, Sigfox) og korttrækkende (BLE, NFC) tilslutningsmuligheder. Den funktionelle pakke læser data fra miljø- og bevægelsessensorer, henter GNSS-geopositionering og sender det hele til en mobilenhed via BLE og parallelt til skyen via LoRaWAN-forbindelse.
FP-ATR-ASTRA1-pakken understøtter profiler med lavt strømforbrug for at sikre lang batterilevetid og maksimal autonomi. Det giver også vigtige funktioner som sikker elementstyring, mulighed for at tilføje brugerdefinerede algoritmer, fejlfindingsgrænseflader og udvidelsesmuligheder.
Softwarepakken er opdelt i: Dokumentation, drivere og HAL, middleware og eksempelprojekter. Projekterne omfatter kildekode og kompilerede binære filer til Keil, IAR og STM32Cube integrerede udviklingsmiljøer (IDE'er). Følgende fem foruddefinerede anvendelsestilfælde kan konfigureres individuelt: flådestyring, overvågning af husdyr, vareovervågning, logistik og brugerdefineret.
STEVAL-ASTRA1B fungerer som en simpel tilstandsmaskine, der ændrer sin driftstilstand afhængigt af begivenheder. De to hovedtilstande er designet til fuld drift (Run) eller lav effekt (LP). I Run-tilstand er alle funktioner aktive, og alle data udsendes som konfigureret. I LP-tilstand er alle komponenter, undtagen MCU'en, indstillet til lav energitilstand eller deaktiveret (Figur 4).
Figur 4: STEVAL-ASTRA1B's to primære driftstilstande er fuld drift (Run) eller LP-tilstand. (Billedkilde: STMicroelectronics)
Ved at trykke på sidetasten udløses overgangen mellem de to tilstande. Et andet input kan være resultatet af en MEMS-begivenhed (mikroelektromekaniske systemer) eller resultatet af en algoritme. Dette er blot et eksempel på, hvordan en tilstandsmaskine kan implementeres for at ændre enhedens adfærd. Der kan også implementeres flere mellemliggende tilstande for at afbalancere systemets reaktionsevne og batterilevetid.
Mulige begivenheder er
- BP: Begivenhed med trykket knap
- SD: lukningsbegivenhed
- ER: Fejlhændelse
- EP: Automatisk overgang til næste trin
- RN: Gå til fuld udførelse af kommando
- LP: Gå til kommandoen med lavt strømforbrug
Hent og visualiser cloud-data
STEVAL-ASTRA1B-transponderen har FP-ATR-ASTRA1-firmwarepakken forudinstalleret, så miljømålingssignaler og GNSS-positionsdata kan visualiseres på få minutter.
Ved hjælp af STAssetTracking-mobilappen til smartphones og tablets, der har Bluetooth aktiveret og er forbundet til internettet, registreres transponderen på TTN (The Things Network) V3-netværksserveren som LoRaWAN-deltager via myst.com-brugerkontoen. Den er også knyttet til DSH-ASSETRACKING-webinstrumentbrættet på Amazon Web Services (AWS).
Efter TTN-registreringen vises STEVAL-ASTRA1B på den opdaterede enhedsliste i mobilappen. Ved at trykke på knappen "Start synkronisering" i menuen aktiveres transponderens sendemode, så den sender de lagrede data parallelt via BLE og LoRaWAN. Mobilappen kan vise måledataene fra hukommelsen på et dashboard og udgive transponderens GNSS-position eller vise den som en markør på et kort (figur 5).
Figur 5: Mobilappen hjælper med at registrere transponderen hos TTN og forbinde den med cloud-dashboardet; den visualiserer loggede sensorværdier og hjælper med konfiguration og fejlfinding. (Billedkilde: STMicroelectronics)
Ud over ASTRA-transponderen kan web-dashboardet samle mange andre selvstændige trådløse trackere som P-L496G-CELL02 (LTE) og NUCLEO-S2868A2 (Sigfox RF-sender) eller internetkoblede knudepunkter som STEVAL-SMARTAG1 (Wi-Fi), STEVAL-MKSBOX1V1 (BLE-slutknude) og STEVAL-SMARTAG1 (NFC-slutknude) i skyen. Dette gør det muligt at udvikle et cloud-baseret trådløst multiprotokol-økosystem.
Individuel konfiguration og programmering
Når fabriksindstillingerne for ASTRA-transponderen er blevet evalueret med succes under den første idriftsættelse, er det næste skridt for udvikleren at tilpasse transponderen til sin egen applikation til sporing af aktiver.
Ved mindre tilpasningsarbejde uden ekstra hardware kan det være tilstrækkeligt at konfigurere de forskellige parametre og funktioner via BLE og mobilappen (tryk på ikonet "hammer & skruenøgle" i mobilappen, figur 5).
En anden måde at konfigurere projektet på er ved hjælp af en kommandolinje og debug-konsol. Mens et pc-terminalprogram (f.eks. Tera Term) kommunikerer via USB via en virtuel COM-port, bruger mobilenheden appen STBLESensor (ST BLE Sensor) og netværker via BLE (figur 6).
Figur 6: Kommandolinje og fejlfindingskonsol på en pc (til venstre) og på en mobilenhed (til højre). (Billedkilde: STMicroelectronics)
For at omprogrammere ASTRA-kortet, f.eks. ved firmwareopdatering, integration af andre biblioteksfunktioner eller generering af udviklerens egen applikationskode, er adgang via JTAG-grænsefladen praktisk. Til dette formål tilsluttes den separat tilgængelige STLINK-V3MINIE debug- og programmeringsadapter til ASTRA-kortet via et 14-polet båndkabel. Et IDE som Keil, IAR eller STM32Cube installeret på en pc kan derefter skrive kompilerede binære filer til programhukommelsen eller debugge programsekvenser.
STLINK-V3MINI har også et virtuelt COM-port-interface, der gør det muligt for værts-pc'en at kommunikere med målmikrocontrolleren via UART.
Der er flere måder at foretage firmwareopdateringer til de forskellige Arm MCU'er på:
- STM32Cube-programmøren på en pc skriver den binære fil til flash-hukommelsen ved hjælp af en JTAG-adapter og en MCU-bootloader
- STM32Cube-programmøren på en pc skriver den binære fil til flash-hukommelsen ved hjælp af USB og en MCU bootloader
- Firmwareopgradering over-the-air (FUOTA) sker via BLE ved hjælp af STBLESensor-appen på en mobilenhed
Da applikationscontrolleren STM32WL55JC (LoRaWAN) fungerer som master for STM32WB5MMG (BLE), skal den pågældende MCU-kerne, der skal flashes, vælges via jumpere.
Grafisk softwarekonfiguration ved hjælp af STM32CubeMX
STM32Cube gør livet lettere for udviklere ved at reducere udviklingsarbejdet, -tiden og -omkostningerne. IDE'en dækker hele STM32 MCU-porteføljen. Derudover giver STM32CubeMX mulighed for konfiguration og generering af C-kode ved hjælp af grafiske guider. FP-ATR-ASTRA1-softwarepakken udvider STM32Cube-funktionaliteten og kan installeres direkte i STM32CubeMX-IDE'en.
Figur 7 viser STM32CubeMX-skallen: navigation (til venstre og øverst), FP-ATR-ASTRA1-konfiguration (i midten) og dens arkitektur (til højre). FP-ATR-ASTRA1-pakken har tre faner til tilpasning: [Platform Settings], [Parameter Settings] og [ASTRA ENGINE].
Figur 7: Grafisk softwarekonfiguration ved hjælp af STM32CubeMX-værktøjet: Navigation (venstre og øverst), FP-ATR-ASTRA1-pakkekonfiguration (i midten) og dens arkitektur (til højre). (Billedkilde: STMicroelectronics)
Når alle indstillingerne er konfigureret, kan koden genereres fra STM32CubeMX ved at trykke på knappen. Ved at åbne den ønskede IDE kan firmware-koden tilpasses, kompileres og flashes på kortet.
Den genererede kildekode har en modulær arkitektur i form af hardware-blokke og funktioner. Forvaltningen af hardwareblokken identificeres ved hjælp af specifikke definitioner (USE_GNSS). Funktioner administreres i forskellige filer, f.eks. systeminitialisering, tilstandsmaskinkonfiguration eller datahåndtering.
På trods af filtræets kompleksitet er der kun få filer involveret i applikationskonfigurationen af brugssagerne:
- app_astra.c/.h
Denne hovedfil er indgangspunktet, og den kalder initialiseringsfunktioner inden for MX_Astra_Init() (Listing 1)
Listing 1: Denne MX_Astra_Init() funktion bruges til systeminitialisering. (Kilde: STMicroelectronics)
- astra_confmng.c/.h
Denne kortkonfigurationshåndtering indeholder de variabler, som brugeren har valgt for at aktivere/deaktivere hver enkelt hardwareblok og implementering og konfiguration af brugssager. - astra_datamng.c/.h
I denne fil gemmes de data, der er indsamlet fra sensorerne og andre input, i RAM. De er klar til at blive manipuleret, f.eks. til at køre en specifik algoritme på dataene. - astra_sysmng.c/.h
Her er de systemrelaterede funktioner implementeret. De vigtigste funktioner er kommandolinjeinterface, knap callbacks, algoritmer, lysdioder, forvaltning af brugssager til sporing af aktiver og timerstyring. - SM_APP.c/.h
Disse filer indeholder konfigurationsstrukturerne for tilstandsmaskinen.
Konklusion
Udvikling af applikationer til sporing af aktiver er en kompleks proces i flere trin, men den multifunktionelle STEVAL-ASTRA1B-udviklingsplatform forenkler opgaven. Med al den nødvendige hardware og software om bord tilbyder den en hurtig og nem måde at visualisere de loggede data fra en trådløs transponder i webinterfacet eller via appen til mobile enheder. Som vist kan udviklere simpelthen tilpasse denne trådløse datalogger til deres sporings- eller overvågningsprogram ved hjælp af fleksible konfigurationsværktøjer uden kodeprogrammering, eller de kan bruge den automatiske kodegenerator.
Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.