OMRON PLC PROGRAMLAMA DERSLERİ
Omron Plc Nedir ? Omron Plc detayları nedir ? Kullanılan operandlar nedir ? Omron plc nasıl kullanılır ? Bu yazımızda Omron Plc Programlama İnceleme adlı yazımızı sizlerle paylaşıyoruz.Bu yazı dizisi omron plc’e dair önemli detayları incelemek adına paylaşılacaktır.
OMRON PLC PROGRAMLAMA
Interlocked -> Ayar komutu (IL) – İptal komutu (ILC)
Break -> Ayar Komutu (BREAK) – İptal Komutu (NEXT)
Block Program -> Ayar Komutu (BPRG) – İptal Komutu (BEND)
Operandlar : Source(kaynak) – Destination(hedef) –Number (sayı) olarak 3’e ayrılır.
Örnek : #0 = Source(S) ve &3 = Number(sayı)
Source = Sabitin ya da okunan datanın adresini belirler
S -> Source operand (Kaynak , ana operand)
C = Control (Kontrol) Data -> Bit durumuna göre ana kaynak içerisinde farklı anlamlara gelir.
Destination = Results (Sonuçlar) : Yazılacak data adresini belirler.(D)
Number (Sayı) =Atlama , subroutine gibi belirli komut numaralarını belirler.(N)
Bit adresleri ;
|x||x||x||x|.|x||x| (Noktadan sonrası Bit Numarasını 0-15 belirler ve Noktadan önceside Word Adresidir)
Örnek : Word 0001’in içerisindeki 03 bit adresini gösterelim : C101.03
1.03’tür -> 03 (Bit numarası) , C101(Word)
Örnek : H10.08 -> 08 (Bit numarası) , H10 (Word adresi)
Örnek : 10 -> 0010 -> (0-15 arası bit) -> 10 = Word adresi
Örnek : W5 -> Word adresi
Örnek : D200 -> Word adresi
Word adresini düzenlemek istersek ; 3 word numarası ve 200’de Word ;
MOV 3 D200 denilerek düzenleme işlemleri yapılabilir.
Binary Mod içerisinde Dolaylı DM Adreslerini Belirlemek :
Binary data olarak (00000-32767) Data Memory (DM) adına ‘@’ sembolü kullanılır.
MOV #1 @D300 şeklinde kullanılabilir.
BCD Modta Dolaylı DM Adresleri Tanımlama :
Adres içerikleri BCD data olarak işlenir ve DM Word adreslerine yazılır.Burada (*) asteriks eklenir.
MOV #1 *D200 şeklinde kullanılabilir.
Direkt Olarak Register Tanımlama :
Index Register (IR) veya Data Register(DR) direkt olarak IR(0-15) , DR(0-15) olarak tanımlanabilir.
MOVR 1.02 IR0 ya da MOVR 10 IR1 -> PLC Hafıza adreslerini CIO 10 için IR0 veya IR1 içerisinde tutar.
Register için dolaylı adres kullanımı ;
IR|x| ile bitleri ve Wordleri tanımlama işlemleri adına ; IR0(plc hafıza adresleriyle birlikte biti yükler) ve; IR1 -> MOV #1 işlemi ile , IR1 0001’i Plc içerisindeki IR1 üzerinde saklar.
Sabit Ofset : IR|x| İÇİN +/- sabiti tanımlama
Sabit -> -2048 ile +2047 aralığındadır.Komut çalıştırıldığında ofset, binary dataya çevirilir.
+5, IR0 (IR0 +5’e bit ve plc hafıza adresini yükler.)
MOV #1 31, IR1 -> #0001’i IR1+31 içerisinde tutar.
Register Kullanımında Dolaylı Adres Tanımlama :
DR Ofset -> IR|x| içerisindeki data , signed binary olarak DR|x| içerisinde tutulur.MOV #1 DR0,IR1
Anlamı da ; 0001’i ve IR1 içerisindeki değeri DR0’da tut.

