Cảm biến không dây để báo động trên arduino. Tạo báo động an ninh bằng cảm biến chuyển động dựa trên Arduino và cảm biến hồng ngoại

Cảm biến không dây để báo động trên arduino. Tạo báo động an ninh bằng cảm biến chuyển động dựa trên Arduino và cảm biến hồng ngoại

Chúc một ngày tốt lành :) Hôm nay chúng ta sẽ nói về báo thức. Thị trường dịch vụ có rất nhiều công ty và tổ chức lắp đặt và bảo trì hệ thống an ninh. Các công ty này cung cấp cho người mua nhiều lựa chọn về hệ thống báo động. Tuy nhiên, giá thành của chúng không hề rẻ. Nhưng một người không có nhiều tiền cá nhân để chi cho hệ thống báo động an ninh thì nên làm gì? Tôi nghĩ kết luận tự nó đã gợi ý - LÀM báo thức của họ bàn tay. Bài viết này cung cấp một ví dụ về cách bạn có thể tạo mã của riêng mình hệ thống an ninh sử dụng bo mạch Arduino uno và một số cảm biến từ tính.

Có thể tắt hệ thống bằng cách nhập mật khẩu từ bàn phím và nhấn nút ‘ * ‘. Nếu bạn muốn thay đổi mật khẩu hiện tại, bạn có thể thực hiện việc này bằng cách nhấn phím ‘ B‘, và nếu muốn bỏ qua hoặc gián đoạn thao tác, bạn có thể thực hiện việc này bằng cách nhấn phím ‘#’. Hệ thống có còi để phát nhiều âm thanh khác nhau khi thực hiện một thao tác cụ thể.

Hệ thống được kích hoạt bằng cách nhấn nút 'A'. Hệ thống cho 10 giây để rời khỏi phòng. Sau 10 giây trôi qua, báo thức sẽ được kích hoạt. Số lượng cảm biến từ tính sẽ phụ thuộc vào bạn mong muốn riêng. Dự án bao gồm 3 cảm biến (cho hai cửa sổ và một cửa ra vào). Khi cửa sổ mở ra, hệ thống sẽ được kích hoạt và tín hiệu báo động từ còi sẽ được kích hoạt. Hệ thống có thể bị vô hiệu hóa bằng cách nhập mật khẩu. Khi cửa mở, báo động cho người vào 20 giây để nhập mật khẩu. Hệ thống sử dụng cảm biến siêu âm có thể phát hiện chuyển động.

Video hoạt động của thiết bị

thủ côngĐược thực hiện cho mục đích thông tin/giáo dục. Nếu bạn muốn sử dụng nó ở nhà, bạn sẽ cần phải sửa đổi nó. Đặt bộ điều khiển trong vỏ kim loại và bảo vệ đường dây điện khỏi những hư hỏng có thể xảy ra.

Hãy bắt đầu nào!

Bước 1: Chúng ta sẽ cần gì?

  • Bảng mạch Arduino uno;
  • màn hình LCD có độ tương phản cao 16×2;
  • bàn phím 4x4;
  • chiết áp 10 ~ 20kΩ;
  • 3 cảm biến từ tính (hay còn gọi là công tắc sậy);
  • 3 đầu nối vít 2 chân;
  • cảm biến siêu âm HC-SR04;

Nếu bạn muốn xây dựng một hệ thống mà không cần sử dụng Arduino, bạn cũng sẽ cần những thứ sau:

  • Đầu nối DIP cho atmega328 + vi điều khiển atmega328;
  • bộ cộng hưởng thạch anh 16 MHz;
  • 2 chiếc. Gốm sứ 22pF, 2 chiếc. tụ điện 0,22uF;
  • 1 chiếc. điện trở 10kOhm;
  • Giắc cắm nguồn DC;
  • bảng bánh mì;
  • nguồn điện 5V;

Và một hộp để đóng gói tất cả vào!

Công cụ:

  • Thứ gì đó để cắt hộp nhựa;
  • Súng bắn keo nóng;
  • Khoan/tuốc nơ vít.

Bước 2: Mạch báo động

Sơ đồ kết nối khá đơn giản.

Làm rõ nhỏ:

LCD có độ tương phản cao:

  • Pin1 - Vdd tới GND;
  • Pin2 - Vss đến 5V;
  • Pin3 - Võ (đến cực trung tâm của chiết áp);
  • Pin4 - RS tới chân Arduino 8;
  • Chân 5 - RW tới GND;
  • Pin6 - EN đến chân Arduino 7;
  • Pin11 - D4 đến chân Arduino 6;
  • Pin12 - D5 đến chân Arduino 5;
  • Pin13 - D6 đến chân Arduino 4;
  • Pin14 - D7 đến chân Arduino 3;
  • Chân 15 - Vee (ở đầu bên phải hoặc bên trái của chiết áp).

Bàn phím 4x4:

Từ trái sang phải:

  • Chân Arduino Pin1 đến A5;
  • Chân Pin2 đến A4 của Arduino;
  • Chân Pin3 đến A3 của Arduino;
  • Chân Pin4 đến A2 của Arduino;
  • Chân 5 đến chân Arduino 13;
  • Pin6 đến chân Arduino 12;
  • Pin7 đến chân Arduino 11;
  • Pin8 đến chân Arduino 10.

Bước 3: Phần sụn

Bước này trình bày mã được sử dụng bởi !

Tải xuống plugin codebender. Nhấp vào nút "Chạy" trong Arduino và flash bảng của bạn bằng chương trình này. Đó là tất cả. Bạn vừa lập trình Arduino của mình! Nếu bạn muốn thay đổi mã, hãy nhấp vào nút "Chỉnh sửa".

Lưu ý: Nếu bạn không sử dụng Codebender IDE để lập trình Bo mạch Arduino, bạn sẽ cần cài đặt thêm các thư viện trong Arduino IDE.

Bước 4: Tạo bảng điều khiển của riêng bạn

Sau khi lắp ráp và thử nghiệm thành công dự án mới dựa trên Arduino uno, bạn có thể bắt đầu tạo bảng mạch của riêng mình.

Một số lời khuyên để hoàn thành công việc thành công hơn:

  • Điện trở 10kΩ phải được kết nối giữa chân 1 (đặt lại) và chân 7 (Vcc) của vi điều khiển Atmega328.
  • Tinh thể 16 MHz phải được kết nối với chân 9 và 10, được đánh dấu XTAL1 và XTAL2
  • Kết nối mỗi dây dẫn của bộ cộng hưởng với tụ điện 22pF. Kết nối tụ điện tự do với chân 8 (GND) của vi điều khiển.
  • Đừng quên kết nối đường dây điện ATmega328 thứ hai với nguồn điện, chân 20-Vcc và 22-GND.
  • Thông tin bổ sung về các chân của vi điều khiển có thể được tìm thấy trong hình ảnh thứ hai.
  • Nếu bạn định sử dụng nguồn điện có điện áp cao hơn 6V, bạn phải sử dụng bộ điều chỉnh tuyến tính LM7805 và hai tụ điện điện phân 0,22uF, nên được gắn ở đầu vào và đầu ra của bộ điều chỉnh. Nó quan trọng! Không cung cấp nhiều hơn 6V cho bo mạch!!! Nếu không, bạn sẽ đốt cháy bộ vi điều khiển Atmega và màn hình LCD.

Bước 5: Đặt mạch vào thùng máy

