การควบคุม Arduino ผ่านอินเทอร์เน็ต GSM การส่ง SMS ผ่าน Arduino และโมดูล GSM NEOWAY M590

ชิลด์ GPRS/GSM SIM900 พร้อมเสาอากาศ
SIM900 GPRS/GSM โล่บอร์ดพัฒนา Quad-Band Kit สำหรับ Arduino Compatible

โมดูลสำหรับการทำงานของ Arduino และอุปกรณ์ไมโครคอนโทรลเลอร์ที่คล้ายกันในเครือข่ายเซลลูลาร์ที่ใช้มาตรฐาน GSM และ GPRS เน้นการใช้งานในระบบอัตโนมัติและระบบควบคุม การแลกเปลี่ยนข้อมูลกับโมดูลอื่นเกิดขึ้นผ่านอินเทอร์เฟซ UART Shield GPRS/GSM SIM900 พร้อมเสาอากาศสามารถเชื่อมต่อโดยตรงกับไมโครคอนโทรลเลอร์ผ่านอินเทอร์เฟซ UART หรือทำงานร่วมกับคอมพิวเตอร์ส่วนบุคคลโดยใช้ตัวแปลงอินเทอร์เฟซพอร์ต PC-UART สิ่งนี้เป็นไปได้ด้วยความเข้ากันได้ของซอฟต์แวร์ในระดับคลาสคำสั่งที่ใช้ในการควบคุมโมเด็ม - คำสั่ง AT
วัตถุได้รับการตรวจสอบและควบคุมผ่านการแลกเปลี่ยนข้อมูลซึ่งอยู่ในขอบเขตของการสื่อสารเคลื่อนที่ ให้บริการการสื่อสารด้วยเสียง การส่ง SMS, MMS และฟังก์ชันและบริการอื่นๆ อีกมากมาย การทำงานของโมดูลจะขึ้นอยู่กับส่วนประกอบ SIM900

บทความภาษารัสเซียจากนิตยสารเกี่ยวกับส่วนประกอบ SIM900 ส่วนประกอบนี้ได้รับการพัฒนาโดย SIMCom Wireless Solutions เว็บไซต์ SIMCom มีเวอร์ชันภาษารัสเซีย บอร์ดโมดูล GSM ที่ด้านส่วนประกอบมีขั้วต่อสำหรับเชื่อมต่อเสาอากาศ หูฟัง และไมโครโฟน ที่ด้านบัดกรีของบอร์ดจะมีที่ใส่แบตเตอรี่ CR1220 ขนาด 3 โวลต์ที่รองรับการทำงานของนาฬิกาโมดูลและภาชนะสำหรับติดตั้งซิมการ์ด
แอปพลิเคชั่นอย่างหนึ่งของอุปกรณ์คือระบบติดตามการเคลื่อนไหวของยานพาหนะร่วมกับ GLONASS หรืออุปกรณ์ GPS การส่งข้อความ SMS ช่วยให้คุณสามารถใช้โมดูลในการสั่งงาน สัญญาณเตือนไร้สาย และระบบรักษาความปลอดภัย จากเหตุการณ์ที่กำลังดำเนินอยู่ สามารถส่ง SMS ต่างๆ ได้: "หยุดฉุกเฉินลิฟต์ 2 ของอาคารหมายเลข 34", "ประตูรถเปิดอยู่", "ชั้นใต้ดินเปิดอยู่", "ปิดแรงดันไฟฟ้า 220 V", "The ประตูหน้ากระท่อมเปิดอยู่”, “เปิดไฟอยู่”, “ อุณหภูมิในเรือนกระจกต่ำกว่าวิกฤต” โมดูลนี้ขาดไม่ได้ในการตรวจสอบและควบคุมวัตถุเคลื่อนที่ที่เคลื่อนที่ในระยะทางไกล หรือกรณีผู้ปฏิบัติงานเคลื่อนที่เป็นระยะทางไกลจากวัตถุที่อยู่นิ่ง

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

ลักษณะเฉพาะ

โภชนาการ
แรงดันไฟฟ้า, วี
ระบุ 5
ช่วง 4.8-5.2
ปัจจุบัน
โหมดปกติ 50-450 mA
ในโหมดสลีป 1.5 mA
ชีพจรสูงสุด 2 A
รองรับซิมการ์ด 1.8 และ 3 V
ย่านความถี่การสื่อสาร 850, 900, 1800, 1900 MHz
รองรับเครือข่าย 2G
กำลังส่งในย่านความถี่ต่างๆ
1 วัตต์ 1800 และ 1900 MHz
2 วัตต์ 850 และ 900 เมกะเฮิรตซ์
สอดคล้องกับมาตรฐาน GSM เฟส 2/2+
โปรโตคอล TCP และ UDP ในตัว
คลาสการถ่ายโอนข้อมูล GPRS หลายสล็อตคลาส 10/8
ตัวแปลงสัญญาณเสียง HR, FR, EFR, AMR, การยกเลิกเสียงสะท้อน
CSD สูงสุด 14.4 กิโลบิต/วินาที
กอง PPP
มิกซ์ (07.10)
โปรโตคอล HTTP และ FTP
สามารถส่งสัญญาณ DTMF และเล่นการบันทึกได้เหมือนกับบนเครื่องตอบรับอัตโนมัติ
รองรับนาฬิกาเรียลไทม์ RTC
อุณหภูมิ, ℃
อากาศระหว่างการทำงาน -30...75
ที่เก็บของ -45...90
ขนาด 86 x 58 x 19 มม

ส่วนประกอบการควบคุม

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

ปุ่มเปิดปิดจะเปิดหรือปิดเครื่องเมื่อกดค้างไว้ 2 วินาที

สิ่งบ่งชี้

สถานะของโมดูลจะแสดงด้วยไฟ LED 3 ดวง:
PWR (สีเขียว) - ไฟแสดงสถานะโมดูล
สถานะ (สีแดง) - ไฟแสดงสถานะส่วนประกอบ SIM900
Net Light (สีเขียว) - การเชื่อมต่อกับเครือข่าย
ข้อความ LED แสงสุทธิ
ปิด - SIM900 ไม่ทำงาน
กะพริบตามช่วงเวลา ระบุเป็นวินาที:
เปิด 0.064 และปิด 0.8 - ตรวจไม่พบเครือข่าย
เปิด 0.064 และปิด 0.3 - ตรวจพบเครือข่าย
เปิด 0.064, ปิด 0.03 - เชื่อมต่อ GPRS แล้ว

รายชื่อผู้ติดต่อ

ส่วนประกอบ SIM900 มีพอร์ต UART โดยสัญญาณจะถูกส่งไปยังพินส่วนประกอบและเชื่อมต่อกับจัมเปอร์ที่กำหนดพินของโมดูล Shield GPRS/GSM SIM900 ที่จะเชื่อมต่อกับพอร์ต UART ของส่วนประกอบ SIM900 ด้วย D0, D1 หรือ D7 D8.
สามารถเชื่อมต่อ UART Shield GPRS/GSM ได้: ไปยังอินเทอร์เฟซฮาร์ดแวร์ของ MK ผ่านหน้าสัมผัส TXD และ RXD ของโมดูล Shield GPRS/GSM, D0, D1 ใช้สำหรับสิ่งนี้ หรือกับซอฟต์แวร์จำลอง Arduino ในกรณีนี้ จะใช้หน้าสัมผัส D7 และ D8 ของโมดูล Shield GPRS/GSM อินเทอร์เฟซ UART เต็มรูปแบบมีเอาต์พุตสัญญาณ 10 สัญญาณไปยังหมุดที่มุมของบอร์ด: R1, DCD, DSR, CTS, RTS, GND, 2V8, TX, RX, DTR
พิน GPIO ดิจิทัลที่ลงนามแล้ว 12 พินอยู่ที่มุมของบอร์ด มีหน้าสัมผัสสัญญาณเอาท์พุต 2 ช่องพร้อมการปรับความกว้างพัลส์ PWM1, PWM2 อินพุต ADC พิน ADC อินเทอร์เฟซตัวนับเวลาในตัวมีผู้ติดต่อ 4 ราย การกำหนดพิน: DISP_CLK, DISP_DATA, DISP_D/C, DISP_CS
Pin D9 ใช้เพื่อควบคุมโดยทางโปรแกรมว่าจะเปิดหรือปิด SIM900
บอร์ดมีขั้วต่อสำหรับเชื่อมต่อเสาอากาศ

การกำหนดพินของส่วนประกอบ SIM900

เปิดและปิดไฟภายนอก

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

การเปิดใช้งานโมดูล กราฟของแรงดันไฟจ่ายของโมดูล พัลส์ควบคุมภายนอก และไฟแสดงสถานะสถานะ

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

โมฆะ powerUpOrDown()
{
พินโหมด(9, เอาท์พุต);
digitalWrite(9,ต่ำ);
ล่าช้า (1,000);
digitalWrite (9, สูง);
ล่าช้า (2000);
digitalWrite(9,ต่ำ);
ล่าช้า (3000);
}

กลุ่มคำสั่งนี้ในโปรแกรมสามารถใช้เพื่อปิดโมดูลได้เช่นกัน คุณยังสามารถปิดโมดูล GSM ได้ด้วยการส่งคำสั่ง AT

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

พื้นที่ใช้งาน

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

ตัวอย่างการใช้โมดูลเหล่านี้ในวิดีโอ:

วัตถุประสงค์

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

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

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

ประโยชน์ของการใช้งาน

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

  1. ราคาถูก. แพลตฟอร์มดังกล่าวเป็นอุปกรณ์ที่ค่อนข้างถูกเมื่อเทียบกับระบบอะนาล็อกซึ่งไม่มีผลกระทบต่อฟังก์ชันการทำงานเลย
  2. ข้ามแพลตฟอร์ม ซอฟต์แวร์ Arduino ทำงานได้อย่างมีประสิทธิภาพภายใต้แพลตฟอร์มปฏิบัติการ เช่น Windows, Linux, Macintosh-OSX
  3. ความง่ายในการเขียนโปรแกรม ในการกำหนดค่าไมโครคอนโทรลเลอร์ จะใช้สภาพแวดล้อมการเขียนโปรแกรมการประมวลผล เหมาะสำหรับผู้ใช้ทั้งมืออาชีพและไม่มีประสบการณ์ที่ทำงานกับอุปกรณ์ Arduino
  4. ความเป็นไปได้ของการปรับปรุง ซอฟต์แวร์ Arduino เฉพาะทางเป็นโอเพ่นซอร์ส ซึ่งช่วยให้ผู้ใช้ที่มีประสบการณ์สามารถปรับให้เข้ากับความต้องการเฉพาะได้

ความน่าเชื่อถือสูงของแพลตฟอร์มฮาร์ดแวร์ บอร์ด Arduino มีจำหน่ายในไมโครคอนโทรลเลอร์ ATMEGA8 และ ATMEGA168 (รุ่นก่อนหน้า) และคอนโทรลเลอร์ ATmega32u4, Atmel ATmega328 (รุ่นใหม่กว่า) ซึ่งโดดเด่นด้วยฟังก์ชันการทำงานและความน่าเชื่อถือสูง

หลักการทำงาน

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

บอร์ด GSM ใช้โมเด็มวิทยุ M10 พิเศษซึ่งรับประกันการโต้ตอบผ่านคำสั่ง AT พิเศษ การแลกเปลี่ยนข้อมูลกับโมเด็มนั้นดำเนินการโดยใช้ซอฟต์แวร์อินเทอร์เฟซแบบอนุกรมที่ใช้รหัสดิจิทัล

โมเด็ม GSM ที่ใช้ใน Arduino เป็นโมเด็ม 4 แบนด์ที่สามารถทำงานที่ความถี่ต่อไปนี้: GSM 850MHz และ 900MHz, PCS1900MHz และ DCS1800MHz โมเด็มรองรับโปรโตคอล เช่น TCP/UDP และ HTTP ซึ่งให้การเชื่อมต่อผ่าน GPRS ความเร็วในการส่งข้อมูลในโหมดนี้จะอยู่ที่ประมาณ 90 kbit/วินาที

การส่ง SMS ผ่านโมดูล Arduino และ GSM จะถูกนำมาใช้หากคุณมีซิมการ์ดที่ติดตั้งจากผู้ให้บริการโทรศัพท์มือถือรายใดรายหนึ่ง”

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

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

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

ลักษณะเปรียบเทียบของโมดูล GSM

ตลาดผู้บริโภคมีโมดูล GSM ต่างๆ สำหรับ Arduino ให้เลือกมากมาย ด้านล่างนี้เป็นคุณสมบัติหลักของสิ่งที่ได้รับความนิยมมากที่สุด

นีโอเวย์ M590

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

เมื่อใช้อุปกรณ์นี้ คุณสามารถสร้างการเชื่อมต่อมือถือกับโทรศัพท์ภายนอก ส่งข้อความ SMS และแลกเปลี่ยนข้อมูลโดยใช้มาตรฐาน GPRS Class-10 โมดูลของการออกแบบนี้ไม่มีอินพุตไมโครโฟนซึ่งจำกัดความเป็นไปได้ในการรับการสื่อสารด้วยเสียง - สามารถสร้างการเชื่อมต่อได้ แต่เสียงจะไม่ถูกส่ง

ในการควบคุม M590 จะใช้คำสั่ง AT ซึ่งออกผ่านการสื่อสารแบบอนุกรม ความถี่ตั้งแต่ 900 MHz ถึง 1800 MHz ใช้เป็นความถี่วิทยุในการใช้งาน แรงดันไฟฟ้าที่จ่ายอยู่ภายใน 3.3...5 V ดังนั้นโมดูล Neoway M590 GSM จึงเชื่อมต่อกับ Arduino ผ่านตัวแปลงแรงดันไฟฟ้าพิเศษ 5 V ถึง 3.3 V

โมดูล GSM SIM800L

โมดูล Sim800l GPRS GSM ขนาดกะทัดรัดเป็นอุปกรณ์ที่ใช้เพื่อรองรับการสื่อสารเคลื่อนที่ โมดูลนี้สร้างขึ้นจากเมอแรงค์ SIM-800L ซึ่งสร้างโดย SIMCom Wireless Solutions และได้รับการออกแบบมาเพื่อให้บริการกับบริการเครือข่ายข้อมูล GPRS\GSM โดยใช้ความถี่ตั้งแต่ 850 MHz ถึง 1900 MHz สามารถใช้ส่งข้อความ SMS โทรออก และแลกเปลี่ยนข้อมูลผ่านช่อง GPRS ได้

โมดูล GSM ติดตั้งเสาอากาศ หากคุณต้องการปรับปรุงระดับสัญญาณ คุณสามารถใช้เสาอากาศเพิ่มเติมได้ ในการควบคุมโมดูล สามารถใช้พีซี เชื่อมต่อผ่านบอร์ดแปลงอินเทอร์เฟซ USB-UART พิเศษ หรือผ่าน UART โดยตรง หากใช้โมดูล Sim800l GPRS GSM , การเชื่อมต่อกับ Arduino จะต้องดำเนินการผ่านตัวแปลงระดับลอจิก นี่เป็นเพราะความจริงที่ว่าใน SIM800L แรงดันไฟฟ้าที่ระดับสูงแบบลอจิคัลคือ 2.8 V และใน Arduino คือ 3.3...5 V

GPRS Shield โดย Seeed Studio

การเชื่อมต่อโมดูล GSM กับ Arduino จะทำให้สามารถใช้เทคโนโลยีการแลกเปลี่ยนข้อมูล GSM/GPRS ได้ เช่นเดียวกับการโทรออกและส่งข้อความ SMS อุปกรณ์ประเภทนี้สร้างขึ้นโดยใช้โมดูล SIMCom SIM900 มีช่องสำหรับติดตั้งซิมการ์ดขั้วต่อสำหรับเชื่อมต่อเสาอากาศภายนอกและชุดแจ็ค 3.5 มม. สำหรับอินพุตและเอาต์พุตเสียง การควบคุมและทำงานกับ Arduino GSM Shield ดำเนินการผ่านการเชื่อมต่อแบบอนุกรมและชุดคำสั่ง AT เฉพาะทาง

โมดูลนี้เป็นบอร์ดพิเศษที่ใช้ในการควบคุมอุปกรณ์ดิจิทัลจากระยะไกลตลอดจนการแลกเปลี่ยนข้อมูล การใช้ SIM900 ช่วยให้ Arduino สามารถทำงานโดยใช้เทคโนโลยี GSM/GPRS โดยให้การสื่อสารด้วยเสียง การส่ง SMS และการแลกเปลี่ยนข้อมูลโดยใช้เครือข่ายโทรศัพท์เคลื่อนที่และโทรศัพท์มือถือ

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

ไลบรารีนี้ช่วยให้คุณสามารถดำเนินการพื้นฐานส่วนใหญ่ที่ดำเนินการโดยโทรศัพท์ GSM: ทำงานกับการโทรด้วยเสียงส่งและรับ SMS และเชื่อมต่ออินเทอร์เน็ตผ่าน GPRS

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

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

โครงสร้างห้องสมุด

ฟังก์ชันการทำงานของไลบรารี GSM ค่อนข้างกว้างดังนั้นจึงรวมคลาสต่างๆ ไว้ด้วยกัน:

  • ระดับ จีเอสเอ็มมีหน้าที่ควบคุมโมเด็มวิทยุ คลาสนี้ประกอบด้วยฟังก์ชันระดับต่ำสำหรับการเชื่อมต่อและการลงทะเบียนการ์ดเอ็กซ์แพนชันในเครือข่าย GSM ต้องมีการประกาศอินสแตนซ์ของคลาสนี้ในทุกโปรแกรมที่ใช้ GSM/GPRS
  • ระดับ GSMVoiceCallมีหน้าที่รับสายสนทนา
  • ระดับ GSM_SMSมีหน้าที่ส่งและรับข้อความ SMS
  • ระดับ จีพีอาร์เอสมีหน้าที่เชื่อมต่ออินเทอร์เน็ต
  • ในชั้นเรียน GSMClientมีการใช้งานไคลเอนต์ที่คล้ายกับไคลเอนต์ในไลบรารี Ethernet และ WiFi
  • ในชั้นเรียน GSMServerมีการใช้งานเซิร์ฟเวอร์ที่คล้ายกับเซิร์ฟเวอร์ในไลบรารี Ethernet และ WiFi หมายเหตุ: ISP/ผู้ให้บริการบางรายบล็อกการเชื่อมต่อขาเข้าจากอินเทอร์เน็ตทั่วโลก โดยอนุญาตเฉพาะการเชื่อมต่ออินทราเน็ตเท่านั้น ตรวจสอบกับผู้ให้บริการของคุณเกี่ยวกับข้อจำกัดด้านข้อมูลที่เกี่ยวข้อง
  • คลาสผู้ช่วยมากมายเช่น GSMScanner, GSMโมเด็มและอื่น ๆ.

รองรับไลบรารีอีเธอร์เน็ต

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

ตัวอย่าง

ตัวอย่างการทำงานกับการ์ดเอ็กซ์แพนชัน GSM ทั้งหมดสามารถแบ่งออกเป็นสองกลุ่ม กลุ่มแรกคือตัวอย่างที่แสดงให้เห็นถึงความสามารถของบอร์ด (เช่น การส่งข้อความ SMS การเชื่อมต่ออินเทอร์เน็ต ฯลฯ) กลุ่มที่สองคือเครื่องมือที่คุณสามารถแก้ไขข้อบกพร่องการทำงานของไลบรารี Arduino และฮาร์ดแวร์ได้ในระดับต่ำ

สวัสดีตอนบ่าย อีกครั้งการทบทวนส่วนประกอบอิเล็กทรอนิกส์ของจีนหลายรายการตามปกติเกี่ยวกับทุกสิ่งเล็กน้อยฉันจะพยายามทำให้สั้น แต่จะได้ผลหรือไม่ พบกับระบบเตือนภัย GSM ที่มีราคาสูงถึง 700 ₽ น่าสนใจ? กรุณาใช้คำว่า "ตัด"!

มาเริ่มกันเลย! ก่อนที่คุณจะเริ่ม ฉันขอแนะนำให้ดูสิ่งนี้ ซึ่งมีส่วนประกอบน้อยลงและมีอิสระมากขึ้น ดังนั้น "ข้อกำหนดทางเทคนิค" ซึ่งเป็นข้อกำหนดพื้นฐานสำหรับการส่งสัญญาณ:

1) แจ้งเตือนเมื่อเซ็นเซอร์ถูกกระตุ้น
2) ในกรณีที่ไฟฟ้าขัดข้อง จะต้องจัดให้มีระบบอัตโนมัติบางประการ
3) การควบคุมสัญญาณเตือนผ่านทาง SMS และการโทร

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

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

รายการการเปลี่ยนแปลง

GSM_03_12_2016-14-38.hex- แก้ไขการทำงานของอุปกรณ์ด้วยโมเด็ม M590
GSM_05_12_2016-13-45.hex- เพิ่มคำสั่งคอนโซล memtest เพื่อเพิ่มประสิทธิภาพการใช้งาน RAM
GSM_2016_12_06-15-43.hex- เพิ่มผลลัพธ์ของคำสั่งไปยังคอนโซล, การเพิ่มประสิทธิภาพหน่วยความจำ ครอบครอง: 49% SRAM
GSM_2016_12_07-10-59.hex- ขณะนี้หมายเลขโทรศัพท์ถูกเพิ่มและลบออกอย่างถูกต้อง ไม่ว่าง: SRAM 49%, หน่วยความจำแฟลช 74%
GSM_2016_12_07-15-38.hex- เพิ่มความสามารถในการเชื่อมต่อเซ็นเซอร์ตรวจจับความเคลื่อนไหวโดยเชื่อมต่อกับพิน A0 (ในกรณีนี้พิน A0 จะใช้เป็นแบบดิจิทัล) เพิ่มคำสั่ง SMS ไพรอน, PIRออฟ- ไม่ว่าง: 48% SRAM, 76% หน่วยความจำแฟลช
GSM_2016_12_08-13-53.hex- ขณะนี้ หลังจากดำเนินการคำสั่งที่ไม่ส่งข้อความ SMS ตอบกลับสำเร็จ อุปกรณ์จะกะพริบไฟ LED สีฟ้าหนึ่งครั้ง ตอนนี้ หลังจากดำเนินการคำสั่งที่ไม่ส่งข้อความ SMS ไม่ถูกต้อง อุปกรณ์จะกะพริบไฟ LED สีน้ำเงินสองครั้ง ตอนนี้ หลังจากที่เริ่มต้นพารามิเตอร์อุปกรณ์แล้ว หากเปิดใช้งานโหมด "เงียบ" (SendSms = 0) อุปกรณ์จะกะพริบไฟ LED สีน้ำเงินบ่อยครั้งเป็นเวลา 2 วินาที แก้ไขข้อผิดพลาดเนื่องจากหมายเลขไม่ได้ถูกลบออกจากหน่วยความจำเสมอไปโดยใช้คำสั่ง DeletePhone ไม่ว่าง: SRAM 48%, หน่วยความจำแฟลช 78%
GSM_2016_12_11-09-12.hex- เพิ่มคำสั่งคอนโซล AddPhone และ DeletePhone ไวยากรณ์คล้ายกับคำสั่ง SMS การเพิ่มประสิทธิภาพหน่วยความจำ ไม่ว่าง: 43% SRAM, หน่วยความจำแฟลช 79%
GSM_2017_01_03-22-51.hex- มีการรองรับตัวขยายพอร์ต I/O ที่คล้ายกันบนชิป PCF8574 สำหรับการเชื่อมต่อเซ็นเซอร์เพิ่มเติม 8 ตัว รวมถึงสวิตช์กก ค้นหาที่อยู่อัตโนมัติและการกำหนดค่าโมดูลอัตโนมัติ ชื่อมาตรฐานของเซ็นเซอร์และระดับตรรกะของการตอบสนองจะเปลี่ยนไปโดยใช้คำสั่ง EditSensor เนื้อหาของ SMS แจ้งเตือนสำหรับเซ็นเซอร์หลัก (พิน D0) มีการเปลี่ยนแปลง: “สัญญาณเตือน! เซนเซอร์หลัก! และเซ็นเซอร์ตรวจจับความเคลื่อนไหว (พิน A0) “Alarm! เซ็นเซอร์พีไออาร์! เพิ่มคำสั่ง EditSensor และ I2CScan ไม่ว่าง: SRAM 66%, หน่วยความจำแฟลช 92%
GSM_2017_01_15-23-26.hex- รองรับโมเด็ม A6_Mini การตรวจสอบว่ามีพลังงานภายนอก (พิน D7) เพิ่มคำสั่ง SMS WatchPowerOn, WatchPowerOff เพิ่มคำสั่งคอนโซล ListConfig, ListSensor ขณะนี้คำสั่ง EditSensor SMS ทำงานได้อย่างถูกต้อง ผลลัพธ์ของข้อมูลการดีบักไปยังมอนิเตอร์พอร์ตลดลงเล็กน้อย ครอบครอง: SRAM 66%, หน่วยความจำแฟลช 95%
GSM_2017_01_16-23-54.hex- ขณะนี้ในข้อความตอบกลับคำสั่ง SMS "ข้อมูล" สถานะของเซ็นเซอร์ตรวจจับการเคลื่อนไหวก็จะถูกรายงานด้วย แก้ไขข้อบกพร่องเนื่องจากบางครั้งมีการส่งข้อความ SMS ตอบกลับที่ว่างเปล่า ตอนนี้อุปกรณ์ไม่เพียงแจ้งเตือนเกี่ยวกับการปิดเครื่องเท่านั้น แต่ยังเกี่ยวกับการกลับมาใช้พลังงานจากภายนอกอีกครั้งด้วย โมเด็มทั้งหมดเริ่มพูดพล่อยน้อยลง และตอนนี้มอนิเตอร์พอร์ตก็สะอาดขึ้นเล็กน้อย ครอบครอง: SRAM 66%, หน่วยความจำแฟลช 95%
GSM_2017_02_04-20-23.hex- แก้ไขข้อผิดพลาด "ดูการเปิดเครื่อง" ตอนนี้หลังจากปลดอาวุธแล้ว “พินสัญญาณเตือน” จะถูกปิด ตอนนี้หลังจากลบตัวเลขแล้ว ข้อมูลที่ถูกต้องจะแสดงในคอนโซล อาจแก้ไขข้อบกพร่องเนื่องจากบางครั้งมีการส่งข้อความ SMS ตอบกลับที่ว่างเปล่า ไม่ว่าง: SRAM 66%, หน่วยความจำแฟลช 90%
GSM_2017_02_14-00-03.hex- ขณะนี้ข้อความ SMS ถูกส่งตามค่าเริ่มต้น พารามิเตอร์ SendSms จะเท่ากับ 1 อีกครั้ง ตอนนี้เมื่อหน้าสัมผัสของเซ็นเซอร์กกหลักปิด (ปิดประตู) อุปกรณ์จะกะพริบพร้อมไฟ LED สีน้ำเงินเป็นเวลา 2 วินาทีซึ่งแสดงถึงการทำงานปกติ ของเซ็นเซอร์ ไม่ว่าง: SRAM 66%, หน่วยความจำแฟลช 90%
GSM_2017_03_01-23-37.hex- คำสั่ง WatchPowerOn ถูกลบออกแล้ว เพิ่มคำสั่งคอนโซล WatchPowerOff ซึ่งเหมือนกับคำสั่ง SMS เพิ่มคำสั่ง WatchPowerOn1, WatchPowerOn2 WatchPowerOn1 - เปิดใช้งานการตรวจสอบพลังงานภายนอกหากมีการเตือน WatchPowerOn2 - การตรวจสอบพลังงานภายนอกเปิดใช้งานอยู่เสมอ มีการใช้ฟังก์ชันการติดอาวุธและการปลดอาวุธโดยอุปกรณ์ภายนอก โดยจะใช้พิน A1(D15) และ A2(D16) สัญญาณเตือน/ปลดอาวุธเมื่อมีระดับสูง +5V ปรากฏที่พิน A1(D15) หรือ GND ระดับต่ำปรากฏที่พิน A2(D16) พิน A1(D15) ถูกดึงขึ้นไปที่ GND, พิน A2(D16) ถูกดึงขึ้นไปที่ +5V ถึง 20 (10) kOhm ตัวต้านทาน เพิ่มคำสั่ง GuardButtonOn และ GuardButtonOff ตอนนี้หลังจากติดอาวุธแล้ว ไฟ LED สีแดงจะกะพริบจนกว่าจะตรวจสอบความสมบูรณ์ของวงจรสวิตช์กกหลัก หากวงจรไม่เสียหาย ไฟ LED สีแดงจะสว่างขึ้น ครอบครอง: SRAM 66%, หน่วยความจำแฟลช 95%
GSM_2017_03_12-20-04.hex- ตอนนี้คอนโซลสะอาดยิ่งขึ้น แต่ถ้าเปิดใช้งานโหมดทดสอบ "TestOn" ข้อมูลเพิ่มเติมจะแสดงในคอนโซล ข้อผิดพลาด “ส่งแล้ว!” ได้รับการแก้ไขแล้ว ข้อมูลเกี่ยวกับการส่งข้อความแสดงอย่างถูกต้องในคอนโซลแล้ว แก้ไขข้อผิดพลาด "การโทรเท็จซ้ำๆ" ตอนนี้คำขอยอดคงเหลือควรทำงานอย่างถูกต้องบนโมเด็มทั้งหมด ครอบครอง: SRAM 67%, หน่วยความจำแฟลช 95%
GSM_2017_04_16-12-00.hex- แก้ไขแล้ว ตอนนี้คำสั่งข้อมูลและเงินจะส่ง SMS ตอบกลับเสมอ คำสั่ง GuardButtonOn ถูกแทนที่ด้วยคำสั่ง GuardButtonOn1 และ GuardButtonOn2 ครอบครอง: SRAM 67%, หน่วยความจำแฟลช 99%
GSM_2017_04_21-09-43.hex - ไม่แนะนำให้ใช้เพื่อการทดสอบเท่านั้น ขอบคุณสำหรับการระบุข้อผิดพลาด :) - ตอนนี้พารามิเตอร์ sendsms ไม่ส่งผลกระทบต่อการส่งข้อความ SMS สำหรับการตรวจสอบโครงข่ายไฟฟ้า เพิ่มคำสั่ง SMS DelayBeforeGuard รับผิดชอบความล่าช้าเมื่อติดอาวุธ ค่าต้องไม่เกิน 255 วินาที เพิ่มคำสั่ง SMS DelayBeforeAlarm ซึ่งมีหน้าที่ในการชะลอการส่งการแจ้งเตือนและเปิด "พินสัญญาณเตือน" เมื่อเซ็นเซอร์ถูกกระตุ้น ค่าจะต้องไม่เกิน 255 วินาที คำสั่ง ClearSMS ถูกลบแล้ว ข้อความจะถูกลบโดยอัตโนมัติเมื่อได้รับ ครอบครอง: SRAM 68%, หน่วยความจำแฟลช 100%
GSM_2017_04_22-20-42.hex- แก้ไขข้อบกพร่องหลายประการ คำสั่ง ClearSMS จะปรากฏอีกครั้งในเฟิร์มแวร์ การเพิ่มประสิทธิภาพหน่วยความจำ ไม่ว่าง: SRAM 68%, หน่วยความจำแฟลช 98%
GSM_2017_04_23-17-50.hex- ตอนนี้คำขอยอดคงเหลือควรทำงานอย่างถูกต้องบนโมเด็มทั้งหมด ขณะนี้การติดอาวุธและการปลดอาวุธด้วยอุปกรณ์ภายนอกทำงานได้อย่างถูกต้องแล้ว ข้อความตอบกลับทาง SMS จากคำสั่งข้อมูลไม่ควรว่างเปล่า การเพิ่มประสิทธิภาพหน่วยความจำ ไม่ว่าง: SRAM 68%, หน่วยความจำแฟลช 98%
GSM_2017_04_24-13-22.hex- ตอนนี้คำสั่งคอนโซลจะถูกส่งไปยังโมดูล GSM เมื่อเปิดใช้งานโหมดทดสอบเท่านั้น ขณะนี้ไม่มีการแบ่งแยกระหว่างคำสั่ง SMS และคำสั่งคอนโซล คำสั่งที่มีอยู่ทั้งหมดสามารถส่งได้ทั้งทาง SMS และทางคอนโซล ข้อบกพร่องของคำสั่งข้อมูลอาจได้รับการแก้ไขแล้ว การเพิ่มประสิทธิภาพหน่วยความจำ ไม่ว่าง: SRAM 68%, หน่วยความจำแฟลช 94%
GSM_2017_04_25-20-54.hex- แก้ไขข้อผิดพลาดที่คำสั่ง ListConfig เปลี่ยนค่าของเหตุการณ์ล่าสุด ตอนนี้เมื่อป้อนคำสั่งผ่านคอนโซล ข้อความ SMS ที่ไม่จำเป็นจะไม่ถูกส่ง ข้อบกพร่องของคำสั่งข้อมูลอาจได้รับการแก้ไขแล้ว การเพิ่มประสิทธิภาพหน่วยความจำ ครอบครอง: SRAM 66%, หน่วยความจำแฟลช 94%
GSM_2017_04_30-12-57.hex- เปิดใช้งานเอาต์พุตข้อมูลเพิ่มเติมไปยังคอนโซลชั่วคราวเมื่อส่งข้อความ SMS และสร้างการตอบสนองต่อคำสั่งข้อมูล ข้อบกพร่องของคำสั่งข้อมูลอาจได้รับการแก้ไขแล้ว การเพิ่มประสิทธิภาพหน่วยความจำ ไม่ว่าง: SRAM 66%, หน่วยความจำแฟลช 92%
GSM_2017_05_06-11-52.hex- แก้ไขด้วยฟังก์ชัน DelayBeforeAlarm ไม่ว่าง: SRAM 66%, หน่วยความจำแฟลช 93%
GSM_2017_05_23-21-27.hex- ข้อมูลส่งออกไปยังคอนโซลมีการเปลี่ยนแปลงเล็กน้อย เพิ่มการรองรับโมดูลขยายพอร์ตบน PCF8574A พร้อมที่อยู่ตั้งแต่ 0x38 ถึง 0x3f แก้ไขข้อผิดพลาดค. ตอนนี้อุปกรณ์จะรีบูตโดยอัตโนมัติหลังจากคำสั่ง FullReset, ResetConfig, ResetPhone และหากดำเนินการคำสั่ง MemTest สำเร็จหรือไม่ เพิ่มคำสั่ง WatchPowerTime ขณะนี้สามารถตั้งเวลาที่จะส่งข้อความ SMS เพื่อระบุว่าแหล่งพลังงานภายนอกปิดอยู่ ไม่ว่าง: 67% SRAM, 94% หน่วยความจำแฟลช
GSM_2017_05_26-20-22.hex- การเริ่มต้นหน่วยความจำเซ็นเซอร์บอร์ดขยายได้รับการแก้ไขแล้ว ไวยากรณ์คำสั่ง AddPhone มีการเปลี่ยนแปลง เพิ่มคำสั่ง EditMainPhone หลักการทำงานของระบบการแจ้งเตือนมีการเปลี่ยนแปลง เมื่อเซ็นเซอร์ทำงาน ข้อความ SMS จะถูกส่งก่อน จากนั้นจึงทำการโทรด้วยเสียง ข้อความ SMS แจ้งเตือนจะถูกส่งไปยังหมายเลขโทรศัพท์ที่มีเครื่องหมาย “S” (SMS) โทรออกด้วยเสียงไปยังหมายเลขที่มีเครื่องหมาย “R” (แหวน) ข้อความเกี่ยวกับการปิด/เปิดแหล่งพลังงานภายนอกจะถูกส่งไปยังหมายเลขโทรศัพท์ที่มีเครื่องหมาย “P” (พลังงาน) เพิ่มคำสั่ง RingTime ขณะนี้สามารถกำหนดระยะเวลาของการโทรด้วยเสียงที่น่าตกใจได้ พารามิเตอร์สามารถมีค่าได้ตั้งแต่ 10 ถึง 255 วินาที ขณะนี้คำสั่ง RingOn/RingOff เปิด/ปิดการแจ้งเตือนการโทรด้วยเสียงทั่วโลก เพิ่มคำสั่ง ResetSensor ครอบครอง: SRAM 68%, หน่วยความจำแฟลช 99%
GSM_2017_06_02-17-43.hex- เพิ่มพารามิเตอร์ "I" (ข้อมูล) ลงในคำสั่ง AddPhone และ EditMainPhone ซึ่งรับผิดชอบการแจ้งเตือนทาง SMS เกี่ยวกับการติดอาวุธหรือปลดอาวุธอุปกรณ์ หลังจากเพิ่มหมายเลขหลักแล้ว อุปกรณ์จะรีบูตโดยอัตโนมัติ ตอนนี้คุณสามารถป้อนตัวเลขที่เหมือนกันลงในหน่วยความจำของอุปกรณ์ได้แล้ว เมื่อบวกตัวเลขที่ซ้ำกันตัวที่สองและตัวถัดมา คุณลักษณะ "M", "S", "P" และ "I" จะถูกลบออกจากตัวเลขเหล่านั้นโดยอัตโนมัติ หมายเลขเหล่านี้จะใช้สำหรับการโทรด้วยเสียงซ้ำๆ เมื่อเซ็นเซอร์ทำงาน ข้อบกพร่องที่มีเอาต์พุตคอนโซลไม่ถูกต้องหลังจากดำเนินการคำสั่ง AddPhone ได้รับการแก้ไขแล้ว ขณะนี้ข้อมูลจะไม่แสดงโดยอัตโนมัติหลังจากเพิ่มหมายเลข เพิ่มคำสั่งรีบูต ครอบครอง: SRAM 69%, หน่วยความจำแฟลช 99%
GSM_2017_06_11-00-07.hex- อีกครั้งเมื่อปิดหน้าสัมผัสของเซ็นเซอร์กกหลัก (ปิดประตู) อุปกรณ์จะกะพริบพร้อมไฟ LED สีฟ้าเป็นเวลา 2 วินาทีซึ่งแสดงถึงการทำงานปกติของเซ็นเซอร์ แต่ไม่ได้คำนึงว่าอุปกรณ์นั้นติดอาวุธหรือไม่ หรือปลดอาวุธ คำสั่ง RingOn/RingOff ถูกลบออกแล้ว ตอนนี้สามารถปลดอาวุธอุปกรณ์ได้ในระหว่างการโทรปลุกแล้ว ครอบครอง: SRAM 69%, หน่วยความจำแฟลช 99%
GSM_2017_07_04-21-52.hex- ตอนนี้คำสั่ง Pause จะไม่ส่ง SMS ตอบกลับ คำสั่ง TestOn และ TestOff ถูกลบออกแล้ว คุณลักษณะการจัดการได้ถูกลบออกจากหมายเลขทั้งหมดแล้ว ครอบครอง: SRAM 68%, หน่วยความจำแฟลช 96%
GSM_2017_07_24-12-02.hex- เพิ่มคำสั่ง ReedSwitchOn/ReedSwitchOff สำหรับตรวจสอบเซ็นเซอร์กกหลัก ซึ่งขณะนี้สามารถเปิด/ปิดได้ในลักษณะเดียวกับเซ็นเซอร์ตรวจจับความเคลื่อนไหว แก้ไขข้อบกพร่องในคำสั่งข้อมูล คำสั่ง TestOn และ TestOff จะแสดงอีกครั้งในเฟิร์มแวร์ ครอบครอง: SRAM 68%, หน่วยความจำแฟลช 96%
GSM_2017_07_26-10-03.hex- เพิ่มคำสั่ง ModemID การตรวจจับโมเด็มอัตโนมัติจะดำเนินการเฉพาะในกรณีที่ค่าของพารามิเตอร์นี้เป็น 0 หลังจากตั้งค่าพารามิเตอร์เป็น 0 อุปกรณ์จะรีบูตโดยอัตโนมัติ ไม่ว่าง: SRAM 68%, หน่วยความจำแฟลช 98%
GSM_2017_08_03-22-03.hex- ขณะนี้สัญญาณเตือนสามารถควบคุมอุปกรณ์ภายนอกได้ สำหรับการควบคุมจะใช้เอาต์พุตอะนาล็อก A3 (D17 - ใช้เป็นดิจิทัล) ระดับเอาต์พุตลอจิคัล (+5V หรือ GND) สามารถเปลี่ยนแปลงได้ หลังจากเปลี่ยนระดับผ่านคำสั่งการกำหนดค่า อุปกรณ์จะรีบูตโดยอัตโนมัติ ระยะเวลาของสัญญาณควบคุมอุปกรณ์ภายนอกสามารถเปลี่ยนแปลงได้ เพิ่มคำสั่ง ExtDeviceLow, ExtDeviceLevelHigh, ExtDeviceTime, Open การเปลี่ยนแปลงบางอย่างในตรรกะของคำสั่งควบคุม การเพิ่มประสิทธิภาพหน่วยความจำ ครอบครอง: SRAM 68%, หน่วยความจำแฟลช 99%
GSM_2017_08_10-12-17.hex- คำสั่ง SmsOn/SmsOff, ReedSwitchOn/ReedSwitchOff, PIROn/PIROff และทุกสิ่งที่เชื่อมต่ออยู่ได้ถูกลบออกไปแล้ว คำสั่ง DelayBeforeAlarm ถูกแทนที่ด้วยคำสั่งเพิ่มเติม เปลี่ยนผลลัพธ์ของคำสั่งข้อมูล เอาต์พุตของคำสั่ง ListConfig ไปยังคอนโซลได้รับการปรับให้เหมาะสมแล้ว ขณะนี้เซนเซอร์ดิจิทัลที่มีระดับการตอบสนองสูงหรือต่ำ รวมถึงสวิตช์กก สามารถเชื่อมต่อกับพิน D6 และ A0 ได้ พิน D6 และ A0 ควรเชื่อมต่อกับกราวด์ (GND) ผ่านความต้านทาน 10 (20) kOhm หากเซ็นเซอร์ถูกตั้งค่าไว้ที่ระดับการตอบสนองต่ำ (เปิดใช้งานในโหมดสวิตช์กก) ความสมบูรณ์ของวงจรจะถูกตรวจสอบ ระดับการทริกเกอร์เชิงตรรกะที่อินพุต D6 และ A0 (+5V หรือ GND) สามารถเปลี่ยนแปลงได้ หลังจากเปลี่ยนระดับลอจิคัล อุปกรณ์จะรีบูตโดยอัตโนมัติ สำหรับเซ็นเซอร์แต่ละตัว (หลัก วินาที บอร์ดขยาย PCF) เมื่อถูกกระตุ้น จะสามารถตั้งเวลาของตัวเองได้ หลังจากนั้นจะมีการแจ้งเตือน (SMS และ/หรือการโทรด้วยเสียง) "เซ็นเซอร์ PIR" ถูกเปลี่ยนชื่อเป็น "เซ็นเซอร์ตัวที่สอง" แก้ไขการทำงานของการ์ดเอ็กซ์แพนชัน ซึ่งเป็นข้อผิดพลาดที่ทำให้อุปกรณ์แจ้งเตือนเสมอเมื่อมีการกระตุ้นเซ็นเซอร์ ไม่ว่าอุปกรณ์จะติดอาวุธหรือไม่ก็ตาม ตอนนี้คุณสามารถเลือกโหมดการทำงานที่อุปกรณ์สามารถตรวจสอบเซ็นเซอร์ของการ์ดเอ็กซ์แพนชันทั้งในโหมดติดอาวุธ (GuardOn) และในโหมดปิดการใช้งาน (GuardOff) เพิ่มคำสั่ง PCFForceOn/PCFForceOff, MainSensorLevelHigh/MainSensorLevelLow/MainSensorLevelOff, SecondSensorLevelHigh/SecondSensorLevelLow/SecondSensorLevelOff, MainDelayBeforeAlarm, SecondDelayBeforeAlarm, PCFDelayBeforeAlarm ครอบครอง: SRAM 68%, หน่วยความจำแฟลช 99%

*เฟิร์มแวร์เวอร์ชันต่อมาจะรวมการเปลี่ยนแปลงจากเวอร์ชันก่อนหน้าด้วย


ใช้พอร์ต Arduino Nano v3

D4- เอาต์พุตของพิน "สัญญาณเตือน" เมื่อเซ็นเซอร์ถูกกระตุ้นสัญญาณระดับสูงจะถูกตั้งค่าบนพินนี้
D5- เอาต์พุตผกผันของพิน "สัญญาณเตือน" เมื่อเซ็นเซอร์ถูกกระตุ้นสัญญาณระดับต่ำจะถูกตั้งค่าบนพินนี้

D6- เซ็นเซอร์กก ตั้งแต่เวอร์ชัน GSM_2017_08_10-12-17.hex เซ็นเซอร์ดิจิทัลใดๆ ที่มีระดับการตอบสนองสูงหรือต่ำ รวมถึงสวิตช์กก สามารถเชื่อมต่อกับพิน D6 ได้ ควรดึงพิน D6 ลงกราวด์ (GND) ผ่านความต้านทาน 10 (20) kOhm
D7- เชื่อมต่อกับตัวแบ่งแรงดันไฟฟ้าจากแหล่งพลังงาน +5V ภายนอก ต้นแขน 2.2 kOhm, แขนล่าง 3.3 kOhm

ตัวแบ่งแรงดันไฟฟ้า


D8- โมเด็มเท็กซัส
D9- โมเด็ม RX

D10- ไฟ LED สีแดง
D11- ไฟ LED สีฟ้า
D12- ไฟ LED สีเขียว

การเชื่อมต่ออุปกรณ์ต่อพ่วง:
A0- เซ็นเซอร์ตรวจจับความเคลื่อนไหว ตั้งแต่เวอร์ชัน GSM_2017_08_10-12-17.hex เซ็นเซอร์ดิจิทัลใดๆ ที่มีระดับการตอบสนองสูงหรือต่ำ รวมถึงสวิตช์กก สามารถเชื่อมต่อกับพิน A0 ได้ ควรดึงพิน A0 ลงกราวด์ (GND) ผ่านความต้านทาน 10 (20) kOhm

A1- อินพุตสำหรับการควบคุมภายนอก สัญญาณเตือน/ปลดอาวุธเมื่อมีระดับ +5V ระดับสูงปรากฏขึ้นที่อินพุต
A2- อินพุทผกผันสำหรับการควบคุมภายนอก สัญญาณเตือน/ปลดอาวุธเมื่อมีระดับ GND ต่ำปรากฏที่อินพุต

A3- เอาต์พุตที่กำหนดค่าได้ (+5V หรือ GND) สำหรับการควบคุมอุปกรณ์ภายนอก เมื่อได้รับคำสั่งควบคุม ค่าที่เอาต์พุตนี้จะเปลี่ยนไปขึ้นอยู่กับสิ่งที่ตั้งค่าไว้ในช่วงเวลาที่กำหนด

A4- เอสดีเอ I2C
A5- SLC I2C
,สำหรับเชื่อมต่อเซ็นเซอร์เพิ่มเติม 8 ตัว


คำสั่งควบคุมสำหรับเฟิร์มแวร์ hex

ความสนใจ!ทีมงานที่ทุ่มเท ตัวหนาสามารถดำเนินการได้จากหมายเลขหลักเท่านั้น เนื่องจากมีหน้าที่รับผิดชอบในการกำหนดค่าอุปกรณ์ คำสั่งอื่นๆ สามารถดำเนินการได้จากตัวเลขที่มีคุณลักษณะ "การจัดการ"

SMS - คำสั่งควบคุมไม่คำนึงถึงขนาดตัวพิมพ์:
เพิ่มโทรศัพท์- เพิ่มหมายเลขโทรศัพท์ โดยรวมแล้วสามารถเพิ่มได้ไม่เกิน 9 หมายเลข + 1 หมายเลขหลักซึ่งจะถูกบันทึกลงในหน่วยความจำโดยอัตโนมัติในครั้งแรกที่คุณโทรเข้าอุปกรณ์หลังจากรีเซ็ตเป็นการตั้งค่าจากโรงงานโดยใช้คำสั่ง รีเซ็ตโทรศัพท์หรือ รีเซ็ตแบบเต็ม- เหล่านั้น. ใครก็ตามที่โทรหาอุปกรณ์เป็นคนแรกหลังจากรีเซ็ตเป็นการตั้งค่าจากโรงงานคือ "หลัก" หมายเลขนี้จะถูกป้อนลงในเซลล์หน่วยความจำแรกและไม่สามารถเปลี่ยนแปลงหรือลบผ่านทาง SMS ไม่สามารถเพิ่มตัวเลขที่เหมือนกันสองตัวได้
คำสั่งตัวอย่าง:



ไวยากรณ์คำสั่ง:

เพิ่มโทรศัพท์- ทีม
: - ตัวคั่น
5 - เขียนไปยังเซลล์หน่วยความจำที่ห้า
+71234567890 - หมายเลขโทรศัพท์
สูงสุดเวอร์ชัน GSM_2017_05_26-20-22.hex:
ก - พารามิเตอร์ "สัญญาณเตือน" - ข้อความ SMS จะถูกส่งไปยังหมายเลขที่มีพารามิเตอร์นี้ - ข้อความเกี่ยวกับการเปิดใช้งานสัญญาณเตือนและข้อความเกี่ยวกับการติดอาวุธหรือการปิดอาวุธ
เริ่มต้นจากเวอร์ชัน GSM_2017_05_26-20-22.hex:
m - พารามิเตอร์ "การจัดการ" - เปิดใช้งานการจัดการสัญญาณเตือนแล้ว
s - พารามิเตอร์ "SMS" - ข้อความ SMS จะถูกส่งเมื่อเซ็นเซอร์ถูกกระตุ้น
r - พารามิเตอร์ "แหวน" - จะมีการโทรออกด้วยเสียงเมื่อเซ็นเซอร์ถูกกระตุ้น
p - พารามิเตอร์ "พลังงาน" - ข้อความ SMS จะถูกส่งเมื่อเปิด/ปิดไฟภายนอก
i - พารามิเตอร์ "ข้อมูล" - ข้อความ SMS จะถูกส่งเมื่อมีการติดอาวุธหรือปลดอาวุธ
หากไม่มีพารามิเตอร์ "m", "s", "r", "p", "i" โทรศัพท์จะถูกเก็บไว้ในหน่วยความจำ แต่จะไม่ได้ใช้ในทางใดทางหนึ่ง


ลบโทรศัพท์- ลบหมายเลขโทรศัพท์
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

ลบโทรศัพท์ - คำสั่ง
: - ตัวคั่น
+71234567891 - หมายเลขโทรศัพท์


แก้ไข MainPhone- เปลี่ยนพารามิเตอร์ "s", "r", "p", "i" ของโทรศัพท์หลัก หมายเลขนี้จะถูกเก็บไว้ในเซลล์หน่วยความจำแรก
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

แก้ไข MainPhone - คำสั่ง
: - ตัวคั่น
srpi - พารามิเตอร์


ยอดเงินคงเหลือ- การเปลี่ยนหมายเลขคำขอยอดคงเหลือและการประมวลผลระยะเวลาของการตอบกลับคำขอ ค่าเริ่มต้นสำหรับ Beeline: #100#L22
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

BalanceNum - คำสั่ง
: - ตัวคั่น
#103# - หมายเลขคำขอยอดคงเหลือ
L24 - ความยาว (len) ของการตอบกลับที่ส่งต่อคือ 24 ตัวอักษร เราตัดสแปมออกจากคำขอยอดคงเหลือ


แก้ไขเซ็นเซอร์- เปลี่ยนชื่อเซ็นเซอร์และระดับการตอบสนองเชิงตรรกะ รวมเซ็นเซอร์เพิ่มเติมได้ไม่เกิน 8 ตัว หลังจากเปลี่ยนพารามิเตอร์แล้วจะต้องรีบูทอุปกรณ์
คำสั่งตัวอย่าง:
แก้ไขเซ็นเซอร์:1+Datchik dvizheniya กับ koridore#h

ไวยากรณ์คำสั่ง:

EditSensor - คำสั่ง
: - ตัวคั่น
1 - เขียนไปยังเซลล์หน่วยความจำแรก
+ - ตัวคั่น
Datchik dvizheniya v koridore - ชื่อของเซ็นเซอร์ต้องมีความยาวไม่เกิน 36 ตัวอักษรรวมการเว้นวรรค
#h - สัญญาณของระดับลอจิคัลสูงจากเซ็นเซอร์ เมื่อได้รับการแจ้งเตือนจะถูกกระตุ้น หากไม่มี "h" สัญญาณเตือนจะถูกทริกเกอร์เมื่อเซ็นเซอร์ได้รับระดับลอจิกต่ำ


เวลานอน- เวลาที่นาฬิกาปลุกเข้าสู่โหมดสลีปเมื่อได้รับ SMS - คำสั่ง "หยุดชั่วคราว" จะแสดงเป็นนาที ค่าเริ่มต้น: 15 ต้องไม่น้อยกว่า 1 หรือมากกว่า 60
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

เวลาพักเครื่อง - คำสั่ง
: - ตัวคั่น
“การนอนหลับ” 20 - 20 นาที


AlarmPinTime- เวลาที่เปิด/ปิดสัญญาณเตือน/พินผกผันจะแสดงเป็นวินาที ค่าเริ่มต้น: 60 ต้องไม่น้อยกว่า 1 วินาทีและมากกว่า 43200 วินาที (12 ชั่วโมง)
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

AlarmPinTime - คำสั่ง
: - ตัวคั่น
30 - 30 วินาทีเพื่อเปิด/ปิดพินสัญญาณเตือน


ดีเลย์ก่อนการ์ด- เวลาก่อนเตรียมอุปกรณ์ หลังจากได้รับคำสั่งที่เกี่ยวข้อง
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

DelayBeforeGuard - คำสั่ง
: - ตัวคั่น
25 - 25 วินาทีก่อนติดอาวุธ


ล่าช้าก่อนสัญญาณเตือน- เวลาหลังจากนั้นจะส่งการแจ้งเตือนทาง SMS "สัญญาณเตือน" หากไม่ได้ปิดการเตือนในช่วงเวลานี้ แทนที่ด้วยคำสั่งเพิ่มเติมที่เริ่มต้นจากเวอร์ชัน GSM_2017_08_10-12-17.hex
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

DelayBeforeAlarm - คำสั่ง
: - ตัวคั่น
40 - 40 วินาทีก่อนส่งการแจ้งเตือน "สัญญาณเตือน"


ดูพาวเวอร์ไทม์- เวลาเป็นนาทีหลังจากนั้นจะมีการส่งข้อความ SMS เพื่อแจ้งว่าแหล่งพลังงานภายนอกปิดอยู่ หากมีการจ่ายไฟจากภายนอกกลับคืนมาก่อนเวลาที่ตั้งไว้ ข้อความจะไม่ถูกส่ง
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

WatchPowerTime - คำสั่ง
: - ตัวคั่น
5 - 5 นาทีก่อนส่งข้อความ SMS


ริงไทม์- ระยะเวลาของการโทรด้วยเสียงที่น่าตกใจ พารามิเตอร์สามารถมีค่าได้ตั้งแต่ 10 ถึง 255 วินาที
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

RingTime - คำสั่ง
: - ตัวคั่น
40 - 40 ระยะเวลาการโทรจะเป็น 40 วินาที หลังจากนั้นสมาชิกรายถัดไปจะถูกโทร


โมเด็มไอดี- บังคับติดตั้งโมเดลของโมเด็มที่ใช้งานอยู่ ค่าที่เป็นไปได้: 0 - การตรวจจับโมเด็มอัตโนมัติ, 1 - M590, 2 - SIM800l, 3 - A6_Mini
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

ModemID - คำสั่ง
: - ตัวคั่น
2 - รหัสโมเด็ม


ExtDeviceTime- จำนวนวินาทีที่ระดับสัญญาณที่เอาต์พุตควบคุมของอุปกรณ์ภายนอกจะเปลี่ยนไป
คำสั่งตัวอย่าง:

ไวยากรณ์คำสั่ง:

ExtDeviceTime- คำสั่ง
: - ตัวคั่น
5 - 5 วินาที


ExtDeviceLevelLow- อุปกรณ์ภายนอกที่เชื่อมต่อกับเอาต์พุต A3 ถูกควบคุมโดยระดับสัญญาณต่ำ (GND) เอาต์พุตจะมีค่าเริ่มต้นอยู่ที่ระดับสูงที่ +5V จนกว่าจะได้รับคำสั่งควบคุมจากอุปกรณ์ภายนอก
ExtDeviceLevelHigh- อุปกรณ์ภายนอกที่เชื่อมต่อกับเอาต์พุต A3 ถูกควบคุมโดยระดับสัญญาณสูง (+5V) เอาต์พุตจะมีค่าเริ่มต้นเป็น GND ต่ำจนกว่าจะได้รับคำสั่งควบคุมอุปกรณ์ภายนอก

รีเซ็ตเซ็นเซอร์- รีเซ็ตเซ็นเซอร์ขยายพอร์ต

รีเซ็ตการกำหนดค่า- รีเซ็ตการตั้งค่าเป็นการตั้งค่าจากโรงงาน

รีเซ็ตโทรศัพท์- ลบหมายเลขโทรศัพท์ทั้งหมดออกจากหน่วยความจำ

รีเซ็ตแบบเต็ม- รีเซ็ตการตั้งค่า ลบหมายเลขโทรศัพท์ทั้งหมดออกจากหน่วยความจำ คืนค่าเริ่มต้นของคำสั่ง BalanceNum

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

เอสเอ็มเอสออน- เปิดใช้งานการแจ้งเตือนทาง SMS เมื่อเซ็นเซอร์ทำงาน ลบออกตั้งแต่เวอร์ชัน GSM_2017_08_10-12-17.hex
SMSOff- ปิดการแจ้งเตือนทาง SMS เมื่อเซ็นเซอร์ทำงาน ลบออกตั้งแต่เวอร์ชัน GSM_2017_08_10-12-17.hex

ไพรอน- เปิดใช้งานการประมวลผลเซ็นเซอร์ตรวจจับความเคลื่อนไหว
PIRออฟ- ปิดการใช้งานการประมวลผลเซ็นเซอร์การเคลื่อนไหว

ReedSwitchOn- เปิดใช้งานการประมวลผลเซ็นเซอร์กกหลัก
กกSwitchOff- ปิดการประมวลผลของเซ็นเซอร์กกสวิตช์หลัก

นาฬิกา PowerOn- เปิดใช้งานการควบคุมพลังงานภายนอก ข้อความ SMS เกี่ยวกับการปิดไฟภายนอกจะถูกส่งไปโดยที่ระบบสัญญาณเตือนติดอาวุธ ลบออกตั้งแต่เวอร์ชัน GSM_2017_03_01-23-37

นาฬิกา PowerOn1- เปิดใช้งานการควบคุมพลังงานภายนอก ข้อความ SMS เกี่ยวกับการปิดไฟภายนอกจะถูกส่งไปโดยที่ระบบสัญญาณเตือนติดอาวุธ
นาฬิกา PowerOn2- เปิดใช้งานการควบคุมพลังงานภายนอก โดยจะมีการส่งข้อความ SMS เกี่ยวกับการปิดไฟภายนอกในทุกกรณี

นาฬิกา PowerOff- ปิดการควบคุมไฟภายนอก

ยามปุ่มออน- เปิดใช้งานการควบคุมสัญญาณเตือนโดยอุปกรณ์ภายนอกหรือปุ่ม ลบออกตั้งแต่เวอร์ชัน GSM_2017_04_16-12-00
GuardButtonOn1- การทำงาน การตั้งค่าหรือการถอดการป้องกันโดยอุปกรณ์ภายนอกหรือปุ่มเปิดใช้งานอยู่
GuardButtonOn2- การทำงาน โปรดักชั่นเท่านั้นติดอาวุธโดยอุปกรณ์ภายนอกหรือปุ่มเปิดอยู่ การปลดอาวุธทำได้โดยการเรียกอุปกรณ์หรือใช้คำสั่ง SMS
ยามปุ่มปิด- ปิดใช้งานการควบคุมสัญญาณเตือนโดยอุปกรณ์ภายนอกหรือปุ่ม

PCForceOn- การตรวจสอบกลุ่มเซ็นเซอร์โมดูลส่วนขยายทั้งหมดอย่างต่อเนื่อง
PCFForceOff- การตรวจสอบกลุ่มเซ็นเซอร์โมดูลส่วนขยายทั้งหมดเฉพาะเมื่ออุปกรณ์ติดอาวุธเท่านั้น

หลักเซ็นเซอร์ระดับสูง- การแจ้งเตือนจะถูกส่งเมื่อมีสัญญาณระดับสูง (+5 V) ปรากฏที่อินพุต (D6) จากเซ็นเซอร์
หลักเซ็นเซอร์ระดับต่ำ- การแจ้งเตือนจะถูกส่งเมื่อมีสัญญาณระดับต่ำ (GND) ปรากฏขึ้นที่อินพุต (D6) จากเซ็นเซอร์
MainSensorLevelOff- การประมวลผลอินพุตเซ็นเซอร์ (D6) ถูกปิดใช้งาน

วินาทีเซ็นเซอร์ระดับสูง- การแจ้งเตือนจะถูกส่งเมื่อมีสัญญาณระดับสูง (+5 V) ปรากฏที่อินพุต (A0) จากเซ็นเซอร์
วินาทีเซ็นเซอร์ระดับต่ำ- การแจ้งเตือนจะถูกส่งเมื่อมีสัญญาณระดับต่ำ (GND) ปรากฏขึ้นที่อินพุต (A0) จากเซ็นเซอร์
SecondSensorLevelOff- การประมวลผลอินพุตเซ็นเซอร์ (A0) ถูกปิดใช้งาน

MainDelayBeforeAlarm- เวลาหลังจากนั้นจะส่งการแจ้งเตือนทาง SMS "สัญญาณเตือน" เมื่อเซ็นเซอร์หลัก (D6) ทำงาน หากไม่ได้ปิดสัญญาณเตือนในช่วงเวลานี้ ไวยากรณ์เหมือนกับคำสั่ง DelayBeforeAlarm
วินาทีล่าช้าก่อนที่จะปลุก- เวลาหลังจากนั้นจะส่งการแจ้งเตือนทาง SMS "สัญญาณเตือน" เมื่อมีการกระตุ้นเซ็นเซอร์เพิ่มเติม (A0) หากไม่ได้ปิดสัญญาณเตือนในช่วงเวลานี้ ไวยากรณ์เหมือนกับคำสั่ง DelayBeforeAlarm
PCFDelayBeforeAlarm- เวลาหลังจากนั้นจะส่งการแจ้งเตือนทาง SMS "สัญญาณเตือน" เมื่อมีการกระตุ้นเซ็นเซอร์บอร์ดส่วนขยาย (PCF8574) หากไม่มีการปลดอาวุธสัญญาณเตือนในช่วงเวลานี้ ไวยากรณ์เหมือนกับคำสั่ง DelayBeforeAlarm

GuardOn - แขน
GuardOff - ถอดตัวป้องกันออก

เปิด - คำสั่งควบคุมอุปกรณ์ภายนอก

ข้อมูล - ตรวจสอบสถานะ เพื่อตอบสนองต่อข้อความนี้ SMS จะถูกส่งพร้อมข้อมูลเกี่ยวกับหมายเลขที่เปิด/ปิดการรักษาความปลอดภัย

หยุดชั่วคราว - หยุดระบบชั่วคราวตามเวลาที่กำหนดโดยคำสั่ง sleeptime เป็นนาที ระบบไม่ตอบสนองต่อทริกเกอร์เซ็นเซอร์

TestOn - เปิดโหมดทดสอบแล้ว ไฟ LED สีน้ำเงินจะกะพริบ
TestOff - ปิดโหมดทดสอบ

LedOff - ปิดไฟ LED สแตนด์บาย
LedOn - เปิด LED สแตนด์บาย

เงิน - ขอยอดคงเหลือ

ClearSms - ลบ SMS ทั้งหมดออกจากหน่วยความจำ

คำสั่งคอนโซล (สูงสุดเวอร์ชัน GSM_2017_04_24-13-22.hex) - ป้อนในมอนิเตอร์พอร์ต Arduino IDE:

AddPhone - คล้ายกับคำสั่ง AddPhone sms

DeletePhone - คล้ายกับคำสั่ง SMS DeletePhone

EditSensor - คล้ายกับคำสั่ง sms ของ EditSensor

ListPhone - ส่งออกไปยังพอร์ตตรวจสอบรายการโทรศัพท์ที่เก็บไว้ในหน่วยความจำ

ResetConfig - คล้ายกับคำสั่ง SMS ResetConfig

ResetPhone - คล้ายกับคำสั่ง SMS ResetPhone

FullReset - คล้ายกับคำสั่ง SMS FullReset

ClearSms - คล้ายกับคำสั่ง ClearSms sms

WatchPowerOn1 - คล้ายกับคำสั่ง SMS ของ WatchPowerOn1
WatchPowerOn2 - คล้ายกับคำสั่ง SMS ของ WatchPowerOn2
WatchPowerOff - คล้ายกับคำสั่ง SMS ของ WatchPowerOff

GuardButtonOn - คล้ายกับคำสั่ง SMS GuardButtonOn ลบออกตั้งแต่เวอร์ชัน GSM_2017_04_16-12-00
GuardButtonOn1 - คล้ายกับคำสั่ง SMS GuardButtonOn1
GuardButtonOn2 - คล้ายกับคำสั่ง SMS GuardButtonOn2
GuardButtonOff - คล้ายกับคำสั่ง SMS GuardButtonOff

Memtest - ทดสอบหน่วยความจำแบบไม่ลบเลือนของอุปกรณ์ การตั้งค่าอุปกรณ์ทั้งหมดจะถูกรีเซ็ต คล้ายกับคำสั่ง FullReset

I2CScan - ค้นหาและเริ่มต้นอุปกรณ์ที่รองรับบนบัส I2C

ListConfig - แสดงการกำหนดค่าอุปกรณ์ปัจจุบันไปยังมอนิเตอร์พอร์ต

ListSensor - ส่งออกไปยังมอนิเตอร์พอร์ตของการกำหนดค่าเซ็นเซอร์ปัจจุบัน

รปภ. เมื่อใช้เซ็นเซอร์ตรวจจับความเคลื่อนไหวเพื่อหลีกเลี่ยงผลบวกลวงระหว่างการทำงานของโมเด็ม จึงจำเป็น ระหว่างหมุด จีเอ็นดีและ A0อาร์ดูโน่ ต่อต้านขอบคุณสหาย
AllowPhone = (“70001234501”, “70001234502”, “70001234503”, “70001234504”, “70001234505”) - หมายเลขที่ได้รับอนุญาตให้จัดการความปลอดภัย
AlarmPhone = (“70001234501”, “70001234502”) - หมายเลขสำหรับส่งการแจ้งเตือนทาง SMS เมื่อเซ็นเซอร์ถูกกระตุ้นและการแจ้งเตือนเกี่ยวกับการปลดอาวุธหรือติดอาวุธ หมายเลขแรกในรายการจะถูกเรียกเมื่อเซ็นเซอร์ถูกทริกเกอร์หากมีการดำเนินการคำสั่ง RingOn โดยค่าเริ่มต้น ตัวเลือกนี้จะถูกเปิดใช้งาน การดำเนินการนี้เกิดขึ้นเนื่องจากข้อความ SMS อาจมาถึงล่าช้าบ้าง แต่การโทรควรจะดำเนินการได้ทันที

ถ้าได้รับสายจากหมายเลขที่ได้รับอนุญาตหรือข้อความ SMS ด้วยคำสั่ง GuardOn/GuardOff ข้อความ SMS เกี่ยวกับการเปิดหรือปิดอาวุธจะถูกส่งไปยังหมายเลขที่ระบุไว้ในอาร์เรย์ AlarmPhone และขึ้นอยู่กับสถานะความปลอดภัยในปัจจุบัน ข้อความ SMS จะถูกส่งไปยังหมายเลขที่โทรมาด้วย

เมื่อเซ็นเซอร์ถูกกระตุ้นข้อความ SMS จะถูกส่งไปยังหมายเลขทั้งหมดจากอาร์เรย์ AlarmPhone (รายการ) และจะมีการโทรด้วยเสียงไปยังหมายเลขแรกจากอาร์เรย์นี้

ไฟแสดงสถานะ:
ไฟ LED สว่างเป็นสีแดง - ติดอาวุธแล้ว
ไฟ LED สว่างเป็นสีเขียว - ปลดอาวุธแล้ว เปิด/ปิดด้วยคำสั่ง SMS LedOn/LedOff
ไฟ LED กะพริบเป็นสีน้ำเงินตลอดเวลา - เป็นสัญญาณว่าทุกอย่างเป็นไปตามลำดับของ Arduino บอร์ดไม่ได้ถูกแช่แข็ง ใช้สำหรับการดีบักโดยเฉพาะ เปิด/ปิดโดยคำสั่ง TestOn/TestOff SMS
* โค้ดประกอบด้วยฟังก์ชัน LedTest() โดยจะกะพริบด้วยไฟ LED สีฟ้า สร้างขึ้นเพื่อตรวจสอบ Arduino เท่านั้น กะพริบ - หมายความว่ากำลังทำงาน ไม่กะพริบ - ค้าง ยังไม่ได้วางสายเลย :)

ไม่เกี่ยว!

การเชื่อมต่อเซ็นเซอร์ 2 ตัวขึ้นไปสำหรับเฟิร์มแวร์แบบเปิด (ใช้ได้กับเฟิร์มแวร์นี้ Sketch_02_12_2016.ino เท่านั้น)
ในการเชื่อมต่อเซ็นเซอร์กกเพิ่มเติม เราใช้พินดิจิทัลฟรี D2, D3, D5 หรือ D7 แผนภาพการเชื่อมต่อพร้อมเซนเซอร์เพิ่มเติมบน D7

การเปลี่ยนแปลงที่จำเป็นในเฟิร์มแวร์
... #define DoorPin 6 // หมายเลขอินพุตที่เชื่อมต่อกับเซ็นเซอร์หลัก int8_t DoorState = 0; // ตัวแปรสำหรับจัดเก็บสถานะของเซ็นเซอร์หลัก int8_t DoorFlag = 1; // ตัวแปรสำหรับจัดเก็บสถานะของเซ็นเซอร์หลัก #define BackDoorPin 7 // หมายเลขอินพุตที่เชื่อมต่อกับเซ็นเซอร์เพิ่มเติม int8_t BackDoorState = 0; // ตัวแปรสำหรับจัดเก็บสถานะของเซ็นเซอร์เพิ่มเติม int8_t BackDoorFlag = 1; // ตัวแปรสำหรับจัดเก็บสถานะของเซ็นเซอร์เพิ่มเติม...
การตั้งค่าเป็นโมฆะ () ( ... pinMode (DoorPin, INPUT); pinMode (BackDoorPin, INPUT); ...
... void Detect() ( // อ่านค่าจากเซ็นเซอร์ DoorState = digitalRead(DoorPin); BackDoorState = digitalRead(BackDoorPin); // กำลังประมวลผลเซ็นเซอร์หลักถ้า (DoorState == LOW && DoorFlag == 0) ( DoorFlag = 1; ล่าช้า (100); if (LedOn == 1) digitalWrite (GLed, LOW); if (DoorState == HIGH && DoorFlag == 1) (DoorFlag = 0; ล่าช้า (100); ) // กำลังประมวลผลเซ็นเซอร์เพิ่มเติม ถ้า (BackDoorState == ต่ำ && BackDoorFlag == 0) ( BackDoorFlag = 1; ล่าช้า (100); ถ้า (LedOn == 1) digitalWrite (GLed, LOW); Alarm (); ) ถ้า (BackDoorState == สูง && BackDoorFlag = = 1)( BackDoorFlag = 0; ล่าช้า (100); ) ) ...

และอีกอย่างหนึ่ง:
1. ควรใช้ไดโอดที่ได้รับการจัดอันดับสำหรับกระแส 2 A เนื่องจากโมดูลมีกระแส 1 A และเรายังจำเป็นต้องจ่ายไฟให้กับ Arduino และโมเด็มด้วยบางสิ่งบางอย่าง อินสแตนซ์นี้ใช้ไดโอด 1N4007 หากล้มเหลว ให้แทนที่ด้วยไดโอด 2 A
2. ฉันใช้ตัวต้านทานทั้งหมดสำหรับ LED ที่ 20 kOhm เพื่อไม่ให้ส่องสว่างทั่วทั้งทางเดินในตอนกลางคืน
3. ฉันยังวางตัวต้านทาน 20 kOhm ไว้บนเซ็นเซอร์กกระหว่างพิน GND และพิน D6

นั่นคือทั้งหมดที่สำหรับตอนนี้. ขอขอบคุณสำหรับความสนใจของคุณ! :)

ฉันกำลังวางแผนที่จะซื้อ +204 เพิ่มในรายการโปรด ฉันชอบรีวิว +112 +243

คุณยังสามารถส่งข้อความ SMS ได้ สิ่งที่คุณต้องการคือโมดูล Arduino GSM/GPRS พิเศษ SIM900 บอร์ดขยายนี้เหมาะสำหรับบอร์ด Arduino UNO, MEGA และ Leonardo ทั่วไป ด้วยความช่วยเหลือนี้ คุณสามารถสร้างโปรเจ็กต์ต่างๆ ได้มากมายโดยใช้อินเทอร์เน็ต GPRS หรือการเข้าถึงเครือข่าย GSM มันจะทำงานได้ทุกที่ที่มีเครือข่ายมือถือ เมื่อใช้โมดูลนี้ คุณสามารถสร้างระบบเตือนภัย GSM ซึ่งจะให้การป้องกันที่ดีเยี่ยมแก่บ้านของคุณเมื่อใช้ร่วมกับระบบกล้องวงจรปิด

โมดูลนี้อนุญาตให้คุณใช้เครือข่ายมาตรฐาน GSM 850, GSM 900, GSM 1800, GSM 1900 และรองรับโปรโตคอล TCP พร้อมการเข้าถึงเครือข่าย GPRS

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

คุณสมบัติของการเชื่อมต่อบอร์ด GSM กับบอร์ด Arduino Leonardo และ Arduino Mega

บอร์ดที่มีส่วนขยาย GSM ทำงานร่วมกับ Arduino ได้โดยตรงด้วยไลบรารี Software Serial ด้วยการตั้งค่ามาตรฐาน พินดิจิทัลหมายเลข 2 และหมายเลข 3 เชื่อมต่อกันเพื่อโต้ตอบกับ Arduino การตั้งค่าเหล่านี้เหมาะสำหรับ Arduino Uno แต่ต้องทำการแก้ไขเพื่อให้ชิลด์ทำงานได้อย่างถูกต้องบน Arduino Leonardo หรือ Arduino Mega

พิน GSM_TX หรือที่เรียกว่าพิน #2 บนบอร์ดส่วนขยาย จะส่งข้อมูลไปยัง Arduino หากต้องการทราบอย่างแน่ชัดว่าจำเป็นต้องอ่านข้อมูลในช่วงเวลาใด Arduino จะใช้กลไกการขัดจังหวะ: เมื่อระดับสัญญาณดิจิทัลเปลี่ยนไป การขัดจังหวะที่สอดคล้องกันจะเกิดขึ้นในพินนี้ อย่างไรก็ตาม บน Arduino Leonardo และ Arduino Mega พิน #2 ไม่รองรับการขัดจังหวะ

เพื่อให้โล่ทำงานได้ตามปกติบน Arduino Mega หรือ Leonardo ไม่จำเป็นต้องเปลี่ยนรหัสโปรแกรมเลย ไลบรารีจะเปลี่ยนหมายเลขพิน Arduino RX เมื่อเลือกรุ่นที่เหมาะสมในเมนู "เครื่องมือ" ของสภาพแวดล้อมการพัฒนา .

อาร์ดูโน เลโอนาร์โด


เพื่อให้ทำงานได้อย่างถูกต้องกับ Leonardo ห้องสมุด GSM จะใช้พินดิจิทัลหมายเลข 8 ในการดำเนินการนี้ พินดิจิทัลหมายเลข 2 และหมายเลข 8 จะต้องเชื่อมต่อกับตัวนำบนบอร์ดขยาย GSM

ที่ด้านหลังของบอร์ด GSM คุณต้องงอพินที่ตรงกับพินหมายเลข 2 ไปด้านข้างเพื่อไม่ให้สัมผัสกับ Arduino Leonardo

อาร์ดูโน่ เมก้า2560


ไลบรารี GSM สำหรับการทำงานที่ถูกต้องกับ Mega ใช้พินดิจิทัลหมายเลข 10 บนบอร์ดขยาย GSM จำเป็นต้องลัดวงจรพินดิจิทัลหมายเลข 2 และหมายเลข 10 ด้วยตัวนำเช่นเดียวกับ Arduino Leonardo อย่าลืมงอหน้าสัมผัสพินที่ตรงกับพินหมายเลข 2 ที่ด้านหลังของบอร์ด GSM ไปด้านข้าง เพื่อไม่ให้สัมผัสกับ Arduino Mega



มีคำถามหรือไม่?

แจ้งการพิมพ์ผิด

ข้อความที่จะส่งถึงบรรณาธิการของเรา: