Autor Téma: mala vizualizacka na 3 PC  (Přečteno 2189 krát)

Offline Daniel_Andrascik

  • Guru
  • *****
  • Příspěvků: 583
  • Karma: 20
    • Verze Delphi: D2007, D10.4
mala vizualizacka na 3 PC
« kdy: 04-01-2023, 21:14:19 »
Zdravim pani.

AKy koncept a aku technologiu by ste zvolili. Pomocou libnodave si stiahnem par dat z PLCeciek (priemyelne vyrobne linky), za den to mozu byt 10ky kilobajtov max, a budem ich zobrazovat na jednoduchom formulariku, mozno dva budiky a nejaky graf jeden alebo dve xy serie. A je potrebne aby to bolo vidno asi na troch pocitacoch v sieti.

Cisto pure delphi riesenie si viem predstavit na jednom PC ktore je fyzicky pripojene k PLCeckam pobezi sluzba ktora bude tie data vycitavat a zaroven pomocou synapse tam nahodim TCP alebo UDP server/client. A potom spravim vizualneho klienta ktory bude spusteny na inych pocitacoch v sieti a bude tie denne data zobrazovat a citat cez TCP/UDP.

Mozno by to bolo lepsie urobit ako HTTP server aby sa to dalo citat cez prehliadac, ale to uz zacinam plavat do vod ktore poznam len velmi povrchne, v kazdom pripade na tom nechcem stravit kvantum casu. CHcem aby to bolo funkcne a blbuvzdorne. Apku viem startnut pri spusteni windowsu a schovat do tray, zatial co stranka v browsery sa moze stratit medzi desiatkami inych.

Doteraz to bezalo cez RDP desktop, ale kedze fyzicke PC pripojene k linke nie je server tak len jeden user v sieti mohol pozerat a potrebujeme to zobrazovat cca na troch PC.

Som zvedavy na vase nazory.

Offline Jan Fiala

  • Hrdina
  • ****
  • Příspěvků: 448
  • Karma: 6
    • Verze Delphi: 10.4.1
    • PSPad editor
Re:mala vizualizacka na 3 PC
« Odpověď #1 kdy: 05-01-2023, 08:53:05 »
Ty v podstate potrebujes jen server, který bude poskytovat data klientum, kteri to zobrazi.
Kdyz to udelas pres HTTP server, nebudes muset resit klienty (jakykoliv PC s prohlizecem), ale bude to slozitejsi na vyrobeni
Kdyz to udelas jen tak, ze server poskytne data, ktere si klient zpracuje, tak pouzijes reseni, ktere uz mas, jen je doplnis o komunikaci se serverem.

Offline ejan

  • Nováček
  • *
  • Příspěvků: 2
  • Karma: 0
    • Verze Delphi: delphi xe
Re:mala vizualizacka na 3 PC
« Odpověď #2 kdy: 05-01-2023, 09:51:34 »
Podle mě je nejjednodušší použít standartní SCADA aplikaci na zobrazení hodnot na několika PC. Pokud jde o pár hodnot , tak jsou komerční aplikace zdarma. Pokud jde o hodně hodnot a grafů je možné použít Free SCADA software jen se složitěji nastavují a nemají knihovny pro všechny PLC systémy. Musí se to obcházet přes MODBUS nebo OPC protokol.

Offline jirka52

  • Plnoletý
  • ***
  • Příspěvků: 171
  • Karma: 3
    • Verze Delphi: D2, D5, D6, D2005, D2006, D2009, DXE2,DXE7,D10.2, D11.2, D12.1, D12.2
Re:mala vizualizacka na 3 PC
« Odpověď #3 kdy: 05-01-2023, 11:50:10 »
Na více zařízení jednoznačně doporučuji OPC server "Kepware"
Zde:
https://eshop.foxon.cz/cs/25-opc-servery-kepserverex?gclid=CjwKCAiAh9qdBhAOEiwAvxIok_WVXzKuZTuksa-hJxtS9B0bMhWhaNhbB8wdnV3EXbOKPxKxK1vikxoC9lYQAvD_BwE

Ale to by pro tebe bylo drahé.
Na 3 zařízení ti stačí PLC připojit třeba arduinem, popř. Raspberry Pi a na to si napiš aplikaci v Lazarusu.
Data ukládej do tvojí databáze.
Data zobrazuj v Grafaně, nemusíš si pak psát klienta.
Grafana:
https://grafana.com/grafana/download

Offline Daniel_Andrascik

  • Guru
  • *****
  • Příspěvků: 583
  • Karma: 20
    • Verze Delphi: D2007, D10.4
Re:mala vizualizacka na 3 PC
« Odpověď #4 kdy: 05-01-2023, 14:30:09 »
Dakujem pani za reakcie a navrhy.

Miestami ale mam pocit ze ste nie celkom pochopili ze fyzicke pripojenie k PLCeckam ma len jeden pocitac a na nom chcem nechat bezat tu sluzbu. Pripadne ma este napadlo na tom pocitaci nainstalovat nejaku databazu a z ostatnych pc v sieti sa budem k tej db pripojovat.

Ta Grafana je celkom zaujimava, ale urcite sa chcem vyhnut akymkolvek cloudovym a internetovym sluzbam a comukolvek co treba udrziavat. O 5 rokov sa zmeni api rozhranie alebo licencna politika a ja na to nechcem reagovat. Chem to mat ako doteraz.

To PC pripojene k PLCeckam tam mam uz asi 17rokov. Do nejakeho roku cca 2010 som to pc este servisoval, aktualizoval atd. Od roku 2010 som s nim stratil kontakt. Dnes v roku 2023 ma zavolal zakaznik ze chce vidiet prevadzku vyrobnych liniek na 3 pocitacoch vo firemnej sieti. Uz som si na to PC ani moc nepamatal, neveril som ze este existuje  :o

A ajhla, pozerame do pocitaca u smenoveho majstra a on ma dole na taskbare otvorenu RDP relaciu. A sa ho pytam ze co to je, a on ze nevie lebo na to nikdy neklikol. Rozkliknem to a vidim moju apku pripojenu k PLCeckam fungujucu bez servisu 13rokov. Ten pocitac bezi stale na XPeckach a museli sme ho hladat, lebo sa podnik prerabal a nasli sme ho v serverovni pod stolom  ;D ;D ;D.

ITeckarom bolo povedane ze je to technologicky pocitac bez pristupu na internet ale musi stale ist a byt stale pripojeny na tieto komunikacne kable. No a oni ho udrziavali a nitko nevedel uz na co tam je len ja  ;D ;D ;D

A tak to chcem spravit aj teraz. Nieco nakodit a zabudnut na to na 15 rokov  8)

A delphi okene apky su na to priam skvele. Raz som v roku 2009 pre jednoho mojho znameho naprogramoval apku ktora citala hex subor, trosku ho pochrastila a po seriovke ho posielala do nejakych MCU a ktomu este tam bol nejaky prisposobeny terminal pre seriovku. Apku som odladoval este na win98 alebo winMe a ta apka dodnes bezi bez toho aby som o nej vedel. Prezila bez uprav prechod asi 6timi generaciami windowsov a pri tom aj prechod na NT jadro a prechod z 32bitov na 64bitov.

To nie ako dnes, ked nema clovek nainstalovanu spravnu verziu .Net alebo spravne c++ redistributable, nema spravny python alebo jre tak nespusti apku a podobne

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 3532
  • Karma: 112
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Re:mala vizualizacka na 3 PC
« Odpověď #5 kdy: 05-01-2023, 18:38:35 »
Cisto pure delphi riesenie si viem predstavit na jednom PC ktore je fyzicky pripojene k PLCeckam pobezi sluzba ktora bude tie data vycitavat a zaroven pomocou synapse tam nahodim TCP alebo UDP server/client. A potom spravim vizualneho klienta ktory bude spusteny na inych pocitacoch v sieti a bude tie denne data zobrazovat a citat cez TCP/UDP.


Tak to tak udelej, mala VCL aplikace, co bude komunikovat s tim tvoji serverem co to vycita a bude to vyzualizovat.

Osobne bych ten stavajici komunikacni server upravil aby to zapisoval treba do SQlite pro historii, a zaroven treba pres DMVC https://delphi.cz/post/Delphi-MVC-framework-1.aspx (je to primitivni, prace na jednotky hodin) stejny server poskytoval REST server. K nemu se bude tvoje VCL aplikace pripojovat pres http, ale kdyz na to dojde, tak ty data ziska kdokoliv kdo zavola ten REST.

Implementacne se to pak chova jako Indy Http server, jen pri startu jeste spustis navic to svoje komunikacni vlakno pro PLC.
Embarcadero MVP - Czech republic

Offline Daniel_Andrascik

  • Guru
  • *****
  • Příspěvků: 583
  • Karma: 20
    • Verze Delphi: D2007, D10.4
Re:mala vizualizacka na 3 PC
« Odpověď #6 kdy: 05-01-2023, 18:39:57 »
diky radku za navrh, prestudujem si to...

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 3532
  • Karma: 112
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Re:mala vizualizacka na 3 PC
« Odpověď #7 kdy: 05-01-2023, 18:41:04 »
Cisto pure delphi riesenie si viem predstavit na jednom PC ktore je fyzicky pripojene k PLCeckam pobezi sluzba ktora bude tie data vycitavat a zaroven pomocou synapse tam nahodim TCP alebo UDP server/client. A potom spravim vizualneho klienta ktory bude spusteny na inych pocitacoch v sieti a bude tie denne data zobrazovat a citat cez TCP/UDP.


