Jens Petersen wrote:
> Jeg sidder og roder med at lave et simpelt system til en selvkørende robot,
> så den ikke støder ind i ting.
> Jeg har fire afstandssensorer: for,bag,venstre og højre, og skal styre
> vinkel- og lineær hastighed.
>
> [..]
>
> Jeg har altså fire medlemsskaber af "nær" for de fire retninger. Hvis
> vinkelhastigheden er -100 til +100 og jeg tegner det som en 1d-funktion, så
> bliver venstres nærheds-medlemsskab til en trekant ude i højre side (nær
> noget til venstre giver tilbøjelighed til at dreje til højre) og højres
> nærhed giver en trekant til venstre. Når jeg ved i hvor høj grad jeg er nær
> noget til venstre og højre, så kan jeg skalere de to trekanter og finde
> deres massemidtpunkt og dermed min vinkelhastighed.
> Det jeg som sagt er usikker på er hvordan jeg kan få med at hvis jeg er
> meget nær noget foran, så skal jeg dreje til den side med "mindst nærhed",
> sådan at er jeg nær noget foran og er jeg længst fra noget til venstre, så
> drejer jeg til venstre.
>
> Det virker lidt som om jeg ikke kan kombinere de to beslutninger i eet
> skridt?
Hvis jeg forstår dig ret, er det fordi sensoren forand vil vise at noget
kommer tættere på, når din robot drejer, hvis den er endt i et hjørne?
(Foruden at du kan være så uheldig at robottens sidesensorer viser samme
afstand.) Hvis du har en tilstand hvor robotten styrer ved at bruge
front- og sidesensorerne, virker det umiddelbart som om at du er nødt
til at skifte til en tilstand, der går ud på at dreje væk fra hjørnet,
når robotten ender i det. Først når den er drejet helt væk fra hjørnet,
kan du skifte tilbage til den første tilstand igen.
> Den mere banale løsning er at lade højre og venstre sensor styre rotation og
> lade for og bag sensore styre hastighed. Det betyder bare at hvis robotten
> køre direkte mod en mur, så vil den ikke dreje af, men istedet stoppe op. Så
> kunne man istedet lade forsensoren definere både hastighed og en tendens til
> at dreje til venstre. Robotten vil så altid dreje af mod venstre, hvis da
> ikke venstre sensor modarbejder det ved at være nær et objekt. Det virker
> bare ikke optimalt.
Det kommer lidt an på hvad for muligheder, du har. Hvis det er muligt
kan du jo lave det sådan at kun når frontsensoren indikerer at robotten
er meget tæt på noget, tager dens tendens til at dreje til venstre over.
Jeg så en RUC-studerende fremlægge sit speciale, hvor han havde brugt
genetiske algoritmer til at finde det mest optimale neurale netværk til
styring af en robot. Det kan sikkert overføres til fuzzy kredsløb, men
det kan blive meget omfattende, så hvis du ikke har ressourcer til det,
er vejen frem nok at rode videre med noget som er udviklet i hånden.
Mvh. Michael.
--
Which is more dangerous? TV guided missiles or TV guided families?
I am less likely to answer usenet postings by anonymous authors.
Visit my home page at
http://michael.zedeler.dk/