pemrograman raspberry pi (2) · pdf filesystem.out.println("percobaan sensor...

Post on 30-Jan-2018

264 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

PemrogramanRaspberry Pi (2)

Input / Output dengan Java dan Pi4J

GPIO Input

• Dalam Pi4J terdapat beberapa method yang dapatkita gunakan untuk melakukan pembacaan danpengelolaan input dari “dunia luar” pada GPIO

• Untuk dapat digunakan sebagai masukan, makaGPIO pin harus ditentukan nilai reference-nya

• Jika tidak di set, maka GPIO pin akan mengalami“float”

• Pada Raspberry PI, sudah terdapat resistor “pull up dan pull down” internal yang dapat dikonfigurasidengan menggunakan Pi4J

GPIO Input

• PULL UP• Resistor pull up berarti kita

menghubungkan input IC supayasecara default mendapat logic satu, ketika mendapat trigger maka akan berubah menjadilogic nol

• Cocok digunakan untuk aplikasidengan kondisi default switch (saat tidak ditekan) bernilai high

GPIO Input

• PULL DOWN• Resitor pull down berarti kita

menghubungkan input IC supayasecara default mendapat logic nol, ketika mendapat trigger maka akan berubah menjadilogic satu

• Cocok digunakan untuk aplikasidengan kondisi default switch (saat tidak ditekan) bernilai low

Praktikum 1

Dasar Pemrograman GPIO pada Raspberry Pi denganMenggunakan Java dan Pi4j

Praktikum 1

• Membaca input dari tombol/switch dan hasilnyaakan menjadi sinyal output untuk merubah kondisiLED

Praktikum 1

• Membaca input dari tombol/switch dan hasilnyaakan menjadi sinyal output untuk merubah kondisiLED

Praktikum 1

• Alat dan Bahan• Laptop / PC yang sudah terinstall Java Development

Environment (ex. Netbeans dan JDK 8 + Pi4J)• Remote Connection Tools (ex. Putty)• Raspberry Pi board• Power supply 5V• Kabel LAN• Project board / bread board• LED • Kabel jumper untuk pin• Resistor ± 220 Ω• Switch

Langkah 1Mempersiapkan rangkaian yang akandiprogram

Rangkaian yang lain masih samadengan rangkaianpraktikum dasarouput (LED)

Langkah 1Mempersiapkan rangkaian yang akandiprogram

Rangkaian yang lain masih samadengan rangkaianpraktikum dasarouput (LED)

Langkah 2Membuat project baru untukmelakukan pemrograman

1. Membuat projek Java baru

2. Tambahkan library Pi4J

3. Dan saatnya, it’s ngoding time ^^

//void main start

System.out.println("Praktikum Penggunaan Tombol");

final GpioController gpio = GpioFactory.getInstance();

final GpioPinDigitalInput myButton = gpio.provisionDigitalInputPin(RaspiPin.GPIO_02, PinPullResistance.PULL_DOWN);

System.out.println(" Sistem siap ");

GpioPinDigitalOutput myLed[] = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_01,"LED #1", PinState.LOW);

myButton.addTrigger(new GpioSetStateTrigger(PinState.HIGH, myLed[0], PinState.HIGH));

myButton.addTrigger(new GpioSetStateTrigger(PinState.LOW, myLed[0], PinState.LOW));

myButton.addTrigger(new GpioCallbackTrigger(new

Callable<Void>()

public Void call() throws Exception

System.out.println(" --> ada penekanan tombol");

return null;

));

while (true)

Thread.sleep(500);

//void main end

Praktikum 2

Dasar Pemrograman GPIO pada Raspberry Pi denganMenggunakan Java dan Pi4j

Praktikum 2

• Membaca input dari sensor dan hasilnya akanmenjadi sinyal output untuk merubah kondisi LED

Praktikum 2

• Alat dan Bahan• Laptop / PC yang sudah terinstall Java Development

Environment (ex. Netbeans dan JDK 8 + Pi4J)• Remote Connection Tools (ex. Putty)• Raspberry Pi board• Power supply 5V• Kabel LAN• Project board / bread board• LED • Kabel jumper untuk pin• Resistor ± 220 Ω• Sensor

Langkah 1Mempersiapkan sensor yang akandipakai

• Pada dasarnya banyak sekali jenis sensor yang adadi pasaran

• Masing-masing memiliki fungsi, sifat dan carakalibrasi yang berbeda-beda

• Dalam pemrograman embedded system denganmenggunakan Java dan Pi4J cara pembacaan sensor memiliki cara yang bermacam-macam• Listener method (normal)• JNI (Java Native Interface)• Multi Platform Sensor API

Langkah 1Mempersiapkan sensor yang akandipakai

• Dalam praktikum ini, sebagai contoh akandigunakan sensor Passive Infrared Sensor / PIR (Infrared Movement Sensor)

Passive Infrared Sensor (PIR)

Langkah 2Mempersiapkan rangkaian yang akandiprogram

Rangkaian yang lain masih samadengan rangkaianpraktikum dasarouput (LED)

Langkah 2Mempersiapkan rangkaian yang akandiprogram

Rangkaian yang lain masih samadengan rangkaianpraktikum dasarouput (LED)

Langkah 3Membuat project baru untukmelakukan pemrograman

1. Membuat projek Java baru

2. Tambahkan library Pi4J

3. Dan saatnya, it’s ngoding time ^^

//void main start

System.out.println("Percobaan Sensor Gerakan");

//input controller

final GpioController gpioSensor = GpioFactory.getInstance();

final GpioPinDigitalInput sensor = gpioSensor.provisionDigitalInputPin(RaspiPin.GPIO_04, PinPullResistance.PULL_DOWN);

//output controller

final GpioController gpioLED = GpioFactory.getInstance();

final GpioPinDigitalOutput led = gpioLED.provisionDigitalOutputPin(RaspiPin.GPIO_01, "LED", PinState.HIGH);

led.low();

// sensor event listener

sensor.addListener(new GpioPinListenerDigital()

@Override

public void handleGpioPinDigitalStateChangeEvent(GpioPinDigitalStateChangeEvent event)

if (event.getState().isHigh())

Date dt = new Date();

System.out.println("Ada Gerakan di "+ dt.toString());

led.toggle();

if (event.getState().isLow())

Date dt = new Date();

System.out.println("Aman bro "+ dt.toString());

led.toggle(););

try

for (;;)

Thread.sleep(100);

catch (final Exception e)

System.out.println(e.getMessage());

//void main end

Pengembangan : Alarm Pendeteksi Gerakan Sederhana

Buzzer

PIR Sensor

LED

Pengembangan : Alarm Pendeteksi Gerakan Sederhana

https://www.youtube.com/watch?v=34TbdAKfmGg

Terimakasih

top related