Anda di halaman 1dari 128

Training Pemrograman

Software Schneider Unity Pro XL


-- Maristya Rahmadiansyah --

Maret 2019
Overview
Modul ini menjelaskan pemrograman menggunakan Unity Pro XL

Project Hardware
Pengenalan PLC Connection Programming Case Study
Management Configuration

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

Switches CPU Motor

Sensor Input Memory Output Valve

Button Communication Lights

Programming Device
02
Komponen PLC
PLC terdiri dari enam komponen yang saling beketerkaitan

Processor Unit (CPU) Memory


Unit yang terdiri dari microprocessor untuk 1 2 Dimana program yang berisikan control
membaca sinyal input dan menjalankan action yang dijalankan oleh microprocessor
M340 perintah berupa sinyal output sesuai disimpan. Selain itu memori juga
dengan program yang tersimpan di menyimpan status sinyal input dan sinyal
memory. perintah ke output.

Communication Interface Input Output Module


Modul yang digunakan untuk menerima
dan mentransmisikan data dalam jaringan
3 4 Unit untuk menerima informasi dari
peralatan di lapangan dan memberikan
Ethernet RIO Module komunikasi dari/ke remote PLC. informasi ke peralatan di lapangan.
X80 IO Module

Power Supply Programming Device


Digunakan untuk konversi listrik tegangan 5 6 Digunakan untuk me-develop program
AC ke listrik tegangan rendah DC yang kemudian di-transfer ke memory unit PLC.
PSU dibutuhkan untuk processor unit dan input- Unity Pro
output interface module.

confidential
03
Proses Scan
Proses scan dibagi menjadi empat tahap

Input
Input Scan (Read)
Mendeteksi sinyal input dari peralatan di lapangan yang
Input Scan terkoneksi dengan PLC.

Program Scan (Execute)


Program Scan Melakukan eksekusi program yang telah dibuat

Housekeeping Housekeeping (Communication & Diagnostic)


Berkomunikasi dengan programming device dan
melakukan internal diagnostic
Output Scan
Output Scan (Write)
Output 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 Modular

M221 M340

Seluruh komponen menjadi satu Komponen terpisah dalam modul-modul

Umumnya berukuran kecil Berukuran lebih besar

Jumlah IO yang relatif sedikit Memungkinkan penambahan jumlah IO

Beberapa dapat dihubungkan dengan IO Dapat ditambahkan modul khusus


tambahan
Tidak dapat ditambahkan modul khusus

confidential
05
Jenis-jenis PLC
Menurut Jumlah IO, Kompleksitas, dan Harga

8. Very Large

7. L-VL

Kompleksitas dan Harga


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 Module untuk sinyal kontinu yang mempunyai
mempunyai dua state – ON dan OFF state tak terhingga

Standard Sinyal: Standard Sinyal:


24 V; 48V; 125V; 100…120 V; 200…240V +10 V; 0-10 V; 0…5 V; 1…5 V; +5 V; 4…20 mA;
0…20 mA; +20 mA

BMXDDI1602 BMXDDO1602 BMXAMI0410 BMXAMO0410


(Discrete Input) (Discrete Output) (Analog Input) (Analog Output)
Push button, Limit switch, Sirene, Lampu, On-off Transmitter Control valve, VSD
Selector, Relay valve, Motor starter, Relay

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
01
Kapabilitas Unity Pro XL

Hardware Platform 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
02
Membuka Aplikasi Unity Pro XL

Langkah 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
03
Tampilan Awal Unity Pro XL

confidential
04
Membuat Project Baru
Dalam membuat project baru, dua hal paling penting adalah memilih CPU dan Backplane

Langkah Deskripsi
1 Pertama kali aplikasi Unity Pro terbuka, tampilan masih kosong. Klik icon New Project pada Toolbar
sehingga muncul window seperti berikut

confidential
05
Membuat Project Baru -2-

Langkah 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 menu-
menu. 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
07
Project Browser
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

Online Status Bar

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

confidential
09
Status Bar -2-

Label 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 HMI R/W mode
Ini adalah mode default ketika membuka aplikasi
• Human Machine Interface Read Only Mode HMI R/O 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
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
10
Status Bar -3-

Label Deskripsi Tampilan


11 Syslog server availability (ketika dikonfigurasi)
• Syslog server available -
• Syslog server cannot be reached SYSLOG
12 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 -, F
tersebut untuk menunjukkan list variable yang di-force
15 Informasi event
• Jika CPU mendeteksi error, klik ini untuk menampilkan detail error

• Ikon tampil ketika CPU menunjukkan error baru

confidential
11
Status Bar -4-

Label Deskripsi Tampilan


