1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

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)

32 1K 21

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 32
Dung lượng 1,06 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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

Trang 1

MẠCH ĐO NHỊP TIM CẢNH BÁO

BẰNG TIN NHẮN (SMS)

Trang 2

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

Trang 3

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

Trang 4

GPRS General Packet Radio Service

GSM Global System for Mobile Communications

PSP Parallel Slave Port

TTL Transistor-transistor logic

USART Universal Synchronous Asynchronous Receiver Transmitter

Trang 5

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ụckhoa 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ị đắttiề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 đạití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óng609nm), và một quang trở nhạy với bước sóng ánh sáng mà đầu phát phát ra

hoạt động theo nguyên lí 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) đầuphá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ặcqua 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

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

Trang 6

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 chophép là 20 MHz với một chu kì lệnh là 200ns Bộ nhớ chương trình 8K x 14bit, 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

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

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

Hình 1-3: Arduino Uno R3 Hình 1-4: Sơ đồ chân PIC16F877A

Trang 7

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óđị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úptruy 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 14bit Khi reset vi điều khiển, bộ đếm chương trình sẽ chỉ đến địa chỉ 0000h Khi ngắtthì 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ăngmột chân trong Port A là đầu vào thì ta “set” bit điều khiển tương ứng vớichân đó trong thanh ghi TrisA và ngược lại, muốn xác lập chức năng của mộtchâ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ậptương ứng, một số chân của Port B còn được dùng trong quá trình nạpchươ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ềukhiể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 Ccò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ổngxuất dữ liệu của chuẩn giao tiếp PSP

Trang 8

- 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

USART là một trong hai chuẩn giao tiếp kết nối, còn được gọi là giao diện giaotiế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ểnkhác hoặc với máy tính Giao diện SART gồm có 3 dạng:

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 ghiINTCON Mỗi ngắt có 1 bit điều khiển và cờ ngắt riêng, hoạt động ngắt lệ thuộcvào bit GIE và các bit điều khiển khác Bit điều khiển ngắt là RB0/INT và TMR0nằm trong thanh ghi INTCON, thanh ghi này còn có bit cho phép ngắt ngoại viPEIE Bit điều khiển ngắt nằm trong thanh ghi PIE1 và PIE2 Cờ ngắt nằm trongthanh 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ácchâ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àothờ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ếptheo của chương trình chính được cất vào bộ nhớ stack và bộ đếm sẽ chỉ đến địa chỉ

Trang 9

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ệnhRETFIE.

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ợpxuấ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ềukhiể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

Trang 10

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ácthiế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 địnhcao, mạch đi kèm anten GSM và GPS.

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

Trang 11

- 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 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àomodule, sau khi giảm áp ta có thể lấp nguồn 3A < 9V như 5V hay 3V

Trang 12

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ểnthị 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àinguyên hệ thống và giá thành rẻ

- 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

Hình 1-8: LCD

Trang 13

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

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àydự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 ) 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 ) 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 độ

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

Trang 14

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 độ 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 chiacho 60, cộng với số giây chia cho 3600 DMS là định dạng phổ biến nhất, và là tiêuchuẩ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ôngtin địa lý

đó, 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ácyêu cầu

Trang 15

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ụngnguồ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ùngcấ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ý.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ậnnhiệ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ớiSIM808 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ênSIM 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ầuSIM808 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ỨNG1.8 Lưu đồ thực thi phần cứng

Bắt đầu

Khởi tạo SIM808

Trang 16

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

Trang 17

Đâ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ểnthị 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.

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ịptim 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ácngưỡ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-1: Sơ đồ nguyên lý

Trang 18

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

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

Trang 19

Đâ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ạothẩm mỹ và thuận lợi khi sử dụng.

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ịptim sẽ hiển thị trên LCD, khi nhịp tim vượt qua ngưỡng cho phép thì sẽ có tin nhắncảnh báo kèm tọa độ vị trí tự động gửi về điện thoại

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

Trang 20

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

- 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

Trang 21

TÀI LIỆU THAM KHẢO

http//:htpro.vn

http://hshop.vn

http://arduino.vn

http://at-sky.com.vn

Trang 22

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

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 cuachuoi gps

Trang 23

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

Trang 26

lcd_init();

lcd_putc("Reading ");

enable_interrupts (INT_RDA); //cho phep ngat UART

enable_interrupts (GLOBAL) ;//cho phep ngat toan cuc

Trang 30

fprintf (UART, "\n\rAT+CMGS=%s\r",sdt);//gui sdt den sim

delay_ms (500) ;//cho sim san sang nhan tn

fprintf (UART, "Canh bao nhip tim cao %f https://maps.google.com/maps?q=%s",beat,data) ;//gui noi dung tn den sim900

fputc (0x1A, UART) ;//lenh ket thuc tn nhan va gui tn di

fprintf (UART, "\n\rAT+CMGS=%s\r",sdt);//gui sdt den sim

delay_ms (500) ;//cho sim san sang nhan tn

fprintf (UART, "Canh bao nhip tim thap %f https://maps.google.com/maps?q=%s",beat,data) ;//gui noi dung tn den sim900

fputc (0x1A, UART) ;//lenh ket thuc tn nhan va gui tn di

Ngày đăng: 09/03/2018, 19:28

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w