Peťan SW Mosaic 12. 1. 2022 16:27 28. 5. 2023 19:37

Několik nalezených chyb jsem již psal na fórum Elektrika.cz, ale sem to bude lepší:

#1
Pokud vytvořím POU s nějakým názvem a tu následně smažu (třeba kvůli tomu, že jsem zvolil spatný jazyk),  tak již nelze vytvořit POU se stejným názvem. Původní soubor zůstane zachován.

#2
Pokud vytvořím proměnnou (zkoušel jsem to u globální proměnné) nějakého typu (omylem jsem zadal "TProg1 ") a poté ji přejmenuji na "_TimeProg1_Wee k_",   tak se proměnná stále tváří jako typ "TProg". A i když je v definici správně, překladači se to nelíbí.

#3
Pokud programuji třeba v CFC, kliknu na nějaký blok a stisknu F1, tak se zobrazí nápověda k tomuto bloku. Pokud si ale otevřu editor rozhraní a označím si tam nějakou proměnnou (třeba při přidávání, kopírování atd.) a pak se přepnu zpět do programování, kliknu na nějaký blok a stisknu F1, tak se už nezobrazí nápověda k bloku, ale s největší pravděpodobností kapitola "1.1 Úvod". V nápovědě to totiž hledá mnou původně označený text.

#4
V "IO konfigurátoru" na kartě "Procesní data" je tabulka která má záhlaví (názvy sloupců). Pokud sjedu dolu, tak záhlaví zmizí a nevím co jednotlivé sloupce znamenají. Když potáhnu posuvník myší nahoru, tak se zobrazí záhlaví. Ale pokud v tabulce přejíždím kolečkem myši, tak se zobrazí pouze nejhornější buňky tabulky, ale záhlaví s popisem sloupců už ne.

#5
Pokud spustím Mosaic bez HW klíče a teprve potom ho připojím, program stále hlásí chybu ve stylu "příliš mnoho definic module" (chová se, jako kdyby nebyl HW klíč použitý). Dále by bylo vhodné při nepřipojením HW klíčí a "příliš mnoho definicích..." zobrazit hlášku "Použijte HW klíč pro plnou funkčnost". Nebo něco v tom stylu.

Odpovědi 12

Luboš Urban 15. 2. 2022 15:17

Omlouvám se za pozdní reakci, ale aspoň k některým dotazům se vyjádřím. Ke zbývajícím se ještě vrátím později.

#1

Mosaic nikdy nemaže soubory na disku, je to tak zamýšleno. Uživatel je tedy musí smazat sám přes souborový manažer. Při smazání POU v Mosaicu dojde k odebrání příslušného souboru z hlavičkového souboru, fyzicky ale soubor na disku zůstane. Při založení POU se stejným jménem pak Mosaic hlásí, že jméno už existuje. Uznávám, že je to takové nepohodlné.

#2

Tady si nejsem úplně jistý, jak máte tu proměnnou v programu použitou. Pokud v deklaraci změníte datový typ proměnné, tak na to překladač ihned reaguje. Tam nevidím důvod, proč by to nemělo fungovat. Ale předpokládám, že vám překladač hlásí chybu v té výkonné části kódu, nikoli v deklarační části. Potřeboval bych tedy vidět, na kterém místě se překladač zastavil a jakou hlásil chybu, abych ji mohl objasnit.

#3 a #4

Tohle je naopak přesný popis. Proberu ve vývoji SW, co s tím.

#5

Detekce klíče se provádí jen při spuštění Mosaicu, takže je kvůli tomu potřeba restartovat Mosaic. Co se týká té hlášky, takto ji publikuje původní konfigurátor hardwaru (konfigurace HW přes projektový manažer). Ten už se dneska nerozvíjí a do jeho kódu už se nezasahuje, tedy ani nepředpokládám, že bychom znění upravovali. Ale v tom novém IO Configuratoru, který se teď používá pro konfiguraci systému Foxtrot ve většině nových projektů, tak tam už je formulace srozumitelnější a ukazuje na nutnost pořízení licence, ať už softwarové do PLC nebo té hardwarové na USB klíči.

Peťan 15. 2. 2022 22:19

Díky za odpovědi

#1 Ano, přijde mi to trochu nešikovné. Nemyslím si, že je dobré přistupovat k souborům projektu takto "ručně".

#2 Ještě to zkusím nasimulovat a kdyžtak dám dodatečný feedback. Každopádně jsem použil proměnnou, která je v tomto kontextu úplně špatně a překladač se s tím nějak nepopasoval. Stává se mi dost často, že překladač hlásí nějakou chybu a třeba při druhém překladu už je vše OK.

