Det fungerade alldeles utmärkt!
Flög en vända på bondens åker, slog in 1850 rpm som önskat varvtal,
eller ja jag fick ge in värdet 185.
Varvade upp, 1900 rpm blev det. Slog till SD och varvet gick ner till 1860,
slog till SD en gång till och sen var det bra. GV1 har fått nytt värde
så nu behöver jag inte göra om detta förrän jag vill ha nytt varvtal
förutsatt att "governor store" i reglaget fungerar.
Fungerar bra, tillräckligt bra och kanske räcker det så här, det behöver
kanske inte vara mer automatiskt än såhär. Jag kör ett tag såhär.
För att det inte ska bli för akademiskt så bifogar jag koden här.
Flög en vända på bondens åker, slog in 1850 rpm som önskat varvtal,
eller ja jag fick ge in värdet 185.
Varvade upp, 1900 rpm blev det. Slog till SD och varvet gick ner till 1860,
slog till SD en gång till och sen var det bra. GV1 har fått nytt värde
så nu behöver jag inte göra om detta förrän jag vill ha nytt varvtal
förutsatt att "governor store" i reglaget fungerar.
Fungerar bra, tillräckligt bra och kanske räcker det så här, det behöver
kanske inte vara mer automatiskt än såhär. Jag kör ett tag såhär.
För att det inte ska bli för akademiskt så bifogar jag koden här.
Koda:
local inp = {
{ "Varvtal/10", VALUE, 120, 330, 150 } -- Skit också, 255 range
}
local Pfakt = 0
local Rpm = 0
local GV = 0
local newGV = 0
local orgGV = 0
local HasRun = 0
local RpmSet = 0
local function init_func()
Pfakt = 0.08 -- 100 rpm = 8 till reglaget.
Rpm = 0
GV = 0
newGV = 0
orgGV = model.getGlobalVariable(0,0)
HasRun = 0 -- Kör skriptet bara en gång per brytartillslag
end
local function run_func(inRpm)
if getValue("sd") == -1024 then -- Brytaren OFF
HasRun = 0
else
RpmSet = inRpm*10 -- 255 problem
Rpm = getValue("rpm")
if (HasRun == 0) and (getValue("rssi") > 42) and (Rpm > 1200) then -- Do it
GV = model.getGlobalVariable(0, 0)
newGV = GV + Pfakt*(RpmSet - Rpm)
if newGV > 100 then
newGV = 100
end
if newGV < 0 then
newGV = orgGV
end
model.setGlobalVariable(0, 0, newGV)
end
HasRun = 1
end
return
end
return { init=init_func, run=run_func, input=inp}


Kommentar