Simatic HiGraph

Salah satu jenis bahasa pemrograman di S7 yang mungkin kalo menurut saya enak banget ๐Ÿ™‚
Sesuai dengan standar IEC 61131 kita kenal 4 bahasa pemrograman yang standar yaitu Instruction List (IL), Structured Text (ST), Ladder Diagram (LAD), Function Block Diagram (FBD). Selain dari bahasa – bahasa tersebut Step7 juga memiliki bahasa – bahasa pemrograman tingkat tinggi lain seperti SCL, Graph, HiGraph, CFC, dan SFC sesuai dengan tipe atau jenis kasus yang pemrogramannya akan kita buat. Secara garis besar saya mengelompokkan ada dua tipe kasus yaitu kasus dengan pemrograman interlocking dan sequencial (event-state).
Yang akan saya bahas kali ini yaitu tentang HiGraph, karna saya banyak menemukan kelebihan di bahasa ini. Untuk menggunakan HiGraph ini kita memerlukan installer tambahan, dimana untuk contoh kali ini saya menggunakan Simatic HiGraph v5.3 .

Misalnya saya mempunyai sistem sederhana seperti dibawah ini :


Dengan cara kerja sistem sebagai berikut :
– Step 0 (initial) : semua equipment stop
– Transisi Step 0 – Step 1 : tombol “Start”
– Step 1 (Heating) : mengaktifkan Valve AV58 dan Motor M51
– Transisi Step 1 – Step 2 : temperature VS50 (TT58 >= 50ยฐC)
– Step 2 (Transfer) : mengaktifkan Valve AV908 dan Motor M61 serta menon-aktifkan AV58 dan M51
– Transisi Step 2 – Step 3 : VS60 high level
– Step 3 (Stop Motor Transfer) : menon-aktifkan M61
– Transisi Step 3 – Step 0 : M61 Stop


Dibawah ini adalah DB dari objek objek yang bersangkutan

Kemudian inisialisasi instance template dari HiGraph, yaitu masuk ke S7 Program -> Source -> Klik Kanan -> Insert New Object -> State graph

Kemudian kita “rename” menjadi “Hot Water”

Tampilan awal saat State Graph kita buka

yup, disitu bisa terlihat initial condition dengan permanen instruction (continuous cyclic), langkah selanjutnya yaitu dari cara kerja yang telah kita paparkan tadi jelas terlihat bahwa program yang akan kita buat terdiri dari 4 state, nah kita insert state sebanyak 4 buah seperti contoh di bawah ini


nah kelebihan dari HiGraph yaitu posisi state serta permanen instruction bisa kita pindah pindah posisinya semau kita, fleksibel sekali khan?? ๐Ÿ™‚
Kemudian kita menambahkan transisi ke graph tersebut


Kemudian dari transisi tersebut kita buat instruction untuk conditionnya, dalam hal ini menggunakan bahasa STL untuk instructionnya ๐Ÿ™‚ Caranya yaitu klik dua kali di transisi kemudian insert di conditions

Kita lihat di cara kerja sistem yang telah kita buat, disitu transisinya yaitu tombol start, maka logikanya yaitu A “Start” (dimana A artinya yaitu logika AND di STL, serta Start adalah simbol dari address memory yang telah kita buat)

Kemudian setelah itu mengisi action di state sesuai dengan cara kerja yang telah kita deskripsikan

Kita isinya di Cyclic Actions sehingga logika tersebut selalu dieksekusi, jika hanya ingin sekali di eksekusi bisa kita letakkan di Entry Actions



Untuk hal yang sama dang sesuai dengan cara kerja yang telah kita buat, begitu juga dengan state dan transisi transisi selanjutnya, sehingga menjadi seperti di bawah ini

Setelah selesai kita membuat graph statenya, langkah selanjutnya yaitu membuat graph group, jadi kita balik lagi ke S7 Program -> Source -> Klik Kanan -> Insert New Object -> Graph Group

Kemudian kita masukkan instance (graph state) yang telah kita buat sebelumnya

Kemudian Graph group tersebut kita compile sehingga menjadi sebuah FC dan DB, tapi sebelum di compile ada hal hal yang harus di set terlebih dahulu

Save and Compile

Tidak ada Error dan Warning

Kemudian bisa kita lihat otomatis di block terlihat FC1 dan DB 1 hasil compiling

Kemudian langkah selanjutnya yaitu mencoba program tersebut, dalam hal ini saya menggunakan PLC Sim serta untuk monitor dan modify variabel menggunakan variabel tabel

Semua variabel yang akan kita modify dan monitor kita letakkan di variabel tabel tersebut


Langkah selanjutnya yaitu memonitor graph group dan graph state yang telah kita buat, tapi terlebih dahulu FC1 (hasil compile) kita panggil dari OB1


Nah tanda hijau di state 0 menandakan statenya lagi berada diposisi itu ๐Ÿ™‚ serta menunggu nilai “Start” untuk pindah ke state 1, misalnya kita simulasikan di variabel tabel

jika “start” kita ubah menjadi “true” maka AV58 dan M51 juga bernilai true, karena sekarang posisi statenya sudah di state 1, dan di graph nya akan terlihat seperti ini

warna “orange” menandakan state dan transisi yang sebelumnya dilewati, kemudian jika kita simulasikan lagi untuk ke state berikutnya

kita simulasikan temperature menjadi 60.0 , disitu terlihat AV58 dan M51 nilainya berubah menjadi false, sedangkan AV908 dan M61 nilainya menjadi true, karna kita sudah berada di state 2 (transfer)

hehehehe untuk simulasi selanjutnya bisa dicoba sendiri ๐Ÿ™‚
bahasa pemrograman seperti ini sangat memudahkan sekali apabila diterapkan di suatu proses yang banyak sekali step – stepnya, kita bisa memonitor dimana state kita sekarang hanya dalam satu window, serta semua posisi dari state dan transisi bisa kita pindah sesuai yang kita mau ๐Ÿ™‚

