Vítej, Host. Prosím přihlaš se nebo se zaregistruj.
24.04.2026, 18:38:03

Domů Nápověda Vyhledávání Přihlásit Registrovat
 
Fórum k produktům firmy ELSACO Kolín  

+  PROMOS fórum
|-+  Poslední příspěvky
Stran: 1 ... 8 9 [10]

 91 
 kdy: 29.11.2013, 06:44:45 
Založil libor - Poslední příspěvek od libor
Máme projekt, ve kterém máme 4 moduly SDO readN (čteme hodnoty čítačů z CBO) a 5 modulů SDO write. Hodnoty z čítačů se občerstvují jednou za několik sekund. Kde by mohl být problém?



Dotaz zaslaný mailem (viz výzva).

 92 
 kdy: 29.11.2013, 05:51:18 
Založil Urbánek - Poslední příspěvek od libor
Dobrý den,
pokud nepomůže restart jednotky, tak odešel displej. To se bohužel u CCPU-21 stává. Proto bude CCPU-21 v příštím roce nahrazena novou jednotkou, která nebude mít displej resp. displej (jiná technologie výroby) bude možno dokoupit. Měl by to být displej, který půjde připojit ke všem novým jednotkám, tj. CCPU-34, CCPU-35, nový XCOM i nová CCPU-21.

Pokud nepomůže restart, tak, prosím, zašlete CCPU-21 na opravu. V případě, že by jste potřeboval zapůjčit jinou centrálu na dočasnou výměnu, tak mě, prosím, kontaktuje: L. Beneš, 321 727 753 doplňková volba 27 (nebo Vás přepojí).

 93 
 kdy: 28.11.2013, 14:20:14 
Založil Urbánek - Poslední příspěvek od Urbánek
Dobrý den.
Volal mi zákazník,že se mu rozházela písmena na displeji.CCPU-21 pracovalo asi dva roky bez problému.
V cem by mohla být chyba?
Děkuji a pozdravem Urbánek

 94 
 kdy: 22.11.2013, 16:43:34 
Založil petrm - Poslední příspěvek od petrm
Starter_CCPU34 (dále též označení startér) je program, jehož hlavním úkolem je spouštět fredovský projekt. Projekt z FREDa nestačí spustit jen jednou při startu centrály, ale je nutné zajistit jeho spuštění i po každé výměně projektu a pro jistotu i v případě jeho neočekávaného ukončení (pádu). Proto vzniknul tento "startovací program projektu".

Starter_CCPU34 je umístěn v adresáři /home a spouští se na pozadí ze skriptu /etc/rc.local při startu centrály. Je-li spuštěn bez parametrů, obsluhuje fredovský projekt /home/fred/LCPU. Je možné ho spustit i s parametrem, tento parametr je pak považován za kompletní umístění spustitelného programu a obsluhován (spouštěn) potom bude uvedený program.
Kód:
/home/Starter_CCPU34 "/adresar1/adresar2/program" &
Takto lze v centrále zajistit spouštění jiného programu, než je fredovský projekt, třeba unikátní uživatelské aplikace. Program bude spuštěn s právy uživatele "root"!
Vše, co se v následujícím textu bude týkat fredovského projektu LCPU, platí obdobně i pro uživatelskou aplikaci zadanou parametrem.

Činnost startéru je signalizována žlutě nepřetržitě svítící LED run a opakovaně zobrazovanou sekvencí IP-adresy a IP-masky nastavených na síťovém rozhraní eth0 centrály. Uvedené IP-údaje se zobrazují proto, že síťové spojení do centrály je prakticky jediné možné  a jedná se tedy o velmi důležité parametry centrály.
Zobrazovací sekvence začíná rozsvícením všech segmentů a LED displeje. Potom se postupně po částech zobrazuje IP-adresa a IP-maska. Uvažujeme-li IP-adresu a IP-masku ve tvaru "IPa.IPb.IPc.IPd" a "IMa.IMb.IMc.IMd", pak se budou na displeji postupně zobrazovat čísla IPa až IPd a IMa až IMd a ke každému bude vždy svítit odpovídající zelená LED, postupně zleva doprava.

