
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12


! ! ! สังเกต ! ! !
เนื่องจากมีการอัปเกรดเสาสัญญาณโทรศัพท์มือถือในพื้นที่ของฉัน ฉันจึงไม่สามารถใช้โมดูล GSM นี้ได้อีกต่อไป หอคอยที่ใหม่กว่าไม่รองรับอุปกรณ์ 2G อีกต่อไป ดังนั้นฉันจึงไม่สามารถให้การสนับสนุนโครงการนี้ได้อีกต่อไป
เมื่อเร็ว ๆ นี้ ฉันได้รับโมดูล Quad Band GSM/GPRS ที่มีราคาค่อนข้างถูกให้เล่นได้ เป็นโมดูล SIM800L และสื่อสารกับไมโครผ่านพอร์ตอนุกรม มาพร้อมเสาอากาศแบบติดตั้งบนแผง
ฉันตัดสินใจสร้างระบบควบคุม SMS แบบง่ายซึ่งใช้คำสั่งบริการข้อความสั้น (SMS) เพื่อควบคุมอุปกรณ์และระบุการเตือน
ขั้นตอนที่ 1: คำสั่ง SMS

เช่นเดียวกับระบบการสื่อสารใดๆ คำสั่งเฉพาะจะต้องถูกส่งไปยังอุปกรณ์ระยะไกลเพื่อบอกว่าต้องทำอย่างไร ในทำนองเดียวกัน อุปกรณ์ระยะไกลจำเป็นต้องตอบกลับหรือตอบสนองต่อคำสั่งเหล่านี้ โปรเจ็กต์นี้ประกอบด้วยสองส่วนคือ SMS Controller และโทรศัพท์มือถือมาตรฐาน
แนวคิดคือการสร้าง SMS Controller อย่างง่ายพร้อมเอาต์พุตดิจิทัลสี่ช่อง ขึ้นอยู่กับ SMS ที่ได้รับ เครื่องจะต้องสามารถควบคุมเอาต์พุตแต่ละรายการได้
ฉันยังตัดสินใจที่จะรวมอินพุตดิจิตอลสี่ตัว สามารถใช้เพื่อระบุสัญญาณเตือนหรือข้อมูลอื่นๆ
ก่อนเริ่มบิลด์ ฉันตัดสินใจสร้างคำสั่งเฉพาะสำหรับฟังก์ชันเฉพาะ 'คำสั่ง' นี้จะถูกส่งโดยใช้ SMS จากโทรศัพท์มือถือ
SMS Controller รับคำสั่ง:
o1:1 - เปิดเอาต์พุต 1 เปิด
o1:0 - เปิดเอาต์พุต 1 ปิด
o1:p - เอาต์พุตพัลส์ 1 เปิด แล้วปิด
o2:1 - เปิดเอาต์พุต 2 เปิด
o2:0 - เปิดเอาต์พุต 2 ปิด
o2:p - เอาต์พุตพัลส์ 2 เปิด แล้วปิด
o3:1 - เปิดเอาต์พุต 3 เปิด
o3:0 - เปิดเอาต์พุต 3 ปิด
o3:p - เอาต์พุตพัลส์ 3 เปิด แล้วปิด
o4:1 - เปิดเอาต์พุต 4 เปิด
o4:0 - เปิดเอาต์พุต 4 ปิด
o4:p - เอาต์พุตพัลส์ 4 เปิด แล้วปิด
???? - ขอสถานะอินพุตและเอาต์พุต
#### - รีเซ็ตระบบ
สำหรับความคิดเห็น ตัวควบคุม SMS ควรตอบสนองต่อคำสั่งที่ได้รับ และตอบกลับด้วย SMS ฉันตัดสินใจว่า SMS ตอบกลับนี้ควรมีสถานะของพิน I/O ทั้งหมด
คำสั่งตอบกลับตัวควบคุม SMS:
i1:x i2:x i3:x i4:x o1:x o2:x o3:x o4:x
โดยที่ x คือสถานะ I/O, 1 สำหรับเปิด, 0 สำหรับปิด
ขั้นตอนที่ 2: สร้างตัวควบคุม SMS



อุปกรณ์ที่จำเป็น:
Arduino ใดๆ หรือ ATMEGA328p แบบสแตนด์อโลนบนเขียงหั่นขนม
โมดูล SIM800L GSM/GPRS พร้อมซิมการ์ดที่สามารถส่งและรับ SMS ได้
ลดขั้นตอนลงตัวแปลง DC/DC
บันทึก !!
ต้องใช้ตัวแปลง DC/DC เพื่อจ่ายไฟให้กับโมดูล SIM800L โมดูลนี้ทำงานระหว่าง 3.7V ถึง 5V ขึ้นอยู่กับเวอร์ชันที่คุณมี โมดูลนี้ยังต้องการแหล่งจ่ายไฟที่สามารถส่งได้ถึง 2A เมื่อโมดูลส่งข้อมูล ไม่สามารถขับเคลื่อนโดยตรงจาก Arduino Uno !!
วงจรค่อนข้างง่าย ฉันได้ประกอบและทดสอบบนเขียงหั่นขนม
จ่ายไฟให้กับวงจรโดยใช้ตัวแปลง DC/DC โดยตั้งค่าแรงดันเอาต์พุตไว้ที่ 4.5V มีไฟ LED สี่ดวงเพื่อจำลองเอาท์พุตดิจิตอล และสี่ปุ่มสำหรับอินพุทดิจิตอล SIM800L เชื่อมต่อกับพิน Rx/Tx ของ ATMEGA328p
ไฟ LED ดวงที่ 5 ใช้เพื่อระบุเวลาที่ระบบกำลังส่ง SMS ไม่ว่าง
ขั้นตอนที่ 3: การเขียนโปรแกรม ATMEGA328p


ก่อนตั้งโปรแกรม ให้เปิดไฟล์ INO และแก้ไขหมายเลขโทรศัพท์ แทนที่ xxxxxxxxxx ด้วยหมายเลขโทรศัพท์มือถือของคุณในบรรทัดที่ 46 คอมไพล์ใหม่และอัปโหลดไฟล์
นอกจากนี้ อ่านคำแนะนำเกี่ยวกับวิธีกำหนดค่าพอร์ตอนุกรมของซอฟต์แวร์ในไฟล์ INO
//=============================================================================//
// ! ! ! บันทึก ! ! !
// ================
//
// บัฟเฟอร์ในไลบรารีซอฟต์แวร์ซีเรียลจะถูกเปลี่ยนเป็น 200
//
// ในการใช้ Software Serial ผู้ใช้ควรเปลี่ยน Software Serial BUFFER เป็น 200
// สิ่งนี้จะต้องแก้ไขในไฟล์ต่อไปนี้:
//
// C:/Program Files/Arduino x.x.x/Hardware/Arduino/AVR/Libraries/SoftwareSerial/src/SoftWareSerial.h
//
// เปลี่ยนบัฟเฟอร์ดังนี้:
//
// #ifndef _SS_MAX_RX_BUFF
// #define _SS_MAX_RX_BUFF 200
// ขนาดบัฟเฟอร์ RX
// #endif
//
//=============================================================================
อ้างถึงคำแนะนำนี้ในการเขียนโปรแกรม ATMEGA328p บนเขียงหั่นขนมโดยใช้ Arduino UNO
www.instructables.com/id/Arduino-UNO-as-AtM…
ขั้นตอนที่ 4: การใช้ตัวควบคุม SMS

