Sekvenční vychystávání
From PlcWiki
Zatím pouze surový záznam chatu, když jsme s Honzou řešili problém se sekvencí na sekvenčním vychystávání:
… na vra4 je speciální pracoviště na sekvenční vychystávání, které je mimo objekt SAS ve Vrchlabí. cca 500m daleko. Tam běží tzv. "sekvenční kernel" a k němu je připojena jedna klientská stanice se sekvenčním klientem. Všechno běší na jednom počítači - seqvr. Na obrazovce je screen toho sekv. klienta. Je to jiná aplikace, než normální kliet, proto tam není vidět žádná sekvence. [19:46:43] Petr Zalabák: ten sekvenční klient komunikuje se sekvenčním kernelem, který mu poskytuje informace co se má vychystávat. [19:48:39] Petr Zalabák: dataflow je následující. Kernel na lince dostane data, zapíše si je do výrobní sekvence (jako všude jinde) a navíc je (přijmutá originální data) odplivne do souboru, který je následně modulem plc_seq_sender odeslán sekvenčnímu kernelu. [19:49:22] Petr Zalabák: ten data přijme a rozdělí jednotlivé díly do palet pro definovaná pracoviště. [19:50:52] Petr Zalabák: paleta pro každé pracoviště má definováno, kolik se na ni vejde kusů. to kernel ví a počítá, kolik dílů (kokpitů) již na paletu dal. Když ji naplní, založí novou paletu s novým číslem a začne ji zaplňovat. [19:51:22] Petr Zalabák: pro každé pracoviště je ten poček kusů na paletě různý. [19:54:21] Petr Zalabák: pracovník na obrazovce vidí, které palety jsou v jakém stavu. Protože je palet víc, než 6, jak jsou políčka na obrazovce, tak se obrazovky automaticky střídají, jako třeba odlety letadel na letišti. [19:55:03] Petr Zalabák: co okýnko na obrazovce, to pracoviště, pro které se má vychystávat. [19:56:04] Petr Zalabák: např. KO - kombi - je tam paleta 7416 - ta je již na lince, atd. [20:00:58] Petr Zalabák: pracovník se sám rozhodne, pro které pracoviště bude vychystávat. Např. chce vychystávat pro pracoviště KO. Má svoje čárové kódy pro sekvenční vychystávání, tak naskenuje kód, který klientovi řekne, že potřebuje vychystávat KO a ten mu vytiskne tzv. paletovou průvodku, na které je číslo palety a seznam dílů, které ma na ni narovnat (v určeném úpřadí). Tím se paleta označí, jako "připravuje se". Když ji celou narovná, vezme tu paletovou průvodku a naskenuje její barkód. tím se paleta přepne do stavu "připravena" a můžou ji odvézt na linku. [20:02:24] Petr Zalabák: když ji načtou na lince, označí se jako "na lince", když z ní vezmou poslední díl, zmizí úplně. [20:02:52] Petr Zalabák: veškeré údaje o paletách poskytuje sekvenční kernel [20:03:40] Petr Zalabák: jak klientovi pro sekvenční vychystávání, tak klientům na lince, které sekvenčnímu kernelu oznamují, že odebrali díl z palety. [20:05:14] Petr Zalabák: takže ty data jsou v souborech pallet.dat - hlavičkové rekordy jednotlivých palet a equence.dat, kde je seznam dílů a jejich rozmístění na paletách. [20:06:41] Petr Zalabák: jak přicházejí data od normaálního kernelu, tak je sekvenční kernel zapisuje do těchto souborů [20:07:19] Petr Zalabák: jak je klienti odebírají, tak je (po paletách) sekvenční kernel zase z těchto souborů maže. [20:09:09] Petr Zalabák: pro nějaký reset sekvence nemá sekvenční kernel žádné nástroje, všechno se musí editovat ručně. [20:09:25] Petr Zalabák: co je potřeba přesně udělat? [20:11:23] jan_vejvoda: od seq čísla 616 tam byly špatný kokpity, vymazal jsem je, ale asi bude potřeba ještě něco udělat s pallet.dat ale jeho struktura mi nic neříká ... [20:13:02] Petr Zalabák: první řádek pro tento kokpit v souboru sequence.dat je tento: 06483333 BV03 BV03-1J1614105AM PS PALPS3878 1 #0616 [20:13:44] Petr Zalabák: ten říká, že díl BV03-1J1614105AM pro pracoviště PS je na paletě PALPS3878. [20:14:30] Petr Zalabák: v souboru pallet.dat je pro tuto paletu řádek: PALPS3878 13:47:46 13:48:35 20:09:53 04 0032 [20:15:21] jan_vejvoda: tak že ho taky promažu ....? [20:15:21] Petr Zalabák: ten říká, že paleta je ve stavu "04" a je na ní ještě 32 neodebraných dílů. jdu se podívat, co je stav 04 [20:15:31] Petr Zalabák: pozor [20:16:03] Petr Zalabák: pokud je na paletě ještě nějaký jiný díl (pro jiný kokpit), tak se vymazat nesmí [20:16:41] Petr Zalabák: tzn. dá se číslo palety vygrepovat z sequence.dat a to nám řekne, které kokpity na paletě mají díly [20:17:25] Petr Zalabák: v těch datech se ručně strašně špatně maže. [20:18:01] Petr Zalabák: skoro by bylo nejlepší zjistit, od kterého kokpitu nemají vychystáno, potom oba soubory snulovat a poslat tam data znovu. [20:19:05] Petr Zalabák: problém bývá v tom, že pro různá pracoviště mají první nevychystaný kokpit různý, protože na paletách nejsou stejné nebo nesoudělné počty, kolik se na ně vejde. [20:19:28] Petr Zalabák: ale s tím si většinou poradí. [20:23:48] Petr Zalabák: pokud bychom to chtěli nastavit třeba na ten kokpit 616, tak je potřeba se podívat do souboru sequence dat, na kterých paletách má díly, zastavit posílání dat, stopnout sekvenční kernel, vymazat z pallet.dat tyto palety a všechy palety s vyššími čísly, vymazat tento kokpit a všechny další ze souboru sequence.dat, unstopnout sekvenční kernel a pustit data znovu od kokpitu 616 [20:24:07] Petr Zalabák: je to dost složité. [20:25:06] Petr Zalabák: troufneš si na to? [20:25:14] jan_vejvoda: navíc mohu zopakovat problém kterej se řešil na začátku - poslat staré kokpity ... [20:25:42] jan_vejvoda: kde je historie? [20:29:01] Petr Zalabák: historie není :-) posílání dat je tady trochu odlišné. [20:30:54] Petr Zalabák: data dostáváme v boleslavi na lince mba5, na počítači gwskmb protokolem p-mon rovnou ze Škodovky. Všechny procesy, které jsou potom dál pro transport na kernel do vr a dále na sekvenční kernel, data pouze předávají, žádnou historii neukládají. [20:31:42] Petr Zalabák: jediná možnost je říct našemu p-mon serveru na gwskmb, od kterého kokpitu chceme přenos zopakovat. [20:31:58] jan_vejvoda: :) [20:32:27] Petr Zalabák: tu datovou stránku bych mohl udělat, ale potřeboval bych pročistit ty soubory. [20:33:24] jan_vejvoda: ok, stopnu dq2dirq, nebo jak se to tu jmenuje, taky kernel a jdu čistit, OK? [20:34:49] Petr Zalabák: zjisti od nich, od kterého kokpitu je potřeba to vyčistit [20:35:02] Petr Zalabák: já to potom stopnu [20:35:49] Petr Zalabák: teoreticky stačí, když budeš vědět od kterého kokpitu čistit, potom si zastavíš sekvenční kernel a začneš čistit [20:42:02] jan_vejvoda: Chyška říkal, že jsou tam dvě sekvence, série a Indie, je prý potřeba na to dát pozor [20:42:59] jan_vejvoda: jinak je možno vymazat vše za #0616 [20:44:04] Petr Zalabák: já se podívám, jak je to s tou Indií [20:44:36] jan_vejvoda: stopuju kernel, OK? [20:44:45] Petr Zalabák: moment ještě [20:44:50] jan_vejvoda: ok [20:44:57] jan_vejvoda: |-) [21:24:57] Petr Zalabák: jsi tam? [21:25:18] jan_vejvoda: ano [21:25:33] Petr Zalabák: nebyl jsi na Skype online, tak jsem psal na psi