คู่มือสำหรับผู้เริ่มต้นใช้งาน ESP8266 และการทวีตโดยใช้ ESP8266: 17 ขั้นตอน (พร้อมรูปภาพ)
คู่มือสำหรับผู้เริ่มต้นใช้งาน ESP8266 และการทวีตโดยใช้ ESP8266: 17 ขั้นตอน (พร้อมรูปภาพ)
Anonim
คู่มือสำหรับผู้เริ่มต้นใช้งาน ESP8266 และการทวีตโดยใช้ ESP8266
คู่มือสำหรับผู้เริ่มต้นใช้งาน ESP8266 และการทวีตโดยใช้ ESP8266

ฉันเรียนรู้เกี่ยวกับ Arduino เมื่อ 2 ปีที่แล้ว ดังนั้นฉันจึงเริ่มเล่นกับสิ่งง่ายๆ เช่น ไฟ LED ปุ่ม มอเตอร์ ฯลฯ จากนั้นฉันคิดว่าจะดีหรือไม่ที่จะเชื่อมต่อเพื่อทำสิ่งต่างๆ เช่น แสดงสภาพอากาศของวัน ราคาหุ้น กำหนดเวลารถไฟ จอ LCD ฉันพบว่าสิ่งนี้สามารถทำได้โดยการส่งและรับข้อมูลผ่านอินเทอร์เน็ต ดังนั้นวิธีแก้ปัญหาคือการเชื่อมต่อกับ intenet เริ่มจากการค้นหาวิธีเชื่อมต่อ Arduino กับอินเทอร์เน็ต และส่งและรับข้อมูล ฉันได้เรียนรู้เกี่ยวกับโมดูล wifi บนอินเทอร์เน็ตและพบว่ามีราคาแพงมาก จากนั้นฉันก็ได้เรียนรู้เกี่ยวกับ ESP8266

ฉันอ่านข้อมูลบนอินเทอร์เน็ตเกี่ยวกับโมดูล ESP8266 เป็นจำนวนมากเมื่อประมาณหนึ่งปีที่แล้วและซื้อมาหนึ่งอัน แต่เพิ่งจะใช้งานเมื่อเดือนที่แล้ว ตอนนั้นยังไม่มีข้อมูลที่กว้างขวาง อย่างไรก็ตาม ขณะนี้เอกสารจำนวนมาก มีวิดีโอให้บริการ บนอินเทอร์เน็ตเกี่ยวกับเฟิร์มแวร์ คำสั่ง AT โครงการ ฯลฯ ดังนั้นฉันจึงตัดสินใจเริ่มต้น

ฉันเขียนคำแนะนำนี้เป็นคู่มือสำหรับผู้เริ่มต้นใช้งานเนื่องจากประสบปัญหามากมายในการเดินสายและเริ่มต้นใช้งาน ESP8266 ดังนั้นฉันจึงตัดสินใจเขียนคำแนะนำนี้เพื่อให้ผู้อื่นที่ประสบปัญหากับโมดูลสามารถแก้ไขปัญหาได้เร็วขึ้น

ในคำแนะนำนี้ฉันจะพยายามแสดง

  • วิธีเชื่อมต่อ ESP8266 และสื่อสารกับมันผ่าน Arduino Uno
  • ฉันจะพยายามแสดงให้เห็นว่าทวีตสามารถส่งผ่าน Thingspeak ได้อย่างไร

ESP8266 สามารถทำอะไรได้บ้างมันถูกจำกัดด้วยจินตนาการของคุณ ฉันเคยเห็นโครงการและแบบฝึกหัดบนอินเทอร์เน็ตที่แสดงวิธีดึงข้อมูลอุณหภูมิของเมือง ราคาหุ้น การส่งและรับอีเมล การโทรศัพท์ และอื่นๆ อีกมากมาย ฉันจะแสดงใน นี้สอนวิธีการส่งทวีต

ขั้นตอนที่ 1: สิ่งที่คุณต้องการ

สิ่งที่คุณต้องการ
สิ่งที่คุณต้องการ

