Professional Documents
Culture Documents
KHOA ĐIỆN TỬ
Tên chủ đề: Xây dựng hệ thống truyền thông không dây di động dùng
modul SIM 808 thực hiện các chức năng : Giám sát, điều khiển truyền/
nhận thông tin sử dụng công nghệ Bluetooth, nhắn tin SMS , thoại song
công, GPS.
Hà Nội, 11/2023
2
MỤC LỤC
CHƯƠNG 1 THÔNG SỐ KỸ THUẬT..................................................................
1. Thông số kỹ thuật.......................................................................................
1.1 Modul SIM 808............................................................................................
1.1.1ĐẶC TÍNH KỸ THUẬT.........................................................................6
1.1.2GSM/GPRS..............................................................................................6
1.1.3GPS..........................................................................................................7
2.1.3Code dùng phần mềm Arduino kết nối với sim 808...............................11
2.1.5Khảo sát, ghi nhận tham số phân tích hiệu năng hệ thống truyền thông
14
2.2 Kết nối module sim 808 với máy tính để định vị vệ tinh trên module
SIM808 15
2.2.1Sơ đồ đi dây...........................................................................................15
2.2.3Code dùng phần mềm Arduino kết nối với sim 808..............................16
2.2.5Khảo sát, ghi nhận tham số phân tích hiệu năng hệ thống truyền thông
20
2.3 Kết nối module sim 808 với máy tính để gọi điện sử dụng bàn phím 4x4
20
3
2.3.3Code dùng phần mềm Arduino kết nối với sim 808 và bàn phím 4x4. .21
2.3.5Khảo sát, ghi nhận tham số phân tích hiệu năng hệ thống truyền thông
25
4
1. Tên chủ đề: Xây dựng hệ thống truyền thông không dây di động dùng module
SIM808 thực hiện các chức năng: giám sát, điều khiển truyền/ nhận thông tin sử
dụng công nghệ nhắn tin SMS, thoại song công, GPS.
2.1. Phân tích yêu cầu công nghệ truyền thông không dây theo tiêu chuẩn được áp
dụng.
2.2. Thiết kế, lắp ráp, khảo sát, hiệu chỉnh hệ thống truyền thông có giám sát, điều
2.3. Báo cáo kỹ thuật về vận hành, khảo sát hiệu năng hoạt động của hệ thống.
3. Sản phẩm:
3.1. Hoàn thành công việc xây dựng sơ đồ khối kết nối, kết nối, khảo sát và ghi lại
số
liệu của các nội dung trong mục 1 theo đúng các dưới sự hướng dẫn của giảng viên.
3.2. Báo cáo thực hành thông qua báo cáo kỹ thuật.
7
III. Yêu cầu bản báo cáo: Trình bày đầy đủ các nội dung, bao gồm:
1. Phân tích yêu cầu công nghệ truyền thông không dây theo tiêu chuẩn được áp
dụng.
2. Thiết kế, xây dựng sơ đồ khối kết nối, kết nối, khảo sát và ghi lại số liệu của các
3. Báo cáo kỹ thuật về vận hành, khảo sát hiệu năng hoạt động của hệ thống.
Module Sim808 là Module GSM/GPS, được xây dựng dựa trên Sim808 của
SIMCOM, hỗ trợ GSM/GPRS với 4 băng tần và công nghệ định vị vệ tinh GPS. Ngoài 2
chức năng chính GSM/GPS, Module Sim808 còn hỗ trợ thêm tính năng Bluetooth.
Module sim808 có GPS với độ nhạy cao với 22 kênh theo dõi và 66 kênh tiếp nhận.
Bên cạnh đó, nó cũng hỗ trợ công nghệ A-GPS, giúp cho việc định vị được chính xác hơn,
ngay cả khi ở thiết bị ở trong nhà.
Module được thiết kế tối ưu, loại bỏ đi như tính năng không cần thiết để giảm giá
thành và phục vụ chủ yếu cho việc giám sát, điều khiển các thiết bị từ xa thông qua
GMS/GPRS/GPS.
1.1.1 ĐẶC TÍNH KỸ THUẬT
Kết nối với Arduino, tương thích với UNO, Leonardo, NUCLEO, XNUCLEO
Tích hợp bộ chuyển đổi USB to UART CP2102
5 Led báo trạng thái hoạt động của shield
Có bộ chuyển nguồn trên mạch, hỗ trợ cả 3.3V và 5V
Khay SIM 1.8V/3V
Tự động phát hiện tốc độ Baud (1200bps ~ 115200bps)
Bluetooth 3.0, hỗ trợ truyền dữ liệu qua Bluetooth
Firmware có thể cập nhật qua USB
Điều khiển thông qua tập lệnh AT (3GPP TS 27.007, 27.005 và cập lệnh AT
SIMCOM mở rộng)
Hỗ trợ bộ công cụ ứng dụng SIM: GSM 11.14 ngắt 99
Điện áp hoạt động: 6 – 12V
Nhiệt độ hoạt động: -40oC ~ 85oC
Nhiệt độ bảo quản: -45oC ~ 90oC
1.1.2 GSM/GPRS
- Dải tần:
9
- Độ nhạy
+ Độ nhạy thu: -165dBm
+ Cold starts: -148dBm
- Thời gian để xác định vị trí lần đầu
+ Cold starts: 30s
+ Hot starts: <1s
+ Warm start: 28s
- Độ chính xác: Vị trí nằm ngang: <2.5m
Vi xử lý (Microcontroller): ATmega328P.
Điện áp hoạt động (Operating Voltage): 5V.
Điện áp đầu vào (Input Voltage): 7-12V (được khuyến nghị là 7-9V).
Chân số (Digital I/O Pins): 14 (bao gồm 6 chân PWM).
Chân vào Analog (Analog Input Pins): 6.
Dòng điện tối đa từ mỗi chân đầu ra (DC Current per I/O Pin): 20 mA.
Dòng điện tối đa từ tất cả các chân đầu ra cộng lại (DC Current for 3.3V Pin): 50
mA.
Bộ nhớ Flash: 32 KB (ATmega328P) - khoảng 0.5 KB được sử dụng cho
bootloader.
SRAM (Static RAM): 2 KB. EEPROM: 1 KB. Tốc độ Clock: 16 MHz.
Giao diện USB: UART TTL (sử dụng cổng COM ảo trên máy tính).
khiển. Khi một phím được nhấn, dòng và cột tương ứng kết nối, tạo ra một đường dẫn điện
trên ma trận, từ đó vi điều khiển có thể xác định phím đã được nhấn.
Dải điện áp hoạt động: Thường là 3.3V hoặc 5V, tùy thuộc vào yêu cầu của mạch
điều khiển. Dòng điện tiêu thụ: Phụ thuộc vào cách bàn phím được kết nối và sử dụng,
nhưng thường là rất nhỏ khi không có phím nào được nhấn. Ứng dụng: Bàn phím 4x4
thường được sử dụng trong các dự án nhúng, điều khiển thiết bị, hoặc các ứng dụng yêu
cầu một giao diện đơn giản với nút nhấn.
Note: thông số chi tiết có thể thay đổi tùy thuộc vào nhà sản xuất và mô hình cụ thể
của bàn phím 4x4.
12
2.1.1 Sơ đồ đi dây
Hình 2.1 Sơ đồ nối dây nối module sim 808 với máy tính để gửi tin nhắn và gọi điện
2.1.2 Hình ảnh thực tế
Note:
Cần cẩn thận ở bước kết nối dây, kiểm tra kỹ trước khi cấp nguồn. Âm dương tránh
cắm ngược sẽ làm cháy module.
13
Không nên nối nguồn dương của arduino với module sim.
2.1.3 Code dùng phần mềm Arduino kết nối với sim 808
#include <SoftwareSerial.h>
SoftwareSerial sim808(11, 10); // Khai báo chân RX, TX của SIM808
void setup() {
Serial.begin(9600); // Baud rate cho cổng serial Arduino
sim808.begin(9600); // Baud rate cho SIM808
// Gửi lệnh AT để kiểm tra kết nối
sim808.println("AT");
delay(1000); // Đợi 1 giây
// Gọi điện thoại đến số điện thoại cụ thể
sim808.println("ATD0XXXXXXXX;"); //Thay số điện thoại bằng số bạn muốn
gọi
delay(5000); // Đợi 5 giây (thời gian để cuộc gọi được thiết lập)
// Gửi lệnh AT để cấu hình chế độ gửi tin nhắn
sim808.println("AT+CMGF=1");
delay(1000);
// Gửi tin nhắn đến số điện thoại cụ thể
sim808.println("AT+CMGS=\"0XXXXXXXXXX\"\r");
delay(1000);
// Nội dung tin nhắn
sim808.println("Hello from Arduino Uno!\r");
delay(1000);
// Ký tự Ctrl+Z để kết thúc tin nhắn
sim808.write(26);
delay(1000);
}
void loop() {
// Bạn có thể đặt bất kỳ tác vụ nào bạn muốn thực hiện ở đây
// Ví dụ: In thông tin GPS vào cổng serial Arduino
sendATCommand("AT+CGNSINF");
14
Xử lý kết quả: Xử lý kết quả trả về từ module SIM808 sau mỗi lệnh AT command.
Bạn cần kiểm tra các thông báo phản hồi để xác định xem lệnh đã được thực hiện thành
công hay không.
Note: Việc sử dụng AT command là một phần quan trọng trong giao tiếp với
module SIM808.
Hình 2.4 Module Sim gọi đến số thuê bao thành công
Note: Nếu sử dụng nhiều hơn 2 cổng COM thì cần kiểm tra kỹ để chọn đúng cổng
COM mạch USB to Board Arduino UNO đang sử dụng.
2.1.5 Khảo sát, ghi nhận tham số phân tích hiệu năng hệ thống truyền thông
Bảng 1 Khảo sát hiệu năng hệ thống truyền thông gọi điện và gửi tin nhắn
Trước khi gọi điện và gửi tin nhắn Sau khi gọi điện và gửi tin nhắn
SIM808 Uno SIM808 Uno
ST T R Vi T R Vi Vou T R Vi T R Vi Vou
T X X n X X n t X X n X X n t
(v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v)
1 5 5 8,9 5 4,7 5 5 4,7 4,8 9 4,7 4,6 5 4,9
2 4,9 4,9 8,9 4,8 5 4,9 4,9 4,6 4,7 8,9 4,6 4,5 5 4,9
3 5 5 9 4,9 5 5 5 4,7 4,7 8,9 4,4 4,4 5 5
TB 5 5 9 4,9 4,9 5 5 4,7 4.7 8,9 4,6 4,5 5 4,9
17
- Khả năng kết nối: thiết bị hoạt động bình thường, thông số kỹ thuật đáp ứng
- Tỷ lệ kết nối thành công: kết nối thành công, hoàn thành bài thực hành, thực hiện
được cuộc gọi và nhắn tin.
- Thời gian đáp ứng ( thời gian trễ): 10s-20s ( thực hiện đúng với code lập trình), thời
gian xử lý yêu cầu tiếp theo là 10s.
2.2 Kết nối module sim 808 với máy tính để định vị vệ tinh trên module
SIM808
2.2.1 Sơ đồ đi dây
Hình 2.5 Sơ đồ đi dây module sim 808 với máy tính để định vị vệ tinh trên module
SIM808
18
// Bạn có thể đặt bất kỳ tác vụ nào bạn muốn thực hiện ở đây
// Ví dụ: In thông tin GPS vào cổng serial Arduino
sendATCommand("AT+CGNSINF");
delay(10000); // Đợi 10 giây trước khi gửi lệnh tiếp theo
}
void sendATCommand(String command) {
sim808.println(command);
delay(500); // Đợi một chút để cho mô-đun SIM808 xử lý lệnh
while (sim808.available()) {
char c = sim808.read();
Serial.print(c); // In phản hồi từ mô-đun SIM808 ra cổng serial Arduino
}
}
2.2.4 Vận hành hệ thống truyền thông
Hình 2.7 Hình ảnh kết quả trả về những giây đầu tiên
Khi module sim bắt đầu hoạt động những dữ liệu trả về đầuu tiên trong 1-2 phút đầu
có thể không chính xác.
20
Bật GPS:
Sử dụng lệnh AT command để bật chức năng GPS trên module. Thường thì sử dụng
lệnh như AT+CGPSPWR=1 để bật GPS.
Chờ Định Vị GPS:
Sử dụng lệnh AT command để kiểm tra trạng thái định vị GPS, ví dụ như
AT+CGPSSTATUS? Chờ đến khi module có đủ vệ tinh để xác định vị trí.
Đọc Dữ Liệu GPS: Sử dụng lệnh AT command để đọc dữ liệu GPS từ module, như
AT+CGPSINF=0 để lấy thông tin vị trí.
Xử Lý Dữ Liệu GPS: Xử lý dữ liệu GPS để lấy thông tin vị trí chi tiết như kinh độ,
vĩ độ, độ cao, v.v.
Hiển Thị Vị Trí: Sử dụng phần mềm định vị vệ tinh để hiển thị và kiểm tra vị trí
được đọc từ module SIM808.
Note:
Cần cài thư viện, trong phần thực hành kết nối module sim 808 với máy tính để định
vị vệ tinh trên module SIM808 cần sử dụng thư viện SoftwareSerial. Nó được sử dụng để
tạo các cổng giao tiếp dự phòng (UART) ảo trên các chân số (digital pins) của một bo
mạch Arduino.
Để nhận dữ liệu GPS không cần thiết phải lắp thẻ SIM.
Sử dụng GPS yêu cầu một khu vực có tầm nhìn tốt đối với các vệ tinh, và quá trình
định vị có thể mất một khoảng thời gian tùy thuộc vào điều kiện môi trường.
Một yếu tố rất quan trọng nữa là nguồn điện. Nếu nguồn điện không đủ module sim
cũng sẽ trả về tọa độ không chính xác.
Nếu trong code cho phép thời gian trễ quá ít nó sẽ trả về một đoạn dữ liệu không đầy
đủ hoặc một vị trí cách xa vị trí thực hàng nghìn kilomet.
22
2.2.5 Khảo sát, ghi nhận tham số phân tích hiệu năng hệ thống truyền thông
Bảng 2 Khảo sát hiệu năng hệ thống truyền thông GPS
Trước khi vận hành GPS Sau khi vận hành GPS
SIM808 Uno SIM808 Uno
ST T R Vi T R Vi Vou T R Vi T R Vi Vou
T X X n X X n t X X n X X n t
(v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v)
1 5 5 8,9 5 4,7 5 5 4,8 4,9 9 4,7 4,6 4,9 4,9
2 4,9 4,9 9 4,8 5 4,9 4,9 4,8 4,6 9 4,5 4,5 5 5
3 5 5 9 4,9 5 5 5 4,7 4,7 8,9 4,4 4,3 5 5
TB 5 5 9 4,9 4,9 5 5 4,8 4.7 9 4,5 4,5 5 5
Khả năng kết nối: thiết bị đều hoạt động bình thường, khả năng kết nối tốt.
Tỷ lệ kết nối thành công: kết nốt thành công tuy nhiên kết quả trả về gần đúng với vị
trí thực tế, để khắc phục cần đặt kết nối GPS lên mặt phẳng tiết diện lớn hơn tạo không
gian thu sóng tốt hơn, nguyên nhân khách quan là do thời tiết nên kết quả nhóm thực hành
đã xảy ra sai số 20m-30m so với tòa A1.
Thời gian đáp ứng (thời gian trễ): 5 phút đến 8 phút
2.3 Kết nối module sim 808 với máy tính để gọi điện sử dụng bàn phím 4x4
Kết Nối Bàn Phím 4x4 với Máy Tính : Kết nối bàn phím 4x4 với máy tính, có thể
thông qua các chân GPIO hoặc sử dụng các giao tiếp chuyên dụng như I2C, SPI, hoặc
UART tùy thuộc vào loại bàn phím.
Lập Trình Giao Tiếp với Bàn Phím : Viết chương trình truyền thông giữa máy tính
và bàn phím 4x4 để đọc thông tin từ các phím được nhấn. Điều này có thể thực hiện thông
qua các thư viện hoặc mã nguồn mẫu có sẵn cho ngôn ngữ lập trình đang sử dụng.
Lập Trình Giao Tiếp với Module SIM808 : Viết chương trình để gửi lệnh AT
command từ máy tính đến module SIM808 thông qua cổng serial. Các lệnh này bao gồm
việc thực hiện cuộc gọi, kiểm tra trạng thái, và các chức năng khác.
Gắn Bàn Phím 4x4 để Chọn Số Điện Thoại : Sử dụng bàn phím 4x4 để nhập số điện
thoại mục tiêu để thực hiện cuộc gọi. Xử lý dữ liệu từ bàn phím để xây dựng số điện thoại.
Xử Lý Lệnh Cuộc Gọi : Khi số điện thoại đã được nhập từ bàn phím, sử dụng lệnh
AT command để thực hiện cuộc gọi đến số đó.
Xử Lý Sự Kiện Cuộc Gọi : Lập trình để xử lý sự kiện khi có cuộc gọi được thực hiện
hoặc khi cuộc gọi được kết thúc. Các sự kiện này thường được module SIM808 thông báo
qua cổng serial.
Thử nghiệm hệ thống trong nhiều điều kiện khác nhau để đảm bảo tính ổn định và
độ tin cậy của quá trình gọi điện.
Note : Sử dụng bàn phím 4x4 để nhập số điện thoại là một bước thêm vào quy trình
thông thường của việc gọi điện thoại, cũng cần đảm bảo rằng module SIM808 được cấu
hình đúng để thực hiện cuộc gọi và có tín hiệu sóng điện thoại ổn định.
27
Hình 2.12 Hình ảnh lỗi nếu không thể kết nối tới SIM
Hình 2.13 Hình ảnh cuộc gọi đang được thực hiện
2.3.5 Khảo sát, ghi nhận tham số phân tích hiệu năng hệ thống truyền thông
Bảng 3 Khảo sát hiệu năng hệ thống truyền thông sử dụng bàn phím 4x4
Trước khi vận hành hệ thống truyền thông Sau khi vận hành hệ thống truyền
sử dụng bàn phím 4x4 thông sử dụng bàn phím 4x4
SIM808 Uno SIM808 Uno
ST T R Vi T R Vi Vou T R Vi T R Vi Vou
T X X n X X n t X X n X X n t
(v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v) (v)
1 5 5 8,9 5 4,7 5 5 4,6 4,6 9 4,6 4,4 4,9 5
2 4,9 4,9 9 4,8 5 4,9 4,9 4,5 4,6 9 4,4 4,4 4,9 4,9
3 5 5 9 4,9 5 5 5 4,7 4,7 9 4,4 4,3 5 5
TB 5 5 9 4,9 4,9 5 5 4,6 4.6 9 4,5 4,4 4,9 5
28
-Khả năng kết nối: thiết bị hoạt động bình thường, thông số kỹ thuật đủ để đáp ứng
thực hành.
-Tỷ lệ kết nối thành công: kết nối thành công, hoàn thành bài thực hành, thực hiện
gọi bằng bàn phím thành công.
-Thời gian đáp ứng ( thời gian trễ): 10s-20s ( thực hiện đúng với code lập trình)
Hình 2.14 Máy đo sóng khi kết nối module SIM và Arduino
29