คอมพิวเตอร์ Windows อินเทอร์เน็ต

เชื่อมต่อโมดูล GSM SIM800L กับ Arduino โมดูล GSM GPRS SIM800L MicroSIM พร้อมเสาอากาศ Sim800l เชื่อมต่อกับ arduino

ESP8266 กลายเป็นข่าวจริงสำหรับทุกคนที่เกี่ยวข้องกับการสร้างอุปกรณ์บน Arduino ในปีที่แล้ว ไมโครคอนโทรลเลอร์ราคาถูกที่มีความสามารถเหนือกว่าคู่แข่งที่มีราคาแพงและในขณะเดียวกันก็เข้ากันได้กับ AT +

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

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

  1. บ้านอัจฉริยะ. เทคโนโลยีสมาร์ทโฮมแทบทุกชนิดสามารถปรับให้เข้ากับรูปแบบเฉพาะเมื่อเข้าใกล้วัตถุ แต่ทำไมต้องติดตั้งเซ็นเซอร์ตรวจจับความเคลื่อนไหว ถ้าคุณสามารถติด sim800 เข้ากับบอร์ด wi-fi ได้ เย็บไมครอนด้วยแบตเตอรี่ลงในเสื้อผ้าบางชิ้น (โชคดีที่ไม่ต้องใช้พลังงานมาก) และเปิดไฟหรือเปิดโดยอัตโนมัติ ประตูเมื่อผู้ใช้เข้าใกล้
  2. อุปกรณ์ติดตามต่างๆ เราไม่ได้พูดถึงข้อบกพร่องที่ผิดกฎหมายและอุปกรณ์อื่น ๆ ที่ละเมิดสิทธิ์ในความเป็นส่วนตัวของคุณ อย่างไรก็ตาม mk สามารถทำงานแยกจาก Arduino และหากคุณต่อ sim800 เข้ากับมัน ขนาดโดยรวมของอุปกรณ์จะไม่เกินกล่องไม้ขีด เพียงห่อทุกอย่างในกล่องโลหะแล้วติดเข้ากับกุญแจเป็นพวงกุญแจ จากนี้ไป การค้นหาสมาร์ทโฟน กุญแจ และแม้แต่รถของคุณในที่จอดรถจะง่ายขึ้นมาก
  3. วิทยาการหุ่นยนต์และสาขาที่เกี่ยวข้อง ที่นี่คุณสามารถพูดคุยเป็นเวลานานเกี่ยวกับการพัฒนาปัญญาเสมือนที่ทันสมัยและโครงข่ายประสาทเทียม แต่บ่อยครั้งที่มีเซ็นเซอร์ไม่เพียงพอที่จะสร้างแผนที่ของพื้นที่และนำทางในนั้น และถ้าคุณทำอย่างนั้น โมดูล gps จะมีประโยชน์ มีประโยชน์อย่างยิ่งเมื่อจับคู่กับโดรน

เมื่อคุณตัดสินใจเกี่ยวกับเป้าหมายสูงสุดของโครงการ คุณควรเข้าใจความแตกต่างของคำถาม การเชื่อมต่ออุปกรณ์กับไมโครคอนโทรลเลอร์ข้างต้นจะเหมือนกับบอร์ด Arduino มาตรฐาน ความแตกต่างเพียงอย่างเดียวคือจำนวนพินที่มีอยู่ เครื่องติดตาม GPS ต้องการ 3.7 ถึง 4.2 โวลต์เพื่อใช้งาน ตรงกันข้ามกับ 5 โวลต์มาตรฐานที่ออกโดยไมโครคอนโทรลเลอร์ สิ่งนี้ควรนำมาพิจารณาเมื่อสร้างแผงวงจรและต้องเลือกแหล่งจ่ายไฟเสริมตามลำดับ หรือติดตั้งหม้อแปลงและตัวต้านทานขึ้นอยู่กับสิ่งอื่นที่คุณจะเชื่อมต่อกับระบบขั้นสุดท้าย

โดยการลงทะเบียนในเครือข่าย โมดูลจะต้องการประมาณ 2A แต่นี่เป็นปริมาณการใช้สูงสุด และในอนาคต กระแสที่ต้องการจะลดลงเป็น 1-1.2 A

