{"id":59730,"date":"2023-10-05T09:12:01","date_gmt":"2023-10-05T08:12:01","guid":{"rendered":"https:\/\/knowhow.distrelec.com\/?p=59730"},"modified":"2023-10-09T11:09:38","modified_gmt":"2023-10-09T10:09:38","slug":"beregningsalternativer-for-robotikk","status":"publish","type":"post","link":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/","title":{"rendered":"Beregningsalternativer for robotikk"},"content":{"rendered":"\n<p><em>Robotarkitektur og design dekker n\u00e5 en rekke funksjoner. Dette p\u00e5virker i stor grad prosessorkraften og hva som brukes til \u00e5 levere den. Innenfor de kontrollerte omgivelsene i et sikkerhetsbur trenger en produksjonsrobot relativt f\u00e5 sikkerhetstiltak og kan benytte seg av enkle prosedyremessige kontrollstrategier.<\/em><\/p>\n\n\n\n<p>Utviklere m\u00e5 s\u00f8rge for at roboten stopper hvis buret \u00e5pnes, eller hvis delene ikke er innrettet som forventet. Likevel kan mange av sikkerhetsutfordringene l\u00f8ses ved hjelp av enkle maskinvarel\u00e5ser i stedet for komplekse kombinasjoner av bildesensorer og programvare. De viktigste prosesseringskravene er \u00e5 sikre effektiv og presis bevegelsesstyring. Dette krever f\u00f8rst og fremst bruk av mikrokontrollere eller digitale signalprosessorer for \u00e5 styre str\u00f8mmen til motorer og andre aktuatorer.<\/p>\n\n\n\n<h2 id=\"utviklingen-av-mikrokontrollerenheter\" class=\"wp-block-heading\">Utviklingen av mikrokontrollerenheter<\/h2>\n\n\n\n<p>Konvensjonelle produksjonsroboter er ikke ofte veldig fleksible. Hvert program m\u00e5 programmeres, simuleres og testes grundig f\u00f8r roboten f\u00e5r lov til \u00e5 fortsette. I produksjonsindustrien \u00f8nsker brukerne at robotene skal v\u00e6re mer fleksible, slik at de raskt kan settes inn i ulike oppgaver. De m\u00e5 ogs\u00e5 kunne bevege seg rundt p\u00e5 produksjonsgulvet, noe som inneb\u00e6rer arbeid utenfor sikkerhetsburet. Disse kravene krever st\u00f8rre prosessorkraft for \u00e5 gi roboten mulighet til \u00e5 navigere uten \u00e5 kollidere med gjenstander eller skade tilskuere.<\/p>\n\n\n\n<p>Derfor m\u00e5 robotene v\u00e6re i stand til \u00e5 behandle sensordata i sanntid og ta intelligente beslutninger underveis n\u00e5r omstendighetene endrer seg. Jo lenger robotene beveger seg bort fra sikkerhetsburet og jo mer de samhandler med mennesker, desto mer prosessorkraft vil de trenge n\u00e5r de beveger seg utenfor det relativt kontrollerte milj\u00f8et p\u00e5 verkstedet. Serviceroboter og leveringsdroner m\u00e5 kunne reagere intelligent i komplekse situasjoner.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img  loading=\"lazy\"  decoding=\"async\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=\"  alt=\"\"  class=\"wp-image-57760 pk-lazyload\"  style=\"width:700px;height:230px\"  width=\"700\"  height=\"230\"  data-pk-sizes=\"auto\"  data-ls-sizes=\"auto, (max-width: 700px) 100vw, 700px\"  data-pk-src=\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-01-arm-cortex-m3-pipeline.jpg\"  data-pk-srcset=\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-01-arm-cortex-m3-pipeline.jpg 791w, https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-01-arm-cortex-m3-pipeline.jpg?resize=300,99 300w, https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-01-arm-cortex-m3-pipeline.jpg?resize=768,252 768w, https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-01-arm-cortex-m3-pipeline.jpg?resize=380,125 380w, https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-01-arm-cortex-m3-pipeline.jpg?resize=550,181 550w\" ><figcaption class=\"wp-element-caption\">ARM Cortex-M-prosessorer er grunnleggende i mange mikrokontrollerprodukter.<\/figcaption><\/figure><\/div>\n\n\n<p>I disse mer avanserte scenariene er det et klart behov for mer sofistikert programvare, noe som g\u00e5r h\u00e5nd i h\u00e5nd med \u00f8kt regnekapasitet. Utvikleren har stor valgfrihet med hensyn til hvordan den n\u00f8dvendige prosessorkraften skal leveres, ikke bare n\u00e5r det gjelder leverand\u00f8rer, men ogs\u00e5 n\u00e5r det gjelder den overordnede arkitekturen.<\/p>\n\n\n\n<h3 id=\"bruken-av-mikrokontrollere\" class=\"wp-block-heading\">Bruken av mikrokontrollere<\/h3>\n\n\n\n<p><a href=\"https:\/\/www.distrelec.biz\/en\/semiconductors\/embedded-processors-controllers\/microcontrollers-mcu\/c\/cat-L3D_525272\">Mikrokontrollerenheten (MCU)<\/a> har i mange \u00e5r v\u00e6rt det foretrukne beregningselementet for enkle roboter. Mikroprosessoren er kjernen av MCU-en. Disse ble f\u00f8rst optimalisert for enkel aritmetikk og logisk styring, men siden de ble introdusert for snart 50 \u00e5r siden har ytelsen og datah\u00e5ndteringskapasiteten \u00f8kt dramatisk. I dag fins det mikroprosessorkjerner som opererer p\u00e5 32-bit dataord og som har ytelsesegenskaper som pipelining og Harvard-arkitektur, til en pris som gj\u00f8r at selv enkle systemer kan bruke dem.<\/p>\n\n\n\n<p>I en typisk 32-bit mikroprosessorkjerne, for eksempel ARM Cortex-M3, finnes det en instruksjonspipeline som deler opp utf\u00f8relsen av kommandoer i flere faser. I M3-pipelinen hentes instruksjonen f\u00f8rst fra en lokal hurtigbuffer. Hvis instruksjonen ikke finnes i hurtigbufferen, m\u00e5 den f\u00f8rst lastes inn fra hovedminnet. I pipelinen dekodes instruksjonsbytene for \u00e5 evaluere hvilke funksjonelle enheter som m\u00e5 aktiveres for \u00e5 utf\u00f8re instruksjonen. Til slutt skjer utf\u00f8relsen.<\/p>\n\n\n\n<h2 id=\"pipelining-og-avbruddshandtering\" class=\"wp-block-heading\">Pipelining og avbruddsh\u00e5ndtering<\/h2>\n\n\n\n<p>Pipelining brukes til \u00e5 skjule effekter som f.eks. latenstiden i minnet. Det gj\u00f8r det mulig \u00e5 overlappe utf\u00f8relsen av flere instruksjoner og bidrar til \u00e5 \u00f8ke klokkehastigheten, ettersom det trengs f\u00e6rre logiske trinn per syklus. Raskere prosessorkjerner bruker mer omfattende pipelines som kan v\u00e6re ti trinn lange eller mer. Ulempen med lange pipelines er h\u00f8y forgreningsforsinkelse. Hvis en forgrening tas, tar det tid \u00e5 fylle opp pipelinen med instruksjonene som trengs for den nye forgreningen.<\/p>\n\n\n\n<p>St\u00f8tte for avbrudd gj\u00f8r det mulig for prosessorkjernen \u00e5 avbryte kj\u00f8ringen av hovedprogrammet midlertidig og h\u00e5ndtere andre oppgaver. Avbruddsh\u00e5ndtering er en n\u00f8kkelkomponent for applikasjoner som trenger sanntidsrespons p\u00e5 hendelser. Uten den ville programkoden m\u00e5tte inneholde l\u00f8kker som kontinuerlig s\u00f8ker etter informasjon om eksterne hendelser, noe som ville sl\u00f8se mye mer med beregningskapasiteten.<\/p>\n\n\n\n<h2 id=\"mikroprosessorer-for-robotdesignere\" class=\"wp-block-heading\">Mikroprosessorer for robotdesignere<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img  loading=\"lazy\"  decoding=\"async\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=\"  alt=\"\"  class=\"wp-image-57743 pk-lazyload\"  style=\"width:700px;height:467px\"  width=\"1024\"  height=\"683\"  data-pk-sizes=\"auto\"  data-pk-src=\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-626305854-1-1024x683.jpg\" ><\/figure>\n\n\n\n<p>En prioritetsordning som brukes av de fleste prosessorkjerner, gj\u00f8r at avbrudd fra relativt uviktige eksterne enheter kan ignoreres mens prosessoren tar seg av kritiske rutiner, for eksempel overf\u00f8ring av kontroll fra en oppgave til en annen eller input fra et kritisk avbrudd. Resultatet er en sv\u00e6rt fleksibel arkitektur som kan h\u00e5ndtere mange ulike typer sanntidsapplikasjoner.<\/p>\n\n\n\n<p>En viktig og spesialisert variant av mikroprosessoren for robotdesignere er den digitale signalprosessoren (DSP). Dette er en prosessorkjerne som inneholder instruksjoner og maskinvare som er optimalisert for signalbehandlingsalgoritmer som filtre og hurtige Fourier-transformasjoner. Slike instruksjoner inkluderer raske, sammensmeltede multiplikasjon-operasjoner som finnes i praktisk talt alle DSP-algoritmer. Fordi DSP-koder opererer p\u00e5 datastrukturer som matriser og vektorer, er det relativt enkelt \u00e5 utf\u00f8re arbeidet parallelt. Dette har f\u00f8rt til implementeringen av SIMD-enheter (single-instruction, multiple-data) som utf\u00f8rer de samme operasjonene &#8211; for eksempel multiplikasjon og addisjon &#8211; p\u00e5 flere elementer i en matrise samtidig. Resultatet er mye h\u00f8yere hastighet til en relativt liten ekstra kompleksitet eller kostnad.<\/p>\n\n\n\n<p>En MCU inneholder en rekke integrerte periferienheter som er plassert rundt prosessorkjernen. I en industri- eller robotorientert MCU er det vanlig at periferienhetene spenner fra minnematriser til avanserte timerutl\u00f8serenheter, som brukes til \u00e5 avlaste mikroprosessoren for pulsbreddemodulering (PWM). PWM er en kjernekomponent i nesten alle motorstyringsstrategier og har derfor en fremtredende plass i robotdesign. Andre SoC-enheter (system-on-chip) legger til flere funksjoner rundt MCU-en, for eksempel <a href=\"https:\/\/www.distrelec.de\/en\/automation\/industrial-communication\/remote-data-transmission\/radio-transmission-systems\/c\/cat-DNAV_PL_12080501\">tr\u00e5dl\u00f8se transceivere<\/a>, dedikert krypterings- og autentiseringslogikk, og grafikkakseleratorer.<\/p>\n\n\n\n<h3 id=\"styring-og-maskinvare\" class=\"wp-block-heading\">Styring og maskinvare<\/h3>\n\n\n\n<p>Bruken av intelligent periferiutstyr illustrerer ogs\u00e5 et stadig viktigere designprinsipp for roboter: utnyttelse av distribuert kontroll og maskinvareakselerasjon. En mikroprosessor kan brukes til \u00e5 implementere PWM-styring, men det er ofte en d\u00e5rlig ressursallokering. Hovedproblemet er at programvaren gjentatte ganger m\u00e5 bytte str\u00f8m mellom transistorene i halvbroen som styrer str\u00f8mmen til en motor, etter forh\u00e5ndsprogrammerte intervaller. Avbrudd fra en sanntidsklokke eller -teller kan enkelt utl\u00f8se h\u00e5ndteringer for \u00e5 skifte str\u00f8mtilstand og deretter konfigurere timeren for neste syklus. Men dette resulterer i en h\u00f8y avbruddsfrekvens for det som er en ekstremt enkel sekvens av operasjoner.<\/p>\n\n\n\n<p>En PWM-kontroller kombinerer timer- og koblingslogikk, noe som fjerner kravet om at mikroprosessorkjernen m\u00e5 avbrytes for hver kobling. Programvaren trenger bare \u00e5 oppdatere tidtakerne med jevne mellomrom for \u00e5 stille inn \u00f8nsket PWM-driftssyklus. Takket v\u00e6re en forholdsvis liten mengde ekstra logikk som kan operere uavhengig av prosessoren i lange perioder, er programvarens effektivitet betydelig forbedret. Arkitekturen har en fellesnevner med andre avlastningsmekanismer som vil bli stadig viktigere i robotdesign. Maskinvareperiferiutstyr tar seg av hyppige hendelser i sanntid, mens programvaren fastsetter retningslinjene.<\/p>\n\n\n\n<p>Utviklere er ogs\u00e5 begrenset til de funksjonene som IC-leverand\u00f8rene tilbyr, selv om inkludering av sekvenser basert p\u00e5 maskinvaretilstandsmaskiner \u00f8ker fleksibiliteten. Slike sequencere kan for eksempel lese verdier fra en A\/D-omformer, overf\u00f8re datav\u00e6rdier til hovedminnet ved hjelp av direkte minnetilgang (DMA) og stille inn og laste inn tidtakere, alt uten \u00e5 involvere CPU-kjernen. Alternativene er imidlertid fortsatt begrensede.<\/p>\n\n\n\n<h2 id=\"fpga-i-robotikk\" class=\"wp-block-heading\">FPGA i robotikk<\/h2>\n\n\n\n<p>FPGA (Field Programmable Gate Array) gj\u00f8r det mulig \u00e5 lage spesialtilpasset maskinvareperiferiutstyr som kan optimaliseres for spesifikke robotstyrings- og maskinl\u00e6ringsfunksjoner.<\/p>\n\n\n\n<p>Kjernen i de fleste FPGA-arkitekturer er en programmerbar oppslagstabell som kan konfigureres til \u00e5 implementere en hvilken som helst logisk funksjon som kan uttrykkes som en sannhetstabell. Ved hjelp av programmerbare brytere i sammenkoblingsstrukturen kobles oppslagstabellene sammen til komplekse kombinasjonslogiske kretser. Hver oppslagstabell ledsages vanligvis av ett eller flere registre og ekstra st\u00f8ttelogikk, for eksempel inn- og utganger for overf\u00f8ringskjeder, for \u00e5 gj\u00f8re det mulig \u00e5 implementere aritmetiske addere p\u00e5 en effektiv m\u00e5te. Til sammen utgj\u00f8r disse funksjonene en logikkblokk som replikeres mange ganger p\u00e5 tvers av FPGA-en.<\/p>\n\n\n\n<p>En ulempe sammenlignet med fullt tilpasset logikk er at silisiumeffektiviteten er mye lavere. Det kreves 10 til 20 ganger s\u00e5 mye silisiumareal for \u00e5 plassere en logisk krets p\u00e5 en FPGA sammenlignet med en tilpasset implementering med standardceller.<\/p>\n\n\n\n<p>De fleste FPGA-er har imidlertid st\u00f8tte for omprogrammering av logikkenheten selv i et system som er i drift. Dette gj\u00f8r det mulig \u00e5 dele ressurser ved at akseleratorer lastes dynamisk inn i nettverket bare n\u00e5r det er behov for dem. Denne tiln\u00e6rmingen gir ogs\u00e5 st\u00f8rre fleksibilitet i det endelige designet, slik at det kan st\u00f8tte ny maskinvare og tilleggsfunksjoner.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img  loading=\"lazy\"  decoding=\"async\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=\"  alt=\"\"  class=\"wp-image-57777 pk-lazyload\"  style=\"width:611px;height:395px\"  width=\"611\"  height=\"395\"  data-pk-sizes=\"auto\"  data-ls-sizes=\"auto, (max-width: 611px) 100vw, 611px\"  data-pk-src=\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-02-fpga-fabric-lut.jpg\"  data-pk-srcset=\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-02-fpga-fabric-lut.jpg 683w, https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-02-fpga-fabric-lut.jpg?resize=300,194 300w, https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-02-fpga-fabric-lut.jpg?resize=230,150 230w, https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-02-fpga-fabric-lut.jpg?resize=380,245 380w, https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-02-fpga-fabric-lut.jpg?resize=550,355 550w\" ><figcaption class=\"wp-element-caption\">LUT (Look Up Table) gj\u00f8r at FPGA-en er fleksibel.<\/figcaption><\/figure><\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img  loading=\"lazy\"  decoding=\"async\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=\"  alt=\"\"  class=\"wp-image-57795 pk-lazyload\"  style=\"width:321px;height:341px\"  width=\"321\"  height=\"341\"  data-pk-sizes=\"auto\"  data-pk-src=\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/DRG012-03-fpga-routing.jpg\" ><figcaption class=\"wp-element-caption\">LUT-ene kobles deretter sammen via en rutingmatrise for \u00e5 oppn\u00e5 \u00f8nsket funksjonalitet.<\/figcaption><\/figure><\/div>\n\n\n<p>Siden FPGA-ene ble introdusert p\u00e5 1980-tallet, har de f\u00e5tt flere funksjoner som \u00f8ker den totale tettheten. Minneblokker gj\u00f8r det mulig \u00e5 opprette buffere og hurtigbuffere i n\u00e6rheten av den programmerbare logikken. I den senere tid har disse f\u00e5tt selskap av DSP-motorer. I mange tilfeller er DSP-motorene implementert ved hjelp av en byggeklosstiln\u00e6rming, best\u00e5ende av 8- eller 16-biters enheter, som gj\u00f8r det mulig \u00e5 kombinere dem for \u00e5 st\u00f8tte datatyper med h\u00f8yere presisjon.<\/p>\n\n\n\n<p>DSP-enheter gj\u00f8r FPGA-er sv\u00e6rt godt egnet til \u00e5 behandle input fra <a href=\"https:\/\/www.distrelec.de\/en\/sensors\/c\/cat-L2D_379612\">sensorer<\/a> som produserer store datamengder, for eksempel kameraer, radarer og andre typer bildesensorer. Et typisk bruksomr\u00e5de er \u00e5 bruke en kombinasjon av DSP-enheter og logiske akseleratorer for \u00e5 h\u00e5ndtere algoritmer som bildeforvridning og lyskompensasjon som gir mer konsistent input til maskinl\u00e6ring og lignende funksjoner. Disse funksjonene kan koordineres av egendefinerte mikroprosessorkjerner som er implementert i den programmerbare strukturen, og som fungerer som mikrosekvenser for de ulike prosesseringsprimitivene.<\/p>\n\n\n\n<h2 id=\"utnyttelse-av-gpu-er-vpu-er-og-multiprosessering\" class=\"wp-block-heading\">Utnyttelse av GPU-er, VPU-er og multiprosessering<\/h2>\n\n\n\n<p>Et annet alternativ, spesielt for bildebehandlingsoppgaver, er \u00e5 bruke en grafikkprosessorenhet (GPU) eller en synsprosessorenhet (VPU). Disse inneholder h\u00f8yparallelliserte DSP-motorer som er optimalisert for bildebehandling. For roboter som trenger sv\u00e6rt h\u00f8y grad av milj\u00f8bevissthet, kan disse dedikerte enhetene kombineres med flere CPU-er &#8211; noen ganger p\u00e5 samme brikke, som en heterogen flerkjernet SoC.<\/p>\n\n\n\n<p>Bruk av flerprosessering kan ogs\u00e5 utnyttes til \u00e5 forbedre den generelle p\u00e5liteligheten og sikkerheten. Et problem for alle databaserte design er at de er avhengige av minneteknologier som er s\u00e5rbare for ioniserende str\u00e5ling. N\u00e5r ioniserende str\u00e5ling treffer silisiumsubstratet i en IC, utl\u00f8ser det en kaskade av frie elektroner som endrer den logiske tilstanden til en transistor. I transistorer i kombinasjonskretser er effekten vanligvis forbig\u00e5ende og fanges bare sjelden opp. <\/p>\n\n\n\n<p>Minner og registre er imidlertid mer s\u00e5rbare for endringer p\u00e5 grunn av m\u00e5ten de resirkulerer innholdet p\u00e5 for \u00e5 hindre at lagrede data lekker ut. ECC-koder (Error Checking and Correction) bidrar til \u00e5 kontrollere problemet. Sannsynligheten for en enkelthendelse \u00f8ker med minnetettheten, noe som gj\u00f8r det til et \u00f8kende problem etter hvert som disse IC-ene skaleres i henhold til Moores lov. Det er heller ikke sikkert at ECC fanger opp alle feilene, noe som kan f\u00f8re til at et program handler p\u00e5 feil data og til slutt til at kontrollen svikter. I en robot som samhandler med offentligheten kan ikke dette skje.<\/p>\n\n\n\n<h3 id=\"redundansteknikker-og-mangfoldig-prosessordesign\" class=\"wp-block-heading\">Redundansteknikker og mangfoldig prosessordesign<\/h3>\n\n\n\n<p>Teknikker som redundans l\u00f8ser problemet ved at de enkelte prosessorene kontrollerer hverandres arbeid.<\/p>\n\n\n\n<p>Prosessorene kan v\u00e6re av samme type og kj\u00f8re samme kode. Kontrollogikken sammenligner utdataene og bruker stemmegivning for \u00e5 avgj\u00f8re hvilken operasjon som skal tillates, eller krever at operasjonene kj\u00f8res p\u00e5 nytt til prosessorene er enige.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img  loading=\"lazy\"  decoding=\"async\"  src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAAP+KeNJXAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=\"  alt=\"\"  class=\"wp-image-57813 pk-lazyload\"  style=\"width:700px;height:463px\"  width=\"1024\"  height=\"678\"  data-pk-sizes=\"auto\"  data-pk-src=\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-1129032734-1024x678.jpg\" ><\/figure>\n\n\n\n<p>Bruken av tre prosessorer med flertallsavstemning er dyrere, men mindre inngripende, ettersom omkj\u00f8ring av operasjoner kan medf\u00f8re u\u00f8nskede forsinkelser. Modul\u00e6r redundans kan ogs\u00e5 implementeres p\u00e5 gate-niv\u00e5.<\/p>\n\n\n\n<p>Prosessorene i et redundant arrangement trenger ikke \u00e5 v\u00e6re identiske. I noen arkitekturer brukes en mindre ytelsessterk prosessor som kontrollmotor. I stedet for \u00e5 kj\u00f8re den samme programvaren, utf\u00f8rer den bare konsistenskontroller og tvinger frem en ny kj\u00f8ring hvis en kontroll mislykkes eller, i mer ekstreme tilfeller, en fullstendig tilbakestilling.<\/p>\n\n\n\n<p>For \u00e5 minimere sjansene for at systematiske designfeil sniker seg inn i ligningen, kan dupliserte prosessorer designes og implementeres p\u00e5 forskjellige m\u00e5ter. Dette er en teknikk som brukes p\u00e5 enkelte flerkjernede SoC-er utviklet for sikkerhetssystemer i bilindustrien.<\/p>\n\n\n\n<h2 id=\"arkitektoniske-alternativer-for-robotdesignere\" class=\"wp-block-heading\">Arkitektoniske alternativer for robotdesignere<\/h2>\n\n\n\n<p>Robotdesignere kan n\u00e5 velge mellom et bredt spekter av arkitektoniske alternativer som kan ta dem fra enkle design til sv\u00e6rt fleksible maskiner som kan reagere intelligent p\u00e5 problemer og hindringer og fortsette \u00e5 kj\u00f8re problemfritt.<\/p>\n","protected":false},"excerpt":{"rendered":"Robotarkitektur og design dekker n\u00e5 en rekke funksjoner. Dette p\u00e5virker i stor grad prosessorkraften og hva som brukes&hellip;\n","protected":false},"author":29,"featured_media":57737,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"csco_singular_sidebar":"","csco_page_header_type":"","csco_appearance_grid":"","csco_page_load_nextpost":"","csco_post_video_location":[],"csco_post_video_location_hash":"","csco_post_video_url":"","csco_post_video_bg_start_time":0,"csco_post_video_bg_end_time":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1020,212,214],"tags":[],"coauthors":[1744],"class_list":{"0":"post-59730","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-automasjon","8":"category-elektronikk","9":"category-it-digital","10":"cs-entry","11":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Beregningsalternativer for robotikk - KnowHow<\/title>\n<meta name=\"description\" content=\"Det er flere prosesseringsbehov n\u00e5r det kommer til effektiv og presis bevegelseskontroll av en robot. Les mer om disse.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/\" \/>\n<meta property=\"og:locale\" content=\"nb_NO\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Beregningsalternativer for robotikk - KnowHow\" \/>\n<meta property=\"og:description\" content=\"Det er flere prosesseringsbehov n\u00e5r det kommer til effektiv og presis bevegelseskontroll av en robot. Les mer om disse.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/\" \/>\n<meta property=\"og:site_name\" content=\"KnowHow\" \/>\n<meta property=\"article:published_time\" content=\"2023-10-05T08:12:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-09T10:09:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1355\" \/>\n\t<meta property=\"og:image:height\" content=\"774\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Lucy Henshaw\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Skrevet av\" \/>\n\t<meta name=\"twitter:data1\" content=\"Lucy Henshaw\" \/>\n\t<meta name=\"twitter:label2\" content=\"Ansl. lesetid\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutter\" \/>\n\t<meta name=\"twitter:label3\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data3\" content=\"Lucy Henshaw\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/\"},\"author\":{\"name\":\"Lucy Henshaw\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/person\/6367340c02ff24688a77fd090a5eec30\"},\"headline\":\"Beregningsalternativer for robotikk\",\"datePublished\":\"2023-10-05T08:12:01+00:00\",\"dateModified\":\"2023-10-09T10:09:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/\"},\"wordCount\":1954,\"publisher\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#organization\"},\"image\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg\",\"articleSection\":[\"Automasjon\",\"Elektronikk\",\"IT &amp; digital\"],\"inLanguage\":\"nb-NO\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/\",\"url\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/\",\"name\":\"Beregningsalternativer for robotikk - KnowHow\",\"isPartOf\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg\",\"datePublished\":\"2023-10-05T08:12:01+00:00\",\"dateModified\":\"2023-10-09T10:09:38+00:00\",\"description\":\"Det er flere prosesseringsbehov n\u00e5r det kommer til effektiv og presis bevegelseskontroll av en robot. Les mer om disse.\",\"breadcrumb\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#breadcrumb\"},\"inLanguage\":\"nb-NO\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"nb-NO\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#primaryimage\",\"url\":\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg\",\"contentUrl\":\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg\",\"width\":1355,\"height\":774,\"caption\":\"Central Computer Processor digital concept\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Hjem\",\"item\":\"https:\/\/knowhow.distrelec.com\/no\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Beregningsalternativer for robotikk\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#website\",\"url\":\"https:\/\/knowhow.distrelec.com\/no\/\",\"name\":\"KnowHow\",\"description\":\"KnowHow Hub\",\"publisher\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/knowhow.distrelec.com\/no\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nb-NO\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#organization\",\"name\":\"Distrelec\",\"url\":\"https:\/\/knowhow.distrelec.com\/no\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nb-NO\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2021\/09\/distrelec_logo.png\",\"contentUrl\":\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2021\/09\/distrelec_logo.png\",\"width\":530,\"height\":98,\"caption\":\"Distrelec\"},\"image\":{\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/person\/6367340c02ff24688a77fd090a5eec30\",\"name\":\"Lucy Henshaw\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nb-NO\",\"@id\":\"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/person\/image\/ccdb0bf79400ff28c9f468f1096c32d7\",\"url\":\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/03\/cropped-Lucy-H-scaled-1-96x96.jpg\",\"contentUrl\":\"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/03\/cropped-Lucy-H-scaled-1-96x96.jpg\",\"caption\":\"Lucy Henshaw\"},\"description\":\"Lucy is a Product Manager for Semiconductors, Passive components and Optoelectronics at Distrelec. She has a degree in Chemistry specialising in physical and green chemical technologies. Lucy has been in the industry for just under 1 year and is excited to continue expanding her category ranges with the latest technologies and brands making their way in to the market.\u00a0\",\"sameAs\":[\"http:\/\/www.distrelec.com\",\"https:\/\/uk.linkedin.com\/in\/lucy-henshaw-ba92ba125\"],\"url\":\"https:\/\/knowhow.distrelec.com\/no\/author\/lucy-henshaw\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Beregningsalternativer for robotikk - KnowHow","description":"Det er flere prosesseringsbehov n\u00e5r det kommer til effektiv og presis bevegelseskontroll av en robot. Les mer om disse.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/","og_locale":"nb_NO","og_type":"article","og_title":"Beregningsalternativer for robotikk - KnowHow","og_description":"Det er flere prosesseringsbehov n\u00e5r det kommer til effektiv og presis bevegelseskontroll av en robot. Les mer om disse.","og_url":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/","og_site_name":"KnowHow","article_published_time":"2023-10-05T08:12:01+00:00","article_modified_time":"2023-10-09T10:09:38+00:00","og_image":[{"width":1355,"height":774,"url":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg","type":"image\/jpeg"}],"author":"Lucy Henshaw","twitter_card":"summary_large_image","twitter_misc":{"Skrevet av":"Lucy Henshaw","Ansl. lesetid":"10 minutter","Written by":"Lucy Henshaw"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#article","isPartOf":{"@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/"},"author":{"name":"Lucy Henshaw","@id":"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/person\/6367340c02ff24688a77fd090a5eec30"},"headline":"Beregningsalternativer for robotikk","datePublished":"2023-10-05T08:12:01+00:00","dateModified":"2023-10-09T10:09:38+00:00","mainEntityOfPage":{"@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/"},"wordCount":1954,"publisher":{"@id":"https:\/\/knowhow.distrelec.com\/no\/#organization"},"image":{"@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#primaryimage"},"thumbnailUrl":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg","articleSection":["Automasjon","Elektronikk","IT &amp; digital"],"inLanguage":"nb-NO"},{"@type":"WebPage","@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/","url":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/","name":"Beregningsalternativer for robotikk - KnowHow","isPartOf":{"@id":"https:\/\/knowhow.distrelec.com\/no\/#website"},"primaryImageOfPage":{"@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#primaryimage"},"image":{"@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#primaryimage"},"thumbnailUrl":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg","datePublished":"2023-10-05T08:12:01+00:00","dateModified":"2023-10-09T10:09:38+00:00","description":"Det er flere prosesseringsbehov n\u00e5r det kommer til effektiv og presis bevegelseskontroll av en robot. Les mer om disse.","breadcrumb":{"@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#breadcrumb"},"inLanguage":"nb-NO","potentialAction":[{"@type":"ReadAction","target":["https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/"]}]},{"@type":"ImageObject","inLanguage":"nb-NO","@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#primaryimage","url":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg","contentUrl":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg","width":1355,"height":774,"caption":"Central Computer Processor digital concept"},{"@type":"BreadcrumbList","@id":"https:\/\/knowhow.distrelec.com\/no\/automasjon\/beregningsalternativer-for-robotikk\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Hjem","item":"https:\/\/knowhow.distrelec.com\/no\/"},{"@type":"ListItem","position":2,"name":"Beregningsalternativer for robotikk"}]},{"@type":"WebSite","@id":"https:\/\/knowhow.distrelec.com\/no\/#website","url":"https:\/\/knowhow.distrelec.com\/no\/","name":"KnowHow","description":"KnowHow Hub","publisher":{"@id":"https:\/\/knowhow.distrelec.com\/no\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/knowhow.distrelec.com\/no\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nb-NO"},{"@type":"Organization","@id":"https:\/\/knowhow.distrelec.com\/no\/#organization","name":"Distrelec","url":"https:\/\/knowhow.distrelec.com\/no\/","logo":{"@type":"ImageObject","inLanguage":"nb-NO","@id":"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/logo\/image\/","url":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2021\/09\/distrelec_logo.png","contentUrl":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2021\/09\/distrelec_logo.png","width":530,"height":98,"caption":"Distrelec"},"image":{"@id":"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/person\/6367340c02ff24688a77fd090a5eec30","name":"Lucy Henshaw","image":{"@type":"ImageObject","inLanguage":"nb-NO","@id":"https:\/\/knowhow.distrelec.com\/no\/#\/schema\/person\/image\/ccdb0bf79400ff28c9f468f1096c32d7","url":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/03\/cropped-Lucy-H-scaled-1-96x96.jpg","contentUrl":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/03\/cropped-Lucy-H-scaled-1-96x96.jpg","caption":"Lucy Henshaw"},"description":"Lucy is a Product Manager for Semiconductors, Passive components and Optoelectronics at Distrelec. She has a degree in Chemistry specialising in physical and green chemical technologies. Lucy has been in the industry for just under 1 year and is excited to continue expanding her category ranges with the latest technologies and brands making their way in to the market.\u00a0","sameAs":["http:\/\/www.distrelec.com","https:\/\/uk.linkedin.com\/in\/lucy-henshaw-ba92ba125"],"url":"https:\/\/knowhow.distrelec.com\/no\/author\/lucy-henshaw\/"}]}},"jetpack_featured_media_url":"https:\/\/knowhow.distrelec.com\/wp-content\/uploads\/2023\/08\/iStock-948285004.jpg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/posts\/59730","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/users\/29"}],"replies":[{"embeddable":true,"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/comments?post=59730"}],"version-history":[{"count":0,"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/posts\/59730\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/media\/57737"}],"wp:attachment":[{"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/media?parent=59730"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/categories?post=59730"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/tags?post=59730"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/knowhow.distrelec.com\/no\/wp-json\/wp\/v2\/coauthors?post=59730"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}