Tải bản đầy đủ (.docx) (32 trang)

MẠCH đo NHỊP TIM CẢNH báo BẰNG TIN NHẮN SMS dùng PIC16f877a (có code và layout bên dưới)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.11 MB, 32 trang )

ĐỒ ÁN 3

MẠCH ĐO NHỊP TIM CẢNH BÁO
BẰNG TIN NHẮN (SMS)


MỤC LỤC
DANH MỤC CÁC HÌNH ẢNH
DANH MỤC CÁC TỪ VIẾT TẮT
CHƯƠNG 1. TÌM HIỂU LINH KIỆN...............................................................................1
1.1

CẢM BIẾN ĐO NHỊP TIM (PULSE SENSOR)...................................................................1

1.2

VI ĐIỀU KHIỂN PIC 16F877A.....................................................................................2

1.3

MẠCH GSM GPRS GPS SIM808..............................................................................6

1.4

MODULE LM2596......................................................................................................7

1.5

LCD............................................................................................................................8

CHƯƠNG 2. KỸ THUẬT GPS...........................................................................................9


2.1

GIỚI THIỆU VỀ GPS....................................................................................................9

2.2

GPS VỚI SIM808......................................................................................................11

CHƯƠNG 3. THIẾT KẾ MẠCH VÀ THỰC THI PHẦN CỨNG...............................12
3.1

LƯU ĐỒ THỰC THI PHẦN CỨNG................................................................................12

3.2

SƠ ĐỒ NGUYÊN LÝ MẠCH.........................................................................................13

3.3

THỰC THI PHẦN CỨNG..............................................................................................14

CHƯƠNG 4. KẾT LUẬN, ỨNG DỤNG VÀ HƯỚNG PHÁT TRIỂN.......................16
4.1

KẾT LUẬN.................................................................................................................16

4.2

ỨNG DỤNG................................................................................................................16


4.3

HƯỚNG PHÁT TRIỂN.................................................................................................16

TÀI LIỆU THAM KHẢO..................................................................................................17
PHỤ LỤC

........................................................................................................................18


DANH MỤC CÁC HÌNH ẢNH
HÌNH 1-1: PULSE SENSOR...............................................................................................1
HÌNH 1-2: MẶT SAU PULSE SENSOR............................................................................1
HÌNH 1-3: TÍN HIỆU NHỊP TIM.......................................................................................2
HÌNH 1-4: SƠ ĐỒ CHÂN PIC16F877A............................................................................2
HÌNH 1-5: SƠ ĐỒ LOGIC CÁC NGẮT TRONG PIC16F877A....................................5
HÌNH 1-6: SIM808................................................................................................................6
HÌNH 1-7: MODULE LM2596............................................................................................7
HÌNH 1-8: LCD......................................................................................................................8
HÌNH 2-1: CÁC VỆ TINH BAO QUANH TRÁI ĐẤT....................................................9
HÌNH 3-1: SƠ ĐỒ NGUYÊN LÝ......................................................................................13
HÌNH 3-2: MẠCH IN 1......................................................................................................14
HÌNH 3-3: MẠCH IN 2......................................................................................................14
HÌNH 3-4: MẠCH NGOÀI THỰC TẾ............................................................................15

DANH MỤC CÁC TỪ VIẾT TẮT


ADC


Analog-to-digital converter

BRG

Baund Rate Genetator

GPR

General Purpose Register

GPRS

General Packet Radio Service

GPS

Global Positioning System

GSM

Global System for Mobile Communications

I/O

Input/Output

IC

Integrated Circuit


LCD

Liquid Crystal Display

MCU

Micro-controller Unit

PIC

Programmable Intelligent Computer

PSP

Parallel Slave Port

SCI

Serial Communication Interface

SFG

Special Function Register

TTL

Transistor-transistor logic

USART


Universal Synchronous Asynchronous Receiver Transmitter


ĐỒ ÁN 3
Trang 1/28

CHƯƠNG 1. TÌM HIỂU LINH KIỆN
1.1 Cảm biến đo nhịp tim (Pulse Sensor)
Nhịp đập của tim là thông số quan trọng trong việc xây dựng một bài tập thể dục
khoa học. Trước đây, cảm biến nhịp tim chỉ thường xuất hiện trên các thiết bị đắt
tiền như là máy chạy bộ, máy đo trong bệnh viện, smartphone,…v.v… Giờ đây đã
xuất hiện loại cảm biến đo nhịp tim mà chúng ta dễ dàng kết nối với các board
mạch điện tử như Arduino, Raspberry Pi hay các MCU khác.
Cảm biến hoạt động dựa trên một sensor quang đo nhịp tim cùng với bộ khuếch đại
tín hiệu và lọc nhiễu.
Cấu tạo gồm hai thành phần là một đầu phát quang là bóng hồng ngoại (bước sóng
609nm), và một quang trở nhạy với bước sóng ánh sáng mà đầu phát phát ra.

Cảm biến đo nhịp tim hoạt động theo nguyên lí
Hình 1-1: Pulse Sensor

là khi áp chặt mặt cảm biến vào da, nơi có mạch máu chảy (thường là áp vào tai,
đầu ngón tay) đầu phát sẽ phát ra ánh sáng đi vào da. Dòng ánh sáng sẽ khuếch tán
ra xung quanh và một phần đi tới quang trở gần đầu phát. Do bị ép nên lượng máu
phần cảm biến sẽ bị thay đổi, cụ thể khi không có áp lực tim đập, máu sẽ dồn ra
xung quanh, lượng ánh sáng từ đầu phát sẽ về phía đầu thu nhiều hơn khi tim đập,
máu chảy qua nơi có cảm biến áp vào. Sự thay đổi rất nhỏ, nên phần cảm nhận ánh
sáng (quang trở) thường có mạch IC để khuếch đại tín hiệu thay đổi này, đưa về
mạch lọc, đếm hoặc qua mạch ADC để tín toán ra nhịp tim. Tín hiệu đầu ra là
analog dao động theo nhịp đập của tim.


Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)

Hình 1-2: Mặt sau Pulse Sensor


ĐỒ ÁN 3
Trang 2/28

Hình 1-3: Tín hiệu nhịp tim

1.2 Vi điều khiển PIC 16F877A
PIC16F877A thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài 14 bit.
Mỗi lệnh thực thi trong một chu kì xung clock. Tốc độ hoạt động tối đa cho
phép là 20 MHz với một chu kì lệnh là 200ns. Bộ nhớ chương trình 8K x 14
bit, bộ nhớ dữ liệu 368x8 byte RAM và EEPROM với dung lượng 256x8 byte.
Số PORT I/O là 5 với 33 chân I/O.

Hình 1-4: Sơ đồ chân PIC16F877A

Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ và song song PSP gồm các chân
điều khiển RD, WR, CS ở bên ngoài.
Bộ nhớ dữ liệu của PIC16F877A là EEPROM chia thành 4 bốn bank, mỗi bank có
dung lượng 128 byte, gồm các thanh ghi có công dụng đặc biệt SFG nằm ở vùng có
Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)

Hình 1-3: Arduino Uno R3


ĐỒ ÁN 3

Trang 3/28

địa chỉ thấp và các thanh ghi mục đích chung GPR nằm ở vùng còn lại trong bank.
Thanh ghi SFR được sử dụng thường xuyên được đặt ở tất cả bank của bộ nhớ giúp
truy xuất thuận lợi và giảm bớt lệnh chương trình.
Bộ nhớ chương trình của PIC16F877A là flash, có dung lượng 8K word (1word =
14 bit) chứa được 8192 lệnh, dung lượng 1 lệnh sau mã hóa là 1 word tương ứng 14
bit. Khi reset vi điều khiển, bộ đếm chương trình sẽ chỉ đến địa chỉ 0000h. Khi ngắt
thì bộ đếm sẽ chỉ đến địa chỉ 0004h. Bộ nhớ chương trình không gồm bộ nhớ stack
và không được địa chỉ hóa bởi bộ đếm chương trình.
1.2.1 Các cổng xuất nhập của PIC16F877A
-

Port A: Gồm có sáu chân I/O, là các chân hai chiều có thể xuất và nhập đều
được. Thanh ghi TrisA điều khiển chức năng này. Muốn xác lập chức năng
một chân trong Port A là đầu vào thì ta “set” bit điều khiển tương ứng với
chân đó trong thanh ghi TrisA và ngược lại, muốn xác lập chức năng của một
chân trong Port A là đầu ra, ta “clear” bit điều khiển tương ứng với chân đó

-

trong thanh ghi TrisA.
Port B: Gồm 8 chân I/O, thanh ghi TrisB là thanh ghi điều khiển xuất nhập
tương ứng, một số chân của Port B còn được dùng trong quá trình nạp
chương trình cho vi điều khiển với các chế độ nạp khác nhau. Port B còn có
ngắt ngoại vi và timer 0. Port B còn được tích hợp chức năng kéo trở lên điều

-

khiển bởi chương trình.

Port C: Gồm có 8 chân I/O, TrisC là thanh ghi điều khiển xuất nhập. Port C
còn có chức năng của bộ so sánh, timer 1, PWM và các chuẩn giao tiếp I2C,
SPI, USART.

-

Port D: Gồm 8 chân I/O, TrisD là thanh ghi điều khiển xuất nhập, là cổng

-

xuất dữ liệu của chuẩn giao tiếp PSP.
Port E: Gồm 3 chân I/O, TrisE là thanh ghi điều khiển xuất nhập tương ứng,
các chân là ngõ vào analog, còn là các chân điều khiển chuẩn giao tiếp PSP.

1.2.2 Giao tiếp nối tiếp – USART

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 4/28

USART là một trong hai chuẩn giao tiếp kết nối, còn được gọi là giao diện giao
tiếp nối tiếp SCI, được sử dụng để kết nối với các thiết bị ngoại vi, với vi điều khiển
khác hoặc với máy tính. Giao diện SART gồm có 3 dạng:
-

Bất đồng bộ (Asynchronous).
Đồng bộ - Master mode.
Đồng bộ - Slave mode.


Trong đề tài đồ án này, sử dụng UART bất đồng bộ để giao tiếp giữa PIC16F877A
và Sim808.
PIC16F877A được tích hợp sẵn bộ tạo tốc độ baund BRG 8 bit dùng cho giao diện
USART. BRG gồm thanh ghi TXSTA (địa chỉ 98h) dùng để chọn chế độ đồng bộ
hay bất đồng bộ và mức tốc độ baund, thanh ghi RCSTA (địa chỉ 18h) cho phép
cổng nối tiếp hoạt động và cuối cùng là thanh ghi RSBRG (địa chỉ 99h) có chức
năng quyết định tốc độ baund.
1.2.3 Ngắt – Interrup
Hoạt động ngắt của PIC16F877A có 15 nguồn tạo ra được điều khiển bởi thanh ghi
INTCON. Mỗi ngắt có 1 bit điều khiển và cờ ngắt riêng, hoạt động ngắt lệ thuộc
vào bit GIE và các bit điều khiển khác. Bit điều khiển ngắt là RB0/INT và TMR0
nằm trong thanh ghi INTCON, thanh ghi này còn có bit cho phép ngắt ngoại vi
PEIE. Bit điều khiển ngắt nằm trong thanh ghi PIE1 và PIE2. Cờ ngắt nằm trong
thanh ghi PIR1 và PIR2.
Ngắt ngoại vi như là ngắt từ chân INT hay ngắt từ sự thay đổi trạng thái của các
chân Port B thì việc xác định ngắt nào xảy ra cần 3 hay 4 chu kỳ lệnh tùy thuộc vào
thời điểm ngắt xảy ra.
Khi chương trình ngắt được thực thi, bit GIE được xóa tự động, địa chỉ lệnh tiếp
theo của chương trình chính được cất vào bộ nhớ stack và bộ đếm sẽ chỉ đến địa chỉ
0004h. Để thoát khỏi chương trình ngắt và trở lại chương trình chính thì dùng lệnh
RETFIE.

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 5/28

Hình 1-5: Sơ đồ logic các ngắt trong PIC16F877A


Ngắt INT dựa trên sự thay đổi trạng thái chân RB0/INT. Cạnh lên hay xuống có thể
tác động gây ra ngắt và do bit INTEDG điều khiển. Khi có cạnh tác động thích hợp
xuất hiện tại chân RB0/INT, cờ ngắt INTF được set bất chấp trạng thái các bit điều
khiển GIE và PEIE.
Ngắt do sự thay đổi trạng thái các chân trong Port B dùng các chân Port B<7:4> và
được điều khiển bởi bit RBIE. Cờ ngắt của ngắt này là RBIF.