ทันทีที่คุณเชื่อมต่อตัวติดตามเข้ากับระบบ คุณจะต้องเริ่มต้นและส่งคำสั่งแรก AT และ AT + เหมาะสมที่สุด หลังจากการดำเนินการเหล่านี้ ในที่สุดโมดูลจะเริ่มส่งข้อมูลและตอบสนองต่อคำขอของคุณ ดังนั้นอย่ากังวลหากคุณเชื่อมต่อ ไดโอดจะกะพริบ แต่ไม่มีปฏิกิริยากับสคริปต์ คุณเพียงแค่ต้องเปิดใช้งาน Sim800i ในครั้งแรกที่คุณใช้เพื่อลงทะเบียนออนไลน์

นอกจากนี้ คุณไม่ควรพิจารณา Sim800i เป็นทางเลือกแทน ESP8266 ซึ่งเป็นสิ่งที่ผู้ใช้หลายคนทำบาปในฟอรัม หากคุณพบข้อความดังกล่าว คุณสามารถพูดได้อย่างปลอดภัยว่าผู้เขียนไม่เคยทำงานกับ Arduino มาก่อนเลยในชีวิต ก่อนอื่น ไม่ควรเปรียบเทียบบอร์ดเสริมกับไมโครคอนโทรลเลอร์ ไม่ต้องพูดถึงความจริงที่ว่าอุปกรณ์ตัวใดตัวหนึ่งได้รับการออกแบบเพื่อประสานงานส่งและรับคำขอ อินเตอร์เน็ตไร้สายและที่สองคือโมดูล GSM GPRS ดังนั้นพวกเขาคือ นอกจากนี้ที่ดีซึ่งกันและกัน แต่ไม่ใช่ทางเลือกอื่น

ไดอะแกรมการเชื่อมต่อ sim800l ถึง esp8266

พินเอาต์มีมากกว่ามาตรฐาน เชื่อมต่อพินที่มีกำลังไฟฟ้ากับแหล่งกำเนิดที่สามารถจ่ายแรงดันไฟฟ้าในช่วง 3.7-4.2 โวลต์หรือกับหม้อแปลงไฟฟ้า TX ไปที่พิน RX และในทางกลับกัน ทันทีที่คุณทำการบัดกรีและตัดสินใจทดสอบการทำงานของโมดูลโดยเชื่อมต่อแหล่งจ่ายไฟ ไดโอดจะส่งสัญญาณการเชื่อมต่อที่ถูกต้อง จากนั้นจะยังคงเปิดใช้งานโมดูลตามวิธีการที่อธิบายไว้ข้างต้นและคุณจะสามารถใช้คำสั่ง AT เพื่อควบคุมได้ หากคุณต้องการโหลดไลบรารีเสริมหรือสื่อที่มีน้ำหนักมาก คุณควรทำความคุ้นเคยกับการเชื่อมต่อการ์ดหน่วยความจำกับระบบ Arduino

ขั้นแรก มาทดสอบความเร็วพอร์ตและข้อมูลโมดูลโดยใช้ "AT + IPR?" และ "AT + CPAS" ตามลำดับ หากทุกอย่างเป็นไปตามลำดับและข้อมูลแสดงโดยไม่มีข้อผิดพลาด คุณสามารถตรวจสอบและทดสอบระดับสัญญาณต่อไปได้ เช่นเดียวกับตัวดำเนินการที่โมดูลสามารถมองเห็นได้

สิ่งสำคัญที่สุดคือ Sim800i ช่วยให้คุณสามารถโทรไปยังหมายเลขที่ระบุและรับสายได้ ยิ่งกว่านั้น โดยใช้ไลบรารีพื้นฐาน

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

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

ตัวอย่างการใช้งานการเชื่อมต่อโมดูล gsm sim800l กับ mk esp8266

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

หากไม่มีการลดความถี่ของสัญญาณไฟให้ใช้คำสั่ง AT เพื่อให้แน่ใจว่าเครือข่าย sim800I ยอมรับคุณหรือไม่ ผู้ให้บริการมือถือและถ้าไม่มีอะไรผิดพลาด ตรวจสอบพินที่ถูกต้องและวิธีติดตั้งซิมการ์ดพร้อมเสาอากาศซึ่งอาจมีข้อผิดพลาด

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

ง่ายต่อการเชื่อมต่อโมดูล GSM / GPRS โดยใช้ SIM800L ด้วยตัวเอง ปฏิบัติตามหลายขั้นตอนและใช้องค์ประกอบขนาดกะทัดรัดที่ทันสมัยเพื่อจุดประสงค์ของคุณเอง

SimCom Corporation นำเสนอโมดูล GSM / GPRS ขนาดกะทัดรัดแก่ผู้ใช้โดยใช้ SIM800L ขั้วต่อในตัวช่วยให้คุณปรับปรุงสัญญาณได้ คุณยังสามารถใช้เสาอากาศที่มาพร้อมกับระบบโมดูลาร์นี้ได้

โมดูล GSM / GPRS SIM800L - คำอธิบาย

คำอธิบายโดยละเอียด:

  • โมดูลนี้ใช้พลังงานจากแหล่งภายนอกหรือผ่านระบบแปลง DC-DC
  • ช่วงการจ่ายไฟควรอยู่ระหว่าง 3.7V - 4.2V เป็นที่น่าสังเกตว่า 5V จาก Arduino เป็นอันตรายต่อการทำงานของโมดูลเนื่องจากจะนำไปสู่การพังและ 3.3V จะช่วยตอบสนองต่อคำสั่งของผู้ใช้ แต่จะไม่มีการเชื่อมต่อเครือข่าย
  • การควบคุมผ่าน UART แต่ตัวแบ่งแรงดันไฟฟ้าใช้สำหรับ Rx และ Tx เพื่อไม่ให้มีการทำโหลดบนบอร์ด
  • การใช้พลังงานต่ำของโมดูล SIM800L ช่วยให้สามารถใช้กับอุปกรณ์ที่มีพลังงานแบตเตอรี่ได้สำเร็จ
  • เมื่อใช้พลังงาน โมดูลจะเริ่มค้นหาเครือข่ายทันที เมื่อพบแล้ว LED จะเริ่มส่งสัญญาณ กะพริบช้าๆ การไม่มีเครือข่ายจะแสดงด้วย LED เดียวกัน แต่ด้วยความช่วยเหลือของไฟกะพริบอย่างรวดเร็ว
  • โมดูลรองรับ micro ซิมการ์ด 1.8V และ 3V

โมดูล GSM / GPRS SIM800L - การเชื่อมต่อ

ในการเชื่อมต่อ นอกจากตัวโมดูลเอง คอนเวอร์เตอร์ และคอนโทรลเลอร์ Arduino UNO R3 คุณจะต้อง สาย USB,แบตเตอรี่ 12V และสายต่อ ทำตามขั้นตอนเหล่านี้:

  1. ขั้นแรก จ่ายพลังงานให้กับระบบจากแบตเตอรี่ผ่าน DC-DC: จากแรงดัน "ลบ" ควรไปที่ Arduino ถึง "GND" จาก "GND" ไปยังองค์ประกอบตัวแปลงเป็น "ลบ" ที่อินพุต
  2. ต้องทำการเชื่อมต่อหลังจากที่คุณกำหนดค่าโมดูลแล้ว โดยตั้งค่าแรงดันเอาต์พุตให้อยู่ในช่วงที่ยอมรับได้ (3.7V - 4.2V)
  3. เชื่อมต่อผู้ติดต่อทั้งหมดที่ออกจากตัวแปลงไปยัง SIM800L โดยสังเกตขั้ว
  4. เชื่อมต่อหน้าสัมผัส TX และ RX บนโมดูลด้วยหน้าสัมผัสดิจิทัลที่ 2 และ 3 บน Arduino ตามลำดับ

สำคัญ: หากคุณต้องการเชื่อมต่อโมดูลสองหรือสามโมดูลกับ Arduino ให้ใช้รหัสอื่นเขียนไว้ในแบบร่างผ่าน SoftwareSerial

วิดีโอต่อไปนี้แสดงวิธีเชื่อมต่อโมดูล SIM800L กับ Arduino อย่างชัดเจน

วิดีโอ: การเชื่อมต่อโมดูล GSM SIM800L กับ Arduino