16 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. Digunakan untuk mengarsipkan Digunakan untuk export project Digunakan untuk export project
Ini digunakan secara default ketika project dan dapat dilakukan ketikan pada format XML dan dapat pada format XML dengan
membuka atau menyimpan project project sudah di-generate dilakukan pada stage apapun konfigurasi global DTMs dan dapat
dilakukan pada stage apapun
Terdapat file *.BAK dengan nama file File ini kompatibel dengan segala File ini kompatibel dengan segala
sama dengan *.STU sebagai backup versi Unity pro versi Unity pro File ini kompatibel dengan segala
versi Unity pro
Dapat terkoneksi dengan PLC pada File ini otomatis tersimpan ketika Tidak dapat terkoneksi dengan PLC
Equal Online Mode dan dapat project di-build dengan nama file pada Equal Online Mode Tidak dapat terkoneksi dengan PLC
melakukan edit Online sama dengan *.STU dengan pada Equal Online Mode
tambahan .Auto sebelum *.STA
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 2 Pilih lokasi penyimpanan dan 2 Pilih lokasi penyimpanan dan 2 Pilih lokasi penyimpanan dan
berikan nama file misalkan berikan nama file misalkan berikan nama file misalkan berikan nama file misalkan
‘Training’ ‘Training’ ‘Training’ ‘Training’
3 Klik Save 3 Klik Save 3 Klik Export 3 Klik Export

confidential
13
Open/Restore Project
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
14
Close Project
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
15
Exit Unity Pro
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

Build
Membuat executable code untuk
aplikasi PLC. Setiap Build atau Rebuild
secara otomatis melakukan Analyze.
Build Hanya program yang sudah sukses di-
Analyze build yang dapat di-download ke PLC.
Melakukan pengecekan syntax
dan semantic program sudah Build All dilakukan untuk pertama kali
benar namun tidak di-build 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
01
Arsitektur Sistem yang Akan Dibuat
Terdiri dari dua panel yaitu Local dan RIO Drop. Pada Local Panel terdapat Extended Backplane

confidential
02
Window Configuration
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
03
Menambahkan Modul di Local Rack
Terdapat enam jenis modul yang dapat ditambahkan yaitu Analog, Communication, Counting, Discrete, Motion, dan Third Party Product

Langkah Deskripsi
1 Klik kanan pada Configuration  PLC Bus lalu pilih Open sehingga muncul window ‘PLC Bus’ seperti berikut

confidential
04
Menambahkan Modul di Local Rack -2-

Langkah Deskripsi
2 Klik kanan pada slot kosong (misal slot 2) pada backplane lalu klik New Device sehingga muncul window
‘New Device’ seperti berikut

confidential
05
Menambahkan Modul di Local Rack -3-

Langkah 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
06
Menambahkan Modul di Local Rack -4-

Langkah Deskripsi
6 Klik kanan pada slot kosong (misal slot 3) pada backplane lalu klik New Device sehingga muncul window
‘New Device’ seperti gambar berikut

confidential
07
Menambahkan Modul di Local Rack -5-

Langkah 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
08
Menambahkan Rak/Backplane di Local Rack
Penambahan rak dilakukan ketika rak pada sebuah panel tidak dapat ditambahkan modul.
Kedua rak tersebut dihubungkan dengan modul rack extender
Langkah Deskripsi
1 Klik kanan rounded rectangle pada bagian kiri bawah lalu klik New Device sehingga muncul window ‘New
Device’ seperti gambar berikut

confidential
09
Menambahkan Rak/Backplane di Local Rack -2-

Langkah 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
10
Menambahkan Rak/Backplane di Local Rack -3-

Langkah 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
11
Menambahkan Remote IO (RIO)
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
12
Menambahkan Remote IO (RIO) -2-

Langkah 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
13
Unlock Security pada Processor
CRA akan bekerja jika Services berikut diaktifkan

Langkah Deskripsi
1 Buka window PLC Bus

2 Klik dua kali pada gambar yang terdapat di CPU sehingga muncul window “0.0 : EIO :
CommHeadRIODIO8L2”

3 Klik tombol Unlock Security sehingga tampilan seperti gambar berikut

4 Klik tombol Validate

confidential
14
Assign IP Address PLC
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
15
Setting Modul Analog
Bertujuan untuk mengatur jenis sinyal yang digunakan pada modul analog

Langkah Deskripsi
1 Klik dua kali pada gambar modul analog, misal pada BMX AMI 0410 sehingga muncul window seperti
berikut

confidential
16
Setting Modul Analog -2-

Langkah 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
17
Power Consumption
Bertujuan untuk memonitor konsumsi daya listrik yang digunakan pada power supply unit

Langkah Deskripsi
1 Klik kanan pada gambar device power supply, misal pada ‘Main Rack’, pilih Power Supply Budget sehingga
muncul tampilan seperti berikut

