ST ile DPLSV komutu sürme
- DeisS
- Mesajlar: 77
- Kayıt: 08 Mar 2021, 15:07
- İletişim:
- Durum: Çevrimdışı
ST ile DPLSV komutu sürme
Merhabalar.
Delta PLC ile yeni çalışmıyorum ve ST dilini yeni öğreniyorum.
Resimde görülen DPLSV komutunu ST ile sürmeye çalıştığımda ilk sürüşte sorun olmuyor ama komutu ikinci defa aktif ettiğimde DPLSV komutu çalışmıyor.
Hatamın nerede olduğunu bulamadım yardımcı olurmusunuz?
Bu arada elimde gerçek PLC olmadığı için bu işlemleri simulasyonda deniyorum.
Delta PLC ile yeni çalışmıyorum ve ST dilini yeni öğreniyorum.
Resimde görülen DPLSV komutunu ST ile sürmeye çalıştığımda ilk sürüşte sorun olmuyor ama komutu ikinci defa aktif ettiğimde DPLSV komutu çalışmıyor.
Hatamın nerede olduğunu bulamadım yardımcı olurmusunuz?
Bu arada elimde gerçek PLC olmadığı için bu işlemleri simulasyonda deniyorum.
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
- DeisS
- Mesajlar: 77
- Kayıt: 08 Mar 2021, 15:07
- İletişim:
- Durum: Çevrimdışı
Re: ST ile DPLSV komutu sürme
Kod: Tümünü seç
m_ayHiz_Tersleme := hmi_m_ayHiz * -1 ;
m_igHiz_Tersleme := hmi_m_igHiz * -1 ;
IF NOT(Otomatik) AND NOT(Home_Basla) THEN
IF hmi_mIleri_S1 AND NOT(hmi_mGeri_S1) AND NOT(xİleriSensor_R1) THEN
DPLSV( hmi_m_igHiz , yPals_S1 , yYon_S1 );
END_IF;
IF hmi_mGeri_S1 AND NOT(hmi_mIleri_S1) AND NOT(xGeriSensor_R1) THEN
DPLSV( m_igHiz_Tersleme[0] , yPals_S1 , yYon_S1 );
END_IF;
IF hmi_mAsagi_S2 AND NOT(hmi_mYukari_S2) AND NOT(xAsagiSensor_R1) THEN
DPLSV( hmi_m_ayHiz , yPals_S2 , yYon_S2 );
END_IF;
IF hmi_mYukari_S2 AND NOT(hmi_mAsagi_S2) AND NOT(xYukariSensor_R1) THEN
DPLSV( m_ayHiz_Tersleme[0] , yPals_S2 , yYon_S2 );
END_IF;
IF NOT(hmi_mIleri_S1) AND NOT(hmi_mGeri_S1) THEN
yPals_S1 := FALSE ;
yYon_S1 := FALSE ;
END_IF;
IF NOT(hmi_mYukari_S2) AND NOT(hmi_mAsagi_S2) THEN
yPals_S2 := FALSE ;
yYon_S2 := FALSE ;
END_IF;
END_IF;
- DeisS
- Mesajlar: 77
- Kayıt: 08 Mar 2021, 15:07
- İletişim:
- Durum: Çevrimdışı
- Coşkun
- Mesajlar: 210
- Kayıt: 07 Mar 2018, 14:26
- İletişim:
- Durum: Çevrimdışı
Re: ST ile DPLSV komutu sürme
Merhaba,
Çalışan kod örneğini aşağıda paylaşıyorum.
İyi çalışmalar dilerim.
Çalışan kod örneğini aşağıda paylaşıyorum.
Kod: Tümünü seç
m_ayHiz_Tersleme := hmi_m_ayHiz * -1 ;
m_igHiz_Tersleme := hmi_m_igHiz * -1 ;
IF hmi_mIleri_S1 AND NOT(hmi_mGeri_S1) AND NOT(xİleriSensor_R1) THEN
DPLSV( hmi_m_igHiz , yPals_S1 , yYon_S1 );
ELSIF hmi_mGeri_S1 AND NOT(hmi_mIleri_S1) AND NOT(xGeriSensor_R1) THEN
DPLSV( m_igHiz_Tersleme , yPals_S1 , yYon_S1 );
ELSE
SM470 := TRUE; //Output completion auto-reset Y0.0
END_IF;
IF hmi_mAsagi_S2 AND NOT(hmi_mYukari_S2) AND NOT(xAsagiSensor_R1) THEN
DPLSV( hmi_m_ayHiz , yPals_S2 , yYon_S2 );
ELSIF hmi_mYukari_S2 AND NOT(hmi_mAsagi_S2) AND NOT(xYukariSensor_R1) THEN
DPLSV( m_ayHiz_Tersleme , yPals_S2 , yYon_S2 );
ELSE
SM490 := TRUE; //Output completion auto-reset Y0.2
END_IF;
//SM470 := TRUE; //Output completion auto-reset Y0.0
//SM490 := TRUE; //Output completion auto-reset Y0.2
//SM510 := TRUE; //Output completion auto-reset Y0.4
//SM530 := TRUE; //Output completion auto-reset Y0.6
//SM550 := TRUE; //Output completion auto-reset Y0.8
//SM570 := TRUE; //Output completion auto-reset Y0.10
İyi çalışmalar dilerim.
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
Coşkun Özdemir - Senior Field Application Engineer - DELTA Electronics Turkey
- DeisS
- Mesajlar: 77
- Kayıt: 08 Mar 2021, 15:07
- İletişim:
- Durum: Çevrimdışı
Re: ST ile DPLSV komutu sürme
Coşkun Bey öncelikle teşekkürler.
Aklıma takılan birşey daha sormak istiyorum.
Bu şekilde sistem doğru ve güzel çalışıyor.
Peki ben programın başka bir yerinde ilgili çıkışları DDRVA,DDRVI,DZRN gibi farklı komutlarıda çalıştırmak istediğimde buradaki ELSE şartı bu çalışmayı engelleyecek.
Bunun önüne geçmek için ne yapabilirim?
Teşekkür ederim.
Aklıma takılan birşey daha sormak istiyorum.
Bu şekilde sistem doğru ve güzel çalışıyor.
Peki ben programın başka bir yerinde ilgili çıkışları DDRVA,DDRVI,DZRN gibi farklı komutlarıda çalıştırmak istediğimde buradaki ELSE şartı bu çalışmayı engelleyecek.
Bunun önüne geçmek için ne yapabilirim?
Teşekkür ederim.
- Coşkun
- Mesajlar: 210
- Kayıt: 07 Mar 2018, 14:26
- İletişim:
- Durum: Çevrimdışı
Re: ST ile DPLSV komutu sürme
Merhaba,
Tamamen tüm IF koşullarını bir başka IF koşulu içerisine alabilirsiniz. Örneğin bu manuel için bir çalışma olur ve manuel şartı kalkınca ELSE şartı da çalışmaz.
Yada aşağıdaki gibi bir ELSIF yapabilirsiniz.
Özel bitler ve komutların kullanımı için daha detaylı bilgiye ulaşmak isterseniz aşağıdaki linkte bulunan "AS Series Programming Manual" dokümanından faydalanabilirsiniz.
AS PLC Manuals
İyi çalışmalar dilerim
Tamamen tüm IF koşullarını bir başka IF koşulu içerisine alabilirsiniz. Örneğin bu manuel için bir çalışma olur ve manuel şartı kalkınca ELSE şartı da çalışmaz.
Yada aşağıdaki gibi bir ELSIF yapabilirsiniz.
Kod: Tümünü seç
m_ayHiz_Tersleme := hmi_m_ayHiz * -1 ;
m_igHiz_Tersleme := hmi_m_igHiz * -1 ;
IF hmi_mIleri_S1 AND NOT(hmi_mGeri_S1) AND NOT(xİleriSensor_R1) THEN
DPLSV( hmi_m_igHiz , yPals_S1 , yYon_S1 );
Komut_Aktif_1 := TRUE;
ELSIF hmi_mGeri_S1 AND NOT(hmi_mIleri_S1) AND NOT(xGeriSensor_R1) THEN
DPLSV( m_igHiz_Tersleme , yPals_S1 , yYon_S1 );
Komut_Aktif_1 := TRUE;
ELSIF NOT(hmi_mIleri_S1) AND NOT(hmi_mGeri_S1) AND Komut_Aktif_1 THEN
SM470 := TRUE; //Output completion auto-reset Y0.0
Komut_Aktif_1 := FALSE;
END_IF;
IF hmi_mAsagi_S2 AND NOT(hmi_mYukari_S2) AND NOT(xAsagiSensor_R1) THEN
DPLSV( hmi_m_ayHiz , yPals_S2 , yYon_S2 );
Komut_Aktif_2 := TRUE;
ELSIF hmi_mYukari_S2 AND NOT(hmi_mAsagi_S2) AND NOT(xYukariSensor_R1) THEN
DPLSV( m_ayHiz_Tersleme , yPals_S2 , yYon_S2 );
Komut_Aktif_2 := TRUE;
ELSIF NOT(hmi_mYukari_S2) AND NOT(hmi_mAsagi_S2) AND Komut_Aktif_2 THEN
SM490 := TRUE; //Output completion auto-reset Y0.2
Komut_Aktif_2 := FALSE;
END_IF;
//SM470 := TRUE; //Output completion auto-reset Y0.0
//SM490 := TRUE; //Output completion auto-reset Y0.2
//SM510 := TRUE; //Output completion auto-reset Y0.4
//SM530 := TRUE; //Output completion auto-reset Y0.6
//SM550 := TRUE; //Output completion auto-reset Y0.8
//SM570 := TRUE; //Output completion auto-reset Y0.10
Özel bitler ve komutların kullanımı için daha detaylı bilgiye ulaşmak isterseniz aşağıdaki linkte bulunan "AS Series Programming Manual" dokümanından faydalanabilirsiniz.
AS PLC Manuals
İyi çalışmalar dilerim
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
Coşkun Özdemir - Senior Field Application Engineer - DELTA Electronics Turkey
- DeisS
- Mesajlar: 77
- Kayıt: 08 Mar 2021, 15:07
- İletişim:
- Durum: Çevrimdışı
Re: ST ile DPLSV komutu sürme
Coşkun Bey;
Merhabalar.
DZRN komutunu görseldeki şekilde kullanmaya çalıştığımda
Vermiş olduğunuz CASE kullanım örneğinden yola çıkarak DZRN komutu ilk seferde çalışıyor ama daha sonrasında PLC stop-run konumunu değiştirmeden veya yeniden enerjilenmeden ikinci defa çalışmıyor.
Buradaki hata veya eksik nedir acaba?
AS plc manuelinde DZRN ile ilgili ST kullanım örneğine yer verilmemiş.
Merhabalar.
DZRN komutunu görseldeki şekilde kullanmaya çalıştığımda
Vermiş olduğunuz CASE kullanım örneğinden yola çıkarak DZRN komutu ilk seferde çalışıyor ama daha sonrasında PLC stop-run konumunu değiştirmeden veya yeniden enerjilenmeden ikinci defa çalışmıyor.
Buradaki hata veya eksik nedir acaba?
AS plc manuelinde DZRN ile ilgili ST kullanım örneğine yer verilmemiş.
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
- Coşkun
- Mesajlar: 210
- Kayıt: 07 Mar 2018, 14:26
- İletişim:
- Durum: Çevrimdışı
Re: ST ile DPLSV komutu sürme
Merhaba,
Konu ile ilgili gerekli bildirimler yapılmıştır. Sorunun çözümü için bir gelişme olduğunda sizi buradan bilgilendireceğim.
Saygılarımla, İyi çalışmalar dilerim.
Konu ile ilgili gerekli bildirimler yapılmıştır. Sorunun çözümü için bir gelişme olduğunda sizi buradan bilgilendireceğim.
Saygılarımla, İyi çalışmalar dilerim.
Coşkun Özdemir - Senior Field Application Engineer - DELTA Electronics Turkey
- Coşkun
- Mesajlar: 210
- Kayıt: 07 Mar 2018, 14:26
- İletişim:
- Durum: Çevrimdışı
Re: ST ile DPLSV komutu sürme
Merhaba,
Şu an için DZRN ve DZRN2 komutları ST programlama dilini desteklememektedir.
Aşağıdaki resimde "Auto Reset" bayrağının desteklendiği komutlar gösterilmektedir.
Saygılarımla, iyi çalışmalar dilerim.
Şu an için DZRN ve DZRN2 komutları ST programlama dilini desteklememektedir.
Aşağıdaki resimde "Auto Reset" bayrağının desteklendiği komutlar gösterilmektedir.
Saygılarımla, iyi çalışmalar dilerim.
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
Coşkun Özdemir - Senior Field Application Engineer - DELTA Electronics Turkey
- Coşkun
- Mesajlar: 210
- Kayıt: 07 Mar 2018, 14:26
- İletişim:
- Durum: Çevrimdışı
Re: ST ile DPLSV komutu sürme
Merhaba,
DZRN ve DZRN2 komutları, AS200 FW 1.10.30 ve sonrasındaki FW' lerde, ST programlama dili tarafından desteklenmektedir.
Saygılarımla, iyi çalışmalar dilerim.
DZRN ve DZRN2 komutları, AS200 FW 1.10.30 ve sonrasındaki FW' lerde, ST programlama dili tarafından desteklenmektedir.
Saygılarımla, iyi çalışmalar dilerim.
Coşkun Özdemir - Senior Field Application Engineer - DELTA Electronics Turkey