Diagram Keadaan (State diagram) pada dasarnya adalah salah satu metoda untuk menggambarkan proses operasi sebuah sistem. Sistem berbasis keadaan dapat digambarkan dengan keadaan-keadaan sistem tersebut dan transisi diantaranya (transisi ini terjadinya hanya sesaat). Gambar dibawah ini memperlihatkan contoh diagram state sederhana, dimana diagram tersebut memiliki dua buah keadaan yaitu State A dan State B. Jika sistem tersebut berada dalam keadaan State A dan terjadi masukan A maka sistem akan bertransisi menuju State B, dan sebaliknya jika sistem ada dalam state B kemudian terjadi masukan B maka sistem akan menuju State A. Secara praktis perancangan berbasis state ini juga umumnya membutuhkan masukan awal (inisial) yang berfungsi untuk memicu sistem menuju salah satu state yang dikehendaki. Untuk kasus sistem kontrol dengan PLC, sebagai masukan pemicu umumnya dipilih special bit First Scanning (FS) sedangkan jika implementasinya menggunakan diagram ladder elektromekanis, masukan pemicu dapat dipilih sebuah tombol atau masukan luar lainnya.
Berdasarkan gambar diatas tersebut terlihat bahwa ketika sistem kontrol dihidupkan (sistem on), maka sistem akan menuju state Lampu mati. Jika PB_ON ditekan atau terdeteksi adanya gerakan, maka sistem akan bertransisi menuju State Lampu hidup. Ketika sistem sekarang berada di State Lampu hidup dan waktu satu jam telah berlalu (timer 1 jam) atau PB_OFF ditekan maka sistem sekarang akan menuju state Lampu mati, dan seterusnya. Secara teknis, transisi state yang ditunjukan oleh tanda panah umumnya dipicu oleh kombinasi masukan-masukan sistem tersebut sedangkan keluaran sistem untuk setiap state tidak ditulis dalam diagram tersebut tetapi diberikan dalam sebuah tabel lain. Seperti terlihat pada contoh gambar dibawah:
Terlihat dari gambar diatas, bahwa sistem kontrol tersebut memiliki enam buah masukan (A,B,C,D,E dan F) dan tiga buah state (S0, S1 dan S2). Setiap transisi antara state dipicu oleh kombinasi dari masukan-masukannya (misal jika sistem tersebut berada pada state S2 dan terjadi kombinasi masukan E(C+D+F), maka sistem tersebut sekarang akan bertransisi menuju S1, jika tidak maka sistem tersebut akan tetap berada di state S2. Sedangkan tabel dibawahnya (gambar (b)) menunjukan kombinasi output yang mungkin terjadi untuk setiap state tersebut: output P akan On (1) jika sistem berada pada state S1 atau S2, dan
seterusnya. Perlu ditekankan disini bahwa perancangan sistem kontrol dengan menggunakan pendekatan diagram state ini umumnya bersifat subjektif dan memerlukan pemikiran dan kehati-hatian yang mendalam, sedangkan transformasi diagram state yang didapat kedalam ladder-nya dapat dilakukan dengan menggunakan pendekatan-pendekatan terstruktur dan sistematis yang akan dibahas belakangan. Salah satu keuntungan nyata perancangan program ladder dengan menggunakan pendekatan ini adalah program lebih terstruktur sehingga mudah untuk merancang dan menganalisisnya.
Untuk sebuah proyek atau aplikasi sistem kontrol yang baru. Biasanya perancangan sistem dimulai dengan deskripsi operasi sistem kontrol yang diinginkan (umumnya berupa narasi). Deskripsi ini kemudian ditransformasikan kedalam state-state yang mungkin terjadi pada sistem tersebut (state-state ini umumnya dibuat berdasarkan kombinasi yang mungkin terjadi atau diharapkan pada output sistem kontrol tersebut), Langkah selanjutnya setelah state-state ini didapat adalah menggambarkan aliran logika operasi antara state ini sehingga membentuk diagram state lengkap. Untuk lebih jelasnya perhatikan permasalahan sistem kontrol konveyor berikut ini : Rancanglah sistem kontrol konveyor seperti terlihat pada gambar dibawah ini sehingga operasinya adalah sebagai berikut: Pada saat PB start ditekan, konveyor Box bergerak. Setelah terdeteksi kehadiran Box (Sensor SE B On), konveyor Box ini berhenti dan konveyor apel bergerak. Sensor SE A akan menghitung sampai 12 apel setelah itu konveyor apel berhenti dan konveyor Box berjalan lagi. Counter akan direset dan operasi akan terus berulang sampai PB Stop ditekan.
Untuk menyelesaikan permasalahan diatas langkah pertama adalah mengidentifikasi masukan dan keluaran sistem tersebut, dalam hal ini ada empat buah masukan dan dua keluaran:
Input
PB Start : Push Button Untuk memulai proses (NO)
PB Stop : Push button untuk menghentikan operasi (NO)
SE A : Sensor kehadiran Apel (NO)
SE B : Sensor Kehadiran Box (NO)
Output
RMA : Relay penggerak motor konveyor Apel (NO)
RMB : Relay penggerak motor konveyor Box (NO)
Dalam kaitannya dengan kombinasi output yang mungkin terjadi untuk permasalahan diatas pada dasarnya hanya ada tiga buah state yang relevan: Kedua konveyor mati (State 0), konveyor apel bergerak sedangkan konveyor Box mati (State 1), dan konveyor apel mati sedangkan konveyor Box hidup (State 2). Perhatikan bahwa untuk kasus sistem kontrol yang diharapkan diatas tentunya tidak mungkin kedua konveyor tersebut hidup. Untuk lebih ringkasnya kita gambarkan keadaan-keadaan keluaran untuk setiap state tersebut kedalam bentuk tabel seperti dibawah ini:
Langkah selanjutnya adalah menuliskan aliran logika antara state ini: Ketika sistem kontrol (misal dalam hal ini PLC) dihidupkan (Power On: FS) maka sistem akan menuju state 0(kedua motor mati), dalam keadaan ini sistem akan menuju state 2 (motor konveyor box:RMB hidup) hanya jika kita tekan tombol PB Start. Sistem akan tetap berada pada state 2sampai terdeteksi kehadiran Box oleh sensor (SE B On). Jika terdeteksi adanya Box makasekarang sistem akan menuju state 1 (motor konveyor apel: RMA bergerak). Motor apel iniakan tetap terus bergerak sampai terhitung 12 buah apel oleh counter lewat SE A, setelah mencapai hitungan 12 sistem kembali ke keadaan state 2 dan seterusnya. Untuk tiap keadaan state, tombol PB Stop akan membuat sistem menuju state 0. Atau jika kita gambarkandiagramnya maka akan nampak seperti gambar berikut ini:
Seperti telah dijelaskan sebelumnya, setelah diagram state yang menggambarkan operasi kontrol didapat maka dengan menggunakan pendekatan-pendekatan terstruktur kita dapat secara langsung mentransformasikannya kedalam bentuk diagram ladder PLC-nya. Hal ini selengkapnya akan dibahas dibawah ini.