Zvuk parní lokomotivy s PICAXE

Po konstrukci, která mikrokontrolérem PICAXE 08M mimo jiné imituje zvuk lodního parního stroje, se tentokrát podíváme na jiné zapojení původem z Austrálie. Jeho autor se zabývá především zahradní železnicí, šel trochu jinou cestou a dosáhl výsledku, který určitě stojí za povšimnutí.

Původní příspěvek najdete na internetových stránkách http://www.members.optusnet.com.au/satr/electronics.htm , bohužel s několika chybami. Po vyzkoušení s nyní dostupnou verzí mikrokontroléru PICAXE 08M2 vyjdeme z překresleného schématu.

parni_loko

Schéma zapojení zvukového modulu

Zvukový modul má dva vstupy. Nejdůležitější je vstup „rychlost“, na něj připojíme napětí 0 až 20 V, jehož velikost odpovídá tahu stroje respektive rychlosti. Bylo by obvyklé očekávat, že nulové napětí reprezentuje stání lokomotivy a 20 V plnou rychlost, ale není to tak. Vstup se totiž má připojit paralelně k výkonovému N FET tranzistoru regulátoru rychlosti, takže naopak, plné otevření tranzistoru znamená (téměř) nulové napětí na něm a plný tah elektromotoru, uzavření tranzistoru znamená stání lokomotivy a plné napájecí napětí na vstupu zvukového modulu. Dělič v poměru 3:1 dodává napětí na Pin1 a jeho AD převodník s rozsahem 0 až 5 V. Pokud by mělo napájení železniční trakce jiné napětí, je potřeba upravit tento dělič, aby na vstupu PICAXE bylo při stání právě napětí 5V (může být nepatrně větší, ale opravdu jen nepatrně).

zapojeni_reg

Předpokládané zapojení regulátoru směru a rychlosti

Další problém se týká velikosti kapacity kondenzátoru, který u pinu 1 vyhlazuje PWM modulaci na napětí. Pokud má být modul použit pro zahradní železnici (jako u autora zapojení), je kapacita 22μF pravděpodobně správná, protože velké modely železnice používají relativně vysokootáčkové motory, velký převodový poměr, a k napájení PWM o frekvenci řádově kHz až desítek kHz. Jenže u modelové železnice malých měřítek (N, TT, …) je to výrazně jiné. Aby se dalo dosáhnout opravdu pomalé jízdy, musí se použít frekvence PWM mnohem nižší (10 až 100 Hz), kdy se motor začne v podstatě pohybovat trhaně, v jistém smyslu „krokuje“. Optimální je, když se dokonce frekvence s výkonem (rychlostí) mění, při rozjezdu se nejprve reguluje proměnnou frekvencí s konstantní dobou sepnutí, později se přejde na proměnnou střídu s konstantní frekvencí (PWM).

Odpovídající kapacita, která odpovídá nejnižším používaným frekvencím regulátorů malých měřítek modelových železnic, musí být v řádu stovek μF až jednotek mF, je nutné ji vyzkoušet.

Druhý vstup zvukového modulu by měl být v klidu připojen na úroveň L (zem), pokud se na něm objeví úroveň H (+5V), ozve se zvuk zapískání parní píšťaly po nastavenou dobu (dle programu). Při trvalém stavu H se interval zapískání neustále opakuje, není to jeden dlouhý hvizd. Potíž je v tom, že po dobu pískání se negeneruje zvuk parního stroje, a to není zrovna realistické. Funkce pískání funguje tak jak autor chtěl, nicméně podle mého názoru je obecně vhodnější ji trvale vyřadit připojením vstupu Pin 3 na zem. Současně s tím můžeme vynechat (nahradit spojem) kondenzátor 3n3 u neinvertujícího vstupu zasilovače.

Pin 4 je na rozdíl od schématu v původním pramenu nepoužitý, může zůstat nezapojený.

A teď fígl, jímž toto zapojení vyniká. Zvuk je generovaný na pin 0 a vzhledem k charakteru zvuků parního stroje jde především o bílý šum. Jenže i šum je na digitálním výstupu mikrokontroléru reprezentován jen dvěma stavy a výsledek (stejně jako u jiných jednoduchých modulů) zní „syrově“ a nepřesvědčivě. Současně se šumy je však na pin 2 generován signál PWM, který je na následujícím integračním RC článku přeměněn na napětí. Zvukový zesilovač s obvodem LM386 je zapojený tak, že toto napětí ovlivňuje jeho zesílení, takže mikrokontrolér může měnit hlasitost v průběhu generování šumu a tím vytvořit amplitudovou „obálku“, tedy to, co většinou v podobných případech chybí. Je-li napětí řízení PWM nulové, je zisk zesilovače maximální, když se blíží 5 V, zesílení je minimální (zvuk neprojde). Tímto způsobem se dělá náběh zvuku výstupu páry ze stroje i jeho doběh (dozvuk), při stání se pára upouští v delších intervalech, ale s podstatně tišším zvukem, jak to odpovídá nižšímu tlaku. Video s ukázkou zvuku a možností porovnání je na Youtube.

Výkonná část programu je poměrně krátká, ale zápis zejména kvůli komentářům dost „nakynul“. Kompletní program pro PICAXE 08M2 najdete v souboru ZIP zde: parni_loko . Původní podoba programu v textové formě je uložena jako soubor PDF: picaxesteamsoundexample . Předpokládá se, že mikrokontrolér je v zapojení už naprogramovaný, schéma neobsahuje programovací vstup s příslušnými rezistory.