Auto Increment(Oto artırım) :
+1 ya da +2 şeklinde IR|x| içeriği artırılabilir.
+1 : IR|x|+ -> bir artırma işlemidir.
+2 : IR|x|++ -> iki artırma işlemidir.
Auto Decrement(Oto azaltım) :
-1 : -IR|x| -> 1 azaltma işlemidir.
-2: –IR|x| -> 2 azaltma işlemidir.
16-Bit Sabit : Tüm binary data ya da sınırlı binary data aralığı ;
Unsigned binary : # -> #0000 – #FFFF -> Ör ; MOV #5A D100
Signed Decimal : -/ + -> -32,768 , +32767 -> Ör; +(400) D200 -128 D300
Unsigned Decimal : & -> &0 – &65535-> CMP(020) D400 &999
16-Bit BCD Data ya da Sınırlı BCD Data Aralığı :
BCD -> # -> #0000 – #9999 -> -B(414) D500 #2000 D600
32-Bit için ;
Unsigned binary -> # -> #00000000 – #FFFFFFFF -> Ör : MOVL(498) #17FFF D100
Signed Binary : + -> -2,147,483,648 – +2,147,483,647 -> Ör : +L(401) D200 -65536 D300
Unsigned Decimal : & -> &0 – &429467295 -> CMPL D400 &9999
32-Bit BCD Data : # -> -BL D500 #100000 D600
Text String :
Özel karakter dışında 1 Byte olarak ‘Text Datası’ depolanabilir.
Soldan -> Sağa doğru depolanır.00 hex (NULL kod) sağ en altta bulunur ve boş olan alana 00 (Null) ekler.Tek sayıda karakter varsa sağ en alt ‘00’ , çift sayıda karakter karakter varsa sağ ve sol olmak üzere doldurur.
Data Formatları :
Unsigned Binary : Decimal olarak (0-65535) ve 4-digit hexadecimal (0000 – FFFF)
Signed Binary : Decimal olarak (-32,767 – +32767) ve 4-digit hexadecimal (Negatif : 8000-FFFF ve Pozitif : 0000-7FFF)
BCD : Decimal (0-9999) ve 4-digit hexadecimal (0000-9999)
Data Formatı : 1 Bit için single precision
31 30 29 ………. 0 (Bitler)
0’dan 22. Bit dahil = Mantissa olarak adlandırılır.
23’den 30. Bit dahil = Exponent olarak adlandırılır.
- bit ise = Signal mantissa olarak adlandırılır.
Değer = (-1)^işaret x 1.(mantissa) x 2^exponet
Sign Bit (İşaret biti) 31. Bittir ve : 1 ise negatif değer , 0 ise pozitif değer yapar.
Double olan yani 64-bit olan durumda ise ;
0-51 mantissa , 52-62 exponent ve 63’te mantissa sinyalidir.
Komut Değişkenleri :
Türev (Fark) : On ise = @ -> Koşul ‘On’ olduğunda çalışır.Off ise ; % -> koşul off olduğunda çalışır.
Anında Yenileme : ! -> Komut çalıştığında özel giriş/çıkış birim Wordleri ya da giriş/çıkış tanımlı olanların datalarını yeniler.
!@MOV = Mov komut , @ türev değişkeni , ! anlık yenileme değişkeni
CP Serilerinde ;
Non-differentiated (Türevi alınamayan) komutlar her döngüde çalışır.
Türevi alınabilir komutlar ise yalnızca birkaç kez çalışır.
Örnek olarak ;
Non-differentiated : —| 1.02|———|MOV |
Differentiated : ———|1.02|———-|@MOV | CIO 1.02(yükselen kenar) Off -> On olduğunda çalışır.
Çıkış Komutları : Koşul (on->off) off olduğunda ve çevrimler çalıştırılmadığında ;
——|1.02|———|%SET | Buradaki set komutu CIO 1.02 off olduğunda çalışır.
Not : % ifadesi yalnızca LD , AND , OR , SET ve RSET komutlarına eklenebilir.
CX-Programmer İçin Program Hataları :
-Yanlış/Hatalı Data- Ladder Diyagram ; Komut konumlarını , giriş/çıkış hatlarını , bağlantılarını , komut ve işlem bütünlüğünü kontrol ediniz.
PLC tarafından komut desteği ; Komutlar ve operandlar plc tarafından desteklenmiş komut değişkenlerini (NOT , ! , @, %) kontrol ediniz.
Operand Aralıkları : Operand alan aralıklarını , operand data tiplerini , yalnızca okunabilir wordlerin erişimlerini kontrol ediniz.Sabitleri (+ , – , # , & ) , kontrol kodlarını , çoklu-word operandlarını , boyut ilişkilerini , operand aralıklarının üst üste binmesi durumlarını , çoklu word alanlarını , çift uzunluk operandlarını , offsetler için alan sınırını vb. kontrol ediniz.
PLC program kapasitesi : Step sayısını , kapasite aşımını , görev sayılarını kontrol ediniz.
Syntax : IL-ILC , JMP-JME , CJP/CJPN-JME , SBS-SBN-RET , MCRO-SBN- RET , STEP-SNXT , BPRG-BEND , IF-IEND , LOOP-END yapılarını kontrol ediniz.
Ladder Diyagram Yapısı : Geri akış ya da program yazım hatalarının olup olmadığını kontrol ediniz.
Çift Çıkış : Bit , word , timer/counter komutlarını , long words , start/end aralıklarını , FAL numaralarını vb. kontrol ediniz.
CX-Programmer’da :
Proje Dosyası (*.cxp) olarak
Fonksiyon blok kütüphane dosyası (*.cxf)
Proje text dosyası içeren fonksiyon blokları (*.cxt) olarak kullanılırlar.
CX-Programmer’da :
& Prefix’i : Desimal olarak giriş
# Prefix’i : Hexadecimal olarak giriştir.
Bit strings(input hex) , nümerik values (nümerik desimal) olarak adlandırılırlar.
Ör :
TIM 042 #10 (100 ms timer)
= (300) D5230 &60
++(590) D5290 (Binary artırım)
MOV(021) &0 D5230 (Move)
Çıkışlar ; Q100.00 , Q100.01 ile başlar ve devam eder.
OMRON PLC PROGRAMLAMA İNCELEME SONUÇ :
Bu yazımızda Omron Plc Programlama İnceleme sonuç adlı yazımızı sizlerle paylaştık.Bu yazı dizisi omron’a dair detaylı incelemeleri ve önemli bilgileri sizlerle paylaşmak adına hazırlandı.
İyi Çalışmalar