#3 Tato chyba se Vám stala ve videu youtu.be/rLRotUuVEXg?t=1801 není to sice ve videu vidět, ale myslím, že to v nápovědě hledalo text "puls" místo "TP"

#4 ok :)

#5 Na druhou stranu, je to výhoda, že není tedy potřeba mít HW klíč po celou dobu práce v počítači (ale nezkoušel jsem to). U mašiny hrozí, že dojde k "uražení" klíče z USBčka. Toto má Siemens řešené trochu lépe. Klíč je přenesen v počítači a není potřeba "flešku" používat.

 

Ještě doplním nějaké další body...

#6
V dialogovém okně "Přidat POU" by mohlo být tlačítko "Nápověda",  které by otevřelo nápovědu k aktuálnímu vybranému bloku. Ano, sice tam je to malé okýnko s popisem, ale plnohodnotná nápověda by mohla být nalinkovaná...

#7
Úplně mi chybí blok -[S] a -[R] ze Step7 (pro jazyk FBD, LAD a CFC). Tyto bloky nastaví, nebo resetují zvolenou proměnnou při svém aktivním vstupu. Lze tedy kdekoliv v programu změnit hodnotu proměnné - supluje to klopný obvod RS, ale není nutné mít před ním funkci OR. Nebo jsem tyto funkce nenašel? Ani si nedokážu představit, jak bych některé věci jednoduše řešil bez použití těchto funkcí. Pokud program zpracovávám "sekvenčně", tak mi snad ani nic jiného nezbývá - viz zde: https://www.mylms.cz/sekvencni-krokove-rizeni-plc-simatic-ve-step7/

#8
Lze v CFC negovat třeba vstup ANDu (ale samozřejmě i jiných bloků) stejně jako v FBD? Tedy bez nutnosti vkládat samotný blok "NOT",  ale pouze poklikáním na vstupní "signál"? Že by se tam ukázalo takové to negovací kolečko?

#9
Při najetí na blok (funkce, časovač atd.) by se mohla "bublina" ukazovat víceřádková. Když se chci kouknout na hodnoty, tak je to krajně nepřehledné. Zvláště pokud má funkce více proměnných. Ideální by bylo něco jako ve Visual studiu - možnost zobrazení "inline" okna/tabulky s proměnnými během debugingu. 

#10 To okno s deklaracemi proměnných (třeba i "Editor rozhraní") by místo prostého textu mohl být tabulka. Někdy je docela oříšek se v tom vyznat. Přitom je tam vždy typ (in/out/temp...), název, proměnná, hodnota, komentář. Celkově mi Mosaic přijde zbytečně moc textový. Neříkám, že je to vždy problém, ale když si třeba rozkliknu seznam globálních proměnných, tak by se mi daleko lépe orientovalo v tabulce, než stromové struktuře. A po rozkliknutí na textový výpis by mohla být spíše ta tabulka.

 

Kulhana 8. 3. 2022 20:57

Dobrý den, s dovolením bych také dodal bod, který je, myslím, bugem a nikoliv vlastností. 

#11 Po přidání obrázku do Správce obrázků (např. gate_opened_48.png) už nikdy tento obrázek nejde "přehrát" jiným, který by měl stejné jméno. A to ani po vymazání ze správce. Zkoušel jsem i textově prohledávat soubory projektu, ale nic. Musím jméno změnit a teprve poté je obrázek vzat na milost. Protože ikony často vylepšuji na několikrát, tak to práci celkem komplikuje.

Peťan 22. 4. 2022 23:06

Tu #11 mi to taky dělá...

#12 Pokud ve WebMakeru zkopíruji třeba delší text (nebo jakýkoliv jiný prvek) a vložím ho jakoby za levou, nebo horní hranu obrazovky, objekt se vloží zarovnaně s krajem. Tedy logicky se souřadnicí X=0, nebo Y=0. Ale ve skutečnosti je nastavená pozice třeba -60...

#13 Existuje nějaký elegantní způsob, jak po upravení rozhraní POU (třeba přidám vstupní/výstupní proměnnou) upravit jeho instanční proměnnou? Po úpravě se třeba v prgMain zobrazí červeně - nedá se to nějakým "jednoduchým dvoukliknutím" jednoduše aktualizovat?

#14 WebMaker - Rozhodně nic nemám proti standardnímu Windows color dialogu. Ale když už se jedná o webové rozhraní, bylo by dobré implementovat dialog, který umožňuje zobrazit barvu v HTML formátu, tedy třeba #ff00ff

#15 V editoru rozhraní nefunguje klávesová kombinace "Shift" + "Tab". Jinde to funguje... Ale stejně se přimlouvám spíše za tu tabulku, než textovou reprezentaci ;)

Peťan 7. 8. 2022 21:57

