Programová nadstavba

Wiring, C++, C, Java, ...
Pravidla fóra
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
Odpovědět
Lammerius
Příspěvky: 3
Registrován: 26 úno 2018, 18:51

Programová nadstavba

Příspěvek od Lammerius » 26 úno 2018, 18:59

Zdravím všechny.
Potřeboval bych poradit ohledně jednoho poměrně zapeklitého problému.
Vyrábím orchestrion řízený arduinem. Základem je xylofon, jehož tóny jsou přehrávány elektromagnety s jádrem. Tyto elektromagnety jsou spouštěny přes MOSFETy skrze výstupy arduina.
Co potřebuji, je vytvořit program, pomocí kterého bude možné programovat melodie a následně je přehrávat. Vůbec ale nevím, jestli je takováto programová nadstavba u arduina možná a zda to zvládne i člověk, který není v programování arduina a programování obecně příliš zběhlý.
Pokud je něco nejasné, rád doplním.

Opravdu hodně spěchám a proto budu rád za každou odpověď.
Díky. :)

jankop
Příspěvky: 1057
Registrován: 06 zář 2017, 20:04
Bydliště: Brno
Kontaktovat uživatele:

Re: Programová nadstavba

Příspěvek od jankop » 26 úno 2018, 19:30

Moc obecný a nula informací.
Kolik má xylofon plotniček? Co plotnička, to jeden tón, nebo to dá i víc tónů? Mění se délka tónů?
Kdysi jsem měl na osmibiťáku BASIC, kterej dovedl převádět do tónů zápis typu c2e2a1.. atp. Naprogramovat by to neměl být problém, pokud stačí pár skladeb, mezi kterými budeš vybírat. Modifikovat skladby z PC bez změny sketche už není úplně triviální, ale dalo by se. A pokud chceš měnit třeba tempo nebo úhoz, tak to může být docela pracný. Ale téměř vše je řešitelné, jen to musíš umět nebo mít někoho kdo to umí za tebe.

Lammerius
Příspěvky: 3
Registrován: 26 úno 2018, 18:51

Re: Programová nadstavba

Příspěvek od Lammerius » 26 úno 2018, 19:59

Xylofon má celkem 22 tónů (včetně 9 půltónů) a každý elektromagnet přehrává jeden tón. Délka tónu je neměnná a sílu úderu mohu řídit pouze dobou sepnutí elektromagnetu.
Nutně potřebuji, aby se daly přímo programovat skladby a ty pak přehrávat. Takže ne jen několik skladeb, ale aby to bylo měnitelné. Tempo i úhoz by bylo poměrně dobré kdyby se dal ovlivnit. Bohužel na celou věc nemám příliš mnoho času (jedná se o školní projekt) a možná ve výsledku udělám jen to, že si napíšu například html program, ve kterém si "naprogramuji" melodii, ten mi vygeneruje kód pro arduino a tento kód se poté zadá do klasického IDE ke zbytku programu.
Sem píšu hlavně proto, abych se dozvěděl, zda je něco takového vůbec možné a pro mě, jakožto někoho, kdo s arduinem příliš mnoho zkušeností nemá zvládnutelné.
A děkuji za předchozí odpověď. :)

petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Kontaktovat uživatele:

Re: Programová nadstavba

Příspěvek od petan » 26 úno 2018, 20:39

Těžko říct jaký máš zkušenosti, respektive na co se cítíš. Arduino je obyčejnej procesor, takže pokud se to vejde do paměti určitě to svede. Není to nějaká nemožná věc (vezmi si, že dokáže obsluhovat sběrnice, které jsou několikanásobně rychlejší).
Na netu YouTube najdeš spoustu vidí jak pomocí Arduina řídí různé nástroje. Určitě to už někdo zkoušel.

Hudbě moc nerozumím, ale šel bych cestou zápisu souboru na pameťovku ve stylu těch not, jak psal výše jankop. Arduino by to potom dekódovalo a podle toho spínalo jednotlivé elektromagnety.
Arduino by potom četlo jednotlivé řádky programu. Nějaký příkaz by nastavil rychlost časovače (rychlost taktů, nebo jak se tomu říkalo), nějaký zase jaký elektromagnet zapnout, kdy ho pustit atd.

Teď si říkám, že by to teoreticky nemuselo bejt tak složitý.

Lammerius
Příspěvky: 3
Registrován: 26 úno 2018, 18:51

Re: Programová nadstavba

Příspěvek od Lammerius » 26 úno 2018, 22:26

Díky za odpovědi. :)
Mám už pár nápadů, jak by se to dalo vyřešit. Navíc jsem zjistil, že zadání je o něco jednodušší než jsem původně myslel, takže to snad zvládnu.

Ještě jednou děkuji.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti