Categories: Circuits de microcontroladors
Nombre de visualitzacions: 32016
Comentaris sobre l'article: 0

Sensors més populars per a Arduino

 

Els sensors s’utilitzen en una gran varietat de circuits i projectes. Cap automatització pot prescindir d'ells. Ens interessa perquè s’ha creat un projecte per simplificar el disseny i la popularització de l’electrònica Arduino. Es tracta d’un tauler acabat amb un microcontrolador i tot el que necessiteu per treballar-hi i programar-lo. En aquest article, tindrem en compte els sensors per a Arduino, però també es poden utilitzar amb altres microcontroladors.

Sensors més populars per a Arduino

Què són els sensors?

Els sensors són els ulls, les orelles i altres sentits microcontrolador o un altre dispositiu de control. Es distingeixen per la naturalesa del senyal i per la seva finalitat.

Per la naturalesa del senyal es divideix en:

  • Analògic;

  • Digital

Els propòsits són per mesurar:

  • Temperatura;

  • Pressió;

  • Humitat

  • Acidesa;

  • Il·luminació

  • Nivell d’aigua o altres substàncies;

  • Vibració

  • I altres components especialitzats.

Si parlem d’Arduino, aleshores, quan rebem informació dels sensors, processem un senyal digital o mesurem el voltatge de la sortida analògica del mòdul. Com ja s’ha dit, Els sensors són digitals i analògics. Alguns mòduls per a Arduino tenen sortida digital i analògica, cosa que els unifica.

Per dispositiu que siguin

  • Resistiu

  • Inductiu

  • Capacitiu;

  • Piezoelèctrica;

  • Fotocèl·lules i altres tipus.



Sensor de llum o llum

La manera més fàcil de determinar la brillantor d’alguna cosa: utilitzar un fotorresistor, fotodiode o fototransistor. Podeu connectar una de les opcions enumerades a Arduino o comprar un tauler especial - sensor de llum.

Sensor de llum

Quins avantatges té una solució clau en mà? En primer lloc, per determinar els canvis en la il·luminació d'una fotocèl·lula no n'hi ha prou, també necessiteu una resistència regular o sintonitzadora, potser comparador, per a operacions pas a pas / sí. En segon lloc, una placa de circuit imprès feta a la fàbrica serà més fiable que un muntatge frontal o una placa per lots, o altres maneres que utilitzin els amateurs.

Sensor de llum

A aliexpress o en altres botigues en línia es pot trobar a petició "FOTOSENSIBLE-SENSOR" o simplement "sensor de llum".

Aquest mòdul té tres sortides:

  • Nutrició;

  • Terra

  • Sortida digital del comparador.

O una versió de quatre pins:

  • Nutrició;

  • Terra

  • Sortida digital del comparador;

  • Analògic

Així que a la junta col·locada una resistència d’afinació per ajustar el temps del comparador es pot produir un senyal digital.

Exemples d’ús:

  • Sensor de llum per a relleus fotogràfics;

  • Alarma (aparellada amb l’emissor);

  • Contador d'objectes que creuen el feix de llum, etc.

És difícil assolir valors exactes, ja que caldrà un mesurador de llum correcte per a l’ajustament correcte mitjançant la il·luminació. Els fotoreresistors són més adequats per determinar valors abstractes com ara "fosc o clar".

A més d'un tal tauler a la venda, en podeu trobar força interessant Mòdul GY-302. Es tracta d’un sensor de llum basat en el circuit integrat BH-1750. La seva característica és que és un mòdul digital, té una capacitat de 16 bits, es comunica amb microcontroladors mitjançant el bus i2c. 16 bits permeten mesurar la il·luminació d’1 a 65356 Lux (Lx).

Sensor de llum ambiental basat en circuit integrat BH-1750

A continuació es mostra un esquema de la seva connexió. Podeu notar que SDA i SCL connectat als pins analògics del microcontrolador.

Esquema de connexió del sensor de llum

Això es deu al fet que el bus I2C està implementat en aquests pins arduino, cosa que es pot observar a la imatge següent. Per tant, no us deixeu enganyar per aquest fet, el sensor és digital.

Diagrama del mòdul GY-302

L’avantatge dels sensors digitals és que no cal comprovar els valors de cada instància, compilar taules per traduir els valors mesurats a escales reals, etc.En la majoria dels casos, per als sensors digitals, n'hi ha prou amb connectar una biblioteca preparada i llegir els valors convertits en unitats reals.