นี่คือสิ่งที่คุณต้องการ ส่วนใหญ่สามารถซื้อได้จากร้านขายเครื่องใช้ไฟฟ้าหรือทางออนไลน์ (ฉันได้ให้ลิงก์ไว้เพื่อใช้อ้างอิง)

  • 1xESP8266(ESP-01) -ebay
  • อะแดปเตอร์ 1xBreadboard (เรียนรู้วิธีสร้างที่นี่หรือใช้สายจัมเปอร์)
  • 1xLM2596 -ebay
  • ตัวแปลงระดับ 1xLogic -ebay
  • 1xArduino Uno
  • สาย USB สำหรับ Arduino Uno
  • 1xBreadboard -ebay
  • สาย -ebay
  • Arduino IDE
  • บัญชีกับ Thingspeak

ค่าใช้จ่ายทั้งหมดจะอยู่ที่ประมาณ 600 รูปี (ประมาณ 9 ดอลลาร์) ฉันได้ยกเว้นค่าใช้จ่ายของ Arduino Uno แล้ว เนื่องจากขึ้นอยู่กับว่าคุณต้องการต้นฉบับหรือโคลน โคลนที่ถูกที่สุดมีราคาประมาณ 500 รูปี (ประมาณ 4 ดอลลาร์)

ขั้นตอนที่ 2: ข้อมูลบางอย่างเกี่ยวกับ ESP8266

ESP8266 เปิดตัวในปี 2014 เมื่อปีที่แล้ว ดังนั้นจึงค่อนข้างใหม่ ชิปนี้ผลิตโดย Espressif

ข้อได้เปรียบ

ข้อได้เปรียบที่ยิ่งใหญ่ที่สุดของ ESP8266 ก็คือราคาของมัน มันค่อนข้างถูกและคุณสามารถซื้อสองสิ่งนี้ได้ในคราวเดียว ก่อนที่ฉันจะมารู้เรื่องนี้ ฉันก็คิดไม่ถึงว่าจะซื้อโมดูล wifi ด้วยซ้ำ พวกมันแพงเกินไป. เวอร์ชันใหม่ของ ESP8266 มีการเปิดตัวค่อนข้างบ่อยและเวอร์ชันล่าสุดคือ ESP 12 อย่างไรก็ตามในคำแนะนำนี้ ฉันจะเน้นเฉพาะกับ ESP 01 ซึ่งค่อนข้างเป็นที่นิยม นอกจากนี้ เมื่อคุณซื้อ ESP8266 มันมาพร้อมกับเฟิร์มแวร์ AT เริ่มต้น ดังนั้นเมื่อคุณซื้อ ESP8266 คุณพร้อมที่จะเริ่มต้นทันทีที่คุณซื้อมัน.. และคุณจะเห็นได้จากคำแนะนำนี้ มันค่อนข้างง่ายในการเชื่อมต่อพวกมัน

ข้อเสีย

อุปกรณ์ทุกชิ้นมีข้อดีและข้อเสียของตัวเอง และ ESP ก็ไม่ต่างกัน ESP อาจพิสูจน์ได้ว่าบางครั้งใช้งานยากและน่าหงุดหงิด เนื่องจากเป็นอุปกรณ์ที่ค่อนข้างใหม่ คุณจะพบว่ามันยากที่จะรับข้อมูลเกี่ยวกับมัน โชคดีที่ชุมชนที่ esp8266.com มีอยู่จริง ซึ่งช่วยได้มาก นอกจากนี้ บางครั้งก็เริ่มทำสิ่งที่ไม่คาดคิด เช่น ทิ้งขยะจำนวนมากผ่านการเชื่อมต่อแบบอนุกรม เป็นต้น

โปรดทราบว่ามีเอกสารจำนวนมากบนอินเทอร์เน็ตและบางส่วนก็ขัดแย้งกัน คำแนะนำนี้ไม่แตกต่างกัน ในขณะที่เล่นกับ ESP8266 ของฉัน ฉันพบว่ามันเบี่ยงเบนไปมากจากสิ่งที่ถูกกล่าวถึงบนอินเทอร์เน็ต (ของคุณอาจ ด้วย) แต่ก็ใช้ได้ดี

ขั้นตอนที่ 3: Pinout ของ ESP8266

Pinout ของ ESP8266
Pinout ของ ESP8266

ESP8266 มี 8 พินตามที่แสดง

Gnd และ Vcc ควรเชื่อมต่อกับกราวด์และแหล่งจ่ายตามปกติตามลำดับ ESP8266 ทำงานบน 3.3V

พิน RESET ใช้เพื่อรีเซ็ต ESP ด้วยตนเอง โดยปกติควรเชื่อมต่อ 3.3V หากคุณต้องการรีเซ็ต ESP ให้เชื่อมต่อพินนี้กับกราวด์ชั่วขณะแล้วกลับไปที่ 3.3V

CH_PD คือชิปดับซึ่งปกติควรเชื่อมต่อกับ 3.3V

GPIO0 และ GPIO2 เป็นพินเอาต์พุตอินพุตสำหรับวัตถุประสงค์ทั่วไป โดยปกติแล้วควรเชื่อมต่อกับ 3.3V อย่างไรก็ตาม เมื่อแฟลชเฟิร์มแวร์เชื่อมต่อ GPIO0 กับ gnd

พิน Rx และ Tx เป็นพินสำหรับส่งและรับของ ESP8266 ซึ่งทำงานบนลอจิก 3.3V เช่น 3.3V เป็นลอจิก HIGH สำหรับ ESP8266

การเชื่อมต่อโดยละเอียดมีให้ในขั้นตอนต่อไป

ขั้นตอนที่ 4: สิ่งที่ควรใช้สำหรับการสื่อสารกับ ESP8266

สิ่งที่ควรใช้เพื่อสื่อสารกับ ESP8266
สิ่งที่ควรใช้เพื่อสื่อสารกับ ESP8266
สิ่งที่ควรใช้เพื่อสื่อสารกับ ESP8266
สิ่งที่ควรใช้เพื่อสื่อสารกับ ESP8266
สิ่งที่ควรใช้เพื่อสื่อสารกับ ESP8266
สิ่งที่ควรใช้เพื่อสื่อสารกับ ESP8266

มีอุปกรณ์มากมายที่สามารถใช้สื่อสารกับ ESP8266 เช่น โปรแกรมเมอร์ FTDI, ตัวแปลงอนุกรม USB เป็น TTL, Arduino เป็นต้น อย่างไรก็ตาม ฉันเคยใช้ Arduino Uno เพียงเพราะมันง่ายที่สุดและเกือบทุกคนก็มีเหมือนกัน ถ้าคุณ มี Arduino คุณยังมี Arduino IDE และมอนิเตอร์แบบอนุกรมของมันสามารถใช้สำหรับสื่อสารกับ ESP8266 ดังนั้นจึงไม่ต้องเสียเงินกับโปรแกรมเมอร์ FTDI เป็นต้น

อย่างไรก็ตาม หากคุณต้องการหรือถ้าคุณมีอยู่แล้ว คุณอาจใช้โปรแกรมเมอร์ FTDI หรือตัวแปลงอนุกรม USB เป็น TTL (เพิ่มเติมเกี่ยวกับวิธีการเชื่อมต่อในภายหลัง) นอกจากนี้ยังมีซอฟต์แวร์มากมาย เช่น RealTerm หรือสีโป๊ว คุณอาจใช้ สิ่งเหล่านี้ในลักษณะเดียวกับจอภาพอนุกรมของ Arduino IDE

ขั้นตอนที่ 5: การติดตั้ง ESP8266 บน Breadboard

การติดตั้ง ESP8266 บนเขียงหั่นขนม
การติดตั้ง ESP8266 บนเขียงหั่นขนม
การติดตั้ง ESP8266 บนเขียงหั่นขนม
การติดตั้ง ESP8266 บนเขียงหั่นขนม

สังเกตว่าหมุดของ ESP8266 ไม่เป็นมิตรกับเขียงหั่นขนมสามารถเอาชนะได้ 2 วิธี