Trong thập kỷ qua, trộm ô tô đã chiếm một trong những vị trí quan trọng nhất trong cơ cấu tội phạm trên thế giới. Điều này không phải do mức độ nghiêm trọng cụ thể của loại trộm cắp này so với tổng số tội phạm, mà là do mức độ nghiêm trọng của thiệt hại gây ra do giá ô tô cao. Hiệu quả yếu kém của các biện pháp chống trộm xe được thực hiện vào cuối những năm 90 đã dẫn đến việc thành lập các nhóm ổn định chuyên thực hiện các tội ác này và sở hữu tính năng đặc biệt tội phạm có tổ chức; Có lẽ bạn đã từng nghe đến thuật ngữ "kinh doanh ô tô đen". Đội xe ô tô của các nước châu Âu hàng năm thiếu ≈ 2% số ô tô trở thành đối tượng của các cuộc tấn công tội phạm. Vì vậy, tôi nảy ra ý tưởng tạo báo động GSM cho ô tô của mình dựa trên Arduino Uno.

Hãy bắt đầu nào!

Chúng ta sẽ thu thập từ đâu?

Chúng ta cần chọn trái tim của hệ thống của chúng ta. Theo tôi, không có gì tốt hơn Arduino Uno để truyền tín hiệu như vậy. Tiêu chí chính là có đủ số lượng “chân” và giá cả.


Các tính năng chính của Arduino Uno

Vi Điều Khiển - ATmega328
Điện áp hoạt động - 5 V
Điện áp đầu vào (khuyến nghị) - 7-12 V
Điện áp đầu vào (giới hạn) - 6-20 V
Đầu vào/Đầu ra kỹ thuật số - 14 (6 trong số đó có thể được sử dụng làm đầu raPWM)
Đầu vào tương tự - 6
Dòng điện không đổi qua đầu vào/đầu ra - 40 mA
Dòng điện không đổi cho đầu ra 3,3V - 50mA
Bộ nhớ flash - 32 KB (ATmega328) trong đó 0,5 KB được sử dụng cho bộ nạp khởi động
RAM - 2 KB (ATmega328)
EEPROM - 1 KB (ATmega328)
Tần số đồng hồ - 16 MHz


Phù hợp!

Bây giờ bạn cần chọn mô-đun GSM, vì hệ thống báo động của chúng tôi phải có khả năng thông báo cho chủ xe. Vì vậy, bạn cần phải google nó... Đây, một cảm biến tuyệt vời - SIM800L, kích thước đơn giản là tuyệt vời.


Tôi nghĩ và đặt hàng từ Trung Quốc. Tuy nhiên, mọi thứ hóa ra không hề màu hồng như vậy. Cảm biến chỉ từ chối đăng ký thẻ SIM trên mạng. Mọi thứ có thể đã được thử - kết quả là con số không.
Thành lập người tốt người đã cung cấp cho tôi nhiều hơn điều tuyệt vời- Khiên Sim900. Bây giờ đây là một điều nghiêm trọng. Shield có cả micrô và giắc cắm tai nghe, khiến nó trở thành một chiếc điện thoại hoàn chỉnh.


Các tính năng chính của Sim900 Shield

4 chuẩn tần số hoạt động 850/ 900/ 1800/ 1900 MHz
GPRS đa khe loại 10/8
Trạm di động GPRS loại B
Tuân thủ GSM giai đoạn 2/2+
Loại 4 (2 W @850/ 900 MHz)
Lớp 1 (1 W @ 1800/1900 MHz)
Điều khiển bằng lệnh AT (GSM 07.07, 07.05 và lệnh AT mở rộng SIMCOM)
Tiêu thụ điện năng thấp: 1,5mA (chế độ ngủ)
Phạm vi nhiệt độ hoạt động: -40°C đến +85°C


Phù hợp!

Được rồi, nhưng bạn cần lấy số đo từ một số cảm biến để thông báo cho chủ sở hữu. Nếu ô tô bị kéo đi thì vị trí của ô tô rõ ràng sẽ thay đổi trong không gian. Hãy lấy một gia tốc kế và một con quay hồi chuyển. Tuyệt vời. Được rồi, bây giờ chúng tôi đang tìm kiếm một cảm biến.

Tôi nghĩ rằng GY-521 MPU6050 chắc chắn sẽ phù hợp. Hóa ra nó còn có cảm biến nhiệt độ. Chúng ta cũng nên sử dụng nó, sẽ có một “tính năng sát thủ” như vậy. Giả sử chủ nhân của chiếc ô tô đã đậu nó dưới nhà và rời đi. Nhiệt độ bên trong xe sẽ thay đổi “êm dịu”. Điều gì xảy ra nếu kẻ đột nhập cố gắng đột nhập vào xe? Ví dụ, anh ta sẽ có thể mở cửa. Nhiệt độ trong xe sẽ bắt đầu thay đổi nhanh chóng khi không khí trong cabin bắt đầu hòa quyện với không khí môi trường. Tôi nghĩ nó sẽ hoạt động.


Các tính năng chính của GY-521 MPU6050

Con quay hồi chuyển 3 trục + mô-đun gia tốc 3 trục GY-521 trên chip MPU-6050. Cho phép bạn xác định vị trí và chuyển động của một vật thể trong không gian, vận tốc góc khi quay. Nó cũng có một cảm biến nhiệt độ tích hợp. Nó được sử dụng trong nhiều loại máy bay trực thăng và mô hình máy bay; một hệ thống ghi lại chuyển động cũng có thể được lắp ráp dựa trên các cảm biến này.

Chip - MPU-6050
Điện áp cung cấp - từ 3,5V đến 6V (DC);
Phạm vi con quay hồi chuyển - ±250 500 1000 2000°/s
Phạm vi gia tốc - ±2±4±8±16g
Giao diện truyền thông - I2C
Kích thước - 15x20 mm.
Trọng lượng - 5 g


Phù hợp!

Một cảm biến rung cũng sẽ có ích. Đột nhiên, họ sẽ cố gắng mở xe bằng “vũ lực”, hoặc trong bãi đậu xe, một chiếc xe khác sẽ chạm vào xe của bạn. Hãy lấy cảm biến rung SW-420 (có thể điều chỉnh).


Đặc điểm chính của SW-420

Điện áp nguồn - 3,3 - 5V
Tín hiệu đầu ra - Cao/Thấp kỹ thuật số (thường đóng)
Cảm biến được sử dụng - SW-420
Bộ so sánh được sử dụng là LM393
Kích thước - 32x14 mm
Ngoài ra - Có điện trở điều chỉnh.


Phù hợp!

Vặn mô-đun thẻ nhớ SD. Chúng tôi cũng sẽ viết một tập tin nhật ký.


Đặc điểm chính của mô-đun thẻ nhớ SD

Mô-đun này cho phép bạn lưu trữ, đọc và ghi vào thẻ SD dữ liệu cần thiết cho hoạt động của thiết bị dựa trên bộ vi điều khiển. Việc sử dụng thiết bị có liên quan khi lưu trữ các tệp từ hàng chục megabyte đến hai gigabyte. Bo mạch chứa hộp đựng thẻ SD, bộ ổn định nguồn thẻ, đầu nối cho giao diện và đường dây nguồn. Nếu bạn cần làm việc với âm thanh, video hoặc dữ liệu thể tích khác, chẳng hạn như ghi nhật ký sự kiện, dữ liệu cảm biến hoặc lưu trữ thông tin máy chủ web, thì mô-đun thẻ nhớ SD cho Arduino sẽ giúp bạn có thể sử dụng thẻ SD cho những mục đích này. Sử dụng mô-đun này, bạn có thể nghiên cứu các tính năng của thẻ SD.
Điện áp cung cấp - 5 hoặc 3,3 V
Dung lượng bộ nhớ thẻ SD - lên tới 2 GB
Kích thước - 46 x 30 mm


Phù hợp!

Và thêm ổ servo, khi các cảm biến được kích hoạt, ổ servo cùng với DVR sẽ quay và quay video ghi lại sự cố. Hãy lấy ổ servo MG996R.


Các tính năng chính của Ổ đĩa servo MG996R

Ổn định và bảo vệ đáng tin cậy từ thiệt hại
- Ổ đĩa kim loại
- Vòng bi hai hàng
- Chiều dài dây 300 mm
- Kích thước 40x19x43mm
- Trọng lượng 55 g
- Góc quay: 120 độ.
- Tốc độ hoạt động: 0,17 giây/60 độ (4,8V không tải)
- Tốc độ hoạt động: 0,13 giây/60 độ (6V không tải)
- Momen khởi động: 9,4kg/cm ở nguồn điện 4,8V
- Momen khởi động: 11kg/cm ở nguồn điện 6V
- Điện áp hoạt động: 4,8 - 7,2V
- Toàn bộ bộ phận truyền động được làm bằng kim loại


Phù hợp!

Chúng tôi thu thập

Có một số lượng lớn bài viết trên Google về việc kết nối từng cảm biến. Và tôi không có mong muốn phát minh ra những chiếc xe đạp mới, vì vậy tôi sẽ để lại liên kết đến các phương án đơn giản và hiệu quả.

Chào buổi chiều Một lần nữa, một bài đánh giá đa dạng về linh kiện điện tử Trung Quốc, như thường lệ, một chút về mọi thứ, tôi sẽ cố gắng ngắn gọn hơn nhưng liệu nó có hiệu quả không? Thế là gặp nhau báo động GSM có giá lên tới 700 ₽. Hấp dẫn? Xin vui lòng dưới "cắt"!

Bắt đầu nào! Trước khi bắt đầu, tôi khuyên bạn nên xem xét điều này, ít thành phần hơn và quyền tự chủ cao hơn. Vì vậy, “thông số kỹ thuật”, các yêu cầu cơ bản về tín hiệu:

1) Thông báo khi cảm biến được kích hoạt.
2) Trong trường hợp mất điện, phải cung cấp một số quyền tự chủ.
3) Kiểm soát báo động qua SMS và cuộc gọi.

Do quá trình tạo cảnh báo mất vài tháng và một số người bán không còn bán các thành phần đã mua từ họ nữa nên các liên kết sẽ được cập nhật tới các sản phẩm từ những người bán khác có số lượng sản phẩm bán ra tối đa hoặc gần với mức tối đa Và giá tốt nhất. Giá trong bài đánh giá là giá hiện tại kể từ ngày nó được viết.

Danh sách những gì bạn sẽ cần:

Danh sách thay đổi

