Vous êtes sur la page 1sur 4

Arduino Project:

Ultrasonic Sensor for Fish Detection on the deep sea

Ultrasonic Sensor adalah projek yang menggunakan sensor ultrasonic HC-SR04 bagi
mengesan objek atau halangan di hadapan. Objek yang dimaksudkan ialah ikan di
dsasar laut khususnya baagi menangkap ikan di kawasan laut dalam. Apabila sensor
mengesan objek atau halangan berdekatan, alat ini akan mengeluarkan bunyi buzzer
dan gerakan vibrator. Mini projek ini menggunakan asas seperti botol dan minuman
tin. Kedua-dua objek ini digabungkan untuk membentuk replika Bot menangkap ikan.

LAYOUT LITAR :
Senarai komponen nya adalah seperti berikut.
Arduino Source Code

/*
Project: Ultrasonic for Blind
Programmer: Shahrulnizam Mat Rejab
Board: Arduino UNO
Last Modified: 20 May 2015
Website: http://shahrulnizam.com
*/

#include <LiquidCrystal.h>

LiquidCrystal lcd(5,6,11,7,10,8);

#define buzzer 9
#define vibrator 12
#define trigPin1 A0
#define echoPin1 A1
#define trigPin2 A2
#define echoPin2 A3

int counter,min,count;
long duration1,distance1,duration2,distance2;

void setup()
{
pinMode(vibrator, OUTPUT);
pinMode(buzzer, OUTPUT);
pinMode(trigPin1, OUTPUT);
pinMode(echoPin1, INPUT);
pinMode(trigPin2, OUTPUT);
pinMode(echoPin2, INPUT);
Serial.begin(9600);
lcd.begin(8,2);
lcd.print("Distance");
}

void loop()
{
digitalWrite(trigPin1, LOW);
delayMicroseconds(2);
digitalWrite(trigPin1, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin1, LOW);
duration1 = pulseIn(echoPin1, HIGH);

// digitalWrite(trigPin2, LOW);
// delayMicroseconds(2);
// digitalWrite(trigPin2, HIGH);
// delayMicroseconds(10);
// digitalWrite(trigPin2, LOW);
// duration2 = pulseIn(echoPin2, HIGH);

distance1=microsecondsToCentimeters(duration1);
if(distance1>1000) distance1=distance1/1000+100;
else if(distance1==6) distance1=100;
distance2=200;//microsecondsToCentimeters(duration2);
if(distance2>1000) distance2=distance2/1000+100;

if(distance1<distance2) min=distance1;
else min=distance2;
if(min>=70) count=0;
else count=map(min,0,70,1,10);

if(counter<5*count) counter++;
else counter=1;
if((counter<=5)&&(count>0))
{
digitalWrite(buzzer,HIGH);
digitalWrite(vibrator,HIGH);
}
else
{
digitalWrite(buzzer,LOW);
digitalWrite(vibrator,LOW);
}

lcd.setCursor(0,1);
if(distance1<10) lcd.print(" ");
else if(distance1<100) lcd.print(" ");
lcd.print(distance1);
lcd.print(" ");
if(distance2<10) lcd.print(" ");
else if(distance2<100) lcd.print(" ");
lcd.print(distance2);
}

long microsecondsToCentimeters(long microseconds)


{
// The speed of sound is 340 m/s or 29 microseconds per centimeter.
// The ping travels out and back, so to find the distance of the
// object we take half of the distance travelled.
return microseconds / 29 / 2;
}

Vous aimerez peut-être aussi