Table des matières:

Mesure de proximité : 5 étapes
Mesure de proximité : 5 étapes

Vidéo: Mesure de proximité : 5 étapes

Vidéo: Mesure de proximité : 5 étapes
Vidéo: 5 étapes pour créer une Relation Client omnicanale ! 2024, Novembre
Anonim
Mesure de proximité
Mesure de proximité

Dans ce didacticiel, je vais expliquer la mesure de la proximité d'un appareil et la publication des valeurs dans la plate-forme cloud Thingsai, io à l'aide d'un capteur à effet hall et d'une carte de développement esp32.

Un capteur à effet Hall est un appareil utilisé pour mesurer l'amplitude d'un champ magnétique. Sa tension de sortie est directement proportionnelle à la force du champ magnétique qui la traverse. Les capteurs à effet Hall sont utilisés pour les applications de détection de proximité, de positionnement, de détection de vitesse et de détection de courant.

Étape 1: COMPOSANTS

COMPOSANTS
COMPOSANTS
COMPOSANTS
COMPOSANTS
COMPOSANTS
COMPOSANTS

Composants matériels:

1. Capteur à effet Hall

2. carte de développement esp32

3. Cavaliers

Composants logiciels:

1. IDE Arduino

2. Les chosesIO. AI

Étape 2: CONNEXIONS:

CONNEXIONS
CONNEXIONS

Capteur à effet Hall ---------------------- esp32

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

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

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

Étape 3: CODAGE:

#comprendre

#comprendre

#comprendre

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

mesure int;

broche de sortie int = A0; //ds18b20

///////////////////////////////////// TOUTES LES DECLARATIONS

pour NUAGE /////////////////////////////

const char* hôte = "api.thingsai.io"; // OU hôte =

devapi2.thethingscloud.com

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

/api/v2/thingscloud2/_table/data_ac

const char* serveur_heure =

"baas.thethingscloud.com"; // c'est pour convertir l'horodatage

const int httpPort = 80;

const int httpsPort = 443;

const char* serveur =

"api.thingsai.io"; // URL du serveur

horodatage du char[10];

WiFiMulti WiFiMulti;

// Utiliser la classe WiFiClient pour créer des connexions TCP

Client WiFi;

//////////////////////////////////// HORAIRE

Fonction CALCUL /////////////////////////////////////

int GiveMeTimestamp()

{

long non signé

délai d'attente = millis();

// Client WiFiClient;

tandis que

(client.disponible() == 0)

{

si (millis() -

délai d'attente > 50000)

{

client.stop();

renvoie 0;

}

}

tandis que (client.available())

{

Ligne de chaîne =

client.readStringUntil('\r'); //indexOf() est une fonction pour rechercher smthng, il renvoie -1 s'il n'est pas trouvé

position int =

line.indexOf("\"horodatage\""); //recherchez "\"timestamp\"" à partir du début de la réponse et copiez toutes les données après cela, ce sera votre horodatage

si (pos >=

0)

{

entier j = 0;pour(j=0;j<10;j++)

{horodatage[j] = ligne[pos + 12 + j];

}

}

}

}

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

void setup()

{Serial.begin(115200);

retard(10);

// On commence par

connexion à un réseau Wi-Fi

WiFiMulti.addAP("nom_wifi", "Mot de passe WiFi");

Serial.println();

Serial.println();Serial.print("Attendez le WiFi… ");while(WiFiMulti.run() != WL_CONNECTED) {Serial.print(".");

retard (500);

}Serial.println("");Serial.println("WiFi connecté");Serial.println("Adresse IP: ");

Serial.println(WiFi.localIP());

retard (500);

}

boucle vide()

{

int valeuranalogique =

analogRead(outputpin);

{

//////////////////////////////////// ENVOYER LA REQUÊTE ET

RECEVOIR LA RÉPONSE//////////////////////

mesure int

= 0;

mesure =

hallLire();Serial.print("Mesure du capteur à effet Hall: ");Serial.println(mesure);

retard(1000);Serial.print("connexion à ");Serial.println(hôte); // à l'envers défini: - hôte = devapi2.thethingscloud.com ou 139.59.26.117

/////////////////////////////////// extrait de code d'horodatage

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

Serial.println("à l'intérieur obtenir l'horodatage\n");

si

(!client.connect(time_server, {

revenir;

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

}client.println("GET /api/timestamp HTTP/1.1"); //Qu'est-ce que cette partie fait, je n'ai pas comprisclient.println("Hôte: baas.thethingscloud.com");client.println("Cache-Control: no-cache");client.println("Facteur-Jeton: ea3c18c6-09ba-d049-ccf3-369a22a284b8");

client.println();

GiveMeTimestamp(); //il appellera la fonction

qui obtiendra la réponse d'horodatage du serveur

Serial.println("horodatage reçu");

Serial.println(horodatage);Serial.println("à l'intérieur de ThingsCloudPost");

Chaîne PostValue =

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

PostValue =

PostValue + ", \"dts\":" +timestamp;

PostValue =

PostValue +", \"data\":{"proximity\":" + mesure +"}"+"}";Serial.println(PostValue);

/* créer une instance de WiFiClientSecure */

Client WiFiClientSecure;Serial.println("Connectez-vous au serveur via le port 443");

si

(!client.connect(serveur, 443)){Serial.println("La connexion a échoué !");

} autre {Serial.println("Connecté au serveur !");

/* créer

demander */

client.println( POST

/devices/deviceData HTTP/1.1");client.println("Hôte: api.thingsai.io");//client.println("Connexion: fermer");client.println("Type de contenu: application/json");client.println("cache-control: no-cache");

client.println( Autorisation:

Porteur eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNTkXs9PKy6_m7tdww);client.print("Contenu-Longueur: ");client.println(PostValue.length());

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

////////////////////////////////PUBLICATION des données sur le

cloud est terminé et obtenez maintenant le formulaire de réponse serveur cloud /////////////////

Serial.print( En attente de réponse

);

tandis que

(!client.available()){

retard (50);

//Serial.print(".");

}

/* si les données sont

disponible puis recevoir et imprimer au Terminal */

tandis que

(client.disponible()) {

caractère c =

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

}

/* si le serveur s'est déconnecté, arrête le client */

si

(!client.connected()) {Serial.println();Serial.println("Serveur déconnecté");client.stop();

}

}

Serial.println( ///////////////////// LA FIN

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

retard(3000);

}}

Étape 4: RÉSULTAT:

RÉSULTAT
RÉSULTAT

Les valeurs lues par le capteur sont envoyées avec succès au cloud IOT et le graphique est créé en tant que proximité en fonction du temps. Ainsi, le fonctionnement du capteur est analysé et utilisé en fonction des domaines d'application requis.

Étape 5: Compléter le didacticiel:

Il s'agit du projet complet pour mesurer la proximité d'un appareil à l'aide du capteur à effet Hall esp32 et de la plateforme cloud Thingsai.io. Merci

Conseillé: