Hirdetés

Új hozzászólás Aktív témák

  • cog777

    senior tag

    válasz atesss #38948 üzenetére

    Bocs hogy belevau ismet :D, nem birom ki.
    Szoval szerintem tulbonyolitod, bar tanulas celzattal nem art, de egyszerubben is lehetne.
    Hardveres megszakitas RPi-n felesleges, ilyen feladatokra. Pythonban sima Timer megteszi hogy bizonyos idokozonkent futtat valamit.

    En probaltam amugy FreeRTOS-t Arduino-n es mas MCU-kon, tenyleg preciz de sokkal sokkal jobban megbonyolitotta a fejlesztest, nekem az egyszeru feladataimhoz nem erte meg. Tanulni jo volt.
    A cegnel mi markolo hidraulikat vezerlunk ahol 15 ms hataridok vannak, ezt egy linux meg rohogve tudja, real time nelkul is. (Azt hiszem 1ms-os pontossagu az alap utemezoje a linuxnak, ha fontos hogy az operacios rendszer nem vegye el a vezerlest a programodtol mas feladat futtatasahoz, akkor emelni kell a prioritasas, esetleg rootkent futtatni, vegso esetben real-time OS, vagy inkabb dedikalt hardver/MCU.)

    "Hanem szimplán csak arról, hogy az áramszünet okán a Raspberry órája kicsit elállítódott. És ha pont akkor áll vissza a pontos idő, amikor a scipten belül fut valamilyen"

    "Itt nem arról van szó, hogy az áramszünet befolyásolt-e valamit. Hanem szimplán csak arról, hogy az áramszünet okán a Raspberry órája kicsit elállítódott. És ha pont akkor áll vissza a pontos idő, amikor a scipten belül fut valamilyen, a rendszeridőt kalkulációnak használó függvény, akkor ezt a függvényt az óra-átállítás "eltérítheti"."

    En tovabbra is a monotonic orat hasznalnam kalkulaciora, pont erre van. Viszont ha nem akarod, akkor irj egy szolgaltatast ami var addig amig nincs internet, majd kenyszeritsd ki az idoszinkronizaciot.
    Igy biztosan tudod hogy akkor tortent :)
    Python program ping-el 8.8.8.8-at, ha van valasz akkor vegrehajtja a ntpdate parancsot (ezt talaltam google-ban, lehet h mas pl itt valami chrony-t emlit: [link] ), majd ertesiti a programodat (pl TCP, vagy MQTT kapcsolaton, egyszerubb esetben fajlon keresztul) hogy megtortent az idoszinkronizacio.

    Alternativakent, RTC-t kell hasznalni ha a logokban fontos a mp pontossagu ido.
    Vezerlesre monotonic orat :D

    Esetleg kombinalni az RTC-t, UTC-t a logokhoz es a monotonicot a vezerleshez.

    Szerk: azt meg beirom hogy mindig merlegelni kell hogy a gyakorlatban milyen surun lep fel a problema amit meg kell oldani. Ha surun, akkor komoly megoldas kell. Ha par evente 1x akkor felesleges tul sok energiat belelolni hacsak tanulni nem szeretnel...

    [ Szerkesztve ]

    HP ZBook Studio 15.6 G8 Mobile Workstation - Windows 11

Új hozzászólás Aktív témák