Skip to main content

Soru Cevaplarla Omron Plc Öğren -2 | Omron Plc Programlama Eğitimi

SORU CEVAPLARLA OMRON PLC ÖĞREN -2

Merhabalar ; Soru Cevaplarla Omron plc öğren serisine başlıyoruz.Omron ve omron plc ile ilgili biraraya getirebildiğimiz kadar çok datayı paylaşmaya çalışacağım.Şimdiden hertürlü soru , istek , eleştiri ve önerilerinize açık olduğumu ifade etmek istiyorum.Omron plc programlama ile ilgili yazılarımıza devam edelim.

Başlayalım.

SORU CEVAPLARLA OMRON PLC -2

1) 2 PLC Arasındaki Verileri Nasıl Basitçe Ve Otomatik Olarak Takas Edebilirim?

Ethernet/IP ile CJ2 CPU’ları ve CJ1 için, döngüsel veri bağlantısı iletişimleri oluşturmak için Ağ Sembolleri oluşturabilirsiniz.Ayrıntılar için CX-Programmer Yardım konusu “Ağ Sembolleri” konusuna bakmalısınız.

CJ1M, CP1H ve CP1L için bir sonraki en basit yöntem Host Link portunun otomatik PC Link fonksiyonunu kullanmaktır. CX-Programmer’daki “PLC Ayarları” penceresinden bir makineyi master ve diğeri olarak slave (maksimum 8) olarak yapılandırın.

Alternatif olarak, daha ayrıntılı veri transferi genellikle SEND ve RECV PLC komutları kullanılarak yazılabilir.

Yine aynı şekilde Network configurator programı ile plc içerisine oluşturduğunuz tabloları yükleyebilirsiniz.

2) PLC ve Excel Arasındaki Verileri Nasıl Basitçe Ve Otomatik Olarak Takas Edebilirim?

Omron, Microsoft’un ActiveX teknolojisine dayalı bir “CX-Server Lite” yazılım çözümü sunmaktadır.

CX-Server Lite, PLC (seri, Ethernet, Controler-Link) ile tam iletişim halinde çalışır ve kullanıcıya sadece Excel e-tablosuna sürükleyip yapıştırabilen düğme, ekran, döngüsel kayıt cihazı gibi nesneler sağlar.

3) Omron PLC’den Modbus ile Nasıl İletişim Kurabilirim?

CJ1W-SCU ve CS1W-SCU (V1.3) kuplörleri Modbus slave sürücüsüne sahiptir ve aşağıdaki modbus komutlarını destekler:

01, 02 okuma bit katları (IOC)

03 okuma kayıtları (DM)

04 okuma words I/O IOC

05 yazma biti

06 tek register yaz (DM)

08 test echo

0F birden fazla bit yazma

10 çoklu register yazma

CMND kartları SCU modu ağ geçidine uygulanan komut Modbus master üretebilir.

4) Omron Ekipmanına Bağlanmak İçin Numaralandırılmış Bir Ağ Ne Zaman Kullanılır?

Yüklemeniz yalnızca bir ağda olduğundan, NIC’ye No ağını ayırmak gerekli değildir.

Birden çok ağ kartınız varsa (Ethernet, Controller-Link ağ dizileri … vb.), çeşitli ağlara No atamak için CX-Integrator (veya CX-Net) kullanmalısınız. Bu nedenle, değişimler bir No ağ kaynağı ve bir No hedef ağı içerecektir.

5) Bir GSM Modemiyle Donatılmış Bir PLC’den e-Posta veya SMS Nasıl Gönderilir?

http://www.activmail.com abonelik olmaksızın bir GSM/Internet ağ geçidi sunar.

06 13 20 62 90’a gönderilen basit bir SMS (monadressemail @ xxx, konu, mesaj) daha sonra normal bir SMS’nin fiyatına monadressemail @ xxx’ye gönderilir.

6) PLC Programında Gereken Hafızayı Nasıl Bulursunuz?

Kullanılan tüm Belleği görmek için ana ‘Görünüm’ menüsünden Bellek Görünümü’nü (View) seçin. Ayrıca, programın çalışma alanındaki özellikler sayfasının ve her bölümün özelliklerinin kullanılan program adımlarının sayısını da gösterdiğine dikkat edin.

Fonksiyon kilidi ve SFC hafıza kullanımını görmek için ana PLC menüsünden ‘Bellek Yerleşimi(Memory Allocation)  ..’ seçeneğini seçiniz ve Fonksiyon Blok/SFC hafızası -> Fonksiyon Blok/SFC hafıza istatistiklerini seçiniz.

soru cevaplarla omron plc programlama öğren

7) Giriş/Çıkış Yorumlarında Farklı Diller Nasıl Gösterilir/Atanır?

Düzenle menüsünde, elektronik tablo yorumu simgelerine erişmek için Yorum I/O seçeneğini belirleyin.

İstenen düğme tuşuyla dil (sütun) seçiniz.

8) PLC’ye Aktarım İzin Verilmediği (Gri Simge) ile Karşılaşıldığında Ne Yapılmalıdır ?

