SORU_Merker ve flanke kullanarak 1 push buton ile sırayla 4 lamba yakma (STL)

ahmetbogus

Üye
Katılım
11 Kas 2006
Mesajlar
270
Puanları
1
arkadaslar yavuz eminoğlu na ait plc kitabının 44. sayfasında sorulan
uygulamanın çözümünü yaptım fakat bana çok uzun bir çözüm gibi geldi.
yapan başka varsa burda herkes yaptıgı çalışmanın STL kodlarını yazabilir mi?


soru şöyle: 1 buton ile 4 lamba sırayla yanması isteniyor.1. basışta 1. lamba ,2. basışta 2.lamba,3.başışta 3.lamba,4. basişta 4.lamba yanacaktır. 5. basişta tüm lambalar sönecektir.bu boyle devam edip gidecektir.

Not: sadece merker ve flanke ile çözülmesini kitabın o sayfasına kadar counter vs nin anlatılmamış olmasından dolayı ben kendim şart koydum . kitapta öyle bir ibare yoktur.

kendi yaptıgımı yarın foruma ekleyeceğim.
kolay gelsin.
 
// Ben yine STL yi kullandım. ;)

A I 0.0 // giriş buton adresim
FP M 80.0 // Çıkan kenar için merker
JCN SON // Tusa basildı mı kontrolu yaptım, basılmadıysa SON a git

L 15 // (0000 1111)=15 demek, 4 lambada yanarsa bu durum oluşur
L MW 2 //MW2 =?15 kontrolu
==I
JCN ekle //15 olmadıysa ekle kısmına atlıyoz
L 0 // 15 ise MW2 yi sıfırladım
T MW 2
JU SON //Sifirladım ve program sonuna dallandim

ekle: L MW 2 // MW2 yi aldım (sayı 15 den farklıysa burdayız)
SLD 1 // bir sola kaydırdık 0000 XXXX ise -> SLD 1 -> 000X XXX0 olur.(son bit 0 oldu)
L 1 // 1 sayısını aldık
OW //MW2 nin en düşük bitini 1 yaptık
T MW 2 // Tekrar MW2 ye yazdık Yanan lambalar MW 2 de buna dikkat


SON: NOP 0 // Kolay gelsin
 
kısa bir çözüm oluyor evet teşekkür ederim.
benim uzuuun çözümümse şöyle:
Kod:
//{{V2}}
ORGANIZATION_BLOCK OB1
TITLE= "Zyklisches Hauptprogramm"


AUTHOR:
FAMILY:nb
NAME:nb
VERSION:1.0


VAR_TEMP
   OB1_EV_CLASS:BYTE //Bits 0-3 = 1 (Coming event), Bits 4-7 = 1 (Event class 1)
   OB1_SCAN_1:BYTE //1 (Cold restart scan 1 of OB 1), 3 (Scan 2-n of OB 1)
   OB1_PRIORITY:BYTE //1 (Priority of 1 is lowest)
   OB1_OB_NUMBR:BYTE //1 (Organization block 1, OB1)
   OB1_RESERVED_1:BYTE //Reserved for system
   OB1_RESERVED_2:BYTE //Reserved for system
   OB1_PREV_CYCLE:INT //Cycle time of previous OB1 scan (milliseconds)
   OB1_MIN_CYCLE:INT //Minimum cycle time of OB1 (milliseconds)
   OB1_MAX_CYCLE:INT //Maximum cycle time of OB1 (milliseconds)
   OB1_DATE_TIME:DATE_AND_TIME //Date and time OB1 started
END_VAR
BEGIN

NETWORK
TITLE=
//{{a}}
//reset kodu

 A  I124.0
   FP M    1.2
   A  Q124.3
   A  Q124.2
   A  Q124.1
   A  Q124.0
   =  M    1.3


NETWORK
TITLE=
//{{k}}
//lamba4 set

   A  M    1.0
   FP M    2.0
   S  M    1.1
   A  M    1.3
   R  M    1.1
   A  M    1.1
   =  Q   124.3
NETWORK
TITLE=
//{{k}}
//lamba4 set merker

 A  I124.0
   FP M    0.7
   A  Q124.2
   AN M    1.3
   =  M    1.0
NETWORK
TITLE=
//{{k}}
//lamba3 set

   A  M    0.5
   FP M    1.7
   S  M    0.6
   A  M    1.3
   R  M    0.6
   A  M    0.6
   =  Q124.2
NETWORK
TITLE= 
//{{k}}
//lamba3 set merker

 A  "Buton"
   FP M    0.4
   A  Q124.1
   AN M    1.3
   =  M    0.5
NETWORK
TITLE=
//{{k}}
//lamba2 set

   A  M    0.2
   FP M    1.6
   S  M    0.3
   A  M    1.3
   R  M    0.3
   A  M    0.3
   =  Q124.1
NETWORK
TITLE=
//{{k}}
//lamba2 set merker

   A  I124.0
   FP M    0.1
   A  Q124.0
   AN M    1.3
   =  M    0.2
NETWORK
TITLE=
//{{k}}
//lamba1 set

   A  I   124.0
   FP M    1.5
   S  M    0.0
   A  M    1.3
   R  M    0.0
   A  M    0.0
   =  Q   124.0
END_ORGANIZATION_BLOCK
 
Sevgili arkadaşlar,
Kitapta o örneğin çözülme amacı kenar darbesini tanımak
ve kullanılma gereksinimini anlatmak.
Bu nedenle problem iki ayrı şekilde ve kitabın o ana kadar
anlatılan konuları kullanılarak
çözülmüştür. Bu nedenle uzun, yani çok satırdan meydana gelmiş olabilir.
"elektronikmuh " arkadaşın çözüm şekli ve olaya didaktik
yaklaşımı çok güzel kendisini kutluyorum.
Probleme benzer konular kitabın daha sonraki konularında
anlatılmış ve uygulanmıştır.
Örneğin, sayfa 105'deki kayan ışık uygulaması çok küçük değişlikle
problemin çözümü olabilir.
Saygılar
 
yavuzeminoglu ' Alıntı:
Sevgili arkadaşlar,
Kitapta o örneğin çözülme amacı kenar darbesini tanımak
ve kullanılma gereksinimini anlatmak.
Bu nedenle problem iki ayrı şekilde ve kitabın o ana kadar
anlatılan konuları kullanılarak
çözülmüştür. Bu nedenle uzun, yani çok satırdan meydana gelmiş olabilir.
"elektronikmuh " arkadaşın çözüm şekli ve olaya didaktik
yaklaşımı çok güzel kendisini kutluyorum.
Probleme benzer konular kitabın daha sonraki konularında
anlatılmış ve uygulanmıştır.
Örneğin, sayfa 105'deki kayan ışık uygulaması çok küçük değişlikle
problemin çözümü olabilir.
Saygılar
hocam elinize saglık kıtab ıcın ama bende kıtabınızdan edınmek ıstıyorum.ama oyle banka havalesıydı fılan kargo ugrasmak ıstemıyorum.kıtabınızı ızmırde bız nereden elde edebılırız acaba
 
Sayın gezer77,
Bu sitede daha öncede konusu geçti.
Kitabı ancak posta veya kargo ile gönderebilirim çünkü kitapçılarda dağıtımı yapılmamaktadır.
Adres ve telefon numaranızı yazarsanız posta ile gönderebilirim.
Siz kitabı postaneden alıp ücreti oraya ödeyebilirsiniz.
Yada kargo ile gönderirim ücreti banka hesap numarasına veya
postaneden posta çeki hesap numarasına yatırabilirsiniz.
[email protected]
0 532 682 49 39

Saygılar
Yavuz Eminoğlu
 
Bunu LAdder diyagramıda gösterebilir misiniz?rica etsem.ben daha yeni başladım plc öğrenmeye o yüzden STL dilini bilmiyorum.teşekkürler
.
 
seros35 ladderle bu mantıktaki programları yazmak zor oluyor (Değilse bile stl bilene zor geliyor). yazması zor olduğunda acıklamasıda zor olur. bence stl bu tip problemlerde avantaj elde etmiş oluyor.
 
herkese selamlar..
sayın yavuz eminoğlunun kitabını herkese tavsiye ederim stl dilini öğrenmek isteyenler hiç zorlanmadan
öğrenebilirler ayrıca, graph ,scl, dilleride kitapta mevcut..
 
YAVUZ HOCAM kitabınızı bende aldım ve çok faydalandım. elinize ve emeğiğnize sağlık otomasyon ile uğraşan bir çok arkadaşın derdine deva oldunuz tebrik ederim....

Bildiğim kadarı ile devamı olucak. Bana bir mailiniz geldi ama ne yazık ki cevaplama fırsatım olmadı olguğunda da aradan uzun zaman geçmişti.....

Yeni kitabınızı ne zaman edinme şansımız olacak neleri kapsayacak biraz bilgi verirseniz memnun oluruz.

iyi çalışmalar......
 

Forum istatistikleri

Konular
129,867
Mesajlar
930,872
Kullanıcılar
452,732
Son üye
erencok

Yeni konular

Geri
Üst