การใช้ตัวควบคุม SMS
SMS Controller จะส่ง SMS ไปยังโทรศัพท์ของคุณโดยอัตโนมัติหากมีการเรียกใช้อินพุตใด ๆ จากสี่ตัว รายละเอียดของทริกเกอร์จะอยู่ในข้อความ SMS
ข้อความ SMS และคำสั่งสามารถแก้ไขได้ตามความต้องการของคุณในไฟล์ INO
การทดสอบเอาต์พุตตัวควบคุม SMS
จากโทรศัพท์มือถือของคุณ ให้ส่งคำสั่งต่อไปนี้ไปยังหมายเลขซิมการ์ด SIM800L ของคุณ:
o1:1 สิ่งนี้จะเปิดเอาต์พุต 1
บนโทรศัพท์ของคุณ คุณจะได้รับ SMS ต่อไปนี้:
i1:0 i2:0 i3:0 i4:0 o1:1 o2:0 03:0 o4:0
01:0 สิ่งนี้จะปิดเอาต์พุต 1
บนโทรศัพท์ของคุณ คุณจะได้รับ SMS ต่อไปนี้:
i1:0 i2:0 i3:0 i4:0 o1:0 o2:0 03:0 o4:0
01:p สิ่งนี้จะเปิดเอาต์พุต 1 เป็นเวลา 1 วินาที จากนั้นปิดเอาต์พุต 1 อีกครั้ง (กะพริบ)
บนโทรศัพท์ของคุณ คุณจะได้รับ SMS ต่อไปนี้:
i1:0 i2:0 i3:0 i4:0 o1:0 o2:0 03:0 o4:0
การทดสอบอินพุตตัวควบคุม SMS
บนตัวควบคุม SMS ให้กดปุ่ม 1 สั้นๆ
บนโทรศัพท์ของคุณ คุณจะได้รับ SMS ต่อไปนี้โดยอัตโนมัติ:
i1:1 i2:0 i3:0 i4:0 o1:0 o2:0 03:0 o4:0
บนตัวควบคุม SMS ให้กดปุ่ม 2 สั้นๆ
บนโทรศัพท์ของคุณ คุณจะได้รับ SMS ต่อไปนี้โดยอัตโนมัติ:
i1:1 i2:1 i3:0 i4:0 o1:0 o2:0 03:0 o4:0
บนตัวควบคุม SMS ให้กดปุ่ม 3 สั้นๆ
บนโทรศัพท์ของคุณ คุณจะได้รับ SMS ต่อไปนี้โดยอัตโนมัติ:
i1:1 i2:1i3:1 i4:0 o1:0 o2:0 03:0 o4:0
ดังที่เห็นได้ใน SMS ที่ได้รับ ผลลัพธ์จะเปลี่ยนไปตามคำสั่งที่ได้รับ อย่างไรก็ตาม อินพุตจะไม่เปลี่ยนกลับจาก 1 เป็น 0 หลังจากกดปุ่ม เนื่องจากฉันต้องการเห็นการเปลี่ยนแปลงของอินพุต ฉันจึงตัดสินใจปิดผนึกสถานะอินพุตจนกว่าจะส่งคำสั่งรีเซ็ตไปยัง SMS Controller
รีเซ็ตนาฬิกาปลุก
หากต้องการรีเซ็ตสถานะอินพุต ให้ส่งคำสั่งต่อไปนี้:
#### จะรีเซ็ตสถานะอินพุต
บนโทรศัพท์ของคุณ คุณจะได้รับ SMS ต่อไปนี้:
i1:0 i2:0 i3:0 i4:0 o1:0 o2:0 03:0 o4:0
อัพเดตสถานะ
คุณยังสามารถขอสถานะได้ตลอดเวลาโดยส่งคำสั่งต่อไปนี้:
???? การดำเนินการนี้จะขออัปเดตสถานะของ I/O
บนโทรศัพท์ของคุณ คุณจะได้รับ SMS ต่อไปนี้:
i1:x i2:x i3:x i4:x o1:x o2:x 03:x o4:x
โดยที่ x หมายถึงสถานะ 1 สำหรับเปิด 0 สำหรับปิด
ขั้นตอนที่ 5: แอปพลิเคชัน Android