“PLC’ye Aktarım” simgesi devre dışı bırakılır (grileştirilir) ve “Kısmi Aktarım” seçeneğini kullanmışsanız Treeview simgesi küçük bir ok içerir.

Bu kılavuzda açıklandığı gibidir;

CX-Programmer Kullanım Kılavuzu W446-E1-14 (sayfa 24):

Programlar CS/CJ serisi CPU Ünitesi Ver. 2.0 veya üstü ve tüm kullanıcı programı yerine görev (program) ile indirme mümkündür (CX-Programmer Ver. 4.0 veya üstü).

PLC Menüsünden PLC’ye Kısmi Aktarım – Görev Aktarımı seçeneğini belirleyin ve belirtilen tek bir görevi veya birden fazla görevi indirin. Bu işlev, program geliştirmenin verimliliğini çoklu personel tarafından artırır.

Özellikle, PLC’ye görev (program) ile indirilerek, sadece değiştirilecek parçalar PLC’ye yansıtılarak daha az çalışma hatası elde edilir.

Kısmen yeniden monte edilen bir nesne yeniden aktarılamaz. Bu sorunu çözmek için önce tüm programı PLC’den yükleyin ve projeyi kaydedin. Şimdi tekrar indirebilirsiniz.

9) Plc içerisinde okuma yapabilmek ve yazma yapmamak istersek , ne yapmalıyız ?

Bunu etkinleştirmek için, öncelikle, PLC’nin önünde bulunan yazma koruma anahtarının konumunu doğrulayın.

Ardından, ‘Protection for parameters PLC’ içerisinde ‘Validate write protection’ seçeneğini doğrulayın.

10) PLC içerisindeki Tüm Verileri Nasıl Koruyabilirim?

Kompakt bir flash bellek kartı kullanmak aşağıdakileri bir “Yedekleme” dosyasına kaydetmenizi sağlar:

Program (BACKUP.OBJ)

Tüm alan DM (BACKUPDM.IOM ve BACKUP.IOM)

Tüm bölgeler EM (BACKUPEx.IOM)

E / S’nin tüm alanları (BACKUPIO.IOR)

UCSettings (BACKUPIO.STD)

Özel kart numaraları için ayarlar  xx (BACKUPxx.PRM)

SORU CEVAPLARLA OMRON PLC ÖĞREN-2 SONUÇ : 

Bugün Soru Cevaplarla Omron Plc Öğren adlı serinin ikinci yazısını sizlerle paylaştık.Umuyorum faydalı olmuştur.

İyi Çalışmalar

Omron Plc Programlama -7

OMRON PLC PROGRAMLAMA -7

Omron plc nasıl programlanır  ? Omron plc programlama da dikkat edilmesi gereken kurallar nedir ? Omron plc programlamanın temelleri nedir ? Bu ve benzeri sorulara cevap aradığımız Omron Plc Programlama -2 adlı yazımızla karşınızdayız.

Başlayalım.

OMRON PLC PROGRAMLAMA

Direkt Olmayan DM/EM Adreslerini BCD Modda Belirlemek:

Adres içerikleri BCD data olarak çevrilecektir.(0000-9999 : Word adresini DM ya da EM alanı olarak ifade eder.)

BCD modda bir direkt olmayan adres tanımlamak için (*) asteriksini eklememiz gerekmektedir.

*D[][][][] -> İçerik [][][][] (0000-9999 BCD) -> D [][][][]

İçerik : #0100 ifadesi D100’ü belirtir.

Örnek : MOV #0001 *D200

Direk Olarak Register Belirleme

Index (IR) ya da data registerları (DR) direkt olarak belirlenebilir.

IR[] ([] : 0 -> 15’e) ya da DR[] ([] : 0->15’e)

Örnek : IR0 için MOV 10 IR0

Açıklaması : IR0 içerisinde CIO 0010 için plc hafıza adresini yükler.

Register Kullanarak Indirect Adres Belirleme

1.Indirect Adres(Ofset yok) : IR@ içerisindeki bit ya da word ile plc hafıza adresi belirlenmesidir.

Örnek : ,IR0 -> LD ,IR0 -> IR0 içerisindeki plc hafıza adresi ile birlikte biti yükler.

,IR1 -> MOV #0001 ,IR1 -> IR1 içerisindeki plc hafıza ile #0001 wordünü depolar.

2.Sabit Ofset : IR[]+ , IR[]- içerisindeki plc hafıza adresi ile bit ya da wordün sabit olarak belirlenmesidir.

+/- sabiti ,IR[] için belirleme işleminde sabit ofset aralığı -2048’den +2047’e kadardır.Komut çalıştırıldığında ofset binary dataya dönüştürülür.

Örnek : +5 ,IR0 -> LD+5 , IR0 (Biti , plc hafıza adresi ile IR0+5 içine yükler)

31 ,IR1 -> MOV #0001 +31,IR1 (word içerisinde #0001’i tutar ve plc hafıza adresi ile birlikte IR1 +31’de depolar)

