Përmbajtje:
Video: Matja e afërsisë: 5 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:20
Në këtë tutorial do të shpjegoj në lidhje me matjen e afërsisë së një pajisjeje dhe publikimin e vlerave në platformën cloud Thingsai, io duke përdorur sensorin e sallës dhe bordin e zhvillimit esp32.
Një sensor efekti Hall është një pajisje që përdoret për të matur madhësinë e një fushe magnetike. Tensioni i daljes së tij është drejtpërdrejt proporcional me fuqinë e fushës magnetike përmes saj. Sensorët e efektit Hall përdoren për zbulimin e afërsisë, pozicionimin, zbulimin e shpejtësisë dhe aplikimet aktuale të ndijimit.
Hapi 1: PMPRBRSIT
Komponentët e harduerit:
1. Sensori i Hallit
2. bordi i zhvillimit esp32
3. Telat e kërcyesit
Komponentët e Softuerit:
1. Arduino IDE
2. GjëratIO. AI
Hapi 2: LIDHJET:
Sensori i sallës ---------------------- esp32
Aout ------------------------------ vp
Gnd ---------------------------- Gnd
Vcc ------------------------------ 3V3
Hapi 3: KODIMI:
#përfshi
#përfshi
#përfshi
int numërimi = 0, i, m, j, k;
matja int;
int outputpin = A0; // ds18b20
//////////////////////////////////////// GJITHA DEKLARATAT
për CLOUD ///////////////////////////////
const char* host = "api.thingsai.io"; // OSE host =
devapi2.thethingscloud.com
const char* post_url = "/devices/deviceData"; // OSE
/api/v2/thingscloud2/_table/data_ac
const char* serveri i kohës =
"baas.thethingscloud.com"; // kjo është për të konvertuar vulën kohore
const int httpPort = 80;
const int httpsPort = 443;
const char* server =
"api.thingsai.io"; // URL e serverit
vula e kohës char [10];
WiFiMulti WiFiMulti;
// Përdorni klasën WiFiClient për të krijuar lidhje TCP
Klienti WiFiClient;
//////////////////////////////////////// TIMESTAMP
Funksioni i llogaritjes ////////////////////////////////////////
int GiveMeTimestamp ()
{
pa firmosur gjatë
timeout = millis ();
// klienti WiFiClient;
derisa
(klienti i disponueshëm () == 0)
{
nëse (milis () -
timeout> 50000)
{
client.stop ();
kthimi 0;
}
}
ndërsa (klienti i disponueshëm ())
{
Linja e vargut =
client.readStringUntil ('\ r'); // indexOf () është një funksion për të kërkuar smthng, ai kthen -1 nëse nuk gjendet
int pos =
line.indexOf ("\" afati kohor / ""); // kërko për "\" timestamp / "" që nga fillimi i përgjigjes mori dhe kopjo të gjitha të dhënat pas kësaj, do të jetë vula juaj kohore
nëse (pos> =
0)
{
int j = 0;për (j = 0; j <10; j ++)
{vula kohore [j] = rreshti [pos + 12 + j];
}
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////
void setup ()
{Serial.filloj (115200);
vonesa (10);
// Fillojmë nga
lidhja me një rrjet WiFi
WiFiMulti.addAP ("emri wifi", "fjalëkalim wifi");
Serial.println ();
Serial.println ();Serial.print ("Prisni për WiFi …");ndërsa (WiFiMulti.run ()! = WL_CONNECTED) {Serial.print (".");
vonesë (500);
}Serial.println ("");Serial.println ("WiFi i lidhur");Serial.println ("Adresa IP:");
Serial.println (WiFi.localIP ());
vonesë (500);
}
lak void ()
{
int analogVlera =
analogRead (outputpin);
{
//////////////////////////////////////// DENDRGUAR PYETJEN DHE
MERRNI PESRGJIGJEN ///////////////////////
matja int
= 0;
matje =
hallRead ();Serial.print ("Matja e sensorit të sallës:");Serial.println (matja);
vonesa (1000);Serial.print ("lidh me");Serial.println (host); // e përcaktuar me kokë:- host = devapi2.thethingscloud.com ose 139.59.26.117
/////////////////////////////////////// TIMESTAMP KODI SNIPPET
/////////////////////////
Serial.println ("brenda merrni vulën kohore / n");
nëse
(! client.connect (server_ kohor, {
kthim;
//*-*-*-*-*-*-*-*-*-*
}client.println ("GET/api/timestamp HTTP/1.1"); // Çfarë bën kjo pjesë, nuk e kuptovaclient.println ("Pritësi: baas.thethingscloud.com");client.println ("Cache-Control: pa-cache");client.println ("Postier-Token: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
klient.println ();
GiveMeTimestamp (); // do të thërrasë funksionin
i cili do të marrë përgjigjen e afatit kohor nga serveri
Serial.println ("vula kohore e marrë");
Serial.println (vula kohore);Serial.println ("brenda ThingsCloudPost");
String PostValue =
"{" device_id / ": 61121696007, \" slave_id / ": 2";
Vlera Post =
PostValue + ", \" dts / ":" + vula kohore;
Vlera Postare =
PostValue +", \" data / ": {" afërsi / ":" +matje +"}" +"}";Serial.println (PostValue);
/ * krijoni një shembull të WiFiClientSecure */
Klient WiFiClientSecure;Serial.println ("Lidhu me serverin përmes portit 443");
nëse
(! client.connect (server, 443)) {Serial.println ("Lidhja dështoi!");
} tjetër {Serial.println ("I lidhur me serverin!");
/* krijoni
kërkesë */
client.println ( POST
/pajisje/pajisjeData HTTP/1.1 ");client.println ("Pritësi: api.thingsai.io");//client.println("Lidhja: mbyll ");client.println ("Lloji i përmbajtjes: aplikacion/json");client.println ("cache-control: pa-cache");
client.println ( Autorizimi:
Mbartësi eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNTkXs9PKy6_m9d;client.print ("Përmbajtja-Gjatësia:");client.println (PostValue.length ());
klient.println ();client.println (PostValue);
/////////////////////////////////// POSTIMI i të dhënave në
cloud është përfunduar dhe tani merrni përgjigjen nga serveri cloud //////////////////
Serial.print ( Në pritje të përgjigjes
);
derisa
(! client.available ()) {
vonesë (50);
//Serial.print (".");
}
/* nëse të dhënat janë
e disponueshme pastaj merrni dhe printoni në Terminal */
derisa
(client.available ()) {
char c =
client.read ();Serial.shkruani (c);
}
/ * nëse serveri është shkëputur, ndaloni klientin */
nëse
(! client.connected ()) {Serial.println ();Serial.println ("Serveri u shkëput");client.stop ();
}
}
Serial.println ( ////////////////////// FUNDI
///////////////////// );
vonesë (3000);
}}
Hapi 4: REZULTATI:
Vlerat që lexohen nga sensori po dërgohen me sukses në cloud IOT dhe grafiku po krijohet si afërsi kundrejt kohës. Me këtë puna e sensorit analizohet dhe përdoret sipas fushave të kërkuara të aplikimit.
Hapi 5: Udhëzues i plotë:
Ky është projekti i plotë për matjen e afërsisë së një pajisjeje duke përdorur sensorin e sallës esp32 dhe platformën cloud thingsi.io. Faleminderit
Recommended:
Visuino Si të përdorni sensorin e afërsisë induktive: 7 hapa
Visuino Si të përdorni sensorin e afërsisë induktive: Në këtë tutorial ne do të përdorim sensorin e afërsisë induktive dhe një LED të lidhur me Arduino UNO dhe Visuino për të zbuluar afërsinë e metaleve. Shikoni një video demonstruese
Matja e afërsisë në distancë me sensorin e gjesteve APDS9960: 6 hapa
Matja e afërsisë në distancë me sensorin e gjesteve APDS9960: Në këtë tutorial do të mësojmë se si të matim distancën duke përdorur një sensor gjestesh APDS9960, arduino dhe Visuino. Shikoni videon
Piano ajrore duke përdorur sensorin e afërsisë IR, altoparlantin dhe Arduino Uno (i azhurnuar/pjesa 2): 6 hapa
Piano ajrore duke përdorur sensorin IR të afërsisë, altoparlantin dhe Arduino Uno (i azhurnuar/pjesa 2): Ky është një version i azhurnuar i projektit të mëparshëm të pianos ajrore?. Këtu unë jam duke përdorur një altoparlant JBL si dalje. Kam përfshirë gjithashtu një buton të ndjeshëm në prekje për të ndryshuar mënyrat sipas kërkesave. Për shembull- Mënyra e fortë e basit, modaliteti normal, i lartë fr
Piano ajrore duke përdorur sensorin e afërsisë IR dhe Arduino Uno Atmega 328: 6 hapa (me fotografi)
Piano ajrore duke përdorur sensorin IR të afërsisë dhe Arduino Uno Atmega 328: Normalisht pianot qofshin punë elektrike ose mekanike në mekanizmin e thjeshtë të shtypjes së butonit. Por këtu është një kthesë, ne thjesht mund të eliminojmë nevojën e çelësave në një piano duke përdorur disa sensorë. Dhe sensorët e afërsisë infra të kuqe i përshtaten më së miri kauzës sepse t
Pajisja e Afërsisë Walker: 4 Hapa
Pajisja Walker Proximity: Përshëndetje të gjithëve! Ne jemi një grup studentësh nga Akademia e Matematikës dhe Shkencës në Massachusetts në WPI. Kohët e fundit kemi përfunduar një projekt teknologjik ndihmës për të ndihmuar një klient me demencë në Seven Hills. Si rezultat i demencës së tij, klienti kështu