Blog chmura tagów
Zakręć się i zagraj (EdPy)
Zakręć się i zagraj (EdPy)

Edisona można programować nie tylko graficznie za pomocą EdWare, ale również w specjalnie stworzonym dla niego języku o nazwie EdPy opartym o język Python. Programując Edisona, np. w specjalnym edytorze online, możemy więc przy okazji uczyć się Pythona, pełnoprawnego języka o potężnych możliwościach i zastosowaniach.

Poprzedni wpis pokazał, jak zaprogramować Edisona za pomocą bloków EdWare, aby jechał, kręcił się i grał dźwięki. To samo zrobimy w EdPy. Po wejściu do edytora online zobaczymy początek programu:

#-------------Setup----------------

import Ed

Ed.EdisonVersion = Ed.V2

Ed.DistanceUnits = Ed.CM
Ed.Tempo = Ed.TEMPO_MEDIUM

#--------Your code below-----------

Wszystkie właściwości i działania Edisona dostępne są w importowanym na początku module Ed. Dostajemy się do nich za pomocą kropki i  nazwy. Na początku zmienimy więc jednostki, w których będziemy wyrażać dystans. Centymetry zamieniamy na milisekundy:

Ed.DistanceUnits = Ed.TIME

Następnie dodajemy polecenie, które nakazuje jechanie na wprost przez 3000 milisekund (3 sekundy) z maksymalną prędkością (10):

Ed.Drive(Ed.FORWARD, 10, 3000)

Jak spowodować obracanie się? Jedno koło zatrzymujemy, drugim poruszamy:

Ed.DriveRightMotor(Ed.STOP, 0, 1000)
Ed.DriveLeftMotor(Ed.FORWARD, 4, 4000)

Na końcu "komponujemy" melodię:

muzyka = Ed.TuneString(13, "m8n8m2n2m6n6z")

Pierwszy parametr oznacza długość (rozmiar) ciągu kodującego dźwięki, czyli drugiego parametru. Zawiera on 2-znakowwe kody dźwięków opisane w dokumentacji metody TuneString. Odegranie melodii jest proste:

Ed.PlayTune(muzyka)

Cały kod prezentuje się następująco:

#-------------Setup----------------

import Ed

Ed.EdisonVersion = Ed.V2

Ed.DistanceUnits = Ed.TIME
Ed.Tempo = Ed.TEMPO_MEDIUM

#--------Your code below-----------

Ed.Drive(Ed.FORWARD, 10, 3000)
Ed.DriveRightMotor(Ed.STOP, 0, 1000)
Ed.DriveLeftMotor(Ed.FORWARD, 4, 4000)

muzyka = Ed.TuneString(13, "m8n8m2n2m6n6z")
Ed.PlayTune(muzyka)

Ćwiczenie

Spróbuj zmienić dźwięki odgrywane przez robota. Przejrzyj dokumentację metody TuneString().

do góry
Sklep jest w trybie podglądu
Pokaż pełną wersję strony
Sklep internetowy Shoper.pl