söndag 29 maj 2016vecka 21
Annons
fb
STARTSIDA Internet of Things Embedded Power Energi Distribution Fordon Kommunikation Medicin Komponenter Produktion Test & mät Technical Papers

Enkelhet är Adam Dunkels ledstjärna Visa endast artikeln (fr utskrift)
Av Per Henricsson (per@etn.se)
UR ARKIVET: 2008-04-25 Medan andra nyblivna fäder börjar renovera huset eller skaffar sig ett bättre betalt jobb passade Adam Dunkels på att ta fram grunderna till den minimala IP-stacken uIP.

– Han sov, hans mamma sov, så jag satt där och programmerade på min laptop. Någonting måste man göra, säger han med glimten i ögat.

Egentligen fångades Adam Dunkels intresse för det minimala redan med examensarbetet på Luleå Tekniska högskola vid millennieskiftet. Projektet gick ut på att utrusta spelarna i Luleå hockey med olika sensorer och en kamera. Data överfördes trådlöst med Bluetooth och tanken var att ge publiken något extra. De åskådare som hade handdatorn iPaq eller en bärbar dator kunde se hur spelarna mådde och få bilder från kamerorna som var fästa i hjälmarna.

– Vi körde ett test och systemet fungerade men det användes nog bara en gång. Det blev för fysiskt ansträngande för spelarna och Luleå förlorade matchen har jag för mig, säger han och skrattar.

Adam Dunkels

Befattning: Senior scientist på Sics.

Född: 1978 i Luleå.

Bor: Stockholm.

Familj: Gift, tre barn.

Adam Dunkels roll i projektet var att ta fram en IP-stack. Efter ex-jobbet fortsatte han att utveckla stacken och så småningom släppte han den som öppen källkod under beteckningen lwIP.

– Många var intresserade av att använda lwIP men ville ha ner den i storlek. Det fanns en allmän uppfattning att en IP-stack var så stor att man inte kunde få in den i en åttabitarsprocessor.

Fortsatte att reducera IP-stacken
Intresset fungerade som en ögonöppnare för Adam Dunkels som år 2000 hade börjat på forskningsinstitutet Sics i Kista. Han vidareutvecklade lwIP och resultatet blev uIP som är jämngammalt med hans första barn. uIP utför bara det absolut nödvändigaste för att IP-stacken ska uppfylla standarden. Den behöver inte mer än 4 till 5 kbyte för koden och cirka 1,5 kbyte för arbetsminnet.

– Man kan klämma ner den ändå mer om man tar bort vissa funktioner.

IP-stacken utvecklades för små apparater som skulle kopplas upp till det fasta nätet. Det fann sin väg in i en del kommersiella produkter även om många belackare på den tiden hävdade att IP var för svårt och stort för dessa apparater.

– Det roliga är att det är samma argumentation idag kring trådlösa apparater, att IP är för stort. Jag hävdar fortfarande att det går.

För att få ner storleken på IP-stacken kan man bland annat komprimera huvudet på ett smart sätt. Adam Dunkels publicerade de första artiklarna på temat år 2004 vilket plockades upp av folk i branschen.

– 2005 startade Internet Engineering Taskforce en standardiseringsgrupp kallad 6lowpan och 2006 kom den första standarden.

IP även i de minsta systemen

Idag finns det produkter som använder 6lowpan (IPv6 over Low power WPAN), bland annat system för hemautomation och industriell övervakning.

Adam Dunkels
– Även Zigbee går mot att inkorporera IP. Idag finns det tre stora trådlösa standarder för automationstillämpningar. Det är Zigbee, Wireless Hart och ISA 100A.

De två sistnämnda bygger på 6lowpan och inom Zigbee pågår diskussioner om att inkorporera IPv6 via 6lowpan i standarden.

– Jag tror det kommer att bli så även om man som användare inte kommer att se det. Visst, det blir lite större men ofta gör det saker som man ändå behöver.

I 6lowpan har man skalat bort funktioner som till exempel VPN, Virtual Private Network. Men det går att pressa storleken på huvudet än mer.

– I normalfallet behöver man bara tala om att det är ett nomalkomprimerat huvud. Är det något annat så skickar men det fulla huvudet.

Hans arbete på Sics har dock glidit över mot operativsystem och programmeringsabstraktioner, även det två varianter av det minimala.

Programmeringsabstraktionen går under beteckningen Protothreads och är en metod för att minska minnesåtgången. I normala operativsystem reserverar man en minnesarea för varje tråd vare sig den behöver det eller inte.

– 30 procent av arbetsminnet kan vara upplåst men ändå outnyttjat.

Adam Dunkels lösning kan lite slarvigt beskrivas som att man lägger alla trådar på en och samma stack som då får ett linjärt flöde.

– Idén är otroligt enkel, men ny. Man sitter och tänker att det här måste någon ha gjort och visst har det gjorts liknande saker men inte precis så här.

Fördelen med Protothreads är att det blir enklare att skriva, följa och debugga programmen än med trådade program. De senare leder normalt till spagettiliknade flöden där det lätt smyger sig in fel.

– Vi har tittat på ett antal program som varit komplexa tillståndsmaskiner. I princip går det att ta bort alla tillstånd och tillståndsövergångar.

Används av industrin
Med Prototreads blir programmen upp till 30 procent mindre och man kan också hitta fel som inte upptäcks tidigare. Protothreads används i en rad kommersiella produkter.

– ABB använder det i en vibrationssensor, säger Adam Dunkels och tar fram mobilen för att visa en bild på vad som ser ut som ett litet cylindriskt USB-minne.

Ett annat exempel är en tillverkare av digital-tv-boxar. I det fallet handlar det förutom om enkelheten med Protothreads även om möjligheten att enkelt flytta programvaran mellan olika målsystem. Företaget har ett utvecklingssystem som kör Linux, tv-boxen har ett realtidsopeartivsystem och så finns det en nedskalad varianten av boxen.

– Normalt är det krångligt att portera eftersom det finns små, små skillnader mellan målsystemen. Program skrivna i Protothreads blir exakt likadana eftersom de bygger på C-kod och inte assembler.

Att det fungerar beror på att man med Protothreads låter C-kompilatorn omvandla trådbiblioteket direkt till en tillståndsmaskin.

– Jag satt och bökade med programmeringen av IP-stacken när jag kom på det.

Så övergången från den minimala IP-stacken till programmeringsabstraktioner är inte så stor som det i förstone kan verka.

– Jag försöker hålla isär saker även om de hänger ihop.

Prototrådarna är också en del av det minimala operativsystemet Contiki som är hans senaste projekt. Men att Prototrådarna har fler användare beror inte bara på att de funnits längre än operativsystemet.

– Det kallas för the Hollywood principle. Don’t call us, we’ll call you och handlar om vem som anropar vem.

Enligt Adam Dunkels är det lättare att få programmerare att anamma en IP-stack eller ett trådbibliotek än att byta operativsystem.

Contiki som nyligen fyllde fem år innehåller IP-stacken uIP men även radiostacken Rime. Operativsystemet är anpassat till bland annat Texas Instruments MSP430 och x86-processorer men det finns företag som använder operativsystemet på Atmels AVR-processor och på Hitatchis HC12.

– En av de coolaste sakerna med Contiki är att det mäter energiförbrukningen.

Finessen kan användas för att studera vad som konsumerar strömmen i till exempel en liten trådlös sensornod. Att det fungerar beror på att processorn styr alla funktioner.

Att lyssna tömmer batteriet
Självklart är radion den stora energiboven, inte processorn, men alla är nog inte medvetna om att det kostar lika mycket eller mer att lyssna än att sända. I den radiomodul som används på Sics för 802.15.4, den radiostandard som bland annat Zigbee bygger på, går det år 20 mA vid lyssning och
18 mA vid sändning.

Det här innebär att en batteridriven Zigbeenod i praktiken bara kan användas i ett stjärnnät med en basstation som samlar in data. Konfigurerar man istället ett meshnät, där noderna vidarebefordrar informationen innan den hamnar i insamlingspunkten, tar batteriet snabbt slut.

– Saab gjorde ett försök där de använde Zigbeenoder för att skydda ett Jasplan men batteriet räcker bara några dagar.

Problemet är att noderna måste gå upp och lyssna ganska ofta för att veta om någon av de andra noderna vill skicka ett paket som sedan ska vidarebefordras. Hur ofta beror bland annat på vilken responstid man vill att systemet ska ha och hur noggranna klockor är.

– Jag är övertygad om att det går att förbättra.

Genom att kontinuerligt mäta strömförbrukningen vet varje nod hur mycket batterikapacitet det finns kvar. Informationen kan användas för att dynamiskt förändra protokollet. Men även operativsystemet kan hjälpa till att sänka strömförbrukningen.

– Man kan se operativsystemet som ett program som hjälper mig att göra andra program, det vill säga att implementera protokollet.

Genom att bygga funktioner som att skicka från en till alla, från en till bara en eller från många till en slipper programmeraren bekymra sig om detaljerna.

– Man lyfter abstraktionsnivån. I slutändan trillar det ut ett kommunikationsprotokoll som till exempel kan vara 6lowpan eller Zigbee.

Ett antal av dessa kommunikationsmetoder finns implementerade i Contiki.

En annan effekt av att låta operativsystemet ta hand om delar av det som protokollet normalt sköter är att man då kan komma åt information som finns i huvudet och försvinner vid avkodningen. Det kan vara uppgifter om signalstyrka, tidsstämplar, avsändare och annat som kan användas för att optimera energiförbrukningen i hela systemet.

– Många tror att det blir långsammare att göra så här men det är ingen mätbar skillnad.

En pikant detalj med de sensormoduler som finns att köpa från till exempel Texas Instruments och Atmel är att det tar längre tid att kopiera data från styrkretsen än att skicka iväg dem med radiodelen. Det beror på att radiokretsarna har en SPI-buss som inte klarar mer än 180 kbit/s. Radiodelen däremot toppar på 250 kbit/s.

– Ska man dessutom utföra multihopp, skicka datapaketen via flera noder till en insamlingspunkt, sjunker den effektiva datahastigheten till 10 kbit/s.

Förladdning ökar datahastigheten

Det finns olika sätt att öka datahastigheten. Drar man ned paketstorleken kan man komma upp i 20 kbit/s. Kör man över flera radiokanaler och undviker interferens kan man nå 60 kbit/s. Men eftersom man inte kan lyssna och skicka samtidigt med dessa radiomoduler ligger den teoretiska maxhastigheten strax under 112 kbit/s om man dessutom tar hänsyn till att man måste ha en liten preamble och checksumma.

En lösning är att förladda radion med nästa paket och sedan skicka iväg det så fort den tagit emot ett nytt paket.

– De är återigen en abstraktionsnivå som man kan lägga i operativsystemet.

Forskningsresultaten finns alla tillgängliga som öppen källkod via Sics hemsida men har och resulterat i en doktorshatt.

– Det är en extra bonus med att jobba på ett sånt ställe som Sics.

I februari fick han Chester Carlson-priset av Ingenjörsvetenskapsakademien. Priset är uppkallat efter Xerox grundare, svenskättlingen Chester Carlson

– Det var otroligt roligt och ett erkännande även om det var för grejor jag gjorde runt 2001 och 2002.

I början av april var det Microsofts tur att prisa honom när han tilldelades Roger Needham-priset.