Exemple d'esbós per a GY-302 (BH-1750):

Exemple d'esbós per a GY-302

Com funciona un croquis?

Al principi, li diem al programa que hem de connectar la biblioteca Wire.h, responsable de la comunicació mitjançant la línia I2C, i la BH1750. La resta d’accions es descriuen bé als comentaris i, per tant, cada 100ms llegim el valor del sensor de Lux.

Característiques de GY-302 BH1750:

  • Comunicació de microcontroladors I2C

  • Resposta espectral similar a la sensibilitat ocular

  • Es minimitzen els errors deguts a la radiació infraroja

  • Rang de mesura 0-65535 Lux

  • Tensió d'alimentació: 3-5 V

  • Consum de corrent baix i funció de son

  • 50/60 Hz de filtració de sorolls

  • El nombre màxim de sensors en un bus I2C és de 2 peces.

  • No cal calibració

  • Consum actual - 120 μA

  • En mode de repòs: 0,01 μA

  • Longitud d’ona medida - 560 nm

  • En mode d'alta resolució - 1 Lux

  • En mode de baixa resolució - 4 Lux

  • ADC: 16 bits

Temps pres per a les mesures:

  • En mode d'alta resolució - 120 ms

  • En mode de baixa resolució: 16 ms


Sensor d'obstacle

Vaig triar aquest sensor com el següent que cal considerar, perquè una de les seves opcions funciona a partir d’un fotodiode o fototransistor, que en principi són similars als fotoreresistors comentats a la secció anterior.

Sensor d'obstacle

El seu nom és "sensor òptic d'obstacles". L’element funcional principal és el fotodiode i el LED que emet i rep en l’espectre IR (per tant, no visible per a l’ull humà, així com un conjunt de llindar muntat, per exemple, en un comparador amb un regulador de sensibilitat. A l’utilitzar s’ajusta la distància a la qual es activa el sensor, de la manera que és digital).

Exemple de diagrama de connexió:

Exemple de connexió

Un exemple d’un programa de processament de senyal d’un sensor.

Un exemple d’un programa de processament de senyal d’un sensor

Aquí, si la sortida del sensor és “1”, cosa que vol dir que “hi ha un obstacle”, el LED de la placa Arduino o connectat al 13è pin (el mateix) s’il·luminarà. S'utilitza més sovint en robòtica i alarmes.

Ús de sensors

Sensor de distància

La còpia anterior està formada per un receptor, un fotodiode i un emissor, un LED. El sensor de distància ultrasònic també consisteix en un receptor i un emissor d’ones ultrasòniques. El seu nom és HC SR04.

Sensor de distància

Característiques HC SR04:

  • Tensió d'alimentació 5V

  • El paràmetre de funcionament de la força t oka - 15 mA

  • Corrent passiu <2 mA

  • Angle de visualització: 15 °

  • Resolució tàctil: 0,3 cm

  • Angle de mesura: 30 °

  • Amplada del pols: 10-6 s

  • Gamma de mesures: 2-400 cm.

L'error apareix a causa de:

  • temperatura i humitat: es pot reduir mesurant la temperatura amb DHT-11 o DHT-22, per exemple, i introduint coeficients per corregir les mesures.

  • distància a l'objecte;

  • es pot compensar la ubicació de l'objecte en relació amb el sensor (segons el diagrama de radiació) mitjançant la instal·lació de HC SR04 al servomotor per canviar de direcció i fer ajustaments precisos.

  • qualitat de rendiment dels elements del mòdul del sensor.

Patró de radiació:

Patró de radiació

El tauler té quatre sortides:

  • VCC - poder;

  • Trig - senyal d'entrada;

  • Senyal de sortida eco;

  • GND és un fil comú.

Sensors HC SR04

Com processar les lectures?

1. Enviem un pols amb una durada de 10 μs a l’entrada TRIG;

2. A l'interior del mòdul, el pols es converteix en un paquet de 8 polsos que se succeeixen amb una freqüència de 40 kHz i s'envien a través de l'emissor;

3. Els impulsos reflectits des de l’obstacle arriben al receptor i surten a ECHO;

4. La durada del pols rebut de la sortida ECHO s'ha de dividir per 58,2 per obtenir la distància en centímetres i per 148 si cal convertir a polzades.

Codi d'exemple:

Codi d'exemple

Mesura la temperatura

La manera més senzilla de mesurar la temperatura mitjançant un microcontrolador és utilitzeu un termopar o un termistor. Els termoparells s'utilitzen per mesurar temperatures altes, per mesurar interiors i exteriors, el que parlaré una mica més avall ho farà, però de moment, mirem un termopar.

Sensor de temperatura

Cada tipus de termopar té el seu propi enfocament per treballar amb un microcontrolador. Per exemple, hi ha un termopar tipus K, o com també es diu crom-alumel, amb un rang de temperatures mesurades des de -200 a +1400 graus centígrads amb una sensibilitat de 41 mV / grau centígrad. I per a ella hi ha un convertidor especial basat en el max6675 IC, que té una funció per compensar la temperatura de la unió freda, etc.

Mòdul de mesura de temperatura

Podeu treballar amb aquest mòdul utilitzant la biblioteca del mateix nom per a Arduino. A la figura següent veieu un exemple de codi de programa per a aquest cas.

Codi d'exemple

A continuació, es mostra el següent al monitor de port sèrie.

Monitor de ports en sèrie

Però també hi ha un sensor de temperatura digital DS12B20, es pot anomenar clàssic, ja que s’ha fet servir durant molts anys en projectes amateurs, i molt abans de l’aparició d’Arduino.

Sensor de temperatura digital DS12B20

En aquest circuit integrat digital, el seu dispositiu intern es mostra a la figura següent:

Microcircuit de dispositiu intern

Diagrama de connexió de la placa:

Diagrama de connexió de la placa

Característiques i informació clau DS18b20:

  • L’error és inferior a 0,5 ° C (en l’interval de temperatures de -10 ° C a + 85 ° C).

  • No cal calibració

  • Gamma de mesures - de -55 С a + 125С

  • VCC, tensió d’alimentació 3,3-5V.

  • resolució de fins a 0,0625С, fixada per programari;

  • Resolució: 12 bits

  • A cada instància se li assigna un codi de sèrie únic. Això és necessari per utilitzar fàcilment diverses peces en un sol projecte

  • Interfície de comunicació: 1-Wire

  • No cal fer cintes

  • El nombre màxim de sensors d’una línia és de 127 peces.

  • Mode d’energia espuriosa: en aquest cas, el sensor s’alimenta directament des de la línia de comunicació. Al mateix temps, no es garanteix una mesura de temperatura superior a 100 ºC

A continuació, veieu el gràfic de conversions del codi binari de DS18b20 a temperatura en graus centígrads.

Taula de conversions del codi binari de DS18b20 a temperatura en graus centígrads

Exemple de programa per a la lectura de valors de temperatura.

Exemple de programa per a la lectura de valors de temperatura

Sensors de pressió atmosfèrica

Els baròmetres electrònics es munten sobre la base dels sensors de pressió atmosfèrica. Es van utilitzar àmpliament les opcions següents:

  • BMP180;

  • BMP280;

  • BME280.

Sensors de pressió atmosfèrica

Si les dues instàncies anteriors eren similars entre si, aleshores Sensor BME280 - Aquesta és una estació meteorològica en miniatura. S'hi incorporen 3 sensors:

  • Temperatura;

  • Pressió;

  • Humitat.

Les seves característiques tècniques:

  • Mides 2,5 x 2,5 x 0,93 mm;

  • Carcassa metàl·lica LGA, equipada amb 8 sortides;

  • Tensió d’alimentació 1,7 - 3,6V;

  • Disponibilitat d’interfícies I2C i SPI;

  • Consum de corrent d'espera 0,1 µA.

Aquests exemples són baròmetres MEMS. MEMS significa microelectromecànica. Aquesta és una microestructura mecànica que utilitza fenòmens capacitius i altres principis per al seu treball. A continuació, veieu un exemple d'aquest sensor en el context.

Exemple seccional de sensor

Exemple de diagrama de connexió:

Exemple de connexió

I un exemple de codi de programa:

Codi d'exemple

La lògica del programa és simple:

1. Lectura de la subrutina (funció) des del sensor.

2. Sol·licitud de lectures del sensor de temperatura integrat al baròmetre.

3. Estem esperant temps per avaluar el sensor de temperatura;

4. Llegiu el resultat de les mesures de temperatura;

5. Demaneu valors de pressió;

6. Estem esperant el temps de mesura de pressió;

7. Llegiu el valor de la pressió;

8. Retorna el valor de pressió de la funció.

Un fet interessant és que hi ha quatre opcions per llegir valors, s’especifiquen com a argument a la funció startPressure, el segon signe és de 0 a 3, on 0 és una estimació aproximada i 3 és una estimació exacta.


Sensor de moviment

El sensor de moviment més comú per a Arduino és Mòdul de sensor IR IR HC SR501. Una característica d’aquest mòdul és que té un ajust de la distància de resposta i del temps de retard del senyal de sortida després de l’operació.

Sensor de moviment

Característiques del mòdul:

1. Tensió de subministrament 4,5 - 20 V.

2. Corrent silenci ≈ 50 μA;

3. Tensió del senyal de sortida (nivell lògic): 3,3 V;

4. Interval de temperatura de funcionament: de -15 ° C a 70 ° C;

5. Mides: 32 * 24 mm;

6. Camp de vista: 110 °;

7. Distància màxima de funcionament: de 3 a 7 m (ajustable); Per sobre de 30 ° C, aquesta distància pot disminuir.

Diagrama de cablejat:

Esquema de connexió del sensor de moviment

Com es va plantejar treballar amb ell en un article publicat anteriorment: Esquemes de sensors de moviment, el principi del seu treball i esquemes de cablejat


Sensor de nivell d'aigua

Dissenyat per indicar nivell de fluids.

Sensor de nivell d'aigua

Característiques

1. Tensió d’alimentació 3-5V

2. Corrent de consum> 20 mA

3. Analògic

4. Mides de la zona de mesurament 40x16 mm

5. Humitat permesa 10% - 90%

Codi d'exemple:

Codi d'exemple

Els valors de sortida són de 0 (en estat sec) a 685 (pot variar de fet, depèn de la conductivitat de l’aigua). No us oblideu de l'electròlisi, quan es mesura el nivell de sal o aigua dura, es corroeix.


Sensor de fuites

El mòdul consta de dues parts: el sensor en si i el comparador, es poden construir a la LM393, LM293 o LM193.

Sensor de fuites

Gràcies al comparador, el senyal analògic es converteix en digital.

Diagrama de cablejat:

Diagrama de cablejat del sensor de fuites

Pinout del tauler:

  • El poder VCC, ha de coincidir amb la potència del tauler Apduino, en la majoria dels casos és de 5V;

  • GND: cable comú;

  • AO - senyal analògic;

  • DO és un senyal digital.

Hi ha una resistència d’afinació a la placa del comparador, que estableix la sensibilitat del sensor. Pot actuar com a senyal de pluja o filtrant alguna cosa i, quan es combina amb una grua, pot funcionar com a protecció contra les fuites de canonades a l'apartament:

Tap de protecció de filtracions

El vídeo mostra com funciona:


Sensor d’humitat

S'utilitza habitualment en projectes de reg automàtic, per determinar la humitat del sòl, així com l’anterior consta d’elèctrodes i un tauler amb un comparador.

Sensor d’humitat

Pot funcionar tant en modes analògics com digitals. Un exemple de diagrama de connexió per a un sistema de reg automàtic amb grua basada en un motor:

El diagrama de connexió del sensor d’humitat a Arduino

I un exemple de codi de programa per processar un senyal digital des d’un sensor d’humitat:

Codi d'exemple per processar un senyal digital des d'un sensor d'humitat
Sensor de temperatura i humitat digital AM2302

Conclusió

Hem examinat els sensors populars, però també n’hi ha molts. Es tracta d’una varietat de sensors de vibració, giroscopis, acceleròmetres, sensors de radiació i molt més.

L’objectiu de l’article era recollir en un lloc una varietat d’elements que poden ser útils per a un enginyer electrònic d’electrònica per a la implementació dels seus projectes. Si us interessa un sensor en concret, escriviu-ne els comentaris i ho considerarem amb més detall.

Per a la vostra comoditat, us hem recopilat una taula amb un cost estimat i una llista de sensors populars per a Arduino, de l'ordre en què es consideraven a l'article:Sensors per a Arduino

Els preus s’obtenen de les botigues en línia de Rússia o Ucraïna. A la Xina, costen 2 o més vegades més barat.

Consulteu també a electro-ca.tomathouse.com:

  • Mesura de temperatura i humitat a Arduino: una selecció de maneres
  • Connexió de sensors analògics a Arduino, sensors de lectura
  • Quina diferència hi ha entre els sensors digitals i analògics
  • Com s’ordena i funciona el sensor de línia
  • Esquemes de sensors de moviment i principi de treball, esquemes de cablejat

  •