Tugas Softskill 3 (Algoritma&Pemrog.Kasus Tek.Elektro#)


1. Flowchart



Mulai dari sistem  akan bekerja ketika semua komponen sudah mendapat suplai  tegangan.
Berikut ini merupakan penjelasan langkah-langkah dari flowchart di atas:
1.      Langkah pertama adalah melakukan pengecekan apakah ada sumber tegangan yang diberikan kepada Train Gate atau tidak. Jika tidak ada sumber tegangan, maka program akan langsung berhenti. Jika ada sumber tegangan, maka program akan lanjut menuju langkah kedua dan palang tetap naik dan buzzer tetap off.
2.      Langkah kedua adalah palang tetap naik dan buzzer tetap off.
3.      Langkah ketiga melakukan pengecekan apakah sensor 1 dalam keadaan aktif atau tidak. Jika “Tidak” maka program akan kembali ke langkah 2. Jika “Ya”, maka akan menuju ke langkah keempat
4.      Langkah keempat adalah palang akan turun dan buzzer akan berbunyi.
5.      Langkah kelima adalah dilakukan pengecekan apakah sensor 2 aktif atau tidak. Jika Tidak maka akan kembali kelangkah empat, jika Ya maka akan kembali ke langkah dua. 


2. Analisa Program



·        import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BOARD) GPIO.setwarnings(False)

p = 12 GPIO.setup(15,GPIO.OUT) GPIO.setup(16,GPIO.IN) GPIO.setup(18,GPIO.IN) GPIO.setup(p,GPIO.OUT) p = GPIO.PWM(p,50) p.start(7.5)


Blok ini merupakan blok yang berfungsi sebagai blok pengatur dan penentuan. Dimulai dari penentuan library yang digunakan hingga penentuan pin mana saja yang digunakan beserta fungsinya. Selain itu pada blok ini juga merupakan blok yang akan mengatur bagaimana perputran motor servo.


·        try :

while True :

masuk = GPIO.input(16)

keluar = GPIO.input(18)

if masuk == GPIO.LOW:

p.ChangeDutyCycle(2.5)

GPIO.output(15,True)

time.sleep(0,1)

GPIO.output(15,False)

time.sleep(0,1)

GPIO.output(15,False)

time.sleep(0,1)

GPIO.output(15,False)

33




time.sleep(0,1)

if keluar == GPIO.LOW:

p.ChangeDutyCycle(7.5)


except KeyboardInterrupt:

p.stop()

GPIO.cleanup()


Blok ini adalah blok yang berfungsi sebagai pengatur cara kerja train gate. Dimulai dari sensor mana yang berfungsi ketika palang pintu terbuka atau tertutup, selanjutnya blok ini juga berperan sebagai pengatur bagaimana buzzer berbunyi serta lama delaynya ketika palang pintu tertutup, dan blok ini juga merupakan blok yang berfungsi untuk mengatur besar derajat putaran motor servo ketika menggerakkan palang pintu pada saat kondisi palang menutup ataupun terbuka.

Pada blok ini juga terdapat blok interrupt yaitu blok yang berfungsi menghentikan program pada train gate secara paksa. Karena pada pemrograman train gate ini selalu terjadi pengulangan (looping) program, sehingga program tidak akan berhenti kecuali dihentikan paksa menggunakan bantuan keyboard.




Comments

Popular Posts