#16 Ještě jsem nepřišel v přesně jakých situacích to dělá, ale když v programu ST napíši neexistující proměnnou, tak to někdy vyvolá chybu "Neznámý symbol", a někdy "...v předchozím výrazu chybí ";""

#17 V programech v ST by mohly být jednotlivé větvící funkce apod. vizuálně spojeny. Nevím, jak přesně to vysvětlit, viz obrázek jako náhled. Člověk se pak lépe orientuje v programu a je možné nepoužívané/odladěné části kódu skrýt. Chápu, že tohle není na dvě kliknutí myší ;)

Peťan 8. 8. 2022 20:18

#18 Při najetí na proměnnou se zobrazí kontextové okno - typ a komentář k proměnné. Bylo by dobré doplnit ještě kontext. Nevím, jestli je proměnná lokální (VAR_IN, OUT, ...), nebo globální (PUBLIC, RETAIN, ...), nebo se jedná o systémovou proměnnou vstupu/výstupu

#19 Teď, když mi to při přehrání programu již po několikáté rozhodilo uložené hodnoty v proměnných, ještě více bych ocenil, kdyby proměnné byly zadány v tabulce  a byl tam zobrazen název proměnné, typ, defaultní hodnota, komentář a v případě ladění i aktuální hodnota proměnné. Tento seznam by šel uložit třeba jako soubor CSV. Otázkou je, jestli řešit nějakým způsobem import...

** Možná některé věci jsou již implementovány a já o tom jednoduše nevím, protože jsem tak nějak v Mosaicu začátečník. Jen si tak šmrdlám ty moje tři, čtyři programy. Jestli to tu někdo čte, tak mi dejte vědět, jestli to má smysl, nebo ať přestanu ;)

Peťan 8. 8. 2022 20:29

#20 Ještě co se seznamů týče, v okně data je tabulka (super :)), do které lze přidávat proměnné tlačítkem "Přidat položku (INS)". Pokud vím z hlavy název proměnné, nebo ji mám ve schránce, je zbytečné a těžkopádné přidávat položku přes okno, ale šel by použít poslední řádek tabulky, který je stejně volný a umožnit uživateli do něj vepsat název proměnné rovnou. Stejně tak editovat položku přímým přepsáním v řádku. 
PS.: Je to taková drobnost, ale ještě by se mohl zobrazovat sloupec s komentářem, pokud proměnná nějaký má.

** Abych jenom nerejpal, tak ten WebMaker je super. Je to něco, kvůli čemu jsem se rozhodl zkusit Tecomat. Sice má taky pár much, ale styl all-in-one se mi líbí.

Peťan 16. 8. 2022 16:48

#21 V GraphMakeru chybí u jedné ikony ToolTipText. Je to ta ikona se zámečkem a šipkou nahoru/dolu. Dále tato funkce chybí v tom menu vlevo (tam mimochodem taky chybí ToolTipText, ale otázkou je, zda-li by tam měl nějaký smysl).

Peťan 16. 8. 2022 19:35

#22 Docela by mě zajímala češtinářská správnost slov "návěští" a "tabelátor". V běžném jazyce většinou člověk říká "návěstí" a "tabulátor" a i třeba Wikipedie říká, že správně (i v kontextu programování) je druhá varianta.

Peťan 3. 12. 2022 18:18

#23 Překladač Mosaicu si typicky neporadí s chybami ve stylu přejmenování proměnné. Když přejmenuji proměnnou v deklaraci a zapomenu ji přepsat i v programu, napíše to někdy "Neznámý symbol" (ok, chápu že to znamená že proměnná není deklarovaná), a někdy "Nepovolený typ operandu, nebo parametru" (ne, nemám nový název deklarovaný jako jiný typ).

Ale někdy se stane, že to vygeneruje ještě jiné chyby jako "vícenásobné přidělení proměnné", nebo takové ty chyby ve stylu chybějícího středníku.

Přitom vyhledání nedeklarovaných proměnných v celém programu na jeden zátah mi připadá jako celkem triviální úkol. A to by šlo i realtime bez nutnosti překladu.

Peťan 3. 12. 2022 21:22

#24 Další drobná chybka v ToolTip textu :)

 

Dušan Ferbas 28. 5. 2023 19:37

Dobrý den,

ad #5 Mám projekt s novým konfigurátorem, ale ještě na CP-1003, HW klíč mám v práci, a také mi to hlásí 
Prříliš mnoho definic '#module'.
Ještě, že jsem Googlil, protože by mě to jinak nenapadlo, že to je způsobeno chybějící licencí.

Vaše odpověď

Pro vložení odpovědi je nezbytné být přihlášený. Pokračujte na přihlášení.