4 0 8 MB
Training Pemrograman Software Schneider Unity Pro XL -- Maristya Rahmadiansyah -Maret 2019
Overview Modul ini menjelaskan pemrograman menggunakan Unity Pro XL
Pengenalan PLC
Project Management
Hardware Configuration
Connection
Programming
Case Study
1
2
3
4
5
6
Instalasi Unity Pro XL
confidential
Section 01
Pengenalan PLC Daftar Isi Sistem PLC
Hal 01
Komponen PLC
Hal 02
Proses Scan
Hal 03
Jenis-jenis PLC
Hal 04
Jenis-jenis Modul IO
Hal 06
confidential
01
Sistem PLC PLC disebut juga miniature industrial computer yang terdiri dari hardware dan software yang digunakan untuk fungsi kontrol Digunakan pada industri proses elektro-mekanik seperti kontrol boiler, kontrol vacuum pan, kontrol conveyor, dan lain sebagainya
PLC Power Supply
CPU
Switches Sensor Button
Input
Memory Communication
Programming Device
Motor Output
Valve Lights
02
Komponen PLC PLC terdiri dari enam komponen yang saling beketerkaitan
M340
Ethernet RIO Module
PSU
Processor Unit (CPU) Unit yang terdiri dari microprocessor untuk membaca sinyal input dan menjalankan perintah berupa sinyal output sesuai dengan program yang tersimpan di memory. Communication Interface Modul yang digunakan untuk menerima dan mentransmisikan data dalam jaringan komunikasi dari/ke remote PLC.
Power Supply Digunakan untuk konversi listrik tegangan AC ke listrik tegangan rendah DC yang dibutuhkan untuk processor unit dan inputoutput interface module.
1
3
5
2
4
6
Memory Dimana program yang berisikan control action yang dijalankan oleh microprocessor disimpan. Selain itu memori juga menyimpan status sinyal input dan sinyal perintah ke output. Input Output Module Unit untuk menerima informasi dari peralatan di lapangan dan memberikan informasi ke peralatan di lapangan.
X80 IO Module
Programming Device Digunakan untuk me-develop program kemudian di-transfer ke memory unit PLC. Unity Pro
confidential
Proses Scan
03
Proses scan dibagi menjadi empat tahap
Input Input Scan Program Scan Housekeeping
Input Scan (Read) Mendeteksi sinyal input dari peralatan di lapangan yang terkoneksi dengan PLC. Program Scan (Execute) Melakukan eksekusi program yang telah dibuat Housekeeping (Communication & Diagnostic) Berkomunikasi dengan programming device dan melakukan internal diagnostic
Output Scan Output
Output Scan (Write) Melakukan energize atau de-energize peralatan output di lapangan yang terkoneksi dengan PLC
Scan time menunjukkan seberapa cepat PLC dapat bereaksi terhadap perubahan input. Ini bervariasi sesuai dengan jenis prosesor.
confidential
04
Jenis-jenis PLC Menurut Bentuk dan Konfigurasi Hardware
PLC
Compact M221
Modular M340
Seluruh komponen menjadi satu
Umumnya berukuran kecil Jumlah IO yang relatif sedikit Beberapa dapat dihubungkan dengan IO tambahan
Komponen terpisah dalam modul-modul
Berukuran lebih besar Memungkinkan penambahan jumlah IO Dapat ditambahkan modul khusus
Tidak dapat ditambahkan modul khusus
confidential
05
Jenis-jenis PLC Menurut Jumlah IO, Kompleksitas, dan Harga
8. Very Large
Kompleksitas dan Harga
7. L-VL 6. Large 5. M-L 4. Medium
3. S-M 2. Small 1. Mikro 32
64
128 512
1024 2048
4096
8192
Jumlah IO
confidential
06
Jenis-jenis Modul IO Modul IO dibagi menjadi dua yaitu discrete dan analog Setiap jenis dibagi menjadi dua yaitu tipe input untuk mendapat sinyal dari field dan tipe output untuk memberikan sinyal ke field
VS
Discrete Module
Analog Module
Module untuk sinyal non-kontinu yang mempunyai dua state – ON dan OFF
Module untuk sinyal kontinu yang mempunyai state tak terhingga
Standard Sinyal: 24 V; 48V; 125V; 100…120 V; 200…240V
Standard Sinyal: +10 V; 0-10 V; 0…5 V; 1…5 V; +5 V; 4…20 mA; 0…20 mA; +20 mA
BMXDDI1602 (Discrete Input) Push button, Limit switch, Selector, Relay
BMXDDO1602 (Discrete Output) Sirene, Lampu, On-off valve, Motor starter, Relay
BMXAMI0410 (Analog Input) Transmitter
BMXAMO0410 (Analog Output) Control valve, VSD
confidential
The End! Section 01
confidential
Instalasi
Unity Pro XL
confidential
Section 02
Project Management Daftar Isi Kapabilitas Unity Pro XL
Hal 01
Membuka Aplikasi Unity Pro XL
Hal 02
Tampilan Awal Aplikasi Unity Pro XL
Hal 03
Membuat Project Baru
Hal 05
User Interface
Hal 06
Project Browser
Hal 07
Status Bar
Hal 08
Format File Project dan Save/Backup Project
Hal 12
Open/Restore Project
Hal 13
Close Project
Hal 14
Exit Unity Pro
Hal 15
Analyze vs Build
Hal 16 confidential
Kapabilitas Unity Pro XL
Hardware Platform
01
Bahasa Pemrograman (3)
Modicon M340
Function Block Diagram FBD
Modicon M580 (1)
Ladder Diagram LD (1)
Quantum (2)
Instruction List IL
Momentum (2)
Structured Text ST
Premium (2)
Sequential Control SFC
Note: (1) Fokus utama pembahasan di training (2) End-of-life product (3) Semua bahasa dapat digunakan bersama dalam satu project. Telah sesuai dengan standard IEC 61131-3 confidential
Membuka Aplikasi Unity Pro XL
Langkah
02
Deskripsi
1
Klik Start Programs
2
Pilih grup Schneider Electric SoCollaborative
3
Pilih Unity Pro XL, seperti gambar
sehingga Aplikasi ‘Unity Pro XL’ akan terbuka
Kasus khusus : • Apabila lebih dari satu software package, pilih grup Unity Pro lalu pilih Unity Pro S, L, XL, atau XLS • Apabila software belum ter-license, notifikasi jumlah hari masa trial yang tersisa dan pilihan untuk melakukan registrasi
confidential
Tampilan Awal Unity Pro XL
03
confidential
04
Membuat Project Baru Dalam membuat project baru, dua hal paling penting adalah memilih CPU dan Backplane
Langkah 1
Deskripsi Pertama kali aplikasi Unity Pro terbuka, tampilan masih kosong. Klik icon New Project sehingga muncul window seperti berikut
pada Toolbar
confidential
Membuat Project Baru
Langkah
-2-
05
Deskripsi
2
Untuk menampilkan seluruh versi PLC, cek kotak Show all version
3
Pilih salah satu tipe CPU yang akan digunakan, misalkan Modicon M580 BMP P58 2040
4
Pilih salah satu tipe Backplane yang akan digunakan, misalkan Rack BMP XBP 0800
5
Apabila akan membuat project sesuai dengan template project setting maka cek pada kotak Settings File dan gunakan browser untuk mencari lokasi file *.XSO. Apabila tidak dicek maka project setting yang dibuat adalah default
6
Klik OK
Note: Ketika pertama kali membuat program, program tersebut belum disimpan pada komputer
confidential
06
User Interface User interface terdiri dari beberapa window konfigurasi dan toolbar Menu Bar Terdiri dari perintah dan fungsi yang berguna untuk melakukan pemrograman yang dibagi ke dalam menumenu. Di dalam menu mungkin saja terdapat submenu lagi yang berisikan perintah dan fungsi. Tool Bar Terdiri dari icon-icon perintah dan fungsi pada menu bar yang sering digunakan.
Project Browser Terdiri dari directory untuk melakukan konfigurasi pada project seperti hardware configuration dan programming. Editor Window Window untuk melakukan konfigurasi sesuai dengan fungsi yang dibuka pada Project Browser. Register Tab Digunakan untuk berpindah dari satu editor window ke yang lain. Information Window Menampilkan informasi terkait proses yang dijalankan Status Bar Menampilkan informasi tentang project yang dibuka
confidential
Project Browser
07
Terdiri dari directory untuk melakukan konfigurasi pada project seperti hardware configuration dan programming
Directory
Fungsi
Configuration
Melakukan hardware configuration dan mengatur parameter pada modul
Derived Data Types
Mengakses DDT. DDT adalah tipe data yang dibuat secara custom oleh user
Derived FB Types
Mengakses DFB. DFB adalah function block yang dibuat secara custom oleh user
Variable & FB Instances
Mengakses seluruh variable dan function block yang digunakan dalam project
Motion
Mengakses deklarasi dan melakukan konfigurasi pada servodrive
Communication
Melakukan akses konfigurasi jaringan (network)
Ethernet Network
Melakukan akses untuk melakukan konfigurasi Ethernet Network
Program
Melakukan pemrograman
Animation Tables
Menampilkan animasi variable dalam bentuk table untuk dilakukan monitoring
Operator Screens
Membuat dan menampilkan user interface sebagaimana HMI atau SCADA namun ini embedded pada EWS
Documentation
Melakukan konfigurasi untuk dokumentasi
confidential
08
Status Bar Berikut dua tipe status bar yaitu ketika Mode Offline dan Mode Online
Offline Status Bar
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 16 17
18
10
11
12
13
14
15 16 17 18
Online Status Bar
1
2
3
4 5
6
7
8
9
confidential
Status Bar
Label
09
-2-
Deskripsi
Tampilan
1
Area informasi untuk menampilkan informasi menu, FFB, dan variable
Contoh: Ready
2
Menampilkan hak akses HMI • Human Machine Interface Read/Write mode Ini adalah mode default ketika membuka aplikasi
HMI R/W mode
• Human Machine Interface Read Only Mode Mode ini dapat diaktifkan dengan cara o Aplikasi dibuka pada mode Read Only dengan cara memilih Open the project in read-only mode pada window open file o Sebelumnya membuka aplikasi pada write mode menggunakan third-party software misalkan Pserver
HMI R/O mode
3
Status link
OFFLINE, DIFFERENT, EQUAL
4
Tanda * menunjukkan nilai awal pada project berbeda dengan nilai awal pada CPU. Untuk menghilangkan tanda * ubah nilai sesuai dengan nilai awal CPU, atau transfer project baru dan lakukan saving
-, *
5
State CPU
RUN, STOP, NO CONF, …
6
Informasi ETSI (Empty Terminal Support)
Contoh: UPLOAD INFO OK
7
Tipe koneksi dan address CPU yang terhubung
Contoh: TCPIP:127.0.0.1
8
Hanya untuk M580 Safety Platform : Status mode operasi
MAINTENANCE, SAFETY
9
Hanya untuk M580 Platform yang menggunakan dual CPU: Status Hot Standby dan jumlah pergantian
Contoh: A – RUN_PRIMARY / B – STOP / DIFFERENT (1/2)
10
Informasi line dan kolom (hanya tersedia pada programming language editor)
Contoh: In 13, Col 15
confidential
Status Bar
Label 11
12
10
-3-
Deskripsi
Tampilan
Syslog server availability (ketika dikonfigurasi) • Syslog server available
-
• Syslog server cannot be reached
SYSLOG
Memory status: • Function Pack for Memory tidak dibutuhkan
MEM (hijau)
• Function Pack for Memory direkomendasikan
MEM (merah)
13
Status Generating
BUILD, NOT BUILT
14
Pada mode equal, huruf F berwarna merah menunjukkan terdapat variable yang dilakukan force. Klik kotak tersebut untuk menunjukkan list variable yang di-force
-, F
15
Informasi event • Jika CPU mendeteksi error, klik ini untuk menampilkan detail error
• Ikon tampil ketika CPU menunjukkan error baru
confidential
Status Bar
Label 16
11
-4-
Deskripsi
Tampilan
Untuk M580 dan M340 saja, status memory backup • CPU RAM sesuai dengan konten SD Card/ flash memory
-
• Untuk M580 saja: flash memory backup in progress NOTE: Jangan klik ikon ini ketika tampil. Jika diklik, muncul popup untuk backup aplikasi: jangan accept backup proposal karena backup sedang in progress • SD card memory backup in progress • Tidak ada SD card atau SD card invalid 17
Mengindikasikan insert atau overwrite mode aktif
INS, OVR
18
Mengindikasikan tombol caps lock aktif atau tidak
-, CAPS
confidential
12
Format File Project dan Save/Backup Project Unity Pro mengatur tiga tipe file untuk menyimpan project. Masing-masing tipe dapat digunakan sesuai dengan requirement-nya Default File
Archived Application File
Application Exchange File
Full Application Exchange File
*.STU
*.STA
*.XEF
*.ZEF
Digunakan untuk daily working task. Ini digunakan secara default ketika membuka atau menyimpan project
Digunakan untuk mengarsipkan project dan dapat dilakukan ketikan project sudah di-generate
Digunakan untuk export project pada format XML dan dapat dilakukan pada stage apapun
Terdapat file *.BAK dengan nama file sama dengan *.STU sebagai backup
File ini kompatibel dengan segala versi Unity pro
File ini kompatibel dengan segala versi Unity pro
Digunakan untuk export project pada format XML dengan konfigurasi global DTMs dan dapat dilakukan pada stage apapun
Dapat terkoneksi dengan PLC pada Equal Online Mode dan dapat melakukan edit Online
File ini otomatis tersimpan ketika project di-build dengan nama file sama dengan *.STU dengan tambahan .Auto sebelum *.STA
Tidak dapat terkoneksi dengan PLC pada Equal Online Mode
File ini kompatibel dengan segala versi Unity pro
Tidak dapat terkoneksi dengan PLC pada Equal Online Mode
Dapat terkoneksi dengan PLC pada Equal Online Mode dan dapat melakukan edit Online L
Deskripsi
L
Deskripsi
L
Deskripsi
L
Deskripsi
1
File Save As
1
File Save Archive
1
File Export Project
1
File Export Project
2
Pilih lokasi penyimpanan dan berikan nama file misalkan ‘Training’
2
Pilih lokasi penyimpanan dan berikan nama file misalkan ‘Training’
2
Pilih lokasi penyimpanan dan berikan nama file misalkan ‘Training’
2
Pilih lokasi penyimpanan dan berikan nama file misalkan ‘Training’
3
Klik Save
3
Klik Save
3
Klik Export
3
Klik Export
confidential
Open/Restore Project
13
Tahap ini bertujuan untuk membuka file project Unity Pro untuk format apapun
Langkah
Deskripsi
1
Buka software Unity Pro terbaru Start Programs Schneider Electric SoCollaborative Unity Pro XL
2
Klik File Open
3
Pilih lokasi penyimpanan
4
Pilih tipe file pada kolom Files of Type:
5
Klik file yang ingin dibuka
6
Klik Open
confidential
Close Project
14
Close (menutup) project hanya menutup file project tanpa menutup aplikasi Unity Pro
Langkah
Deskripsi
1
Aktifkan perintah Close pada menu File
2
Jika project dimodifikasi (dari program ketika awal dibuka), kotak dialog ditampilkan dengan pesan bahwa project harus di-save. Save project tersebut atau tutup tanpa menyimpan perubahan (modifikasi)
confidential
Exit Unity Pro
15
Langkah ini akan menutup aplikasi Unity Pro
Langkah
Deskripsi
1
Aktifkan perintah Exit pada menu File
2
Jika project dimodifikasi (dari program ketika awal dibuka), kotak dialog ditampilkan dengan pesan bahwa project harus di-save. Save project tersebut atau tutup tanpa menyimpan perubahan (modifikasi)
confidential
16
Analyze vs Build Kedua command tersebut bertujuan untuk melakukan validasi program, berikut perbedaannya
Analyze Melakukan pengecekan syntax dan semantic program sudah benar namun tidak di-build
Build
Build Membuat executable code untuk aplikasi PLC. Setiap Build atau Rebuild secara otomatis melakukan Analyze. Hanya program yang sudah sukses dibuild yang dapat di-download ke PLC. Build All dilakukan untuk pertama kali melakukan build, modifikasi project setting atau hardware configuration.
Analyze
Build Changes dilakukan untuk melakukan generate bagian yang dilakukan modifikasi saja.
Note: Command Analyze dan Build terdapat pada menu Build dan pada Toolbar
confidential
The End! Section 02
confidential
Section 03
Hardware Configuration Daftar Isi Arsitektur Sistem yang Akan Dibuat
Hal 01
Window Configuration
Hal 02
Menambahkan Modul di Local Rack
Hal 03
Menambahkan Rak/Backplane di Local Rack
Hal 08
Menambahkan Remote IO (RIO)
Hal 11
Unlock Security pada Processor
Hal 13
Assign IP Address PLC
Hal 14
Setting Modul Analog
Hal 15
Power Consumption
Hal 17
confidential
Arsitektur Sistem yang Akan Dibuat
01
Terdiri dari dua panel yaitu Local dan RIO Drop. Pada Local Panel terdapat Extended Backplane
confidential
Window Configuration
02
Konfigurasi hardware dilakukan pada Directory Project Configuration pada Project Browser
Note: - PLC bus untuk konfigurasi hardware di Local Rack - EIO bus untuk konfigurasi hardware di Remote IO Rack confidential
Menambahkan Modul di Local Rack
03
Terdapat enam jenis modul yang dapat ditambahkan yaitu Analog, Communication, Counting, Discrete, Motion, dan Third Party Product Langkah 1
Deskripsi Klik kanan pada Configuration PLC Bus lalu pilih Open sehingga muncul window ‘PLC Bus’ seperti berikut
confidential
Menambahkan Modul di Local Rack
Langkah 2
-2-
04
Deskripsi Klik kanan pada slot kosong (misal slot 2) pada backplane lalu klik New Device sehingga muncul window ‘New Device’ seperti berikut
confidential
Menambahkan Modul di Local Rack
Langkah
-3-
05
Deskripsi
3
Pilih jenis dan tipe modul yang akan ditambahkan, misal modul komunikasi tipe NOC module (Digunakan untuk berkomunikasi dengan level 2) Modicon M580 local drop Communication BME NOC 0301.2
4
Muncul window ‘Properties of Device’. Berikan nama device, misal ‘BMENOC0301_2’ lalu klik OK sehingga tampilan konfigurasi seperti gambar berikut
5
Selanjutnya tambahkan modul IO, misal jenis Discrete Input (DI) Modicon M580 local drop Discrete BMX DDI 1602
confidential
Menambahkan Modul di Local Rack
Langkah 6
-4-
06
Deskripsi Klik kanan pada slot kosong (misal slot 3) pada backplane lalu klik New Device sehingga muncul window ‘New Device’ seperti gambar berikut
confidential
Menambahkan Modul di Local Rack
Langkah
-5-
07
Deskripsi
7
Pilih jenis dan tipe modul yang akan ditambahkan Modicon M580 local drop Discrete BMX DDI 1602 sehingga tampilan konfigurasi hardware seperti berikut
8
Lakukan dengan langkah yang sama untuk menambahkan modul DO dengan tipe BMX DDO 1602 di slot 4, AI dengan tipe BMX AMI 0410 di slot 5, dan AO dengan tipe BMX AMO 0410 di slot 6 sehingga tampilan konfigurasi hardware seperti berikut
9
Build program untuk melakukan verifikasi confidential
Menambahkan Rak/Backplane di Local Rack
08
Penambahan rak dilakukan ketika rak pada sebuah panel tidak dapat ditambahkan modul. Kedua rak tersebut dihubungkan dengan modul rack extender Langkah 1
Deskripsi Klik kanan rounded rectangle pada bagian kiri bawah lalu klik New Device sehingga muncul window ‘New Device’ seperti gambar berikut
confidential
Menambahkan Rak/Backplane di Local Rack
Langkah
-2-
09
Deskripsi
2
Pilih tipe rak yang akan ditambahkan, misal Modicon M580 local drop Rack BME XBP 0400
3
Inputkan nomor rak pada kotak ‘Topological Address’, misalkan 1
4
Klik OK
5
Muncul pesan penambahan rack membutuhkan modul rack extender. Modul ini tidak ditampilkan pada Unity Pro namun harus ada pada konfigurasi hardware di panel. Klik OK sehingga konfigurasi hardware seperti gambar berikut
confidential
Menambahkan Rak/Backplane di Local Rack
Langkah
-3-
10
Deskripsi
6
Setiap rak membutuhkan Power Supply sehingga tambahkan module Power Supply BMX CPS 2000 pada 2 slot paling kiri. Tambahkan modul lain misal BMX DDI 1602 pada slot 0. Tampilan konfigurasi hardware seperti berikut
7
Build program untuk melakukan verifikasi
confidential
Menambahkan Remote IO (RIO)
11
RIO adalah modul IO yang terkoneksi ke Ethernet RIO Network Langkah
Deskripsi
1
Klik kanan pada Configuration EIO Bus lalu pilih Open
2
Klik kanan pada gambar
lalu klik New Device sehingga muncul window ‘New Device’ seperti berikut
confidential
Menambahkan Remote IO
Langkah
(RIO) -2-
12
Deskripsi
3
Pilih tipe rak, misal BME XBP 0400 dan tipe drop end communicator, misal BME CRA 312 10 sehingga muncul tampilan konfigurasi hardware seperti berikut
4
Lakukan penambahan power supply dan modul seperti contoh sebelumnya
5
Apabila ingin menambahkan extended rack, klik gambar
6
Apabila ingin menambahkan RIO, klik gambar
confidential
Unlock Security pada Processor
13
CRA akan bekerja jika Services berikut diaktifkan Langkah
Deskripsi
1
Buka window PLC Bus
2
Klik dua kali pada gambar CommHeadRIODIO8L2”
3
Klik tombol Unlock Security sehingga tampilan seperti gambar berikut
4
Klik tombol Validate
yang terdapat di CPU sehingga muncul window “0.0 : EIO :
confidential
Assign IP Address PLC
14
Untuk dapat mengakses PLC, PLC perlu di-assign IP Address terlebih dahulu Modul NOC digunakan untuk media komunikasi sehingga IP Address perlu di-assign di modul ini Langkah
Deskripsi
1
Klik dua kali pada gambar module NOC
2
Pada tab Configuration, assign IP Address misal Main IP Address : 192.168.0.9 Subnet Mask : 255.255.255.0 Gateway : 192.168.0.1 Sehingga tampilan seperti berikut
3
Klik tombol Validate confidential
Setting Modul Analog
15
Bertujuan untuk mengatur jenis sinyal yang digunakan pada modul analog Langkah 1
Deskripsi Klik dua kali pada gambar modul analog, misal pada BMX AMI 0410 sehingga muncul window seperti berikut
confidential
Setting Modul Analog
Langkah
-2-
16
Deskripsi
2
Tipe sinyal diatur pada tab Configuration kolom Range. Klik segitiga terbalik di sebelah kanan kolom untuk memunculkan dropdown list. Pilih jenis sinyal yang akan dipakai, misal ‘4…20 mA’
3
Jika ingin mengganti nilai scaling dapat dilakukan pada kolom Scale. By default, nilai scaling yang digunakan adalah 0 – 10,000
4
Jika ingin mengganti jenis filter dapat dilakukan pada kolom Filter. By default, jenis filer 0 yang menandakan tidak sinyal terfilter
5
Lakukan hal yang sama untuk seluruh channel
6
Klik tombol Validate
confidential
Power Consumption
17
Bertujuan untuk memonitor konsumsi daya listrik yang digunakan pada power supply unit Langkah 1
Deskripsi Klik kanan pada gambar device power supply, misal pada ‘Main Rack’, pilih Power Supply Budget sehingga muncul tampilan seperti berikut
confidential
Power Consumption
Langkah
-2-
18
Deskripsi Terdapat empat bar-graph yang ditampilkan. Berikut penjelasannya a. Total power : Jumlah daya yang digunakan pada PSU b. 3.3V : Daya untuk I/O module logic dengan maksimal 2,5 A (8,3 W) c. 24V : Daya untuk sensor power supply dengan maksimal 0,45 A (10,8 W) d. 24VR : Daya untuk modul I/O dan CPU dengan maksimal 0,7 A (16,8 W) Berikut penjelasan konsumsi daya listrik berdasarkan warna: a. Hijau – Used : Total daya yang digunakan b. Kuning pudar – Available : Total daya yang tersisa / dapat digunakan c. Merah – Insufficient : Total daya tidak cukup d. Jingga – External power supply required : Total daya tambahan yang dibutuhkan
2
Terlihat pada gambar bahwa dengan menggunakan BMX CPS 2000, daya yang digunakan kurang sehingga membutuhkan tambahan daya dengan mengganti jenis PSU yang digunakan. Terlebih dahulu hapus power supply dengan klik kanan pada gambar device power supply, pilih Delete Module
3
Tambahkan module dengan kapasitas arus lebih besar misalkan BMX CPS 3500 seperti langkah yang telah dicontohkan sebelumnya
confidential
Power Consumption
Langkah 4
-3-
19
Deskripsi Cek konsumsi daya seperti langkah pada nomor (1). Konsumsi daya pada Main Rack setelah diganti adalah sebagai berikut. Terlihat kebutuhan daya sudah terpenuhi semua.
confidential
The End! Section 03
confidential
Section 04
Connection Daftar Isi Media Koneksi
Hal 01
Mode Koneksi
Hal 02
Status Online Mode
Hal 03
Melakukan Akses ke PLC
Hal 04
Download Program
Hal 06
Upload Program
Hal 08
Run Simulation
Hal 09
confidential
01
Media Koneksi Media koneksi yang dimaksud adalah kabel yang digunakan untuk menghubungkan PC dengan PLC Platform
Media USB Cable(1)
M580
Straight Ethernet Cable Crossed Ethernet Cable Modbus Cable
M340
Crossed Ethernet Cable(2) USB Cable(1)
USB Cable
Ethernet Cable
Modbus Cable
Note: (1) Gunakan USB 2.0 shielded cable (2) Gunakan crossed cable untuk koneksi PC-PLC, sedangkan gunakan straight cable untuk koneksi PC-Hub atau PLC-Hub confidential
Mode Koneksi
02
Terdapat dua mode koneksi yaitu Standard (PLC) dan Simulation Mode ini harus dipilih pertama kali akan memulai mode online disesuaikan dengan kebutuhan Pemilihan mode tersebut dilakukan pada menu PLC atau melalui icon pada toolbar
Standard Mode
Simulation Mode
Melakukan koneksi PC ke PLC
Melakukan koneksi PC ke Simulator
confidential
03
Status Mode Online Ketika melakukan koneksi, data di PLC dan PC dibandingkan dan akan memunculkan status Equal atau Different Status dapat dilihat pada Status Bar Equal
E
Different File yang dieksekusi dan informasi yang diupload baik di PLC dan di PC identik. Dapat dilakukan modifikasi seperti halnya pada mode offline. Ketika melakukan generating (build) juga secara otomatis akan mengubah program di PLC. Jika program dimodifikasi pada PC tanpa dilakukan generating, maka hanya pada bagian yang tidak dimodifikasi yang masih memunculkan animasi.
D
File yang dieksekusi dan informasi yang diupload baik di PLC dan di PC berbeda. Tidak dapat dilakukan modifikasi dan animasi terbatas hanya pada local variable. Untuk menjalankan Unity pada mode equal, program harus ditransfer terlebih dahulu dari PC ke PLC.
Untuk memunculkan animasi kembali, lakukan generating dan update program pada PLC.
confidential
Melakukan Akses ke PLC
04
Untuk pertama kali koneksi digunakan media USB Cable, selanjutnya dapat dilakukan menggunakan media koneksi lain Langkah
Deskripsi
1
Sambungkan PC dan PLC menggunakan media koneksi yang sesuai, misal menggunakan Ethernet cable
2
Pilih menu PLC klik Standard Mode
3
Akan muncul window konfirmasi seperti berikut, klik OK
4
Pilih menu PLC klik Set Address sehingga muncul tampilan window Set Address seperti berikut
confidential
Melakukan Akses ke PLC
Langkah
-2-
05
Deskripsi
5
Pada kotak ‘PLC Address’ tuliskan alamat PLC, misal 192.168.0.9. Selanjutnya karena menggunakan Ethernet cable, makan pilih TCPIP pada kotak ‘PLC Media’.
6
Apabila ingin mencoba koneksi klik tombol Test Connection. Apabila berhasil akan muncul window seperti berikut kemudian klik OK
7
Jika sudah selesai klik OK pada window Set Address
confidential
Download Program
06
Download program berfungsi untuk mentransfer program dari PC ke PLC Langkah
Deskripsi
1
Sambungkan PC dan PLC menggunakan media koneksi yang sesuai, misal menggunakan Ethernet cable
2
Pilih menu PLC klik Standard Mode
3
Pilih menu PLC klik Set Address Lakukan konfigurasi address sesuai dengan target PLC
4
Pilih menu PLC klik Connect
5
Pilih menu PLC klik Transfer Project to PLC
6
Muncul tampilan window Transfer Project to PLC seperti berikut. Centang pada ‘PLC Run after Transfer’ lalu klik Tranfer
confidential
Download Program
Langkah
-2-
07
Deskripsi
7
Muncul tampilan window ‘Transfer Project to PLC’ lalu klik Rebuild All and Transfer
8
Setelah proses selesai, muncul window konfirmasi seperti berikut. Klik OK
confidential
Upload Program
08
Upload program berfungsi untuk mentransfer program dari PLC ke PC Langkah
Deskripsi
1
Sambungkan PC dan PLC menggunakan media koneksi yang sesuai, misal menggunakan Ethernet cable
2
Buka program Unity yang masih kosong
3
Pilih menu PLC klik Standard Mode
4
Pilih menu PLC klik Set Address Lakukan konfigurasi address sesuai dengan target PLC
5
Pilih menu PLC klik Connect
6
Pilih menu PLC klik Transfer Project from PLC
7
Muncul tampilan window ‘Transfer Project from PLC’ seperti berikut lalu klik Transfer Project from PLC
8
Setelah selesai proses transfer, program dari PLC akan tampil pada mode Online. Save As project
confidential
Run Simulation
09
Simulasi digunakan untuk melakukan simulasi program sebelum ditransfer ke PLC Langkah
Deskripsi
1
Pilih menu PLC klik Simulation Mode
2
Pilih menu PLC klik Connect
3
Pilih menu PLC klik Transfer Project to PLC
4
Muncul tampilan window ‘Transfer Project to PLC’ seperti berikut. Centang pada ‘PLC Run after Transfer’ lalu klik Transfer
5
Muncul tampilan window ‘Transfer Project to PLC’ lalu klik tombol Rebuild All and Transfer
6
Setelah proses selesai, muncul window konfirmasi seperti berikut. Klik OK
confidential
The End! Section 04
confidential document of
Section 05
Programming Daftar Isi Representasi Ladder Diagram (LD)
Hal 01
Elementary Data Type
Hal 02
Data Type Family
Hal 03
Addressing
Hal 04
Membuat Variable EDT
Hal 05
Tasks dan Event Processing
Hal 08
Membuat Tasks dan Event Processing
Hal 09
Sections dan Subroutines
Hal 10
Alur Pemrograman
Hal 11
Mapping IO Tipe Discrete
Hal 12
Mapping IO Tipe Analog
Hal 20
Contoh Pemrograman
Hal 31 confidential
Representasi Ladder Diagram (LD)
01
Menurut standard IEC 61131-3, LD merupakan bahasa pemrograman berbasis graphical
confidential
02
Data Type Family Unity Pro mempunyai keluarga tipe data yang ditunjukkan pada diagram berikut
Data Type
Variable
Function Block
EDT
DDT
IODDT
Device DDT
Elementary Data Type
Derived Data Type
IO Derived Data Type
Device Derived Data Type
Unlocated
Unlocated
Located
Located Unlocated
EFB
DFB
Elementary Function Block Derived Function Block
Unlocated
Unlocated
Unlocated
Note: Located Variable : Variable yang telah dipetakan ke Modul IO atau Memory Unlocated Variable : Variable yang tidak dipetakan ke Modul IO atau Memory confidential
03
Elementary Data Type Klasifikasi data yang digunakan oleh programmer untuk mendefinisikan sebuah data. No.
Tipe
Deskripsi
Bits
Nilai Default
Range (Dari … Ke)
1
BOOL
Boolean
8
0 = (False)
0
1
2
EBOOL
Boolean with forcing and edge detection
8
0 = (False)
0
1
3
INT
Integer
16
0
-32768
32678
4
DINT
Double integer
32
0
-2147483648
2147483648
5
UINT
Unsigned integer
16
0
0
65535
6
UDINT
Unsigned double Integer
32
0
0
4294967295
7
REAL
Real
32
0.0
-3.4028e+38
3.4028e+38
8
BYTE
Byte
8
0
-128
127
9
WORD
Word
16
0
16#0
16#FFFF
10
DWORD
Double word
32
0
16#0
16#FFFFFFFF
11
TIME
Representasi UDINT
32
T#0 / TIME#0
12
DATE
Date
32
D#1990-01-01
13
TIME_OF_DAY
Time of day
32
TOD#00:00:00
14
DATE_AND_TIME
Date and time
64
DT#1990-01-01-00:00:00
15
STRING [SIZE]
String
Custom
-
confidential
04
Addressing Addressing berfungsi untuk memetakan variable %I
Address discrete input
%IW
Address analog input
%Q
Address discrete output
%QW
Address analog output
I/O
%M Addressing
Memory bit (8 bit - discrete)
Misal address %IW0.3.5 maka yang dimaksud adalah sinyal analog input pada rack 0, slot 3, dan channel 5
Misal %M0
Memory %MW
Memory word (16 bit - analog)
Misal %MW2
%S
System bit (discrete)
Misal %S0 menunjukkan COLDSTAT
%SW
System word (analog)
Misal %SW0 menunjukkan MASTPERIOD
System
confidential
Membuat Variable EDT
05
Membuat variable dilakukan pada Directory Project Variables & FB Instances pada Project Browser Langkah
Deskripsi
1
Klik dua kali pada directory Project Variables & FB Instances pada Project Browser
2
Tampil window Data Editor seperti berikut
3
Klik pada tab Variables
confidential
Membuat Variable EDT
Langkah
-2-
06
Deskripsi
4
Misalkan akan membuat variable dengan nama “ValEbool” bertipe data “Ebool” dengan address pada “%M1”. Pada kolom ‘Name’, tuliskan ‘ValEbool’. Pada kolom ‘Type’, pilih tipe data ‘Ebool’. Pada kolom ‘Address”, tuliskan ‘%M0’. Sehingga tampilan variable yang telah dibuat seperti berikut.
5
Lakukan pembuatan variable untuk tipe data yang lain seperti berikut: • Nama ‘ValInt’ bertipe data ‘Int’ dengan address pada ‘%MW0’ • Nama ‘ValDint’ bertipe data ‘Dint’ dengan address pada ‘%MW1’ • Nama ‘ValReal’ bertipe data ‘Real’ dengan address pada ‘%MW3’ Sehingga tampilan variable yang telah dibuat seperti berikut.
confidential
Membuat Variable EDT
Langkah
-3-
07
Deskripsi
6
Untuk variable yang berhubungan dengan waktu, tidak dapat dilakukan mapping. Untuk menentukan nilai variable tersebut tuliskan pada kolom ‘Value’ dengan prefix T# atau Time#. Misalkan akan membuat variable dengan nama ‘ValTime’ bertipe data ‘Time’ dengan waktu 10 detik. Tampilan variable yang telah dibuat seperti berikut
7
Lakukan Build program untuk verifikasi program
confidential
08
Tasks dan Event Processing Task dan event processing digunakan untuk membuat prioritas dan waktu eksekusi program Kriteria
Mask Task
Fast Task
Auxiliary Task
Deskripsi
Merupakan task utama sebuah program yang harus ada dan secara default sudah dibuat
Task ini dimaksudkan untuk short duration dan periodic processing tasks
Task ini dimaksudkan untuk task dengan processing lebih lambat dan prioritas rendah
Digunakan untuk mengurangi waktu respons program pada event: • Dari IO Modul • Event Timers
Execution
• Cyclic (default) • Periodic (1…255 ms)
• Prioritas lebih tinggi dibandingkan master task • Periodic (1…255 ms)
• Prioritas paling rendah • Periodic (10…255 ms)
Asynchronous
• %SW0 (Task periode) • %S30 (Master task activation) • etc
• %SW1 (Task periode) • %S31 (Master task activation) • etc
• %SW2 (Aux task 0 periode) • %S32 (Aux task 0 activation) • etc
• %S38 (Activation of event processing) • etc
Control
Event Processing
Note: • Pada training, dicontohkan pemrograman pada Mask Task (sudah ada secara default) • Untuk Task yang lain perlu dibuat secara manual confidential
Membuat Task dan Event Processing
09
Langkah ini dilakukan pada directory Programs Langkah
Deskripsi
1
Misalkan akan membuat Fast Task. Klik kanan pada directory Program Task
2
Pilih New Task… selanjutnya akan muncul window New
3
Lakukan konfigurasi pada tab General seperti gambar berikut (default)
4
Klik OK sehingga directory FAST muncul dibawah MASK
Note: Watchdog timer berfungsi sebagai alat timer yang dapat memicu sistem untuk restart suatu program ketika terdapat kondisi seperti hang
confidential
10
Sections dan Subroutines Sections dan subroutines adalah directory untuk melakukan programming Sections Directory utama yang digunakan untuk melakukan programming Section support bahasa pemrograman LD, FBD, IL, ST, dan SFC Section hanya ada pada task, tidak ada pada event processing
Subroutine Directory program terpisah yang digunakan untuk mengerjakan suatu pekerjaan tertentu. Kegunaan yang umum dari subroutine adalah menghemat kode program bila terjadi proses yang sama diulang berkali-kali Subroutine support bahasa pemrograman LD, FBD, IL, dan ST Subroutine dapat dipanggil pada section atau dari subroutine lain
confidential
11
Alur Pemrograman Alur pemrograman pada dasarnya disajikan pada diagram berikut
Status dan nilai diambil dari modul Input
Programming proses dan logic sesuai dengan sistem yang akan dibangun
Status dan nilai di-assign ke modul Output
Input from Field Device
Process / Logic
Output to Field Device
I
MI
P/L
MO
Mapping Input
Mapping Output
Status dan nilai dari modul Input dipetakan ke memory (%M atau %MW)
Status dan nilai yang di-assign ke modul Output dipetakan dulu ke memory (%M atau %MW)
O
Note: Mapping bertujuan memetakan IO Address ke sebuah memory dengan tujuan fleksibilitas. Fleksibilitas yang dimaksud adalah dapat melakukan pertukaran data dengan device lain dan sebagai buffer IO confidential
Mapping IO Tipe Discrete
12
Mapping berfungsi untuk memetakan sinyal IO ke memory Langkah
Deskripsi
1
Buat section baru dengan klik kanan pada directory Program Task MASK Sections lalu pilih New Section …
2
Muncul window ‘New’. Berikan nama pada kolom ‘Name:’ misalkan Mapping_Discrete dan pilih bahasa pemrograman misalkan ladder diagram sehingga pilih LD pada kolom ‘Language’. Setelah selesai klik OK
Sehingga muncul section tersebut seperti
confidential
Mapping IO Tipe Discrete
Langkah 3
-2-
13
Deskripsi Toolbar LD-Editor digunakan untuk melakukan konfigurasi pemrograman
Ketika memetakan sinyal DI maka variable IO harus di-assign di contact dan variable memory di coil. Tambahkanlah Contact NO ( ) dengan cara klik icon pada toolbar kemudian posisikan ke editor window ‘Mapping_Discrete’ seperti berikut
confidential
Mapping IO Tipe Discrete
Langkah
14
-3-
Deskripsi
4
Tambahkanlah Coil (
) dengan cara yang sama dengan poin (3). Tampilan window ‘Editor’ seperti berikut
5
Hubungkan contact dengan left power rail menggunakan Boolean Connection (
) seperti berikut
confidential
Mapping IO Tipe Discrete
Langkah
-4-
15
Deskripsi
6
Pada Modicon M580, addressing pada IO tidak menggunakan format %Ir.s.c ataupun %Qr.s.c karena pada setiap channel sudah mempunyai variable Device DDT. Untuk memastikan nama variable, buka konfigurasi module IO. Misalkan akan memetakan Input dari DI slot 3 rack 0 maka klik dua kali pada gambar modul (Configuration PLC Bus ) sehingga muncul window seperti berikut
7
Terlihat misalkan ingin mengambil nilai dari channel 0 maka variable yang diinputkan adalah “MOD_DIS_16_1.DIS_CH.IN[0].VALUE” confidential
Mapping IO Tipe Discrete
Langkah
-5-
16
Deskripsi
8
Kembali ke section “Mapping_Discrete”, untuk mengambil data dari DI maka klik dua kali pada kontak sehingga muncul window Contact Properties seperti berikut
9
Klik pada kotak dengan titik tiga warna abu-abu sehingga muncul window Data Selection
10
Cek kotak Inside Structure dan cari nama variable channel yang akan diambil datanya seperti gambar berikut
confidential
Mapping IO Tipe Discrete
Langkah 11
-6-
17
Deskripsi Pada window Contact Properties muncul seperti gambar berikut kemudian klik OK.
Sehingga tampilan Contact akan berubah seperti berikut
12
Selanjutnya berikan variable pada Coil dengan klik dua kali pada gambar Coil
13
Muncul window ‘Coil Properties’ dan berikan nama coil pada kotak ‘BOOLEAN Expression’ misalkan ValDI1CH0 seperti berikut kemudian klik OK
confidential
Mapping IO Tipe Discrete
Langkah
-7-
18
Deskripsi
14
Muncul window ‘Create Variable?’. Klik
untuk menampilkan extended configuration.
15
Karena ingin memetakan sinyal discrete input dalam sebuah memory maka pilih tipe data EBOOL (Tipe data BOOL tidak dapat di-assign ke dalam memory).
16
Berikan address variable misalkan %M11
17
Tampilan window seperti berikut lalu klik
untuk melakukan konfirmasi
Sehingga tampilan Coil berubah seperti berikut
18
Lakukan Built program
19
Lakukan Simulasi program
confidential
Mapping IO Tipe Discrete
Langkah
-8-
19
Deskripsi
20
Animasi program pada Mode Online seperti berikut. Merah menandakan variable bernilai 0 dan hijau menandakan variable bernilai 1
21
Untuk melakukan force, klik kanan pada kontak pilih Force Value Force to 1 kemudian animasi berubah seperti berikut. Variable yang terdapat kotak menunjukkan variable tersebut di-Force
Note: Berbeda dengan DI, ketika memetakan sinyal DO maka variable IO harus di-assign di coil dan variable memory di contact
confidential
Mapping IO Tipe Analog
20
Mapping analog berfungsi untuk mengubah nilai raw dari IO ke engineering unit Langkah
Deskripsi
1
Misalkan akan mengambil nilai dari PT-101 dengan range pembacaan 0-5 bar yang disambungkan pada modul AI rack 0, slot 5, channel 3 menggunakan sinyal 4-20 mA. Buka konfigurasi modul analog untuk melihat konfigurasi yang sudah dibuat seperti berikut
2
Buat sections baru dengan nama Mapping_AI
3
Untuk konversi nilai dari raw ke engineering unit maka dibutuhkan function block INT_TO_REAL dan SCALING. Tambahkan function scale dengan cara klik icon Open the Type Library opens ( ) di toolbar sehingga muncul panel Types Library Browser di sebelah kiri seperti berikut
confidential
Mapping IO Tipe Analog
Langkah
-2-
21
Deskripsi
4
Pilih pada kotak Library Name
5
Untuk menemukan function block Scale dapat dilakukan dengan menuliskan nama pada kotak Name = atau mencari manual. Kali ini akan dicari dengan menuliskan ‘*int_to_real’ pada kotak Name = seperti gambar berikut
6
Drag and drop function block tersebut ke dalam editor seperti berikut
confidential
Mapping IO Tipe Analog
Langkah
-3-
22
Deskripsi
7
Tambahkan function block SCALING seperti gambar berikut.
8
Apabila ingin mengetahui penjelasan fungsi function block dapat dilakukan dengan cara klik kanan pada gambar function block tersebut (misalkan SCALING) lalu pilih Help on Type. Muncul window help function block SCALING seperti berikut. Terdapat tiga bagian penjelasan di panel sebelah kiri yaitu Description, Parametering, dan Runtime Error.
confidential
Mapping IO Tipe Analog
Langkah 9
-4-
23
Deskripsi Klik directory Description akan muncul seperti berikut
confidential
Mapping IO Tipe Analog
Langkah
-5-
24
Deskripsi
confidential
Mapping IO Tipe Analog
Langkah 10
-6-
25
Deskripsi Klik directory Parametering akan muncul seperti berikut
confidential
Mapping IO Tipe Analog
Langkah 11
-7-
26
Deskripsi Klik directory Runtime error akan muncul seperti berikut
confidential
Mapping IO Tipe Analog
Langkah
-8-
27
Deskripsi
12
Lakukan koneksi function block ke power rail seperti berikut
13
Berikan variable AI pada IN function block INT_TO_REAL dengan cara klik dua kali pada pin IN sehingga muncul gambar berikut. Klik pada kotak dengan titik tiga warna abu-abu sehingga muncul window Data Selection
14
Ambil variable AI seperti contoh sebelumnya sehingga muncul seperti berikut
confidential
Mapping IO Tipe Analog
Langkah
-9-
28
Deskripsi
15
Berikan nama variable untuk semua parameter seperti gambar berikut
16
Selanjutnya adalah mengatur parameter scaling. Buka Variable & FB Instance Elementary Variable kemudian centang pada kotak DDT sehingga muncul seperti gambar berikut
confidential
Mapping IO Tipe Analog
Langkah 17
29
Deskripsi Berikan nilai pada element Para_SCALING seperti berikut Element
18
-10-
Tipe Data
Inputkan Nilai
in_min
REAL
0.0
in_max
REAL
10,000.0
out_min
REAL
0.0
out_max
REAL
5.0
clip
BOOL
1
Lakukan Build dan simulasi program. Animasi Mode Online seperti berikut
confidential
Mapping IO Tipe Analog
Langkah 19
-11-
30
Deskripsi Pembacaan analog tidak dapat dilakukan forcing atau modifying. Berbeda dengan AI, ketika memetakan sinyal AO maka nilai engineering unit diubah ke nilai raw kemudian dilakukan konversi ke tipe integer. Mapping AO dapat disimulasikan. Cara simulasi analog adalah dengan klik kanan pada pin analog lalu pilih Modify Value. Inputkan nilai pada kotak Value to be set lalu klik Set
confidential
31
Contoh Pemrograman #1 Latching System
#1
Deskripsi Kasus: Dua pushbutton - ‘start’ (HS-101) dan ‘stop’ (HS-102) diletakkan di sebuah panel lokal. Ketika ‘start’ ditekan maka ‘Feed Water Pump (FWP)’ (M-01) akan aktif. Kemudian ketika ‘start’ dilepas, ‘FWP’ akan tetap aktif. ‘FWP’ akan mati jika ‘stop’ ditekan.
Mapping: Tipe Input Output
HS 101 HS 102
Variable
Tipe Data
Address
Nilai
Start
Ebool
%M20
-
Stop
Ebool
%M21
-
M01
Ebool
%M22
-
Special Requirement: (none)
Feed Water Pump (M-01)
confidential
Contoh Pemrograman
32
#1 Latching System
confidential
33
Contoh Pemrograman #2 Discrete Bypass System Deskripsi Kasus: Tank memiliki limit switch low sensor (LSL-201). Ketika LSL-201 aktif maka FWP (M-02) akan aktif untuk me-supply air ke tank. User ingin menambahkan fitur bypass yang berfungsi apabila LSL-201 error, nilai LSL-201 dapat dimanipulasi.
#2
Variable BPS_LS201 bernilai “1” menunjukkan mode bypass aktif. Variable BPSI_LS201 dapat digunakan user sebagai ganti fungsi LSL-201.
Mapping: Tipe
Variable
Tipe Data
Address
Nilai
Input
LSL201
Ebool
%M31
-
Output
M02
Ebool
%M32
-
BPS_LSL201
Ebool
%M33
-
BPI_LS201
EBool
%M34
-
Memory LSL 201
Feed Water Pump (M-02)
Tank
Special Requirement: (none)
confidential
Contoh Pemrograman
34
#2 Discrete Bypass System
confidential
35
Contoh Pemrograman #3 Analog Alarm System Deskripsi Kasus: Steam Drum memiliki LT-301 untuk mengukur level (0-100 %). Screw Feeder (M03) berfungsi untuk me-supply bagasse ke furnace.
#3
M03 dapat diaktifkan jika level tank lebih dari 20%. Ketika level kurang dari sama dengan 20% (LL), sistem akan menghitung delay selama 10 detik sebelum mematikan M03. Mapping:
LT 301
I
Tipe
Variable
Tipe Data
Address
Nilai
Input
LT301
Real
%MW10
-
Output
M03
Ebool
%M44
-
LT301_LL_Val
Real
%MW12
20.0
TOF_M03
Time
-
T#10s
LT301_LL
Ebool
%M41
-
Start_M03
Ebool
%M42
-
Stop_M03
Ebool
%M43
-
Steam Drum
Memory Supply bagasse to furnace
Screw Feeder (M03)
Special Requirement: FB Greater Than (GT), FB TOF (Time Of Delay) confidential
Contoh Pemrograman
36
#3 Analog Alarm System
confidential
37
Contoh Pemrograman #4 Single Element Drum Level Control Deskripsi Kasus: Level steam drum menggunakan LT-301 (0-100 %). Level dijaga pada setpoint 50% dengan mengatur besar bukaan Feed Water Control Valve. Jika level berada di bawah setpoint maka CV akan terbuka untuk me-supply air ke steam drum.
#4
Lakukan pengontrolan menggunakan block PID untuk kasus ini. Mapping: Tipe
Variable
Tipe Data
Address
Nilai
Input
LIC301_PV
Real
%MW50
-
Output
LIC301_MV
Real
%MW52
-
LIC301_SP
Real
%MW54
50.0
LIC301_AMSel
Ebool
%M50
-
LIC301_ManVal
Real
%MW56
-
LIC301_Kp
Real
%MW58
-
LIC301_Ti
Int
%MW60
-
LIC301_Td
Int
%MW62
-
LT 301
Steam Drum
Feed Water Control Valve (CV-301)
Memory
Special Requirement: FB PID, FB MOVE, FB INT_TO_TIME confidential
Contoh Pemrograman
38
#4 Single Element Drum Level Control
confidential
Contoh Pemrograman
39
#4 Single Element Drum Level Control
confidential
The End! Section 05
confidential
Section 06
Case Study Daftar Isi General On-Off Motor
Hal 01
Running Hours Calculation
Hal 03
Derived Data Type and Derived Function Block
Hal 07
SFC Language
Hal 17
confidential
“
01
General On-Off Motor Description Sebuah motor mempunyai fasilitas Local-Remote Selector yang berada di local panel. Pada posisi remote, motor dapat dioperasikan melalui PLC. Terdapat dua mode yaitu Manual-Auto. Pada mode manual, motor dapat dioperasikan oleh operator melalui tombol Start-Stop. Pada mode auto, motor dapat aktif jika permissive of auto aktif. Motor juga mempunyai fasilitas TOR yang berfungsi untuk melakukan trip ketika aktif.
Local/Remote
Trip
Feedback
Start
Stop
Auto/Manual
XL 701
XA 701
XI 701
HS 701
HS 702
HS 703
I
PT 701
” Supply water to steam drum
Boiler Feed Pump (M-701) Motor
Boiler Feed Pump (T-701) Turbo Driven confidential
General On-Off Motor
02
Program
confidential
“
03
Running Hours Calculation Description
Sebuah motor mempunyai fasilitas Feedback Running. User menginginkan perhitungan lama motor aktif dalam format XX h : YY m : ZZ s. Perhitungan dilakukan ketika feedback bernilai “1” dan berhenti ketika feedback bernilai “0”. Disediakan fitur Reset untuk mengembalikan perhitungan ke 00 h : 00 m : 0 s
Hint! 1. Perhitungan jam, menit, dan detik mempunyai variable sendiri 2. Gunakan %S6 (system bit untuk time base 1 s) 3. Terdapat 3 unit FB Up Counter (CTU) 4. Terdapat 2 unit FB Greater Equal (GE) 5. Terdapat 2 unit FR Rising Edge Detection (R_TRIG)
” confidential
Running Hours Calculation
04
Program for Second Calculation
confidential
Running Hours Calculation
05
Program for Minutes Calculation
confidential
Running Hours Calculation
06
Program for Hours Calculation
confidential
Derived Data Type and Derived Function Block
07
Example – Discrete Bypass System Langkah
Deskripsi
A. Membuat Derived Data Type 1
Klik dua kali pada directory Derived Data Types
2
Berikan nama DDT misalkan ‘DBS’ dengan tipe seperti gambar berikut
3
Sesuai contoh di atas, semua variable bertipe data Ebool. Jika menggunakan DDT, tipe Ebool tidak ada sehingga harus menggunakan tipe Bool. Selanjutnya, tipe data Bool tidak dapat dilakukan addressing sehingga harus dipaketkan dalam tipe data Word confidential
Derived Data Type and Derived Function Block
08
Example – Discrete Bypass System Langkah
Deskripsi
4
Tambahkan variable bernama ‘DBS’ dengan tipe data Word seperti berikut
5
Klik kanan pada variable tersebut lalu pilih Edit Bit Rank
6
Muncul window ‘Bit Rank’ lalu inputkan variable Boolean seperti gambar berikut kemudian klik OK
Sehingga variable akan berubah seperti
confidential
Derived Data Type and Derived Function Block
09
Example – Discrete Bypass System Langkah
Deskripsi
7
Build project
8
Buat Variable dengan nama LS101 dengan tipe data BDS dan address %MW100 seperti contoh sebelumnya seperti pada gambar berikut
confidential
Derived Data Type and Derived Function Block
10
Example – Discrete Bypass System Langkah
Deskripsi
B. Membuat Derived Function Block 1
Klik dua kali pada directory Derived FB Types
2
Berikan nama DFB misalkan ‘Discrete_Bypass’
3
Dropdown dan inputkan variable seperti gambar berikut
4
Lakukan programming pada directory berikut seperti contoh sebelumnya
confidential
Derived Data Type and Derived Function Block
11
Example – Discrete Bypass System Langkah
Deskripsi
5
Lakukan programming seperti berikut
6
Build Project
confidential
Derived Data Type and Derived Function Block
12
Example – Discrete Bypass System Langkah
Deskripsi
C. Menggunakan DDT dan DFB 1
Lakukan pemrograman seperti contoh sebelumnya. Insert FB dengan nama Discrete_Bypass dengan memberikan variable menggunakan DDT yang telah dibuat sebelumnya
2
Build dan Run Simulation Project. Hasil seperti gambar berikut
confidential
“
13
Derived Data Type and Derived Function Block Case Description – Scaling System
Terdapat 99 titik pembacaan transmitter di sebuah plant. User ingin melakukan pembacaan transmitter ke dalam engineering unit dan persentase. Untuk mempermudah dan mempercepat pengerjaan, user ingin menggunakan DDT dan DFB. Fitur yang diharapkan adalah, user dapat mengubah-ubah range pembacaan transmitter dengan tujuan apabila dilakukan pergantian tipe transmitter akan mudah dilakukan trail. Sebagai contoh pembacaan TT-909 dengan range pembacaan 0-150 oC dan raw value pembacaan PLC 0-10,000.
” confidential
Derived Data Type and Derived Function Block
14
Derived Data Type – Scaling System
confidential
Derived Data Type and Derived Function Block
15
Derived Function Block – Scaling System
confidential
Derived Data Type and Derived Function Block
16
Program – Scaling System
confidential
SFC Language
17
Example – Latching System Langkah
Deskripsi
1
Buat section dengan bahasa pemrograman SFC dan diberi nama misalkan TrialSFC seperti berikut
2
Untuk melakukan programming, gunakan SFC-Editor pada tool bar
3
Buatlah flowchart seperti gambar berikut
confidential
SFC Language
18
Example – Latching System Langkah
Deskripsi
4
Klik dua kali pada step S_2_1 sehingga muncul window Step properties: S_2_1
5
Pada tab General berikan nama step misalkan MotorOFF
6
Centang kotak Initial Step sebagai instruksi awal proses
confidential
SFC Language
19
Example – Latching System Langkah
Deskripsi
7
Pada tab Actions, pilih Qualifier R (Reset) dan Action tipe Variable dengan menambahkan Variable SFC_Motor
8
Klik tombol New Action sehingga tampil seperti berikut
confidential
SFC Language
20
Example – Latching System Langkah
Deskripsi
9
Klik OK lalu tampilan step akan berubah seperti berikut
10
Klik dua kali pada transition dibawah step MotorOFF sehingga muncul window Transition properties
11
Pilih tipe Variable dan inputkan variable misalkan SFC_Start seperti berikut
12
Klik OK sehingga tampilan transition seperti berikut
confidential
SFC Language
21
Example – Latching System Langkah
Deskripsi
13
Pada step selanjutnya, berikan nama MotorON dan lakukan konfigurasi action dengan memilih Qualifier S dengan Variable SFC_Motor
14
Pada transition terakhir, pilih tipe Variable dan inputkan Variable SFC_Stop. Tampilan flowchart seperti berikut
confidential
SFC Language
22
Example – Latching System Langkah
Deskripsi
15
Lakukan build dan simulasi project sehingga tampilan ketika mode Online adalah sebagai berikut
16
Lakukan simulasi aktifkan motor dengan modify nilai SFC_Start seperti berikut
confidential
23
SFC Language Description – Paint Mixing System
HV 902
HV 901 Water Supply
Paint Supply Mixer (M-10)
M
LSH 901
HS 901
LSM 901
LSL 901
HV 903
Next Process
Pump (M-09)
“
1. Sistem dalam kondisi Idle hingga tombol start (HS-901) ditekan 2. Valve HV-901 akan terbuka untuk memasukkan air ke dalam tangki hingga air mencapai setengah dari tangki atau ketika LSM-901 aktif 3. Mixer akan aktif bersamaan dengan valve HV-902 terbuka untuk memasukkan cat ke dalam tangki. HV-902 tertutup ketika LSH901 aktif 4. Proses mixing terjadi selama 30 detik 5. Drain (HV-903) terbuka dan pompa (M-09) akan aktif untuk transfer cak ke proses lain 6. Ketika LSL-901 aktif, proses draining berhenti 7. Proses kembali ke awal
”
confidential
SFC Language
24
Program – Paint Mixing System
confidential
The End! Section 06
confidential