confidential
18
Power Consumption -2-

Langkah 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
19
Power Consumption -3-

Langkah Deskripsi
4 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
02
Mode Koneksi
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 Melakukan koneksi


PC ke PLC 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 Different
File yang dieksekusi dan informasi yang di-
E upload baik di PLC dan di PC identik.
D
File yang dieksekusi dan informasi yang di-
upload baik di PLC dan di PC berbeda.
Dapat dilakukan modifikasi seperti halnya Tidak dapat dilakukan modifikasi dan
pada mode offline. Ketika melakukan animasi terbatas hanya pada local variable.
generating (build) juga secara otomatis akan
mengubah program di PLC. Untuk menjalankan Unity pada mode equal,
program harus ditransfer terlebih dahulu dari
Jika program dimodifikasi pada PC tanpa PC ke PLC.
dilakukan generating, maka hanya pada
bagian yang tidak dimodifikasi yang masih
memunculkan animasi.

Untuk memunculkan animasi kembali,


lakukan generating dan update program
pada PLC.

confidential
04
Melakukan Akses ke PLC
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
05
Melakukan Akses ke PLC -2-

Langkah 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
06
Download Program
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
07
Download Program -2-

Langkah 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
08
Upload Program
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
09
Run Simulation
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
01
Representasi Ladder Diagram (LD)
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 EFB DFB


Elementary Data Type Derived Data Type IO Derived Data Type Device Derived Data Type Elementary Function Block Derived Function Block

Located Located Unlocated Unlocated Unlocated 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 Misal address %IW0.3.5 maka yang


I/O dimaksud adalah sinyal analog input pada
%Q Address discrete output rack 0, slot 3, dan channel 5

%QW Address analog output

%M Memory bit (8 bit - discrete) Misal %M0


Addressing Memory
%MW Memory word (16 bit - analog) Misal %MW2

%S System bit (discrete) Misal %S0 menunjukkan COLDSTAT


System
%SW System word (analog) Misal %SW0 menunjukkan MASTPERIOD

confidential
05
Membuat Variable EDT
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
06
Membuat Variable EDT -2-

Langkah 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
07
Membuat Variable EDT -3-

Langkah 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 Event Processing


Deskripsi Merupakan task Task ini dimaksudkan Task ini Digunakan untuk
utama sebuah untuk short duration dimaksudkan untuk mengurangi waktu
program yang harus dan periodic task dengan respons program
ada dan secara processing tasks processing lebih pada event:
default sudah dibuat lambat dan prioritas • Dari IO Modul
rendah • Event Timers
Execution • Cyclic (default) • Prioritas lebih tinggi • Prioritas paling Asynchronous
• Periodic (1…255 dibandingkan rendah
ms) master task • Periodic (10…255
• Periodic (1…255 ms) ms)
Control • %SW0 (Task • %SW1 (Task • %SW2 (Aux task 0 • %S38 (Activation
periode) periode) periode) of event
• %S30 (Master task • %S31 (Master task • %S32 (Aux task 0 processing)
activation) activation) activation) • etc
• etc • etc • etc

Note:
• Pada training, dicontohkan pemrograman pada Mask Task (sudah ada secara default)
• Untuk Task yang lain perlu dibuat secara manual

confidential
09
Membuat Task dan Event Processing
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
Subroutine
Section hanya ada pada task, tidak ada pada
event processing 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

Programming proses dan logic


Status dan nilai diambil dari sesuai dengan sistem yang Status dan nilai di-assign ke
modul Input akan dibangun modul Output

Input from Field Device Process / Logic Output to Field Device

I MI P/L MO O

Mapping Input Mapping Output

Status dan nilai dari modul Status dan nilai yang di-assign
Input dipetakan ke memory ke modul Output dipetakan
(%M atau %MW) dulu ke memory (%M atau
%MW)

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
12
Mapping IO Tipe Discrete
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
13
Mapping IO Tipe Discrete -2-

Langkah Deskripsi
3 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
14
Mapping IO Tipe Discrete -3-

Langkah 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
15
Mapping IO Tipe Discrete -4-

Langkah 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
16
Mapping IO Tipe Discrete -5-

Langkah 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
17
Mapping IO Tipe Discrete -6-

Langkah Deskripsi
11 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
18
Mapping IO Tipe Discrete -7-

Langkah 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
19
Mapping IO Tipe Discrete -8-

Langkah 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
20
Mapping IO Tipe Analog
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
21
Mapping IO Tipe Analog -2-

Langkah Deskripsi
4 Pilih <Libset V11.0> 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
22
Mapping IO Tipe Analog -3-

Langkah 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
23
Mapping IO Tipe Analog -4-

Langkah Deskripsi
9 Klik directory Description akan muncul seperti berikut

confidential
24
Mapping IO Tipe Analog -5-

Langkah Deskripsi

confidential
25
Mapping IO Tipe Analog -6-

Langkah Deskripsi
10 Klik directory Parametering akan muncul seperti berikut

confidential
26
Mapping IO Tipe Analog -7-

Langkah Deskripsi
11 Klik directory Runtime error akan muncul seperti berikut

confidential
27
Mapping IO Tipe Analog -8-

Langkah 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
28
Mapping IO Tipe Analog -9-

Langkah 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
29
Mapping IO Tipe Analog -10-

Langkah Deskripsi
17 Berikan nilai pada element Para_SCALING seperti berikut
Element 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

18 Lakukan Build dan simulasi program. Animasi Mode Online seperti berikut

confidential
30
Mapping IO Tipe Analog -11-

Langkah Deskripsi
19 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

Deskripsi Kasus:
Dua pushbutton - ‘start’ (HS-101) dan ‘stop’ (HS-102) diletakkan di sebuah

#1
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 Variable Tipe Data Address Nilai
Start Ebool %M20 -
Input
Stop Ebool %M21 -
HS Output M01 Ebool %M22 -
101

HS
102 Special Requirement:
(none)

Feed Water Pump (M-01)

confidential
32
Contoh Pemrograman
#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

#2
(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.

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 -
Memory
BPI_LS201 EBool %M34 -
LSL
201

Special Requirement:
(none)
Feed Water Pump (M-02) Tank

confidential
34
Contoh Pemrograman
#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

#3
(M03) berfungsi untuk me-supply bagasse ke furnace.

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:
Tipe Variable Tipe Data Address Nilai

LT Input LT301 Real %MW10 -


I
301
Output M03 Ebool %M44 -
LT301_LL_Val Real %MW12 20.0
Steam Drum TOF_M03 Time - T#10s
Memory LT301_LL Ebool %M41 -
Start_M03 Ebool %M42 -
Supply bagasse to
furnace Stop_M03 Ebool %M43 -

Screw Feeder (M03)


Special Requirement:
FB Greater Than (GT), FB TOF (Time Of Delay)

confidential
36
Contoh Pemrograman
#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

#4
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.

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 -
LT LIC301_SP Real %MW54 50.0
301
LIC301_AMSel Ebool %M50 -
LIC301_ManVal Real %MW56 -
Memory
Steam Drum
Feed Water Control LIC301_Kp Real %MW58 -
Valve (CV-301)
LIC301_Ti Int %MW60 -
LIC301_Td Int %MW62 -

Special Requirement:
FB PID, FB MOVE, FB INT_TO_TIME
confidential
38
Contoh Pemrograman
#4 Single Element Drum Level Control

confidential
39
Contoh Pemrograman
#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 XA XI HS HS HS PT
I
701 701 701 701 702 703 701

Supply water to
steam drum

Boiler Feed Pump (M-701)


Motor

Boiler Feed Pump (T-701)


Turbo Driven

confidential
02
General On-Off Motor
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
04
Running Hours Calculation
Program for Second Calculation

confidential
05
Running Hours Calculation
Program for Minutes Calculation

confidential
06
Running Hours Calculation
Program for Hours Calculation

confidential
07
Derived Data Type and Derived Function Block
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 <Struct> 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
08
Derived Data Type and Derived Function Block
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
09
Derived Data Type and Derived Function Block
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
10
Derived Data Type and Derived Function Block
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
11
Derived Data Type and Derived Function Block
Example – Discrete Bypass System

Langkah Deskripsi
5 Lakukan programming seperti berikut

6 Build Project

confidential
12
Derived Data Type and Derived Function Block
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
14
Derived Data Type and Derived Function Block
Derived Data Type – Scaling System

confidential
15
Derived Data Type and Derived Function Block
Derived Function Block – Scaling System

confidential
16
Derived Data Type and Derived Function Block
Program – Scaling System

confidential
17
SFC Language
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
18
SFC Language
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
19
SFC Language
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
20
SFC Language
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
21
SFC Language
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
22
SFC Language
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 HV
901 902

Water Supply Paint Supply

Mixer (M-10)

M LSH
1. Sistem dalam kondisi Idle hingga tombol start (HS-901) ditekan
901
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
HS LSM memasukkan cat ke dalam tangki. HV-902 tertutup ketika LSH-
901 901 901 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
LSL
7. Proses kembali ke awal
HV 901
903

Next Process

Pump (M-09)

confidential
24
SFC Language
Program – Paint Mixing System

confidential
The End!
Section 06

confidential

Anda mungkin juga menyukai