GSM_03_12_2016-14-38.hex- Đã sửa lỗi hoạt động của thiết bị với modem M590.
GSM_05_12_2016-13-45.hex- thêm lệnh memtest console, tối ưu hóa việc sử dụng RAM.
GSM_2016_12_06-15-43.hex- thêm đầu ra của kết quả lệnh vào bảng điều khiển, tối ưu hóa bộ nhớ. Chiếm dụng: 49% SRAM.
GSM_2016_12_07-10-59.hex- bây giờ số điện thoại đã được thêm và xóa một cách chính xác. Bận: 49% SRAM, 74% Bộ nhớ Flash.
GSM_2016_12_07-15-38.hex- thêm khả năng kết nối cảm biến chuyển động, được kết nối với chân A0 (trong trường hợp này, chân A0 được sử dụng làm chân kỹ thuật số). Đã thêm lệnh SMS PIROn, PIRTắt. Bận: 48% SRAM, 76% bộ nhớ Flash.
GSM_2016_12_08-13-53.hex- Bây giờ sau thực hiện thành công lệnh không gửi tin nhắn SMS phản hồi, thiết bị sẽ nhấp nháy đèn LED màu xanh lam một lần. Bây giờ, sau khi thực hiện sai lệnh mà không gửi tin nhắn SMS phản hồi, thiết bị sẽ nhấp nháy đèn LED màu xanh lam hai lần. Bây giờ, sau khi khởi tạo các thông số của thiết bị, nếu bật chế độ “im lặng” (SendSms = 0), thiết bị sẽ nhấp nháy đèn LED màu xanh lam thường xuyên trong 2 giây. Đã sửa lỗi khiến số này không phải lúc nào cũng bị xóa khỏi bộ nhớ bằng lệnh DeletePhone. Bận: 48% SRAM, 78% Bộ nhớ Flash.
GSM_2016_12_11-09-12.hex- Đã thêm lệnh console AddPhone và DeletePhone, cú pháp tương tự như lệnh SMS. Tối ưu hóa bộ nhớ. Bận: 43% SRAM, 79% Bộ nhớ Flash.
GSM_2017_01_03-22-51.hex- Hỗ trợ đã được triển khai cho các bộ mở rộng cổng I/O tương tự trên chip PCF8574, để kết nối thêm 8 cảm biến, bao gồm cả công tắc sậy. Tìm kiếm địa chỉ tự động và cài đặt tự động mô-đun. Tên tiêu chuẩn của cảm biến và mức logic phản hồi của chúng được thay đổi bằng lệnh EditSensor. Nội dung của SMS cảnh báo cho cảm biến chính (chân D0) đã được thay đổi: “Báo động! Cảm biến chính! và cảm biến chuyển động (chân A0) “Báo động! Cảm biến PIR! Đã thêm lệnh EditSensor và I2CScan. Chiếm: 66% SRAM, 92% bộ nhớ Flash.
GSM_2017_01_15-23-26.hex- Hỗ trợ modem A6_Mini. Giám sát sự hiện diện của nguồn điện bên ngoài (chân D7). Đã thêm lệnh SMS WatchPowerOn, WatchPowerOff. Đã thêm các lệnh console ListConfig, ListSensor. Bây giờ lệnh SMS EditSensor hoạt động chính xác. Đầu ra của thông tin gỡ lỗi tới màn hình cổng đã giảm đi một chút. Chiếm: 66% SRAM, 95% bộ nhớ Flash.
GSM_2017_01_16-23-54.hex- Bây giờ, trong tin nhắn phản hồi lệnh SMS “Thông tin”, trạng thái của cảm biến chuyển động cũng được báo cáo. Đã sửa lỗi đôi khi gửi tin nhắn SMS trả lời trống. Giờ đây, thiết bị không chỉ thông báo về việc tắt máy mà còn thông báo về việc nối lại nguồn điện bên ngoài. Tất cả các modem bắt đầu ít ồn ào hơn và giờ đây màn hình cổng đã sạch sẽ hơn một chút. Chiếm: 66% SRAM, 95% bộ nhớ Flash.
GSM_2017_02_04-20-23.hex- Đã sửa lỗi “Xem nguồn bật”. Bây giờ, sau khi vô hiệu hóa, “chân báo động” sẽ bị tắt. Bây giờ, sau khi xóa một số, thông tin chính xác sẽ được hiển thị trong bảng điều khiển. Có thể đã sửa lỗi do đôi khi gửi tin nhắn SMS trả lời trống. Bận: 66% SRAM, 90% Bộ nhớ Flash.
GSM_2017_02_14-00-03.hex- Lúc này tin nhắn SMS được gửi theo mặc định, thông số SendSms lại bằng 1. Lúc này, khi các điểm tiếp xúc của cảm biến sậy chính đóng (đóng cửa), thiết bị sẽ nhấp nháy đèn LED màu xanh lam trong 2 giây, báo hiệu hoạt động bình thường của cảm biến. Bận: 66% SRAM, 90% Bộ nhớ Flash.
GSM_2017_03_01-23-37.hex- Lệnh WatchPowerOn đã bị loại bỏ. Đã thêm lệnh bảng điều khiển WatchPowerOff, giống với lệnh SMS. Đã thêm lệnh WatchPowerOn1, WatchPowerOn2. WatchPowerOn1 - giám sát nguồn điện bên ngoài được bật nếu cảnh báo được kích hoạt, WatchPowerOn2 - giám sát nguồn điện bên ngoài luôn được bật. Đã thực hiện chức năng vũ trang và giải giáp thiết bị bên ngoài, các chân A1(D15) và A2(D16) được sử dụng cho việc này. Cảnh báo sẽ tắt/bật khi nó xuất hiện trên chân A1(D15) cấp độ cao+5V hoặc tại chân A2(D16) cấp thấp GND. Chân A1(D15) được kéo lên GND, chân A2(D16) được kéo lên +5V thông qua điện trở 20 (10) kOhm. Đã thêm các lệnh GuardButtonOn và GuardButtonOff. Bây giờ, sau khi kích hoạt, đèn LED màu đỏ sẽ nhấp nháy cho đến khi kiểm tra tính toàn vẹn của mạch công tắc sậy chính. Nếu mạch còn nguyên vẹn, đèn LED màu đỏ sẽ sáng lên. Chiếm: 66% SRAM, 95% bộ nhớ Flash.
GSM_2017_03_12-20-04.hex- Bây giờ bảng điều khiển thậm chí còn trở nên gọn gàng hơn, nhưng nếu chế độ kiểm tra “TestOn” được bật, thông tin bổ sung sẽ được hiển thị trong bảng điều khiển. Đã sửa lỗi “Đã gửi!”; thông tin về việc gửi tin nhắn hiện được hiển thị chính xác trong bảng điều khiển. Đã sửa lỗi "gọi sai liên tục". Bây giờ yêu cầu số dư sẽ hoạt động chính xác trên tất cả các modem. Bận: 67% SRAM, 95% Bộ nhớ Flash.
GSM_2017_04_16-12-00.hex- Đã sửa. Bây giờ các lệnh Thông tin và Tiền sẽ luôn gửi SMS phản hồi. Lệnh GuardButtonOn đã được thay thế bằng lệnh GuardButtonOn1 và GuardButtonOn2. Chiếm: 67% SRAM, 99% bộ nhớ Flash.
GSM_2017_04_21-09-43.hex - không được khuyến nghị sử dụng, chỉ dành cho mục đích thử nghiệm, cảm ơn vì đã xác định lỗi :) - Bây giờ tham số sendms không ảnh hưởng đến việc gửi tin nhắn SMS để giám sát lưới điện. Đã thêm lệnh SMS DelayBeforeGuard chịu trách nhiệm về độ trễ khi kích hoạt, giá trị không thể vượt quá 255 giây. Đã thêm lệnh SMS DelayBeforeAlarm, chịu trách nhiệm trì hoãn việc gửi thông báo và bật “pin báo động” khi cảm biến được kích hoạt; giá trị không được vượt quá 255 giây. Lệnh ClearSMS đã bị xóa, tin nhắn giờ đây sẽ tự động bị xóa khi nhận được. Chiếm: 68% SRAM, 100% bộ nhớ Flash.
GSM_2017_04_22-20-42.hex- Đã sửa nhiều lỗi. Các lệnh ClearSMS lại xuất hiện trong phần sụn. Tối ưu hóa bộ nhớ. Bận: 68% SRAM, 98% Bộ nhớ Flash.
GSM_2017_04_23-17-50.hex- Bây giờ yêu cầu số dư sẽ hoạt động chính xác trên tất cả các modem. Việc kích hoạt và giải giáp với các thiết bị bên ngoài hiện hoạt động chính xác. Tin nhắn phản hồi SMS từ lệnh Thông tin không được để trống. Tối ưu hóa bộ nhớ. Bận: 68% SRAM, 98% Bộ nhớ Flash.
GSM_2017_04_24-13-22.hex- Hiện đang gửi lệnh console tới mô-đun GSM chỉ được thực hiện nếu chế độ kiểm tra được bật. Giờ đây không còn sự phân chia thành lệnh SMS và lệnh bảng điều khiển, tất cả các lệnh hiện có có thể được gửi cả qua SMS và qua bảng điều khiển. Lỗi với lệnh Thông tin có thể đã được sửa. Tối ưu hóa bộ nhớ. Bận: 68% SRAM, 94% Bộ nhớ Flash.
GSM_2017_04_25-20-54.hex- Đã sửa lỗi lệnh ListConfig thay đổi giá trị của sự kiện cuối cùng. Giờ đây, khi nhập lệnh qua bảng điều khiển, các tin nhắn SMS không cần thiết sẽ không được gửi. Lỗi với lệnh Thông tin có thể đã được sửa. Tối ưu hóa bộ nhớ. Bận: 66% SRAM, 94% Bộ nhớ Flash.
GSM_2017_04_30-12-57.hex- Tạm thời kích hoạt đầu ra thông tin bổ sung tới bảng điều khiển khi gửi tin nhắn SMS và tạo phản hồi cho lệnh Thông tin. Lỗi với lệnh Thông tin có thể đã được sửa. Tối ưu hóa bộ nhớ. Chiếm: 66% SRAM, 92% bộ nhớ Flash.
GSM_2017_05_06-11-52.hex- Đã sửa lỗi với chức năng DelayBeforeAlarm. Chiếm: 66% SRAM, 93% bộ nhớ Flash.
GSM_2017_05_23-21-27.hex- Đầu ra thông tin trên bảng điều khiển đã được thay đổi một chút. Đã thêm hỗ trợ cho các mô-đun mở rộng cổng trên PCF8574A với các địa chỉ từ 0x38 đến 0x3f. Đã sửa lỗi c. Bây giờ thiết bị sẽ tự động khởi động lại sau các lệnh FullReset, ResetConfig, ResetPhone và trong trường hợp thực hiện thành công lệnh MemTest. Đã thêm lệnh WatchPowerTime. Bây giờ có thể đặt thời gian sau đó một tin nhắn SMS về việc nguồn điện bên ngoài bị ngắt sẽ được gửi. Bận: 67% SRAM, 94% Bộ nhớ Flash.
GSM_2017_05_26-20-22.hex- Đã sửa lỗi khởi tạo bộ nhớ cảm biến bảng mở rộng. Cú pháp lệnh AddPhone đã được thay đổi. Đã thêm lệnh EditMainPhone. Nguyên lý hoạt động của hệ thống thông báo đã được thay đổi, khi kích hoạt cảm biến, tin nhắn sms sẽ được gửi trước, sau đó sẽ thực hiện cuộc gọi thoại. Tin nhắn sms báo động sẽ được gửi đến các số điện thoại có dấu “S” (SMS). Cuộc gọi thoại sẽ được thực hiện tới các số có dấu “R” (Đổ chuông). Tin nhắn tắt/bật nguồn điện ngoài sẽ được gửi đến các số điện thoại có ký hiệu “P” (Nguồn). Đã thêm lệnh RingTime. Bây giờ có thể đặt thời lượng của cuộc gọi thoại báo động, tham số có thể có giá trị từ 10 đến 255 giây. Giờ đây, lệnh RingOn/RingOff trên toàn cầu sẽ bật/tắt thông báo bằng cuộc gọi thoại. Đã thêm lệnh ResetSensor. Chiếm: 68% SRAM, 99% bộ nhớ Flash.
GSM_2017_06_02-17-43.hex- Tham số “I” (Thông tin) đã được thêm vào lệnh AddPhone và EditMainPhone, có nhiệm vụ gửi thông báo SMS về việc kích hoạt hoặc vô hiệu hóa thiết bị. Bây giờ sau khi thêm số chính, thiết bị sẽ tự động khởi động lại. Bây giờ bạn có thể nhập các số giống nhau vào bộ nhớ của thiết bị. Khi thêm các số trùng lặp thứ hai và các số tiếp theo, các thuộc tính “M”, “S”, “P” và “I” sẽ tự động bị xóa khỏi chúng. Những số này sẽ được sử dụng cho các cuộc gọi thoại lặp đi lặp lại khi cảm biến được kích hoạt. Đã sửa lỗi đầu ra bảng điều khiển không chính xác sau khi thực hiện lệnh AddPhone; hiện tại thông tin không được hiển thị tự động sau khi thêm số. Đã thêm lệnh Khởi động lại. Chiếm: 69% SRAM, 99% bộ nhớ Flash.
GSM_2017_06_11-00-07.hex- Bây giờ, một lần nữa, khi các điểm tiếp xúc của cảm biến sậy chính đóng (đóng cửa), thiết bị sẽ nhấp nháy với đèn LED màu xanh lam trong 2 giây, cho biết cảm biến hoạt động bình thường, nhưng không tính đến việc thiết bị có được trang bị vũ khí hay không hoặc bị tước vũ khí. Lệnh RingOn/RingOff đã bị loại bỏ. Giờ đây, thiết bị có thể được tắt trong khi có cuộc gọi báo động; bây giờ chúng được thực hiện ở chế độ nền. Chiếm: 69% SRAM, 99% bộ nhớ Flash.
GSM_2017_07_04-21-52.hex- Bây giờ lệnh Tạm dừng không gửi SMS phản hồi. Các lệnh TestOn và TestOff đã bị xóa. Thuộc tính Quản lý đã bị xóa khỏi tất cả các số. Chiếm: 68% SRAM, 96% bộ nhớ Flash.
GSM_2017_07_24-12-02.hex- Đã thêm các lệnh ReedSwitchOn/ReedSwitchOff để theo dõi cảm biến sậy chính, giờ đây nó có thể được bật/tắt giống như cảm biến chuyển động. Đã sửa lỗi trong lệnh Thông tin. Các lệnh TestOn và TestOff lại xuất hiện trong phần sụn. Chiếm: 68% SRAM, 96% bộ nhớ Flash.
GSM_2017_07_26-10-03.hex- Đã thêm lệnh ModemID. Modem chỉ được tự động phát hiện nếu giá trị của tham số này bằng 0. Sau khi đặt giá trị tham số thành 0, thiết bị sẽ tự động khởi động lại. Bận: 68% SRAM, 98% Bộ nhớ Flash.
GSM_2017_08_03-22-03.hex- Bây giờ báo thức có thể điều khiển các thiết bị bên ngoài. Đầu ra analog A3 được sử dụng để điều khiển (D17 được sử dụng làm đầu ra kỹ thuật số). Mức logic đầu ra (+5V hoặc GND) có thể thay đổi, sau khi thay đổi mức thông qua lệnh cài đặt, thiết bị sẽ tự động khởi động lại. Thời lượng của tín hiệu điều khiển thiết bị bên ngoài có thể được thay đổi. Đã thêm các lệnh ExtDeviceLevelLow, ExtDeviceLevelHigh, ExtDeviceTime, Open. Một số thay đổi về logic của các lệnh điều khiển. Tối ưu hóa bộ nhớ. Chiếm: 68% SRAM, 99% bộ nhớ Flash.
GSM_2017_08_10-12-17.hex- Các lệnh SmsOn/SmsOff, ReedSwitchOn/ReedSwitchOff, PIROn/PIROff và mọi thứ liên quan đến chúng đã bị xóa. Lệnh DelayBeforeAlarm đã được thay thế bằng các lệnh mở rộng. Đã thay đổi đầu ra của lệnh Thông tin. Đầu ra của lệnh ListConfig tới bảng điều khiển đã được tối ưu hóa. Giờ đây, bất kỳ cảm biến kỹ thuật số cấp cao hay cấp thấp nào, bao gồm cả công tắc sậy, đều có thể được kết nối với chân D6 và A0. Chân D6 và A0 phải được nối đất (GND) thông qua điện trở 10 (20) kOhm. Nếu cảm biến được đặt ở mức hoạt động thấp (được bật ở chế độ công tắc sậy), thì tính toàn vẹn của mạch sẽ được kiểm tra. Mức logic hoạt động trên các đầu vào D6 và A0 (+5V hoặc GND) có thể thay đổi, sau khi thay đổi mức logic thiết bị sẽ tự động khởi động lại. Đối với mỗi cảm biến (thẻ chính, thẻ thứ hai, thẻ mở rộng PCF), khi được kích hoạt, thời gian cụ thể có thể được đặt, sau đó thông báo sẽ được thực hiện (tin nhắn và/hoặc cuộc gọi thoại). "Cảm biến PIR" đã được đổi tên thành "Cảm biến thứ hai". Đã sửa lỗi hoạt động của bảng mở rộng, lỗi khiến thiết bị luôn thông báo về hoạt động của các cảm biến, bất kể thiết bị có được trang bị vũ khí hay không. Bây giờ bạn có thể chọn chế độ vận hành trong đó thiết bị có thể giám sát các cảm biến của bo mạch mở rộng cả ở chế độ trang bị (GuardOn) và ở chế độ tắt (GuardOff). Đã thêm các lệnh PCFForceOn/PCFForceOff, MainSensorLevelHigh/MainSensorLevelLow/MainSensorLevelOff, SecondSensorLevelHigh/SecondSensorLevelLow/SecondSensorLevelOff, MainDelayBeforeAlarm, SecondDelayBeforeAlarm, PCFDelayBeforeAlarm. Chiếm: 68% SRAM, 99% bộ nhớ Flash.