Tak to tak udelej, mala VCL aplikace, co bude komunikovat s tim tvoji serverem co to vycita a bude to vyzualizovat.

Osobne bych ten stavajici komunikacni server upravil aby to zapisoval treba do SQlite pro historii, a zaroven treba pres DMVC https://delphi.cz/post/Delphi-MVC-framework-1.aspx (je to primitivni, prace na jednotky hodin) stejny server poskytoval REST server. K nemu se bude tvoje VCL aplikace pripojovat pres http, ale kdyz na to dojde, tak ty data ziska kdokoliv kdo zavola ten REST.

Implementacne se to pak chova jako Indy Http server, jen pri startu jeste spustis navic to svoje komunikacni vlakno pro PLC.


A kdyz se nekomu nebude libit tvoje VCL aplikace, tak si pres REST stahne data a visualizuje si je jak protrebuje.
Embarcadero MVP - Czech republic

Offline Daniel_Andrascik

  • Guru
  • *****
  • Příspěvků: 583
  • Karma: 20
    • Verze Delphi: D2007, D10.4
Re:mala vizualizacka na 3 PC
« Odpověď #8 kdy: 05-01-2023, 20:27:52 »
A kdyz se nekomu nebude libit tvoje VCL aplikace, tak si pres REST stahne data a visualizuje si je jak protrebuje.

Budem si musiet asi tu REST technologiu lepsie nastudovat  :o

Offline jirka52

  • Plnoletý
  • ***
  • Příspěvků: 171
  • Karma: 3
    • Verze Delphi: D2, D5, D6, D2005, D2006, D2009, DXE2,DXE7,D10.2, D11.2, D12.1, D12.2
Re:mala vizualizacka na 3 PC
« Odpověď #9 kdy: 06-01-2023, 11:51:24 »
Právě k vizualizaci dat pomocí REST je určená Grafana. Nainstaluješ si ji někde k sobě.
Ale jenom na 3 zařízení nemá smysl.

Offline Vladimir64

  • Nováček
  • *
  • Příspěvků: 37
  • Karma: 0
    • Verze Delphi: 10.2
Re:mala vizualizacka na 3 PC
« Odpověď #10 kdy: 17-01-2023, 23:18:21 »
řešil bych to přístupem na to staré PC přes vzdálenou plochu. Za minutu hotovo. Neukamenujte mě za to :-). Sleduji desítky zařízení ve výrobě přes vzdálenou plochu. Kdykoliv, odkudkoliv.

Offline Daniel_Andrascik

  • Guru
  • *****
  • Příspěvků: 583
  • Karma: 20
    • Verze Delphi: D2007, D10.4
Re:mala vizualizacka na 3 PC
« Odpověď #11 kdy: 20-01-2023, 11:28:18 »
doteraz sme to tak robili cez RDP, ale je mozne aby viacery pozerali cez vzdialenu plochu sucasne na jedno "nie serverovske" PC? Neviem o takom 🤷

Offline František

  • Guru
  • *****
  • Příspěvků: 916
  • Karma: 8
    • Verze Delphi: comunity 10.4.2, D2007, D12, D2009
Re:mala vizualizacka na 3 PC
« Odpověď #12 kdy: 20-01-2023, 16:29:12 »
ano, platena verzia Teamvieweru to umoznuje (info o pocte sucasnych kanalov), ale neviem ako su na tom alternativy

este ma napadla krkolomne, ale funkcne riesenie, skype  - konfernecia a zdielanie obrazovky
« Poslední změna: 20-01-2023, 16:30:53 od František »

Offline František

  • Guru
  • *****
  • Příspěvků: 916
  • Karma: 8
    • Verze Delphi: comunity 10.4.2, D2007, D12, D2009
Re:mala vizualizacka na 3 PC
« Odpověď #13 kdy: 20-01-2023, 16:33:16 »
vynatok z manualu TightVNC

Citace
2. Pripojenie klienta VNC k vzdialenému počítaču
Ak chcete pripojiť klienta VNC k vzdialenému počítaču, musíte zadať jeho IP adresu alebo názov DNS a zobraziť číslo (v predvolenom nastavení: 0) alebo číslo portu TCP (v predvolenom nastavení 5900). Ak server VNC vyžaduje autorizáciu, pri pripájaní k nemu klient VNC požiada o heslo. Upozorňujeme, že heslo na prístup k serveru VNC nie je spojené so žiadnym účtom ( účtu používateľovi). vzdialený počítač, ale slúži len na obmedzenie prístupu k displeju VNC servera.
Po nadviazaní spojenia a otvorení obrazovky môže byť v závislosti od nastavení servera VNC potrebné autorizovať používateľa na virtuálny server alebo sa môže otvoriť už spustená pracovná relácia niektorého používateľa.