ใช้สายจัมเปอร์ตัวเมียกับตัวผู้ซึ่งจะทำให้สิ่งของเลอะเทอะหรือ

ทำตามที่แสดงในคำแนะนำนี้หรือ

ใช้บอร์ดอะแดปเตอร์สร้างตัวเอง (มีจำนวนมากใน Instructables) ซึ่งเรียบร้อย

ขั้นตอนที่ 6: พาวเวอร์ซัพพลาย

พาวเวอร์ซัพพลาย
พาวเวอร์ซัพพลาย

ESP8266 ทำงานบนแหล่งจ่ายไฟ 3.3V อย่าเชื่อมต่อกับพิน 5V บน Arduino มันอาจจะไหม้

บทช่วยสอนบางบทแนะนำให้สร้างวงจรแบ่งแรงดันโดยใช้ตัวต้านทาน 1k, 2k ที่มี 5V เป็นอินพุตและรับ 3.3V ข้ามตัวต้านทาน 2k และจ่ายให้กับ Arduino อย่างไรก็ตาม ฉันพบว่า ESP ไม่ได้เพิ่มพลังเมื่อฉันทำสิ่งนี้

ฉันสามารถเพิ่มพลังได้โดยใช้ 3.3V บน Arduino แต่พบว่า ESP เริ่มร้อนขึ้นหลังจากผ่านไประยะหนึ่ง

คุณสามารถใช้ตัวควบคุมแรงดันไฟฟ้า 3.3V

หรือคุณสามารถใช้ตัวแปลงสเต็ปดาวน์ LM2596 dc-dc เหล่านี้ค่อนข้างถูก และฉันใช้สิ่งเหล่านี้ ให้ 5V จาก Arduino ไปที่อินพุต ปรับโพเทนชิออมิเตอร์บนโมดูลจนกว่าเอาต์พุตจะกลายเป็น 3.3VI พบว่า ESP สามารถขับเคลื่อนได้ จากหนึ่งในนั้นเป็นเวลาหลายชั่วโมงทำการเชื่อมต่อดังแสดงในรูป

ขั้นตอนที่ 7: การแปลงระดับลอจิก

การแปลงระดับลอจิก
การแปลงระดับลอจิก

มีการกล่าวถึงว่า ESP มีลอจิก 3.3V ในขณะที่ Arduino มีลอจิก 5V

ซึ่งหมายความว่าใน ESP 3.3V เป็นลอจิก HIGH ในขณะที่ Arduino 5V เป็นลอจิก HIGH ซึ่งอาจทำให้เกิดปัญหาขณะเชื่อมต่อเข้าด้วยกัน

ฉันพบบนอินเทอร์เน็ตว่าต้องใช้การแปลงระดับตรรกะขณะเชื่อมต่อ ESP Rx และ Tx กับ Arduino

บทช่วยสอนบางบทกล่าวว่าจำเป็นต้องมีการแปลงระดับลอจิกขณะเชื่อมต่อขา ESP Rx

อย่างไรก็ตาม ฉันพบว่าปกติแล้วการเชื่อมต่อหมุด ESP Rx และ Tx กับ Arduino ไม่ได้ทำให้เกิดปัญหาใดๆ

ฉันเชื่อมต่อ Rx และ Tx ผ่านตัวแปลงระดับลอจิกและ Rx เพียงอย่างเดียว แต่ไม่ได้รับการตอบสนองใดๆ

อย่างไรก็ตาม ฉันพบว่าการเชื่อมต่อขา ESP Tx ผ่านตัวแปลงระดับลอจิกขณะเชื่อมต่อ Tx โดยตรงก็ไม่เกิดปัญหาเช่นกัน

ดังนั้นตัวแปลงระดับลอจิกอาจใช้หรือไม่ใช้ก็ได้

ใช้วิธีการใดก็ได้ที่เหมาะกับคุณผ่านการลองผิดลองถูก

ขั้นตอนที่ 8: การเชื่อมต่อ

การเชื่อมต่อ
การเชื่อมต่อ

การเชื่อมต่อของ ESP8266 คือ:

ESP8266

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

GPIO2 --------------- 3.3V

GPIO0 --------------- 3.3V

Rx -------------------- Rx ของ Arduino

Tx --------------------- Tx ของ Arduino (โดยตรงหรือผ่านตัวแปลงระดับลอจิก)

CH_PD -------------- 3.3V

รีเซ็ต -------------- 3.3V

Vcc------------- 3.3V

(โปรดทราบว่าในบางรุ่น ESP Rx ควรเชื่อมต่อกับ Arduino Tx และ ESP Tx ควรเชื่อมต่อกับ Arduino Rx)

หากคุณใช้โปรแกรมเมอร์ FTDI หรือตัวแปลงอนุกรม USB เป็น TTL ให้เชื่อมต่อ Tx และ Rx กับ Rx และ Tx ของ ESP8266 ตามลำดับ

ขั้นตอนที่ 9: เริ่มต้นใช้งาน

หลังจากทำการเชื่อมต่อแล้ว ให้อัปโหลด

การตั้งค่าเป็นโมฆะ ()

{}

วงเป็นโมฆะ ()

{}

เช่นสเก็ตช์เปล่าไปยัง Arduino..

เปิดจอภาพอนุกรมและตั้งค่าเป็น "ทั้ง NL & CR"

ทดลองกับอัตราบอด โดยปกติควรเป็น 9600 แม้ว่าบางครั้งอาจเป็น 115200

ขั้นตอนที่ 10: คำสั่ง AT

คำสั่ง AT
คำสั่ง AT

พูดง่ายๆ ว่าคำสั่ง AT คือคำสั่งที่ส่งไปที่ ESP8266 ได้ เพื่อให้มันทำงานบางอย่างได้ เช่น รีสตาร์ท เชื่อมต่อกับ wifi เป็นต้น การตอบสนองของ ESP จะส่งการยืนยันในรูปแบบของข้อความ ด้านล่างนี้ ฉันได้อธิบายไปแล้วบางส่วน คำสั่ง AT และวิธีที่ ESP ตอบสนองต่อคำสั่งเหล่านั้น โปรดทราบว่าเมื่อส่ง ฉันหมายถึงการพิมพ์คำสั่งแล้วกด Enter (ย้อนกลับ)

ส่ง AT ผ่านจอภาพอนุกรม

คำสั่งนี้ใช้เป็นคำสั่งทดสอบ

วิธีที่ ESP ตอบสนอง: ควรส่งคืนตกลง

ส่ง AT+RST ผ่านมอนิเตอร์แบบอนุกรม

คำสั่งนี้ใช้เพื่อรีสตาร์ทโมดูล

วิธีที่ ESP ตอบสนอง:ESP ส่งคืนขยะจำนวนมาก อย่างไรก็ตาม ให้มองหา Ready หรือ ready

ส่ง AT+GMR ผ่านมอนิเตอร์แบบอนุกรม

คำสั่งนี้ใช้เพื่อกำหนดเวอร์ชันเฟิร์มแวร์ของโมดูล

วิธีที่ ESP ตอบสนอง:ควรส่งคืนเวอร์ชันเฟิร์มแวร์

เฟิร์มแวร์เป็นซอฟต์แวร์ชิ้นหนึ่งที่ติดตั้งบนอุปกรณ์ซึ่งปกติแล้วจะอยู่บน ROM (หน่วยความจำแบบอ่านอย่างเดียว) กล่าวคือ ไม่ได้มีไว้เพื่อเปลี่ยนแปลงบ่อยหรือไม่ทำเลย มันให้การควบคุมและการจัดการข้อมูลของอุปกรณ์ ESP8266 มีตัวเลข ของเฟิร์มแวร์ต่างๆ ซึ่งทั้งหมดนี้ง่ายต่อการแฟลช (ติดตั้ง)

ขั้นตอนที่ 11: ไวยากรณ์ทั่วไปของคำสั่ง AT

ไวยากรณ์ทั่วไปของคำสั่ง AT สำหรับการทำหน้าที่ต่าง ๆ จะได้รับ:

AT+พารามิเตอร์=?

เมื่อคำสั่งในประเภทนี้ถูกส่งผ่านมอนิเตอร์แบบอนุกรม ESP จะส่งกลับค่าทั้งหมดที่พารามิเตอร์สามารถรับได้

AT+พารามิเตอร์=val

เมื่อคำสั่งในประเภทนี้ถูกส่งผ่านมอนิเตอร์แบบอนุกรม ESP จะตั้งค่าของพารามิเตอร์เป็น val

AT+พารามิเตอร์?

เมื่อคำสั่งในประเภทนี้ถูกส่งผ่านมอนิเตอร์แบบอนุกรม ESP จะส่งกลับค่าปัจจุบันของพารามิเตอร์

คำสั่ง AT บางคำสั่งอาจใช้เพียงประเภทใดประเภทหนึ่งข้างต้น ในขณะที่บางคำสั่งอาจใช้ทั้ง 3 คำสั่ง

ตัวอย่างคำสั่งที่เป็นไปได้ใน 3 ประเภทข้างต้นคือ CWMODE ซึ่งใช้สำหรับตั้งค่าโหมด wifi

ส่ง AT+CWMODE=? ผ่านจอภาพอนุกรม

วิธีที่ ESP ตอบสนอง:ค่าทั้งหมดที่ ESP CWMODE สามารถรับได้ (1-3) จะถูกส่งคืนโดยเฉพาะ +CWMODE (1-3) ที่ไหน

1=คงที่

2=AP

3=ทั้งแบบคงที่และ AP

ส่ง AT+CWMODE=1 ผ่านมอนิเตอร์แบบอนุกรม

วิธีที่ ESP ตอบสนอง: ควรส่งคืนตกลง หากมีการเปลี่ยนแปลงใน CWMODE จากค่าก่อนหน้าและตั้งค่าเป็นคงที่ มิฉะนั้น ไม่ควรส่งคืนการเปลี่ยนแปลงหากไม่มีการเปลี่ยนแปลงในค่า CWMODE

สำคัญ: เว้นแต่ตั้งค่า CWMODE เป็น 1 คำสั่งในขั้นตอนต่อมาจะไม่ทำงาน

ส่ง AT+CWMODE? ผ่านจอภาพอนุกรม

วิธีที่ ESP ตอบสนอง: ควรส่งคืนค่าปัจจุบันของ CWMODE โดยเฉพาะหากคุณทำตามขั้นตอนข้างต้น +CWMODE:1 ควรส่งคืน

ขั้นตอนที่ 12: เชื่อมต่อกับ Wifi

ส่ง AT+CWLAP ผ่านจอภาพอนุกรม

คำสั่งนี้ใช้เพื่อแสดงรายการเครือข่ายทั้งหมดในพื้นที่

วิธีที่ ESP ตอบสนอง:ควรส่งคืนรายการจุดเชื่อมต่อหรือเครือข่าย wifi ที่มีอยู่ทั้งหมด

ส่ง AT+CWJAP="SSID", "รหัสผ่าน"

(รวมทั้งเครื่องหมายอัญประกาศคู่)

คำสั่งนี้ใช้เพื่อเข้าร่วมเครือข่าย wifi

วิธีที่ ESP ตอบสนอง: ควรส่งคืนตกลงหากโมดูลเชื่อมต่อกับเครือข่าย

ส่ง AT+CWJAP? ผ่านจอภาพอนุกรม

คำสั่งนี้ใช้เพื่อกำหนดเครือข่ายที่เชื่อมต่อ ESP อยู่

วิธีที่ ESP ตอบสนอง:ระบบจะส่งคืนเครือข่ายที่เชื่อมต่อ ESP โดยเฉพาะ +CWJAP:"SSID"

ส่ง AT+CWQAP ผ่านจอภาพอนุกรม

คำสั่งนี้ใช้เพื่อยกเลิกการเชื่อมต่อจากเครือข่ายที่เชื่อมต่อ ESP อยู่

วิธีที่ ESP ตอบสนอง: ESP ออกจากเครือข่ายที่เชื่อมต่อและส่งคืน OK

ส่ง AT+CIFSR ผ่านจอภาพอนุกรม

คำสั่งนี้ใช้เพื่อกำหนดที่อยู่ IP ของ ESP

วิธีที่ ESP ตอบสนอง:ที่อยู่ IP ของ ESP ถูกส่งกลับ

ขั้นตอนที่ 13: Thingspeak

Thingspeak
Thingspeak
Thingspeak
Thingspeak
Thingspeak
Thingspeak
Thingspeak
Thingspeak

หากคุณยังไม่ได้สร้างบัญชีบน Thingspeak ให้สร้างบัญชีตอนนี้

หลังจากสร้างบัญชีบน Thingspeak ให้ไปที่แอพ>ThingTweet

เชื่อมโยงบัญชี Twitter ของคุณกับมัน

สังเกตคีย์ API ที่สร้างขึ้น

หลังจากใช้แอพ ThingTweet เพื่อเชื่อมโยงบัญชี Twitter กับบัญชี ThingSpeak ของคุณแล้ว คุณสามารถส่งทวีตโดยใช้ TweetContol API

API (ส่วนต่อประสานโปรแกรมแอปพลิเคชัน) คือรหัสที่อนุญาตให้โปรแกรมซอฟต์แวร์สองโปรแกรมสื่อสารกัน

API อื่นๆ ที่มีให้สำหรับนักพัฒนา ได้แก่ Google maps API, Open weather API เป็นต้น

หลังจากตั้งค่า ตรวจสอบ และเชื่อมต่อ ESP กับ wifi แล้วเท่านั้น (โดยทั่วไปขั้นตอนทั้งหมดที่ระบุใน 2 ขั้นตอนก่อนหน้า) ให้ทำตามขั้นตอนด้านล่าง

ขั้นตอนที่ 14: คำสั่ง AT เพิ่มเติมบางส่วน

ส่ง AT+CIPMODE=0 ผ่าน Serial monitor

วิธีที่ ESP ตอบสนอง: ส่งคืนตกลง

คำสั่ง CIPMODE ใช้เพื่อตั้งค่าโหมดการถ่ายโอน

0=โหมดปกติ

1=โหมดการส่งผ่าน UART-WiFi

ส่ง AT+CIPMUX=1 ผ่านจอภาพอนุกรม

วิธีที่ ESP ตอบสนอง: ส่งคืนตกลง

คำสั่ง CIPMUX ใช้เพื่อตั้งค่าการเชื่อมต่อเดี่ยวหรือหลายรายการ

0=การเชื่อมต่อเดียว

1=การเชื่อมต่อหลายจุด

ขั้นตอนที่ 15: การตั้งค่าการเชื่อมต่อ TCP

การตั้งค่าการเชื่อมต่อ TCP
การตั้งค่าการเชื่อมต่อ TCP
การตั้งค่าการเชื่อมต่อ TCP
การตั้งค่าการเชื่อมต่อ TCP

โปรดทราบว่าเริ่มต้นจากคำสั่งแรก ทันทีที่คุณส่งคำสั่งแรก การเชื่อมต่อจะถูกสร้างขึ้นในช่วงเวลาจำกัดเท่านั้น ดังนั้นให้ส่งคำสั่งโดยเร็วที่สุด

ส่ง AT+CIPSTART=0, "TCP", "api.thingspeak.com", 80 ผ่านมอนิเตอร์แบบอนุกรม

วิธีที่ ESP ตอบสนอง: ลิงก์จะถูกส่งคืนหากมีการสร้างการเชื่อมต่อ

คำสั่งนี้ใช้เพื่อสร้างการเชื่อมต่อ TCP

ไวยากรณ์คือ AT+CIPSTART=link ID, type, remote IP, remote port

ที่ไหน

link ID=ID ของการเชื่อมต่อเครือข่าย (0~4) ใช้สำหรับการเชื่อมต่อแบบหลายจุด

type=string, "TCP" หรือ "UDP"

IP ระยะไกล = สตริง ที่อยู่ IP ระยะไกล (ที่อยู่ของเว็บไซต์)

รีโมตพอร์ต=สตริง หมายเลขพอร์ตระยะไกล (โดยปกติเลือกเป็น 80)

ส่ง AT+CIPSEND=0, 110 ผ่านจอภาพอนุกรม

วิธีที่ ESP ตอบสนอง:> (มากกว่า) จะถูกส่งคืนหากคำสั่งสำเร็จ

คำสั่งนี้ใช้เพื่อส่งข้อมูล

ไวยากรณ์คือ AT+CIPSEND=link ID, length

ที่ไหน

link ID=ID ของการเชื่อมต่อ (0~4) สำหรับการเชื่อมต่อแบบหลายจุด เนื่องจาก CIPMUX ถูกตั้งค่าเป็น 1 จึงเป็น 1

length=data length, MAX 2048 ไบต์ โดยทั่วไปเลือกจำนวนมากสำหรับความยาว

ขั้นตอนที่ 16: ส่งทวีต

กำลังส่งทวีต
กำลังส่งทวีต

ตอนนี้สำหรับการส่งทวีต

ส่ง GET /apps/thingtweet/1/statuses/update?api_key=yourAPI&status=yourtweet ผ่านมอนิเตอร์แบบอนุกรม

แทนที่ yourAPI ด้วยคีย์ API และทวีตของคุณเป็นทวีตที่คุณต้องการ

ทันทีที่คุณส่งคำสั่งข้างต้น ให้เริ่มกด Enter(return) ในช่วงเวลาประมาณ 1 วินาที หลังจากนั้นสักครู่ SEND OK, +IPD, 0, 1:1 และ OK จะถูกส่งคืน ซึ่งหมายความว่าทวีตนั้นได้รับการโพสต์แล้ว

เปิดทวิตเตอร์ของคุณและตรวจสอบว่าทวีตนั้นถูกโพสต์หรือไม่

โปรดทราบว่าไม่สามารถส่งทวีตเดียวกันซ้ำได้

สตริงด้านบนที่ส่ง (GET….) เป็นคำขอ HTTP GET

คำขอ GET ใช้เพื่อดึงข้อมูลจากเซิร์ฟเวอร์ที่กำหนด (api.thingspeak.com)

ขั้นตอนที่ 17: จะทำอย่างไรหลังจากนี้

(ดูวิดีโออย่างน้อย 360p)

ไปที่ที่เก็บนี้เพื่อดาวน์โหลดโค้ดและแผนผัง คลิกที่ปุ่ม "โคลนหรือดาวน์โหลด" (สีเขียวทางด้านขวา) และเลือก "ดาวน์โหลด ZIP" เพื่อดาวน์โหลดไฟล์ zip ตอนนี้แยกเนื้อหาบนคอมพิวเตอร์ของคุณเพื่อรับ โค้ดและแผนผัง (ในโฟลเดอร์ schematics) ฉันยังอัปโหลด cheatsheet ซึ่งสรุปคำสั่ง AT ทั้งหมดไปยังที่เก็บนี้

มีแหล่งข้อมูลมากมายบนอินเทอร์เน็ตเกี่ยวกับ ESP8266 ฉันได้กล่าวถึงบางส่วนที่นี่:

  • วิดีโอของ เควิน ดาร์ราห์
  • วิดีโอ ALLaboutEE
  • esp8266.com

คุณอาจทดลองเพิ่มเติมด้วยคำสั่ง AT มี API มากมายที่พร้อมใช้งานบนอินเทอร์เน็ตที่สามารถทำสิ่งต่างๆ ได้ทุกประเภท เช่น ดูสภาพอากาศ ราคาหุ้น เป็นต้น

เอกสารคำสั่ง AT แบบเต็ม

นอกจากนี้ ฉันกำลังทำงานกับโปรแกรมที่ทวีตค่าแอนะล็อกของเซ็นเซอร์โดยอัตโนมัติ และฉันจะโพสต์เมื่อทำงานอย่างถูกต้อง

หากคุณชอบการลงคะแนนเสียงที่สอนได้ของฉันในการแข่งขัน Arduino ทุกสิ่ง