ฉันใช้ MIT App Inventor 2 (https://ai2.appinventor.mit.edu/) เพื่อสร้างอินเทอร์เฟซผู้ใช้ที่เรียบง่ายสำหรับโทรศัพท์เคลื่อนที่ Android ของฉัน แอพนี้ให้คุณปรับแต่งคำอธิบายของแต่ละ I/O นอกจากนี้ยังอนุญาตให้ป้อนหมายเลขโทรศัพท์
ปุ่มสี่ปุ่มใช้เพื่อควบคุมเอาต์พุต ในขณะที่กล่องกาเครื่องหมายระบุสถานะอินพุต
หากต้องการแก้ไขแอป ให้สร้างบัญชี MIT App Inventor 2 และนำเข้าไฟล์ AIA
ในการติดตั้งแอปบนโทรศัพท์ของคุณ ให้คัดลอกไฟล์ APK ไปยังโทรศัพท์ของคุณ และติดตั้ง คุณจะต้องเปิดใช้งานการติดตั้งแอพจาก "Unknown Sources" ภายใต้การตั้งค่าความปลอดภัยของโทรศัพท์ของคุณ
แนะนำ:
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)

การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
RuuviTag และ PiZero W และ Blinkt! เทอร์โมมิเตอร์แบบ Bluetooth Beacon: 3 ขั้นตอน (พร้อมรูปภาพ)

RuuviTag และ PiZero W และ Blinkt! เครื่องวัดอุณหภูมิที่ใช้ Bluetooth Beacon: คำแนะนำนี้อธิบายวิธีการอ่านข้อมูลอุณหภูมิและความชื้นจาก RuuviTag โดยใช้ Bluetooth กับ Raspberry Pi Zero W และเพื่อแสดงค่าเป็นเลขฐานสองบน Pimoroni กะพริบตา! pHAT.หรือเรียกสั้นๆ ว่า จะสร้างสถานะอย่างไร
ระบบอัตโนมัติภายในบ้านที่ใช้ IOT: 4 ขั้นตอน

ระบบอัตโนมัติภายในบ้านที่ใช้ IOT: มันทำงานอย่างไร: ฉันสร้างแผงวงจรแบบกำหนดเองเพื่อควบคุมรีเลย์ 4 ตัวโดย esp8266 NodeMcu วงจรนี้ทำงานด้วยไฟ DC 12 โวลต์ 1 แอมป์ เมื่อเปิดเครื่อง nodemcu เชื่อมต่อกับเราเตอร์ของคุณผ่าน WiFi & ยังเชื่อมต่อกับเซิร์ฟเวอร์ Blynk สมาร์ทโฟนของคุณส่งเครื่องหมายจุลภาค
การบันทึกข้อมูลแบบเรียลไทม์ MPU-6050/A0 ด้วย Arduino และ Android: 7 ขั้นตอน (พร้อมรูปภาพ)

เรียลไทม์ MPU-6050/A0 การบันทึกข้อมูลด้วย Arduino และ Android: ฉันสนใจที่จะใช้ Arduino สำหรับการเรียนรู้ของเครื่อง ในขั้นแรก ฉันต้องการสร้างการแสดงข้อมูลแบบเรียลไทม์ (หรือใกล้เคียงกัน) และตัวบันทึกด้วยอุปกรณ์ Android ฉันต้องการเก็บข้อมูลมาตรความเร่งจาก MPU-6050 ดังนั้นฉันจึงออกแบบ
วิธีการสร้าง Quadcoptor (NTM 28-30S 800kV 300W และ Arducopter APM 2.6 & 6H GPS 3DR Radio และ FlySky TH9X): 25 ขั้นตอน (พร้อมรูปภาพ)

วิธีการสร้าง Quadcoptor (NTM 28-30S 800kV 300W และ Arducopter APM 2.6 & 6H GPS 3DR Radio และ FlySky TH9X): นี่คือบทแนะนำเกี่ยวกับวิธีการสร้าง Quadcopter โดยใช้มอเตอร์ NTM 28-30S 800kV 300W และ Arducopter APM 2.6 & 6H GPS & วิทยุ 3DR ฉันพยายามอธิบายแต่ละขั้นตอนด้วยรูปภาพจำนวนหนึ่ง หากคุณมีคำถามหรือความคิดเห็นใด ๆ โปรดตอบกลับ