Basit S7 200 300 400 1200 Connect v0.1

ahmetbogus

Üye
Katılım
11 Kas 2006
Mesajlar
270
Puanları
1
S7 200/300/400/1200 PLC'lere(ETH ,MPI PPI Yada S7 dll ile) baglanıp
Data okuyup yazan basit bir program.

C# ile yazılmıştır.Libnodave kütüphanesinden yararlanıldı.

.NET framework 3.5 gerektirir.
177.5Kb




link.s7 Connect v.01 - My files - DOSYA PAYLASIMI - AHMET BOGUS ELECO TEST DRIVE

silinmesin diye kendi şahsi blog siteme yükledim.
Reklam gibi bir amacım yoktur.

not:
Tarafımdan S7 400 PLC ile denenmiş olmakla birlikte programın herhangi bir garantisi yoktur.


iyi çalışmalar.
 
Teşekkürler paylaşım için. Data okuyup yazma derken neler olabiliyor?
 
hafıza alanı olarak:

shared datablok
instance datablok
flag
input
output
counter
timer
periphery

alanlarına data tipi olarak:

BYTE
WORD
INT
REAL
DWORD
BOOL
S5TIME
IEC32 TIME
COUNTER
TIME OF DAY
DATE
Veri tipleri ile okuma yazma yapılmaktadır.

s7 connect test sekmesinde görebilirsiniz.

bu programı s7 manager olmayan bir yerden data izlemem gerektiği zaman yazmıştım.
Çok kapsamlı değil ama işimi görüyordu.

örnek1:bool degere yazarken TRUE FALSE KULLANIN.
örnek2:db58 dbx 42.1 de bulunan bool alana yazmak için db alanına 58 girin.
startpos3 adresine ise 42*8+1=337 girin
deger kısmına true yada false degerinizi girin mesela
örnek3:db58 db14 alanındaki real degeri okumak için db no alanına 58 girin
startpos2 alanına 14 girin tip olarak da real 'i seçiniz.
okunan degerler guncel deger alanında gözükecektir.

iyi çalışmalar.
not1:bilinen bir degeri okuyarak önce bir test yapmanız önerilir.
not2:

aynı anda birden fazla veri tipi ile düzgün çalışmamaktadır.

yani databloktaki birden fazla alanı okurken mesela hepsini REAL olarak okursunuz yada byte yada dword .
 
ayrıca live dataları trend olarak izleme yapabilirsiniz.
yakında DevExpress.XtraGauges ve Charts ile görselleştirilmiş basit bir örnek ekleyecegim.
 

s7 300, s7 400,plcsim ,soft plc ile denenmiştir.
eger elinizde hardware yok ise plcsim ile tek bir PC de deneme yapabilirsiniz.
bunun için loopback baglantı ya da bir switch (10/100 Mbit) gerekmektedir.
en pratiği loopback driver yüklemektir.

örnek zEn01_13 cont pid kontrolkalemi.com sitesinde bulabilirsiniz.

not:stabilite açısından trend çiziminde noktaları gizlemeniz önerilir.
çünkü nokta adeti artınca program aşırı yavaşlamaktadır.

Gelecek versiyonda trend datalarının mysql e aktarımını yapmayı düşünüyorum.
 
Yöneticilerden mümkünse konuyu PID bölümüne taşımalarını rica ediyorum.

Çünkü uygulama artık PID parametre testleri yapılması şeklinde özelleştirilmektedir.
 
s7 Connect v.0.15


download:
http://ahmetbogus.dmon.com/load/0-0-0-40-20
release v0.13.rar indirdikten sonra bu exe yi 0.13 ile degistirin.
trend sag tık a SP,PV,CO gizle göster ekledim.çünkü grafikte çakışma olunca gizleme ihtiyacı oluyordu.
daha önce Sp(setpoint ) ile PV (process value) izleniyordu.
ilave olarak LMN yada diger adıyla CO (Controller Out) eklendi.
(analog outputa giden degerin % ile temsili)

Hızlı export eklendi.C:\ ye direk olarak o anki grafik pdf olarak kaydedilir.
 
yakında bir örnek program ekleyeceğim libnodave ile plcden tek bir degeri timer ile okuyup gösteren uygulama kaynak kodları ile (C#)
ilk müsait oldugumda eklerim.
iyi çalışmalar.

visual studio 2008 ile hazırladım( netfx3.5)

programın orjinali de içerisinde paketin netfx2
kendim yazmadım internetten bulmuştum bunu
sadece modifiye ettim.
tek bir data okuyup ekranda gösteriyor.
libnodave sample vs2008 source code
[ Download from this server (2.02Mb) ]

http://ahmetbogus.dmon.com/load/0-0-0-51-20
 
Moderatör tarafında düzenlendi:
hocam çok güzel bir paylaşım ve bende bu konu ile ilgili yeni çalışmalara başladım ancak dosyalarınızda bır sıkıntı var galıba sanırsam server da başka bir siteye katmamız mumkunmu acaba
 
Merhaba Hocam, s7 connect Release v 0.13.rar çalıştırdığımız zaman hata gönderme sayfası çıkıyor.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…