Halk efect sensörü ile programlaya bilirsin.
Bu kodda, tekerlek belirli bir hızın (örneğin 10 pulse/saniye) üzerine çıktığında LED yanar. Hız, sensör tarafından algılanan pulse sayısına bağlı olarak hesaplanır.
Bu temel yapıyı kendi uygulamanıza göre özelleştirebilir ve hız eşiğini değiştirerek farklı sonuçlar elde edebilirsiniz.
const int sensorPin = 2; // Hall effect sensör pini
const int ledPin = 13; // LED pini
int sensorState = 0;
unsigned long previousMillis = 0;
unsigned long interval = 1000; // 1 saniyede bir ölçüm
void setup() {
pinMode(sensorPin, INPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= interval) {
previousMillis = currentMillis;
int pulseCount = 0;
unsigned long startTime = millis();
while(millis() - startTime < 1000) { // 1 saniyelik süre boyunca pulse say
sensorState = digitalRead(sensorPin);
if (sensorState == HIGH) {
pulseCount++;
delay(10); // Girişlerde yalancı sinyal olmasını önlemek için kısa bir gecikme
}
}
float speed = pulseCount; // Hız ölçümü (örneğin RPM cinsinden olabilir)
Serial.println(speed);
if (speed >= 10) { // Hız eşik değerini ayarla
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
}
}