Arduino Rörelsesensor Exempel: Komplett Guide för Nybörjare och Avancerade Användare
Introduktion till Arduino och Rörelsesensorer
Arduino är en otroligt mångsidig plattform som används av både hobbyister och professionella för att skapa interaktiva projekt. En av de mest populära komponenterna är rörelsesensorn, som kan detektera rörelse i dess omgivning. I denna guide kommer vi att utforska olika typer av rörelsesensorer och hur du kan använda dem med Arduino.
Typer av Rörelsesensorer
Det finns flera olika typer av rörelsesensorer, men de vanligaste är:
Grundläggande Exempel med PIR-sensor

Låt oss börja med ett enkelt exempel där vi använder en PIR-sensor för att tända en LED när rörelse detekteras.
Komponenter som behövs:
Kopplingsschema:
Koppla PIR-sensorns VCC till Arduino 5V, GND till GND och OUT till en digital pin (t.ex. pin 2). Koppla LED:ns anod (långa benet) till en annan digital pin (t.ex. pin 13) via ett motstånd och katoden (korta benet) till GND.
Arduino Kod:
const int pirPin = 2; const int ledPin = 13;

void setup() { pinMode(pirPin, INPUT); pinMode(ledPin, OUTPUT); }
void loop() { int sensorValue = digitalRead(pirPin); if (sensorValue == HIGH) { digitalWrite(ledPin, HIGH); delay(100); // Tänd LED i 100ms } else { digitalWrite(ledPin, LOW); } }
Denna kod läser av PIR-sensorns utsignal och tänder LED:n när rörelse detekteras.
Avancerat Exempel med Ultraljudssensor
Nu ska vi titta på ett mer avancerat exempel där vi använder en ultraljudssensor för att mäta avstånd och styra en servo motor.
Komponenter som behövs:
Kopplingsschema:
Koppla ultraljudssensorns VCC till Arduino 5V, GND till GND, Trig till en digital pin (t.ex. pin 9) och Echo till en annan digital pin (t.ex. pin 10). Koppla servomotorns signalpin till en digital pin (t.ex. pin 11), VCC till 5V och GND till GND.
Arduino Kod:
#include <Servo.h>
const int trigPin = 9; const int echoPin = 10; const int servoPin = 11;
Servo myServo;
void setup() { pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); myServo.attach(servoPin); }
void loop() { long duration, distance; digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); distance = (duration/2) / 29.1;
if (distance < 20) { myServo.write(180); // Flytta servon till 180 grader } else { myServo.write(0); // Flytta servon till 0 grader } delay(100); }
Denna kod mäter avståndet och flyttar servon beroende på avståndet.

Användningsområden för Arduino Rörelsesensorer
Rörelsesensorer kan användas i en mängd olika projekt, inklusive:
Tips och Tricks

När du arbetar med rörelsesensorer, kom ihåg att:
Slutsats
Arduino rörelsesensorer är kraftfulla verktyg som kan användas för att skapa en mängd olika projekt. Genom att förstå de olika typerna av sensorer och hur de fungerar, kan du skapa innovativa och spännande applikationer. Vi hoppas att denna guide har gett dig en bra grund att börja med och inspirerat dig att utforska vidare.