1.3 Mạch GSM GPRS GPS SIM808
Mạch SIM808 là bản nâng cấp của mạch SIM908 cũ với đầy đủ tính năng GSM,
GPRS, GPS nhưng độ chính xác và ổn định cao hơn.
Mạch có thiết kế nhỏ gọn nhưng có độ bền và ổn định cao, mạch được tích hợp các
thiết kế cần thiết cho module Sim, mạch nguồn xung áp, tụ lọc và ổn định nguồn.
Mạch thích hợp cho các yếu tố sử dụng GSM, GPRS, GPS cần độ bền và ổn định
cao, mạch đi kèm anten GSM và GPS.

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 6/28

Thông số kỹ
-

Hình 1-6: SIM808

thuật:

Module GSM GPRS GPS SIM808.

Nguồn vào: 5-18 VDC, lớn hơn 1A.
Tín hiệu giao tiếp: TTL (3.3 – 5 VDC).
Tích hợp chuyển mức tín hiệu TTL Mosfet tốc độ cao.
Tích hợp mạch giảm áp xung và tụ lọc, ổn định nguồn.
Tích hợp khe cắm Micro Sim.
Tích hợp led báo trạng thái.
Thiết kế nhỏ gọn, bền bỉ, chống nhiễu.

Sơ đồ chân:
-

VBAT: Pad hàn pin, cực dương 3.7 VDC.
GND: Mass, 0 VDC.
VCC: Nguồn dương từ 5 – 18 VDC, lớn hơn 1A.
GND: Mass, 0 VDC.
RXD: Chân nhận tín hiệu TTL, chấp nhận mức 3.3 và 5 VDC.
TXD: Chân truyền tín hiệu TTL, chấp nhận mức 3.3 và 5 VDC.
GND: Mass, 0 VDC.
EN: Mặc định nối lên cao, chức năng dùng để khởi động hoặc dừng hoạt

-

động.
SPKN: Ngõ ra loa speaker âm.
SPKP: Ngõ ra loa speaker dương.
MICP: Ngõ vào micro dương.
MICN: Ngõ vào micro âm.

1.4 Module LM2596


Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 7/28

Mạch giảm áp LM2596 là module giảm áp có khả năng điều chỉnh dòng ra đến 3A.
LM2596 là IC nguồn tích hợp đầy đủ bên trong. Tức là khi cấp nguồn 9V vào
module, sau khi giảm áp ta có thể lấp nguồn 3A < 9V như 5V hay 3V.

Hình 1-7: Module LM2596

Cách sử dụng LM2596 khá đơn giản, chỉ cần cấp nguồn thô vào chân INPUT+,
INPUT- rồi nhận nguồn ra từ chân OUTPUT+, OUTPUT-.
1.5 LCD
Ngày nay thiết bị hiển thị LCD được sử dụng rộng rãi trong các ứng dụng của vi
điều khiển. LCD có nhiều ưu điểm so với các dạng hiển thị khác. Nó có khả năng
hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ họa), dễ dàng đưa vào mạch
ứng dụng theo nhiều giao thức giao tiếp khác nhau , tốn ít tài nguyên hệ thống và
giá thành rẻ.

Sơ đồ chân:
-

Hình 1-8: LCD

VSS: Cực âm.

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)



ĐỒ ÁN 3
Trang 8/28

-

VDD: Cực dương (5V).

-

Constrast Voltage (Vo): Điều khiển độ sáng màn hình.

-

Register Select (RS): Điều khiển địa chỉ nào ghi dữ liệu.

-

Read/Write (RW): Đọc hoặc ghi dữ liệu.

-

Enable pin: Cho phép ghi vào LCD.

-

D0 – D7: 8 chân dữ liệu, có giá trị high hoặc low.

-


Backlight (Anode (+) và Cathode (-)): Bật tắt đèn màn hình LCD.