SIM800L V2.0 GSM / GPRS เป็นโมดูล GSM / GPRS แบบควอดแบนด์ที่เข้ากันได้กับ Arduino โมดูลนี้ใช้เพื่อใช้งานฟังก์ชัน GSM (การโทรและ SMS) และ GPRS ข้อดีของโมดูลนี้คืออินเทอร์เฟซ TTL ซึ่งมีแรงดันไฟฟ้า 5V ซึ่งช่วยให้สามารถเชื่อมต่อโดยตรงกับ Arduino หรือระบบอื่นๆ ที่มีแรงดันไฟฟ้า 5V โมดูล GSM / GPRS ส่วนใหญ่ในตลาดต้องการตัวควบคุมหรือการเชื่อมต่อการแปลงระดับ ในขณะที่ใน SIM800L V.2 GSM / GPRS ไม่ต้องการวงจรการแปลงระดับอินเทอร์เฟซเพิ่มเติม

นี่คือตัวอย่างโครงการที่ใช้ SIM800L V.2 GSM / GPRS จุดประสงค์ของโครงการคือการควบคุมสวิตช์โดยใช้ตัวควบคุม SMS คุณสามารถเปิดและปิดรายการส่วนใหญ่ได้อย่างง่ายดาย เครื่องใช้ในครัวเรือนในบ้าน เช่น ลามะ พัดลม เป็นต้น

ลักษณะของโมดูล SIM800L V.2 GSM / GPRS

ด้านล่างนี้คือทั้งหมด ข้อมูลจำเพาะโมดูล SIM800L V.2 GSM / GPRS:
  • อินเทอร์เฟซอนุกรม TTL เข้ากันได้กับไมโครคอนโทรลเลอร์ที่รองรับ 3.3V และ 5V Arduino
  • โมดูล SIM800L มีอินเทอร์เฟซแบบอนุกรม TTL
  • ปลั๊กเสาอากาศ
  • รองรับเครือข่าย: สี่ย่านความถี่ 850/900/1800/1900 MHz สามารถโทรออก, SMS และส่งข้อมูลได้โดยใช้แบตเตอรี่ลดลงอย่างมาก
  • อินเทอร์เฟซ VDD TTL UART เพื่อให้คุณสามารถเชื่อมต่อ MCU ได้โดยตรงเช่น 51MCU, ARM หรือ MSP430 ปลั๊ก VDD ใช้เพื่อให้ตรงกับแรงดันไฟฟ้า TTL
  • รุ่น: SIMCOM SIM800L
  • แรงดันใช้งาน: 3.7V ถึง 5V;
  • ขนาด: 40mm x 28mm x 3mm
  • GPRS มัลติสล็อตคลาส 12/10
  • คลาสบริการแบทช์ GPRS B
  • สอดคล้องกับ GSM เฟส 2/2 +
  • คลาส 4 (2 วัตต์ @ 850/900 MHz)
  • ชั้น 1 (1Wat @ 1800 / 1900MHz)

วัสดุที่จำเป็น

มาดูวิธีเชื่อมต่อ Adruino กับโมดูล SIM800L GSM กัน มี GSM shields สำหรับ Arduino โดยเฉพาะ แต่ราคาค่อนข้างแพง ดังนั้นฉันจึงตัดสินใจซื้อตัวเลือกงบประมาณ บทความนี้อาจมีประโยชน์สำหรับการเชื่อมต่อโมดูล SIM900, NEOWAY M590 และบางส่วน โทรศัพท์มือถือ... ความแตกต่างที่ไม่สะดวกคือโมดูลนี้ต้องใช้แหล่งจ่ายไฟ 3.7V ซึ่งไม่ได้มาตรฐานสำหรับ Arduino ดังนั้นจึงต้องได้รับพลังงานแยกจากกันผ่านตัวแปลงแรงดันสเต็ปดาวน์

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

ในการเชื่อมต่อ ฉันใช้ส่วนประกอบต่อไปนี้:

  1. คอนโทรลเลอร์ Arduino UNO R3 + สาย USB
  2. โมดูล GSM SIM800L (ขับเคลื่อนจาก 3.7V ถึง 4.2V)
  3. ตัวแปลงสเต็ปดาวน์ DC-DC
  4. แบตเตอรี่ 12V (หรือแหล่งจ่ายไฟใดก็ได้ตั้งแต่ 6V ถึง 20V)
  5. สายต่อ