Provozní stavy programu Starter_CCPU34
Starter_CCPU34 se může nacházet v jednom z následujících základních stavů:
  • Stav A - startér se pokouší spustit LCPU:
    Toto je výchozí stav, startér zkusí spustit LCPU a když se to nepovede, v pokusech o spuštění pokračuje opakovaně dál.
    Stav A je signalizován zhasnutými LED řady A.
    Tlačítkovou kombinací BREAK (popsána dále) lze přejít do provozního stavu C.
  • Stav B - startér čeká na novou verzi LCPU:
    Při vstupu do tohoto stavu si startér poznamená datum a čas vytvoření LCPU. Pak LCPU trvale sleduje a jakmile se objeví jeho novější verze, spustí ji (resp. přejde do stavu A). Tato metoda je využita i při běžném nahrávání nové verze LCPU z FREDa.
    Stav B je signalizován žlutou LED A0.
    Tlačítkem ENTER lze přejít do provozního stavu A (ihned spustit LCPU), kombinací BREAK do stavu C.
  • Stav C - startér čeká na pokyn obsluhy:
    V tomto stavu startér nic sám nespouští, pouze čeká na stisknutí tlačítka ENTER. Po stisknutí ENTERu přechází do stavu A.
    Stav C je signalizován červenou LED A4.

Podaří-li se spustit LCPU, Starter_CCPU34 se zastaví a přestane jakkoliv zasahovat do činnosti centrály. Řízení displeje a čtení ovládacích tlačítek by měl převzít LCPU. Teprve po ukončení běhu LCPU (z jakéhokoliv důvodu) začne opět pracovat Starter_CCPU34.

Činnost startéru po zastavení LCPU závisí na způsobu zastavení LCPU (na zastavení se může podílet modul CCPU-34 z FREDa):
  • Ukončení LCPU signálem SIGINT (klávesami CTRL+C z konzole) nebo tlačítkovou kombinací BREAK (musí zajistit fredovský modul CCPU-34, LCPU končí příkazem "exit (10)"):
    Starter_CCPU34 přechází do provozního stavu C.
  • Ukončení příkazem kill nebo killall (obojí s běžnou úrovní 15 = signál SIGTERM):
    Starter_CCPU34 přechází do provozního stavu B.
  • Ukončení LCPU příkazem "exit (11)" (to zajistí fredovský modul CCPU-34):
    Tento způsob je využíván při výpadku napájení (není to chyba v popisu, centrála je napájena z vnitřní baterie a regulérní ukončení tak zvládne). Starter_CCPU34 spustí skript /etc/Restart, který by měl zajistit veškeré nutné činnosti před vypnutím centrály (např. zkopírovat data z ramdisku na flash) a centrálu restartnout příkazem "reboot". Při ukončení činnosti OS se odpojí vnitřní baterie, takže pokud bude výpadek napájení trvat, centrála zůstane vypnutá až do obnovení napájení.
    Pokud ještě dojde k návratu ze skriptu Restart do startéru, Starter_CCPU34 se jen ukončí.
  • Nečekané ukončení a všechny další důvody ukončení LCPU:
    Starter_CCPU34 přejde do provozního stavu A.

Využití tlačítek
  • Kombinace BREAK (obě krajní tlačítka najednou):
    BREAK je mj. možné využít při startu centrály (spuštění Starter_CCPU34). Bude-li při spuštění startéru držen BREAK, startér nespustí automaticky LCPU. Tato funkce je užitečná v případě, kdy z jakéhokoliv důvodu nechceme po startu centrály LCPU spustit.
    Z BREAKu uvolňujte tlačítka v pořadí nejdřív ENTER, pak ESCAPE. Při jiném postupu by mohl být vyhodnocen samotný ENTER a byl by považován za pokyn ke spuštění LCPU.
    BREAKem je uveden startér do provozního stavu C (popsán výše).
  • Tlačítko ENTER:
    ENTER slouží k okamžitému spuštění LCPU.
    ENTERem je uveden startér do provozního stavu A.
  • Kombinace NOUZOVÁ_IP (šipky nahoru i dolů najednou, nutno držet nepřetržitě alespoň 7 vteřin):
    NOUZOVÁ_IP pomůže v případě chybného nastavení inicializačních souborů sítě, následkem kterého se nenastaví ethernetové rozhraní. Také pomůže v případě chybného nastavení firewallu, kterým se nechtěně zablokuje přístup do centrály.
    Funkce NOUZOVÁ_IP spustí příkazy "ifconfig eth0:99 192.168.222.29" a "ifconfig eth0 up" a nastaví tak defaultní IP-adresu 192.168.222.29 na síťový alias eth0:99, k centrále je pak možné se na tuto adresu připojit a nastavení sítě opravit.
    Dále NOUZOVÁ_IP spustí příkazy:
       "iptables -I INPUT -i eth0 -p tcp -d 192.168.222.29 --dport ssh -j ACCEPT"
       "iptables -I OUTPUT -o eth0 -p tcp -s 192.168.222.29 --sport ssh -j ACCEPT"
       "iptables -t nat -I PREROUTING -i eth0 -p tcp -d 192.168.222.29 --dport ssh -j ACCEPT"
       "iptables -t nat -I OUTPUT -o eth0 -p tcp -s 192.168.222.29 --sport ssh -j ACCEPT"
       "iptables -t nat -I POSTROUTING -o eth0 -p tcp -s 192.168.222.29 --sport ssh -j ACCEPT",
    kterými povolí průchod firewallem (paketovým filtrem) pro spojení ssh do centrály.
    Nakonec přenastaví port démona ssh na standardní hodnotu 22 (platí pro verze od 8.1.2016).
    Nastavení nouzové adresy je signalizováno zelenými LED: zatímco při zobrazování normální IP-adresy se postupně rozsvěcují a klidně svítí, při zobrazování nouzové adresy blikají. Nastavení nouzového přístupu je jen dočasné - do restartu centrály.
  • Kombinace TEST (dvě pravá tlačítka, ENTER a šipka nahoru; ve FW od verze 04.10.2017): slouží pro spuštění servisního testovacího programu /home/TesterCOM. TesterCOM je řízen testovacím programem v PC, bez něj nemá význam. TesterCOM je spuštěn buď při aktivní kombinaci TEST při spuštění startéru, nebo po aktivaci kombinace TEST a následném stisknutí tlačítka ENTER.
    TEST si upraví síťové nastavení centrály stejným způsobem, jako kombinace NOUZOVÁ_IP, použije při tom ale IP-adresu 192.168.221.222.

Vypnutí centrály
Vypnutí centrály obvykle vyvolá LCPU tím, že se ukončí s kódem 11 ("exit (11)"). Další postup programu Starter_CCPU34 je už popsán výše.
Když LCPU není z jakéhokoliv důvodu spuštěn a dojde k výpadku napájení, Starter_CCPU34 spustí vypínací proces sám.

Informační LED na spodní desce centrály
Při zapnutí napájení centrály (spuštění centrály) se ihned rozsvítí obě LED - zelená i červená - a zůstanou svítit až do spuštění Starteru_CCPU34.
Starter_CCPU34 během svého provozu udržuje zelenou LED svítící a červenou LED zhasnutou. Tento stav změní jen při zahájení vypínacího procesu - zhasne zelenou LED a rozsvítí červenou LED.
V průběhu činnosti LCPU ovládá obě LED sám LCPU.

 95 
 kdy: 04.11.2013, 06:20:09 
Založil admin - Poslední příspěvek od admin
Fórum aktualizováno na verzi SMF 1.1.19.

 96 
 kdy: 27.09.2013, 10:43:07 
Založil libor - Poslední příspěvek od libor
Vytvoření a zrušení objektu epsnet, tj. vytvoření:

Kód:
epsnet := CreateOLEObject('Elsaco.Driver.Epsnet.2') As IEpsnet;

a zrušení:

Kód:
epsnet := nil;

někde v inicializaci a deinicializaci aplikace by fungovat mělo. No a pak ta data. Získáváte je:

Kód:
data := epsnet.Read(2, 0, 8);

což ve výsledku znamená, že funkce Read alokuje paměť (SafeArray) pro výsledný blok dat. Po zpracování těchto dat by jste je měl z paměti uvolnit, tj. v Delphi by mělo stačit:

Kód:
data := nil;

což je napsáno v nápovědě v poznámce, ale není to uvedeno v příkladech, takže to tam doplním.

 97 
 kdy: 27.09.2013, 10:40:22 
Založil libor - Poslední příspěvek od libor
Využívám na systému PL2, komunikační protokol Epsnet (IEpsnet). Řídící program je napsán v Delphi7 a celé zařízení je řízeno z hlavního PC. Jelikož však komunikační linka je používána ještě dalším zařízením s jiným komunikačním protokolem, tak linku po odečtení uvolňuji, přičemž mi vzniká problém s vícenásobným alokováním paměti.

Nedaří se mi uvolnit paměť. Prosím o radu jak paměť uvolnit. Přikládám výňatek z kódu:
Kód:
procedure TForm1.odmer;
var data : Variant;


begin
  epsnet := CreateOLEObject('Elsaco.Driver.Epsnet.2') As IEpsnet;
  epsnet.SetConnection(Edit3.Text);
  epsnet.SetCurrentStationAddress(StrToInt(Edit4.Text));

  // nacteni dat
  data := epsnet.Read(2, 0, 8);

  // zpracování dat

  // konec zpracování dat

  epsnet.Close();
  epsnet := nil;
end;

Zkusil jsem problém vyřešit přesunutím aktivace epsnetu do spouštěcí části kódu a jeho vymazání (nil) přesunutím do ukončovací části. Výsledkem bylo zacyklení ladiče a tuhnutí celé aplikace. Toto je verze, která funguje z uvedeného nejlépe, ale s každým dotazem zabere další část operační paměti.



Dotaz zaslaný mailem (viz výzva).

 98 
 kdy: 12.08.2013, 07:27:29 
Založil libor - Poslední příspěvek od libor
XCOMy propojit přes TCP nelze, protože XCOM neumí vytvořit aktivně TCP spojení.

Lze však použít protokol UDP. Stačí jednoduchý projekt s modulem Com2UDP, který se nahraje do obou XCOMů. Řekněme že jeden XCOM má IP adresu 192.168.222.159 a chceme na ně použít linku RS-485 (COM1). Druhý XCOM bude mít IP adresu 192.168.222.160 a využívat budeme linku RS-232.

Konfigurace modulu Com2UDP bude pro první XCOM s IP 192.168.222.159 vypadat následovně (viz přiložený obrázek XCOM159.png):

ComNr = 1 (simplexní režim)
IP = 192.168.222.160
port = 4000


Konfigurace modulu Com2UDP bude pro první XCOM s IP 192.168.222.160 vypadat následovně (viz přiložený obrázek XCOM160.png):

ComNr = 0
IP = 192.168.222.159
port = 4000



Číslo portu, na kterém XCOMy poslouchají a na který posílají UDP pakety může být jiný, ale musí vždy odpovídat protistraně (když jeden XCOM bude pslouchat na portu 1234, tak druhý XCOM musí svoje pakety posílat na tento port).

Rychlost komunikace a parita mohou být na každé straně různé (musí tomu odpovídat i nastavení StartStopTout, tj. nastavení meziznakové mezery).



(připojené soubory vidí pouze registrovaní uživatelé)

 99 
 kdy: 12.08.2013, 07:26:51 
Založil libor - Poslední příspěvek od libor
Máme 2 XCOMy. Na jednom linku RS-485 a na druhé linku RS-232 a chtěli bychom je propojit přes Wifi (TCP). Jak na to?


Dotaz zaslaný mailem (viz výzva).

 100 
 kdy: 23.07.2013, 13:17:03 
Založil libor - Poslední příspěvek od libor
Pokud máte CCPU-02 s FLASH o velikosti 256kB, tak ji lze programovat FREDem, protože instalace obsahuje podporu pro platformu PL2 (256kB). Pokud nemáte zkušenosti s programování našich jednotek, tak nabízíme školení jehož součástí je i získání ročního klíče pro FREDa na vyzkoušení programování našich jednotek.

Verze FW 3.000 a vyšší stejně do takové centrály nemůžete nahrát.

Jinak CCPU-02 s 256kB je samozřejmě pořád funkční centrála a není nutné ji vyhazovat. Případně provádíme upgrade, kdy se mění velikost FLASH (a případně RAM), takže se z toho udělá velká centrála. Tento upgrade je vhodný také z toho důvodu, že CCPU-02 může (podle jejího stáří) mít již vyschlé elektrolytické kondenzátory a pak by analogové vstupy měřily špatně.

Stran: 1 ... 8 9 [10]


Poháněno MySQL Poháněno PHP Powered by SMF 1.1.21 | SMF © 2011, Simple Machines Validní XHTML 1.0! Validní CSS!