Nghiên cứu các ứng dụng cảm biến quang - Pdf 98

Luận văn tốt nghiêp Cảm biến quang
MỞ ĐẦU
Ngày nay trên thế giới, cảm biến quang học đã được sử dụng rất nhiều trong đời
sống, nhất là trong lĩnh vực y học, một lĩnh vực đòi hỏi sự chính xác, nhanh chóng và ít
gây tổn thương cho bệnh nhân. Vì vậy cảm biến quang học là thiết bị dùng cho những
xét nghiệm và trong hỗ trợ trong điều trị cho bệnh nhân, là một lựa chọn hợp lý và kinh
tế. Trong khóa luận này, em sử dụng một đèn led có độ chiếu sáng mạnh chiếu vào ngón
tay của bệnh nhân và ánh sáng truyền qua được thu vào cảm biến quang học TSL 230,
với mục đích thu nhận những biến đổi trong máu qua đầu ngón tay người bệnh.Cảm
biến quang học TSL230 sẽ biến đổi tín hiệu đó tần số và đưa vào vi điều khiển PIC
16F877A để xử lý tìm ra chính xác nhịp tim của bệnh nhân.
Nội dung của bản khóa luận “Nghiên cứu các ứng dụng cảm biến quang” gồm 3
chương :
Chương 1 : Giới thiệu về cảm biến quang học TSL230
Chương 2: Cấu trục vi điều khiển PIC 16F877A
Chương 3: Xây dựng hệ đo nhịp tim.
Sau một thời gian nghiên cứu, tìm hiểu và được sự giúp đỡ của GS TSKH Nguyễn
Phú Thùy em đã hoàn thành khóa luận trong thời gian ngắn. Em xin chân thành cảm ơn
sự giúp đỡ của Thầy Cô trong khoa điện tử -viễn thông và các cán bộ trẻ trong phòng thí
nghiệm MEMS bộ môn vi cơ điện tử và vi hệ thống và đặc biệt là thầy Nguyễn Phú
Thùy đã trực tiếp hướng dẫn em hoàn thành khóa luận này
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT1
Luận văn tốt nghiêp Cảm biến quang
CHƯƠNG 1 - GIỚI THIỆU VỀ CẢM BIẾN QUANG HỌC TSL230
1.1. Cấu tạo của cảm biến quang học TSL230.
1.1.1 Mô tả
Thiết bị TSL230 là một tập hợp các cảm biến quang học có khả năng chuyển ánh
sáng thành tín hiệu điện. Nó được tích hợp với khối CMOS và chuyển dòng điện thành
tần số.Đầu ra có thể là một chuỗi xung hoặc là sóng hình vuông (50% chu kỳ) với tần số
tỷ lệ với cường độ sáng. Độ nhạy cảm của thiết bị chúng ta có thể điều chỉnh được qua
các chân của thiết bị. Tất cả đầu vào và đầu ra đều ở mức TTL, cho phép đo thông tin

TSL230 được trình bày trên hình 2.
Hình 2: Chân cụ thể của TSL
230.
Chân số 1 : S0
(Chân dùng đặt
tỉ lệ độ nhạy của
photodiot)
Chân số 2 : S1
(Chân dùng đặt
tỉ lệ độ nhạy của photodiot)
Chân số 3 : OE (Enable for f0 , ative low)
Chân số 4 : GND (Chân nối đất )
Chân số 5 : VCC (Chân nối lên nguồn )
Chấn số 6 : OUT (Chân cho xung ra khi có ánh sáng đựơc thu trên
photodiot).
Chân số 7 : S2 (Chân chia tỉ lệ của tần số lối vào )
Chấn số 8 : S3 (Chân chia tỉ lệ của tần số lối vào )
1.2. Nguyên tắc hoạt động
1.2.1 Cấu hình đầu ra của TSL230
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT3
Luận văn tốt nghiêp Cảm biến quang
Cấu hình cho các chân của TSL 230 cho phép ta thu được một dãy các xung vuông
ra theo như ý muốn của chúng ta.
S1 S0 S3 S2 Độ nhạy Tần số chia
L L L L Power Down 1
H L L H 1x 2
H L H L 10x 10
H H H H 100x 100
Hình 3: Giản đồ xung tại chân ra.
1.2.2 chức năng các chân

A
= 25
o
C.
Tham số Điều kiện Chạy TSL230 TSL230A TSL230B Đơn vị
đo
Min Typ Max Min Typ Max Min Typ Max
S0=H,
S1=S2=S3=L
E
e
=130nW/cm
2
λ
P
=670 nm
0.8 1 1.2 0.9 1 1.1 0.95 1 1.05 MHz
S0=H,E
e
=0
S1=S2=S3=L
0.1 10 0.1 10 0.1 10 Hz
S1=H,
S0=S2=S3=L
E
e
=130nW/cm
2
0.8 1 1.2 0.9 1 1.1 0.95 1 1.05 MHz
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT5

=0;

0.5 10

0.5 10

0.5 10 Hz
T
W
S2=S3 125 550 125 550 125 550 ns
S2orS3=H 1/2f
O
1/2f
O
1/2f
O
s
f
O
=0 to 10kHz ±0.1% ±0.1% ±0.1% %F.S
Dung sai f
O
=0 to 10kHz ±0.2% ±0.2% ±0.2% %F.S
f
O
=0 to 10kHz ±0.5% ±0.5% ±0.5% %F.S
Nguồn
Tắt
100 100 100 µs
Tỉ lệ Cho phép OE 50 150 50 150 50 150 ns

OL
=4mA 0.17 0.28 V
I
IH
1 µA
I
IL
1 µA
I
DD
Nguồn mở 2 3 mA
Nguồn tắt 10 µA
Tần số cao nhất 1.1 ±100 MHz
Hệ số nhiệt độ của đầu
ra
λ ≤700nm
-25
o
C≤ T
A
≤70
o
C
Ppm/
o
C
K
SVS
độ nhạy nguồn V
DD

Độ nhạy được điều khiển bởi hai nối vào S0, S1. Độ nhạy sử dụng điều chỉnh
được dòng điện một cách rất hiệu quả, bằng cách điều chỉnh độ mở và điều chỉnh bộ
đáp ứng của thiết bị đối với số lượng ánh sáng. Độ nhạy có thể chia thành 3 mức 1x,
10x, 100x. Với sự điều chỉnh này cho phép thiết bị hoạt động tối ưu hóa đối với những
sự thay đổi nhỏ mà vẫn giữ tín hiệu đầu ra trên giải tần số cho phép. Sự thay đổi độ
nhạy này rất có hiệu quả vì chúng ta có thể kiểm soát được hệ số nhân đó.
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT10
Luận văn tốt nghiêp Cảm biến quang
1.3.1.2 Chia tần số đâu ra
Tỷ số chia tần số đầu ra được điều khiển bởi hai chân S2 và S3. Chia tần số bằng
cách đưa tần số tới bộ biến đổi và được cắt thành những xung theo tỉ lệ chia. Tỉ lệ chia
có sẵn ở tùy theo ta chọn 1, 2, 10, 100. Sự chia cắt đầu ra là 50% thành những sóng
vuông đưa ra trực tiếp và là nhưng sóng cố định có độ rộng xung được tính toán trước.
Đầu ra được hiệu chỉnh nhờ điều chỉnh các mức tại chân S0, S1, S2, S3, để cho ra
tần số tùy theo ý đồ của người thiết kế, hoặc có thể sử dụng chân tần số hoạt động ở
chân OE.
Sự chia cắt đầu ra làm tối ưu hóa về kĩ thuật đo tần số. Chia cắt bởi 1 hoặc đưa
thẳng qua đầu ra thì chỉ cần sử dụng máy đếm tần số hoặc ắc quy xung, hoặc thiết bị
bấm giờ cao tốc.
Chia cắt thấp hơn có thể dùng những thiết bị đo đơn giản hơn mà vẫn chính xác
mà chỉ cần những kỹ thuật đo đơn giản hơn.
1.3.1.3 Cách đo tần số
Việc lựa chọn kỹ thuật đo và giao diện phụ thuộc vào nhịp độ thu nhận quyết định
và dữ liệu mong muốn. Cho dữ liệu cực đại, nhịp độ thu nhận dữ liệu và kỹ thuất đo
được sử dụng. Nếu sử dụng hệ số chia 2, thì ta được dữ liệu có tân số băng một nửa đầu
ra hoặc một dữ liệu tại mọi thời điểm trong mỗi micro giây cho độ lớn tự nhiên ở đầu ra.
Chúng ta có thể sử dụng trong phép đo có sự thay đổi của ánh sáng với hệ số chia
của đầu ra cao hơn để bắt kịp với sự thay đổi của đầu vào.
Ta dùng máy đếm và có thể quy định trước thời gian đếm khi đó ta có thể tính
được giá trị của tần số. Phép đo chỉ thực hiện tốt cho những thay đổi chậm chạp của tín

