• Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    1. Home
    2. ladmanj
    L
    • Profile
    • Following 0
    • Followers 0
    • Topics 12
    • Posts 24
    • Best 1
    • Controversial 0
    • Groups 0

    ladmanj

    @ladmanj

    1
    Reputation
    5
    Profile views
    24
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    ladmanj Unfollow Follow

    Best posts made by ladmanj

    • RE: Modifikace proměnné ze dvou míst

      Tak write on change dělá přesně to co potřebuji.

      Proměnnou lze modifikovat z druhého místa, ale sesynchronizuje se zpět, když se změní stav logiky v FBD.

      Píšu pro případ, kdyby se to někomu také hodilo, protože v dokumentaci o tom není ani píp.

      posted in Mervis
      L
      ladmanj

    Latest posts made by ladmanj

    • bug: cacert-update.service

      Na našich dvou neuronech jsem opravil tuto chybu. Asi se o ní už ví, ale pro jistotu posílám sem.

      #!/bin/bash
      #
      # get installed version of ca-certificate package
      # write the version into virtual registers 4200-4201
      #
      # if used with --update, try update/upgrade package
      
      CA_REG1=4300
      CA_REG2=4301
      VREG_DIR=/run/unipi-plc/virtual-regs
      
      if [[ "$TRIGGER_UNIT" =~ ".timer" ]]; then
          apt-get update -y -qq || true
          apt-get install -y -q ca-certificates
      fi
      
      CA_VERSION=$(dpkg-query --show --showformat '${Version}' ca-certificates 2>/dev/null)
      
      # OPRAVA: Odřízne vše od prvního znaku, který není číslice (např. ~deb12u2)
      CA_VERSION="${CA_VERSION%%[^0-9]*}"
      
      if [ -z "$CA_VERSION" ]; then
          rm -f "$VREG_DIR/$CA_REG1"
          rm -f "$VREG_DIR/$CA_REG2" # Zde byla dříve chyba s redundantním /virtual-regs/
      else
          mkdir -p "$VREG_DIR"
          if cd "$VREG_DIR"; then
              echo "$((CA_VERSION/10000))" > "$VREG_DIR/$CA_REG1"
              echo "$((CA_VERSION%10000))" > "$VREG_DIR/$CA_REG2"
          fi
      fi
      
      posted in Mervis
      L
      ladmanj
    • Zápis do modbus holding registru (pouze) při sestupné hraně bool proměnné.

      Hezký den všem.

      Externí zařízení lze vypnout, zápisem 0 do holding registru. Zapsáním 1 se zapne, ale to nechceme dělat. Zapíná se jiným komunikačním kanálem. Druhý holding registr je k dispozici pro čtení aktuálního stavu, ale ten reaguje s mnohasekundovým zpožděním.

      Primárně programuji FBD schematy, ale není podmínkou.

      Jak zapíšu do modbus registru jen nulu, když jsem tam před tím žádnou jinou hodnotu nezapsal, nebo zapsal dříve také nulu, na základě jiné bool proměnné?

      Děkuji srdečně

      posted in Mervis
      L
      ladmanj
    • RE: připojení mervis k home assistant?

      Tato integrace je brutálně omezená, hodí se jen pro malé sady proměnných které se všechny týkají jedné věci. Nelze například světla rozdělit do více místností. Naučil jsem se raději jak to přenášet modbusem.

      posted in Mervis
      L
      ladmanj
    • RE: Modifikace proměnné ze dvou míst

      Tak write on change dělá přesně to co potřebuji.

      Proměnnou lze modifikovat z druhého místa, ale sesynchronizuje se zpět, když se změní stav logiky v FBD.

      Píšu pro případ, kdyby se to někomu také hodilo, protože v dokumentaci o tom není ani píp.

      posted in Mervis
      L
      ladmanj
    • Modifikace proměnné ze dvou míst

      Dobrý den,
      Pro spínání světel v domě z více tlačítek (tlačítka jsou na modbus sběrnici a mají vlastní paměť a chovají se jako stiskem zapni, stiskem vypni) používám XOR mezi proměnnými.

      0c76ea25-7ee6-4832-baf2-fa20cc0c9d5c-obrazek.png

      Potřeboval bych tu výslednou hodnotu číst a měnit ze vzdáleného místa přes SSCP.

      Napadá mě, že by se na to hodilo definovat ji jako write on change, ale nikde v dokumentaci nevidím přesnou definici chování write on change, abych pochopil, zda to je aplikovatelné.

      Nebo mi nezbyde nic jiného než mít dvě proměnné? Jednu k zobrazení a druhou přidat jako další vstup do toho XORu.

      Díky za pomoc

      posted in Mervis
      L
      ladmanj
    • RE: připojení mervis k home assistant?

      Pro ty koho by to také zajímalo, zkouším https://github.com/cervenyxp/hass_sscp_integration
      Zatím to oťukávám, ještě žádné konkrétní výsledky. Nejprve musím přijít na to jak to celé efektivně "architektovat".

      posted in Mervis
      L
      ladmanj
    • přestalo mi bez předešlého varování fungovat prohlížení databáze

      Dobrý den
      Dnes 3.7.2025 se mi objevilo místo rozhraní prohlížení databáze, že jsem si měl do 30.6 koupit mervis scada a že jsem si měl do daného datumu stáhnout data jinam.

      Jenomže, co mám dělat, když mi ta informace byla sdělena až teď?
      Nevím jestli mi nějaký e-mail spadnul do spamu, nebo co, to je jedno.

      To to nemohlo být vidět v rozhraní DB? Tam jsem se díval obden. Ještě předevčírem jsem tam přidával nové proměnné ...

      Potřebuji ta data.

      Scada nepoužívám, a nechci používat, nechci platit (bratr, majitel domu řízeného vašimi PLC, také nechce).

      Tohle je zatím největší kudla do zad od unipi.

      Jsem opravdu rozčílený.

      posted in Mervis
      L
      ladmanj
    • připojení mervis k home assistant?

      Zdravím,

      postavil jsem řízení domu na dvou unipi jednotkách. Dělá to jen logiku, PID regulaci a pod, časových plánů je tam minimum. Uživatel interaguje jen tlačítky na modbus rtu sběrnici.

      Chtěl bych tomu přidat uživatelský komfort, automatizaci podle počasí a podobně, pomocí Home Assistant.
      Zatím ale nevím jaká je nejlepší cesta s propojením.

      Modbus TCP je možnost, ale je třeba ručně vyplnit tabulky datových bodů. Toho je ale už hoooodně. Uvítal bych nějaký automatický export a import.

      Máte někdo zkušenost, jak takovou věc co nejrychleji a nejsprávněji provést?

      Díky
      Jakub

      posted in Mervis
      L
      ladmanj
    • RE: chyba komunikace s Unipi Extension xS51

      @cleve
      OK, díky, myslel jsem si to, že EN bude ta cesta, ale chtěl jsem se ujistit.

      posted in Mervis
      L
      ladmanj
    • RE: chyba komunikace s Unipi Extension xS51

      @cleve said in chyba komunikace s Unipi Extension xS51:

      @ladmanj
      Dobrý den,
      teplý restart je možné provést zavoláním funkce reloadapplication s parametrem flags (příznaky restartu, 1 - cold restart, jinak warm). Funkci je možné přidat pravým tlačítkem nebo zavolat z ST.

      Omlouvám se, ale není mi jasné jak se ve FBD zavolá ta funkce reloadapplication (nedokumentovaná) tak, aby se restart provedl jen při true boolean proměnné. Kdyby flag 0 byl "žádná akce", 1 "warm restart", 2 "cold restart", tak bych věděl, ale když 1 je cold a vše ostatní je warm restart, tak nějak nevím co dělat.

      Chápu že je to míněno tak, že v takovém případě se funkce vůbec nemá volat, ale já nevím jak takovou věc ve fbd nakreslit. Pokud to nepůjde, pokusím se to nadatlovat v ST, ale zatím ho stále neovládám. Dokážu C, C++, python, pascal, assembler pro různé platformy, Verilog, tak se nakonec zvládnu i ST. Zatím mi ale způsobuje nevolnost.

      posted in Mervis
      L
      ladmanj