เราเชื่อมต่อ Arduino กับคอมพิวเตอร์ผ่านสาย USB

เราจ่ายไฟให้กับโมดูล GSM จากแบตเตอรี่ 12V ผ่านตัวแปลง:

  • จาก 12V "ลบ" ไปที่ arduino เป็น "GND" จาก "GND" เป็นตัวแปลงแรงดันไฟฟ้าเป็น "ลบขาเข้า"
  • จาก 12V "บวก" ไปที่ตัวแปลงแรงดันไฟฟ้าใน "อินพุตบวก"

คำถามเกิดขึ้น: เป็นไปได้หรือไม่ที่จะจ่ายไฟจาก Arduino เองจาก 5V? ฉันจะไม่เสี่ยงโดยตรง แต่คุณสามารถเลือกไดโอดหรือตัวควบคุมแรงดันไฟฟ้าได้

ก่อนเชื่อมต่อกับตัวแปลงแรงดันไฟฟ้า คุณต้องกำหนดค่าโดยตั้งค่าแรงดันเอาต์พุตให้อยู่ในช่วง 3.7V - 4.2V เราเชื่อมต่อหน้าสัมผัสเอาต์พุตจากตัวแปลงแรงดันไฟฟ้ากับโมดูล GSM โดยสังเกตขั้ว

เราเชื่อมต่อผู้ติดต่อ TX และ RX บนโมดูล GSM กับผู้ติดต่อดิจิทัล 2 และ 3 บน Arduino หากคุณต้องการเชื่อมต่อโมดูล GSM หลายโมดูลกับ Arduino ให้ใช้พินอื่นๆ และเขียนแบบร่างผ่าน SoftwareSerial

ร่าง

#รวม<ซอฟต์แวร์Serial.h> ซอฟต์แวร์Serial mySerial (2, 3); // RX, TX การตั้งค่าโมฆะ () ( ซีเรียล.begin (19200); // ความเร็วพอร์ตสำหรับการสื่อสารระหว่าง Arduino และคอมพิวเตอร์ ซีเรียล.println ("ราตรีสวัสดิ์พระจันทร์!"); mySerial.begin (19200); // ความเร็วพอร์ตสำหรับการสื่อสารระหว่างโมดูล Arduino และ GSM mySerial.println ("AT"); ) วงเป็นโมฆะ () (ถ้า (mySerial.available ()) ซีเรียล.write (mySerial.read ()); ถ้า ( ซีเรียล.available ()) mySerial.write ( ซีเรียล.อ่าน ()); )

ขั้นตอนการส่ง SMS

SMS เป็นโมฆะ (ข้อความสตริง โทรศัพท์สตริง) ( ซีเรียล... println ("เริ่มส่ง SMS แล้ว"); มายซีเรียล println ("AT + CMGS = \" "+ โทรศัพท์ +" \""); ล่าช้า (1,000); มายซีเรียล พิมพ์ (ข้อความ); ล่าช้า (300); มายซีเรียล พิมพ์ ((ถ่าน) 26); ล่าช้า (300); ซีเรียล... println ("ส่ง SMS เสร็จสิ้น"); ล่าช้า (3000); )

เพิ่มโพรซีเดอร์ที่ส่วนท้ายของสเก็ตช์แล้วเรียกจากลูปหลักดังนี้: sms (สตริง ("ข้อความ SMS เป็นภาษาอังกฤษ"), สตริง ("+ 791212345678"));

การตรวจสอบ

จากนั้นเราเปิดเครื่องผ่านพอร์ตมอนิเตอร์ ตั้งค่าความเร็วเป็น 19200 และเลือกตัวเลือก "บรรทัดใหม่"

ป้อนคำสั่ง "ATI" แล้วกด ENTER ข้อมูลจากรุ่นโมดูลควรปรากฏขึ้น

ฉันพยายามส่ง SMS ไปยังโมดูลผ่าน บริการฟรีจาก Tele2 เส้นที่เข้าใจยากมา ฉันพยายามเปลี่ยนการเข้ารหัสในโมดูล ปัญหายังไม่ได้รับการแก้ไข

วีดีโอ