Vis enkel innførsel

dc.contributor.advisorSverre, Hendseth
dc.contributor.advisorKnudsen, Martinius
dc.contributor.authorNilsen, Casper
dc.date.accessioned2021-09-23T18:11:23Z
dc.date.available2021-09-23T18:11:23Z
dc.date.issued2020
dc.identifierno.ntnu:inspera:56990118:34497083
dc.identifier.urihttps://hdl.handle.net/11250/2780946
dc.description.abstractEn kyborg eller kybernetisk organisme er fusjonen mellom mekaniske og lev- ende biologiske deler. En tverrfaglig innsats fra NTNU Cyborg er i ferd med å utvikle en robot som er koblet til biologiske nevrale nettverk. Denne roboten, passende nok kalt Kyborgen eller Roboten, har som mål å ha en lukket sløyfe med toveis kommunikasjon gjennom biologiske nevroner. Nevronene, som er vokst fra enten mennesker eller rotters stamceller, kan tilpasse seg i henhold til stimuli fra mikroelektroder og skape nevrale nettverk. Det endelige målet er et system som kontinuerlig bruker målinger fra robotens miljø til å trene de kultiverte nettverkene og bruke overførte signaler fra nettverkene til å kontrollere oppførselen til roboten. På lang sikt er planen at Kyborgen skal fungere som en maskot ved at den kjører helt autonomt gjennom gangene i Glassgården ved NTNU Gløshaugen. Dette gjøres for å øke interessen for studentene innenfor relevant forskn- ing som bioteknologi, nevrovitenskap, ingeniørvitenskap og data- og infor- masjonsvitenskap. Kyborgen er nå i versjon 3.0 og er semi-autonom. Den navigerer ved hjelp av et selvprodusert kart, er motivert av sitt eget at- ferdssystem og opererer i henhold til egen tilstandsmaskin. For øyeblikket er roboten på "Supervisory Control" nivå 9 siden den ikke kan kjøre uten tilsyn. For å komme til nivå 10, "Full Automation", må omfattende tester bli utført. Roboten kan kontrolleres og overvåkes eksternt på en datamaskin, men fremgangsmåten for dette er ikke-triviell. Det er derfor behov for et fullverdig grafisk brukergrensesnitt med sanntidsovervåkingskapasiteter som presis styring og systematisk overvåking for å oppnå det stabile systemet. I løpet av denne masteroppgaven ble en kommandomodul for toppnivåstyring av andre moduler utviklet og testet i robotens viktigste programvareramme som heter ROS (Robot Operating System). Tilstandsmaskinen ble kon- solidert til en egen ’oppførsel’-tilstand eller modus som en rekke av andre operasjonsmoduser. Ytterligere tilstander ble lagt til tilstandsmaskinen for modusene manuell kontroll, demo og avbrudd. Et brukergrensesnitt i for- men av en ny webapplikasjon ble evaluert, designet, implementert og testet for Vue og Vue CLI (Command Line Interface). Ulike reaktive funksjon- aliteter for robotinteraksjon, lagret som separate Vue-komponenter, ble im- plementert. Disse funksjonalitetene inkluderer valg av driftsmodus, navi- gasjonskart som navigerer robot ved trykk og manuell kontroll ved bruk av tastatur eller joystick på skjermen sammen med video fra "Computer vision" modulen. Brukergrensesnittet gir mulighet for overvåking av informasjon som batterinivå, motortilstand, driftsmodus, tilstanden i tilstandsmaskinen og oppførselssystemets PAD (Pleasure Arousal Dominance) verdier. Det har også et kommandoverktøy som kan endre tilstand, spille av tekst til tale og styre emosjonssystemet. Kommunikasjonen mellom web app og det eksterne ROS-systemet ble også koblet sammen. De enkelte delene av modulen ble diskutert, begrensningene deres definert og forslag til fremtidig arbeid ble presentert. Fra problembeskrivelsen ble alle foreslåtte funksjoner for Kybor- gens GUI (grafisk brukergrensesnitt) levert.
dc.description.abstractA cyborg or cybernetic organism is the union between mechanical and living biological parts. An interdisciplinary effort by NTNU Cyborg is in the process of developing a robot body that is connected to biological neural networks. This robot, fittingly named The Cyborg or The Robot aims to have a closed-loop bi-directional data flow through the neurons. Grown from the stem cells of either humans or rats, the neurons adapt to stimuli via electronic circuitry, creating the neural networks. The final goal is to be a continuous system using measurements from the robot’s environment to train the cultured networks and using transmitted signals from the networks to control the behaviour of the robot. In the long term, the plan is for the Cyborg to act as a mascot, roaming the hallways fully autonomously in Glassgården at NTNU Gløshaugen to generate interest for students in its relevant fields like biotechnology, neu- roscience, engineering cybernetics and computer and information science. The current cyborg is in version 3.0 and is semi-autonomous. It navigates using a self-made map, is motivated by its behaviour-system and operates according to its state machine. Currently, the robot is at Supervisory Control level 9 since it cannot be left without supervision. To get to level 10, Full Automation, extensive testing must be conducted. The robot can be controlled and monitored remotely on a computer, but the procedure is non-trivial. There is therefore a need for a full-fledged GUI for real-time supervisory capabilities like fine control and comprehensive monitoring to aid in achieving a stable system. During this Master Thesis a commander module for top-level management of other modules was developed and tested in the robot’s main software framework called ROS (Robot Operating System). The full state machine at onset was added to a container and made into the ’behaviour’ mode of operation state. Additional states were added to the state machine for modes of operation like manual control, demo and suspension. The GUI in the form of a new web application using Vue and Vue CLI (Command Line Interface) was evaluated, designed, implemented and tested. Various reactive functionalities for robot interaction, stored as separate Vue components was implemented. These functionalities include selecting mode of operation, click-to-navigate using navigation map and manual control using keyboard input or on-screen joystick with robot camera from the Computer vision Module. The GUI allows for monitoring of information like battery charge, motor state, mode of operation, SMACH state and behaviour-system PAD Values. The GUI also got a command tool for changing SMACH states, perform text-to-speech and selecting emotion in emotion-system. Finally, communication between the GUI and ROS system was bridged. Each part of the GUI module was discussed, their limitations defined and suggestions for future work was presented. From the problem description, every suggested feature for the Cyborg GUI was delivered successfully.
dc.language
dc.publisherNTNU
dc.titleThe Cyborg v4.0 - Implementing GUI for ROS with real-time monitoring, commanding and controlling capabilities
dc.typeMaster thesis


Tilhørende fil(er)

Thumbnail

Denne innførselen finnes i følgende samling(er)

Vis enkel innførsel