Percobaan5 Kontrol Putaran DC
1. Rangkai semua komponen sesuai kondisi yang dipilih
2. buat program di aplikasi arduino IDE
3. setelah selesai masukkan program ke arduino di proteus
4. jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
5. Selesai
2. Hardware dan diagram blok
[Kembali]
1. Arduino Uno
2. SW-SPDT
3. Dot Matriks
4. Resistor
Diagram Blok :
3. Rangkaian Simulasi dan Prinsip kerja
[Kembali]
→ Gambar Rangkaian Sebelum Disimulasikan
→ Gambar Rangkaian Setelah Disimulasikan
PRINSIP KERJA
Prinsip kerja konfigurasi ini didasarkan pada penggunaan switch sebagai pengontrol untuk arah gerakan motor dan panah sebagai pengontrol untuk arah gerakan suatu objek atau perangkat. Ketika semua switch pull-down, atau dalam keadaan non-aktif, tidak memberikan sinyal untuk aktivasi, motor tidak bergerak. Namun, ketika switch 1 dan 3 diaktifkan, mereka mengirimkan sinyal kepada motor untuk bergerak ke arah kanan. Sementara itu, switch 2 dan 4, ketika diaktifkan, mengirimkan sinyal kepada objek atau perangkat untuk bergerak ke arah kanan. Dengan mengatur switch-switch yang sesuai, arah gerakan motor dan objek dapat dikontrol dengan presisi sesuai kebutuhan, menciptakan konfigurasi yang dapat diprogram untuk berbagai aplikasi yang memerlukan kontrol arah gerakan.
4. FlowChart [Kembali]
#include <LedControl.h>
// Initialize the MAX7219 module
LedControl lc = LedControl(5, 6, 7, 1); // Pin DIN, CLK, LOAD (CS) connected to Arduino
const int switch1Pin = A0; // Switch 1 connected to pin A0
const int switch2Pin = A1; // Switch 2 connected to pin A1
const int switch3Pin = A2; // Switch 3 connected to pin A2
const int switch4Pin = A3; // Switch 4 connected to pin A3
const int pin3Output = 4; // Output pin connected to pin 3 (motor control)
const int pin4Output = 3; // Output pin connected to pin 4 (motor control)
const int motor1Pin1 = 2;
const int motor1Pin2 = 3;
void setup() {
// Set up the dot matrix module
lc.shutdown(0, false); // Activate the module
lc.setIntensity(0, 8); // Set brightness (0-15)
lc.clearDisplay(0); // Clear the display
// Set up pins for motor control
pinMode(pin3Output, OUTPUT);
pinMode(pin4Output, OUTPUT);
pinMode(motor1Pin1, OUTPUT);
pinMode(motor1Pin2, OUTPUT);
// Set up switch pins
pinMode(switch1Pin, INPUT);
pinMode(switch2Pin, INPUT);
pinMode(switch3Pin, INPUT);
pinMode(switch4Pin, INPUT);
Serial.begin(9600);
}
void loop() {
int switch1State = digitalRead(switch1Pin);
int switch2State = digitalRead(switch2Pin);
int switch3State = digitalRead(switch3Pin);
int switch4State = digitalRead(switch4Pin);
// Check if all switches are active (LOW)
if (switch1State == HIGH && switch2State == HIGH && switch3State == HIGH && switch4State == HIGH) {
digitalWrite(pin3Output, LOW);
digitalWrite(pin4Output, LOW);
lc.clearDisplay(0);
} else {
// Check if switch 1 and 3 are active
if (switch1State == HIGH && switch3State == HIGH) {
digitalWrite(pin3Output, HIGH);
digitalWrite(pin4Output, LOW);
lc.clearDisplay(0);
} else {
digitalWrite(pin3Output, LOW);
}
// Check if switch 2 and 4 are active
if (switch2State == HIGH && switch4State == HIGH) {
digitalWrite(pin3Output, LOW);
digitalWrite(pin4Output, LOW);
displayArrowRight();
}
}
}
void displayArrowRight() {
byte arrowRight[8] = {
B00011000,
B00001100,
B00000110,
B11111111,
B00000110,
B00001100,
B00011000,
B00000000
};
for (int row = 0; row < 8; row++) {
lc.setRow(0, row, arrowRight[row]);
}
delay(500);
lc.clearDisplay(0);
delay(500);
}
b. Flowchart
5. Kondisi [Kembali]Kondisi : Percobaan 5 Kondisi 1
6. Video Simulasi [Kembali]
7. Download File
[Kembali]
Download Simulasi Rangkaian Klik disini
Download HTML Klik disini
Download Video Simulasi Klik disini
Download Listing Code Klik disini
Download Listing Code Klik disini
Download Datasheet ARDUINO UNO klik disini
Download Datasheet Dot Matriks Klik disini
Download Datasheet SW - SPDT Klik Disini
Donwload Datasheet Resistor Klik Disini
Download Datasheet MAX7219 Klik disini
Download Datasheet L293D Klik disini
Download Datasheet Motor Stepper Klik disini
Tidak ada komentar:
Posting Komentar