merhaba arkadaşlar şöyle bir sorunum var;
analog akımdan gelen değerin ortalamasını almak istiyorum
örneğin 1 saniye içersinde değer 10 sefer veya daha fazla değerle toplanıp aynı degere
bölünecek bunu nasıl formüle edebiliriz acaba?
cevablarız için şimdiden teşekürler
Yani sürekli dinlediğin Analog kanalı tek tek değerlere bakmana gerek yok bence...
Siz izin verdiğiniz sürece gördüğü Max ve Min değerleri alırsınız. O değerlerin ortalamasını alırsınız...
Aynı yola çıkar kanımca..
Örnek:
(* Bu blok kayıt tetiklemesi ile gelen değeri tutar kayıt düstükten sonra
Maximum ve minimum farkı cıkartır. *)
(*Outputlar*)
#O_Raft := #S_O_Raft;
#RaftOk := #S_RaftOk;
#RaftNok := #S_RaftNok;
#SavePick := #S_SavePick;
(* Maximum minumun değer kaydı *)
IF #SaveStart = true AND #Rst = false THEN
IF #FırtSave = false THEN
#S_SavePick := #X_PV;
#Max_Data := #X_PV;
#Min_Data := #X_PV;
END_IF;
IF #X_PV > #Max_Data THEN
#Max_Data := #X_PV;
END_IF;
IF #X_PV < #Min_Data THEN
#Min_Data := #X_PV;
END_IF;
#FırtSave := true ;
ELSE
#FırtSave := False ;
END_IF;
(* Reset aksiyonu *)
IF #SaveStart = false AND #Rst = true THEN
#Min_Data := 0.0;
#Max_Data := 0.0;
#S_SavePick := 0.0;
#S_RaftOk := False;
#S_RaftNok:= false;
END_IF;
#S_O_Raft := #Max_Data - #Min_Data ;
IF #SaveStart = False AND #Rst = false THEN
#MidValue:= #Max_Data - (#S_O_Raft / 2);