Thursday, May 27, 2010

HMI Report

HMI Report adalah software untuk design dan bikin report dimana user bisa mengambil data dari Wonderware InTouch, Historian, atau sumber lain dengan mudah.

Contoh Report:


Keuntungan HMI Report:
  • Waktu pembuatan report lebih cepat (drag and drop, template)
  • Integrasi dengan Historian, InTouch lebih mudah
  • Publish report ke Web Portal
Konektivitas:
  • Driver untuk InTouch dan Historian
  • Driver untuk Protocol ODBC, OLE DB, OPC, dan HMI vendor lain
Report:
  • Dalam bentuk PDF, Excel, Email
  • Reports berdasarkan Event (mis: Batch Complete), Schedule(mis: per Shift), dan On Demand
  • Suport Security untuk menentukan siapa saja yang bisa mengakses report, modifikasi, dan generate

Modul HMI Report:


  • HMI Reports Studio: Report Design & Development
  • HMI Reports Runtime: Generate & Distribute Report
  • HMI Reports Generator: Scheduling & Create Ad Hoc report
  • Web Portal: Share reports over intranet or internet

Diagram:

Wednesday, May 26, 2010

Basic Wonderware InTouch (HMI)

HMI:


Penjelasan HMI dapat di sederhanakan seperti gambar diatas:
1. Mata --> Visual
2. Tangan --> Control
3. Device --> PLC, DCS, Controller

Visual + Control ----> Devices


Penjelasan detail bisa dilihat pada gambar dibawah ini:


Contoh Wonderware InTouch HMI Screen:


Dari screen diatas, kita bisa melihat Proses yang terjadi di Plant (Visual), melakukan perubahan parameter (Control), melihat Trend (Nilai yang ditampilkan dalam bentuk grafik), dan Alarm yang terjadi di Plant.


General Diagram koneksi Wonderware InTouch ke Device:


Kabel yang digunakan, sesuai dengan device yang dihubungkan. Yang umum dipakai: Serial (RS 232, Ethernet, Special Bus).

Gambar di bawah adalah contoh koneksi yang menggunakan Special Bus (Modbus +, Profibus, DH+). Yang perlu diperhatikan, jika menggunakan Special Bus, di PC harus ada Card tambahan.


Koneksi beberapa PLC menggunakan Ethernet (PLC harus memiliki ethernet module)


Kita tahu, ada banyak sekali merk PLC, antara lain:


Dimana masing-masing PLC memiliki protocol berbeda:


Pertanyaannya: Bagaimana menghubungkan PLC dengan berbagai merk, ke Wonderware InTouch? Padahal masing - masing PLC punya protocol yang berbeda.


Sebelum menjawab pertanyaan diatas, kita perlu tahu terlebih dahulu, protocol apa yang digunakan oleh Wonderware InTouch:


Kalau digambarkan, secara diagram:


Karena beda protocol, antara Wonderware InTouch dan Device, belum bisa berkomunikasi.
Bagaimana solusinya?
Koneksi antara Wonderware dan Device bisa dianalogikan seperti koneksi PC dan Printer:


Supaya PC bisa mengenali printer, diperlukan "Driver". Demikian pula pada koneksi Wonderware InTouch dan Device. Supaya bisa berkomunikasi, mesti diinstall "Driver" yang sesuai. Driver inilah yang biasa dikenal sebagai IO Server / DA Server / OPC Server.


Tidak semua OPC Server support protocol DDE / Suitelink. Untuk OPC Server yang tidak support DDE / Suitelink, solusinya menggunakan OPC Link / FS Gateway.





Note:

IO Server, DA Server, OPC Server, FS Gateway, OPC Link: Software
DA Server merupakan versi terbaru dari IO Server, demikian pula FS Gateway, merupakan versi terbaru dari OPC Link.

IP Camera

Kita dapat mengakses IP Camera di PC dengan bantuan Web browser.
Caranya, cukup mengetik alamat IP Camera di browser. Misalkan IP Camera kita memiliki address 192.168.0.1, ketikkan 192.168.0.1 pada browser.

Pertanyaannya, bagaimana cara mengakses IP Camera di Wonderware InTouch?
Kita butuh bantuan ActiveX Web browser. Defaultnya, ActiveX ini belum terinstall di InTouch.
Nama ActiveX untuk Web browser: Microsoft Web Browser

Untuk menginstall ActiveX di InTouch, masuk ke Special - Configure - Wizard/ActiveX installation. Pilih tab ActiveX Control Installation, cari Microsoft Web Browser, klik install.


Microsoft Web Browser akan masuk ke list Installed ActiveX Control.



Setelah terinstall, langkah berikutnya adalah cara penggunaan Web Browser.

1. Pasang Web browser pada window InTouch, masuk ke Wizard, pilih Exporer.



2. Pasang script pada Windows Script - On Show, dengan cara klik Insert - ActiveX - Explorer1 - Navigate. Ganti bagian dalam Navigate dengan IP Address Kamera :)

Monday, May 24, 2010

Recipe Manager

Recipe Manager:
  • Komponen dari InTouch yang berfungsi membaca Data Recipe (csv).
  • Digunakan untuk load setpoint secara otomatis.
Contoh kasus:

Misalkan pada pabrik Coklat, ada dua produk: Light Chocolate, Dark Chocolate.
Bahan yg digunakan adalah campuran dari Chocolate, Sugar, dan Water.

Resep campuran untuk Dark Chocolate Bar:
Chocolate: 3000
Sugar: 2750
Water: 2000

Resep campuran untuk Light Chocolate Bar:
Chocolate: 2000
Sugar: 3250
Water: 2000

Untuk mengisi nilai setpoint di InTouch secara otomatis, kita bisa menggunakan Recipe Manager.

Jalankan Recipe Manager:
Start Program - Wonderware - InTouch - Recipe Manager.

Cek gambar di bawah untuk design recipe secara umum:



Untuk bikin recipe baru, masuk ke File - New.
Yang pertama kita lakukan adalah masuk ke Template Definition.
Masukkan nama bahan ke kolom item name, dan tipenya ke kolom item type.



Berikutnya adalah Recipe Definition. Masukkan resep untuk Light dan Dark Chocolate sesuai dengan campuran resep yang sudah didefinisikan.



Setelah selesai, masuk ke Unit Definition. Fungsi dari Unit Definition adalah menghubungkan proses parameter yang sudah kita bikin di template definition, dengan tag di InTouch.
Cek gambar dibawah, proses menggunakan 2 buah Mixer, Mixer_1 dan Mixer_2. Masing - masing Mixer memiliki tag sendiri - sendiri.

InTouch Tag untuk Mixer_1 misalkan:
Mixer_1_Chocolate_Amount
Mixer_1_Milk_Amount
Mixer_1_Water_Amount

InTouch Tag untuk Mixer_2 misalkan:
Mixer_2_Chocolate_Amount
Mixer_2_Milk_Amount
Mixer_2_Water_Amount


Langkah terakhir, Save Recipe :)

Bagaimana cara menggunakan Recipe di InTouch?
Pilih unit yang akan dipakai (Mixer) menggunakan script RecipeSelectUnit()
Contoh script:

RecipeSelectUnit( "C:\Chocolate.csv", UnitName, 131 );
UnitName: Message tag untuk menyimpan nama Unit yang sudah dipilih.


Panggil recipe dengan script RecipeSelectRecipe()
Contoh script:

RecipeSelectRecipe( "C:\Chocolate.csv", RecipeName, 131 );
RecipeName: Message tag untuk menyimpan nama Recipe yang dipilih. Lihat gambar dibawah, misalkan kita klik Dark Chocolate Bar, maka tagname RecipeName akan berisi Dark Chocolate Bar.


Load recipe menggunakan script RecipeLoad(), secara otomatis, nilai setpoint akan didownload ke InTouch tag yang sudah ditentukan.

Contoh Connection String

Ke MS Access menggunakan OLEDB
SQLConnect("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;”);

Ke MSSQL Server menggunakan OLEDB
SQLConnect("Provider=SQLOLEDB.1;User ID=UserIDStr; Password=PasswordStr;Initial Catalog=DatabaseName;Data Source=ServerName;" );

Ke Oracle menggunakan Oracle OLEDB
SQLConnect(ConnectionId, "Provider=MSDAORA; Data Source=OracleServer; User ID=SCOTT; Password=TIGER;");

Ke MySQL menggunakan ODBC
SQLConnect(ConnectionId,“DSN=MySQLDB;DB=Sample;User ID=root;Password=root123");

Friday, May 7, 2010

Save Data ke CSV / TXT

Untuk save data dari InTouch ke CSV / TXT, bisa menggunakan script filewritemessage.

Syntax
[result = ] FileWriteMessage (filename, offset, messagetag, linefeed)

Parameters
filename:
Name of the file to write the data to. A literal string value, a message tagname, or a string expression.

offset:
Location (in bytes) in the file to start writing to. Set it to -1 to write data to the end of the file (append). A literal integer value, integer tagname, or integer expression.

messagetag:
Message tagname that contains the data to be written to the file.

linefeed:
Specifies whether to write a line feed (LF) character after writing the data to the file. Set to 1 to write a line feed character; otherwise, set it to 0. A literal Boolean value, discrete tagname, or Boolean expression.

Example(s)
This script writes the value of a message tagname MsgTag to the end of the file c:\Data\File.txt.

FileWriteMessage("c:\Data\File.txt",-1,MsgTag,1);


Yang perlu diperhatikan, script ini hanya bisa save data dalam bentuk message.
Pertanyaannya, bagaimana save data non message, misalkan integer, real?

Bisa menggunakan konversi, data integer / real kita konversi terlebih dahulu ke string dengan menggunakan script.

Script untuk konversi dari integer ke string:

Syntax
result = StringFromIntg (number, base)

Parameters
number:
A literal integer value, integer tagname, or integer expression.

base:
The base of the conversion. This is used for converting the value to a different base, such as binary (2), decimal (10) or hexadecimal (16). A literal integer value, integer tagname, or integer expression.

Example(s)
StringFromIntg(26,10) returns “26” (decimal).


Contoh kasus:
Kita ingin save nilai sebuah tagname integer ke csv file, misalkan nama tagname: level

Langkah yang dilakukan secara umum:
  • konversi tagname integer ke string
  • save nilai tagname ke file
script:
{bikin variabel lokal untuk menyimpan sementara nilai hasil konversi}
Dim temp_level as message;

{konversi dari integer ke string, hasilnya disimpan ke variabel lokal temp_level}
temp_level = stringfrominteger(level,10);

{simpan ke file.csv}
FileWriteMessage("c:\report.csv",-1,temp_level,1);

Troubleshooting Tips

Tips:
  • Before installing the Software: Check Hardware and Software requirements (readme.html)
  • Check any Patch / Service Pack
  • Using System Management Console (SMC) for error checking - Logger
  • Using Wonderware Knowledge Base CD - Tutorial, FAQ
  • Google is your best Friend :) - Search any error using Google
  • Contact Technical Support

Thursday, May 6, 2010

Alarm DB Logger Manager

Untuk menyimpan data alarm ke database, bisa menggunakan Alarm DB Logger Manager.
Software yang dibutuhkan:

- Wonderware InTouch
- SQL Server / MSDE

Note: MSDE: Versi free dari SQL Server.

Cara konfigurasinya:

Jalankan aplikasi Alarm DB Logger Manager: Start - All Program - Wonderware - InTouch - Alarm DB Logger Manager.


Berikutnya adalah konfigurasi Alarm DB Logger Manager, klik Settings.


Field yang harus diisi:
Server Name: Nama komputer dimana SQL Server diinstall.
Database: Nama Alarm Database, defaultnya adalah WWALMDB. Bisa kita ganti dengan nama yang lain.
User Name: User SQL Server.
Password: Password SQL Server.

Setelah diisi, klik Create untuk bikin database di SQL Server.


Database sudah berhasil dibikin.

Klik Test Connection untuk memastikan koneksi antara Alarm DB Logger Manager ke SQL Server sudah OK.


Lanjutkan dengan klik tombol Next.
Kita akan masuk ke Query Selection. Disini kita bisa memilih alarm priority yang akan disimpan ke database, dan Alarm Query (group).
Klik Next setelah selesai konfigurasi.


Advanced Setting:
Pilih Running Logger as: Windows Service supaya alarm logger otomatis running ketika Windows Start.
Klik finish.


Langkah terakhir, jalankan Alarm DB Logger Manager dengan cara klik Start :)


Untuk menampilkan Alarm dari database, kita perlu menggunakan AlmDBViewCtrl.
Bisa diambil dari Wizard - ActiveX Controls.


Cara konfigurasinya, klik dua kali AlmDBViewCtrl.


Kemudian pilih tab Database.
Setting sesuai dengan database yang sudah kita konfigurasi:

Server Name: Local
Database Name: WWalmdb
User: sa
Password: xxxx
AutoConnect: Yes

Untuk memastikan apakah konfigurasi yang kita masukkan sudah benar, klik Test Connection.



Untuk refresh display Alarm, bisa dengan cara klik kanan pada display, pilih refresh.
Atau bisa juga menggunakan script pada tombol.
Caranya, bikin tombol, klik dua kali, masuk ke action.
Kemudian pilih Insert - ActiveX.


Klik ControlName: AlmDbViewCtrl1 - Refresh()


Jangan lupa tambahkan titik koma (;) pada akhir script.


Error ketika menjalankan aplikasi: Access Denied

Jika kita ingin menjalankan aplikasi InTouch, tetapi ketika masuk ke Windowmaker / Viewer keluar error sebagai berikut:


Hal ini terjadi karena folder aplikasi InTouch masih dalam mode READ ONLY.
Browse folder aplikasi InTouch, klik kanan, uncheck read only :)

Thursday, August 27, 2009

License Tidak Dikenali

Jika kita sudah menginstall license InTouch, pasang hardware key, tapi ternyata license masih belum dikenali, bisa jadi hardware key rusak.
Tapi sebelumnya, kita mesti cek dulu juga, apakah tanggal PC sudah di set ke waktu yang tepat. Seringkali sehabis install ulang Windows, kita lupa set tanggal.

Cek logger dibawah, yang di BOLD adalah error yang menunjukkan kalau kita belum set tanggal Windows.

1400 4/15/2005 12:54:54 AM 3068 3080 Info INTSPT WWLicRequest InTouch Feature start date is in the future (-31,34)
1401 4/15/2005 12:54:54 AM 3068 3080 Info INTSPT An error occurred reading the Feature Line 'InTouch' in the License File 'C:\Program Files\Common Files\ArchestrA\License\wwsuite.lic' (Return Code: -31)
1402 4/15/2005 12:54:54 AM 3068 3080 Info INTSPT WWLicRequest InTouchOEM No such feature exists (-5,116)
1403 4/15/2005 12:54:54 AM 3068 3080 Info INTSPT The License File 'C:\Program Files\Common Files\ArchestrA\License\wwsuite.lic' was located, but the Feature Line 'InTouchOEM' could not be found inside of it.
1404 4/15/2005 12:54:54 AM 3068 3080 Info INTSPT WWLicRequest InTouch Feature start date is in the future (-31,34)

Wednesday, June 3, 2009

Migrasi Ms SQL Server 2000 ke Ms SQL Server 2005 (InSQL)

Untuk migrasi dari MS SQL Server 2000 ke 2005, langkah-langkah yang harus dilakukan:

Backup database (Runtime database SQL)
Backup configuration data InSQL
Backup History Block
Backup InTouch application (jika ada)
Jika ada aplikasi InTouch lokal yang mengambil data dari Historian (ODBC), cek settingan DSNnya

A. Cara backup Runtime database:

1. Masuk ke SQL Server Management Console
Pilih Database, Runtime database. Klik All Task, Backup database.


2. Pilih Runtime di bagian Database, cek Database Complete.
Klik add di bagian Destination.


3. Di bagian Backup Destination, pilih file name, folder dimana file backup akan disimpan, misalkan runtimebackup.bak
Klik OK.


4. Database Runtime telah selesai dibackup :)


B. Backup InSQL configuration.

1. Masuk ke All Programs - Wonderware - IndustrialSQL Server - Database configuration export and import

2. Pilih Export from InSQL to a text file


3. Use Windows / SQL Server Authentication, pilih file name, check export all object, klik next


4. Klik next lagi untuk memulai proses backup

5. Export succeded.. klik finish :)


C. Backup History Block (Data InSQL)

1. Masuk ke InSQL, di bagian Management Console, pilih History Blocks.
Cek di folder mana History Blocks tersebut disimpan. Defaultnya adalah C:\InSQL\Data\Circular


2. Copy semua isi folder Circular :) Backup History Blocks selesai


Jadi kita punya 3 hasil backup:
Runtime database (ekstensi .bak)
InSQL Configuration (ekstensi .txt)
History Blocks (berupa folder, misal A090529_001)

Next step? Restore Configuration
Di PC baru yang sudah terinstall MS SQL 2005 + SP2, langkah-langkah yang akan dilakukan:

D. Restore Runtime Database

1. Langkah ini mirip dengan pertama kali kita akan backup database.
Masuk ke SQL Server Management Studio. Pilih Database, Runtime, klik kanan, pilih Task, restore, database.

2. Pilih To Database: Runtime
Source for Restore: pilih From Device, kemudian klik tombol ellipsis

3. Backup media: File, kemudian klik Add.


4. Pilih file backup (ektensi .bak) yang sudah kita backup sebelumnya. Klik OK.

5. Sebelum restore, langkah terakhir adalah tab Option di bagian kiri.
Di bagian restore options, check Overwrite the existing database. Klik OK untuk restore database :)


E. Install Wonderware Historian 9.0 (InSQL 9.0)

1. Masukkan CD Wonderware Historian 9.0. Pilih setup.exe
Windows Wonderware IndustrialSQL Server akan tampil, klik Next


2. Check I Accept the license Agreement, kemudian klik Next.

3. Check InSQL Server, otomatis semua komponen di bawahnya akan ikut terpilih.
Klik Next.

4. Klik Next


5. Klik Next untuk melanjutkan instalasi

6. Instalation in progress...

7. Klik finish..

8. Setelah klik Finish, akan keluar pop up windows, InSQL menemukan Runtime database, kemudian apakah akan menggantinya dengan yang baru? Klik NO untuk menggunakan runtime database yang lama.

9. Instalasi InSQL telah selesai... :)


F. Restore InSQL configuration data

1. Langkah sama dengan sewaktu kita backup configuration data. Masuk ke All Programs - Wonderware - IndustrialSQL Server - Database configuration export and import

2. Pilih Import from a Text file to InSQL

3. Browse file configuration yang sebelumnya sudah kita backup, di bagian file name. Kemudian klik open.

4. Klik Next.. Import configuration in progress.. setelah selesai, klik Finish

G. Restore History Blocks

Untuk restore history blocks, copy history blocks back up ke C:\InSQL\Data\Circular (default), atau bisa cek dahulu dari InSQL:


Setelah selesai backup, install license, dan InSQL siap dijalankan :)