Arduino due - millis
Pravidla fóra
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
Re: Arduino due - millis
A víš co due dokáže? To co mu napíšeš, ani o řádek víc
Re: Arduino due - millis
je mi celkem jedno jestli se rozjedu požadovaným směrem o 25ms dřív nebo později
Naprosto souhlasím. Pokud bych se měl vrátit k původnímu problému, tak mi jde v podstatě o dvě věci.co je na displeji mezi start a stop je přece jen orientační
Dlouhodobou stabilitu a přesnost a pak, aby se stopky spustily téměř ihned po startu (v řádu desetin vteřiny), kdy každý může kontrolovat, zda se spustily správně. Zpoždění 1 vteřiny se už pozná. Je jasné, že nebudu zobrazovat ms, displej by stejně nestíhal.
Rovněž přesnost v ms po dobu cca 10 min taky v praxi není zas tak důležitá věc, ale jde mi o to, co lze dostat z Arduina, a pokud by se měly měřit časy řádově desítky minut, chtěl bych, co se týče přesnosti, vyždímat maximum. Jak jsem minule řekl: čistě z profesního hlediska.
Re: Arduino due - millis
Start stopek můžeš signalizovat i akusticky nebo světelně. Pro kontrolu spuštění je ten zvuk asi nejlepší.
Pokud chceš maximální přesnost, asi se nevyhneš použití kalibrovaného externího oscilátoru. Pokud to má fachat venku i uvnitř (velké rozmezí teplot), tak by měl být ten oscilátor i teplotně stabilizovaný. Další cesta je přes použití GPS a nebo DCF77. Tam si můžeš sekundovými pulsy synchronizovat interní hodiny. GPS má obecně problém s příjmem uvnitř budov, takže je to spíš na venkovní použití, DCF77 je na tom uvnitř o dost lépe. Všechno se to odvíjí od požadované přesnosti a prostředí ve kterém to má pracovat. Taky asi nemá smysl bazírovat na řesnosti 1ms/hod, když se to bude spouštět a zastavovat spínačem, protože tam není problém zanést chybu v desetinách sekundy.
Pokud chceš maximální přesnost, asi se nevyhneš použití kalibrovaného externího oscilátoru. Pokud to má fachat venku i uvnitř (velké rozmezí teplot), tak by měl být ten oscilátor i teplotně stabilizovaný. Další cesta je přes použití GPS a nebo DCF77. Tam si můžeš sekundovými pulsy synchronizovat interní hodiny. GPS má obecně problém s příjmem uvnitř budov, takže je to spíš na venkovní použití, DCF77 je na tom uvnitř o dost lépe. Všechno se to odvíjí od požadované přesnosti a prostředí ve kterém to má pracovat. Taky asi nemá smysl bazírovat na řesnosti 1ms/hod, když se to bude spouštět a zastavovat spínačem, protože tam není problém zanést chybu v desetinách sekundy.
Re: Arduino due - millis
V řádu desetin vteřiny ? Pokud bude start/stop tlačítko hardwerově ošetřeno a bude používat přerušení procesoru, tak ty stopky spustíš a zastavíš v řádu mikrovteřin. - EDIT : pokud tuhle část napíšeš v assembleru, tak i v řádech nanosekund
A teď z věštecké koule :
Takže v podstatě stavíš ovládací panel + zobrazovací panel pro nějaký soutěže/zápasy/tělocvičnu. To jestli bude sloužit jen jednomu konkrétnímu účelu, nebo bude umět zobrazovat více sportů, to už tam nevidím.
Externí displej bude velký panel s nějakými zobrazovači a bude někde viset ve vzduchu a komunikovat sním budeš právě těmi RF moduly, takže v podstatě výsledný program poběží na dvou arduinech.
Tak ... a které teď bude měřit čas ?
A teď z věštecké koule :
Takže v podstatě stavíš ovládací panel + zobrazovací panel pro nějaký soutěže/zápasy/tělocvičnu. To jestli bude sloužit jen jednomu konkrétnímu účelu, nebo bude umět zobrazovat více sportů, to už tam nevidím.
Externí displej bude velký panel s nějakými zobrazovači a bude někde viset ve vzduchu a komunikovat sním budeš právě těmi RF moduly, takže v podstatě výsledný program poběží na dvou arduinech.
Tak ... a které teď bude měřit čas ?
Re: Arduino due - millis
Spustenie, štart. Nie je žiadny problém ako píše predošlý príspevok.
Synchronizácia pomocou DCF77 nie je reálne. Ide o amplitúdovú moduláciu. Veľmi náchylné na rušenie. Značky nemajú konštantnú šírku aj z dôvodu kolísania sily príjmu a činnosti AVC.
Rychlá akcia všetko merané s tým istým chrobákom:
Arduino UNO, chyba jak prasa - niekoľko sekund za hodinu
kontaktné pole, nejaký 12MHz kryštál
kontaktné pole, presný časový kryštál s nastavením. Tá f je 2^22 aby sa to dobre delilo k sekunde. Prerátanie aká je chyba zobrazovania času, ak je f nastavená s presnosťou na 1Hz (v tomto prípade 0,1Hz) si môže každý vypočítať sám. Samozrejme že to driftuje s teplom. Ale nie je to také strašné. U tých hodín som to robil na pol škody. Aby to pri určitých teplotách bolo nad a potom pod. Takže sa to mierne kompenzovalo. Tie čo nemali automatickú zmenu zimný/letný čas sa nastavovali typicky dvakrát do roka práve vtedy. Novšia verzia zvyčane od výpadku k výpadku. (Nie nebehalo to na arduine, to ešte nebolo na svete a ani žiadna ATMEGA)
Ešte stále máš s niečím problém? Ak áno použi TXCO, dnes sa to dá v pohode kúpiť ani to nestojí veľa. K tomu nemám čo povedať, nikdy som to nepotreboval použiť.
Synchronizácia pomocou DCF77 nie je reálne. Ide o amplitúdovú moduláciu. Veľmi náchylné na rušenie. Značky nemajú konštantnú šírku aj z dôvodu kolísania sily príjmu a činnosti AVC.
Rychlá akcia všetko merané s tým istým chrobákom:
Arduino UNO, chyba jak prasa - niekoľko sekund za hodinu
kontaktné pole, nejaký 12MHz kryštál
kontaktné pole, presný časový kryštál s nastavením. Tá f je 2^22 aby sa to dobre delilo k sekunde. Prerátanie aká je chyba zobrazovania času, ak je f nastavená s presnosťou na 1Hz (v tomto prípade 0,1Hz) si môže každý vypočítať sám. Samozrejme že to driftuje s teplom. Ale nie je to také strašné. U tých hodín som to robil na pol škody. Aby to pri určitých teplotách bolo nad a potom pod. Takže sa to mierne kompenzovalo. Tie čo nemali automatickú zmenu zimný/letný čas sa nastavovali typicky dvakrát do roka práve vtedy. Novšia verzia zvyčane od výpadku k výpadku. (Nie nebehalo to na arduine, to ešte nebolo na svete a ani žiadna ATMEGA)
Ešte stále máš s niečím problém? Ak áno použi TXCO, dnes sa to dá v pohode kúpiť ani to nestojí veľa. K tomu nemám čo povedať, nikdy som to nepotreboval použiť.
Re: Arduino due - millis
Ta časová nejistota neplyne, samozřejmě, z HW a SW. Ta plyne z toho, kdo sedí u tlačítka a mačká ho
Proto se pro start-stop začaly používat ruzné jiné prvky, než člověk.
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host