*Các phiên bản phần sụn tiếp theo bao gồm những thay đổi so với các phiên bản trước.


Cổng Arduino Nano v3 được sử dụng

D4- đầu ra của chân “báo động”; khi cảm biến được kích hoạt, tín hiệu mức cao sẽ được đặt trên chân này
D5- đầu ra nghịch đảo của chân “báo động”; khi cảm biến được kích hoạt, tín hiệu mức thấp sẽ được đặt trên chân này

D6- cảm biến sậy. Bắt đầu từ phiên bản GSM_2017_08_10-12-17.hex, mọi cảm biến kỹ thuật số có mức phản hồi cao hoặc thấp, bao gồm cả công tắc sậy, đều có thể được kết nối với chân D6. Chân D6 phải được kéo xuống đất (GND) thông qua điện trở 10 (20) kOhm.
D7- được kết nối với bộ chia điện áp từ nguồn điện + 5V bên ngoài. Cánh tay trên 2,2 kOhm, cánh tay dưới 3,3 kOhm.

Chia điện áp


D8- Modem TX
D9- Modem RX

D10- dẫn màu đỏ
D11- đèn LED màu xanh
D12- đèn LED màu xanh lá cây

Kết nối ngoại vi:
A0- Cảm biến chuyển động. Bắt đầu từ phiên bản GSM_2017_08_10-12-17.hex, mọi cảm biến kỹ thuật số có mức phản hồi cao hoặc thấp, bao gồm cả công tắc sậy, đều có thể được kết nối với chân A0. Chân A0 phải được kéo xuống đất (GND) thông qua điện trở 10 (20) kOhm.

