TEOS SCADA Hakkında

nsproo

Üye
Katılım
8 Kas 2009
Mesajlar
49
Puanları
1
Arkadaşlar merhaba,
Ben TEOS Scada öğrenmeye çalışıyorum ancak now() komutunu anlayamadım. Ne yazık ki bu konu hakkında dökümanda bulamadım. Yardım ederseniz sevinirim.
 
KNX Standardı, küçük bir rezidansın içerisindeki aydınlatma, perde panjur, klima kontrolünden, Dünya’nın en büyük havalimanlarındaki aydınlatma otomasyonu gibi çözümler için tercih edilen bir Dünya standardıdır.
Yazımızda endüstrinin can damarı sayılabilecek PLC’yi inceleyeceğiz.
Sitesindeki help dosyasında şöyle yazıyor:

Now:
Now(n:number):NUMBER;

Saniye cinsinden sistem saatini verir. Number cinsinden verilen değişkeni milisaniye olarak Now değişkenine ekler.


Örnek:

Begin
[.accumulators.variab1]:=Now(0);

end.



Sonuç : xxxxx,yyyyy formatında ondalıklı bir sayı elde edilir. Bu sayının virgülden önceki beş hanesi ay, yıl ve gün, virgülden sonraki haneler saat, dakika, milisaniye vs. yi, ondalık olarak verir. Bu sayıdan tarih ya da saat elde etmek için DateToStr ve TimeToStr fonksiyonları kullanılmalıdır.

Teosun script fonksiyonları pascal/delphi temelli olduğu için merak ettiğiniz komutlar için delphi açıklamalarına bakabilirsiniz.
Now komutu genelde tarih saat gösterimi veya şu andaki zamana göre ileri bir zaman ayarlayıp zamanı gelen işlerin yapılmasını sağlar:

örn:

timer procedure olduğunu düşünün:
var
sonra : tdatetime;

begin
if now>sonra then
begin
islemler;
sonra := now + 1; // bir gun sonra islem yap
end;
end;

gibi
 
teşekkürler. ben şöyle bir program yazmaya çalışıyorum. bir kapalı konumda lamba resmim var. label'a bağlı bir sayacım var. bu sayacı 2 buton ile 10'a kadar artırıp azaltıyorum. sayac 0'da lamba yanmıyor. sayac 1 olduğunda lamba birden yanıyor ve sayac 10 olduğunda program 3 saniye bekleyip daha sonra lambayı söndürüyor. lamba yakmada problem yok sayacta 0-10 arası sayıyor ancak son zaman
gecikmesini yapamadım.


birde rica etsem help dosyasını paylaşabilir misiniz?
 
Son düzenleme:
Teos help dosyasına Mikrosay adresinden ulaşabilirsin.

Yaptığın scripti burada paylaşabilir misin? Ona göre daha fazla yardımcı olabiliriz.

Zamanlama ile ilgili arttırım ve azaltım işlemlerini buton ile yapıyorsan zaten bir acumülatörün değerini oynatıyorsun demektir :

[.Acc.Say] := [.Acc.Say] + 1; veya -1; gibi bu işlemlerde scriptten ziyade el hareketinin hızına bağımlısın.

Ancak sen bir animasyon yapmak istiyorsan o zaman scriptler ve istediğin şartları yazman gerekli.

.
.
bekle := now+(((1)/60)/60); // 1 dk

[.accumalator.animsay] := 1; // resim goster

repeat
until now>bekle;

[.accumalator.animsay] := 0; // resim gizle

.
.


gibi.
 
Aşağıda verdiğim data32 dosyası sayıcıdaki değer 0 iken lambayı yakmıyor. Sayıcı değeri 1 ve üzeri olduğunda lamba yanar halde kalıyor. Sayıcı değeri 10 olduğunda kapıyıda kapatıyor. Eğer sayıcıdaki değer 0 ra tekrar düşerse lamba hemen sönmüyor 10 sn daha yanıyor ve süre sonunda sönüyor. Eğer sayıcıdaki değer süre dolmadan tekrar 1 ve üstüne çıkarsa lamba sönmeden yanmaya devam ediyor.
Ekli dosyayı görüntüle DATA32 SAYICI ŞEKİLLİ.rar
 
Son düzenleme:

Forum istatistikleri

Konular
128,128
Mesajlar
915,276
Kullanıcılar
449,845
Son üye
burak_duyar

Yeni konular

Geri
Üst