Ottov plynulý pohyb a úprava prehrávania skladieb pomocou buzzera - Denis, Jana

From RoboWiki
Jump to: navigation, search


Cieľ projektu

Otto1.jpg

Projekt mal dva ciele, jedným z nich bolo upraviť prehrávanie skladieb tak, aby sa mohli do melódií zakomponovať opakovacie znamienka. Druhým cieľom bolo upraviť pohyb končatín robota tak, aby dokázal hýbať naraz viacerými končatinami.


Realizácia projektu

Opakovacie znamienko sa riešilo nasledovne: v reprezentácii prehrávanej melódie ako postupnosti bajtov reprezentujúcich jednotlivé tóny sme konkrétny úsek, ktorý sa mal zopakovať označili z pravej aj z ľavej strany bajtom 250. Zľava vyčlenil teda začiatok opakovanej časti a sprava jej koniec. Spracovanie tohto znaku potom prebiehalo tak, že keď sme sa v melódii dostali na ľavý bajt 250, zapamätal sa nasledujúci tón a keď sme došli na pravý bajt 250, smerník ukazujúci na aktuálne spracovávaný tón sa presunul na zapamätanú pozíciu a potom odtiaľ postupoval ďalej, pričom už ignoroval pravý bajt 250.

Pohyb viacerými končatinami sa riešilo nasledovne: Každá končatina ma target position kam by sa mala dostať a takisto aj delay, ktorý umožňuje hýbať končatinami rôznymi rýchlosťami. Takisto sa zmenil význam prvej premennej v choreografii, kde teraz označuje dobu čakanie od začiatku programu resp. stretnutia času.

Nový Formát choreografií:

1 8 čas_v_s nastav celkový čas tanca v sekundách, po vypršaní času tanec skončí
1 9 číslo_riadku pokracuj od zadaneho cisla riadku (riadky z komentarmi sa nepocitaju)
1 10 spomalenie nastaví spomalenie pohybu pre vsetky koncatiny
1 10X spomalenie nastaví spomalenie pre danú končatinu (X - číslo končatiny)
1 11 číslo_melódie začne hrať zvolenú melódiu v pozadí choreografie, 0 = vypnúť zvuk
1 12 zvukový_efekt zahrá zvolený zvukový efekt
1 13 0 resetne čas
1 14 X začiatok funkcie s názvom X
1 15 0 koniec funkcie
1 16 X zavolanie funkcie s názvom X

Kód na stiahnutie

File:Otto.zip