CHƯƠNG 2. KỸ THUẬT GPS
1.6 Giới thiệu về GPS
Để có thể hiển thị vị trí tọa độ GPS trên google map thì cơ bản cần phải hiểu GPS là
gì. GPS là một hệ thống gồm 27 vệ tinh (kể cả 3 vệ tinh dự phòng) chuyển động
trên các quĩ đạo chung quanh trái đất. Quân đội Mỹ phát triển hệ thống này với mục
đích quân sự nhưng nay nó đã được mở rộng cho các mục đích dân sự.
Mỗi vệ tinh nặng khoảng 2 tấn, sử dụng năng lượng mặt trời, chuyển động cách mặt
đất khoảng 19300km. Mỗi vệ tinh quay quanh trái đất 2 vòng một ngày đêm. Quỹ
đạo của các vệ tinh được tính toán sao cho ở bất kỳ nơi nào trên trái đất, vào bất kỳ
thời điểm nào, cũng có thể “nhìn thấy” tối thiểu 4 vệ tinh.

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 9/28

Hình 2-1: Các vệ tinh bao quanh trái đất

Công việc của một máy thu GPS là xác định vị trí của 4 vệ tinh hay hơn nữa, tính
toán khoảng cách từ các vệ tinh và sử dụng các thông tin đó để xác định vị trí của
chính nó. Quá trình này dựa trên một nguyên lý toán học đơn giản:
-

Vĩ độ (ký hiệu: φ) của một điểm bất kỳ trên mặt Trái Đất là góc tạo thành
giữa đường thẳng đứng (phương của dây dọi, có đỉnh nằm ở tâm hệ tọa độchính là trọng tâm của địa cầu) tại điểm đó và mặt phẳng tạo bởi xích đạo.
Đường tạo bởi các điểm có cùng vĩ độ gọi là vĩ tuyến, và chúng là những
đường tròn đồng tâm trên bề mặt Trái Đất. Mỗi cực là 90 độ: cực bắc là 90°

B; cực nam là 90° N. Vĩ tuyến 0° được chỉ định là đường xích đạo, một

-

đường thẳng tưởng tượng chia địa cầu thành Bán cầu bắc và Bán cầu nam.
Kinh độ (ký hiệu: λ) của một điểm trên bề mặt Trái Đất là góc tạo ra giữa
mặt phẳng kinh tuyến đi qua điểm đó và mặt phẳng kinh tuyến gốc. Kinh độ
có thể là kinh độ đông hoặc tây, có đỉnh tại tâm hệ tọa độ, tạo thành từ một
điểm trên bề mặt Trái Đất và mặt phẳng tạo bởi đường thẳng ngẫu nhiên nối
hai cực bắc nam địa lý. Những đường thẳng tạo bởi các điểm có cùng kinh
độ gọi là kinh tuyến. Tất cả các kinh tuyến đều là nửa đường tròn, và không
song song với nhau: theo định nghĩa, chúng hội tụ tại hai cực bắc và nam.
Đường thẳng đi qua Đài Thiên văn Hoàng gia Greenwich (gần London ở
Liên hiệp Vương quốc Anh và Bắc Ireland) là đường tham chiếu có kinh độ

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 10/28

0° trên toàn thế giới hay còn gọi là kinh tuyến gốc. Kinh tuyến đối cực của
Greenwich có kinh độ là 180°T hay 180°Đ.
Bằng cách phối hợp hai góc này, ta có thể xác định được vị trí nằm ngang của bất
kỳ điểm nào trên Trái Đất.
Có nhiều cách viết độ, tất cả chúng đều xuất hiện theo cùng thứ tự Vĩ độ - Kinh độ:
-

DMS (Degree : Minute : Second): Độ : Phút : Giây.


-

DM (Degree : Minute): Độ : Phút.
DD (Decimal Degree): Độ thập phân.

Để chuyển từ DM hoặc DMS sang DD, độ thập phân = số độ cộng với số phút chia
cho 60, cộng với số giây chia cho 3600. DMS là định dạng phổ biến nhất, và là tiêu
chuẩn trên tất cả các biểu đồ và bản đồ, cũng như hệ định vị toàn cầu và hệ thông
tin địa lý.

