To jest stara wersja strony!


Sprawozdanie z laboratorium (zaawansowane algorytmy w PLNXT)

  • Robot: Kajtek
  • Data wykonania: 02.06.2010 godz. 15:30
  • Autorzy: Boisse Dawid, Mlaś Paulina, Woliński Krzysztof

Początek

Po zapoznaniu się z tematyką laboratorium przystąpiliśmy do implementacji programu sprzątacza, jako że na poprzednich laboratoriach udało nam się zaimplementować więźnia. Nasz naczelny konstruktor Krzysztof W. przystąpił do modyfikacji Kajtka.

ASCII���{
    AEAverage = 211;
    AELimitsReached = 0;
    AEStable = 1;
    AFStable = 1;
    AFStatus = 4;
    AGC = 947;
    AWBBGain = 182;
    AWBGGain = 64;
    AWBRGain = 158;
    AWBStable = 1;
    AccelerometerDeltas = "(0.0076 0.0051 0.0146) @ 0.0200";
    ApertureValue = 3;
    BrightnessValue = 0.8665659966412658;
    CurrentFocusPosition = 105;
    ExposureBias = 0;
    ExposureTime = 0.06650323478260869;
    Fnumber = 2.8;
    FocalLength = 3.85;
    FocusBand = "60.38 in [37.75, 100.28]";
    FocusMode = 1;
    FocusPeakSumArray =     (
        121308,
        124031,
        126150,
        128883,
        307965
    );
    FocusScan = "(0,27.23) (29,31.35) (56,27.61) (81,43.43) (105,60.49)
(127,58.39) (149,55.08) (169,36.36) 1.9s ago";
    FocusScoresArray =     (
        3971066,
        4096520,
        4202769,
        4333042,
        19625961
    );
    FocusWindow = "350/300 300x400";
    FullyExposed = 1;
    ISOSpeedRating = 269;
    NoiseReduction = "S:10 C:9 Y:1";
    OneFrameAEMode = 1;
    Orientation = 1;
    OverflowOccurred = 0;
    PreviousFocusBand = "26.13 in [0.00, 0.00]";
    PreviousFocusScan = "(0,6.68) (42,7.22) (81,6.39) (116,6.27) (149,5.85)
(178,5.44) (206,5.32) (231,5.04) (255,5.06) 5.2s ago";
    SNR = 28.8450816889359;
    SensorID = 13904;
    Sharpness = 9;
    ShutterSpeedValue = 3.910431673351468;
    ispDGain = 256;
    sensorDGain = 256;
    "{Exif}" =     {
        ColorSpace = 65535;
        DateTimeDigitized = "2010:06:02 17:04:55";
        DateTimeOriginal = "2010:06:02 17:04:55";
        ExposureTime = 0.06666666666666667;
        FNumber = 2.8;
        FocalLength = 3.85;
        ISOSpeedRatings =         (
            269
        );
        PixelXDimension = 2048;
        PixelYDimension = 1536;
        Sharpness = 1;
    };
    "{TIFF}" =     {
        DateTime = "2010:06:02 17:04:55";
        Make = Apple;
        Model = iPhone;
        XResolution = 72;
        YResolution = 72;
    };...

Kajtek miał w tym przypadku kręcić się w kółko i sprawdzać czy w odległości 40cm znajduje się jakaś przeszkoda. Jeśli tak, Kajtek miał podjechać do przodu, by wypchnąć przeszkodę, a następnie wrócić na pozycję startową i kontynuować obracanie i skanowanie obszaru. Niestety Kajtek kręcił się w kółko, nie wykrywając żadnych z przeszkód. Po paru modyfikacjach kodu Kajtek drgnął do przekrętu, lecz w tym samym momencie zamierał w bezruchu.

:- consult('plnxt.pl').
 
start :-
	nxt_open,
	nxt_goal(kajtek, go_on_buddy).
 
go_on_buddy :-
	nxt_rotate(300,40),
	check_dist,
	go_on_buddy.
 
check_dist :-
	nxt_ultrasonic(Value, force),
	Value < 40,
	go_go_go,
	write(Value), nl.
 
go_go_go :-
	nxt_go_cm(100,40),
	nxt_go_cm(-100,40),
	write('go'), nl,
	go_on_buddy.
 
murder_me :-
	trigger_killall,
	nxt_stop,
	nxt_close.

Podsumowanie

Po wykonaniu wcześniejszych wersji sprzątacza robot zawieszał się, podobnie jak powłoka. Należało w tym momencie zrestartować połączenie bluetooth.

pl/dydaktyka/piw/2010/sprawozdania/piw20100602-15a.1275940071.txt.gz · ostatnio zmienione: 2019/06/27 15:54 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0