Điều khiển thiết bị bằng tin nhắn dùng SIM900A với tập lệnh AT

I. Giới thiệu

Module SIM900a là một giải pháp toàn diện cho việc điều khiển và giám sát thiết bị từ xa. Đại khái là module SIM900A được coi như 1 em nokia 1280 với chức năng nghe gọi, nhắn tin, GPRS,...Sau một thời gian dài gác phím, hôm nay, mình sẽ chia sẻ cách dùng module SIM900a đọc cú pháp tin nhắn gửi đến và điều khiển thiết bị sử dụng tập lệnh AT nhé laugh

Các bạn có thể tham khảo bài viết điều khiển thiết bị bằng tin nhắn dùng thư viện sim900 của anh PhuPOP tại đây

II. Chuẩn bị

III. Kết nối

SIM900A  Arduino
TX 2
RX 3
GND GND

Các bạn sử dụng nguồn riêng 5v-2A và chung GND với Arduino cho module SIM900A V3 nhé :) Nguồn dưới 2A sẽ không đủ điện áp cho module SIM900A chạy, làm cho nó bị reset á :)

IV. Code thoai

String tin_nhan;
#include <SoftwareSerial.h>

SoftwareSerial SIM900(2, 3); // RX, TX

void setup()
{
    pinMode(13, OUTPUT);
    Serial.begin(9600);
    SIM900.begin(2400);
    delay(1000);
    //khởi tạo sim
    SIM900.println("AT+CMGF=1r"); //Lệnh này đưa tin nhắn về dạng text, phải có lệnh này mới đọc, gửi tin nhắn dạng text đc nhé :)
    delay(1000);
    SIM900.println("AT+CNMI=2,2,0,0,0r"); //Hiển thị ngay nếu tin nhắn gửi đến
    delay(1000);

    Serial.println("San sang!!!");
}

void loop()
{
    while (SIM900.available() > 0) {
        char c = SIM900.read(); //Đọc từng ký tự gửi về
        if (c == '#') {
            break;
        } //Nếu phát hiện ký tự "#" thì thoát vòng lặp;
        tin_nhan += c; //Ghép các ký tự thành 1 xâu tin_nhan
    }
    if (tin_nhan.length() > 0) {
        Serial.println(tin_nhan);
        if (tin_nhan == "bat_den") {
            digitalWrite(13, HIGH);
        }
        else if (tin_nhan == "tat_den") {
            digitalWrite(13, LOW);
        }
        tin_nhan = "";
    }
}

V. Kết luận

Bây giờ rút điện thoại ra các bạn soạn tin theo cú pháp đến Số điện thoại của module SIM: " bat_den# ", "tat_den# " để chiêm ngưỡng thành quả nhé :)

Chúc các bạn thành công !!! wink

Youtube: 
lên
14 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Kết nối Raspberry và máy tính qua cổng Serial

Trong bài chia sẻ này, mình sẽ chia sẻ cách kết nối, điều khiển Raspberry Pi 2 qua cổng Serial. Ưu điểm của cách kết nối này là có thể đồng thời cấp nguồn cho Pi của bạn và không cần bàn phím, chuột hay màn hình kết nối và làm việc với Pi. Bạn sẽ cần cài đặt phần mềm mô phỏng thiết bị đầu cuối ( ở đây là Putty) nếu bạn sử dụng Windows, ngoài ra còn cần cài đặt Driver cần thiết. Raspberry Pi được tích hợp sẵn cổng giao tiếp nối tiếp Serial cho phép các thiết bị kết nối tới giao diện điều khiển dòng lệnh, đăng nhập và làm việc như một User. Chúng ta cũng nên tìm hiểu một cách tương tự để kết nối với Pi qua mạng nội bộ sử dụng SSH theo bài viết sau của bác raspi: tại đây

lên
10 thành viên đã đánh giá bài viết này hữu ích.

Tự động chạy chương trình cho raspberry khi khởi động

Khi viết chương trình với raspberry pi, mình thường thắc mắc : làm thế nào để raspberry pi có thể chạy được chương trình...có sẵn trong bộ nhớ, nhưng không có bàn phím, màn hình,... để tương tác với raspberry pi, thì làm sao mà chạy nó cho project được? Vì thế, mình đã tìm kiếm trên mạng, và biết được raspberry pi có một cách để giải quyết vấn đề đó: "Auto Run programming on Boot" Đó chính là: Tự động chạy các chương trình cho raspberry pi khi khởi động. Hôm nay, mình sẽ chia sẻ cho các bạn phương pháp này.

lên
22 thành viên đã đánh giá bài viết này hữu ích.