Presentation
Internet of Things

Skräddarsyr programmeringsspråk för Sakernas internet

Publicerad 17 juni 2022
Foto: Lisa Jabar / AnnalisaFoto
Robert Krook, doktorand och Koen Claessen, professor vid Institutionen för data- och informationsteknik på Chalmers. Foto: Lisa Jabar  / AnnalisaFoto
Robert Krook, doktorand och Koen Claessen, professor vid Institutionen för data- och informationsteknik på Chalmers. Foto: Lisa Jabar / AnnalisaFoto

Utvecklingen på programmeringssidan börjar komma i fatt Internet of Things. Förr fick programmerarna försöka pussla ihop nätverken med de program som stod till buds. Nu arbetar forskare på Chalmers med att utveckla ett programmeringsspråk som är skräddarsytt för ändamålet.

Tv, dammsugare, kylskåp, babymonitor och hemlarm är bara några exempel på saker i hemmen som kan kopplas upp mot internet. Fördelarna är många, uppkopplade apparater kan både effektivisera och skapa nya möjligheter att förenkla människors vardag. Problemet är att de även skapar möjligheter att hacka nätverken – och det är här som Koen Claessen, professor vid Institutionen för data- och informationsteknik på Chalmers, kommer in i bilden. Tillsammans med sin forskargrupp är han i färd med att utveckla Scoria, ett programmeringsspråk som är skräddarsytt för sakernas internet och gör uppkopplade enheter säkrare.
– De flesta av dagens uppkopplade apparater är programmerade i C-språket som inte är designat för den här typen av enheter. Det är väldigt lätt att göra fel och felen kan användas för att hacka nätverken, med allt det kan innebära i form av att till exempel låsa upp dörrar, stänga av larm eller aktivera en säkerhetskamera, säger Koen Claessen.

Viktiga tidsaspekter
En stor utmaning i utvecklingen av Scoria är tid, i två olika avseenden: batteritid och ”mötestid”.
– Det finns många uppkopplade enheter i ett hus som ska prata med varandra via små radiosändare och -mottagare. Men de ska inte lyssna hela tiden eftersom lyssnandet slukar batteritid. Därför vilar enheterna i ganska stor utsträckning och kommer överens om att vakna och utbyta information till exempel var femte minut. För att de ska kunna kommunicera på det här sättet krävs programmering som tillåter utbyte av information i realtid vilket vi har tagit höjd för i Scoria.
Projektet har redan kommit en bra bit på väg.
– Vi har en prototyp som vi implementerat som ett inbäddat språk i ett annat språk, Haskell. Just nu testar vi olika features och studerar om vi genom Bluetooth kan skapa ett nätverk där uppkopplade enheter kan skicka meddelanden till andra enheter som vaknar, informerar vidare och sedan återgår i viloläge.
Koen Claessen påpekar att det finns standardprotokoll för detta ändamål men att forskargruppen vill se om de kan göra samma sak i Scoria eftersom programmet är skyddat från de typiska fel som lätt görs i C-språket.
– Programmering kan inte lösa alla luckor i Sakernas internet men några av de vanligaste felen kan vi undvika på detta vis.

Chalmers – Octopi

Utvecklingen av Scoria ingår i Octopi, ett femårigt forskningsprojekt som leds av Alejandro Russo, biträdande professor vid Institutionen för data- och informationsteknik på Chalmers tekniska högskola. Tyngdpunkten ligger på att skapa ett skräddarsytt programmeringsspråk för Sakernas internet där säkerheten garanteras genom hela utvecklingsprocessen, snarare än att läggas till i efterhand. Projektet finansieras av Stiftelsen för strategisk forskning, SSF.

www.chalmers.se