Utmärkelserna har medfört att han hamnat i det mediala rampljuset vilket säkert kan vara bra om han gör allvar av sina funderingar kring att starta ett företag baserat på forskningsresultaten.

– Det skulle vara roligt att göra och det intresserar mig allt mer. Men det är svårt att sälja plattformsprogramvara som en cd i en kartong. Det är bara Microsoft som lyckats med det.

Och programvaran som Adam Dunkels utvecklat finns redan som öppen källkod.

– Det finns gott om saker runt omkring den där folk vill ha koll utan att behöva hålla på med tekniken. Det är bara en styrka att programvaran är öppen och att den sprids.

 

Skribenterna ansvarar för sina egna texter (1)
Arena-projektet UR ARKIVET: 2008-04-25 Arena-projektet
Här är en video från Arena-projektet på LTU från 1999-2000, där ishockeyspelarna utrustades med sensorer och kameror, som omtalas i artikeln:

http://www.youtube.com/watch?v=f2OEFq-vzS0
Annons
Elektronikkonsult breddar med miljötjänst
article thumbnailfre Har du koll på vad dina elektronikprodukter innehåller för olika ämnen? Om inte kan det bli dyrt. Och i värsta fall får du inte sälja din produkt. Nu lanserar Elektronikkonsult en tjänst som hjälper dig att sammanställa all nödvändig information.
Ger hög ström ur minimalt format
article thumbnailfre En DC/DC-omvandlare som hanterar fyra gånger högre strömtäthet än alternativen. Det är vad Texas Instruments påstår sig ha utvecklat. Den har en ny topologi som kan hantera hög switchfrekvens, vilket bäddar för liten storlek på både omvandlare och passiva kringkretsar.
IP-telefoni har passerat fast telefoni
article thumbnailfre Post- och telestyrelsens rapport för 2015 visar att IP-telefonin växte med 7 procent och därmed passerade fast telefoni räknat i i antalet abonnemang.
Från varmvitt till kallvitt
article thumbnailfre Anpassa belysningen efter olika situationer och behov. Uppmaningen kommer från det svenska belysningsföretaget Aura Light som lansera tre armaturer med styrbar färgtemperatur på det vita ljuset.
Leab uppgraderar med Mycronic
article thumbnailfre Kontraktstillverkaren Leab köper en ny ytmonteringsmaskin till fabriken i Lövånger. Leverantör är svenska Mycronic.
Ny dom: Googles Java är en skälig piratkopia
article thumbnailfre Oracle ville ha 77 miljarder kronor i skadestånd men fick ingenting. Googles användande av gränssnitt till 37 stycken Javabibliotek räknas som skäligt bruk. Det fastslog en jury i San Francisco i går.
Vem bjuder 15 miljarder dollar för Xilinx?
article thumbnailtor Efter Intels köp av Altera förra året har det av och till spekulerats i att även FPGA-jätten Xilinx ska bli uppköpt. Den här gången är det Qualcomm och Broadcom som pekas ut som tänkbara spekulanter.
Direktsamplar snabbare än andra
article thumbnailtor Texas Instruments har lanserat en 14-bitars AD-omvandlare som samplar i 3 GSa/s. Företaget hävdar att det är industrins första i sitt slag och den bäddar för enklare systemlösningar kring direkt rf-sampling.
Göteborg får Lora-nät
article thumbnailtor Umeå blev först i Sverige med ett stadstäckande IoT-nät av typen Lora. Nu hakar Tele2 på den heta trenden med sakernas Internet och bygger ett nät i Storgöteborg som ska vara klart i höst.
Tummen upp för Chalmers och trådlöst
article thumbnailtor I höstas öppnade Vinnova en ny utlysning med syfte att skapa kompetenscentrum inom forskningsområden som är viktiga för Sveriges framtida konkurrenskraft. Inom den riktade utlysningen har nu fem centrum beviljats medel. Två med Chalmerssäte: Chase och Gigahertz Centrum.
Stilla din nyfikenhet på tryckt elektronik
article thumbnailtor Den 8 september bjuder forskningsbolaget Acreo in till öppet hus på Printed Electronics Arena i Norrköping.
Exo-ben vann Skapas gillande i Gävle
article thumbnailtor Det blev Usman Haider som vann regionfinalen i Gävle av Skapatävlingen. Hans exo-ben ska hjälpa gamla och rörelsehindrade att klara sin vardag bättre. Priset är 15 000 kronor och en plats i riksfinalen i höst.
Partnertech i Karlskoga köpt av Karlskogabolag
article thumbnailtor Förra året köpte finska Scanfil den svenska kontraktstillverkaren Partnertech. För drygt två veckor blev det klart att det finska företaget sälja samtliga aktier sitt dotterbolag Partnertech Karlskoga. Nu är det klart att Karlskogaföretaget Permec Group tar över som ägare. Närmare 30 procent av personalen har dock varslats, enligt nwt.se
En flygande värmekamera och termometer
article thumbnailons Inspektioner av tak, kraftledningar, odlingar eller infrastrukturanläggningar är några av uppgifterna i blickfånget för Flirs nya värmekamera anpassad till drönare. Förutom att skicka ned realtidsvideo mäter Vue Pro R temperaturen för varje bildpunkt och sparar i minnet.
Microsoft ger upp mobilerna
article thumbnailons För en vecka sedan blev det klart att Microsoft säljer tillbaka varumärket Nokia på mobiltelefoner till Finland. Nu meddelar IT-jätten att företaget lägger ned den resterande hårdvaruutvecklingen inom mobilområdet med 1850 anställda.
Hur många ska Nokia sparka?
article thumbnailons Blir det 10 000 eller kanske 15 000 personer som får lämna den finska telekomjätten? Spekulationerna har tagit fart sedan nyhetsbyrån Reuters pratat med fackliga företrädare. Från ledningen är det locket på.
Kapsling för elcentraler till Raspberry Pi
article thumbnailons RPI-BC är enligt Phoenix Contact den första kapslingen för normcentraler som är utvecklad för Raspberry Pi. Därmed blir det enklare att använda datorkortet i ett tidur eller för att styra strömmen till exempelvis utomhusbelysningen.
Signalgenerator för alla behov
article thumbnailons Den fungerar som enkel signalgenerator men kan också generera sekvenser av komplexa vågformer för exempelvis LTE och radartillämpningar. AWG4000 från Tektronix säger sig klara alla behov som finns i labbet.
SMA-kontakten som kan bytas i fält
article thumbnailons Det behövs inga pressverktyg eller lödutrustning för att byta brittiska Intelliconnects nya SMA- och 2,9 mm-kontakter. Trots det ska de ha samma egenskaper som dagens kontakter som löds fast på kablarna, lovar företaget.
Kreditkortsstor mikrovågsvärmare
article thumbnailtis För en vecka sedan släppte NXP en transistorbaserad modul för mikrovågsugnar. Nu kommer konkurrenten Ampleon med motsvarande produkt men i ett mindre format. Kortet är 80x40 mm och levererar upp till 250W vid 2,4-2,5 GHz, perfekt för att värma mat i mikron och i industriella tillämpningar, enligt Ampleon.

För mer nyheter, testa en sektion nedan, eller gå till startsidan!

 

Internet of Things Embedded Power Energi Distribution Fordon Kommunikation Medicin Komponenter Produktion Test & mät

 

 
KOMMENTERAT
Kommentarer via Disqus

Annons
Annons
Administration Jan Tångring
Annonser Anne-Charlotte Sparrvik
Redaktion red@etn.se
Ansvarig utgivare Anna Wennberg på uppdrag av Elektroniktidningen Sverige AB
© Elektroniktidningen Sverige AB
Publiceringssystem Joomla, webbhotell Glesys