+ Khả năng giao tiếp với tín hiệu tương tự.
Bộ biến đổi tương tự /số 10 bit, 8 kênh và có 2 bộ so sánh tương tự.
+ Khối tạo điện áp chuẩn bên trong lập trình được.
+ Lối ra của so sánh có thể truy nhập từ bên ngoài.
+ Các đặc tính riêng
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT12
Luận văn tốt nghiêp Cảm biến quang
o Đảm bảo 100.000 lần ghi/xóa vào bộ nhớ chương trình flash.
o Đảm bảo 1.000.000 lần ghi/xóa vào bộ nhớ dữ liệu EEPROM.
o Bộ nhớ dữ liệu kiểu EEPROM lưu được dữ liệu trên 40 năm.
o Tự nạp trình dưới sự điều khiển của phần mềm bootstrap qua giao diện
nối tiếp.
o Nạp trình nối tiếp ICSP.
o Điện áp nạp trình 5 V ở chế độ LVP.
o Bộ đếm giám sát Watchdog có mạch tạo nhịp RC bên trong , độ lập.
o Có cơ chế xóa chống sao chép chương trình.
o Chế độ SLEEP tiết kiệm năng lượng.
o Nhiều lựa chọn về bộ giao động tạo nhịp RC, LP, XT, HS.
o Chức năng gỡ rối chương trình ICD qua 2 chân.
o Chế tạo bằng công nghệ CMOS, tiêu thụ ít năng lượng, tốc độ cao.
2.2 Sơ đồ khối chức năng và các chân vào ra
Vi điều khiển PIC có kiến trúc Harvard, trong đó CPU truy cập chương trình và dữ
liệu được trên hai bus riêng biệt, nên làm tăng đáng kể băng thông so với kiến trúc Von
Neumann trong đó CPU truy cập chương trình và dữ liệu trên cùng một bus.
Việc tách riêng bộ nhớ chương trình và bộ nhớ dữ liệu cho phép số bit của từ lệnh
có thể khác với số bit của dữ liệu. Ở PIC 16F877A, từ lệnh dài 14 bit , từ dữ liệu 8 bit.
PIC 16F877A chứa một bộ ALU 8 bit và thanh ghi làm việc WR (working
register). ALU là đơn vị tính toán số học và logic, nó thực hiên các phép tình số và đại
số Boole trên thanh ghi làm việc WR và các thanh ghi dữ liệu. ALU có thể thực hiện các
phép cộng, trừ, dịch bit và các phép toán logic.

