جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
في الوقت الحاضر ، تتجه إنترنت الأشياء وهناك الكثير من الأجهزة لديها بيانات لتحميلها عبر السحابة وتحليل البيانات. تقوم المستشعرات الصغيرة بتحديث البيانات الموجودة على السحابة ويعمل المحرك على طرف آخر عليها ، وسأشرح أحد أمثلة إنترنت الأشياء.
أنا في هذا المقال وسأعرض وأرشد لنشر البيانات على Thingspeak باستخدام ESP8266.
الخطوة 1: المكون المطلوب
ESP8266ESP8266 في الهند -
ESP8266 في المملكة المتحدة -
ESP8266 في الولايات المتحدة الأمريكية -
MLX90614MLX90614 في الهند-
MLX90614 في المملكة المتحدة -
MLX90614 في الولايات المتحدة -
اللوح
BreadBoard في الهند-
BreadBoard في الولايات المتحدة الأمريكية- https://amzn.to/2MW0Opb BreadBoard في المملكة المتحدة-
الخطوة 2: الكود
# تضمين # تضمين # تضمين
سلسلة apiKey = "7CDCTE2767Z8AUIL" ؛ // أدخل مفتاح كتابة API الخاص بك من ThingSpeak
const char * ssid = "مخفي" ؛ // استبدل بمفتاح wifi ssid و wpa2
const char * pass = "qwerty12" ؛ const char * server = "api.thingspeak.com" ؛
عميل WiFiClient ؛
Adafruit_MLX90614 mlx = Adafruit_MLX90614 () ؛
هدف int objTemp ؛
int ambTemp؛
الإعداد باطل()
{Serial.begin (115200) ؛ تأخير (10) ؛ Serial.println ("الاتصال بـ") ؛ Serial.println (ssid) ؛ WiFi.begin (ssid ، تمرير) ؛ while (WiFi.status ()! = WL_CONNECTED) {delay (500) ؛ Serial.print (".") ؛ } Serial.println ("") ؛ Serial.println ("متصل بشبكة WiFi") ؛ mlx.begin () ، Wire.begin (D1، D2) ؛ } حلقة فارغة() {
if (client.connect (server، 80)) // "184.106.153.149" أو api.thingspeak.com
{objTemp = mlx.readObjectTempC () ، ambTemp = mlx.readObjectTempC () ، سلسلة postStr = apiKey ؛ postStr + = "& field1 ="؛ postStr + = سلسلة (objTemp) ، postStr + = "\ r / n / r / n"؛
client.print ("POST / update HTTP / 1.1 / n") ؛
client.print ("المضيف: api.thingspeak.com / n") ؛ client.print ("الاتصال: إغلاق / n") ؛ client.print ("X-THINGSPEAKAPIKEY:" + apiKey + "\ n") ؛ client.print ("نوع المحتوى: application / x-www-form-urlencoded / n") ؛ client.print ("طول المحتوى:") ؛ client.print (postStr.length ()) ؛ client.print ("\ n / n") ؛ client.print (postStr) ؛
Serial.print ("Ambient =") ؛ Serial.print (ambTemp) ؛
Serial.print ("* C / tObject =") ؛ Serial.print (objTemp) ؛ Serial.println ("* C") ؛
}
client.stop () ؛ تأخير (2000) ؛ }