ESP32 connected to LCD 20x4 and an inductive sensor

Citirea unui senzor inductiv cu ESP32

Proiectul de astăzi constă în utilizarea unui microcontroler ESP32 pentru a citi semnalele generate de un senzor inductiv și afișare pe un LCD20x4 conectat pe interfața I2C. Un senzor inductiv este undispozitiv care detectează obiecte metalice în apropiere prin schimbarea câmpului magnetic în jurul său.Pentru acest proiect folosesc un ESP32, un microcontroler puternic și versatil, poate fi folosit pentru a captura și procesa semnalele generate de acest senzor.

Posibile aplicații și beneficii:

  • Detectarea precisă și rapidă a obiectelor metalice în orice tip de mediu (cred că ar funcționa fără probleme și în apă)
  • Flexibilitate în procesarea și gestionarea datelor cu ajutorul ESP32 și a convertorului de nivel logic.
  • Potențial de extindere și integrare în alte proiecte de automatizare sau control

Senzorul inductiv

Un senzor inductiv este un dispozitiv electronic care detectează obiecte sau schimbări în mediu folosind principiul inductanței electromagnetice. Acesta constă într-o bobină sau o serie de bobine de sârmă înconjurate de un nucleu de ferită sau alt material feromagnetic.

Inductive sensor description

 Iată cum funcționează în mod general:

  • Bobina Inductivă: Senzorul inductiv are o bobină de sârmă în interior, prin care trece un curent electric.
  • Generarea unui Câmp Magnetic:
    Atunci când curentul trece prin bobină, se creează un câmp magnetic în jurul acesteia. Mărimea acestui câmp magnetic depinde de intensitatea curentului electric care trece prin bobină.
  • Detectarea Obiectelor:
    Atunci când un obiect metalic intră în zona de acțiune a câmpului magnetic generat de senzor, acesta perturbă câmpul magnetic. Această perturbare poate fi detectată de senzor.
  • Generarea unui Semnal Electric:
    Senzorul inductiv convertește perturbarea câmpului magnetic într-un semnal electric. Această schimbare în semnal este ulterior utilizată pentru a declanșa o anumită acțiune sau pentru a indica prezența sau absența unui obiect metalic în zona senzorului.

Senzorii inductivi sunt adesea utilizați în aplicații industriale pentru detectarea prezenței sau absenței obiectelor metalice, controlul poziției în procese de fabricație sau chiar în sistemele de alarmă. Un
avantaj important al senzorilor inductivi este faptul că pot funcționa fără contact direct cu obiectul detectat, ceea ce îi face durabili și potriviți pentru medii industriale dificile.

 Conectarea senzorului inductiv

Conectarea unui senzor inductiv NPN – NO (normal deschis) la un ESP32 poate fi realizată folosind un convertor de nivel logic. Iată pașii generali pe care îi poți urma:

Conectarea Senzorului Inductiv la ESP32

  • Alimentare:
    • Conectează pinul de alimentare (Vcc) al senzorului inductiv la o sursă de alimentare de 5-30V. Pentru că acest senzor funcționează și la 5 V eu l-am conecta la VIN de pe placa ESP32. Ar putea fi folosită o tensiune mai mare de la o sursă externă, de exemplu o baterie sau o altă sursă de alimentare care furnizează tensiunea corespunzătoare, dar în cazul acesta  ar trebui redusă tensiunea de intrare pentru convertorul de nivel logic de la 5V până la 3V.
  • Masă (GND):
    • Conectează pinul de masă (GND) al senzorului la pinul de masă (GND) al ESP32.
  • Ieșire (Out):
    • Conectează pinul de ieșire (Out) al senzorului inductiv la un pin  de intrare de pe placa de conversie logică HV1, iar de la această placă, se va conecta LV1 la un pin (de exemplu eu am folosit pinul 13) de pe ESP32 (vezi poza de mai jos).

Conectarea modului LCD 20×4

Pentru a conecta un modul LCD 20×4 cu interfață I2C la un ESP32, urmați acești pași:

  • Interfața I2C folosește două linii: SDA (Serial Data) și SCL (Serial Clock). Asigurați-vă că acestea sunt conectate corespunzător între modul LCD și ESP32. În cazul meu o să folosesc pinii D21-SDA și D22 – SCL
  • Majoritatea modulelor LCD 20×4 cu interfață I2C au o adresă I2C care poate fi setat printr-un jumper sau un potențiometru, dar eu am scanat adresele I2C și modulul are adresa 0x27. Apoi asigurați-vă că adresa I2C este setată corect în source code și este diferită de alte adrese I2C utilizate în proiectul dvs.

 Componente

Schema electronică/sistem – Conectare Hardware

ESP32 connected to LCD 20x4 and an inductive sensor
ESP32 connected to LCD 20×4 and an inductive sensor

Instalarea bibliotecilor în PlatformIO

Pentru a putea folosi codul de mai jos veți avea nevoie de biblioteca LiquidCrystal_I2C pentru a controla
modulul LCD 20×4 cu interfață I2C și ESP32Time pentru a accesa modulul RTC de pe placa ESP32. Puteți instala această bibliotecă folosind Managerul de biblioteci in PlatformIO IDE.

PlatformIO library install
PlatformIO library install

Click pe biblioteca dorită și Add to Project.

Add library to project in PlatformIO
Add library to project in PlatformIO

Selectează proiectul care folosește această bibliotecă

Select project which use the library
Select project which use the library

Și acum se poate folosi această bibliotecă incluzând header-ul corespunzător.

Codul de test

Demo

Documentație proiect

Afiliere eMag

Linkurile de la secțiunea “Componente” conțin adresa mea de afiliere la eMag.ro, iar dacă cumperi folosind aceste linkuri vei susține blogul meu. Mulțumesc!

eMag Genius

Hai și tu în Genius! Abonează-te la Genius 12 luni și primești beneficii premium și 20 lei card cadou eMAG. Profită acum! eMag Genius

Mulțumesc pentru atenție!

Pentru întrebări și/sau consultanță tehnică vă stau la dispozitie pe blog mai jos în secțiunea de comentarii sau pe email simedruflorin@automatic-house.ro.

O zi plăcută tuturor !

Back to top of page

De Florin Simedru

Autor

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *


The reCAPTCHA verification period has expired. Please reload the page.