Palang Pintu Kereta Api Otomatis dg ATmega8

Lama ya kita tidak ngoprek ATmega8. Kali ini aplikasi mikrokontroler akan menggunakan AVR ATmega8 sebagai ‘otaknya’. Kita akan membuat sistem palang pintu kereta api otomatis. Kalau biasanya kan dijaga petugas KAI, kalau ada kereta mau lewat , bapak petugas langsung menutup palang pintu sampai kereta bener2 lewat dan kemudian membukanya kembali.

Eh, penjaga palang pintu itu tugasnya luar biasa ya. Menjaga keselamatan pengguna jalan, termasuk kita. Dan tidak mengenal hari libur (paling gentian shift ). Lebaran juga tetap masuk, dan harus tetap terjaga. Lha kalau pas ngantuk gimana ? Kalau pas capek gimana ?  Kalau pas lupa/lengah ? Nah untuk itu kita akan membuat sistem palang pintu kereta secara otomatis.


Selain untuk mengurangi ‘human error’ alat ini dapat juga dipasang di palang pintu yang tidak ber-penjaga. Dengan alat ini ketika ada kereta datang maka palang pintu secara otomatis akan menutup dan membuka sendiri, tanpa petugas jaga.

Sistem Palang Pintu Kereta Api Otomatis

Prinsip dasarnya sederhana. Kita pasang 4 sensor untuk mendeteksi kereta yang lewat. dapat memakai Infrared + Phototransistor. Pada contoh simulasi ini nanti kita pakai LDR, karena yang paling mudah disimulasikan .

Sensor 1 dan Sensor 2 untuk mendeteksi kereta dari arah kiri. Sensor 3 dan 4 dari arah kanan. Sensor 1 dan 2 juga dipakai untuk mendeteksi benda/objek yang lewat, apakah kereta api atau yang lain. Kan bisa jadi hewan ya, semacam kerbau atau sapi numpang lewat, ngenai sensor, bisa2 palang pintu nutup otomatis deh…

Untuk membedakannya maka perlu tahu kecepatan benda-nya. Cara-nya ? ya tinggal hitung saja waktu antara objek mengenai sensor 1 dan sensor 2. Jarak Sensor 1 dan 2 kan kita buat 1 m. Jadi kecepatannya V=S/t . S adalah jarak sensor 1 dan 2 (1 m) sedangkan t adalah waktu tempuh dari sensor 1 ke sensor 2 yang dihitung oleh timer mikrokontroler.
Rangkaian untuk simulasinya memakai LDR sebagai sensor, motor DC untuk membuka – menutup pintu.

Skematik Sistem Palang Pintu KA Otomatis

Programnya kita buat dengan BASCOM-AVR :

$regfile = “m8def.dat”
$crystal = 1000000
Dim F As Byte
Config Lcdpin = Pin , Rs = Portb.0 , E = Portb.1 , Db4 = Portb.2
Config Lcdpin = Pin , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5
Config Lcd = 16 * 2
Cursor Off
Cls
Lcd “Palang Pintu KA”
Lowerline
Lcd “Otomatis”
Wait 1
Config Timer1 = Timer , Prescale = 1
On Timer1 Over
Enable Interrupts
Enable Ovf1
Stop Timer1

Portd = &HFF
Ddrd = &HFF
Ddrc = &H0
Portc = &HFF

Do
   ‘=== kereta dari arah kiri
   If Pinc.0 = 0 Then
      F = 0
      Start Timer1
      Do
         If F = 1 Then Exit Do
      Loop Until Pinc.1 = 0
      Stop Timer1
      If F = 0 And Timer1 < 60000 Then
         Cls
         Lcd “Kereta Dari”
         Lowerline
         Lcd “Arah Kiri”
         Gosub Tutup
          ‘— tunggu tutup
         Bitwait Pinc.3 , Reset
         Bitwait Pinc.3 , Set
         Gosub Buka
         End If
   End If
   ‘=== kereta dari arah kanan
   If Pinc.3 = 0 Then
      F = 0
      Start Timer1
      Do
         If F = 1 Then Exit Do
      Loop Until Pinc.2 = 0
      Stop Timer1
      If F = 0 And Timer1 < 60000 Then
         Cls
         Lcd “Kereta Dari”
         Lowerline
         Lcd “Arah Kanan”
         Gosub Tutup
         ‘— tunggu tutup
         Bitwait Pinc.0 , Reset
         Bitwait Pinc.0 , Set
         Gosub Buka
         End If

   End If
Loop
End
Buka:
 Portd.0 = 1
 Portd.1 = 0
 Portd.2 = 1
 Wait 5
 Portd.2 = 0
Return

Tutup:
 Portd.0 = 0
 Portd.1 = 1
 Portd.2 = 1
 Wait 5
 Portd.2 = 0
Return

Over:
Stop Timer1
Cls
Lcd “Bukan KAI !!!”
F = 1
Return

 

Kita asumsikan kecepatan kereta api minimal 60 km/jam, sehingga dari perhitungan timer, nilai maksimalnya adalah 60.000.  Osilatornya 1 Mhz ya untuk mikronya.

Silakan dicoba dengan asumsi kereta datang dari sebelah kiri. Matikan lampu pada LDR1 kemudian LDR2. lakukan dengan cepat (sekan – akan kereta datang memotong sensor 1 dan 2). Scera otomatis motor DC akan berputar ke kiri (menutup). Selanjutnya matikan LDR 3 kemudian LDR 4. Berarti kereta sudah sampai pada sebelah palang pintu. Hidupkan lagi LDR 1, 2, 3 dan terakhir LDR 4, artinya kereta sudah lewat. Perhatikan motor DC berputar kanan (buka).

33 thoughts on “Palang Pintu Kereta Api Otomatis dg ATmega8

  • May 20, 2015 at 7:34 am
    Permalink

    bisa share programnya gak gan..

    Reply
    • May 20, 2015 at 2:43 pm
      Permalink

      Lha itu sudah ada mas, silakan ambil saja.
      Trims

      Reply
  • May 21, 2015 at 1:44 am
    Permalink

    Mas F itu variable apa ?

    Reply
    • May 21, 2015 at 4:00 pm
      Permalink

      F variabel untuk deteksi apakah Timer sudah overflow atau belum. Jika sudah overflow (nilai 1) dan berarti kecepatn dibawah standar KA.

      Reply
  • May 22, 2015 at 4:32 pm
    Permalink

    gak ada video nya mas?penasaran kayak gimana

    Reply
    • May 31, 2015 at 5:59 am
      Permalink

      Ya mas suatu saat kalau sudah kita translate kita posting, Insya Allah

      Reply
      • December 18, 2017 at 1:44 pm
        Permalink

        Mas udah ada program yang CVAVR nya gag?.

        Reply
        • July 18, 2018 at 11:22 am
          Permalink

          Belum ada mas

          Reply
  • June 1, 2015 at 11:46 am
    Permalink

    mas motor nya pake motor streper ya buat pintunya?
    kalo motor DC 5v bisa?

    Reply
    • June 2, 2015 at 9:56 am
      Permalink

      Yang penting bisa muter kanan – kiri mas, bisa stepper, bisa servo, bisa DC

      Reply
  • June 19, 2015 at 8:54 am
    Permalink

    mas. bisa kasih screenshot mulai awal bikin new project pada aplikasi BASCOM-AVR gk..?

    Reply
    • June 20, 2015 at 7:56 am
      Permalink

      Maaf mas belum sempat bikin je..

      Reply
  • August 10, 2015 at 11:58 pm
    Permalink

    kalau cara membuat program untuk 2 sensor ultrasonik pada mikrokontroler atmega16?
    gimana mas,,,mohon bantuan nya,,

    Reply
      • August 13, 2015 at 9:50 am
        Permalink

        udah pernah saya beli itu mas,,,
        mmank isinya tentang sensor ultrasonik,,,tpi tidak ada tentang menggunakan 2 buah sensor ultrasonik,,,jadi saya bertanya ama mas,,,
        mohon bantuan nya,,,,

        Reply
  • October 19, 2015 at 9:42 pm
    Permalink

    mas kalau sensor ping untuk deteksi kendraan lewat maka palang akan terbuka menggunakan arduino

    Reply
    • October 20, 2015 at 7:42 am
      Permalink

      Yang pakai arduino lum sempat bikin mas, lain waktu Insya Allah.

      Reply
  • November 10, 2015 at 10:40 am
    Permalink

    boleh kirim proteus data ya ke email gan? di SS komponen ya ngk keliatan.

    Reply
    • December 15, 2015 at 10:51 am
      Permalink

      Sudah saya kirim ke email mas. Maaf baru sempat.
      Trims

      Reply
      • December 26, 2015 at 5:44 am
        Permalink

        Mas blh kirimin proteus data ya ke email saya? Soalnya lagi ad tugas, terimakasih

        Reply
  • September 8, 2017 at 4:51 pm
    Permalink

    Mas biaa share alat dan bahan yabg digunakan? Makasih

    Reply
  • September 8, 2017 at 4:51 pm
    Permalink

    Mas bisaa share alat dan bahan yang digunakan? Makasih

    Reply
    • July 18, 2018 at 11:28 am
      Permalink

      Lhaitu sudah ada kan mas ? Masih ada yang perlu kami perjelas lagi ? Maaf …

      Reply
  • December 2, 2017 at 3:09 pm
    Permalink

    bisa minta tolong…..

    Reply
    • July 18, 2018 at 11:22 am
      Permalink

      Silakan mas

      Reply
    • July 18, 2018 at 11:01 am
      Permalink

      Errornya seperti apa mas ?

      Reply
    • July 18, 2018 at 11:02 am
      Permalink

      Errornya tolong seperti apa

      Reply

Leave a Reply

WhatsApp chat
%d bloggers like this: