Får ej min LUA kod att fungera, Vill få ut delta temperatur - LÖST

Moderator: Telldus

Post Reply
RoyalPhyton
Posts: 2
Joined: Fri Dec 28, 2018 4:20 pm

Får ej min LUA kod att fungera, Vill få ut delta temperatur - LÖST

Post by RoyalPhyton » Fri Jan 04, 2019 2:57 pm

Hej,
Jag är helt ny på detta men efter timmar på lua.org, m.nu osv.. jag har försökt följa Telldus i deras exempel om temperatur och vind.

Jag vill ta ut deltan i mellan två temperatur sensorer som jag har, och få dessa presenterade i LIVE genom att ändra värdet i min dummy-sensor som jag skapat.

Men jag förstår inte riktigt hur å vad jag misssat, suttit i timmar nu å försökt lära mig/hitta felen. men antar att det är massor fel å tankevurpor här. men om någon skulle vilja förklara lite vad som kan tänkas va fel i min kod så är jag evigt tacksam.

Vänliga Hälsningar
RP

Code: Select all


-- File: ff.lua

local deviceManager = require "telldus.DeviceManager"

local garage = deviceManager:findByName('Garaget') 
local vrum = deviceManager:findByName('Vardagsrum CH8') 
local dummy = deviceManager:findByName('Dummy') 


function calculate()

	if garage == nil or vrum == nil then
		return
	end
	
	local garage = device:sensorValue(1,0)
    	local vrum = device:sensorValue(1,0)
	local delta = vrum - garage  
  
	print("Sensor uppdatering %s grader", delta)
   	dummy:setSensorValue(1, delta, 0)
end

function onSensorValueUpdated()
		
	if device:name() == 'Garaget' or device:name() =='Vardagsrum CH8' then
		calculate()
	end
end
Last edited by RoyalPhyton on Mon Jan 07, 2019 10:35 pm, edited 1 time in total.

RoyalPhyton
Posts: 2
Joined: Fri Dec 28, 2018 4:20 pm

Re: Får ej min LUA kod att fungera, Vill få ut delta temperatur

Post by RoyalPhyton » Mon Jan 07, 2019 10:34 pm

Så mycket fel i min kod det var..

Nu har jag slipat och fixat, Då jag på ett mycket förenklat sätt vill få indikation när det är dax att göra rent värmeväxlaren, har säkert inte kläm på allt riktigt, vet att tempavrundningen är inte perfekt men det borde gå att lösa via en if-sats.

Men nedan ser nu min nuvarande fungerande kod:


Code: Select all

-- File: Verkningsgradvxlare.lua

-- EDIT THESE

local tvinSensor = 5											-- Temp in växlaren (från huset)
local tvutSensor = 6											-- Temp ut växlaren (från huset)
local tkinSensor = 15											-- Temp in växlaren (ute luft)
local vgradSensor = 21										-- Dummysensor som visar verkningsgraden 

-- DO NOT EDIT BELOW THIS LINE

local deviceManager = require "telldus.DeviceManager"
local tvin = deviceManager:device(tvinSensor)
local tvut = deviceManager:device(tvutSensor)
local tkin = deviceManager:device(tkinSensor)
local vgrad = deviceManager:device(vgradSensor)


function calculate()

	local tvintemp = tvin:sensorValue(1,0)
   	local tvuttemp = tvut:sensorValue(1,0)
	local tkintemp = tkin:sensorValue(1,0)

	local deltaut = tvintemp - tvuttemp							-- Delta grader som plockas i utgåendeluft 
	local deltain = tvintemp - tkintemp
	local res = math.floor(deltaut/deltain*1000)/10	
	vgrad:setSensorValue(2, res, 0)								-- Visar som fuktighet (%)
	vgrad:setSensorValue(1, 0, 0)								-- Nollar grader då jag inte vill se dem
end
	
	
function onSensorValueUpdated(device) 							-- Använder bara första anropet(device)
	
	if tvin == nil or tvut == nil or tkin == nil then
		return
	end
	
	if device:id() == tvinSensor then
		calculate()
	
	elseif device:id() == tvutSensor then
		calculate()
	
	elseif device:id() == tkinSensor then
		calculate()
	end	
end
	
	

useless
Posts: 1
Joined: Tue Jun 25, 2019 1:31 pm

Re: Får ej min LUA kod att fungera, Vill få ut delta temperatur - LÖST

Post by useless » Thu Aug 22, 2019 2:26 pm

RoyalPhyton wrote:
Fri Jan 04, 2019 2:57 pm
min dummy-sensor som jag skapat.
Hej, hur gick du till väga för att skapa en dummy-sensor? :?: :)

bergetun
Posts: 23
Joined: Thu Jan 18, 2018 11:08 am

Re: Får ej min LUA kod att fungera, Vill få ut delta temperatur - LÖST

Post by bergetun » Thu Oct 24, 2019 9:16 pm

Hei,

Kan du eller noen andre forklare hvordan du kan lage en dummy sensor ?

Takk

Post Reply