Programování AMiT

Kde najít záložní soubor DetStudia

Občas se bohužel stane, že něco nezafunguje jak má, a dojde k "sesypání" DetStudia. Pokud byla před tím prováděna generace, měl by být k dohledání záložní soubor aplikace v souboru TEMP.DSO v adresáři "C:\Documents and Settings\NNNN\Local Settings\Temp", kde NNNN je konkrétní uživatel.

Celý článek

Obrácení pořadí bytů pro komunikaci

Tuto operaci je třeba provést např. při komunikaci s vizualizací InTouch, popř. jinou, která u MODBUSU nepodporuje formát swapet-long / swapet-float. Obrácení pořadí bytů se pak provede takhle nějak (v případě proměnných LONG; nutno ověřit funkci!):

Let LONG = ((SwLONG & 0x0000FFFF) << 16) | (SwLONG >> 16)

Pro float je to trochu složitější, kód pro matici jsem vytvořil takto:

For iter01, 0.000, 10.000, 1.000
    Let CH_COM  SwFLOATs[iter01,0]
    StrFormat CH_COM_O, 0, NONE, "", 6, -1, -1, -1CH_COM, NONE.0
    Let FLOATs[2*iter01,0] = CH_COM_O[0,0]|(CH_COM_O[0,1]<<8)
    Let FLOATs[2*iter01+1,0] = CH_COM_O[0,2]|(CH_COM_O[0,3]<<8)
EndFor

Celý článek

Náměty k naprogramování ŘS TR

V tomto článku si budu poznamenávat, co by bylo vhodné do programu regulačního systému doplnit, aby mi to nenávratně nevypadlo z paměti:

  • provozní hodiny (doděláno, neodzkoušeno)
  • časování servisních intervalů na základě PH a počtu startů s upozorněním na LCD
  • archivace s uložením časového úseku před odstavením
Celý článek

Převodové poměry TR320 a TR560

V tabulce níže jsou parametry převodovek sohledem na nastavení měřidel otáček. Parametr 30/PP se zadává do otáčkoměru OrbitMerret, 16/PP do ŘS AMiT. IM21 se nastavuje pro přímé měření.

Převodovky: 

Otáčky zubů PP 30/PP 16/PP
13000/3000 161/37 4,351351 6,89440 3,6770
15000/3000 161/32 5,03125 5,96273 3,18012
16000/3000 ? ? 5,65217 3,0145
17000/3000 164/29 5,65517 5,30488 2,82926
19000/3000 171/27 6,33333 4,73684 2,52632
TR 560
9000/1500 268/44 6,090909 4,92537 2,62687
11000/1500 268/36 7,444444 4,02985 2,14925
13000/1500 268/31 8,645161 3,47015 1,85075
15000/1500 ? ? ? ?
Celý článek

Sloučení dvou INT proměnných do jedné LONG

Při programování ŘS turbíny jsem narazil na potřebu převést dvě proměnné typu INT do jedné LONG (proměnné jsem používal pro stavy alarmů - tj. jako jednotlivé bity). Podpora AMiTu mi poradila následující:

Let LONG = (INT1 & 0x0000FFFF) | ((INT2 & 0x0000FFFF) << 16)

Celý článek

Bitové operace

Pro bitové operace v reléových schématech DetStudia (PSE) nejsou k dispozici moduly. Je ale možné tyto operace provést pomocí následujících propojení spojovacích čar a invertorů:

Celý článek