Faceplate ve açılır pencere
Bir yapının (UDT) bütün örnekleri için tek faceplate sayfası: nesneler yapının üyelerine öneksiz bağlanır, proses sayfasındaki nesne pencereyi kendi örneğiyle açar. Açılır pencerenin Live davranışı ve Sayfa Penceresi nesnesi.
Ne işe yarar
Tesiste aynı yapıda onlarca cihaz (motor, pompa, vana) varsa her biri için ayrı ayrıntı sayfası çizmezsiniz. Faceplate, bir kez çizilen ve hangi cihaz için açıldığına göre o cihazın tag'lerini gösteren açılır pencere sayfasıdır. Faceplate'teki nesneler tag'e değil, yapının üyesine bağlanır: IO alanı Pompa_P101.Hiz'e değil, öneksiz Hiz üyesine bağlıdır. Proses sayfasında P101 pompasına basılınca pencere Pompa_P101 örneğiyle, P103'e basılınca Pompa_P103 örneğiyle açılır.
Aynı sayfa türü yapısız da kullanılır: onay, parametre girişi gibi genel bir açılır pencere olarak ya da Sayfa Penceresi nesnesiyle başka bir sayfaya gömülerek.
Ön koşul: cihazların tag'leri bir yapı ve yapı örnekleriyle tanımlı olmalıdır (Yapılar (UDT) ve yapı örnekleri). Bu konudaki örnekler Demo Projesi'ndeki Pompa_Yapisi yapısını (üyeler Calisiyor, Ariza, Hiz, Akim, Basinc) ve Pompa_P101, Pompa_P103 örneklerini kullanır.
Faceplate oluşturma
- Komutu verin
Araç çubuğundaki Faceplate düğmesine, Ekle›Yeni faceplate komutuna ya da Proje gezgininde Faceplate'ler satırının sağındaki Yeni faceplate ekle düğmesine tıklayın. Aynı komut Sayfalar düğümlerinin sağ tık menüsünde, bir grupta Bu gruba yeni faceplate ekle olarak da vardır. Yeni Faceplate penceresi açılır.
- Yapıyı ve adı seçin
Yapı (UDT) listesinden yapıyı seçin. Sayfa adı yapının adından önerilir (
Faceplate_Pompa_Yapisi); değiştirebilirsiniz, sayfa adı kuralları geçerlidir. Yapısız genel bir açılır pencere için (yok — yapısız açılır pencere) seçeneğini kullanın.
12345Yeni Faceplate penceresi: Pompa_Yapisi seçili, kartlar yapının üyeleriyle önizleniyor, Motor şablonu seçili. - Yapı (UDT) — pencerenin hangi yapının örnekleri için açılacağı.
- Sayfa adı — yapının adından önerilir.
- Şablon — kartlar seçili yapının üyeleriyle önizlenir; burada Motor seçili.
- Üyelerin nesneleri — her üyenin hangi nesneyle konacağı; değiştirilebilir.
- Oluştur — faceplate sayfası oluşur ve editörde açılır.
- Şablonu seçin
Kartlar seçili yapının kendi üyeleriyle çizilir; kartın adının yanında oluşacak sayfanın boyutu yazar (Motor: 600 × 350). Varsayılan Standart'tır. Yapı seçilmemişse ya da yapının üyesi yoksa yalnız Boş seçilebilir.
- Üyelerin nesnelerini denetleyin
Üyelerin nesneleri tablosu her üyenin hangi nesneyle konacağını gösterir. Seçim üyenin adından, açıklamasından ve tipinden tahmin edilir; değiştirince kartlar yeniden çizilir. Bir üyeyi faceplate'e koymamak için Koyma'yı seçin.
- Oluşturun
Oluştur'a tıklayın. Sayfa Faceplate'ler dalına eklenir ve editörde açılır. Nesneler yapının üyelerine bağlı gelir; sayfa boyutu içeriğe göre ayarlanır (Boş şablonda 520 × 400). Sayfayı bundan sonra diğer sayfalar gibi düzenlersiniz.
Şablonlar
| Şablon | Yerleşim |
|---|---|
| Boş | Boş pencere; nesneler araç kutusundan konur. |
| Standart | Değerler solda; durum ve alarm lambaları sağda; komut butonları altta. |
| Liste | Bütün üyeler tek sütunda, yapıdaki sırayla. |
| Motor | Üstte motor sembolü (çalışıyor / arıza), altında değerler, lambalar ve komutlar. Sembolün çalışıyor durumu adı çalışıyor / running / aktif olan Bool üyeden (yoksa ilk durum üyesinden), arıza durumu ilk alarm üyesinden gelir. |
| Vana | Vana sembolü (açık / arıza) ve konum çubuğu; değerler, lambalar ve komutlar. Konum çubuğu (0 – 100) yalnız adı konum, pozisyon, açıklık … olan sayısal üye varsa konur. |
| Ölçüm | Ana değer kadranda ve büyük IO alanında; ayarlar, sınırlar ve alarmlar yanında. Ana değer, adı PV, sıcaklık, basınç, hız, seviye … olan ilk sayısal üyedir (yoksa ilk sayısal üye). |
Panellerin başlıkları (Değerler, Durum, Alarmlar, Komutlar) Studio'nun o anki arayüz dilinde yazılır ve proje metni olarak çevrilebilir. Nesnelerin etiketi üyenin açıklamasıdır; açıklama yoksa üyenin adı sözcüklere ayrılır (HataKabul → Hata Kabul).
Üyelerin nesneleri
| Seçim | Konan nesne | Ne zaman tahmin edilir |
|---|---|---|
| Durum lambası | Durum Göstergesi; Proses değeri üyeye bağlı: false gri, true yeşil. | Diğer bütün Bool üyeler. |
| Alarm lambası (kırmızı) | Durum Göstergesi; true iken kırmızı. | Bool üyenin adı / açıklaması arıza, hata, fault, alarm, trip, termik … içeriyorsa. |
| Buton (basılı tutunca 1) | Buton: basılınca biti 1, bırakılınca 0 yapar. Rengi adına göre: start / çalıştır yeşil, stop / dur kırmızı, reset / kabul turuncu, diğerleri mavi. | Bool üyenin adı start, stop, reset, ack, çalıştır, dur, kabul, aç, kapat … ise. |
| Anahtar (aç / kapat) | Anahtar; tıklanınca biti tersler. | Tahmin edilmez; elle seçilir. |
| Değeri göster | IO Alanı (çıkış); birim üyeden, Real 1, LReal 2 ondalık. | Sayı, metin ve tarih üyeler. |
| Değer girişi (ayar) | IO Alanı (giriş / çıkış, beyaz zemin). | Sayısal üyenin adı SP, set, ayar, hedef, limit, min, max, süre, gecikme … ise. |
Nesneleri yapının üyelerine bağlama
Şablonun koyduğu nesnelere ek olarak faceplate'e kendiniz nesne koyabilirsiniz. Sayfanın yapısı seçiliyken Tag bağla penceresi listenin başında yapının adını ve üyelerini öneksiz gösterir (Hiz, Calisiyor …); altında Diğer tag'ler gelir. Aynı yapının örnek tag'leri (Pompa_P101.Hiz …) listelenmez. Olay işlevlerinin tag parametreleri (Bit'i 1 yap, Değer yaz …) için açılan seçici de üyeleri aynı biçimde sunar.
123- Yapının adı — sayfanın yapısı (UDT).
- Yapı üyeleri — öneksiz: pencere hangi örnekle açılırsa o örneğin tag'i okunur.
- Diğer tag'ler — yapıya ait olmayan ortak tag'ler (aynı yapının örnek tag'leri listelenmez).
Üyeye bağlı özelliğin tag sütununda üyenin adı (Hiz), adres sütununda Yapı üyesi · Real görünür. Studio tuvali tasarımdaki (statik) değerleri gösterir; gerçek değer Live'da pencerenin örneğinden gelir.
Proses sayfasından açma
- Açacak nesneyi seçin
Proses sayfasında cihazın nesnesini (Demo Projesi'nde
HazirlamasayfasındakiP101pompası) seçin ve Denetçi'de Olaylar sekmesinde Tıklama olayına Açılır pencere aç (tag önekiyle) işlevini ekleyin (Olaylar ve işlevler). - Sayfayı ve öneki verin
Sayfa listesinin başında Faceplate'ler grubu, sonra Diğer sayfalar gelir; faceplate'i seçin. Tag öneki alanına yapı örneğinin adını yazın (
Pompa_P101); alan, yapının örneklerini öneri olarak sunar.
1234P101 pompasının Tıklama olayı faceplate'i Pompa_P101 önekiyle açar. - İşlev — Açılır pencere aç (tag önekiyle).
- Sayfa — listenin başında Faceplate'ler grubu.
- Tag öneki — yapı örneği: Pompa_P101.
- Başlık — boşsa örneğin açıklaması yazılır.
- İsterseniz başlık yazın
Başlık pencerenin başlık çubuğundaki yazıdır. Boş bırakılırsa yapı örneğinin açıklaması (Besleme pompası P-101), o da yoksa sayfa adı — önek yazılır. Yazılan başlık proje metinlerine girer ve Diller ve Metinler'den çevrilir.
- Diğer cihazlar için yineleyin
P103pompasına aynı işleviPompa_P103önekiyle ekleyin. Faceplate sayfası tek kalır; her cihazda yalnız önek değişir. - Live'da deneyin
Pompalara tıklayınca aynı faceplate her pompanın kendi tag'leriyle ayrı bir pencerede açılır.
12345Live: P101 ve P103 pompalarına basılınca aynı faceplate iki pencerede, her biri kendi örneğinin değerleriyle. - P101 pompası — Tıklama: faceplate'i Pompa_P101 önekiyle açar.
- Başlık — yapı örneğinin açıklaması (Besleme pompası P-101).
- Öneksiz bağlamalar — hız, akım, basınç ve lambalar Pompa_P101 tag'lerini gösterir.
- P103 pompası — aynı faceplate, önek Pompa_P103.
- İkinci pencere — aynı sayfa Pompa_P103 tag'lerini gösterir (hız 80, akım 16.8).
Var olan sayfayı faceplate yapma
Bir sayfayı sonradan faceplate yapmak için Sayfa özellikleri › Genel › Sayfa türü alanında Faceplate (açılır pencere)'yi seçin; sayfa Faceplate'ler dalına geçer. Kullanıcı veri tipi sınıfında Yapı (UDT)'yı seçin; Tasarım örneği isteğe bağlıdır (pencere önek verilmeden açılırsa bu örneğin değerleri gösterilir), Yapının örnekleri satırı pencerenin hangi öneklerle açılabileceğini listeler (Sayfa özellikleri).
Önek nasıl çözülür
- Üye bağlaması (öneksiz
Hiz): Live<önek>.<üye adı>tag'ini okur;Pompa_P103önekiylePompa_P103.Hiz. Önek yoksa ya da o örnekte tag yoksa bağlantı güvenilmez sayılır ve nesne soluk gri çizilir. - Noktalı tag bağlaması (eski biçim, örneğin
Motor1.Hiz'e bağlı nesne): Live ilk noktadan öncesini önekle değiştirir;Motor2önekiyleMotor2.Hiz. Bu biçimle hazırlanmış sayfalar aynen çalışır. Noktasız (ortak) tag'ler önekten etkilenmez. - Olaylar: faceplate'teki butonun işlevleri de önekle çözülür; P103 penceresindeki buton yalnız
Pompa_P103tag'lerine yazar. - Önekin kaynağı şu sırayla belirlenir: işlev satırındaki Tag öneki; boşsa pencereyi açan olayın görünümünün öneki (pencereden pencere açarken önek devralınır); o da yoksa sayfanın Tasarım örneği. Yeni Faceplate ile oluşturulan sayfada tasarım örneği seçili değildir.
- Sayfa aç işlevi de bir faceplate'i açabilir; pencere olarak açılır ve önek olarak olayın görünümünün önekini taşır. Önek vermeniz gerekiyorsa Açılır pencere aç kullanın.
- Betikler: VBS ve Python olay kodunda öneksiz yazılan tag adı (
Hiz) projede bu adda tag yoksa pencerenin önekiyle aranır; C'de önekGetServerTagPrefixile alınır. JavaScript betiklerinde göreli ad yoktur; tam tag adını yazın (Betikler).
Açılır pencerenin Live'daki davranışı
- Pencere başlık çubuğu ve kapatma düğmesiyle açılır, başlık çubuğundan sürüklenir. Birden çok pencere açılabilir: her yeni pencere biraz kaydırılarak açılır, başlık çubuğu ekranın içinde kalır; tıklanan pencere öne gelir.
- Aynı faceplate aynı örnekle zaten açıksa ikinci pencere açılmaz; açık olan öne gelir.
- Pencere modal değildir: arkadaki sayfa kullanılmaya devam eder.
- Pencerenin boyutu ana sayfanın o andaki ölçeğiyle orantılı küçültülür; ekrana sığmayacak kadar büyük pencere sığdırılır.
- Pencere Açılır pencereyi kapat işleviyle ya da başlıktaki × ile kapanır. Pencere sayfasının Sayfa açılınca / Sayfa kapanınca olayları önek taşıyan görünümde çalışır.
- Sayfanın Gerekli yetki alanı doluysa ve kullanıcının yetkisi yoksa pencere açılmaz: oturum kapalıysa giriş penceresi, açıksa bildirim çıkar. Taslak sayfa açılmaz.
- Tarayıcıdan izlemede pencere açılabilir; TV ekranlarında olaylar çalışmadığından açılmaz.
Sayfa Penceresi nesnesi
Sayfa Penceresi (Araç kutusu › Kontroller), başka bir sayfayı bu sayfanın içinde çalıştırır. Üç kullanımı vardır: bir faceplate'i sayfaya gömmek, sayfanın bir bölümünü değiştirilebilir alan yapmak (düğmelerle farklı sayfalar gösterilir), 3B sahneyi 2B sayfaya yerleştirmek.
- Gösterilen sayfa
- Pencerede çalışacak sayfa. Sayfa kendi içinde (doğrudan ya da dolaylı) gösterilemez; böyle bir pencere boş kalır.
- Tag öneki
- Gösterilen sayfanın öneki (
Pompa_P101); üye bağlamaları ve noktalı tag'ler yukarıdaki kurallarla çözülür. Boşsa nesnenin içinde bulunduğu görünümün öneki kullanılır. Öneki tag'e bağlayabilirsiniz (metin tag'inin değeri önek olur); değer değişince sayfa yeni önekle yeniden kurulur. Gösterilen sayfa bir yapının faceplate'iyse alan, yapının örneklerini öneri olarak sunar. - Başlık çubuğu, Başlık metni
- Başlık çubuğu açıksa pencerenin üstünde başlık yazılır; boş Başlık metni yerine sayfanın adı kullanılır. Başlık metni tag'e bağlanabilir.
- Sayfayı pencereye sığdır
- Açıkken sayfa, oranı korunarak nesneye sığdırılır; kapalıyken sayfa alanı dolduracak biçimde ölçeklenir, sol üste hizalanır ve taşan kısım kırpılır.
- Kapatma düğmesi
- Aşağıdaki sınırlamaya bakın.
Gömülü pencerenin içeriği değişken olsun istiyorsanız düğmenin olayına Sayfa penceresinde sayfa göster işlevini ekleyin: Sayfa penceresi olarak nesneyi, Sayfa olarak yeni içeriği seçin. Pencere başka bir sayfadaysa (örneğin sabit üst alandaki gezinti düğmeleri ana sayfadaki pencereyi değiştirsin) listede Sayfa: … grubundan seçilir; o sayfa açıkken çalışır.
Sınırlar ve dikkat edilecekler
- Şablon yalnız oluştururken uygulanır. Yapıya sonradan eklenen üyenin nesnesini faceplate'e kendiniz ekleyin. Silinen üyeye bağlı nesne ve işlevler Araçlar›Projeyi denetle'de silinmiş bir yapı üyesine bağlı hatası verir; sayfanın yapısı boşaltılır ya da başka yapı seçilirse üye bağlamaları da hata olarak listelenir.
- Trend ve alarm nesneleri. Trend Görünümü'nün eğri tag'leri ve alarm nesnelerinin kendi tag listeleri yapı üyelerini sunmaz. Trend eğrisine bir örneğin tag'ini (
Pompa_P101.Hiz) seçin; tag kaynaklı eğri noktalı tag kuralıyla pencerenin örneğine çevrilir. - Önek düz metindir. İşlev satırında ve Sayfa Penceresi nesnesinde ad olarak saklanır. Bir yapı örneğini yeniden adlandırırsanız pencereyi açan işlevlerdeki öneki de değiştirin.
- Faceplate, Live'ın sistem menüsündeki sayfa listesinde yer almaz ve favori yapılamaz; bir işlev (nesne olayı, menü / araç çubuğu öğesi), betik ya da Sayfa Penceresi açar.
- Faceplate sayfası ve içindeki nesneler diğer sayfalardan farklı değildir: katmanlar, animasyonlar ve olaylar aynı biçimde çalışır (Nesne özellikleri, Animasyonlar).