Keďže na počítači môže súčasne bežať niekoľko VNC serverov, parameter sa používa na ich oddelenie. číslo displeja. Napríklad jeden server VNC môže bežať na displeji:0 a ďalší na displeji:1. Každé číslo zobrazenia zodpovedá číslu portu TCP, na ktorom server VNC prijíma pripojenia. Číslo portu pre displej sa získa pripočítaním čísla displej

takze teoretiky by to mohlo ist aj takto, ale neskusal som

Offline Vladimir64

  • Nováček
  • *
  • Příspěvků: 37
  • Karma: 0
    • Verze Delphi: 10.2
Re:mala vizualizacka na 3 PC
« Odpověď #14 kdy: 20-01-2023, 20:44:10 »
ano, jsou tam omezení. Je potřeba zvážit jak velká ta omezení jsou. Jak často je potřeba vizualizaci zobrazovat na všech třech PC současně? Podle mé zkušenosti (pokud to není atomová elektrárna s několika stupni ochrany) to bude zanedbatelné. Data z výroby většinou slouží k reportingu, nikoliv k přímému řízení procesu.

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 3532
  • Karma: 112
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Re:mala vizualizacka na 3 PC
« Odpověď #15 kdy: 20-01-2023, 20:53:01 »
ano, jsou tam omezení. Je potřeba zvážit jak velká ta omezení jsou. Jak často je potřeba vizualizaci zobrazovat na všech třech PC současně? Podle mé zkušenosti (pokud to není atomová elektrárna s několika stupni ochrany) to bude zanedbatelné. Data z výroby většinou slouží k reportingu, nikoliv k přímému řízení procesu.

Ano, neumím to udělat elegantně a aby to vydrželo pár let, použiji nějaký remote desktop a platím licence a modlím se at to vydrží.
Nebo přidám malý http server (třeba webbroker z Delphi, synapse) do své služby, obojí pár řádků a odpovídám na requesty s XML  (pár řádků).
Jsem otevřený a program mne přežije.
Embarcadero MVP - Czech republic

Offline Vladimir64

  • Nováček
  • *
  • Příspěvků: 37
  • Karma: 0
    • Verze Delphi: 10.2
Re:mala vizualizacka na 3 PC
« Odpověď #16 kdy: 20-01-2023, 21:56:59 »
každé řešení má své limity. Věděl jsem, že to bude přijato negativně. Proto jsem psal v předchozím příspěvku, aby jste mě za to neukamenovali. Takže jak píše 13 roků mu to tak běželo ani o tom nevěděl a teď najednou se má modlit aby to vydrželo. Kdybych měl tohle dělat na všechna zařízení ve výrobě které sleduji, od různých výrobců, na každém zařízení se sledují jiné výstupy, na zařízeních z různých let a tomu odpovídajícímu hardwaru a softwaru tak je prostě jednodušší se na jednotlivá zařízení připojovat přes RDP a přejímat vizualizace od výrobce.

Offline vandrovnik

  • Padawan
  • ******
  • Příspěvků: 1587
  • Karma: 52
    • Verze Delphi: 11.3
Re:mala vizualizacka na 3 PC
« Odpověď #17 kdy: 20-01-2023, 22:16:24 »
Excellent
Rated 1 time
TightVNC je zdarma a pro správu ho používám, ale na tyhle účely bych to viděl jen jako nouzovku (ze stanice na to vzdálené PC se kopíruje schránka - zpět teda asi taky, když je někam připojeno víc lidí najednou, chovají se občas zmateně shift, ctrl a alt apod., ne všechny klávesy s diakritikou fungují dobře, po stisknutí středníku se většinou zobrazí i kroužek...).

Offline Daniel_Andrascik

  • Guru
  • *****
  • Příspěvků: 583
  • Karma: 20
    • Verze Delphi: D2007, D10.4
Re:mala vizualizacka na 3 PC
« Odpověď #18 kdy: 21-01-2023, 13:40:39 »
TightVNC je zdarma a pro správu ho používám, ale na tyhle účely bych to viděl jen jako nouzovku (ze stanice na to vzdálené PC se kopíruje schránka - zpět teda asi taky, když je někam připojeno víc lidí najednou, chovají se občas zmateně shift, ctrl a alt apod., ne všechny klávesy s diakritikou fungují dobře, po stisknutí středníku se většinou zobrazí i kroužek...).

good point 👍

Urobim to ako radek navrhuje, bud HTTP Rest server + VCL klient, alebo rovno web server a prehliadac.