34 thoughts on “Simatic HiGraph”

  1. Komentar :
    HiGraph nya bisa dimonitor juga ya ๐Ÿ™‚
    Karena bagi saya baru, (gak tau kalau diExplore lebih dalm) sepertinya agk sulit ya. Kita secara umum harus sudah bisa membayangkan secara detil rangkaian Proses yang akan kita buwat, dari awal sampai akhir.
    Untuk pemrograman dengan ini say rasa agk sulit untuk pemrograman parsial,

    Pertanyaan :
    1. Jadi apakah pada awlnya kita hanya menyediakan Object-nya?
    2. Jadi selama ini di kantor ngerjain itu mas ya, pantes aja si Bos ngomong “Not Good” hahahahhhahahha

  2. wah pertanyaan bagus mas layudhi bengak
    yah gak lah….khan state serta transisi bisa kita sisip serta digeser geser atau dipindah pindah dimana aja…justru disitu letak kelebihannya ๐Ÿ™‚

  3. hmmm yang waktu itu ya bang…hmmmmm yang sebelumnya juga belum khatam….hehehehehe function2nya belum tak utek2 semua..baru sebagian kecil….

  4. mas, punya contoh2 convert fungsi LIR dan TIR dari Step5 ke Step7. katanya sih bisa pake indirect addressing tapi masih blm mudeng nih..:)

  5. Salam kenal,
    Mau nanya nich, bisa kasih contoh tag untuk time syncronize dari WinCC –> S7. Maksudnya biar PLC bisa update time dari PC Time Server.

    Tq

  6. salam kenal,
    saya mw tanya nih tentang PLC Omron tipe Zen-10C1AR-A.
    apa bisa PLC tersebut digunakan unt aplikasi conveyor sederhana?
    inputnya sensor n output nya motor.
    kira2 unt output PLC nya menggunakan jenis motor apa ya?n berapa volt?!

    nb:panjang n lebar conveyor kira2 1.5m x 20cm

  7. Wah wah…. HiGraph yah? mantap2, ini aja yang STL belum tamat ๐Ÿ˜€

    @ K_Ramdhani
    OMRON ZEN 10C1AR-A ya? smart relaynya OMRON tuh. Pake ladder juga bahasanya.

  8. # joephi Says:
    February 25th, 2009 at 10:33 pm

    Salam kenal,
    Mau nanya nich, bisa kasih contoh tag untuk time syncronize dari WinCC โ€“> S7. Maksudnya biar PLC bisa update time dari PC Time Server.

    Tq
    # Fathoni Says:
    February 26th, 2009 at 5:54 am

    nanti saya kirimin contoh aplikasinya ke email mas
    ——————–
    Mas contoh aplikasinya bagaimana?

  9. maaf mas
    lagi sibuk2nya
    jadi belon sempat cari2 contoh project
    untuk yg auto synchronize
    dulu aku simpan di server kantor

    kalo cara manual gini :
    dari tag wincc ambil driver system info, disitu ada info untuk date time scada, nah tiap beberapa saat (terserah trigernya kapan) disynchronize date time plcnya pake SFC 0 dan SFC 1 untuk SET dan READ CLOCK PLC

  10. SFC0 itu khan untuk SET CLOCK, nah dengan triger yang telah ditentukan, kita move aja nilai date time dari system info wincc ke tag data block yang ada di SFC0, selain itu triger itu juga berfungsi untuk mengaktifkan SFC0 di program PLC, nah otomatis dech date time PLC mengikuti date time SCADA

  11. Ass.. Wr. Wb.
    Slm kenal Mas, sy ingin skli belajar PLC Khususnya Siemens S7 dr dasar, apa boleh saya minta penjelasan2 dsr soal S7 ini Mas, thnks.

  12. mas saya punya masalah dengan PLC simatic S5 CPU 915B
    jika di transfer OB1 CPU langsung Eror
    knpa?
    mahon di balas ke emai

    tkhns

  13. ckckckck….
    wah mas saya belum banyak pengalaman dengan S5
    gak berani ngasi advice ๐Ÿ™‚
    coba hubungi toekangscada.com (ada di link)
    dia lebih banyak pengalaman di S5 ๐Ÿ™‚

  14. ya ngk lah … udah 7 taon ngk ngulik2 S5. Klo OB1 di donlut langsung error, kemungkinan ada program yg salah, ini bisa salah addressing I/O yg ngk ada di PLC, or manggil FB/FP/DB yg belum di devinisikan. Bagaimana klo di OB1 dibiarin kosong dulu ..trus donlut ..masih errorkah? paling jitu ya di debug saja via BSTACK ..bukan gini kak toni ?

  15. iya kali ๐Ÿ™‚
    disini juga CPU95 sering banget masalah
    apalagi kalo lagi siang hari trus komunikasi putus
    mulai aneh bloknya sebagian hilang ๐Ÿ™‚ ๐Ÿ™‚
    wajarlah udah uzur….

  16. mas saya rendi dari bandung, mau nyimpang jauh nih dari pembahasan, soalnya lagi butuh banget. gini, saya lagi butuh bantuan gimana caranya membuat PID controller dengan PLC siemens S7 300 CPU 314 ? untuk set point bisa menggunakan potensio meter 10 VDC begitupun dengan process variable nya mas. yang menggunakan OB35 itu mas dan menggunakan SFB41. mohon step by step yah mas share nya. di tunggu yah mas di emai : rendi.loerrach.university@gmail.com

  17. Really impressed! Every little thing is extremely open and very clear explanation of issues. It contains truly facts. Your website is very helpful. Thanks for sharing. Hunting forward to additional!

  18. mas tanya soal fungsi counter di step7 baik CU/CD/CUD setiap input diberi angka 1/ON maka output (Q) akan langsung ON dan jika di PV kita isi dengan nilai tertentu misal 5, maka setiap input berubah dari 0 ke 1 maka cv akan counting, hanya jika melewati nilai pv counter msh bisa counting. Pertanyaannya :
    1. apakah counter akan langsung ON saat ada input
    2. bgmn laddernya agar stl mencapai nilai pv counter akan reset sendiri
    Terima kasih & ditunggu jawabannya

  19. mas dwi,

    1. saya ga mengerti maksudnya ON disini itu apa ?
    2. mas bikin logik jika out nya aktif mengaktifkan satu bit yang nantinya bit itu digunakan untuk mereset counter tersebut, studi kasusnya kayak gimana dulu nie ?

  20. Mas salam kenal

    dari penjelasan diatas ada salah satu bahasa yang bisa digunakan untuk membangun program S7 yaitu SCL,,,, mas bisa minta tolong referensi untuk belajar SCL,,
    saya ada program S7-300, disalah satu functionnya menggunakan SCL,, setelah saya buka(double click) simatic-nya memberitahu bahwa saya ga bisa lihat program secara SCL karena SCL-nya belum terinstal….. maksudnya gimana mas???
    terimakasih

  21. hello there and thank you for your information โ€“ I’ve definitely picked up anything new from right here. I did however expertise a few technical points using this web site, since I experienced to reload the website many times previous to I could get it to load correctly. I had been wondering if your web hosting is OK? Not that I am complaining, but slow loading instances times will often affect your placement in google and could damage your high quality score if advertising and marketing with Adwords. Well I am adding this RSS to my email and can look out for much more of your respective fascinating content. Ensure that you update this again very soon.|

  22. Kalo pas saya kuliah, dosen saya bilangnya model seperti ini disebut FSM (finite state machine).
    Ternyata ada juga di step7
    thank mas buat infonya

Leave a Comment

Your email address will not be published. Required fields are marked *