RB1 34 I/O Vào/ra số.
RB2 35 I/O Vào/ra số.
RB3/PGM 36 I/O Vào/ra số. Nạp trình LVP
RB4 37 I/O Vào/ra số
RB5 38 I/O Vào/ra số
RB6 39 I/O Vào/ra số. Xung nhịp nạp trình ICSP
RB7 40 I/O Vào/ra số. Dữ nạp trình ICSP
RC0/T1OSO/T1CKI 15 I/O Vào/ra số. Tạo dao động timer. Xung nhịp
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT15
Luận văn tốt nghiêp Cảm biến quang
ngoài cho timer 1
RC1/T1OSI/CCP2 16 I/O Vào/ra số. Tạo timer1. Lối vào Capture.
Lối ra Compare2. Lối ra PWM2
RC2/CCP1 17 I/O Vào/ra số. Lối vào Vào/ra số Capture1.
Lối ra PWM1
RC3/SCK/SCL 18 I/O Vào/ra số. Nhịp đồng bộ choSPI và I2C
RC4/SDI/SDA 23 I/O Vào/ra số. Vào dữ liệu SPI. Vào/ra dữ
liệu I2C
RC5/SDO 24 I/O Vào/ra số. Ra dữ liệu SPI
RC6/TX/CK 25 I/O Vào/ra số. Cổng truyền thông không đồng
bộ. Xung nhịp truyền đồng bộ
RC7/RX/DT 26 I/O Vào/ra số. Cổng nhận không đồng bộ. Dữ
liệu đồng bộ
RD0
RD1
RD2
RD3
RD4
RD5
RD6

Vdd 11,32 I/O Cấp nguồn dương
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT16
Luận văn tốt nghiêp Cảm biến quang
2.3 Tổ chức bộ nhớ và các thanh ghi chức năng đặc biệt
Tổ chức bộ nhớ của vi điều khiển PIC 16F877A được trình bày hình 12.
Hình 12: Tổ chức bộ nhớ
Có 3 loại bộ nhớ trong vi điều khiển 16F877A: bộ nhớ chương trình, bộ nhớ dữ
liệu RAM, bộ nhớ dữ liệu EEPROM. Bộ nhớ dữ liệu và bộ nhớ chương trình và bộ nhớ
dữ liệu có hai bus riêng lên có thể truy nhập đồng thời.
2.3.1 bộ nhớ chương trình Flash.
Vi điều khiển 16F877A có bộ nhớ chương trình flash với dung lượng 8k x 14 bit,
chia thanh 4 bank. Thanh ghi của bộ đếm chương trinh PC (Program Counter ) 13 bit ,
đủ định nghĩa địa chỉ cho 8 k không gian bộ nhớ.
Khi khởi động, bộ đếm chương trình bắt đâu từ địa chỉ 0000h, vector ngắt có địa
chỉ 0004h.
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT17
Luận văn tốt nghiêp Cảm biến quang
Bộ nhớ dữ liệu được ghi vào trong khi lập trình cho vi điều khiển qua bộ nạp trình.
Do khả năng tự ghi vào bộ nhớ chương trình nên vi điều khiển 16F877A còn có thể nạp
chương trình qua cổng UART dưới sự điều khiển của chương trình Bootstrap.
2.3.2 Bộ nhớ dữ liệu RAM
Bộ nhớ dữ liệu được chia thanh 4 bank trong đó có các thanh ghi đa năng GPR
(General Purpose Register ) và các thanh ghi chức năng đặc biệt SER(Specail Function
Register). Việc lựa chon các bank được xác định bằng các bit RP1, RP0 của thanh ghi
STATUS.
Tổng dung lượng của các GPR RAM là 368 byte, lớn hơn nhiều so với vi điều
khiển khác như ở họ 8051 chỉ có 128 byte. Các thanh ghi GPR được sử dụng để lưu giá
trị các biến trong chương trình. Các thanh ghi đặc biệt SFR dùng để quản lý, điều khiển
chức năng của tất cả các khối thành phần bên trong vi điều khiển.
Tổ chức của các thanh ghi chức năng SFR được trình bày trên hình 13.

Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT20
Luận văn tốt nghiêp Cảm biến quang
Chân RB0 có thể lựa chọn là lối vào của ngắt ngoài Extint, lối vào này lập cờ ngắt
INTF khi có sườn lên hoặc sườn xuống của xung tùy thuộc vào giá trị bít INTEDG
trong thanh ghi OPTION.
Hình 15: Cổng RB<0:3> và RB<4:7>
Có 3 chân của cổng B được ghép lối với chức năng ICSP là RB6, RB7, RB3 tương
ứng với lối vào PGC, PGD, LVP khi nạp trình. Mỗi chân trong cổng B được nối tới một
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT21
Luận văn tốt nghiêp Cảm biến quang
điện trở kéo lên (pull- up) có trị số 20kΩ bên trong. Việc lựa chọn dùng/không dùng các
điện trở này bằng cách xóa/đặt bít RBPU trong thanh ghi OPTION.
Lối vào RB4 và RB7 làm phát sinh ngắt RBIF khi thay đổi trạng thái khi các chân
này định nghĩa là các lối vào. Trạng thái hiện tại của lối vào này được so sánh với trạng
thái được chốt lại tại lần đọc trước đó. Khi có sự khác nhau thì cờ ngắt RBIF được lập.
2.4.3 Cổng C
Hình 16 Cổng C.
Cổng C là cổng 8 bit vào/ra hai hướng xem hình 16. Thanh ghi định hướng cổng là
TRISC. Các chân của cổng C được ghép với các chức năng ngoại vi. Các lối vào của
cổng C có bộ đệm kiểu trigger Schmitt. Bảng dưới đây liệt kê các chức năng ghép của
cổng C.
Tên chân Bít Chức năng, ý nghĩa
RC0/T1OSO/T1CK1 Bit 0 Cổng vào/ra . lối tạo Timer 1.Lối vào xung
nhịp Timer1
RV1/T1OSI/CCP2 Bít 1 Cổng vào/ra. Lối vào dao động Timer
1. Lối vào Capture2/lối ra compảe2. Lối ra
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT22
Luận văn tốt nghiêp Cảm biến quang
PWM2
RC2/CPP1 Bit 2 Cổng vào/ra. Lối vào capture1/lối ra

o Bộ đếm 8 bit
o Ghi/đọc được.
o Có bộ chia 8 bit lập trình được.
o Chọn xung nhịp bên ngoài hoặc bên trong.
o Sinh ngắt TOIF khi tràn chuyền từ FFh→ 00h.
o Chọn sườn xung khi lấy xung nhịp từ bên ngoài.
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT24
Luận văn tốt nghiêp Cảm biến quang
Timer0 dùng làm bộ đếm xung nhịp của vi điều khiển vể tạo ra một bộ đếm thời
gian. Chế độ đếm thời gian được chọn bằng cách đặt bit T0CS = 0 (bit OPTION<5>).
Trong các chế độ đếm thời gian, thanh ghi TMR0 tăng một đơn vị sau mỗi chu kỳ máy.
Thanh ghỉ TMR0 có thể được ghi đọc trong chương trình để xác lập hoặc lấy giá trị hiện
thời của timer0.
Hình 19: Sơ đồ khối Timer0.
Timer0 dùng để đếm các xung từ bên ngoài cấp vào chân RA4. Chế độ đếm xung
được chọn bằng cách đặt T0CS = 1. Trong chế độ này thanh ghi Timer0 tăng một đơn vị
sau mỗi sườn lên hoặc sườn xuống tùy thuộc vào trạng thái của bit T0SE.
Bộ chia trước được dùng chung cho hai khối watchdog và Timer0. Việc gắn bộ
chia trước cho khối nào được chọn bằng bít PSA(OPTION<3>). Hệ số chia phụ thuộc
giá trị của bit PS2:PS1:PS0 của thanh ghi OPTION.
Ngắt timer0 xảy ra khi thanh ghi TMR0 tràn, chuyển từ FFh→00h. Sự tràn này sẽ
đặt bít T0IF = 1. Ngắt T0IF có thể che bằng bit T0IE. Cờ T0IF phải được xóa bằng phần
mềm.
2.5.2 Khối Timer1
Trường ĐH Công Nghệ-DHQGHN Lương Quang Tuấn-K49ĐT25

Trích đoạn Các đặc điểm riêng và thiết lập cấu hình PIC 1 Các điểm mới trong vi điều khiển PIC 16F877A CHƯƠNG 3: XÂY DỰNG HỆ ĐO NHỊP TIM 3.1 Giới thiệu về LED Một số tính chất cơ bản của LED Định luật Beer Phương pháp đo nhịp tim bằng sensor TSL230R
Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status