Académique Documents
Professionnel Documents
Culture Documents
1 Arduino Uno
1 Sensor Ultrasonic SR04
2 Seven Segment katoda
1 breadboard
Kabel Jumper
Rangkaian
Gambar 1 Skema Rangkaian Arduino dengan Sensor Ultrasonik dan 7-Segment
Skema Rangkaian
Source Code
/* * SevenSegmentMpx sketch
* This example displays the value of a sensor connected to an analog input */
// bits representing segments A through G (and decimal point) for numerals 0-9
//ABCDEFG /dp
B11111100, // 0
B01100000, // 1
B11011010, // 2
B11110010, // 3
B01100110, // 4
B10110110, // 5
B00111110, // 6
B11100000, // 7
B11111110, // 8
B11100110, // 9
};
// dp,G,F,E,D,C,B,A
const int nbrDigits= 2; // the number of digits in the LED display
//dig 1 2
void setup() {
Serial.begin(9600);
pinMode(segmentPins[i], OUTPUT);
void loop() {
pinMode(trigPin, OUTPUT);
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
pinMode(echoPin, INPUT);
inches = microsecondsToInches(duration);
cm = microsecondsToCentimeters(duration);
cm = cm + 1;
// Serial.print(inches);
Serial.print(cm);
Serial.print(“cm”);
Serial.println();
// delay(50);
showNumber(cm);
// showNumber(87);
if(number == 0)
else { // display the value corresponding to each digit // leftmost digit is 0, rightmost is one less than the number of places
}
}
}
boolean isBitSet = bitRead(numeral[number], segment); // isBitSet will be true if given bit is 1
}
delay(10);
// 73.746 microseconds per inch (i.e. sound travels at 1130 feet per
// See: http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf
return microseconds / 74 / 2;
// The ping travels out and back, so to find the distance of the
return microseconds / 29 / 2;
Proses Pengerjaan
Pengerjaan tugas ini mulai dilaksanakan pada hari Rabu, 3 Februari 2016 sekitar
pukul 12.00 siang. Untuk mempermudah pengerjaan, kelompok kami memutuskan
untuk mencoba pembacaan jarak dengan sensor ultrasonik dan menampilkan nilai
tersebut pada dua seven-segment secara terpisah.
Pada percobaan ini kami mendapat satu masalah, yaitu angka yang ditampilkan
pada seven-segment tidak sesuai dan berkedip-kedip. Kami menggunakan dua
buah resistor 1kΩ yang terhubung ke ground. Namun pada saat testing rangkaian,
hasil yang ditampilkan oleh seven segment tidak sesuai. Digit puluhan yang
seharusnya hanya ditampilkan pada seven segment puluhan juga menyala di seven
segment satuan. Begitu pula dengan digit satuan yang seharusnya hanya
ditampilkan pada seven segment satuan juga menyala di seven segment puluhan.
Hal tersebut mengakibatkan tampilan pada seven segment menjadi aneh.
Pertemuan kedua untuk proyek ini dilaksanakan pada hari Rabu, 10 Februari 2016
di jam yang sama. Kami memulai percobaan dengan membuat rangkaian dan meng-
upload source code pada Arduino. Saat melakukan testing, rangkaian kami masih
menunjukkan masalah yang sama seperti minggu sebelumnya, yaitu angka yang
ditampilkan seven-segment tidak jelas. Seperti terlihat pada gambar dibawah, seven
segment menampilkan angka 12 (kiri) dan 15 (kanan). Namun, terlihat seakan ada
angka 1 juga di seven-segment satuan.
Menurut hasil analisis kelompok kami, hal tersebut terjadi karena delay antara
menyalakan seven-segment puluhan ke satuan terlalu kecil sehingga pada saat arus
berpindah dari seven-segmentpuluhan ke satuan masih terdapat sedikit arus
seharusnya mengalir pada puluhan namun mengalir pada seven-segment satuan.
Untuk menyelesaikan masalah ini, kami memperbesar delay antara
menyalakan seven-segment satuan dan puluhan. Namun, dengan
memperbesar delay, blink antara nyala seven-segment satuan dan puluhan semakin
terlihat.