2-3 adet siemens s7 1200 - 1500 gibi plc den verileri alıp excele işlemek istiyorum. OPC ua gibi ara yazılımlar var. Bunlar olmadan yapabilir miyim ? Ya da bu tip çalışma yapan bir arkadaş var ise tecrübelerini paylaşabilir mi ?
Videodan çok bir şey çıkaramadım açıkcası. Birde birden fazla plcden veri alacağım. En basit yöntemiyle yada ara uygulaması ücretli olmayan program tavsiyeniz varsa sevinirim.
Videodan çok bir şey çıkaramadım açıkcası. Birde birden fazla plcden veri alacağım. En basit yöntemiyle yada ara uygulaması ücretli olmayan program tavsiyeniz varsa sevinirim.
Detaylı bir şekilde yönlendiremem ama araştırmanız açısından bir kaç alternatif sunabilirim.
1- C# ile program yazıp .NET OPC UA client komutları kullanarak veriyi çekersiniz, .NET Excel interop ile de çektiğiniz verileri excele kaydedersiniz. Ya da farklı bir kütüphane ile de excele aktarablirsiniz.
3- Herhanginir programlama dilinin S7-Comm kütüphanesi(3. parti kişiler tarafından yazılmıştır) ile yine verileri çekersiniz PLC de PUT/GET komutlarını açmak gerekir. Daha sonra yine excell dosyaları ile işlem yapan bir kütüphane ile çektiğiniz verileri excelle aktarırsınız.
Yüksek lisans tezim için yapmıştım. Realtime veri işlenmeyecekse belirli bir zaman aralığı için sonradan kullanacaksanız winCC de istediğiniz zaman aralığında zaman damgalı alınan verilerle bir trend oluşturup sonra bu trend verilerini scada'daki trend takip ekranından csv dosyası olarak export edebilirsiniz.
illa realtime veri alacağım diyorsanız VBScript ile *.CSV yazarsın, sonra bunu excele import edersin hücre hücre görürsün. WinCC Runtime -> seçtiğin TAG -> ES PC’de lokal diskine bir CSV dosyasına yazar. Aşağı zaman damgalı motor akımı verisini yazan bir örnek kod bırakıyorum. Burada global scriptin cyclic ayarı neyse o sürede bir örnekler. Veri ihtiyacı, PLC yükü, dosya boyutu üçgeninde bir süre belirlersiniz.
Kod:
Sub Log_Tag_To_CSV()
Dim fso, file
Dim path
Dim tagValue
path = "C:\WinCC\TagLog.csv"
tagValue = HMIRuntime.Tags("Motor_Akim").Read
Set fso = CreateObject("Scripting.FileSystemObject")
If Not fso.FolderExists("C:\WinCC") Then
fso.CreateFolder("C:\WinCC")
End If
Set file = fso .OpenTextFile(path, 8, True)
file.WriteLine Now & ";" & tagValue
file.Close
End Sub