Satura rādītājs:
- 1. darbība: SASTĀVDAĻAS
- 2. darbība: SAVIENOJUMI:
- 3. darbība: KODĒŠANA:
- 4. solis: REZULTĀTS:
- 5. darbība. Pabeigt apmācību:
Video: Tuvuma mērīšana: 5 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Šajā apmācībā es paskaidrošu par ierīces tuvuma mērīšanu un vērtību publicēšanu Thingsai, io mākoņa platformā, izmantojot zāles sensoru un esp32 izstrādes plati.
Halles efekta sensors ir ierīce, ko izmanto magnētiskā lauka lieluma mērīšanai. Tās izejas spriegums ir tieši proporcionāls magnētiskā lauka stiprumam caur to. Holla efekta sensori tiek izmantoti tuvuma noteikšanai, pozicionēšanai, ātruma noteikšanai un pašreizējās noteikšanas lietojumprogrammām.
1. darbība: SASTĀVDAĻAS
Aparatūras komponenti:
1. Zāles sensors
2. esp32 attīstības padome
3. Jumper vadi
Programmatūras komponenti:
1. Arduino IDE
2. ThingsIO. AI
2. darbība: SAVIENOJUMI:
Zāles sensors ---------------------- esp32
Aout ------------------------------ vp
Gnd ----------------------------- Gnd
Vcc ------------------------------ 3V3
3. darbība: KODĒŠANA:
#iekļaut
#iekļaut
#iekļaut
int skaits = 0, i, m, j, k;
int mērīšana;
int outputpin = A0; // ds18b20
///////////////////////////////////////////////////////////////////// VISAS DEKLARĀCIJAS
CLOUD ///////////////////////////////
const char* saimnieks = "api.thingsai.io"; // VAI saimniekdators =
devapi2.thethingscloud.com
const char* post_url = "/devices/deviceData"; // VAI
/api/v2/thingscloud2/_table/data_ac
const char* laika_serveris =
"baas.thethingscloud.com"; // tas ir laika zīmoga konvertēšana
const int httpPort = 80;
const int httpsPort = 443;
const char* serveris =
"api.thingsai.io"; // Servera URL
simbolu laika zīmogs [10];
WiFiMulti WiFiMulti;
// Izmantojiet WiFiClient klasi, lai izveidotu TCP savienojumus
WiFiClient klients;
/////////////////////////////////////////////////////// TIMESTAMP
APRĒĶINA funkcija ////////////////////////////////////////
int GiveMeTimestamp ()
{
neparakstīts ilgi
taimauts = milis ();
// WiFiClient klients;
kamēr
(client.available () == 0)
{
ja (milis () -
taimauts> 50000)
{
client.stop ();
atgriezties 0;
}
}
kamēr (client.available ())
{
Stīgu līnija =
client.readStringUntil ('\ r'); // indexOf () ir funkcija smthng meklēšanai, tā atgriež -1, ja tā netiek atrasta
int pos =
line.indexOf ("\" laika zīmogs / ""); // no atbildes sākuma meklējiet "\" timestamp / "" un pēc tam nokopējiet visus datus, tas būs jūsu laika zīmogs
ja (pos> =
0)
{
int j = 0;par (j = 0; j <10; j ++)
{laika zīmogs [j] = līnija [pos + 12 + j];
}
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////
anulēts iestatījums ()
{Serial.begin (115200);
kavēšanās (10);
// Mēs sākam ar
izveidojot savienojumu ar WiFi tīklu
WiFiMulti.addAP ("wifi_name", "wifi_parole");
Sērijas.println ();
Sērijas.println ();Serial.print ("Pagaidiet WiFi …");kamēr (WiFiMulti.run ()! = WL_CONNECTED) {Sērijas nospiedums (".");
kavēšanās (500);
}Serial.println ("");Serial.println ("savienots WiFi");Serial.println ("IP adrese:");
Serial.println (WiFi.localIP ());
kavēšanās (500);
}
tukša cilpa ()
{
int analogValue =
analogRead (outputpin);
{
//////////////////////////////////
SAŅEMT ATBILDI ///////////////////////
int mērīšana
= 0;
mērījums =
hallRead ();Serial.print ("Halles sensora mērījums:");Serial.println (mērījums);
kavēšanās (1000);Serial.print ("savienojums ar");Serial.println (resursdators); // definēts otrādi:- resursdators = devapi2.thethingscloud.com vai 139.59.26.117
////////////////////////////////////////////////////////////////// LAIKAS ZĪMES KODA SNIPPETS
/////////////////////////
Serial.println ("iekšā iegūt laika zīmogu / n");
ja
(! client.connect (time_server, {
atgriešanās;
//*-*-*-*-*-*-*-*-*-*
}client.println ("GET/api/timestamp HTTP/1.1"); // Ko dara šī daļa, es nesaņēmuclient.println ("Saimnieks: baas.thethingscloud.com");client.println ("Cache-Control: no-cache");client.println ("Pastnieks-marķieris: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
klients.println ();
GiveMeTimestamp (); // tas izsauks funkciju
kas no servera saņems atbildi uz laika zīmogu
Serial.println ("saņemts laika zīmogs");
Serial.println (laika zīmogs);Serial.println ("iekšā ThingsCloudPost");
String PostValue =
"{" device_id / ": 61121696007, \" slave_id / ": 2";
PostValue =
PostValue + ", \" dts / ":" + laika zīmogs;
PostValue =
PostValue +", \" data / ": {" proximity / ":" +mērījums +"}" +"}";Serial.println (PostValue);
/ * izveidot WiFiClientSecure gadījumu */
WiFiClientSecure klients;Serial.println ("Savienojuma izveide ar serveri, izmantojot portu 443");
ja
(! client.connect (serveris, 443)) {Serial.println ("Savienojums neizdevās!");
} vēl {Serial.println ("Savienojums ar serveri!");
/* izveidot
pieprasījums */
client.println ( POST
/devices/deviceData HTTP/1.1 ");client.println ("Saimnieks: api.thingsai.io");//klients.println ("Savienojums: aizvērt ");client.println ("Satura tips: lietojumprogramma/json");client.println ("cache-control: no-cache");
client.println ( Autorizācija:
Nēsātājs eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNTkXs9PKd5_97 "client.print ("Content-Length:");client.println (PostValue.length ());
klients.println ();client.println (PostValue);
////////////////////////////////////////////////&Hl=lv lai datus publicētu
mākonis ir pabeigts un tagad iegūstiet atbildes veidlapu mākoņa serverī ///////////////////
Serial.print ( Gaida atbildi
);
kamēr
(! client.available ()) {
kavēšanās (50);
//Sērijas nospiedums (".");
}
/* ja dati ir
pieejams, tad saņemiet un izdrukājiet terminālī */
kamēr
(client.available ()) {
ogle c =
klients.lasīt ();Serial.write (c);
}
/ * ja serveris ir atvienots, apturiet klientu */
ja
(! client.connected ()) {Sērijas.println ();Serial.println ("Serveris atvienots");client.stop ();
}
}
Serial.println ( ////////////////////// THE END
///////////////////// );
kavēšanās (3000);
}}
4. solis: REZULTĀTS:
No sensora nolasītās vērtības tiek veiksmīgi nosūtītas uz IOT mākoni, un diagramma tiek veidota kā tuvums un laiks. Tādējādi sensora darbība tiek analizēta un izmantota atbilstoši nepieciešamajām pielietojuma jomām.
5. darbība. Pabeigt apmācību:
Šis ir pilnīgs projekts ierīces tuvuma mērīšanai, izmantojot zāles sensoru esp32 un thingsai.io mākoņa platformu. Paldies
Ieteicams:
Raspberry Pi - TMD26721 infrasarkanā digitālā tuvuma detektora Java apmācība: 4 soļi
Raspberry Pi-TMD26721 infrasarkanā digitālā tuvuma detektora Java apmācība: TMD26721 ir infrasarkanais digitālais tuvuma detektors, kas nodrošina pilnīgu tuvuma noteikšanas sistēmu un digitālās saskarnes loģiku vienā 8 kontaktu virsmas stiprinājuma modulī. Tuvuma noteikšana ietver uzlabotu signāla un trokšņa un precizitāte. Profesionālis
Visuino Kā lietot induktīvo tuvuma sensoru: 7 soļi
Visuino Kā lietot induktīvo tuvuma sensoru: šajā apmācībā mēs izmantosim induktīvo tuvuma sensoru un gaismas diodi, kas savienota ar Arduino UNO un Visuino, lai noteiktu metāla tuvumu. Noskatieties demonstrācijas video
Izveidojiet tuvuma sensoru ar Magicbit [Magicblocks]: 6 soļi
Izveidojiet tuvuma sensoru ar Magicbit [Magicblocks]: šī apmācība iemācīs jums izmantot tuvuma sensoru ar Magicbit, izmantojot Magicblocks. Šajā projektā, kura pamatā ir ESP32, mēs izmantojam magicbit. Tāpēc šajā projektā var izmantot jebkuru ESP32 izstrādes plati
Attāluma tuvuma mērīšana ar žestu sensoru APDS9960: 6 soļi
Attāluma tuvuma mērīšana ar žestu sensoru APDS9960: šajā apmācībā mēs iemācīsimies izmērīt attālumu, izmantojot žestu sensoru APDS9960, arduino un Visuino. Noskatieties video
Gaisa klavieres, izmantojot IR tuvuma sensoru, skaļruni un Arduino Uno (jaunināts/2. daļa): 6 soļi
Gaisa klavieres, izmantojot IR tuvuma sensoru, skaļruni un Arduino Uno (jaunināts/2. daļa): vai šī ir iepriekšējā gaisa klavieru projekta uzlabotā versija?. Šeit kā izeju izmantoju JBL skaļruni. Esmu iekļāvis arī skārienjutīgu pogu, lai mainītu režīmus atbilstoši prasībām. Piemēram- cietā basa režīms, parastais režīms, augsta fr