1. Hardware [back]
#include <Wire.h> // library komunikasi I2C
#define MASTER_ADDR 9 // menyatakan alamat (0 - 127)
int analogPin = A0; int val = 0;
void setup() {
// put your setup code here, to run once:
Wire.begin();
}
void loop() {
// put your main code here, to run repeatedly:
delay(50);
val = map (analogRead(analogPin), 0, 1023, 255, 1);
Wire.beginTransmission(MASTER_ADDR); // I2C mulai mengirimkan data
Wire.write(val); // mencetak nilai val
Wire.endTransmission(); // memberhentikan proses pengiriman
}
//SLAVE
#include <Wire.h>
#define SLAVE_ADDR 9
int LED = 11;
int rd;
int br;
void setup() {
pinMode(LED, OUTPUT);
Wire.begin(SLAVE_ADDR);
Wire.onReceive(receiveEvent);
Serial.begin(9600);
}
void receiveEvent()
{
rd = Wire.read();
}
void loop() {
Serial.print("Nilai rd: ");
Serial.println(rd);
analogWrite(LED,rd);
delay(1000);
}
1. 6. Analisa [back]
1.
1. Jelaskan
pengaruh nilai potensiometer terhadap output rangkaian
Jawab
: Pengaruh nilai potensiometer terhadap output yaitu perubahan resistansinya. Semakin
besar nilai resistansi yang dideteksi oleh Arduino maka akan semakin cepat
perputaran motor karena ada konversi /map dari nilai resistansi ke kecepatan
output motor.
2.
3. Jelaskan
bagian mana dari rangkaian dan program yg diganti jika output di ubah menjadi
motor DC
Jawab
: pada bagian slave program dan rangkaian slave. LED dapat diganti dengan motor
DC dan pada listing program slave int LED = 13 diganti int Motor = 13. Pinmode
diganti pinMode(Motor, OTPUT) dan pada digitalwrite menjadi
digitalWrite(Motor,HIGH)
3.
3. Bagaimana
mengontrol kecepatan dan arah Motor DC pada percobaan ini
Jawab
: Cara mengontrol kecepatan motor DC tergantung pada potensiometer dan pada
arah motor DC nya yaitu tergantung pada listing program yang dimasukkan pada
Arduino atau dalam perangkaian motornya. Apabila rangkaian motor normal dialiri
arus akan bergerak ke kanan, dan Ketika rangkaian di balik maka motor akan
bergerak ke kiri
Tidak ada komentar:
Posting Komentar