BREIN Erik Bury, Antoine Vandermeersch en Anouk Van Laer
BREIN Inhoud Algemeen principe Algemene samenhang en intelligentie Bespreking FSM Decoders / Encoders SAFE AI Display Voorbeelden werking Conclusie
BREIN Algemeen principe Centraal controlemechanisme Verzamelt en geeft informatie weer Radar Inclinatiehoek Snelheid Conflictdetectie
BREIN Samenhang en intelligentie ENCODER WIFI DECODER SAFE AI alternatief ENCODER CONTROLLER DISPLAY
BREIN Simulink model
BREIN DECODER Functie Inputs Outputs omzetten van binaire data uit de registers naar signalen voor interne werking Inputs RadarF, RadarB, Wifi en ControllerINFO Vlaggen Outputs Werkingssignalen Informatie voor display (hoek en snelheid) Informatie voor wifi (ongewijzigd)
BREIN Werking DECODER
BREIN SAFE Functie Inputs (reeds gedecodeerd) Outputs Bepaalt de veiligheid van een commando Inputs (reeds gedecodeerd) RadarF, RadarB Binnenkomend Wifi-commando Mogelijk alternatief commando (zie AI) Outputs Gekozen commando Safe
BREIN SAFE
Bubble diagramma Safe & AI
BREIN AI Functie Inputs Outputs Veilig Doorgeven van commando Onveilig Bepalen alternatief commando Inputs Commando Safe Object Outputs ControllerOUT Artificieel Commando
BREIN AI
BREIN ENCODER Functie Inputs Outputs Omzetten interne signalen naar binaire data In buffer-register schrijven Werkt per buslijn Inputs Interne signalen Outputs Binaire data Aansturing buffer-register (Push)
BREIN Voorbeeld werking (1) Werking van het brein: stand-alone!!
BREIN Voorbeeld werking (2)
BREIN Voorbeeld werking (3)
BREIN: DISPLAY Terugblik lastenboek Snelheid beide motoren Hellingshoek Afstand tot dichtste object ERROR indien conflict commando ⇒ MAKKIE dus!
BREIN: DISPLAY Conventies Linkersnelheid Rechtersnelheid Hellingshoek Afstand dichtsbijzijnde object
BREIN: DISPLAY DisplayControle Configuratie (initialisatie fase) Cyclisch updaten (steady-state fase) Direct contact met rest BREIN Delegeert taken Data Encoder InstructionWriter
BREIN: DISPLAY Initialisatie fase Extra discrete states (x(1) = STATE) x(2) voor Wait time ↔ Function Set
BREIN: DISPLAY Steady-state fase Nog 2 extra discrete states nodig x(2) recycleren → 0 (LS), 1 (RS) x(3): 0 (TA), 1 (OD)
BREIN: DISPLAY DataEncoder Omzetten tekens naar instructies Schrijft instructies weg naar FIFO Mathematisch blok (ontleding decimaal getal) 1 1 1 1 1 1 1 1
BREIN: DISPLAY Decimale ontbinding 1 + |ε| → 1 1 - |ε| → 0 3.61 6.1 1 361 61 1 1 6 3 10^-1 10^-2 10^ 0 300 60 1 61 1 3: [1 0 1 1 0 0 1 1 0 0] 6: [1 0 1 1 0 0 0 1 1 0] 1: [1 0 1 1 0 0 1 0 0 0] Hoogstens laatste component fout Afronding
BREIN: DISPLAY InstructionWriter Ledigt instructies uit FIFO (DataEncoder) Op basis van timing mode diagram Gebruikt FSM_Counter (klokcycli) 20 Mhz → 50 ns = 1 klokcyclus
BREIN: DISPLAY DisplayControle: ERROR DataEncoder actief Stop DataEncoder Flush FIFO ERROR inladen InstructionWriter actief Reset (na huidige instructie) ERROR inladen
BREIN: DISPLAY Display Controle Data Encoder Instruction Writer 2 prototypes Data Encoder 1 prototype Simulink blok voor decimale ontleding Werkt stand-alone Instruction Writer Simulink blok
BREIN Integratie met bus Simulink model af Aantal kleine incoherenties tussen de modellen (bv. voorstelling binair getal) Data wordt serieel ingelezen werking nagaan = arbeidsintensief
BREIN Conclusie Brein werkt zoals het moet Werking reeds uitgebreid, maar nog steeds ruimte voor add-ons Integratie met bus ruwweg in orde