Obsah:

Měření vzdálenosti: 5 kroků
Měření vzdálenosti: 5 kroků

Video: Měření vzdálenosti: 5 kroků

Video: Měření vzdálenosti: 5 kroků
Video: Reportáž TV Nova, měření penisů 2024, Listopad
Anonim
Měření blízkosti
Měření blízkosti

V tomto tutoriálu vysvětlím měření blízkosti zařízení a publikování hodnot do cloudové platformy Thingsai, io pomocí Hallova senzoru a vývojové desky esp32.

Senzor Hallova jevu je zařízení, které se používá k měření velikosti magnetického pole. Jeho výstupní napětí je přímo úměrné síle magnetického pole, které jím prochází. Senzory s Hallovým efektem se používají pro aplikace snímání blízkosti, polohování, detekce rychlosti a snímání proudu.

Krok 1: KOMPONENTY

KOMPONENTY
KOMPONENTY
KOMPONENTY
KOMPONENTY
KOMPONENTY
KOMPONENTY

Hardwarové komponenty:

1. Hallův snímač

2. vývojová deska esp32

3. Propojovací vodiče

Softwarové komponenty:

1. Arduino IDE

2. VěciIO. AI

Krok 2: PŘIPOJENÍ:

PŘIPOJENÍ
PŘIPOJENÍ

Hallův senzor ---------------------- esp32

Aout ------------------------------ vp

Gnd ----------------------------- Gnd

Vcc ------------------------------ 3V3

Krok 3: KÓDOVÁNÍ:

#zahrnout

#zahrnout

#zahrnout

int count = 0, i, m, j, k;

int měření;

int outputpin = A0; // ds18b20

////////////////////////////////////////////// VŠE PROHLÁŠENÍ

pro CLOUD //////////////////////////////////

const char* host = "api.thingsai.io"; // NEBO hostitel =

devapi2.thethingscloud.com

const char* post_url = "/devices/deviceData"; // NEBO

/api/v2/thingscloud2/_table/data_ac

const char* time_server =

"baas.thethingscloud.com"; // toto má převést časové razítko

const int httpPort = 80;

const int httpsPort = 443;

const char* server =

"api.thingsai.io"; // URL serveru

časové razítko char [10];

WiFiMulti WiFiMulti;

// Pomocí třídy WiFiClient vytvořte připojení TCP

Klient WiFiClient;

///////////////////////////////////////////// TIMESTAMP

Funkce VÝPOČET /////////////////////////////////////////////

int GiveMeTimestamp ()

{

bez znaménka dlouhý

timeout = milis ();

// klient WiFiClient;

zatímco

(client.available () == 0)

{

pokud (milis () -

časový limit> 50 000)

{

client.stop ();

návrat 0;

}

}

while (client.available ())

{

Řetězcový řádek =

client.readStringUntil ('\ r'); // indexOf () je funkce pro hledání něčeho, vrací -1, pokud není nalezena

int pos =

line.indexOf ("\" časové razítko / ""); // vyhledejte "\" časové razítko / "" od začátku odpovědi a poté zkopírujte všechna data, bude to vaše časové razítko

if (pos> =

0)

{

int j = 0;pro (j = 0; j <10; j ++)

{časové razítko [j] = řádek [pos + 12 + j];

}

}

}

}

////////////////////////////////////////////////////////////////////////////////////////////////////////

neplatné nastavení ()

{Serial.begin (115200);

zpoždění (10);

// Začínáme od

připojení k síti WiFi

WiFiMulti.addAP ("název_ WiFi", "wifi_password");

Serial.println ();

Serial.println ();Serial.print ("Počkejte na WiFi …");while (WiFiMulti.run ()! = WL_CONNECTED) {Serial.print (".");

zpoždění (500);

}Serial.println ("");Serial.println ("WiFi připojeno");Serial.println ("IP adresa:");

Serial.println (WiFi.localIP ());

zpoždění (500);

}

prázdná smyčka ()

{

int analogValue =

analogRead (outputpin);

{

///////////////////////////////////////////// ODESLAT DOTAZ A

ZÍSKEJTE ODPOVĚĎ /////////////////////////////

int měření

= 0;

měření =

hallRead ();Serial.print ("Měření Hallovým senzorem:");Serial.println (měření);

zpoždění (1000);Serial.print („připojení k“);Serial.println (hostitel); // definováno vzhůru nohama:- host = devapi2.thethingscloud.com nebo 139.59.26.117

/////////////////////////////////////////// TIMESTAMP CODE SNIPPET

/////////////////////////

Serial.println ("uvnitř získat časové razítko / n");

-li

(! client.connect (time_server, {

vrátit se;

//*-*-*-*-*-*-*-*-*-*

}client.println ("GET/api/timestamp HTTP/1.1"); // Co tato část dělá, jsem nepochopilclient.println ("Host: baas.thethingscloud.com");client.println ("Řízení mezipaměti: bez mezipaměti");client.println ("Pošťák-Token: ea3c18c6-09ba-d049-ccf3-369a22a284b8");

client.println ();

GiveMeTimestamp (); // zavolá funkci

který získá odpověď časového razítka ze serveru

Serial.println ("časové razítko přijato");

Serial.println (časové razítko);Serial.println („uvnitř ThingsCloudPost“);

Řetězec PostValue =

"{" device_id / ": 61121696007, \" slave_id / ": 2";

PostValue =

PostValue + ", \" dts / ":" + časové razítko;

PostValue =

PostValue +", \" data / ": {" blízkost / ":" +měření +"}" +"}";Serial.println (PostValue);

/ * vytvořit instanci WiFiClientSecure */

WiFiClientSecure klient;Serial.println ("Připojit k serveru přes port 443");

-li

(! client.connect (server, 443)) {Serial.println ("Připojení se nezdařilo!");

} else {Serial.println („Připojeno k serveru!“);

/* vytvořit

žádost */

client.println ( POST

/devices/deviceData HTTP/1.1 ");client.println ("Host: api.thingsai.io");//client.println("Connection: close ");client.println ("Typ obsahu: aplikace/json");client.println ("ovládání mezipaměti: bez mezipaměti");

client.println ( Autorizace:

Nositel eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNTkXs9PKy6_mtdclient.print ("Délka obsahu:");client.println (PostValue.length ());

client.println ();client.println (PostValue);

////////////////////////////////////// ZADÁNÍ dat na

cloud je hotov a nyní získejte formulář odpovědi cloud server //////////////////////

Serial.print („Čekání na odpověď

);

zatímco

(! client.available ()) {

zpoždění (50);

//Serial.print (".");

}

/* pokud jsou data

k dispozici pak přijměte a vytiskněte na Terminál */

zatímco

(client.available ()) {

znak c =

client.read ();Serial.write (c);

}

/ * pokud se server odpojí, zastavte klienta */

-li

(! client.connected ()) {Serial.println ();Serial.println ("Server odpojen");client.stop ();

}

}

Serial.println ( ////////////////////////// KONEC

///////////////////// );

zpoždění (3000);

}}

Krok 4: VÝSLEDEK:

VÝSLEDEK
VÝSLEDEK

Hodnoty načtené ze senzoru se úspěšně odesílají do cloudu IOT a graf se vytváří jako blízkost vs. čas. Díky tomu je činnost senzoru analyzována a používána podle požadovaných oblastí použití.

Krok 5: Dokončete výukový program:

Toto je kompletní projekt pro měření blízkosti zařízení pomocí halového senzoru esp32 a cloudové platformy thingsai.io. Děkuji

Doporučuje: