Disusun oleh:
Disusun oleh:
Diperintahkan kepada,
Nama : FIKRI ZAINI BARIDWAN
Tanggal Lahir / Umur : 09 Februari 2000 (22th 2bl)
Enas................................
Dhuhri Kusuma, S.T.,M.Eng.
Tembusan:
1. Dr.Eng. Igi Ardiyanto, S.T., M.Eng.
Dosen Pembimbing Departemen Teknik Elektro dan Teknologi Informasi FT UGM.
2. Mahasiswa yang bersangkutan.
KATA PENGANTAR
Segala puji bagi Allah Ta’ala yang hanya dengan rahmat dan karunia-Nya lah, kami dapat
menyelesaikan kerja praktik dan penyusunan laporan kerja praktik ini. Selama 6 bulan dari
September 2021 sampai Februari 2022, kami menjalani kerja praktek di Laboratorium
Schneider Universitas Gadjah Mada. Disini kami mendapatkan ilmu dan pengalaman tentang
pengoperasian PLC serta pengetahuan tentang Laboratorium Schneider.
Sejak sebelum dimulainya kerja praktik sampai selesainya laporan ini, kami mendapatkan
bantuan dan dukungan dari berbagai pihak. Karenanya, kami menyampaikan ucapan terima
kasih kepada:
1. Bapak Hanung Adi Nugroho, S.T., M.E., Ph.D., IPM., sebagai Ketua Departemen
Teknik Elektro dan Teknologi Informasi Fakultas Teknik Universitas Gadjah Mada
2. Bapak Dr. Eng., Igi Ardiyanto, S.T., M.Eng. selaku Dosen Pembimbing Kerja Praktik
yang telah memberi kesempatan, membantu, dan membagikan ilmunya dalam
pelaksanaan kerja praktik
3. Bapak Enas Dhuhri Kusuma, S.T., M.Eng. selaku Dosen Pembimbing Laboratorium
yang telah membimbing, mengarahkan, dan membagi ilmunya selama proses kerja
praktik berlangsung di laboratorium.
4. Keluarga kami yang senantiasa mendukung pelaksanaan kerja praktik yang kami
jalankan dari rumah ini
5. Teman-teman dan kakak-kakak di DTETI yang telah memberikan banyak bantuan
sejak sebelum dimulainya kerja praktik sampai selesainya laporan ini
6. Pihak-pihak lain yang tidak bisa kami sebutkan satu per satu
Dalam laporan yang kami susun ini, tentu masih terdapat berbagai kekurangan. Oleh
karena itu, kami terbuka terhadap berbagai kritik dan saran agar kami dapat menjadi lebih baik.
Kami juga berharap agar laporan ini dapat bermanfaat bagi berbagai pihak. Atas perhatian
pembaca sekalian, kami mengucapkan terima kasih.
Tim Penulis
DAFTAR ISI
7
selaku dosen penanggung jawab di Laboratorium Schneider DTETI ini. Kami diberikan
bimbingan awal secara daring, dengan dijelaskan mengenai tugas apa saja yang perlu
dikerjakan pada kegiatan KP ini. Karena tim kami terdiri dari tiga orang, maka tugas dibagi
menjadi 3 bagian yaitu, sistem plant digital, sistem plant analog, serta sistem komunikasi
ethernet.
Pada pengerjaan tugasnya kami melaksanakannya secara luring di tempat
Laboratorium. serta pada proses pengerjaannya, kami banyak dibantu oleh Bapak Enas
Dhuhri Kusuma, S.T., M.Eng. dan Bapak Addin Suwastono, S.T., M.Eng jika terdapat
kendala. Adapun sumber-sumber lain yang kami jadikan referensi dalam mengerjakan tugas
dapat berasal dari studi literatur di Internet.
1.8 Sistematika Penulisan
a. BAB I – PENDAHULUAN
Bab ini mencakup berbagai hal terkait kerja praktik yang kami lakukan, meliputi latar
belakang, tujuan, manfaat, waktu pelaksanaan, tempat pelaksanaan, ruang lingkup
pekerjaan, metodologi, dan sistematika penulisan laporan ini.
b. BAB II – PROFIL LABORATORIUM
Bab ini menjelaskan profil laboratorium tempat kami melakukan kerja praktik. Kami
menyampaikan sedikit deskripsi terkait laboratorium tersebut dan juga terkait
perusahaan Schneider itu sendiri.
c. BAB III – TINJAUAN KOMPONEN SISTEM
Pada bab ini, kami meninjau komponen-komponen yang digunakan untuk membentuk
sistem terkait.
d. BAB IV – PENGEMBANGAN SISTEM
Bab ini memberikan penjelasan terkait perancangan sistem yang kami lakukan. Kami
memulai dengan menjelaskan konsep kerja sistem secara umum, kemudian membahas
tiap bagiannya secara lebih rinci.
e. BAB V – PENUTUP
Pada bab ini, terdapat kesimpulan dan saran terkait pengembangan sistem yang kami
lakukan.
8
BAB II
PROFIL LABORATORIUM
9
BAB III
TINJAUAN KOMPONEN SISTEM
3.1 Modicon M340
10
Kemudian untuk karakteristik umum dari Modul P34 2030 ditunjukkan tabel
dibawah ini :
3.3 CPS2000
BMX CPS 2000 Modul catu daya digunakan untuk mensuplai setiap rak BMX P34 2030
dan modulnya. Pilihan modul catu daya tergantung pada jaringan terdistribusi (arus bolak-balik
atau searah) dan daya yang dibutuhkan. Terdapat 2 tipe modul power supply yaitu :
● Modul power supply untuk jaringan arus AC.
● Modul power supply untuk jaringan arus DC.
Komponen yang terdapat pada Modul CPS 2000 ditunjukkan oleh gambar dan tabel
dibawah ini :
11
Kemudian untuk tabel karakteristik modul CPS 2000 ditunjukkan tabel berikut :
12
13
3.4 DDM16022
Merupakan Modul yang komplemen dengan PLC Modicon M340 yang berfungsi
sebagai Modul Input/Output (I/O) Digital dengan spesifikasi utamanya ditunjukkan oleh
tabel berikut :
Kemudian untuk pin koneksi dari modul DDM16022 ini ditunjukkan oleh gambar
dibawah ini :
14
dengan I adalah pin Input, sedangkan Q adalah pin Output.
3.5 AMM0600
Merupakan Modul yang komplemen dengan PLC Modicon M340 yang berfungsi
sebagai Modul Input/Output (I/O) Analog dengan spesifikasi utamanya ditunjukkan oleh tabel
berikut :
15
Kemudian untuk pin koneksi dari modul DDM16022 ini ditunjukkan oleh gambar
dibawah ini :
16
Altivar 610 memiliki beberapa fitur, antara lain :
• Terdapat fungsi konfigurasi, penyesuaiam, dan kendali motor
• Menampilkan nilai arus yang digunakan
• Konfigurasi penyimpanan dan download
• Membaca/menulis nilai
• Duplikasi konfigurasi dari perangkat satu ke perangkat lain
• Operasi jarak jauh (memerlukan perangkat tambahan)
Altivar 610 memiliki sejumlah I/O , antara lain
• I/O standar
• analog input (0 – 10 V, 0 – 20 mA)
• digital input (24 V DC)
• analog output (0 – 10 V, 0 – 20 mA)
• Relay output module
• relay output (NO)
• Communication module
• Profibus DP V1 bus
18
menggunakan PLC M340 dengan CPU P34 2030, dengan tambahan digital module DDM
16022, serta analog module AMM 0600.
3.7.2 Network Configuration
3.7.4 Programs
Terdapat juga laman untuk memprogram PLC pada bagian Logic, untuk membuka
laman ini klik kanan pada tab Logic lalu pilih “New Section..”, setelah itu kita dapat
memilih bahasa pemrograman yang akan digunakan. pada gambar diatas digunakan
19
bahasa pemrograman Ladder Diagram (LD).
Python adalah bahasa pemrograman tingkat tinggi dan memiliki fungsi umum
(general purpose). Filosofi desain bahasa pemrograman ini adalah menekankan pada kode
yang mudah dibaca dengan memanfaatkan signifikansi perubahan pada identasi atau
batasan logika pemrograman. Pemrograman menggunakan bahasa python dalam projek ini
bertujuan dalam melakukan komunikasi dari PLC ke PC atau Personal Computer
menggunakan jaringan ethernet dengan memanfaatkan library pymodbus. Adapun versi
python yang digunakan adalah versi python 3.9.
3.9 ModScan32
Modscan32 adalah versi terbaru dari aplikasi 16-bit Modscan. Modscan32 adalah
aplikasi Win32 yang digunakan untuk beroperasi sebagai MODBUS master device untuk
mengakses data point pada PLC yang telah terkoneksi. Utamanya, Modscan32 digunakan
dalam pengujian serta verifikasi protokol komunikasi MODBUS pada sistem yang ada
20
BAB IV
RINCIAN PENUGASAN KERJA PRAKTIK
4.1 Perancangan Sistem Input/Output PLC dengan LED
1. Wiring Diagram
Pada bagian ini akan dijelaskan detail perancangan sistem input output (I/O)
menggunakan modul DDM16022 dengan cara membuat rancangan ladder LED pada
Ecostructure Unity Pro kemudian akan dilihat outputnya pada LED.
Dalam hal ini PLC mendapatkan input daya 24V, namun untuk masing-masing pin
input-output dan komponen LED membutuhkan tegangan 10V sehingga perlu diturunkan
dulu melalui rangkaian pembagi tegangan yang ditunjukkan Gambar dibawah
21
Setelah diturunkan, input tegangan masuk untuk pin I0, I1, I2, dan I3 kemudian
akan digunakan untuk mengatur nyala LED yang terhubung dengan pin Q16, Q17, Q18,
dan Q19. Untuk dapat menalankan sistem ini, dibuat ladder diagram pada software control
expert yang ditunjukkan pada subbab 4.1.1.2, kemudian uji coba nyala LED menggunakan
switch
2. Ladder Diagram
● Control Expert Unity Pro, untuk membuat program LD, kita bisa mulai dengan
menekan pada Menu File à New Project, sehingga muncul tampilan seperti
Gambar berikut
Lalu pilih BMX P34 2030 , Tekan OK. Pada tahap ini kita hanya menggunakan
simulasi jadi tidak perlu mencocokkan dengan hardware yang digunakan.
CATATAN : Pada PLC Modicon yang tersedia di Lab DTETI. Versi OS yang
digunakan adalah versi 01.00 sehingga expand pilihan prosesor dengan
centang bagian Show All Version sehingga terlihat seperti Gambar 2.5.
22
● Pada Project Browser, klik pada bagian Programà Tasks à MAST à Logic. Klik
kanan Logic Lalu pilih New Sections, sehingga muncul tampilan Gambar 2.6
berikut
Tulis nama Sections dengan Belajar_LD. Lalu pada pada Language pilih LD. Program
bisa dibuat pada bagian Editor Window
Saat membuat variabel untuk pertama kali, maka akan muncul kotak dialog
sebagai berikut. Pilih TypeàEBOOL. Variabel yang telah dibuat dapat dilihat pada
bagian Variabel and FB instances.
● Kita juga dapat menuliskan terlebih dahulu variabel yang akan digunakan dalam
program. Pada bagian Project Browser, klik pada Variable and FB instances,
Lalu isikan list berikut pada Elementary Variables
● Selanjutnya akan dibuat logika menyalakan motor selama 10 detik lalu mati. Untuk
membuatnya kita memerlukan blok timer TON(Time On Delay). Blok ini akan ON
ketika timer mencapai waktu PT. Seperti pada Gambar 2.8 berikut.
● Input blok merupakan variabel Run atau State Motor pada formal parameter IN.
Durasi waktu ditulis dengan notasi T#xS (untuk detik), dengan x merupakan lama
waktu yang diinginkan. Output ada pada actual parameter Q. Lalu pada ET pilih
variabel time_elapsed.
● Ketika Run aktif, maka akan mentrigger TON sehingga timing berjalan. Variabel
24
Motor diparalel dengan Run agar Contact Run tidak perlu terus menerus aktif. Lalu
digunakan Set Coil agar bisa menyimpan nilai tanpa harus mempedulikan logika
yang mengikutinya. Program LD kita nantinya akan seperti Gambar 2.9 dibawah.
● Cek pada Configuration di Project Browser. Bagian 0: PLC Bus seri firmware yang
dipilih. Pilihlah seri BMX P34 2030 01.00 seperti pada Gambar 8.2.
● Setelah membuat project, kita ingin mentransfer project tersebut ke PLC Modicon
25
M340. Pada metode kali ini akan digunakan program LD dari simulasi Modul 1.
Apabila belum mengikutinya silahkan buka Kembali dan baca juga Modul 6 untuk
menghubungkan variabel program dengan Alamat perangkat I/O diskret DDM
16022.
● Pertama-tama sambungkan USB 2.0 dengan shield ke port mini-usb pada Procesor
seperti ditunjukkan pada Gambar 8.3 dan 8.4.
● Nyalakan saklar MCB untuk memberi daya ke PLC. Indikator tegangan daya dapat
dilihat pada LED 24V pada Power Supply.
● Pilih menu PLC à Standard Mode. Standard Mode digunakan apabila ingin
mendownload/mengupload project ke PLC yang sebenarnya.
● Buka lagi menu PLC à Set Address, maka akan tertampil jendela baru, yang terdiri
dari dua bagian, PLC dan Simulator. Pada pengaturan tadi, karena dipilih Standard
Mode maka muncul tanda centang pada PLC dan berarti kita tidak menggunakan
simulator seperti ditunjukkan pada Gambar 8.6.
26
● Kita dapat memilih jenis komunikasi yang digunakan dengan memilih menu drop-
down Media. Pada Latihan ini kita akan gunakan Media USB. Address/Alamat
untuk Media USB secara default adalah SYS. Lalu tekan OK.
● Buka Kembali menu PLCà Connect , untuk menghubungkan PLC dengan dengan
workstation. Maka pada status bar akan muncul indicator seperti Gambar 8.7
berikut.
● Lalu pilih lagi PLCà Transfer Project to PLC atau cari toolbar untuk
mendownlaod project(transfer dari PC ke PLC) untuk mentransfer project kita ke
PLC Modicon M340. Sehingga muncul jendela Gambar 8.8. Klik Transfer dan
tunggu hingga proses selesai.
Apabila diinginkan program mulai berjalan seketika setelah proses transfer selesai,
maka centang pada PLC Run after Transfer atau Run dengan memilih menu Run atau
klik pada toolbar Run. Tekan OK pada kotak dialog yang muncul (Gambar 8.9).
27
4. Hasil
1 LED
3 LED
Pada bagian ini akan dijelaskan detail perancangan sistem input output (I/O)
menggunakan modul AMM0600 dengan cara membuat pembagi tegangan dan dengan
bantuan input potensiometer sebagai kontrol analog yang diatur pada Ecostruxture Unity Pro
kemudian akan dilihat outputnya pada LED.
28
1. Wiring Diagram
Sama seperti pada proses input-output digital, input tegangan perlu diturunkan dari
24 V menjadi 10 V melalui rangkaian pembagi tegangan kemudian dilewatkan melalui
potensiometer untuk mengatur nilai tegangan yang masuk ke pin U0 sebagai pin pembaca
tegangan. Selanjutnya untuk memastikan tegangan analog yang dibaca oleh PLC sama
maka akan di umpan balik kan ke pin 6 (U1) dan 8(COM1).
Selanjutnya tegangan akan dibaca levelnya melalui pin Q16, Q17, dan Q18 untuk
menyalakan LED berdasarkan level tegangan nya melalui logika ladder pada subbab
2. Ladder Diagram
Cara pembuatan ladder diagram untuk yang analog ini sama dengan yang digital
pada subbab sebelumnya, hanya logika pengaturan output nya saja yang berbeda karena
untuk yang digital ini mengatur level output tegangan yang dibaca dari input potensiometer,
yaitu jika :
● tegangan kurang dari 2500 mV, maka LED yang terhubung dengan pin 16 yang
akan menyala.
● tegangan antara 2500 mV - 5000 mV, maka LED yang terhubung dengan pin 17
29
yang akan menyala.
● tegangan diatas 5000 mV, maka LED yang terhubung dengan pin 18 yang akan
menyala.
30
4. Hasil
gambar PLC
gambar cmd
33
framework pemrograman jaringan yang terlisensi oleh MIT. Source code Python ini
menggunakan class yang dirancang menggunakan library ModbusTcpClient.
Python Class yang telah dirancang ini diawali dengan constructor untuk menginisiasi
koneksi PLC. Pada inisiasi ini dibuat fungsi koneksi dengan dua parameter yaitu ip address
serta port yang digunakan.
self.client = ModbusClient(ip_address, port=port)
Lalu untuk memulai koneksi digunakan perintah sebagai berikut. Syntax connect() ini
akan bernilai true apabila koneksi berhasil dan false apabila gagal.
self.client.connect()
Untuk bagian akses datanya terbagi menjadi dua yaitu akses data coil dan register. Pada
bagian data coil terdapat dua fungsi utama sebagai berikut.
Fungsi read_coils bertujuan untuk membaca nilai suatu coil pada PLC dengan address
tertentu. Parameter yang digunakan adalah address yang telah didefine sebelumnya pada
data editor control expert yang dinyatakan dalam bentuk hexadecimal, lalu quan, serta
slave_id. Sementara fungsi write_coil bertujuan untuk memberikan nilai pada suatu coil
PLC. Parameter yang digunakan pada fungsi write_coil adalah address dari variabel coil,
lalu value dan slave_id. Parameter Value adalah nilai yang ingin diberikan pada coil,
umumnya antara 1 atau 0 (true or false). Parameter quan menyatakan jumlah coil yang
dibaca/ditulis. Parameter slave_id memiliki nilai default 0x00
Selanjutnya adalah bagian register, dimana hampir sama dengan fungsi akses data coil,
hanya saja pada register value yang dibaca dan dituliskan nilainya berada pada rentang
yang lebih luas, dikarenakan tipe datanya sebuah integer, bukan boolean. Fungsi
read_holding_registers bertujuan untuk membaca nilai register pada address tertentu,
sementara fungsi write_register berfungsi untung memberikan nilai pada register dengan
address tertentu.
34
4.1.7 Verifikasi pada Modscan32
Setelah komunikasi antara PC dan PLC menggunakan pymodbus sudah berhasil,
langkah selanjutnya adalah melakukan pengujian serta verifikasi menggunakan software
Modscan32. Verifikasi dilakukan untuk menguji fungsionalitas aplikasi dan mengakses
data point yang ada pada PLC. Hal ini dilakukan agar proses monitoring komunikasi data
PLC dapat dilakukan dengan mudah.
Pada tampilan awal software Modscan32 akan muncul tampilan form secara default.
Pada form ini lah kita dapat melihat alamat tiap-tiap register serta value-nya. Namun
sebelum kita dapat mengakses data register pada PLC terlebih dahulu dilakukan koneksi
menggunakan modbus TCP/IP. Pada menu Connection klik pilihan Connect.
Setelah itu akan muncul tampilan Connection Details seperti pada gambar diatas. Disini
diatur alamat IP dari PLC yang kita gunakan. Jika sudah mengatur alamat IP ModScan32
akan membangun koneksi menuju PLC, dan apabila koneksi berhasil keterangan “device
NOT CONNECTED” akan hilang secara otomatis seperti berikut.
35
Gambar connected
Pada laman form kita dapat melihat alamat register dengan value-nya masing-masing
yang nilainya tersebut akan selalu terupdate apabila terdapat perubahan. Serta kita juga
dapat memilih register yang hendak diubah value-nya pada form tersebut.
Didapatkan nilai address register yang diganti pada form modscan maupun pada Control
Expert berubah menjadi nilai yang dimasukan.
Selain register kita juga dapat mengubah nilai coil (boolean) dengan address yang
diinginkan dengan menggunakan cara yang hampir sama dengan register. Perbedaannya
adalah pada pilihan MODBUS Point Type pilih jenis COIL STATUS.
36
hingga proses kendali motor listrik dengan menggunakan ladder diagram.
Proses selanjutnya adalah pemasangan kabel / wiring. Untuk tipe Altivar 610 pada Lab
Schneider, disarankan menggunakan kabel berdiameter 2.5 mm2 (AWG 14) hingga 6 mm2
(AWG 10) . Digunakan kabel jenis NYAF yang memiliki diameter 2.5 mm2. Ujung dari
masing masing kabel dipasangkan dengan skun E2508 yang memiliki diameter 25mm2 dan
panjang 8 mm. Proses wiring pada VSD Altivar 610 dilakukan sebagaimana diagram
berikut.
37
Pada pemasangan, ditambahkan kontaktor / mcb untuk mengamankan perangkat dari
kerusakan dan kebakaran apabila terjadi hubung singkat. Kontaktor / mcb dipasangkan pada
sambungan daya ke vsd dan sambungan vsd dengan motor listrik. Pada Lab Schneider,
digunakan MCB 3 fasa dengan rating arus sebesar 4A.
Setelah terpasang dengan benar, VSD dan motor listrik siap dioperasikan. Untuk
mengoperasikan VSD dan motor, saklar kontaktor perlu terlebih dahulu di atur pada kondisi
on.
38
4.2.2 Konfigurasi Altivar dengan Motor Listrik
Untuk dapat mengendalikan motor listrik dengan menggunakan VSD perlu terlebih
dahulu menyesuaikan spesifikasi motor listrik dengan pengaturan VSD.Terdapat parameter
yang perlu disesuaikan pada vsd, seperti daya nominal motor listrik, tegangan nominal motor
listrik, arus nominal motor listrik, frekuensi nominal dan maksimal motor, dan kecepatan
putar nominal motor.
Pada Altivar, proses parameter motor listrik disesuaikan pada pengaturan motor parameter.
Menu ini dapat diakses pada menu complete settings →motor parameter.
39
Setelah VSD sudah dikonfigurasikan dengan benar, motor listrik siap dioperasikan.
40
Pin digital pada Altivar dapat diakses untuk berbagai macam fungsi, salah satunya
adalah untuk menyalakan dan menghentikan motor listrik. Begitu juga dengan pin analog
yang dapat difungsikan untuk berbagai macam keperluan, salah satunya untuk mengatur
kecepatan putar motor. Secara bawaan, pin D0 digunakan untuk menyalakan dan
menghentikan motor listrik, sedangkan pin A0 secara bawaan digunakan untuk mengatur
frekuensi motor. Pengaturan pin input dari Altivar 610 dapat diakses pada menu complete
settings → input/output.
Dengan melakukan pengaturan pin input Altivar 610, VSD sejatinya dapat dioperasikan
secara independen tanpa membutuhkan PLC. Rangkaian sederhana VSD untuk dapat
digunakan secara independen ditunjukkan sebagai berikut.
41
4.2.4 Program Sederhana untuk Kendali Motor dengan Ladder Diagram
VSD dan PLC dihubungkan melalui pin I/O digital dan analog dari masing masing
perangkat. Wiring diagram untuk kendali motor ditunjukkan pada gambar berikut
Pada gambar, pin DI1 (pin input digital VSD Altivar 610) terhubung dengan pin Q16
(pin output digital pada DDM16022). Pin digital digunakan untuk mengatur proses start /
stop motor listrik, dimana saat diberi logika high (24 V), maka motor akan menyala dan saat
logika low (0 V) maka motor akan berhenti. Pada VSD, dihubungkan pula pin analog input
AI1 dengan pin U/IO0 yang merupakan analog output dari AMM0600. Pin common
(ground) juga perlu disinkronkan supaya nilai analog dapat terbaca. Pin analog digunakan
untuk mengatur kecepatan putar motor listrik. Pengaturan kecepatan dilakukan dengan
mengubah nilai keluaran tegangan analog dari PLC.
Untuk dapat menjalankan sistem ini, PLC perlu diprogram terlebih dahulu. PLC
diprogram dengan menggunakan bahasa ladder. Diagram Ladder dibuat sebagaimana
gambar berikut.
42
Pada diagram ladder, akan dibuat 3 level kecepatan motor. Kecepatan motor diatur seuai
dengan nilai analog PLC dengan pengaturan sebagai berikut
• nilai analog 2500 (25%) untuk kecepatan motor rendah
• nilai analog 5000 (50%) untuk kecepatan motor sedang
• nilai analog 10000 (100%) untuk kecepatan motor tinggi
Keluaran diatur pada alamat %QW0.2.4 yang berarti keluaran analog (QW) dari PLC
utama (0), modul ke 2 dari rak (2), pada pin nomor 4 (4). Untuk dapat melakukan pemilihan
kecepatan, ditambahkan 3 buah saklar latching yang tersusun atas sejumlah kontak NO
(Normally Open) dan NC (Normally Closed) supaya hanya ada satu nilai keluaran analog.
Pada rangkaian, ditambahkan 3 buah switch untuk memilih kecepatan dan 1 buah switch
yang berfungsi untuk menghentikan laju motor.
Setelah ladder diagram dibuat, langkah selanjutnya adalah melakukan transfer project
ke PLC sebagaimana ditunjukkan pada sesi 4.1.1.3.
43
BAB V
PENUTUP
5.1.1 Kesimpulan
Laboratorium Schneider DTETI FT UGM merupakan lab hasil kerjasma antara
DTETI FT UGM dengan PT Schneider Electric Indonesia. Pada laboratorium ini, terdapat
perangkat PLC dan periferal pendukungnya yang digunakan untuk keperlan riset,
pelatihan, dan praktikum PLC di DTETI FT UGM. Keberadaan Laboratorium Schneider
ini diharapkan dapat mendukung kemajuan tentang pengetahuan dan pengembangan PLC
Schneider. Adanya kerja praktik di Laboratorim Schneider dimaksudkan untuk
mengembangkan pengetahuan seputar PLC untuk peserta kerja praktik dan harapannya
dapat diimplementasikan pada industri. Selain itu, kerja praktik juga bertujuan untuk
melanjutkan riset PLC sebagai tambahan untuk sarana pelatihan di Laboratorim Schneider.
Pada kerja praktik, terdapat 3 tugas yang dilakukan oleh masing masing anggota.
Tugas pertama adalah melakukan pengujian dan perancangan input dan output digital dari
PLC Modicon M340 dengan menggunakan modul discrete DDM16022 dan modul analog
AMM0600. Tugas kedua adalah melakukan perancangan Modbus Ethernet pada PLC.
Tugas ketiga adalah melakukan instalasi dan konfigurasi VSD Altivar 610 serta program
sederhana untuk kendali motor menggunakan VSD dan PLC.
5.2 Saran
5.2.1 Bagi Mahasiswa
Karena nanti akan dibuatkan panduan, disarankan panduan bisa dimanfaatkan
untuk para mahasiswa DTETI untuk pengenalan dan project sederhana PLC.
5.2.2 Bagi Kampus
Semoga laboratorium schneider bisa lebih dimanfaatkan lagi bagi mahasiswa,
karena kemarin sudah dilakukan revitalisasi yang bersamaan dengan KP
44
DAFTAR PUSTAKA
Dwi. (2021, Desember 14). Mengenal IP Address, Subnet Mask, Dedault Gateway, Subnetting,
Netmask/Subnetmask. Retrieved 4 Mei 2022 , from
https://dwi1979blog.wordpress.com/mengenal-ip-address-subnet-mask-default-gateway-
subnetting-netmask-subnetmask/
Deland, H. (2022, Februari 07). Understand TCP/IP Addressing and Subnetting Basics.
Retrieved 4 Mei 2022, from
https://docs.microsoft.com/en-us/troubleshoot/windows-client/networking/tcpip-
addressing-and-subnetting
Nugroho, A. (2021, Januari 06). Pengertian Gateway, Fungsi, Cara Kerja & Perbedaanya.
Retrieved 6 Mei 2022, from
https://qwords.com/blog/gateway-adalah/
Collins, G. (2021, Oktober 17). A Fully Featured Modbus Protocol Stack in Python. Retrieved 8
Mei 2022, from
https://pypi.org/project/pymodbus/
Web Sarjana DTETI. Laboratoriums. Retrieved 6 Mei 2022, from
http://sarjana.jteti.ugm.ac.id/researches-collaborations/laboratoriums/
Schneider Electric. Product Datasheet DMM16022 and AMM0600. Retrieved 18 Mei 2022,
from
https://www.se.com/in/en/product/BMXDDM16022/discrete-i-o-module-x80-8-inputs-24-
v-dc-8-outputs-solid-state/
Schneider Electric. Modicon M340 Using Unity Pro Processors, Racks, and Power Supply
Modules Setup Manual. Retrieved 20 Mei 2022, from
https://media.distributordatasolutions.com/schneider/2016q2/23d8669730ccf64c00352ad3c
51ff3694fab28f3
Pamungkas, Satrio Jati. (2021). Panduan Control Expert Unity Pro PLC Modicon M340.
(Laporan Kerja Praktek 2021)
Richard, A. (2018, September 02). Ladder Logic Basics. Retrieved 22 Mei 2022, from
https://ladderlogicworld.com/ladder-logic-basics/
45
LAMPIRAN
Ladder Diagram
46
Ladder diagram untuk Kendali Motor Listrik dengan Altivar 610
Nomor Nomor
Input / Discrete / Nomor
% Rack Pin yang
Output Analog PLC
Module dipakai
47
Contoh urutan pemasangan Module pada Rack
Contoh pada gambar ditunjukkan bahwa DDM16022 berada pada urutan ke-1 dan
AMM0600 berada pada urutan ke-2
• Nomor Pin Input / Output yang digunakan
Untuk memilih pin pada module yang akan digunakan. Setiap module mempunyai
konfigurasi serta urutan yang berbeda beda sehingga sangat disarankan untuk terlebih
dahulu membaca panduan dan spesifikasi dari module yang akan digunakan.
# - #
#
# - #
from pymodbus.client.sync import ModbusTcpClient as ModbusClient
class ModbusPLC:
'''
Proses penyambungan PLC menggunakan ModbusTCP, pengguna hanya perlu
menyediakan
alamat IP serta port dimana PLC berjalan dalam menginstansi class.
Contoh:
plc = plc('192.168.100.1')
atau
plc = plc('192.168.100.1', 502)
'''
Argumen
ip_address
port
'''
self.client = ModbusClient(ip_address, port=port)
48
def try_connect(self):
'''
Mencoba koneksi ke PLC.
Return: boolean
'''
if self.client.connect()==False:
print('Connection invalid. Please try again.')
return(False)
else:
print('Successfully connect to PLC.')
return(True)
Argumen
addr: alamat coil mula(hex atau int)
quan: jumlah coil yang dibaca
slave_id: default 0x00 untuk broadcast
Argumen
addr: alamat coil mula(hex atau int)
val: nilai yang dituliskan
(untuk menuliskan satu nilai, cukup int atau bool)
(untuk menuliskan banyak nilai, gunakan list int atau list
bool)
slave_id: default 0x00 untuk broadcast
'''
try:
self.client.connect()
if type(val)==bool:
49
rr = self.client.write_coil(addr, val, unit=slave_id)
print('Coil', str(addr), 'written successfully!')
else:
rr = self.client.write_coils(addr, val, unit=slave_id)
print('Coils written successfully!')
self.client.close()
except Exception as e:
print('An error occured while trying to write coils: %s'
%str(e))
Argumen
addr: alamat register mula(hex atau int)
quan: jumlah register yang dibaca
slave_id: default 0x00 untuk broadcast
Argumen
addr: alamat register mula(hex atau int)
val: nilai yang dituliskan
(untuk menuliskan satu nilai, cukup int)
(untuk menuliskan banyak nilai, gunakan list int)
slave_id: default 0x00 untuk broadcast
'''
try:
self.client.connect()
if type(val)==list:
rr = self.client.write_registers(addr, val, unit=slave_id)
print('Registers written successfully!')
else:
rr = self.client.write_register(addr, val, unit=slave_id)
50
print('Registers written successfully!')
self.client.close()
except Exception as e:
print('An error occured while trying to write registers: %s'
%str(e))
# #
# Prompt user untuk alamat IP PLC, coba koneksi sampai berhasil
# #
count = 0
while True:
ip_plc = input('Enter the IP address of PLC: ')
level_plc = plc(ip_plc, 502)
if level_plc.try_connect() == True: break
while True:
ctrlx=input("\n press 1 and enter to do counting and 0 to reset counting
and 2 to exit: ")
if ctrlx == '1':
level_plc.write_coil(0x03, True)
print('counting up by 1')
count+=10
time.sleep(1)#memberikan sensasi push button
level_plc.write_coil(0x03, False)
level_plc.write_register(0x01, count)
rr = level_plc.read_register(0x01,1)
print(rr)
print('\n')
elif ctrlx == '0':
level_plc.write_coil(0x01, True)
print('reset counting')
count=0
time.sleep(1)#memberikan sensasi push button
level_plc.write_coil(0x01, False)
level_plc.write_register(0x01, count)
rr = level_plc.read_register(0x01, 1)
print(rr)
print('\n')
51
else: break
52