Siemens Simatic S7 SCL Programlama Dili

Size şöyle söyleyim brçok kitap aldım otomasyonu öğrenebilmek için ama 2 tanesi iyi işe yaradı bende..
1-salman kurtulan kontrol sistemleri ve plc
2-emin yavuzoğlu s7 300 ve otomasyon

2. yazdığımda bir küçük kısımda anlatıyor scl yi ben ilk o kitapta gördüm (fakat sanma detaylıca anlatıyor baya baştan sağma ama işin özünü vererek geçmiş).sonrasıda scl nin help dosyaları bana yetti.... umarım sizede faydalı olur:)
 
Bakalım en yakın zamanda edinmeye çalışacağım. Teşekkürler tekrar.
 
arkadaşlar hepinizin eline sağlık.tüm kodları okudum çoğunu anladım.benim sıkıntım bir driver sürmek için sclde yazacağım koddur.daha flexible olduğu söylenmektedir.en basitinden start stop ikazı nasıl verebilirim,nasıl tanımlarım bir invertörü.işin temelini bilsem gerisini getiririm inancındayım.
 
merhaba arkadaşlar.
FB de var değişkenleri ile temp değişkenlerinin farkını anladım.ama FC de anlayamadım.

FUNCTION FC_TempTest : VOID

VAR_TEMP
Nowvalue1:INT;
END_VAR

VAR
NowValue2:INT;
END_VAR

yukarıdaki fonksiyonda var da tanımlanan NowValue2 değişkenini TEMP de tanımlasaydık ne olurdu.arasındaki fark nedir.şimdiden teşekkürler.
 
STL diline hakim olanlar için biraz fantazi bir yöntem ama sonuçta convert oluyor...



İki SCL kodunu excel üzerinden compare(karşılaştırma) yapma ilginç bişi :)


Burda da otomasyoncu arkadaşın WinCC Flexible showunu izliyoruz. :)
 
videodaki otomasyoncu arkadasın showu süper valla yattıgı yerden arızaya mudahale edıyor:D Bu tür sistem nasıl gerceklesıyor plc uzeriden nasıl cep telefonuna sms gönderılebılıyor ?
 
Kod:
[COLOR=#0000ff]FUNCTION_BLOCK [/COLOR] FB295
[COLOR=#0000ff]VAR_INPUT[/COLOR] 
  [COLOR=#999900]Amplitude:[/COLOR] [COLOR=#0000ff]REAL:[/COLOR] [COLOR=#999900]=[/COLOR] [COLOR=#FF00FF]1.0;[/COLOR] [COLOR=#999933]/ / input: output amplitude[/COLOR] 
  [COLOR=#999900]Period:[/COLOR] [COLOR=#0000ff]REAL:[/COLOR] [COLOR=#999900]=[/COLOR] [COLOR=#FF00FF]1.0;[/COLOR] [COLOR=#999933]/ / Input: Output period[/COLOR] 
  [COLOR=#999900]d_T:[/COLOR] [COLOR=#0000ff]REAL:[/COLOR] [COLOR=#999900]=[/COLOR] [COLOR=#FF00FF]0.1;[/COLOR] [COLOR=#999933]/ / Input: runtime[/COLOR] 
  [COLOR=#0000ff]END_VAR[/COLOR] 
  [COLOR=#0000ff]VAR[/COLOR] 
  [COLOR=#999900]X:[/COLOR] [COLOR=#0000ff]REAL:[/COLOR] [COLOR=#999900]=[/COLOR] [COLOR=#FF00FF]0.0;[/COLOR] [COLOR=#999933]/ / St.Perem.: The value argument[/COLOR] 
  [COLOR=#0000ff]END_VAR[/COLOR] 
  [COLOR=#0000ff]VAR_OUTPUT[/COLOR] 
  Out: [COLOR=#0000ff]REAL;[/COLOR] [COLOR=#999933]/ / output: the output[/COLOR] 
  [COLOR=#0000ff]END_VAR[/COLOR] 
  [COLOR=#0000ff]BEGIN[/COLOR] 
  [COLOR=#999933](*[/COLOR] [COLOR=#999933]
[/COLOR]  [COLOR=#999933]Building the argument of SIN H.[/COLOR] [COLOR=#999933]
[/COLOR]  [COLOR=#999933]*)[/COLOR] [COLOR=#999933]
[/COLOR]  [COLOR=#0000ff]IF[/COLOR] [COLOR=#999900]X> =[/COLOR] Period [COLOR=#0000ff]THEN[/COLOR] [COLOR=#999900]X: =[/COLOR] [COLOR=#FF00FF]0.0;[/COLOR] 
  [COLOR=#0000ff]ELSE[/COLOR] [COLOR=#999900]X: =[/COLOR] X + d_T; 
  [COLOR=#0000ff]END_IF;[/COLOR] 
  [COLOR=#999933](*[/COLOR] [COLOR=#999933]
[/COLOR]  [COLOR=#999933]Implementation  of output in the form of a sinewave (formula y = A * sin (wt), where w =  (2n / T), according to the predefined amplitude and period.[/COLOR] [COLOR=#999933]
[/COLOR]  [COLOR=#999933]*)[/COLOR] [COLOR=#999933]
[/COLOR]  [COLOR=#999900]Out: =[/COLOR] Amplitude [COLOR=#999900]*[/COLOR] [COLOR=#0000ff]SIN[/COLOR] [COLOR=#FF00FF](6.28[/COLOR] [COLOR=#999900]/[/COLOR] Period [COLOR=#999900]*[/COLOR] X); 
  [COLOR=#0000ff]END_FUNCTION_BLOCK[/COLOR]

Blok çağırma örneği:
Kod:
CALL "SINUS", "IDB_SINUS"         //OB35 İÇERİSİNDE ÇAĞRILIR
  Amplitude: = 2.000000e +000     //İstediğimiz genlik değeri
  Period: = 4.000000e +000        //Sinyalin peryodu
  d_T: = 1.000000e-001            //Örnekleme aralığı
  Out: =                          //Sinüs işaretimiz...
 
Son düzenleme:
Merhaba arkadaşlar uzun süre aradan sonra kaldığım yerden bu dile çalışmaya tekrar karar verdim. Ancak kafama takılan şeyler var. Bunlardan ilki yaptığımız programı nerede ve nasıl simule edebileceğimiz.
 

Forum istatistikleri

Konular
130,152
Mesajlar
933,677
Kullanıcılar
453,242
Son üye
karides

Yeni konular

Geri
Üst