A1- Đầu vào để điều khiển bên ngoài. Cảnh báo sẽ bật/tắt khi mức +5V cao xuất hiện ở đầu vào.
A2- Đầu vào nghịch đảo cho điều khiển bên ngoài. Cảnh báo sẽ bật/tắt khi mức GND thấp xuất hiện ở đầu vào.

A3- Đầu ra (+5V hoặc GND) có thể định cấu hình để điều khiển các thiết bị bên ngoài. Khi nhận được lệnh điều khiển, giá trị ở đầu ra này sẽ thay đổi tùy thuộc vào giá trị được đặt trong một khoảng thời gian nhất định.

A4- SDA I2C
A5- SLC I2C
, để kết nối thêm 8 cảm biến.


Lệnh điều khiển cho phần mềm hex

Chú ý!Đội ngũ cống hiến in đậm chỉ có thể được thực thi từ số chính vì chúng chịu trách nhiệm về cấu hình thiết bị. Các lệnh khác có thể được thực thi từ các số có thuộc tính “Quản lý”.

SMS - lệnh điều khiển không phân biệt chữ hoa chữ thường:
Thêm số điện thoại- Thêm số điện thoại. Tổng cộng, không thể thêm quá 9 số + 1 số chính, số này sẽ tự động được lưu vào bộ nhớ trong lần đầu tiên bạn gọi đến thiết bị sau khi khôi phục cài đặt gốc bằng lệnh Đặt lại điện thoại hoặc Đặt lại hoàn toàn. Những thứ kia. Người đầu tiên gọi đến máy sau khi khôi phục cài đặt gốc là “chính”, số này được nhập vào ô nhớ đầu tiên và không thể thay đổi hoặc xóa qua SMS. Không thể cộng hai số giống nhau.
Lệnh ví dụ:



Cú pháp lệnh:

Thêm số điện thoại- đội
: - dấu phân cách
5 - ghi vào ô nhớ thứ năm
+71234567890 - số điện thoại
Lên đến phiên bản GSM_2017_05_26-20-22.hex:
a - Thông số “Báo động” - Tin nhắn SMS sẽ được gửi đến các số có thông số này - tin nhắn về việc kích hoạt cảnh báo và tin nhắn về việc kích hoạt hoặc giải giáp.
Bắt đầu từ phiên bản GSM_2017_05_26-20-22.hex:
m - Tham số “Quản lý” - quản lý cảnh báo được bật
s - Thông số “SMS” - một tin nhắn SMS sẽ được gửi khi cảm biến được kích hoạt
r - Thông số “Ring” - cuộc gọi thoại sẽ được thực hiện khi cảm biến được kích hoạt
p - Thông số “Nguồn” - tin nhắn SMS sẽ được gửi khi bật/tắt nguồn điện bên ngoài
i - Tham số “Thông tin” - một tin nhắn SMS sẽ được gửi khi kích hoạt hoặc giải giáp
Nếu thiếu các thông số “m”, “s”, “r”, “p”, “i”, điện thoại sẽ được lưu vào bộ nhớ nhưng không được sử dụng dưới bất kỳ hình thức nào.


XóaĐiện thoại- Xóa số điện thoại.
Lệnh ví dụ:

Cú pháp lệnh:

XóaĐiện thoại - lệnh
: - dấu phân cách
+71234567891 - số điện thoại


Chỉnh sửaĐiện thoại chính- Thay đổi các thông số “s”, “r”, “p”, “i” của điện thoại chính, số này được lưu ở ô nhớ đầu tiên.
Lệnh ví dụ:

Cú pháp lệnh:

EditMainPhone - lệnh
: - dấu phân cách
srpi - tham số


Số dưSố dư- Thay đổi số yêu cầu số dư và xử lý độ dài của phản hồi yêu cầu. Giá trị mặc định cho Beeline: #100#L22.
Lệnh ví dụ:

Cú pháp lệnh:

Số dư - lệnh
: - dấu phân cách
#103# - số yêu cầu số dư
L24 - Độ dài (len) của phản hồi được chuyển tiếp là 24 ký tự, chúng tôi đã loại bỏ thư rác khỏi yêu cầu số dư.


Chỉnh sửaCảm biến- Thay đổi tên cảm biến và mức phản hồi logic. Tổng cộng không thể có nhiều hơn 8 cảm biến bổ sung. Sau khi thay đổi các thông số, thiết bị phải được khởi động lại.
Lệnh ví dụ:
Chỉnh sửaCảm biến:1+Datchik dvizheniya v koridore#h

Cú pháp lệnh:

EditSensor - lệnh
: - dấu phân cách
1 - ghi vào ô nhớ đầu tiên
+ - dải phân cách
Datchik dvizheniya v koridore - tên của cảm biến, không được vượt quá 36 ký tự, kể cả dấu cách.
#h - Dấu hiệu mức logic cao từ cảm biến, khi nhận được tín hiệu này, cảnh báo sẽ được kích hoạt. Nếu thiếu "#h", cảnh báo sẽ được kích hoạt khi nhận được mức logic thấp từ cảm biến.


Giờ ngủ- Thời gian báo thức chuyển sang chế độ ngủ khi nhận được lệnh SMS “Tạm dừng” được tính bằng phút. Giá trị mặc định: 15, không thể nhỏ hơn 1 hoặc lớn hơn 60.
Lệnh ví dụ:

Cú pháp lệnh:

Giờ ngủ - lệnh
: - dấu phân cách
20 - 20 phút “ngủ”.


Báo ĐộngPinThời Gian- Thời gian bật/tắt cảnh báo/chân nghịch đảo được biểu thị bằng giây. Giá trị mặc định: 60, không được nhỏ hơn 1 giây và lớn hơn 43200 giây (12 giờ).
Lệnh ví dụ:

Cú pháp lệnh:

AlarmPinTime - lệnh
: - dấu phân cách
30 - 30 giây để bật/tắt chốt báo động.


Trì hoãn trước khi bảo vệ- Thời gian trước khi kích hoạt thiết bị, sau khi nhận được lệnh tương ứng.
Lệnh ví dụ:

Cú pháp lệnh:

DelayBeforeGuard - lệnh
: - dấu phân cách
25 - 25 giây trước khi kích hoạt


Trì hoãn trước khi báo động- Khoảng thời gian sau đó thông báo SMS “báo động” sẽ được gửi nếu báo động không được tắt trong khoảng thời gian này. Được thay thế bằng các lệnh mở rộng bắt đầu từ phiên bản GSM_2017_08_10-12-17.hex
Lệnh ví dụ:

Cú pháp lệnh:

DelayBeforeAlarm - lệnh
: - dấu phân cách
40 - 40 giây trước khi gửi thông báo "báo động"


XemQuyền LựcThời Gian- Thời gian tính bằng phút sau đó sẽ có tin nhắn SMS báo rằng nguồn điện bên ngoài đã tắt. Nếu nguồn điện bên ngoài được khôi phục trước khi hết thời gian đã đặt, tin nhắn sẽ không được gửi.
Lệnh ví dụ:

Cú pháp lệnh:

WatchPowerTime - lệnh
: - dấu phân cách
5 - 5 phút trước khi gửi tin nhắn SMS


chuông thời gian- Thời lượng của cuộc gọi thoại báo động, tham số có thể có giá trị từ 10 đến 255 giây.
Lệnh ví dụ:

Cú pháp lệnh:

RingTime - lệnh
: - dấu phân cách
40 - 40 thời lượng cuộc gọi sẽ là 40 giây, sau đó thuê bao tiếp theo sẽ được gọi.


ID modem- Buộc cài đặt model modem đang sử dụng. Các giá trị có thể có: 0 - tự động phát hiện modem, 1 - M590, 2 - SIM800l, 3 - A6_Mini.
Lệnh ví dụ:

Cú pháp lệnh:

ModemID - lệnh
: - dấu phân cách
2 - ID modem.


ExtThiết bịThời gian- Số giây mà mức tín hiệu ở đầu ra điều khiển thiết bị bên ngoài sẽ thay đổi.
Lệnh ví dụ:

Cú pháp lệnh:

ExtDeviceTime- lệnh
: - dấu phân cách
5 - 5 giây


ExtThiết bịCấp độThấp- Một thiết bị bên ngoài kết nối với đầu ra A3 được điều khiển ở mức thấp (GND). Đầu ra mặc định sẽ ở mức cao +5V cho đến khi nhận được lệnh điều khiển thiết bị bên ngoài.
ExtThiết bịCấpCao- Một thiết bị bên ngoài kết nối với đầu ra A3 được điều khiển bằng mức tín hiệu cao (+5V). Đầu ra sẽ mặc định ở mức GND thấp cho đến khi nhận được lệnh điều khiển thiết bị bên ngoài.

Đặt lạiCảm biến- thiết lập lại cảm biến mở rộng cổng

Đặt lại cấu hình- đặt lại cài đặt về cài đặt gốc

Đặt lại điện thoại- xóa tất cả khỏi bộ nhớ số điện thoại

Đặt lại hoàn toàn- đặt lại cài đặt, xóa tất cả số điện thoại khỏi bộ nhớ, khôi phục giá trị mặc định của lệnh BalanceNum.

Đổ chuôngBật- bật thông báo bằng cách gọi đến số “chính” được ghi trong ô nhớ đầu tiên khi cảm biến được kích hoạt. Đã xóa bắt đầu từ phiên bản GSM_2017_06_11-00-07.hex
Tắt chuông- tắt thông báo bằng cách đổ chuông khi cảm biến được kích hoạt. Đã xóa bắt đầu từ phiên bản GSM_2017_06_11-00-07.hex

tin nhắn sms trên- bật thông báo SMS khi cảm biến được kích hoạt. Đã xóa bắt đầu từ phiên bản GSM_2017_08_10-12-17.hex
tắt tin nhắn- tắt thông báo SMS khi cảm biến được kích hoạt. Đã xóa bắt đầu từ phiên bản GSM_2017_08_10-12-17.hex

PIROn- kích hoạt xử lý cảm biến chuyển động
PIRTắt- vô hiệu hóa xử lý cảm biến chuyển động

ReedSwitchBật- cho phép xử lý cảm biến sậy chính
ReedTắt- tắt xử lý cảm biến sậy chính

XemPowerOn- kích hoạt điều khiển nguồn điện bên ngoài, một tin nhắn SMS về việc tắt nguồn điện bên ngoài sẽ được gửi với điều kiện hệ thống báo động được trang bị. Đã xóa kể từ phiên bản GSM_2017_03_01-23-37.

XemPowerOn1- kích hoạt điều khiển nguồn điện bên ngoài, một tin nhắn SMS về việc tắt nguồn điện bên ngoài sẽ được gửi với điều kiện hệ thống báo động được trang bị.
XemPowerOn2- bật điều khiển nguồn điện bên ngoài, một tin nhắn SMS về việc tắt nguồn điện bên ngoài sẽ được gửi trong mọi trường hợp

XemTắt Nguồn- tắt điều khiển nguồn điện bên ngoài

Nút Bảo VệBật- Đã bật điều khiển cảnh báo bằng thiết bị bên ngoài hoặc nút. Đã xóa bắt đầu từ phiên bản GSM_2017_04_16-12-00.
Nút Bảo VệTrên1- chức năng thiết lập hoặc loại bỏ bảo vệ bằng thiết bị bên ngoài hoặc nút được bật
Nút Bảo VệOn2- chức năng chỉ sản xuấtđược trang bị bởi các thiết bị bên ngoài hoặc nút được bật; việc giải giáp được thực hiện bằng cách gọi đến thiết bị hoặc sử dụng lệnh SMS.
Nút Bảo VệTắt- điều khiển báo động bằng thiết bị bên ngoài hoặc bằng nút bị vô hiệu hóa

PCForceBật- giám sát liên tục một nhóm tất cả các cảm biến của mô-đun mở rộng
PCFBuộc Tắt- chỉ giám sát một nhóm gồm tất cả các cảm biến mô-đun mở rộng khi thiết bị được trang bị

ChínhCảm biếnMứcCao- thông báo cảnh báo sẽ được gửi khi tín hiệu mức cao (+5 V) xuất hiện ở đầu vào (D6) từ cảm biến
Cảm biến chínhMức độThấp- thông báo cảnh báo sẽ được gửi khi tín hiệu mức thấp (GND) xuất hiện ở đầu vào (D6) từ cảm biến
Cảm biến chínhMức độTắt- vô hiệu hóa xử lý cảm biến đầu vào (D6)

Cảm biến thứ haiMức độCao- thông báo cảnh báo sẽ được gửi khi tín hiệu mức cao (+5 V) xuất hiện ở đầu vào (A0) từ cảm biến
Cảm biến thứ haiMức độThấp- thông báo cảnh báo sẽ được gửi khi tín hiệu mức thấp (GND) xuất hiện ở đầu vào (A0) từ cảm biến
Mức độ cảm biến thứ haiTắt- vô hiệu hóa xử lý cảm biến đầu vào (A0)

ChínhĐộ trễTrướcBáo động- thời gian sau đó, thông báo SMS “báo động” sẽ được gửi khi cảm biến chính (D6) được kích hoạt, nếu cảnh báo chưa được tắt trong khoảng thời gian này. Cú pháp giống như lệnh DelayBeforeAlarm.
Thứ haiĐộ trễTrướcBáo động- thời gian sau đó thông báo SMS “cảnh báo” sẽ được gửi khi cảm biến bổ sung (A0) được kích hoạt, nếu cảnh báo chưa được tắt trong khoảng thời gian này. Cú pháp giống như lệnh DelayBeforeAlarm.
PCFDelayTrướcBáo động- thời gian sau đó thông báo SMS “báo động” sẽ được gửi khi cảm biến bảng mở rộng (PCF8574) được kích hoạt, nếu cảnh báo không được tắt trong khoảng thời gian này. Cú pháp giống như lệnh DelayBeforeAlarm.

GuardOn - cánh tay
GuardOff - loại bỏ bảo vệ

Lệnh mở - điều khiển thiết bị bên ngoài

Thông tin - kiểm tra trạng thái, để trả lời tin nhắn này, một SMS sẽ được gửi cùng với thông tin về số nào đã bật/tắt bảo mật

