Arduino-platformen er en af de bedste til at bygge forskellige automatiserede systemer. Desuden bruger mange universiteter og gymnasier Arduino til at introducere studerende til robotteknologi. Arduino er nemlig en meget let, men samtidig kraftfuld platform til at konstruere forskellige robotter og smarte systemer. Og så det hele tager kortere tid, sælges der selvfølgelig færdige sensorer. Der er et stort antal af dem i butikkerne, så det er ret svært at blive forvirret med at vælge den rigtige. I denne artikel vil vi se på nogle af de vigtigste Arduino-sensorer, og hvordan de virker.
Hvor kan man købe
Faktum er, at sensorerne i vores butikker koster mange penge. Og hvis du skal i gang med at udforske Arduino-platformen, så skal du bare vide, hvor du kan købe dem til en lav pris. Svaret er enkelt - kinesiske butikker. Det kunne væreAliexpress, Joom, Pandao og andre. Næsten alle butikker køber sensorer der og sælger dem med en enorm margin, som når op til 300%. Selvfølgelig skal du vente et stykke tid, og du kan ikke være sikker på kvaliteten af varerne, men at betale tre gange mere for den samme sensor er heller ikke det værd. Eksempel: Aliexpress har et sæt på 36 sensorer, der koster 800 rubler. Det samme sæt sælges i en russisk butik for 3,5 tusind rubler. Så det er op til dig.
Servodrev
Servodrev bruges i design af robotter og forskellige smarte systemer. Ved hjælp af en servo kan du åbne døre, finde ud af rotationsgraden og meget mere. Men det bruges mest til at skabe robotter. Servoens maksimale rotationsvinkel: 180 grader. Men nogle gange i de åbne rum i Aliexpress kan du også se muligheder med en 360-graders rotationsvinkel. Dette er et ret grundlæggende element, næsten alle lektioner på Arduino med sensorer starter med det. Servoen er nem at tilslutte, kontrolkoden er meget enkel.
For at forbinde servoen bruges kun tre ledninger: jord, strøm, logik. Signalledningen (norm alt gul eller brun) er forbundet til en hvilken som helst PWM (pulse bred modulation) aktiveret pin på Arduino.
Kodeeksempel:
include // inkludere biblioteket for at arbejde med Servo servo1; // erklære en servovariabel af typen "servo1" void setup() // procedure setup { servo1.attach(11); //bind servo til analog udgang 11 } void loop() // procedure loop { servo1.write(0); // sæt rotationsvinklen til 0 delay(2000); // vent 2 sekunder servo1.write(90); // sæt rotationsvinklen til 90 forsinkelse(2000); // vent 2 sekunder servo1.write(180); // sæt rotationsvinklen til 180 forsinkelse(2000); // vent 2 sekunder }
Først tilføjer vi biblioteket, der allerede er i Arduino'en, til koden, derefter angiver vi, hvilken pin servoen er forbundet til. Som du kan se, er arbejdet med en servo virkelig meget simpelt, styringen er kun én operatør.
Pris på Aliexpress: 80-100 rubler.
DHT-11
DHT-11 bruges til at måle temperatur og luftfugtighed. Denne temperatursensor til Arduino er den mest populære på grund af dens pris og funktioner. Måler temperatur i området fra 0 til 50 grader, og luftfugtighed fra 20 til 80%. Der er også til salg en anden version af denne sensor, DHT-22, den har et større måleområde, men den koster også flere gange mere. Til simple projekter er det ikke tilrådeligt at bruge det, så alle foretrækker DHT-11, som gør et fremragende stykke arbejde med at måle. Strøm kan leveres fra 3,3 til 5V. Generelt har selve sensoren 4 tilslutningsben, men der er DHT-11 moduler til salg, det er meget mere bekvemt at arbejde med dem, da forbindelsen er gennem 3 ben, og du behøver ikke døje med modstande.
Forbindelse. Denne temperatursensor er forbundet til Arduino ved hjælp af tre kontakter: jord, strøm og logik.
Kodeeksempel:
include"DHT.h" define DHTPIN 2 // Samme pin-nummer nævnt ovenfor DHT dht(DHTPIN, DHT11); void setup() { Serial.begin(9600); dht.begin(); } void loop() { delay(2000); // 2 sekunders forsinkelse float h=dht.readHumidity(); //Mål fugtighed float t=dht.readTemperature(); //Mål temperatur hvis (isnan(h) || isnan(t)) { // Tjek. Hvis læsningen mislykkes, udskrives "Read Failed" og programmet afslutter Serial.println("Read Failed"); Vend tilbage; } Serial.print("Fugt: "); Serietryk(h); Serial.print("%\t"); Serial.print("Temperatur: "); Seriel print(t); Serial.println("C"); //Viser indikatorer på skærmen }
I begyndelsen, som når du arbejder med en servo, er biblioteket forbundet. I øvrigt om biblioteket. I første omgang er det ikke i Arduino-pakken, dette bibliotek skal downloades. Der er flere versioner af dette bibliotek, i vores eksempel bruges den mest standard. Vær forsigtig, når du downloader, for syntaksen kan være anderledes, og koden vil ikke fungere. Ydermere er det også skrevet, hvilken kontakt sensoren er tilsluttet og dens version (DHT11 eller DHT22). Som med en servo er det meget nemt at arbejde med denne sensor til Arduino, idet der kun bruges nogle få operatører. I øvrigt arbejder ofte servoen og dht11 sammen, f.eks. når man laver automatiske vinduer, der åbnes, hvis rummet eller drivhuset er for varmt.
Pris på Aliexpress: 80-100 rubler.
Jordfugtighedssensor
Denne sensor bruges nårdesign af automatisk kunstvanding. Med den kan du måle jordens fugtighed og derefter behandle disse data og om nødvendigt vande planten. Der er mange varianter af denne sensor til Arduino til salg, men FC-28 modellen er populær. En ganske budget mulighed, så alle elsker det og bruger det i deres projekter. Sensoren har to sonder, der leder elektricitet gennem jorden. Med tør jord er modstanden større, og med våd jord mindre. Grundlæggende bruges denne sensor kun i små projekter, dette skyldes det faktum, at proberne er lavet af dårligt materiale og før eller siden, under aktivt arbejde, bliver de korroderede, hvorefter sensoren holder op med at fungere. Sensorens levetid kan øges ved kun at aktivere den, når der tages data fra jorden, for eksempel én gang hver 6. time. Nogle håndværkere skifter endda proberne til bedre, lavet af dem selv, eller samler endda en fugtighedssensor til Arduino fra bunden.
Tilslutning af jordfugtighedssensoren er ret enkel. Norm alt kommer den med et potentiometer og en komparator til at kontrollere sensorens følsomhed. I alt har den tre kontakter: logik, strøm og jord. Den kan tilsluttes både digitale og analoge kontakter. Det er i øvrigt mere bekvemt at arbejde i analog tilstand.
Kodeeksempel:
int sensor_pin=A0; int output_værdi; void setup() { Serial.begin(9600); Serial.println("Læser data fra sensoren"); forsinkelse (2000); } void loop() { output_value=analogRead(sensor_pin);output_value=map(output_value, 550, 0, 0, 100); Serial.print("Fugt: "); Serial.print(output_værdi); Serial.println("%"); forsinkelse(1000); }
Først og fremmest bestemmer vi de kontakter, som sensoren er tilsluttet til Arduino. Så læser vi dataene fra det og viser det. Som med andre sensorer er FC-28 nem at arbejde med. Og alt takket være færdige biblioteker og sensorer.
Pris på Aliexpress: 30–50 rubler.
PIR-sensor
Denne bevægelsessensor til Arduino bruges i konstruktionen af forskellige sikkerhedssystemer. Registrerer bevægelige elementer fra 0 til 7 meter. Vi vil ikke overveje princippet om drift, lad os gå videre til at forbinde denne sensor til Arduino.
At dømme efter anmeldelserne er den også forbundet med tre kontakter: logik, strøm og jord. Det fungerer via digitale udgange.
Kodeeksempel:
define PIN_PIR 2 define PIN_LED 13 void setup() { Serial.begin(9600); pinMode(PIN_PIR, INPUT); pinMode(PIN_LED, OUTPUT); } void loop() { int pirVal=digitalRead(PIN_PIR); Serial.println(digitalRead(PIN_PIR)); //Hvis bevægelse detekteres, hvis (pirVal) { digitalWrite(PIN_LED, HIGH); Serial.println("Bevægelse detekteret"); forsinkelse (2000); } else { //Serial.print("Ingen bevægelse"); digitalWrite(PIN_LED, LOW); } }
Vi bestemmer de kontakter, som sensoren er tilsluttet, hvorefter vi tjekker for bevægelse. Det er meget bekvemt og nemt at arbejde med det, men der er tilfælde af falske positiver.
Pris forAliexpress: 30-50 rubler.
drage konklusioner
Ovenfor blev hovedsensorerne til Arduino overvejet, som er de allerførste, der er blevet studeret af nybegyndere radioamatører. Som du kan se, er de ret billige, de forbinder nemt, og læsning af data tager kun et par linjer. Ud over dem er der stadig et stort antal andre sensorer, selv til at måle pulsen! Det er mest rentabelt at købe dem på Aliexpress i sæt, så de vil koste endnu billigere. Det er nemt at skabe, det vigtigste er at huske de tre grundlæggende regler for robotteknologi!