Arduino yu PLC Gibi programlamak istermisiniz ?
Evet artık arduino PLC ladder mantığı ile kolayca programlayabileceksiniz.
https://www.arduino.cc/pro/portenta-machine-control
Portenta Makine Kontrolü , bağımsız endüstriyel makinelere Endüstriyel IoT yetenekleri ekler. Fabrika tabanından gerçek zamanlı verilerin toplanmasını sağlar ve istendiğinde ekipmanın buluttan bile uzaktan kontrolünü destekler. Bilgi işlem gücü sayesinde Portenta Machine Control, çok çeşitli kestirimci bakım ve yapay zeka kullanım durumları sağlar. Arduino çerçevesi veya diğer gömülü geliştirme platformları kullanılarak programlanabilir.
Arduino PLC IDE ile Programlamaya Giriş
Giriş
IEC-61131-3 standardı, programlarınızı oluşturmanıza yardımcı olmak için 5 programlama dili toplar; bunları işlevler ve işlev blokları halinde gruplandırarak bütün bir program oluşturmak için birlikte kullanabilirsiniz. Standart dillere ek olarak, Paylaşılan Değişkenler aracılığıyla diğer dillerle etkileşime giren bir Arduino taslağı entegre edilebilir. Bu tür bir geliştirme, Arduino PLC IDE kullanılarak gerçekleştirilebilir. Bu eğitimde, bir Arduino taslağını referans olarak aklınızda tutarken hepsini tanıyacaksınız.
Hedefler
Bu eğitimin hedefleri şunlardır:
- PLC IDE ortam işlevlerine aşina olun
- Referans taslağı tüm IEC-61131-3 dilleriyle (LD, SFC, FBD, ST, IL) programlara dönüştürün
Gerekli Donanım ve Yazılım
Ortak özellikler
Değişken Toplama
2 tür değişken vardır:
- Global değişkenler: 5 programın tümü ona erişebilir.
- Yerel değişkenler: Yalnızca bir programın ona erişimi vardır.
Küresel değişken
Proje sekmesinin içine tıklayın ve Global_vars bölümüne tıklayın, projenizdeki global değişkenlerin tam listesini görmek için bir tablo mevcuttur.
Yeni bir tane eklemek için tabloya sağ tıklayın ve ekle düğmesine tıklayın.
Varsayılan ayarlarla yeni bir satır ekleyecektir, her alanı çift tıklayıp ihtiyacınıza göre değiştirebilirsiniz.
Yeni değişkeni ayarladıktan sonra, ona tüm dil programlarınızdan erişebileceksiniz.
Global_vars bölümünde tüm glboal değişkenlerini içeren bir liste göreceksiniz .
Yerel değişken
Proje sekmesine gidin ve çift tıklayarak bir program seçin, açıldıktan sonra üst panelde Yerel Değişkenler tablosunu göreceksiniz.
Daha önce açıklanan aynı adımları izleyerek, tabloya sağ tıklayıp ekle düğmesine basabilirsiniz.
Varsayılan ayarlarla yeni bir değişken eklenecek, ihtiyacınıza göre değiştirmek için her birine çift tıklayın.
Blok Ekleme
Bloklar, kitaplıklardan ve PLC IDE’den kullanılabilen özellikler veya işlevlerdir.
Bunlar, AND kapıları, ADD işlevi vb. gibi görevleri gerçekleştirmenize yardımcı olacaktır.
Programınıza bir blok eklemek için (yalnızca LD, SFC, FBD ile mümkündür) “Kütüphane Ağacı” adlı sağ taraftaki pencereden blokları sürükleyip bırakabilirsiniz.
Tuvalinize sürükleyip bıraktığınızda, tamamen özelleştirilebilir bazı giriş ve çıkış pinlerine sahip bir blok oluşturacaktır, çoğu zaman bloğa sağ tıklayıp varsayılandan daha fazlasına ihtiyacınız olması durumunda daha fazla pin ekleyebilirsiniz.
Görev Eki
Programlarınızı aldıktan sonra, bunları çalışma zamanı içindeki bir göreve ekleyebilirsiniz.
4 Görev vardır:
- Başlatma: Atanan programların, başlatma sırasında yapılan tek yürütmesi
- Hızlı: Varsayılan olarak her 10 ms’de bir ekli programları yürüten döngü (değiştirilebilir)
- Yavaş: Her 100 ms’de bir ekli programları çalıştıran döngü değiştirilemez
- Arka plan: Her 500ms’de bir ekli programları yürüten döngü değiştirilemez
Bir göreve program atamak için programınızı kolayca göreve sürükleyip bırakabilirsiniz.
varsayılan olarak
main
program ektedir
Fast
görevi, sağ tıklayıp “programı kaldır” seçeneğine basarak kaldırabilirsiniz.
Göreve sağ tıklayıp tuşuna basarak da yeni bir program atayabilirsiniz.
Add program
, ardından açılır pencerede gösterilen listeden programı seçin.
Görevi yapılandırmak istiyorsanız, üzerine sağ tıklayın ve tuşuna basın.
Task configuration
, örneğin görevin döngü süresini değiştirebileceksiniz.
Yürütme sırası, her görevin içinde gösterilen sıra yukarıdan aşağıya olacaktır.
Değişkenleri İzle
Programımızın doğru çalıştığını ve saydığını kontrol etmek için , bir değişkenin değerini gerçek zamanlı olarak görmenizi sağlayan izleme özelliğini kullanacağız.
Bunu yapmak için Görünüm > Araç pencereleri > İzle’ye gitmeniz gerekir ve yeni bir araç pencereniz olur.
Araç penceresinin içinde değişkenleri sürükleyip bırakabilir veya belirli bir değişken eklemek için Yeni öğe ekle düğmesini tıklayabilirsiniz.
Örnek Program
Program, sayımı zaman içinde X kadar artıran basit bir sayaç olacaktır.
arduino taslağı
IEC-61131-3 Diller
Yeni bir program oluşturmak için proje sekmenizi açın, Proje > Yeni nesne > Yeni program araç çubuğuna gidin, programınız için bir ad belirleyin ve dilini seçin.
Hatırlatma: Büyük/küçük harfe duyarlı programlara sahip olmak istiyorsanız proje ayarlarından seçim yapabilirsiniz, bunu doğru olarak ayarladık. adresine giderek değiştirebilirsiniz.
Project > Options... > Code generation
ve tıklayın
Case sensitive
onay kutusu
5 dil mevcuttur:
- Yapılandırılmış Metin (ST)
- Talimat Listesi (IL)
- Merdiven Şeması (LD)
- Sıralı Fonksiyon Tablosu (SFC)
- Fonksiyon Blok Şeması (FBD)
Yapılandırılmış Metin
Bu dil C’ye benzer, bir değişkene değer atama kodu aşağıdaki gibidir:
Talimat Listesi
Bu programlama dili, Assembly programlamaya benzer.
Sayaç komut dosyası için kod şudur:
Merdiven şeması
Bu programlama ortamı, çizgilere ve bloklara dayalıdır, bir çizginin, sağa doğru devam etmek için bloklar arasındaki tüm girişleri geçmesi gereken soldan sağa bir yolu vardır, eğer tüm farklı blokları geçerse (AND kapıları gibi) sağda köşeli parantez sembolünde (bobin) sona erecek ve yapmak için ayarladığınız her şeyi tetikleyecektir; bu, örneğin Normalde Açık (NO)’ya kilitlenen bir röle olabilir.
Sayaç programı şöyle görünür:
İşte bunu sıfırdan yapan bir video:
Sıralı Fonksiyon Tablosu
Bu diller senaryoya bir akış şemasına benzer şekilde yaklaşır, böylece bazı işler yapan bloklarınız olur, o çalışmanın sonucunu kontrol edersiniz ve ardından seçeneklerle akışa devam edersiniz.
SFC dili doğrudan makine ile etkileşime giremez, yani bir çıktıyı doğrudan KAPALI yapamazsınız, bunun için eylemler oluşturmanız gerekir
Hareketler
Eylem, işi yapan başka bir dilde (yani yapılandırılmış metin) bir komut dosyasıdır, bu, grafiğe bağlı olarak tetiklenir.
Proje ağacınızda bir tane oluşturmak için, SFC komut dosyasına sağ tıklayın ve “Yeni eylem” düğmesine tıklayın.
SFC Programı
Tuvalin içine veya üst çubuğa sağ tıklayarak kullanabileceğiniz bloklarınız var, onları sürükleyip bırakabilirsiniz.
SFC programının, Adım 0 > Geçiş 0 > Adım n > Geçiş n > … > Atlama sırasını izleyen bir kuralı vardır.
Adım , yapılacak iştir ve Geçiş , bu çalışmanın sonucudur.
Atlama , grafiğin başka bir Adımına bağlantıdır . Bir döngü oluşturmak için “init” adımını işaret etmek için atlamayı kullanmanız gerekecektir.
Sayaç programı aşağıdaki resimdeki gibi görünmelidir. “Count” Adımı içindeki eylemi not edin: Yapılandırılmış Metin bölümünde gösterilen kodun aynısı olan Yapılandırılmış Metin’de yapılan programın eylemin adı olan küçük bir “sayaç” metni görebilirsiniz.
İşte bunu sıfırdan yapan bir video:
Fonksiyonel blok diyagramı
Bu, SFC Programlamasına benzer, ancak bu durumda program üzerinde sıralı bir yol yoktur, gerekli işi yapmak için bloklar eklersiniz.
Örneğin, Ekle bloğunu eklemek, her döngüde Ekleme işlevini yapacaktır.
Sayaç programı şöyle görünür:
İşte bunu sıfırdan yapan bir video:
Önceki programlarda yerel değişkenler kullandık, izlenecek programın belirli değişkenlerini seçmeyi unutmayın, aksi takdirde herhangi bir veri görmezsiniz.
Çözüm
Var:
- Her dilde basit bir sayaç oluşturuldu
- Canlı değişkenin değerinin nasıl izleneceğini öğrendi
- Bir göreve bir program eklendi
- Kullanılmış bloklar
Şimdi, bu temel bilgileri kullanmanızı ve her birini tanımak için daha gelişmiş programlar yapmanızı, farklı blokları denemekten çekinmeyin, bunların kodlarını inceleyin ve farklı paneller arasında gezinin.