Orodha ya maudhui:

Upimaji wa Ukaribu: Hatua 5
Upimaji wa Ukaribu: Hatua 5

Video: Upimaji wa Ukaribu: Hatua 5

Video: Upimaji wa Ukaribu: Hatua 5
Video: 10 самых АТМОСФЕРНЫХ мест Дагестана. БОЛЬШОЙ ВЫПУСК #Дагестан #ПутешествиеПоДагестану 2024, Novemba
Anonim
Upimaji wa Ukaribu
Upimaji wa Ukaribu

Katika mafunzo haya nitaelezea juu ya kupima ukaribu wa kifaa na kuchapisha maadili kwenye jukwaa la wingu la Thingsai, io kwa kutumia sensor ya ukumbi na bodi ya maendeleo ya esp32.

Sensor ya athari ya ukumbi ni kifaa ambacho hutumiwa kupima ukubwa wa uwanja wa sumaku. Voltage yake ya pato ni sawa sawa na nguvu ya uwanja wa magnetic kupitia hiyo. Sensorer za athari ya ukumbi hutumiwa kwa kuhisi ukaribu, kuweka nafasi, kugundua kasi, na matumizi ya sasa ya kuhisi.

Hatua ya 1: VIFAA

VIFAA
VIFAA
VIFAA
VIFAA
VIFAA
VIFAA

Vipengele vya vifaa:

1. Sensorer ya Ukumbi

2. esp32 bodi ya maendeleo

3. nyaya za jumper

Vipengele vya Programu:

1. Arduino IDE

2. VituIO. AI

Hatua ya 2: Uunganisho:

Viunganisho
Viunganisho

Sensor ya ukumbi ---------------------- esp32

Nje ------------------------------ vp

Ndugu ----------------------------- Ndugu

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

Hatua ya 3: CODING:

# pamoja

# pamoja

# pamoja

hesabu = 0, i, m, j, k;

kipimo;

pato la ndani = A0; // ds18b20

/////////////////////////////////////////// MATANGAZO YOTE

kwa CLOUD //////////////////////////////////

const char * mwenyeji = "api.thingsai.io"; // AU mwenyeji =

devapi2.thethingscloud.com

const char * post_url = "/ vifaa / DataData ya kifaa"; // AU

/ api / v2 / thingscloud2 / _table / data_ac

const char * muda_server =

"baas.thethingscloud.com"; // hii ni kubadilisha muhuri wa muda

const int httpPort = 80;

const int httpsPort = 443;

const char * seva =

"api.thingsai.io"; // URL ya seva

ch timestamp [10];

WiFiMulti WiFiMulti;

// Tumia darasa la Wateja wa WiFi kuunda unganisho la TCP

Mteja wa Wateja wa WiFi;

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

HESABU kazi /////////////////////////////////////////////

int GiveMeTimestamp ()

{

bila saini ndefu

muda wa kumaliza = millis ();

// Mteja wa Wateja wa WiFi;

wakati

(mteja anapatikana () == 0)

{

ikiwa (millis () -

muda wa kumaliza> 50000)

{

mteja.acha ();

kurudi 0;

}

}

wakati (mteja anapatikana ())

{

Mstari wa kamba =

mteja.readStringUntil ('\ r'); // indexOf () ni funtion ya kutafuta smthng, inarudi -1 ikiwa haipatikani

int pos =

line.indexOf ("\" timestamp / ""); // tafuta "\" timestamp / "" kutoka mwanzo wa jibu lilipata na kunakili data zote baada ya hapo, itakuwa alama yako ya muda

ikiwa (pos> =

0)

{

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

{timestamp [j] = mstari [pos + 12 + j];

}

}

}

}

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

kuanzisha batili ()

{Serial. Kuanza (115200);

kuchelewesha (10);

// Tunaanza na

kuunganisha kwenye mtandao wa WiFi

WiFiMulti.addAP ("jina la wifi", "neno la siri");

Serial.println ();

Serial.println ();Serial.print ("Subiri kwa WiFi…");wakati (WiFiMulti.run ()! = WL_CONNECTED) {Printa ya serial (".");

kuchelewesha (500);

}Serial.println ("");Serial.println ("WiFi imeunganishwa");Serial.println ("Anwani ya IP:");

Serial.println (WiFi.localIP ());

kuchelewesha (500);

}

kitanzi batili ()

{

Thamani ya Analog =

AnalogRead (pato la pato);

{

////////////////////////////////////////// TUMA SWALI NA

POKEA MAJIBU //////////////////////////

kipimo cha int

= 0;

kipimo =

ukumbiRead ();Serial.print ("Upimaji wa sensor ya ukumbi:");Serial.println (kipimo);

kuchelewesha (1000);Serial.print ("kuunganisha kwa");Serial.println (mwenyeji); // imefafanuliwa kichwa: - mwenyeji = devapi2.thethingscloud.com au 139.59.26.117

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

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

Serial.println ("ndani pata muhuri wa muda / n");

kama

(! mteja.connect (time_server, {

kurudi;

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

}mteja.println ("GET / api / timestamp HTTP / 1.1"); // Je! Sehemu hii inafanya nini, sikupatamteja.println ("Jeshi: baas.thethingscloud.com");mteja.println ("Cache-Control: no-cache");mteja.println ("Postman-Token: ea3c18c6-09ba-d049-ccf3-369a22a284b8");

mteja.println ();

NipeTimestamp (); // itaita kazi hiyo

ambayo itapata majibu ya muhuri wa muda kutoka kwa seva

Serial.println ("timestamp imepokea");

Serial.println (timestamp);Serial.println ("ndani ya ThingsCloudPost");

Thamani PostValue =

"{" kifaa_id / ": 61121696007, \" mtumwa_id / ": 2";

Thamani ya Posta =

Thamani ya Posta + ", \" dts / ":" + muhuri wa muda;

Thamani ya Posta =

Thamani ya Posta + ", \" data / ": {" ukaribu / ":" + kipimo + "}" + "}";Serial.println (PostValue);

/ * tengeneza mfano wa WiFiClientSecure * /

Mteja wa WiFiClientSecure;Serial.println ("Unganisha kwenye seva kupitia bandari 443");

kama

(! mteja.connect (seva, 443)) {Serial.println ("Uunganisho umeshindwa!");

} mwingine {Serial.println ("Imeunganishwa na seva!");

/ * tengeneza

ombi * /

mteja.println ( POST

/ vifaa / kifaaData HTTP / 1.1 ");mteja.println ("Jeshi: api.thingsai.io");//client.println ("Uunganisho: funga");mteja.println ("Aina ya Maudhui: programu / json");mteja.println ("cache-control: no-cache");

mteja.println ( Idhini:

Kubeba eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNTkXs9PKy6_m9td)alama ya mteja ("Urefu wa Yaliyomo:");mteja.println (PostValue.length ());

mteja.println ();mteja.println (PostValue);

///////////////////////////////////// KUTUMIZA data kwa

wingu imefanywa na sasa pata fomu ya majibu seva ya wingu ////////////////////

Serial.print ( Inasubiri jibu

);

wakati

(! mteja anapatikana ()) {

kuchelewesha (50);

//Printa ya serial (".");

}

/ * ikiwa data ni

inapatikana kisha pokea na uchapishe kwa Terminal * /

wakati

(mteja anapatikana ()) {

char c =

soma mteja ();Serial.write (c);

}

/ * ikiwa seva imetengwa, simamisha mteja * /

kama

(! mteja.meunganishwa ()) {Serial.println ();Serial.println ("Seva imekatika");mteja.acha ();

}

}

Serial.println ( //////////////////////// MWISHO

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

kuchelewesha (3000);

}}

Hatua ya 4: MATOKEO:

MATOKEO
MATOKEO

Thamani ambazo zinasomwa kutoka kwa sensa zinatumwa kwa wingu la IOT kwa mafanikio na grafu inaundwa kama ukaribu dhidi ya wakati. Kwa kufanya hivyo, kazi ya sensor inachambuliwa na kutumiwa kulingana na maeneo yanayotakiwa ya matumizi.

Hatua ya 5: Mafunzo kamili:

Huu ndio mradi kamili wa kupima ukaribu wa kifaa kwa kutumia sensor ya ukumbi esp32 na jukwaa la wingu la thingsai.io. Asante

Ilipendekeza: