<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[SDS PLC/PAC: Měření Energie & OnlineTechnology.cz - Proměnné sys140-sys147]]></title>
	<link rel="self" href="https://forum.sds.an-d.cz/extern.php?action=feed&amp;tid=37&amp;type=atom" />
	<updated>2012-01-17T10:44:52Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.sds.an-d.cz/viewtopic.php?id=37</id>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=997#p997" />
			<content type="html"><![CDATA[<p>Info po delší době vývoje - doporučuji nahrát nový FW a používat funkci get_sys[]. Funguje spolehlivě a může být i s ?rand=&quot;+Math.random()</p>]]></content>
			<author>
				<name><![CDATA[j@m]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=5</uri>
			</author>
			<updated>2012-01-17T10:44:52Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=997#p997</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=418#p418" />
			<content type="html"><![CDATA[<p>Tak jsem to již vyřešil. Sidebar funguje v IE a je samozřejmě problém s kešováním v IE. Změna adresy s názvem, jak je udělána v demu user.htm: &quot;cgi_dyeA?rand=&quot;+Math.random() nefunguje, xml.xml s ? vyhazuje chybu. A jiný stoprocentní způsob , jak zabránit kešování v IE, jsem nenašel. Takže načítám hodnoty způsobem stejným jako jsou v demu, pomocí url+náhodného čísla . Další problém u gadget sidebaru byl v zabezpečení v IE, kde místní stránky jsou v zóně zabezpečení Počítač a nejde v této zóně jednoduše povolit skriptování - musí se nastavit v registrech. A poslední problém byl v nutnosti umístit gadget ne v Program Files/Windows Sidebar/,ale do složky Appdata/Local..../Sidebar. Nakonec vše funguje, sidebar je efektní... Díky všem za rady.</p>]]></content>
			<author>
				<name><![CDATA[karel]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=31</uri>
			</author>
			<updated>2011-08-23T19:30:27Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=418#p418</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=411#p411" />
			<content type="html"><![CDATA[<p>A je z daného počítače, na kterém to selže, stránka dostupná ?</p><p>Tzn. když do prohlížeče dáte <a href="http://192.168.1.250/xml.xml">http://192.168.1.250/xml.xml</a> , zobrazí se XML soubor?</p><p>Pokud ano, pak je problém tento: SOP - <a href="http://en.wikipedia.org/wiki/Same_origin_policy">http://en.wikipedia.org/wiki/Same_origin_policy</a></p><p>Pokud ne, tak je špatně IP adresa - např. pokud nejste na stejné podsíti... ale to už asi nevyřešíme bez znalosti umístění zařízení a počítače. Pak by řešením bylo použít ve skriptu veřejnou adresu zařízení.</p>]]></content>
			<author>
				<name><![CDATA[adamn]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=7</uri>
			</author>
			<updated>2011-08-20T09:01:40Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=411#p411</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=407#p407" />
			<content type="html"><![CDATA[<p>Díky j@m za skvělý návod na user.htm. </p><p>Řeším ještě jeden problém. Je možno obdobným způsobem udělat sidebar gadget v W7? Takže nechat user.htm na velký přehled všech hodnot a gadget jen třeba na teploty. Když v sidebaru zkouším data z adresy <a href="http://192.168.1.250/xml.xml">http://192.168.1.250/xml.xml</a>&nbsp; tak to nefunguje, kde mám chybu????V user.htm mi to parsování funguje. Díky moc za radu.</p><div class="codebox"><pre><code> var timer_on=true;

  function ReloadXML()
  {
    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
      xmlhttp=new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;);
      }
    xmlhttp.open(&quot;GET&quot;,&quot;http://192.168.1.250/xml.xml&quot;,false);
    xmlhttp.send();
    xmlDoc=xmlhttp.responseXML;

//rele
    document.getElementById(&quot;rele1&quot;).innerHTML=
    xmlDoc.getElementsByTagName(&quot;relay_1&quot;)[0].childNodes[0].nodeValue;
    document.getElementById(&quot;rele2&quot;).innerHTML=
    xmlDoc.getElementsByTagName(&quot;relay_2&quot;)[0].childNodes[0].nodeValue;
    document.getElementById(&quot;rele3&quot;).innerHTML=
    xmlDoc.getElementsByTagName(&quot;relay_3&quot;)[0].childNodes[0].nodeValue;
    document.getElementById(&quot;rele4&quot;).innerHTML=
    xmlDoc.getElementsByTagName(&quot;relay_4&quot;)[0].childNodes[0].nodeValue;</code></pre></div>]]></content>
			<author>
				<name><![CDATA[karel]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=31</uri>
			</author>
			<updated>2011-08-11T18:20:39Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=407#p407</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=400#p400" />
			<content type="html"><![CDATA[<p>Zkusím to to trochu rozebrat a objasnit. Snad to pomůže při navrhování dalším</p><p>Demo stránka používá DOM object který je spouštěn stále dokola v nastaveném čas.intervalu. Data se načítají z informací vracených z MACRA a přes další funkce naplňovány do objektů na stránce. Další popis ve zdojovém kódu...</p><div class="codebox"><pre><code>*** funkce sdsps() se nahodí v loadu stránky &lt;body onLoad=&quot;sdsps();&quot;&gt; 
function sdsps(){
   req=false;
   reqE=false;
   reqS=false;
   *** DOM objekty
   if(window.XMLHttpRequest){
    req=new XMLHttpRequest();
    reqE=new XMLHttpRequest();
    reqS=new XMLHttpRequest();
   }
   else if (window.ActiveXObject){
    req=new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;);
    reqE=new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;);
    reqS=new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;);
   }
   if (req){ 
    *** zde je vytažen obsah stránky 192.168.1.250/cgi_dys?rand=xxx
    *** rand zde zohledňuje kešování systému - bez toho by zde byly stále stejné hodnoty
    req.open(&quot;GET&quot;, &quot;cgi_dys?rand=&quot;+Math.random(), true);
    *** spustí se funkce reqComplete() popis níže
    req.onreadystatechange = reqComplete;
    req.send(null); 
   }
   if (reqE){
    *** zde je vytažen obsah stránky 192.168.1.250/cgi_dyeA?rand=xxx
    *** rand zde zohledňuje kešování systému - bez toho by zde byly stále stejné hodnoty
    reqE.open(&quot;GET&quot;, &quot;cgi_dyeA?rand=&quot;+Math.random(), true);
    *** spustí se funkce reqCompleteE() popis níže
    reqE.onreadystatechange = reqCompleteE;
    reqE.send(null); 
   }</code></pre></div><p>Stránka 192.168.1.250/cgi_dys?rand=123 vrací data v této podobě...</p><div class="codebox"><pre><code>21215916|ovládá:SDS-C - neaktivní (off)|ovládáno:ručně - neaktivní (off)|ovládáno:ručně - neaktivní (off)|ovládáno:ručně - neaktivní (off)|1000Hz, vyp|výstup neaktivní|VYP VYP VYP VYP |VYP VYP VYP VYP |488|bez senzorů|bez senzorů|0.000 V|0.000 V|0.000 V|0.000 V|nepoužito|08:39:31 06.08.2011|</code></pre></div><p>Následující funkce načte tento obsah to objektů na stránce</p><div class="codebox"><pre><code>  function reqComplete(){
   if(req.readyState == 4){
    if(req.status == 200){
     *** naplnění pole daty, parsováno znakem &quot;|&quot;
     var rE=req.responseText.split(&quot;|&quot;);
     *** objekty naplněny správnými údaji z jednotlivých indexů pole viz níže
     *** indexy, tedy obsah 192.168.1.250/cgi_dys?rand=123 se mohou lišit dle FW zařízení
     *** předpokláse ale zpětná kompatibilita, tedy nové položky budou vždy na konci
     document.getElementById(&quot;cas&quot;).innerHTML=rE[17];
     document.getElementById(&quot;rele1&quot;).innerHTML=rE[1];
     document.getElementById(&quot;rele2&quot;).innerHTML=rE[2];
     document.getElementById(&quot;rele3&quot;).innerHTML=rE[3];
     document.getElementById(&quot;rele4&quot;).innerHTML=rE[4];
     document.getElementById(&quot;teplota&quot;).innerHTML=rE[10];
     document.getElementById(&quot;AD0&quot;).innerHTML=rE[12];
     document.getElementById(&quot;AD1&quot;).innerHTML=rE[13];
     document.getElementById(&quot;AD2&quot;).innerHTML=rE[14];
     document.getElementById(&quot;AD3&quot;).innerHTML=rE[15];
     document.getElementById(&quot;tep2&quot;).innerHTML=rE[11];
     document.getElementById(&quot;opto&quot;).innerHTML=rE[8];
    }
   }
  }</code></pre></div><p>Stránka 192.168.1.250/cgi_dyeA?rand=xxx a k ní přidružená funkce pracuje podobně. Zde se jedná o data z S0 vstupů.</p><p>html zápis objektů s ID identifikátory na které přistupují výše uvedené funkce mohou vypadat následovně</p><div class="codebox"><pre><code>ČAS&lt;label id=&quot;cas&quot;&gt;00:00:00&lt;/label&gt;
AKT.VÝKON&lt;label id=&quot;vykon&quot;&gt;0.0 kW&lt;/label&gt;
CELK.VÝKON&lt;label id=&quot;celkovy&quot;&gt;0.0 kWh&lt;/label</code></pre></div>]]></content>
			<author>
				<name><![CDATA[j@m]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=5</uri>
			</author>
			<updated>2011-08-06T07:51:43Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=400#p400</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=175#p175" />
			<content type="html"><![CDATA[<p>Já jsem z toho byl napřed taky jelen. Pak jsem si ale uvědomil, že je to úplně stejné jak bez SDS.<br />Když neberu v potaz použití cgi_dys (které taky nevím co znamená), tak mi stačí znát v PHP práci s XML&nbsp; Jestli totiž zpracovávám svůj vlastní XML anebo XML, který mi poskytne SDS, tak je to úplně jedno. Zrovna tak jestli získávám data z nějaké cizí stránky anebo z SDS, tak je to stejné. Navíc v SDS si můžu nastavit vlastní formát odpovědi pomocí echo.<br />Pak třeba v PHP file_get_contents a pak nějaký regulární výraz preg_match na parsování hodnot a následně je vypsat do stránky. A nastavování hodnot? Stejně jak když se v PHP obsluhuje formulář.<br />Akorát je fakt lepší použít AJAX, aby se stránka nemusela reloadovat - javascrip (jquery).</p>]]></content>
			<author>
				<name><![CDATA[Simi]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=12</uri>
			</author>
			<updated>2011-05-17T07:22:00Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=175#p175</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=174#p174" />
			<content type="html"><![CDATA[<p>Zatím detailní popis není.</p><p>Demo využívá pravidelných dotazů na zařízení SDS, <br />jedná se o webovou tzv. DOM aplikaci. <br />Obecných návodů pro DOM je všude plno, snad to aspoň takto trochu pomůže.</p><p>Takže demo co 1 sec pošle dotaz na SDS, a obratem odbrží sadu hodnot. Ta se potom analyzuje, a protože se ví, která hodnota co konkrétné znamená, tak se to nasype do zobrazeného textu stránky.</p><p>Když pak zmáčknete tlačítko, je vytvořen specifický dotaz na zařízení SDS, a je odeslán na SDS. Zařízení si to pak přebere a provede potřebnou činnost (např. sepnutí relé).</p><p>To co je použito v tom demu, je identické s tím, co je použito ve webovém rozhraní zařízení. Proto např. pokud potřebujte vědět, kterou pozici v textu vráceném z SDS má např. teplota z externího čidla, zjistíte to podíváním se na kód stránky &quot;status&quot; v základním webovém rozhraní.<br />Toto píšu jen tak narychlo, zatím bez bližších detailů, v plánu je to pěkně sepsat a dát na WiKi.</p><p>Samozřejmě to jak je to provedeno v tom demu, to není jediný možný způsob. <br />Stejně tak můžete realizovat stránku, která bude pravidelně přebírat hodnoty z SDS-C, a to pomocí analýzy stránky &quot;echo.htm&quot;, kam pomocí funkce echo() můžete zapsat libovolné hodnoty... atd.</p>]]></content>
			<author>
				<name><![CDATA[adamn]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=7</uri>
			</author>
			<updated>2011-05-16T16:20:35Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=174#p174</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=172#p172" />
			<content type="html"><![CDATA[<p>Máte pravdu, na Wiki toho moc není. Nahrál jsem si demo do SDS, sice mi to ukazuje hodnoty z čidel, které mám zapojené, ale ze zdrojového kódu jsem opravdu nepochopil, jakým způsobem se dostávají data z SDS.&nbsp; Chtěl bych stránku upravit, ale vážně nevím jak na to. Upozorňuju ale, že jsem pokročilý amatér...<br />Je někde nějaký popis toho dema <a href="http://85.207.251.59:1013/user.htm">http://85.207.251.59:1013/user.htm</a>?<br />Díky za radu.</p>]]></content>
			<author>
				<name><![CDATA[Havel]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=20</uri>
			</author>
			<updated>2011-05-14T17:51:33Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=172#p172</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=170#p170" />
			<content type="html"><![CDATA[<p>Ten navod na Wiki v podstate neni, jen jak stranku nahrat do pocitace a odkaz na demo. <br />To ale pouziva veci (jako &quot;cgi_dys&quot;) ke kterym neni dokumentace. Takze je to takovy pokus omyl. </p><p>Vim ze mohu pouzivat promenne po bitech, ale chci vyuzit SDS MACRO k rizeni vytapeni a chtel bych predavat casy a teploty, a tech se do osmi promennych moc nevejde. Co se da delat, zatim to do programu napisu natvrdo a pockam az to bude.</p>]]></content>
			<author>
				<name><![CDATA[jkmbprg]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=15</uri>
			</author>
			<updated>2011-05-13T23:08:00Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=170#p170</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=165#p165" />
			<content type="html"><![CDATA[<p>Základní návod na tvorbu uživatelských stránek je na Wiki - každopádně prohlídkou příkladů (viz např. odkaz na merenienergie.cz) je určitě dobrá cesta.</p><p>Nahrání uživatelské stránky do zařízení je jednoduché, používá se k tomu ten stejný program jako pro nahrání SDS-C programu.</p><p>Rozšíření počtu sdílených proměnných je otázkou do budoucnosti, zřejmě na to dojde. Každopádně, pokud používáte proměnné jen pro přenos stavové informace (zap/vyp) (tedy ne pro přenos číselných údajů apod.), tak můžete využít každou z proměnných po jednotlivých bitech, a tím významě rozšířit počet přenesených údajů (až na 248 zap/vyp údajů při 8 proměnných každá po 32 bitech s využitím 31 bitů - protože 32. bit je znaménkový a obtížně se nastavuje).</p><p>Stránka /control je napevno uložena ve firmware. Proto je nutné použít ideálně uživatelskou stránku. <br />Nicméně, v další verzi firmware budou přidány snazší a příjemější metody, jak ze zařízení vytáhnout hodnotu jakékoliv položky v sys[] nebo ram[] atd.</p><p>Velikost pole ram[] je poměrně omezena, v této verzi firmware (duben 2011) na 128 položek. <br />Teprve zvažujeme jak to bude rozšířeno.</p><p>Přístup k dataflash bude v některé z příštích verzí firmware, ještě se zvažuje zda-li přes vyhrazenou funkci nebo přes pole nebo jako kombinace (zřejmě jako kombinace, kdy se načte/uloží stránka řekněme 256 bajtů, a s daty půjde pracovat pomocí pole).</p><p>Informace o nových funkcích budou zveřejněny, jakmile to bude uděláno (sledujte changelog u odkazů pro stáhnutí firmware na wiki).</p>]]></content>
			<author>
				<name><![CDATA[adamn]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=7</uri>
			</author>
			<updated>2011-05-13T17:46:02Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=165#p165</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=164#p164" />
			<content type="html"><![CDATA[<p>Vracím se ještě k svému starému dotazu: je možno modifikovat control?<br />Tahat stav proměnných z usys.xml a editované je ukládat z user.htm se mi zdá trochu komplikované, ideální by bylo upravit si control ... Jde to ?<br />Díky.</p>]]></content>
			<author>
				<name><![CDATA[Havel]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=20</uri>
			</author>
			<updated>2011-05-12T18:46:28Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=164#p164</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=163#p163" />
			<content type="html"><![CDATA[<p>Dobry den. Chtel jsem se zeptat jestli v dohledne dobe zvysite pocet sdilenych promennych z dosavadnich osmi. <br />Uz ted vidim, ze jich budu potrebovat vic, proto se ptam jestli mam vymyslet nejaky komplikovany protokol&nbsp; nebo radeji pockat.</p><p>V te souvislosti bych se jeste zeptal: </p><p>- Ma SDS MACRO&nbsp; uzivatelsky pristupnou nezapominajici pamet dataflash? Jak k ni mohu pristupovat z programu v SDS C?</p><p>- Jak zjistim velikost pole ram[]?</p><p>A konecne posledni dotaz: Kdy bude navod k tvorbe vlastnich stranek? Neco se da odhadnout z prikladu ktery mate, ale navod by byl jiste uplnejsi.</p><p>Dekuji.</p>]]></content>
			<author>
				<name><![CDATA[jkmbprg]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=15</uri>
			</author>
			<updated>2011-05-10T07:28:01Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=163#p163</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=159#p159" />
			<content type="html"><![CDATA[<p>Díky, dal jsem nový firmware, usys.xml funguje.</p>]]></content>
			<author>
				<name><![CDATA[Havel]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=20</uri>
			</author>
			<updated>2011-05-08T19:28:48Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=159#p159</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=156#p156" />
			<content type="html"><![CDATA[<p>Samozřejmě vlastní verzi /control lze provést, v tom nevidím problém.</p><p>usys.xml určitě funguje pro SDS MICRO, pro SDS MACRO potřebujete firmware z 1.5. nebo novější.</p>]]></content>
			<author>
				<name><![CDATA[adamn]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=7</uri>
			</author>
			<updated>2011-05-06T19:16:37Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=156#p156</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Proměnné sys140-sys147]]></title>
			<link rel="alternate" href="https://forum.sds.an-d.cz/viewtopic.php?pid=152#p152" />
			<content type="html"><![CDATA[<p>Mám SDS Macro, firmware 17.3. </p><p>Nastavení proměnných sys140-147 z vlastní webové stránky je v pořádku, mám ale problém jak je opět načíst. <br />Uvádíte:XML s výpisem vzdálených proměnných SDS-C : 192.168.1.250/usys.xml. Stránka ale nejde načíst, hodí mi to chybu 404 soubor nenalezen. Jaký jiným způsobem je načtu, abych je před editací ve své stránce viděl?</p><p>Něco jako /control, ale ve vlastním designu. <br />Dík.</p>]]></content>
			<author>
				<name><![CDATA[Havel]]></name>
				<uri>https://forum.sds.an-d.cz/profile.php?id=20</uri>
			</author>
			<updated>2011-05-04T18:35:55Z</updated>
			<id>https://forum.sds.an-d.cz/viewtopic.php?pid=152#p152</id>
		</entry>
</feed>