Tạm dừng - tạm dừng hệ thống trong khoảng thời gian được đặt bởi lệnh thời gian ngủ tính bằng phút; hệ thống không phản hồi với các kích hoạt cảm biến.

TestOn - chế độ kiểm tra được bật, đèn LED màu xanh lam nhấp nháy.
TestOff - chế độ kiểm tra bị tắt.

LedOff - tắt đèn LED chờ.
LedOn - bật đèn LED chờ.

Tiền - yêu cầu số dư.

ClearSms - Xóa tất cả tin nhắn khỏi bộ nhớ

Các lệnh trên bảng điều khiển (tối đa phiên bản GSM_2017_04_24-13-22.hex) - được nhập vào màn hình cổng Arduino IDE:

AddPhone - tương tự như lệnh sms AddPhone

DeletePhone - tương tự như lệnh sms DeletePhone

EditSensor - tương tự như lệnh sms EditSensor

ListPhone - xuất ra cổng giám sát danh sách các điện thoại được lưu trong bộ nhớ

ResetConfig - tương tự như lệnh sms ResetConfig

ResetPhone - tương tự như lệnh sms ResetPhone

FullReset - tương tự như lệnh sms FullReset

ClearSms - tương tự như lệnh sms ClearSms

WatchPowerOn1 - tương tự như lệnh sms WatchPowerOn1
WatchPowerOn2 - tương tự như lệnh sms WatchPowerOn2
WatchPowerOff - tương tự như lệnh sms WatchPowerOff

GuardButtonOn - tương tự như lệnh sms GuardButtonOn. Đã xóa bắt đầu từ phiên bản GSM_2017_04_16-12-00
GuardButtonOn1 - tương tự như lệnh sms GuardButtonOn1
GuardButtonOn2 - tương tự như lệnh sms GuardButtonOn2
GuardButtonOff - tương tự như lệnh sms GuardButtonOff

Memtest - kiểm tra bộ nhớ ổn định của thiết bị; tất cả cài đặt thiết bị sẽ được đặt lại, tương tự như lệnh FullReset.

I2CScan - tìm kiếm và khởi tạo các thiết bị được hỗ trợ trên bus I2C.

ListConfig - hiển thị cấu hình thiết bị hiện tại cho màn hình cổng.

ListSensor - xuất ra màn hình cổng của cấu hình cảm biến hiện tại.

CẬP NHẬT. Khi sử dụng cảm biến chuyển động, loại trừ dương tính giả khi modem đang chạy, giữa ghim GNDA0 Arduino đặt sức đề kháng cảm ơn bạn
AllowPhone = (“70001234501”, “70001234502”, “70001234503”, “70001234504”, “70001234505”) - Các số được phép quản lý bảo mật.
AlarmPhone = ("70001234501", "70001234502") - Số để gửi thông báo SMS khi cảm biến được kích hoạt và thông báo về việc giải giáp hoặc kích hoạt. Số đầu tiên trong danh sách sẽ được gọi khi cảm biến được kích hoạt nếu lệnh RingOn được thực thi, theo mặc định tùy chọn này được bật. Điều này được thực hiện vì tin nhắn sms có thể đến chậm trễ một chút và cuộc gọi sẽ được thực hiện ngay lập tức.

Nếu nhận được cuộc gọi từ số được ủy quyền hoặc tin nhắn SMS có lệnh GuardOn/GuardOff thì tùy thuộc vào tình trạng hiện tại bảo vệ, một tin nhắn SMS về việc kích hoạt hoặc giải giáp sẽ được gửi đến các số được liệt kê trong mảng AlarmPhone, một tin nhắn SMS cũng sẽ được gửi đến số mà cuộc gọi đến.

Khi cảm biến được kích hoạt Tin nhắn SMS được gửi đến tất cả các số từ mảng (danh sách) AlarmPhone và cuộc gọi thoại được thực hiện tới số đầu tiên trong mảng này.

Chỉ báo ánh sáng:
Đèn LED sáng màu đỏ - nó được trang bị vũ khí.
đèn LED sáng lên màu xanh lá- Vô hiệu hóa, bật/tắt bằng lệnh SMS LedOn/LedOff.
Đèn LED nhấp nháy liên tục màu xanh lam - nó cho biết mọi thứ đều ổn với Arduino, bo mạch chưa bị treo, được sử dụng riêng để gỡ lỗi, được bật / tắt bằng lệnh sms TestOn / TestOff.
* Hàm LedTest() có trong mã, nó nhấp nháy với đèn LED màu xanh lam, nó được tạo ra chỉ để giám sát Arduino, nó nhấp nháy - nghĩa là nó đang hoạt động, nó không nhấp nháy - nó bị treo. Vẫn chưa cúp máy :)

Không liên quan!

Kết nối 2 cảm biến trở lên để mở firmware (chỉ áp dụng cho firmware sketch_02_12_2016.ino này)
Để kết nối các cảm biến sậy bổ sung, chúng tôi sử dụng các chân kỹ thuật số miễn phí D2, D3, D5 hoặc D7. Sơ đồ kết nối với cảm biến bổ sung trên D7.

Những thay đổi cần thiết trong phần sụn
... #define DoorPin 6 // Số đầu vào được kết nối với cảm biến chính int8_t DoorState = 0; // Biến lưu trữ trạng thái của cảm biến chính int8_t DoorFlag = 1; // Biến lưu trữ trạng thái của cảm biến chính #define BackDoorPin 7 // Số đầu vào được kết nối với cảm biến bổ sung int8_t BackDoorState = 0; // Biến lưu trữ trạng thái của cảm biến bổ sung int8_t BackDoorFlag = 1; // Biến để lưu trữ trạng thái của cảm biến bổ sung...
void setup() ( ... pinMode(DoorPin, INPUT); pinMode(BackDoorPin, INPUT); ...
... void Detect() ( // Đọc giá trị từ cảm biến DoorState = digitalRead(DoorPin); BackDoorState = digitalRead(BackDoorPin); // Xử lý cảm biến chính if (DoorState == LOW && DoorFlag == 0) ( DoorFlag = 1; độ trễ (100); if (LedOn == 1) digitalWrite(GLed, LOW); Alarm(); ) if (DoorState == HIGH && DoorFlag == 1)( DoorFlag = 0; delay(100); ) // Đang xử lý cảm biến bổ sung if (BackDoorState == LOW && BackDoorFlag == 0) ( BackDoorFlag = 1; delay(100); if (LedOn == 1) digitalWrite(GLed, LOW); Alarm(); ) if (BackDoorState = = CAO && BackDoorFlag == 1)( BackDoorFlag = 0; độ trễ(100); ) ) ...

Và một điều nữa:
1. Tốt hơn là sử dụng điốt định mức cho dòng điện 2 A, vì mô-đun mang dòng điện 1 A và chúng ta vẫn cần cấp nguồn cho Arduino và modem bằng thứ gì đó. Phiên bản này sử dụng điốt 1N4007; nếu hỏng, hãy thay thế chúng bằng điốt 2 A.
2. Tôi đã sử dụng tất cả các điện trở cho đèn LED ở mức 20 kOhm để không chiếu sáng toàn bộ hành lang vào ban đêm.
3. Tôi cũng đặt một điện trở 20 kOhm trên cảm biến sậy giữa chân GND và chân D6.

Đó là tất cả cho bây giờ. Cám ơn vì sự quan tâm của bạn! :)

Mình đang định mua +207 Thêm vào mục yêu thích Tôi thích bài đánh giá +112 +243
lượt xem