3.DR Ofset : DR[]’nin IR[]+ içerisindeki plc hafıza adresi ile birlikte bit ve wordünün belirlenmesi

DR[] ,IR[]. DR (Data Register) içerikleri signed-binary data olarak değerlendirilir.IR[] içeriği , signed binary değeri negatifse , negatif ofset olacaktır.

DR0 ,IR0 -> LD DR0 ,IR0 (DR0 içerisindeki değeri plc hafıza adresi ve bit ile IR0+’a yükler)

DR0 ,IR1 -> MOV #0001 DR0 ,IR1 (#0001 değeri ile plc hafıza adresini DR0 içerisindeki IR1+’a yükler)

4.Auto Increment : IR[] +1,+2 olarak yükseltilebilir.

,IR0++ : LD ,IR0++ (IR0 içeriğini 2 arttırır)

,IR1+ : MOV #0001 ,IR1+ (IR1 içerisinde #0001 depolandıktan sonra IR1’i 1 arttır.)

5.Auto Decrement : IR[] -1,-2 olarak azaltılabilir.

-1 : Belirtlilir : -IR[]

-2 : Belirtilir : –IR[]

,–IR0 : LD ,–IR0 (IR0 2 azaltıldıktan sonra , IR0 plc hafızasına yüklenir.)

,-IR1 : MOV #0001 ,-IR1 (IR1’in 1 azalmasının ardından , #0001 IR1 içerisindeki hafızada depolanır.)

16-Bit Sabit :

Tüm binary data yada binary datanın sınırlı aralığı ;

Unsigned Binary : Sembol : # : Aralık : #0000 <-> #FFFF

Örnek : MOV #0100 D0 (D0’da #100 Hex ya da &256 decimal’i tutar)

Örnek : +#0009 #0001 D1 (D1’de #000A hex ya da &10 decimal’i tutar)

Signed Decimal : Sembol : +/- : Aralık : -32768 ila +32767 arasıdır.

Örnek : MOV -100 D0 (-100 desimali ya da hex (#FF9C)’yi D0’da tutar)

Örnek : + -9 -1 D1 (-10 decimali ya da hex (FFF6)’yı D1’de tutar)

Unsigned Decimal : Sembol : & : Aralık : &0 <-> &65535

Örnek : MOV &256 D0 (-256 desimal ya da hex #0100’ü D0’da tutar)

Örnek : +&9 &1 D1 (Desimal -10’u ya da #000A hex’i D1’de tutar)

omron plc programlama 2

Tüm BCD Datalar veya Sınırlı BCD Data Aralığı

BCD : Sembol : # : Aralık : #0000 <-> #9999

Örnek : MOV #0100 D0 (#0100’ü (BCD) D0’da tutar)

Örnek : +B #0009 #0001 D1 (+0010 (BCD) D1’de tutar)

32-Bit Sabit :

Tüm BCD Datalar veya Sınırlı BCD Data Aralığı

Unsigned Binary : # : Aralık : #00000000 <-> #FFFFFFFF

Örnek : MOVL #12345678 D0 (D0 ve D1’de hex #12345678 tutar)

[D1][D0] -> D1(1234) + D0(5678)

Signed Binary : + : Aralık : -21474836486 <-> +2147483647

Örnek : MOVL -12345678 D0

D0’da ve D1’de -12345678 decimalini tutar.

Unsigned Decimal : & : Aralık : &0 <-> &4294967295

MOVL &12345678 D0 (D0 ve D1’de &12345678’i tutar)

Tüm BCD Data ya da Sınırlı BCD Data Aralığı

BCD: # : Aralık : #00000000 <-> #99999999

MOVL #12345678 D0 (D0 ve D1’de #12345678 (BCD) depolar)

Text String Data Formatları

[A][B]            [41][42]

[C][D]   =         [43][44]   = ABCDE

[E][NULL]       [45][00]

MOV$ D100 D200

Not : ASCII karakter tablosu kullanılır.

Immediate Refresh

2 yolu vardır.

1) Refresh Varyasyonu (!) ile komutlar :

‘!’ kullanılarak komut çalıştırıldığında kullanılır.

2)Immediate refresh için özel komutlar :

IORF(097) komutu : Basit I/O birimleri ve özel I/O birimlerinde (yalnızca word yerleşimli CIO alanlarında)

FIORF(225) komutu : Özel I/O birimlerinde

DLNK (226) komutu : CPU Bus birimlerinde

Örnek : IORF D1 D2 (ör. IORF d1.10 d2.16 olsun) : Burada D1: başlangıç wordü , d2: bitiş word’ü.7 adet data yenilenir.

Örnek : FIORF N (FIORF &20 ) Burada N Özel I/O birim numarasıdır.

Örnek : DLNK N (DLNK #1) Burada N CPU Bus unit birim numarasıdır.

OMRON PLC PROGRAMLAMA -2 SONUÇ : 

Bugün Omron Plc Programlama -2 adlı yazımı sizlerle paylaştık.Umuyorum faydalı olmaktadır.Geribeslemelerinizi almak ve eleştirilerinizi duymak isterim.

İyi Çalışmalar

Omron Plc Programlama -6

OMRON PLC PROGRAMLAMA -6

Omron plc nasıl programlanır ? Omron plc programlama da kullanılan teknikler nelerdir ? Omron plc programlamayı nasıl öğrenebiliriz ? Bu ve benzeri sorulara cevap aradığımız Omron Plc Programlama adlı yazımızla karşınızdayız.

Başlayalım.

OMRON PLC PROGRAMLAMA

Komut Yapıları :

Komut yapılarında giriş olarak sıralı olarak ;

Güç akışı , komut koşulu(1) , Flags(bayraklar) bulunur.

I/O hafızaya operandlar hedef olarak gider ya da source(kaynak) olarak döner.

Çıkış olarak ise  sıralı olarak ;

Güç akışı , komut koşulu(2), Flags (bayraklar) bulunur.

Girişte 1 numaralı komut koşulu yalnızca giriş komutlarını içerir.

Çıkışta komut koşulu ise , tüm komutlar için çıkış olmayabilir.

Power flow (Güç akışı) : Çalıştırma koşuludur.

Komut Koşulları ;

Interlocked : Programın bir parçasını kapatır(özel durumlar , çıkış biti etkisizleştirme , holding sayıcılar vb.).Set etmek için IL(002) , komut iptali için IL(003) kullanılır.

Break (514) : For-Next döngüsü çalışmasını sonlandırır(Diğer bir next’e kadar çalışmayı durdurur).Set için : BREAK , iptal için ,reset : NEXT

Blok Program Çalıştırma : BPRG(096)’dan BEND’e(801) program bloklarını çalıştırır.Set için BPRG(096) , reset , iptal için : BEND (801)

Operands : I/O alanı hafızası içerik ya da sabitlerini belirlemek için kullanılan preset komut parametrelerini özelleştirmek için kullanılır.Komut , operand olarak adres ya da sabitler girilerek çalıştırılabilir.

Operandlar , kaynak , hedef veya sayı operandları olarak 3’e ayrılırlar.

Örnek : MOV #0 D0 (#0 : S -> Source(kaynak) , D0 : D ->Destination(hedef))

Örnek : JMP &3 (&3 : N -> Number(Sayı))

Source (Kaynak) : Data ya da sabitin adresini okumak adına belirleme yapar.Nasıl ?

S : Source operandı (kaynak operandı)

C : Control data (kontrol datası) : Bit durumuna bağlı olarak farklı anlamdaki source operand içerisindeki datadır.

Destination (Hedef) : Data yazılacak adresi belirler.Data registerlardır aslında bunlar.

Number (Sayı) : Jump ya da subroutine numarası gibi komut içerisinde kullanılacak numarayı belirler.

Not : Operandlar ilk operand , ikinci operand gibi isimle anılırlar.

Örnek : MOV #0 D0 (#0 ilk operand , D0 ikinci operand)

Komut Değişkenleri :

Differentation :

‘On’ : @ : Komut çalıştırma şartı ‘on’ olduğunda differentiate olur.

‘Off’ : % : Çalıştırma şartı ‘off’ olduğunda differentiate olur.

Immediate Refreshing : ! : I/O alanındaki belirlenmiş datalar yenilenir(refresh).

Not : Non-Differentiated komutlar : Her saykılda çalışırlar.Differentiated komutlar ise yalnız bir defa çalışırlar.

@ İşareti :

Çıkış komutlarında : Sadece off -> on olduğu durumlarda bir saykıl çalışırlar ve diğer saykıllarda çalışmazlar.

Örnek : |———| 1.02|———-|@MOV|——|

CIO1.02 ‘off -> on’ olduğunda sadece bir kez mov komutu aktif olur.

Giriş komutlarında :

|↑|———–   (off -> on) olduğunda çalışma koşulu ‘on’ olur.Diğer saykılda çalışmaz.

Ya da yükselen kenarın değili olduğunda çalışma koşulu ‘off’ olur ve diğer saykılda ancak ‘on’ olur.

DIFU = @ ve DIFD = %

Not : Always P_On bayrağı ya da A200.11(First cycle bayrağı) giriş(input) bitini yükselen kenar komutu olarak kullanmayınız.

Aynı şekilde Always P_Off bayrağını da giriş biti düşen kenar olarak kullanmayınız.

Operandları Belirleme :

Örnek : 1.03 (1 -> Word , 03 -> Bit) CIO alanında word 1’in 3.biti anlamındadır.

Örnek : DM alanı : D1001.03 (D1001-> word adresi , 03 -> Bit numarası )

Örnek : Word adresi : I/O alanı da örneğin word adresi içerir.10 -> Word adresidir.

omron plc programlama

DM ve EM Alan Adresleri :

D ve E prefixleri ile verilirler.

Örneğin ;

EM Alanı : E200

DM Alanı : D200

EM Alanı Bank1 : E01.200 (E01 bank no , 200 word adresi)

Operandları Belirleme : 

Bit adresi ayarlama : 1.02 -> —–|1.02|——-

Örnek : 3 , D200 à MOV 3 D200

Bit adresleri için ofset belirleme :

Örnek : 100.00[2] (100.00 bit adres başlangıcı , [2] ise ofset adresi için bit numarası)

100.00[w0] (w0 = &2) -> |——| 100.00[2] |——-

Köşeli parantezler içerisinde , bit başlangıç adresi için bit ofsetlerini belirleriz.

Not : Word adresleri için ofset belirleme köşeli parantezler içi 0-15 arası sabit ya da I/O hafızadaki word adresi olabilir.

Örnek : D0 [2] (word adres başlangıcı, [2] ofset adres word sayısı) : D0 [W0] -> W0 = &2

Buradan örneğin ; MOV 3 D0[200] olarak kullanabiliriz.

Direkt Olmayan DM/EM Adreslerini Binary Modda Belirlemek

Belirlenmiş alanın başlangıcından itibaren ofset değeridir.Belirli DM , EM alanlarındaki word adresleri için binary data olarak çevrilir.Başına ‘@’ sembolünü koyarak binary modda direkt olmayacak şekilde işlem yapabiliriz.

Aralık (0-32767)

Örnek : @D…… -> İçerik |     | -> D…..

Burada içerik 0 ile 32767 (hex 0000’dan hex7FFF’e kadar binary datadır)

Örnek : D0…D32767 (@D……     0000 ile 7FFFF Hex arasında değerdir.ya da 0-32767 arası desimal değerdir)

Dikkat : İçerik (content) -> &256 -> Hex #0100 = D256’yı belirtir.

MOV #0001 @D3000

Örnek : E0_0 -> E0-32767 : EM alanı içerisinde bank0’ın belirlenmesi işlemi örneği

@D….. 8000’den  FFFF’e kadar hex data içerir.(32768 – 65535 arası)

&32769 içeriği = Hex #8001 -> E0_01’i belirtir.

Örnek : E[]_0 -> E[]_32767 : Bank numaralarını ifade eder.

@E[]_[][][][] (0000-7FFF) arası değer içeriyorsa (0000-32767 desimal değerdir.)

İçerik : &257 = Hex #0101 = E1_257’yi belirtir.

MOV #0001 @E1_200

Not : E([]+1)_0 -> E([]+1)_32767 : Burada @E[]_[][][][] 8000 ile FFFF Hex arası içeriyorsa (32768-65535 desimal)

İçerik : &32770 = Hex #8002 -> E2_2’yi belirtir.

OMRON PLC PROGRAMLAMA -1 SONUÇ : 

Bugün Omron Plc Programlama adlı yazımızı sizlerle paylaştık.Omron plc programlama ile ilgili bir seri oluşturma ve ardından bir kılavuz meydana getirme niyetindeyim.Umarım faydalı olur.

İyi Çalışmalar

CX Programmer & Omron Plc Programlama Dersleri -2 |Omron Plc Eğitim

CX PROGRAMMER & OMRON PLC PROGRAMLAMA İNCELEME

CX Programmer programı nedir ? CX Programmer programında karşımıza çıkabilecek problemler nelerdir ? Plc programlamada dikkat etmemiz gereken konular nelerdir? CX Programmer & Omron Plc Programlama İnceleme adlı yazı dizisi ile hem bu programı hemde plc programlama da karşımıza gelebilecek detay ve ilgili konulara değineceğiz.

Başlayalım.

CX PROGRAMMER & OMRON PLC PROGRAMLAMA

Versiyon ile İlgili Karşımıza Çıkabilecek Problemler :

1.” Unable to download program(s).Errors found during compilation Hatası “:

Bu hatanın ardından Çıkış penceresi içinde bulunan  ‘Compile Tab Page’ üzerinde compile hatası görülecektir.Hatanın sebebi ; CX-Programmer  4.0 veya daha üst versiyonları tarafından erişilmeye çalışılan programın CPU Birimi 2.0 veya daha önceki versiyonlara ait kodları içermesidir.Bu sebeple ya programı kontrol edip düzenlemelisiniz ya da CPU birim versiyonunu değiştirmelisiniz.

2.“ Unable to transfer the settings since they include setting items which are not supported by the connecting target CPU unit.Check the version of the target CPU unit or the following PLC Settings and transfer the settings again.FINS protection settings for FINS write protection via network” Hatası :

Bu hatanın ardından Çıkış penceresi içinde bulunan  ‘Compile Tab Page’ üzerinde compile hatası görülecektir.Hatanın sebebi ; CX-Programmer  4.0 veya daha üst versiyonları tarafından erişilmeye çalışılan programın CPU Birimi 2.0 veya daha önceki versiyonlara ait kodları içermesidir.Bu sebeple ya programı kontrol edip düzenlemelisiniz ya da CPU birim versiyonunu değiştirmelisiniz.

3.“?????” is displayed in a program transferred from the PLC to the CX-Programmer Hatası :

Plc’den CX-Programmer’a program çekerken “????” işaretinin ekrana geldiği hatadır.CX-Programmer  2.0 ve sonraki versiyonları , CX-Programmer 3.3 versiyon ya da daha altı programları upload edebilirdi.Yeni komutlar versiyon 3.3 ve daha altı için upload işleminde kullanılamaz.CX-Programmer 4.0 yada daha yükseğini kullanmalısınız.

4.”The setting items , created by CX-Programmer v8.2 , which are of unit version : 1.2 of a CJ2-series PLC are included. These settings cannot be read by this version of CX-Programmer.Do you wish to continue”

Desteklenmeyen birim versiyonu olan proje dosyası okunmaya çalışıldı hatasıdır bu.Eğer yes derseniz desteklenmeyen ayarlar ve okunacak dosyayı yükler.Eğer hayır derseniz proje dosyası okuma işlemini iptal etmiş olursunuz.

5.”The extended read protection setting is enabled.The connected PLC does not support the extended read protection setting.”

Bu hata CPU biriminin daha önceki versiyonlarında okuma koruması içeren proje dosyalarına daha eski bir CPU birimi ile online olmaya çalışıldığında ortaya çıkar.Ne yapmalıyız ?.PLC Properties Dialog Box içerisinden koruma ayarlarını değiştirmeliyiz.Ya da , CPU birimini online olmak istediğiniz daha yüksek bir versiyona sahip CPU birimi ile değiştiriniz.

Teknik Özellikler :

İçerik hassasiyeti yüksek bir online yardım sistemi sağlar.Bu genel yardım sistemi hızlı ‘hypertext system’ini kullanır.

Seriler ve CPU Tipleri :

CP Serileri için ;

CP1H  Serisi CPU Tipleri : X , XA , Y

CP1L  Serisi CPU Tipleri : M , L

CP1L-E  Serisi CPU Tipleri : EM , EL

CP1E  Serisi CPU Tipleri : E, N , NA

CJ Serileri İçin ;

CJ1G  Serisi CPU Tipleri : CPU 44 , CPU 45

CJ1G-H  Serisi CPU Tipleri : CPU 42 , CPU 43 , CPU 44 , CPU 45

CJ2H  Serisi CPU Tipleri : CPU 64 , CPU 65 , CPU 66 , CPU 67 , CPU 68 , CPU64-EIP , CPU65-EIP , CPU66-EIP , CPU67-EIP , CPU68-EIP

CJ2M  Serisi CPU Tipleri :CPU 11 , CPU 12 , CPU 13 , CPU 14 , CPU 15 , CPU 31 , CPU 32 , CPU 33 , CPU 34 , CPU 35

CJ1H-H  Serisi CPU Tipleri : CPU64-R , CPU65-R , CPU66-R , CPU67-R , CPU 65 , CPU 66 , CPU 67

CJ1M  Serisi CPU Tipleri : CPU 11 , CPU 12 , CPU 13 , CPU 21 , CPU 22 , CPU 23

CS Serileri İçin ;

CS1G / CS1G-H  Serisi CPU Tipleri : CPU 42 , CPU 43 , CPU 44 , CPU 45

CS1H / CS1H-H  Serisi CPU Tipleri : CPU 63 , CPU 64 , CPU 65 , CPU 66 , CPU 67

CS1D-H  Serisi CPU Tipleri : CPU 65  , CPU 67

CS1D-S  Serisi CPU Tipleri : CPU 42 , CPU 44 , CPU 65 , CPU 67

CV Serileri İçin ;

CV1000 Serisi CPU Tipleri : CPU 01

CV2000  Serisi CPU Tipleri : CPU 01

CV500  Serisi CPU Tipleri : CPU 01

CVM1  Serisi CPU Tipleri : CPU 01, CPU 11

CVM1-V2  Serisi CPU Tipleri : CPU 01 , CPU 11 , CPU 21

C Serileri İçin ;

C1000H  Serisi CPU Tipleri : CPU 01

Hafıza Kapasitesi :

30k step ya da daha az için ; 60 Mbyte minimum hafıza gerekir

120k step ya da daha az için ; 240 Mbyte minimum hafıza gerekir

400k step ya da daha az için ; 800 Mbyte minimum hafıza gerekir

Kullanılan Semboller  ;

Bool , Channel , Dint , İnt , Lint , Number, Real , Lreal , Udint , Udint_Bcd , Uint , Uint_Bcd , Ulint , Ulint_Bcd , Word, Dword , Lword, Timer, Counter , String , Struct

Not : Yalnızca SFC ya da ST dili için CX-Programmer versiyon 7.2 ve/veya yukarısını kullanmalısınız.

Yeni bir Plc sisteme eklendiğinde;

Empty local symbol table (boş lokal sembol tablosu)

Global Symbol Table Containing pre-set Symbols (Önceden hazırlanmış sembolleri içeren global sembol tablosu)

IO Table (Giriş Çıkış tablosu)

PLC Memory Data (Plc Hafıza Bilgileri)

PLC Settings Data (Plc Ayar Bilgileri)

Projeye direk olarak ekleneceklerdir.

Program seçeneğinin üzerine sağ tıklayıp Insert program -> Ladder  ya da Insert Program -> Structured text yada Sfc seçerek programa ladder, st dili ya da sfc ekleyebilirsiniz.

Sembol Oluşturma Aşamaları :

Sol taraftaki çalışma alanından symbols’e ya da view -> symbols diyerek semboller sayfasına geleceksiniz.Sağ tıklayarak insert deyiniz ve karşınıza eklemek için ilgili alan gelecektir.

Buradan sembol ekleyebilir ve bu sembollerin özelliklerini , açıklamalarını buradan yapabilirsiniz.

Plc Programı ile Proje Programını  Karşılaştırma :

Plc -> Compare with plc yolu ile karşınıza output ekranını getirebilirsiniz.Burada  adım adım karşılaştırma sonuçları ve kodlarını göreceksiniz.

Not : Offline iken program karşılaştırması yapabilirsiniz.Şimdiki proje ve kapatılan proje arasında bir karşılaştırma ya da doğrulama mümkündür.

Sonuçlar ; Overview ve Mnemonic Display olarak iki şekilde karşınıza gelecektir.

Kaydedilen dosya formatı (.CSV)dir.

Çalışma Esnasında Programı İzleme :

Plc online iken , Plc monitoring diyerek , izleme ekranını açabilirsiniz.

Ücretsiz türkçe cx programmer ve omron plc eğitimi

Proje Açma / Kaydetme :

‘.CXP’ : Projenin kendi dosyasıdır.

‘.OPT’ : Projenin özelliklerini içeren dosyadır.

‘.BAK’ : Proje dosyasının yedek kopyasıdır.

‘.CXT’ : Dosya dönüşümleri için CX Programmer tarafından desteklenen text’e dayalı formattır.

‘.MAC’ : Klavye haritası tarafından yapılan klavye eşleştirmesi dosyasıdır.

‘.CXO’  : Seçenekler ve izleme ekranı ayarlarını içeren dosyadır.

Not : LSS proje dosyaları , doğru format ile dosya dönüşüm aracı üzerinden dönüşüm gerçekleştirmelidir.

Not : SYSWIN / CVSS / SSS / CPT proje ve kütüphane dosyaları direk olarak CX-Programmer ile açılabilir.Fakat CX-Programmer üzerinden farklı kaydet dediğinizde bu formatlarda kaydedemezsiniz.

CX Programmer içerisinde kullanılan data tipleri ;

BOOL : 1 Bit.İşareti yok.Binary formattadır yani 0 ya da 1.Bool data tipi kontak ve çıkış bobinleri için kullanılır.

CHANNEL : 1 ya da daha fazla word’tür.İşareti yoktur.Formatı yoktur.Biti olmayan adrestir aslına bakarsanız.Eğer yorumda bitsiz bir adres verildiyse , sembol sonucuda Channel (kanal) tipinde verilmiştir.

DINT  :2 word’tür.İşareti vardır.Formatı binarydir.Double integer adresidir.

INT : 1 word’tür.İşareti vardır.Formatı binarydir.İnteger adresidir.

LINT : 4 word’tür.İşareti vardır.Formatı binarydir.Long integer adresidir.

NUMBER : Boyutu yoktur.İşareti vardır.Formatı decimal(onluk)’dir.NUMBER data tipi sayısal operandlar ile kullanılır.Bu operandlar ‘#’,  ‘&’ , ’+’ , ’-’ dir.BCD ya da binary komutlarla kullanılabilirler.BCD kullanım için eğer değer hex olarak girildiyse örnek ; sayı ‘1234’ ise , operand ile ‘#1234’ şeklinde kullanılmalıdır.Yine ondalıklı sayı olarak girilebilir örnek ; ‘3.1416’.Mühendislik formatında ‘-1.1e4’ şeklinde girilebilir.Decimal olarak değerler direk girilebilir.Hexadecimal olarak ise yukarıda da belirttiğimiz gibi ‘#’ prefixi ile girilmelidir.

REAL : 2 wordtür.İşareti vardır.Formatı IEEE’dir.Ondalıklı sayı adresidir.Format 32-bit IEEE formatıdır.Özel OMRON ondalıklı sayı formatı için (FDIV komutu) UDINT_BCD tipi kullanılır.

LREAL : 4 wordtür.İşareti vardır.Formatı IEEE’dir.Ondalıklı sayı adresidir.64-bit IEEE formatıdır.

UDINT : 2 wordtür.İşareti yoktur.Binary formatındadır.İşaretsiz double integer adresidir.

UDINT_BCD : 2 word’tür.İşareti yoktur.Formatı BCD’dir.İşaretsiz double BCD integer adresidir.

UINT : 1 wordtür.İşareti yoktur.Binary formattadır.İşaretsiz integer adresidir.

UINT_BCD : 1 wordtür.İşareti yoktur.BCD formattadır.İşaretsiz BCD integer adresidir.

ULINT : 4 wordtür.İşareti yoktur.Binary formattadır.İşaretsiz long integer adresidir.

ULINT_BCD : 4 wordtür.İşareti yoktur.BCD formattadır.İşaretsiz long bcd integer adresidir.

WORD : 1 wordtür.İşaretsizdir.Formatı yoktur.16 bitin bit string adresidir.

DWORD :2 wordtür.İşaretsizdir.Formatı yoktur.32 bitin bit string adresidir.

LWORD : 4 wordtür.İşaretsizdir.Formatı yoktur.64 bitin bit string adresidir.

TIMER : Timer numarası , Timer tamamlandı bayrağı ya da timer anlık değer için kullanılabilir.

COUNTER: Sayıcı numarası , Sayıcı tamamlandı bayrağı ya da sayıcı anlık değeri için kullanılabilir.

STRING : 256 bytes (128 wordtür).ASCII formattadır.Bu data karakter stringleri için kullanılır.Boyut ise 1 ile 255 karakter arasında set edilebilir.

STRUCT : Kullanıcı tanımlı data tipidir.

Not : Structured Text (yapılandırılmış veri) program içinde kullanıldığında ,

UINT BCD Data tipi -> Word’e

UDINT BCD Data tipi -> DWord’e

ULINT BCD Data tipi -> LWord’e

CHANNEL -> Word’e  eşit olacak şekilde kullanılır.

Not 2 : Rakamlar ST programlar içerisinde kullanılamazlar.Eğer bu data tipi kullanılırsa , hata meydana gelecektir.

Structure (Yapı) Sembolleri Tanımlama :

Data yapıları kullanıcı tanımlı olup birden fazla data tipi içerebilirler.

Ladder diyagramda structure sembol adı ve member(üye) adı ‘.’ Nokta ile birbirinden ayrılır.

Example :

abc.member1 = Anlamı ; abc2’nin member1’i. Tabi burada abc (structure name) , ‘.’ Period  , (member1) ise member ismidir.

Not : Eğer member data yapısı ise , diğer kısım member olarak ayarlanacaktır.

abc.def.member1  = abc’nin def’in member1’i

abc -> structure adı , ‘.’ Periyod , def –> structure name , ‘.’ Periyod ve member1 ise member name olur.

Data Structure(Data Yapıları) için Yeni Data Tipleri Ekleme :

Proje sayfasında data tipleri (data types) ikonuna tıklayınız.Insert menü üzerinden struct’ı seçin.Edit structure dialog box karşınıza gelecektir.Struct data tipi için bir isim girin.Ok butonuna tıklayınız.Data tipi görüntüleme alanına structure data tipi eklenecektir.

Yeni Üye (New Member) Eklemek :

Member’ı seçip ilk olarak bir yeni member eklemeliyiz.Insert Menü üzerinden member’ı seçiniz.Karşınıza Edit Structure Dialog Box ekranı gelecektir.

Member için bir isim giriniz.Bu yeni memberın data tipini seçiniz.Eğer yeni member array değilse array boyutunu 0 olarak ayarlayınız.Eğer arraysa da içereceği element kadar boyut bilgisi giriniz.Sonrada ‘ok’ diyerek devam ediniz.Member eklenecektir.

Structure Semboller İçin Adres Yerleştirme Kuralları :

Eğer ilk adres structure sembol için set edilmişse , diğer adreslerde aynı şekilde devam edecektir.Yani bool olarak ilk set edildiyse , arkasından gelenlerde bool olacaktır.Fakat bununla alakalı birtakım istisnalarda vardır.Bunlara isterseniz bir bakalım.

Bool memberlar’ın Bool olmayan memberlar ile karışık kullanımı :

Örnek : D0.0 member1 (Bool) olarak set edildi ve D1 sıradaki member , Member2 INT olarak ayarlanabilir.

Sıralı BOOL Members :

Örnek : D0.0 member1 bool olarak yerleştirildi ve sıralı olarak D0.1 memberı da bool oldu.

Sıralı olmayan bool members :

D0.0 bool , D1 INT , D2.0 yine bool olabilir.

Array Bool memberları ve array olmayan bool memberlar :

D0.0 member1 (bool) olarak ayarlandı ve D1.0 ise bool array olarak member2 ayarlandı.

Sıralı Bool Array Members  :

D0.0 bool array member olarak ayarlandı ve D1.0’de bool array member olarak ayarlanmıştır.

Member Data Tipleri :

BOOL , WORD, DWORD , LWORD , INT , DINT , LINT , UNIT , UDINT , ULINT , REAL , LREAL ve kullanıcı tanımlı data tipleri

Structure Sembol olarak yerleştirilebilecek hafıza alanları :

CIO , WR , HR , DM , EM

CX PROGRAMMER & OMRON PLC PROGRAMLAMA İNCELEME SONUÇ :

Bugünki yazımızda CX Programmer & Omron Plc Programlama İnceleme sonuç adlı yazıyı sizlerle paylaştık.Bu yazı dizisi CX Programmer ve Omron’u anlamak adına bize yol gösterecektir.Bununla alakalı tavsiye ve önerilerinize her zaman açığım.

İyi Çalışmalar.

Omron Plc Programlama Dersleri -1 | Omron Plc Eğitim

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.

Omron plc programlama dersleri

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.

  1. 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