MicroLog.MyPower.CZ

… designed for freedom of automation.

Uživatelské nástroje

Nástroje pro tento web


bugreport

Toto je starší verze dokumentu!


Nalezeno

Automaticky update stranky Digitalnich vystupu (5s)
Podpora clusteroveho reseni a sitovani microlog <=> microlog
Hodiny, vychod / zapad slunce, GPS poloha
vypocty kwh
Podpora pro DS18B20
Podpora pro SD kartu
Dokončit zalohu / obnovu eprom
**Přidání možnosti negace výstupu (relé)**
Moje koupená sada k arduinu má opačnou logiku spínání. relé sepne při uzemnění příslušného vstupu (log 0).
Prosím tedy o úpravu v programu, kdy by se dali individuelně nastavit jednotlivé výstupy (normální/negovaný).
prozatimně jsem upravil kód v programu (HIGH:LOW místo původního LOW:HIGH)

void DPINUpdateHW() {
for (int i=0;i<16;i++) { byte xdpin=DPINmap[i];
  if ((xdpin>=22) && (xdpin<=49)) digitalWrite(xdpin, ((DPINstatus&(1<<i))==0)?HIGH:LOW);
  }
}
Interní vývojová verze www rozhraní - možná i oficiální verze www rozhraní: Tlačítko Uložit nastavení 
se při změně názvu digitálního pinu objeví ne při změně názvu pinu ale až při změně názvu a zároveň 
změně nějakého pinu ON>OFF nebo OFF>ON. Nevola se dostatecne casto funkce kontrolujici zmenu nazvu, 
vola se jen pri update stavu pinu. Nutno spravit.
Ahoj

Tak si dneska taky bastlím a kochám se a zjistil jsem malou nedokonalost. :roll: (možná)

U AKU-1 je 26.57V
I AKU-1 je -1.65A

ale výkon ukazuje 43.85W (P = U * I), výsledek je OK, ale znaménko ?

Měl by se ale ukazovat výsledek -43.85W. nepropašovala se někde ve výpočtu absolutní hodnota ?
..... asi tuším, kde je problém.. Tam, kde s čísly manipuluju jako s celým SIGNEDLONG a INT ve významu
desetitisícin (obvykle x10000, nebo x10k). Znaménko se udržuje (co já si pamatuju) v té části, kde se 
ukládají celá čísla, tedy v SIGNEDLONG. Jenže 0 je 0 a v tomhle typu není chápána jako záporná nebo
 kladná. Jenže desetitisíciny jsou vždy chápány jako bezznaménkové, a znaménko se chápe, že platí to, 
které je v části pro celé číslo.

Dojde k tomu, že při čísle -0.1234 fungujeme s dvěma čísly 0 a 1234. Čímž jsme přišli o znaménko. Jinak 
tomu bude u -1.1234. Dostaneme -1 a 1234. To už je správně. Takže budu si muset znaménko značit i do té 
desetinné části a použít ho v případě, že celá část je 0 a nelze znaménko rozlišit.

To je ale docela blbé, protože to znamená projít všechny místa, kde se s takto uloženými čísly na celou 
část a desetitisíciny pracuje. Fuj :(

V každém případě kvalitní betatesting, díky .. to se cení ..

Řešení

bug1

řešení 1

bug2

řešení 2

bugreport.1378409481.txt.gz · Poslední úprava: 2013/09/06 03:31 (upraveno mimo DokuWiki)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki