Ana içeriğe atla

Siemens S71200 Programlamaya Giriş Notları(1)

MÜHENDİSİN NOT DEFTERİ...
DERS NOTU ŞEKLİNDEDİR, DÜZENLENECEKTİR.


S71214 DCDCDC
1M bacağına 0 V verirseniz diğer girişleri tetiklemek için +24V kullanmalıyız.
Analog girişler 0-10V arasında tetikenmelidir.

Transistörlü PLC lerde çıkışlar +24V
Q0.0 dan başlayarak adresleme yapılmaktadır.
Profinet standart. Tüm ethernet kullanan sistemlerle kullanabilirsiniz.
Memori kart sayesinde plc işlemlerini kayıt edebilirsiniz.

Ortasında bulunan kapak içerisinde signal boardlar mevcut. Direk bağlantı yapılabilir. ÖRN: thermocouple.

Haberleşme modulleri sol tarafa monte edilebilir. Örn RS485
Ray üzerine montaj yapılırken modülleri önceden monte etmek kolaylık sağlar.
GSM-GPRS Modülü ile sms vb kontroller yapılabilir, Sim Kart ihtiyacı var.

Sağ tarafa Thermocouple vb modül bağlantısı yaparken ray'a takarak tornavida yardımı ile konnektörü dışarı çıkarabilir. Tırnaklı bir yapısı var. (ilginç :))

CPU değişeceği zaman konektörler kolaylıkla tırnaklar yardımı ile ayrılabilir.  Sağ taraf modulleri kablo yardımı ile farklı yere montaj yapılabilir.


DC/DC/DC -> PLC BESLEME/İNPUT/OUTPUT

Servolar ile çalışma yapılacak ise Transitörlü Olan model seçilmelidir.
Güç Kaynağı Siemens olmak zorunda değildir.

TİA PORTAL TANITIMI

Allen Bradley Studio5000 e göre daha renkli bir tasarıma sahip.
İnternette illegal olan yöntemlerle kurulumu yapılabilir. Kaynaklar mevcut. :)

TİA PORTAL GENEL BAKIŞ


Crate New Project Diyerek yeni bir proje başlatıyoruz.

CRETE işleminden sonra ADD DEVİCE ile sisteme cihazlar eklenebilir. plc ve hmı gibi.
PLC buradan kolaylıkla seçilebiliyor.

TİA PORTAL PLC ÖZELLİKLERİNİ GÖSTERİYOR
CPU eklemesinden sonra project view bölümüne geçiş yapılıyor. Giriş çıkışlar ve plc durumu rahatlıkla gözüküyor. Alt tarafta özellikler bölümü var seçilen cihazın özelliklerini buradan ahatlıkla görebiliyoruz. slotları ve işlemleri gösterebiliyor.
Tia Portal Adress Verilerini Değiştirme
Sayıcılar ve çıkışları yukarıdaki ekrandan rahatlıkla gözüküyor.
Alt kısımda seçilen bölüm ile alakalı genel özellikleri görüyoruz. PLC İsmi vb değiştirilebilir.
Seçilen PLC ile İlgili Genel Özellikler
Profinet interface üzerinden IP adreslemeleri yapılabiliyor.
DI/DO ilgili işlemlerde filitreler yapılabiliyor.
Cpu Stop moduna geçerse nasıl işlem yapılması seçilebiliyor. (son değer koru-Tüm çıkışlar için değer ver) --- BURASI ÇOK GÜZEL. Hataya geçen bir plc Çıkışları random kalması durumda Çok ciddi İş sağlığı ve Güvenliği riski oluşturabiliyor. Tekrar start alması durumda da saha ve bağlı ekipmanlar beklenen durumdan farklı çalışmalar gösterebiliyor.

PROTECTİON bölümünden yazılan yazılım şifrelenebilir.


ÖRN ÜRÜN EKLEMEK.

TİA PORTAL CATALOG

Katolog üzerinden direk seçim yaparak plc üzerine kolaylıkla eklenebiliyor. Özellikklerden start adresi ayarlanabiliyor. Ekledikten sonra özellikler tek tek kontrol edilmeli, Güzel ve işe yaracak bilgiler,ayarlar içeriyor.

Sol tarafta PLC ismi ile başlayan sekme ve alt başlıları artık plc ile ilgili olan bölümleri içeriyor.


TİA PORTAL PLC bölümleri

TİMER(ZAMANLAYICILAR)

TİA PORTAL TİMER

Sol sekmeden rahatlıkla eklenebiliyorlar,
Çalışma Yapıları:

TP=> timer girişi aktif olduktan sonra,giriş aktif olmaktan çıksa bile PT içerisinde ayarlanan süre boyunca çıkış aktif kalır. Bir işlemden belirli bir süre boyunca çalışmasını istediğimiz durumlarda kullanabiliriz. Örneğin makine önünden birisi geçtikten sonra 10 saniye boyunca alarm çalsın gibi.
Giriş süresi bitmeden gelse gitse bile sürenin bitmesini bekler.

TON =>Allen Bradley PLC ile aynı.  Giriş aktif iken saymaya başlar, süre dolarsa çıkış verir. Süre dolmadan giriş pasif olursa süre sıfırlanır. Yalnızca girişte enerji varken sayma işlemi yapar.
TİA PORTAL TON TİMER

TOF=> Ton ile ters düşünülebilir.  Giriş verildiği anda çıkış aktif olur. Sayma işlemi giriş işaretinin bozulması ile başlar, Sayma işlemi sonunda çıkış 0 sinyaline dönüşür.

TONR => Allen Bradley ile aynı. Giriş aktifken sayar, giriş şartı bozulursa sayılan değer unutulmaz. Tekrar giriş aktif olması ile kaldığı yerden saymaya devam eder. Sayma işlemi bittikten sonra çıkış aktif olur. Bu aşamadan sonra giriş gitse bile çıkış aktif olmaya devam eder. Bu nedenle bu timerda özel olarak reset girişide gereklidir.
TİA PORTAL TONR TİMER

RT=> Bilinmiyor. Sonradan eklenecek.

COUNTER (SAYICILAR)

TİA PORTAL COUNTER
CTU => Yukarı sayıcı, Eklendikten sonra databese otomatik olarak geliyor. timerlar ile aynı şekilde.
Reset girişi mevcut, PV bacağı sayılacak maxsimum degeri,CV Değeride o andaki sayıcı değerini gösteriyor.
TİA PORTAL CTU

Giriş her aktif olduğunda sayma değeri +1 artar, PV Değerine ulaşınca çıkış aktif olur. Reset yapılana kadar aktif olmaya devam eder. Giriş tetiklenmesi ile Sayma işlemi çıkışı aktif olsa bile sayıcı saymaya devam eder. MW2 sanal tagı programda başka yerlerde kullanılabilir.

CTD=> Aşağı sayıcıdır. Load tagı eklenmek zorundanlar.  LOAD ile PV değeri sayıcı içine yazılarak resetleme işlemi yapılır. Sayıcı 0 veya daha düşük olursa çıkış aktif olur. Load tetikleyerek sayıcı tekrar PV değerinden başlar ve sayma işlemi yapılır. Çıkış bozulur.
TİA PORTAL CTD COUNTER
 CTUD=>
LOAD komutu ile çıkış vermeye başlar. CU yukarı CD aşağıya sayar. Çift yönlü sayıcıdır.


Hızlı Sayıcılar:
CTRL_HSR

TİA PORTAL Hızlı Sayıcı

DIR: Yön biti, DRV8825 gibi elektronik step motor kontrol elemanlarındaki motor yönünü belirlediğimiz bacak ile benzer çalıyor.( Niyeyse mutlu etti beni:))
CV: Memori Bit, Vereceğimiz new CV değerini encoderin sayma değerine yüklenecek.


COMPARE (Karşılaştırma Komutları)

S71200 Data Tipleri:

S7100 DATA Tipleri
TİA PORTAL Karşılaştırma Komutları
Not alma gereği duymuyorum. Gayet açık gözüküyor.
CMP<> İfadesi yaptığım denemeler sonucunda yukarıdaki değer aşağıdaki değerden büyük ise aktif oluyor.

MATH (Matematiksel Komutlar)


TİA PORTAL MATEMATİKSEL KOMUTLAR
Karşılaştırma komutları gibi blok eklendikten sonra data tipi seçilmek zorundadır.
Örnek Kullanım ADD:
TİA PORTAL ADD
Gayet basit şekilde toplama işlemi gerçekleştiriyor. OUT yerine toplama işlemi yapılan veri  tipinde yeni bir değişken oluşturmak gerekiyor. İçerisine sonuç kayıt ediliyor, Burada test isminde bir int değişken oluşturdum.

SUB ->çıkarma işlemi yapıyor.
MUL -> çarpma işlemi yapıyor.
DIV  ->Bölme işlemi yapıyor.
MOD -> Bölümden kalanı verir. :Örneğin 6 metrelik parçalar bölen bir makinede kalan metreyi 6'nın modunu alarak tespit edebiliriz.
NEG Verilen değerin negatifini alıyor.

INC ->  IN/OUT içerisinde verilen değeri bir arttırmaya yarıyor.
DEC -> IN/OUT içerisinde verilen değeri bir azaltmaya yarıyor.
NOT: INC ve DEC işlemleri PLC üzerinde her döngüde gerçekleştiriyor. Pulse anahtarları (Yükselen kenar, Düşen kenar tetiklemesi) kullanılarak tek sefer için işlem yapılması gerekli.

ABS -> Mutlak değer alıyor.
MIN -> in1 ve in2 içerisinde verilen datalardan en DÜŞÜK olanı OUT çıkışında veriyor.
MAX -> in1 ve in2 içerisinde verilen datalardan en BÜYÜK olanı OUT çıkışında veriyor.
LİMİT -> Verilen max ve min değerler arasında İN girişine verilen değeri OUT çıkışına taşıyor. Girilen değer max değerden büyük ise OUT da max değer gözükür. Tersi durumda da min değer taşınır.


SQR -> Kare alma işlemi yapıyor. (REAL) değişkenler ile çalışmak lazım.
SQRT -> Kare kök alıyor.
LN -> Doğal logaritma almaya yarıyor.
EXP -> Doğal logaritma tabanına göre exp alıyor.
SİN -> Sinus ifadenin açısını göre değerini buluyor.
COS -> Cosinüs ifadenin açısını göre değerin buluyor.
TAN -> Tanjant ifadenin açısını göre değerini buluyor.
ATAN-ASİN-ACOS  -> arcsinus gibi, değerden açı tespit edebiliyoruz.
FRAC->Noktadan sonraki kısmı alır.
EXPT -> İN1 ve İN2 değerlerini kullanar in1 üzeri in2 ifadesini buluyor. Üstlü ifadeler. in1^in2

Help bölümünden diğer işlemlerin açıklamalarına oluşturulabilir.

Move(Taşıma Komutları)

Örnek yapmak gerekli. Allen Bradley PLC ye göre Farklı bir durum söz konusu, Siemens PLClerde adresleme sistemini güzel kavramak gerekiyor. Araştırmalarım bittikten sonra bu kısmı güncelleyeceğim.

Covert(Dönüştüme Komutları)


CONVERT: Reel-int gibi dönüşümler yapabiliyoruz.
ROUND: İn girişine verilen değerin yuvarlamasını yapıyor.  12,6 ise 13 Özel durumu:12.5 için çift olan sayıya yuvarlar(12).
CEİL: Üst Tam sayıya yuvarlanmasını yapıyor.
FLOOR: Noktalı değerin bir önceki tam sayıya yuvarlanmasını yapıyor.
TRUNC: Küsüratlı ifadeyi siliyor, İNT e çeviriyor.

ANALOG İNPUTLAR 

Device Configuration bölümünden Analog modül eklenebilir.
Analog input pinine 0-10 V çıkış veren bir cihaz bağlansın,
Modulde her analog giriş bir kanal olarak belirtiliyor, Adreslerinide genel ayarlar kısmından verebiliyoruz.

MOVE ile pinden alınan değer sanal bir değişken içerisine aktarılarak sayısal işlemlere tabii tutulabilir.

ANALOG ÇIKIŞLAR

Sürücü hızı basınç değeri vb işlemleri ayarlamak için kullanıyoruz. 
0 ile 27640 arasında değerleri çıkışa yönlendirebiliyoruz. 0-10V.


BLOCKLAR

Bildiğiniz gibi programları yazarken hep program blocks altındaki main [OB1] içerisine yazmıştık. Tia portal içersisinde new block seçeneği ile eklenebilecek farklı bloklar mevcut. Bunlar;
Organization Block:  Main programı yazdığımız blok gibi buradan farklı bloklar oluşturup programı bölebiliriz. Örneğin 3 farklı proses işlemi yaoan bir makine içerisinde her proses ayrı bloklar içerisine yazılır ve bu sayede arıza arama, yazılım geliştirmesi vb işlerde kolaylıkla ilgi yazılım tespit edilebilir.

Function Blok: Data block ile birlikte kullanılır. 

Function: Fonkisyon blokalrına benzer şekilde ancak data blok kullanmıyor. Yazılımiçerisinde tekrar eden işleri yapmak için kullanılabilir, Modüler bir yapı sağlıyor.

TİA PORTAL BLOK YAPISI GENEL GÖRÜNÜM

Data Block :

Global bir data blok oluşturalım. İsmi otomatik olarak alsın. bize bir blok oluşturacak ve burayı veri tabanı gibi kullanabiliyoruz. Her data için bir isim ve data tipi tanımlayarak tabanımızı oluşturalım.
Retail ile enerji kesintisi vb durumda verilerin kalıcı olup olmadığını seçiyoruz.
comment bölümünde ise bildiğiniz gibi açıklama ekleyebiliriz. Örnek olarak sisteme tanımlanmış bir datablok içerisi:

TİA PORTAL DATA BLOCK
Artık bunlar hafızamızda bulunan bir bölüm olmuş oldu. Şimdi bunu programımız içerisinde kullanalım. Data blok 1 olarak zaten görebileceğiz, oluşturduğumuz datalar tıkladıktan sonra geliyor.

Function Blok:

Bir adet data blok ile birlikte çalışıyor. İçerisine input ve output lar tanımlanıyor. Kendi içerisine programımız yazıyoruz. Main blok içerisine geldiğimizde artık oluşturduğumuz fonksiyon blok kullanabiliyoruz. Bu blok her koyduğumuzda bir data blok oluşturuyor input outputlar otomatik geliyor. Avantaj: Üretim sahanız içerisinde fan motorları ve ancak özel koşullar altında çalışmasını istiyorsunuz, belli sıcaklıkta belli bir frekansa çalışacak duracak alarm verecek vs vs. Tüm saha için her motoru ayrı ayrı yazamak yerine fonksiyon blok içerisinde bir kere oluşturuyoruz, ve main programımızda istediğimiz kadar kullanıyoruz. Aynı C dilindeki fonksiyonlar gibi. Büyük bir iş gücünden bizi kurtarıyor ve modüler bir yapı bize sunmuş oluyor.





Bu blogdaki popüler yayınlar

7 Segment Display Nasıl Çalışır?

Bir deney ile sizlere bunu açıklayacağım. Deneyde Kullanılan Araçlar: ·         Multimetre ·         100 ohm Direnç x 7 ·         7447 Entegre ·         Breadboard ·         Güç Kaynağı ·         Bağlantı Kabloları ·         7 Parçalı gösterge Deneyin Amacı: 1.       7447 Entegresinin Kurulması, çalıştırılması,pin numaralarının öğrenilmesi. 2.       7 parçalı gösterge çalışma mantığı 3.       7 parçalı göstergenin pin numaralarının öğrenilmesi Devre Şeması: Devre Şemasının Proteus Çizimi: Dikkat: Proteusda 7447 Entegresinin toprak ve power (V0) Bağlantıları otomatik olarak yapılmıştır.  Ve 1-2-6-7 numaralı bacaklara lojik 0 değeri verilmiştir. Deney Hakkında Bilgiler ve Deneyin yapılışı 7 segment LED   ( 7-parçalı sayısal LED )   Nedir: 7 segment LED (7-parçalı sayısal LED) gösterge en yaygın sayısal gösterge biçimlerinden biridir. Yedi çubuk parça 8 oluştura

3D YAZICI PRUSA İ3 STEEL YAPIYORUZ (P3Steel)

1.Bölüm Malzeme Alırken dikkat etmeniz gereken noktalar ve maliyeti düşük yazıcılar toplamak için yukarıda bulunan video'yu izleyiniz. 3D Yazıcı Temel Bilgiler 3D yazıcı, 3 boyut da zemin üzerine kat kat çıkarak boşlukta 3D çizimleri oluşturan bir çeşit CNC Tezgahtır.  Bilgisayarda tasarlanan nesneleri aynı bir cnc gibi işler. Öncelikle çizim repetier programında katmanlara ayrılır. Yazıcı çizilen nesneyi katman katman alt tablaya plastik akıtarak yapar. Her bir katman üst üste gelerek çizime yükseklik verir 3. boyut kazandırılır.  Yazıcıların kartuşları filament olarak tanımlanır.Bir ipe benzeyen sert çubuk şeklinde filament rulo şeklinde satılmaktadır. PLA ve ABS en temel filament çeşitleridir. PLA doğaldır. Piyasada genellikle kg olarak satılır. Hazır olarak satılan bir çok model olmasına karşılık, OpenSource olarak nitelendirilen reprap 3 boyutlu yazıcılarda mevcut. Open Source kavramı dilimize açık kaynak kodlu olarak yerleşmiştir yani 3 boy