1.7 GPS với SIM808
Hệ thống sử dụng SIM808 để giao tiếp với PIC16F877A thực hiện chức năng cập
nhật GPS. Hệ thống thiết kế dựa trên sơ đồ chân của SIM808.
Hệ thống có cấu tạo đơn giản gồm một khối vi xử lí trung tâm giao tiếp
với SIM808 thông qua cổng UART, khối xử lí trung tâm có nhiệm vụ quan trọng
nhất đó là gởi các lệnh yêu cầu SIM808 lấy tọa độ và xử lí chuỗi tọa độ thu được
đó, ngoài ra nó còn kiểm tra yêu cầu tin nhắn mà người dùng nhắn đến thực thi các
yêu cầu.
Khối SIM808 như một cầu nối thu thập dữ liệu GPS và GSM. Truyền tải nội dung
đến cho người dùng.
Khối nguồn nuôi dùng cung cấp nguồn cho toàn hệ thống, khối nguồn với dòng lớn
đảm bảo hệ thống hoạt động ổn định. Yêu cầu của khối nguồn nuôi là phải đủ mạnh
để cấp dòng tải cho toàn hệ thống hoạt động một cách ổn định nhất. Ở đây sử dụng
nguồn nuôi với IC nguồn LM2596 có khả năng cung cấp dòng tải lên đến 3A, dùng
cấp điện trở phân áp cho ra mức điện áp ổn định 3.3V cấp cho SIM và khối vi xử lý.

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3

Trang 11/28

Khối vi xử lý thực hiện toàn bộ các nhiệm vụ quan trọng trong mạch, vừa đảm nhận
nhiệm vụ xử lý chuỗi GPS nhận được vừa thực hiện báo động cho người dùng khi
có yêu cầu.
Khối vi xử lý được chọn sử dụng PIC16F887A làm IC xử lý trung tâm, giao tiếp với
SIM808 qua 2 chân Tx, Rx.
Để kích hoạt SIM808 hoạt động được cũng giống như SIM900 ta cần kích vào chân
số 1 của Breakout 1 xung mức cao, chân PWU (chân B0) của PIC sẽ đảm nhận việc
đó. Sau khi kích hoàn tất, kiểm tra hoạt động của SIM bằng cách gởi lệnh AT lên
SIM liên tục, nếu có trả về OK thì việc khởi động coi như hoàn tất.
Tiếp theo là khởi động hệ thống GPS trong SIM808, sau đó là bắt đầu yêu cầu
SIM808 thu thập dữ liệu GPS và xử lý dữ liệu để có thể hiển thị trên Google Map.

CHƯƠNG 3. THIẾT KẾ MẠCH VÀ THỰC THI PHẦN CỨNG
1.8 Lưu đồ thực thi phần cứng

Bắt đầu

Khởi tạo SIM808

Nhận dữ liệu GPS

Đo nhịp tim

Hiển thị LCD

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)



ĐỒ ÁN 3
Trang 12/28

Kiểm tra điều kiện ngưỡng
báo động

Gửi tin nhắn báo động

1.9 Sơ đồ nguyên lý mạch

Hình 3-1: Sơ đồ nguyên lý

Đây là sơ đồ nguyên lý được thiết kế trên phần mềm Altium Designer (17.0), gồm 5
khối chính là khối hiển thị LCD, khối vi điều khiển, khối cảm biến đo nhịp tim,
khối nguồn và cuối cùng là khối SIM808.

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 13/28

Nguyên lí hoạt động của mạch giải thích ngắn gọn là khi cảm biến nhận được nhịp
tim tín hiệu sẽ đi qua vi điều khiển từ đó vi điều khiển xử lý tín hiệu so sánh các
ngưỡng báo động và truyền dữ liệu cho SIM808 gửi cảnh báo kèm vị trí tọa độ về
điện thoại người dùng.

1.10

Thực thi phần cứng


Hình 3-2: Mạch in 1

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)

Hình 3-3: Mạch in 2


ĐỒ ÁN 3
Trang 14/28

Đây là mạch in cũng được vẽ trên phần mềm Altium Designer (17.0), linh kiện
được và sơ đồ được vẽ theo sơ đồ nguyên lý, thiết kế nhỏ gọn hết mức có thể để tạo
thẩm mỹ và thuận lợi khi sử dụng.

Hình 3-4: Mạch ngoài thực tế

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 15/28

Cách thức hoạt động của mạch là sau khi cấp nguồn cho mạch áp ngón tay vào cảm
biến đo nhịp tim thì nhịp tim sẽ hiển thị trên LCD, khi nhịp tim vượt qua ngưỡng
cho phép thì sẽ có tin nhắn cảnh báo kèm tọa độ vị trí tự động gửi về điện thoại.

CHƯƠNG 4. KẾT LUẬN, ỨNG DỤNG VÀ HƯỚNG PHÁT TRIỂN
1.11 Kết luận
Ưu điểm:

-

Nhịp tim đo khá chính xác.
Tin nhắn gửi về nhanh.

Nhược điểm:
-

Cảm biến nhịp tim lấy dữ liệu chưa được tốt.
Khó lấy được tọa độ do anten GPS.

1.12 Ứng dụng
Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS) có thể dùng trong lĩnh vực y tế,
phục vụ giám sát nhịp tim của người cao tuổi hay có các vấn đề tim mạch.
1.13

Hướng phát triển

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 16/28

Đề tài còn chưa hoàn thiện lắm do sử dụng các linh kiện thiết bị rẻ tiền, có thể khắc
phục bằng cách mua các thiết bị đắt hơn thì hiệu quả sử dụng sẽ cao hơn.
Thay vì cảnh báo qua tin nhắn còn có thể giám sát qua máy tính, internet.

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)



ĐỒ ÁN 3
Trang 17/28

TÀI LIỆU THAM KHẢO
http//:htpro.vn




Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 18/28

PHỤ LỤC
Code:
#include <main.h>
#define LCD_ENABLE_PIN PIN_A4
#define LCD_RS_PIN PIN_E0
#define LCD_RW_PIN PIN_A5
#define LCD_DATA4 PIN_A3
#define LCD_DATA5 PIN_A2
#define LCD_DATA6 PIN_A1
#define LCD_DATA7 PIN_A0
#include <lcd.c>

float value,dem=0;
float beat = 0,pre_beat = 80;

float temp,max=0;
int1 mode=0,wait = 0;
int count=0, count1=0;//Khai bao bien dem
char data[]="000.000000,000.000000";//Khai bao mang luu toa do
int1 done=0;
const char GPS_RC[]="+UGNSINF:";//Khai bao mang chua chuoi khoi dong cua
chuoi gps
Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 19/28

int count5=0;
int1 F_GPS_RC=0;//bien trang thai thong bao bat dau nhan chuoi toa do

const char KTTD[]="Kiem tra toa do";//mang chua noi dung tin nhan
//char sdt[]="\"+841674479551\"";//mang luu so dien thoai
int count4=0;
int GTD=0;//bien trang thai thong bao da nhan xong du lieu gps
char sdt[]="\"+841285519566\"";

void cause_of_restart();
#INT_RDA//vector ngat UART
void RDA_isr(VOID)
{
CHAR c = fgetc (UART) ; //luu ky tu nhan duoc vao bien c
//fputc(c);
//doan ma kiem tra tung ky tu nhan duoc voi tung phan tu trong mang chua chuoi
khoi dong nhan du lieu gps

//Neu ky tu nhan duoc giong voi phan tu dau tien trong mang thi lan nhan du lieu
tiep theo so sanh voi phan tu tiep theo
IF(c==GPS_RC[count5])
{
count5++;
if(count5>=9)//neu du 9 ky tu giong voi mang cho truoc thif thong bao bat dau
nhan toa do
{
F_GPS_RC=1;
Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 20/28

//fputc('P');
}
}
else count5=0;//neu tai bat cu phan tu nao kiem tra khong dung thi tien hanh kiem
tra lai tu dau
/////////////////////////////////////////////////////////////////////
//doan ma nhan du lieu gps khi co thong bao bat dau nhan du lieu
if(F_GPS_RC==1)
{
if(c==',')//dem so dau phay de xac dinh vi tri du lieu toa do can luu
{
count++;
}
else if(c=='\n')//neu gap ky tu xuong hang thi ket thuc
{

count=0;
F_GPS_RC=0;
}
else
{
if((count==3)||(count==4))//neu gap ky tu "," lan thu 3 hoac thu 4 thi luu vao
mang toa do
{
if(count1==9)
{
data[9]=',';
count1=10;

Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


ĐỒ ÁN 3
Trang 21/28

}
data[count1]=c;
count1++;
}
if(count==5)//neu gap ky tu "," thu 5 thi thong bao da nhan xong
{
done=1;
count1=0;
}
}
}


//Kiem tra noi dung tin nhan kiem tra toa do
if(c==KTTD[count4])
{
count4++;
if(count4>=15)
{
GTD=1;
}
}
else(count4=0);
}
#INT_timer1
void timer1_isr()
{
Mạch đo nhịp tim cảnh báo bằng tin nhắn (SMS)


×