Tải bản đầy đủ (.doc) (11 trang)

chương 5 một số cảm biến thông dụng dùng trong robot

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 (263.69 KB, 11 trang )

h

CHƯƠNG 5 :
MỘT SỐ CẢM BIẾN THÔNG DỤNG DÙNG
TRONG ROBOT
5.1 Giao tiếp với cảm biến :
Trong chương này, chúng em xin trình bày một số cảm biến đơn giản và cách
giao tiếp chúng với bộ vi xử lý. Xuyên suốt trong chương này là những ví dụ khác
nhau về các cách giao tiếp với cảm biến. Các loại cảm biến khác nhau như ø: cảm
biến quang, công tắc tiếp xúc, microphone, cảm biến nhiệt, cảm biến tiếp cận
dùng hồng ngoại, cảm biến lực, sonar … có chi phí không cao và có thể dùng trong
mobile robot. Trong khi chúng ta muốn robot của chúng ta hiểu và nhận biết được
môi trường của nó, thì thực tế khả năng của robot bò giới hạn bởi các cảm biến mà
chúng ta trang bò và các phần mềm chúng ta viết cho nó. Cảm nhận không phải là
nhận thức, các cảm biến chỉ đơn giản làchuyển đổi một số hiện tượng vật lý sang
các tín hiệu điện để các bộ vi xử lý có thể đọc nó. Điều này được thực hiện bằng
cách dùng chuyển đổi analog sang digital trên board vi xử lý, bằng cách đọc giá
trò từ cổng I/O hoặc dùng ngắt ngoài. Thông thường, cần có một số mạch giao tiếp
giữa cảm biến và vi xử lý để xử lý và khuyếch đại tín hiệu.
5.1.1 Giao tiếp giữa cảm biến và bộ vi xử lý :
Một khi các bộ cảm biến đã được lựa chọn và mạch giao tiếp thích hợp đã
được thiết kế để nối các bộ cảm biến này đến bộ vi xử lý, thì bộ vi xử lý cần phải
được lập trình để đọc các cảm biến. Những chương trình được lập trình để giao
tiếp giữa cảm biến và bộ vi xử lý liên quan đến giao tiếp phần cứng-phần mềm.
Những thủ tục này có thể thường xuyên hỏi vòng tại một ngõ vào A/D, chờ một
xung kích bên ngoài, hoặc có thể được dùng như trình xử lý ngắt. Các chương
trình này nhận giá trò từ cảm biến và lưu nó vào một vò trí bộ nhớ của bộ vi xử lý.
Do đó ngõ ra từ một cảm biến có thể được xem là giá trò của một biến hay của
một cờ, từ đó một bộ phận khác trong hệ thống điều khiển dùng các cờ này để
kích hoạt các hành vi, các lớp điều khiển cấp cao.
5.1.2 Đô nhạy và tầm đo :


Hai đặc tính quan trọng của bất cứ cảm biến nào đó là độ nhạy và tầm đo. Độ
nhạy là mức độ tín hiệu ra sẽ thay đổi khi đại lượng đo thay đổi. Gọi ngõ ra của


h
cảm biến là r và đại lượng vật lý cần đo là x, độ nhạy của cảm biến được đònh
nghóa:
∆r =S ∆x
rx

Trong đó, một sự thay đổi nhỏ trong đại lượng đo ∆x liên hệ đến một sự thay
đổi nhỏ trong đáp ứng ngõ ra ∆r của cảm biến bởi độ nhạy S. Một cảm biến phản
ứng đối với những thay đổi khác nhau của một số kích thích vật lý bằng cách phát
ra một điện áp đặc trưng. Thông thường, một mạch điện gắn với cảm biến sẽ
khuyếch đại hoặc biến đổi điện áp này và đưa nó sang bộ biến đổi A/D sau đó
được nối đến bộ vi xử lý. Bộ biến đổi A/D chỉ nhạy với một tầm giới hạn của
điện áp, thường là 0-5v. Đối với bộ biến đổi A/D được sử dụng trong luận văn này
vi mạch ADC 0809 chuyển đổi tín hiệu từ analog sang digital chuyển đổi tín hiệu
điện áp ở ngõ vào sẽ được chuyển thành 256 giá trò rời rạc. Do đó, bất kỳ hiện
tượng vật lý phức tạp nào, đều có thể biến thành một con số : ánh xạ tuyến tính
và ánh xạ logarithm.
nh xạ tuyến tính nh xạ loga

+5 B

1

+5

A


R2
R

3

2

Điện áp giữa điểm A và mass có quan hệ tuyến tính với vò trí con chạy của
biến trở. Photodiode tạo ra một đáp ứng tuyến tính với tầm rất rộng của ánh sáng.
Sau khi tín hiệu từ diode được khuyếch đại bởi khuyếch đại loga, điện áp tại B tỉ
lệ logarithm với độ sáng. nh sáng logarithm cho tầm đo rộng hơn là ánh xạ
tuyến tính.

5.2 Cảm biến quang :
Cảm biến ánh sáng thấy được và cảm biến hồng ngoại có vùng phổ khá rộng.
Các photocell dễ giao tiếp với vi xử lý nhất trong số các cảm biến quang, gồm có
các loại như : quang trở, photodiode, phototransitor … Ngõ ra của photocell không
phức tạp để diễn dòch .


h
5.2.1 Quang trở :
Các cảm biến quang làm cho robot có được các hành vi như là trốn trong
bóng tối, tìm nguồn sáng … Quang trở có điện trở thay đổi phụ thuộc cường độ ánh
sáng chiếu vào nó. Phototransistor có độ nhạy lớn hơn quang trở và cách giao tiếp
với vi xử lý tương tự như quang trở. Photodiode có độ nhạy lớn nhất, cho ra một
tín hiệu tuyến tính với một tầm rất rộng của ánh sáng và đáp ứng nhanh với sự
thay đổi của nguồn sáng. Điều này làm cho nó hữu dụng trong các thiết bò thông
tin để phát hiện ánh sáng đã điều chế. Tuy nhiên, tín hiệu lấy từ photodiode cần

khuyếch đại trước khi đưa vào vi xử lý.
Dưới đây là mạch điện giao tiếp quang trở với vi xử lý thông dụng :

+5

IN2

+5

R

+

+

3

R

Vint2
RL
-

Vint1
RR
-

1

IN1


+5

R

Phân tích mạch điện của quang trở bên trái: hai điện trở hình thành cầu chia
điện áp, Điện trở tổng trong mạch này RT=R+RL, dòng qua mạch là I=V/RT. Để
mạch chuyển đổi A/D trong vi mạch ADC 0809 đo được điện áp thì phải có dòng
vào chân INT1. Tuy nhiên, vì ngõ vào của trở kháng rất cao nên dòng này khá
nhỏ so với dòng điện tổng chạy trong mạch. Do đó có thể xem điện áp trên INT1
là :
VINT1=IRL
Trở kháng của quang trở giảm khi cường độ sáng tăng, nghóa là điện áp V INT1
giảm. Thay thế vào biểu thức trên ta được :
INT

V

= RL

1

R+RL

Bộ biến đổi A/D trong mạch ADC 0809 ánh xạ điện áp biến thiên VINT1 vào
tầm 0-255. R nên chọn giá trò tương đương với trở kháng của quang trở khi được


h
đặt trong vùng ánh sáng có độ sáng trung bình trong tầm có thể biến đổi của

quang trở.
5.2.2 Cảm biến tiếp cận hồng ngọai (Near-infrared proximity detector) :
Các cảm biến tiếp cận hồng ngoại gần (gọi tắt là IR) không nhạy cảm với
bước sóng hồng ngoại dài thường được thu bởi cảm biến pyroelectric (hỏa điện),
mà thường nhạy cảm với bước sóng khoảng 880-900 nanomet. Mặc dù các cảm
biến này không trả về khoảng cách thực sự đến vật thể, chúng báo hiệu rất chắc
chắn sự hiện hữu của một vật thể trong vùng phát hiện hình nón.
Một hệ thống hồng ngoại thường gồm phần phát và phần thu. Phần phát chỉ
đơn giản là một hoặc nhiều Led phát hồng ngoại bước sóng 880nm, phần thu có
thể là photodiode hoặc phototransistor. Để gọn nhẹ, các nhà sản xuất đã tích hợp
phần thu bao gồm bộ khuyếch đại, bộ lọc tần số, bộ giới hạn vào một module.
Module dò hồng ngọai GP1U52X đáp ứng với sóng mang có tần số 40kHz. Tần số
40kHz có nghóa là Led được chớp tắt vào chu kỳ 25µs. Theo bảng chi tiết kỹ thuật
của thiết bò, tín hiệu này nên được điều chế tại tần số thấp hơn. Việc chớp tắt sẽ
được thực hiện trong 600µs và ngưng trong 600µs, nghóa là tần số điều chế
1667Hz. Hình vẽ dưới đây sẽ thể hiện giản đồ thời gian và giao thức của bộ thu-


h
Tín hiệu từ LED phát

600micro giây 600micro giây

t

Tín hiệu từ bộ dò

t

Chú ý rằng tín hiệ

phá
u t phải lan truyền trong vài chu kỳ trước khi được nhận
biết bởi độ dò. Tương tự, khi ngừng phát phải mất vài microgiây bộ dò mới thay
đổi trạng thái. Phần dao động 40kHz của mạch phát hồng ngoại sử dụng hai bộ
đảo (2/6 của IC74HC04). Mạch dao động này chạy liên tục khi được cấp nguồn ,
nhưng chỉ chớp tắt Led khi các chân P2.0 và P2.1 của port 2 được sử dụng. Led
phát khi các bit này ở mức cao và ngược lại. Do đó, cần bật và tắt các bit này mỗi
600µs. Ngõ ra của module dò sẽ ở mức thấp (0V) khi có tín hiệu phản xạ và ở
mức cao (5V) khi không nhận được tín hiệu, nghóa là ngõ ra này thuộc loại digital.
Do đó chân P3.2 của Port 3 có thể được sử dụng trực tiếp không qua bộ chuyển
đổi ADC 0809.
Chương trình phát hiện vật thể có thể viết dễ dàng bằng ngôn ngữ Assemply
cho mạch vi xử lý. Đầu tiên P2.0 được bật và không làm gì khác trong 600µs, sau
đó P3.2 được kiểm tra và trạng thái của nó được lưu trong ô nhớ trong RAM. Tiếp
theo tắt P2.0 và không làm gì trong 600µs kế, sau đó P3.2 được kiểm tra lần nữa
và lưu trạng thái của nó vào một ô nhớ khác trong RAM. Một vật thể được phát
hiện nếu ngõ ra bộ dò ở mức thấp khi Led phát và ở mức cao khi Led tắt. Bằng
cách chớp tắt Led liên tục sẽ làm giảm nhiễu của bộ dò
5.2.3 Cảm biến hồng ngoại đo tầm (near-infrared range sensor) :
Module GP1U52X ở trên thì phổ biến, dễ sử dụng. Tuy nhiên, để đo chính xác
tầm của một vật thể ở gần , cần sử dụng cảm biến GP2D12 có ngõ ra analog cho
ra một điện áp có độ lớn phụ thuộc vào khoảng cách đến vật cản.
Module GP2D12 gồm một Led phát hồng ngoại và một bộ dò nhạy với
khoảng cách PSD. Không như bộ dò tiếp cận IR, GP2D12 tính toán tầm thật sự


h
đến vật thể dựa trên phép đo tam giác. Module này tương đối không nhạy cảm
với màu sắc và bản chất của vật thể phản xạ.
Hình vẽ dưới đây thể hiện cách thức bộ dò làm việc. Bộ phát chiếu sáng một

vùng nhỏ trên bề mặt vật thể với ánh sáng hồng ngoại để điều chế. Một thấu kính
tạo ảnh của điểm sáng trên phần tử tích cực ở phía sau bộ thu. Ngõ ra của phần tử
tích cực là hàm của vò trí mà ảnh hiện lên trên đó. Trên (hình b) ảnh hiện ở giữa
phần tử tích cực, khi thiết bò xa vật thể hơn (hình a), ảnh lệch về phía đáy …

Như đã thể hiện trên hình vẽ, khi khoảng cách giữa thiết bò và vật thể quá
gần, khoảng 8cm, ảnh hoàn toàn mất trong vùng tích cực của phần tử dò. Do đó,


h
module không thể phát hiện một vật thể ở quá gần cũng như quá xa (năng lượng
phản xạ quá yếu để có thể kích họat bộ dò) tầm làm việc. Trong khoảng từ 10-40
cm điện áp ngõ ra tương đối tuyến tính với khỏang cách, và giá trò này cần được
chuyển đổi A/D trước khi sử dụng.
Ngõ ra tín hiệu của cảm biến được đưa vào kênh IN0 của bộ biến đổi A/D
5.2.4 Cảm biến hỏa điện (pyroelectric sensor) :
Một trong những cảm biến hữu dụng cần cho robot để tương tác với con người
là cảm biến hỏa điện. Cảm biến pyrolectric là thành phần quan trọng trong một số
loại báo động chống trộm dùng nguyên lý phát hiện chuyển động. Ngõ ra của
cảm biến pyroelectric thay đổi khi có một sự thay đổi nhiệt độ nhỏ trên cảm biến.
Thành phần tích cực trong loại cảm biến này là tinh thể lithium tantalate. Điện
tích được tạo ra khi tinh thể bò đốt nóng. Các cảm biến hỏa điện được tối ưu hóa
để phát hiện bức xạ có bước sóng 8-10 µm (còn gọi là bức xạ hồng ngoại dài phát
ra bởi con người ). Khả năng này làm chúng tiện ích trong các loại cảm biến
chuyển động và hệ thống an toàn.
Hình vẽ dưới đây mô tả giao tiếp giữa vi xử lý 89C51 và cảm biến
pyroelectric. Cảm biến Eltec 442-3 gồm 2 tinh thể lithium tantalate. Ngõ ra của
cảm biến là sai lệch điện áp đã khuyếch đại giữa hai tinh thể. Trong trường hợp
cả 2 tinh thể có cùng nhiệt độ, cảm biến tạo ra tín hiệu luôn ở mức 2,5V (nguồn
cung cấp là 5V). Nếu một người đi ngang qua cảm biến từ trái sang phải, tín hiệu

sẽ vọt lên trên 2,5V khoảng 1V và rồi sụt xuống dưới mức đó và trở về trạng thái
bền 2,5V. Nếu người đó đi từ phải sang trái, tín hiệu đầu tiên sẽ sụt xuống, sau đó
vọt lên và sau cùng trở về trạng thái bền.
5.0 V
2.5 V
0 V
+5

INT 3

Sử dụng thông qua bộ biến đổi A/D của mạch vi xử lý tín hiệu của cảm biến
được trả về dưới dạng số. Chương trình xử lý tín hiệu thu về từ bộ A/D nhận biết


h
khi nào kết quả đọc từ cảm biến nằm trên hay dưới một ngưỡng đã ấn đònh trước,
để có thể kích hoạt một số hành vi của robot. Các chương trình phức tạp hơn có
thề biết được hướng đi của người và cố gắng hướng robot đi chỗ khác.

5.3 Cảm biến lực :
Trong các loại cảm biến thì cảm biến lực tương đối tin cậy, do không nhạy với
nhiễu và cho ra tín hiệu dễ diễn dòch nhất. Cảm biến lực được dùng để xác đònh
khi nào robot va chạm với các vật thể và vò trí chạm tương đối với robot. Những
thông tin như vậy giúp robot xoay trở để thoát đi khi có va chạm. Một số loại cảm
biến lực thông dụng như vi công tắc (microswitch), điện trở dán (load cell), cảm
biến bẻ cong. Trong khuôn khổ luận văn chúng em xin trình bày về microswitch.
Microswitch :
Microswitch là các công tắc đóng nhả nhỏ, được gắn xung quanh robot để báo
hiệu khi robot va chạm với vật cản. Hình vẽ dưới đây mô tả một phương pháp
dùng Microswitch để phát hiện va chạm giữa robot với các vật cản khác nhau.

Các Microswitch được gắn theo cách thức: khi có va chạm, một hoặc hai công tắc
sẽ đóng, do đó thể hiện vò trí tương đối cuả robot và vật cản.

Cảm biến lực

Thân robot

Có hai cách để giao tiếp công tắc này với mạch vi xử lý. Mạch điện sau tương
đối dễ hiểu. Một chân của port P 3.2 được dùng cho một công tắc. Khi robot va
chạm, một hoặc hai công tắc sẽ đóng, làm thay đổi trạng thái của bit tương ứng từ
0 đến 1. Ưu điểm của cách này là ngõ ra có dạng digital nên không cần biến đổi
A/D, tuy nhiên nó dùng đến 3 ngõ vào của Port 3.


h
+5

P3.2

4.7k

P3.3
P3.4

4.7K

4.7K

Có một cách khác cùng một chức năng như cách trên, nhưng chỉ dùng một ngõ
vào của Port 3. Ta dùng một mạng các điện trở để tạo ra các giá trò điện áp khác

nhau tại đầu vào của 89C51 phụ thuộc công tắc nào sẽ bò đóng. Chế độ A/D của
ADC 0809 cần được sử dụng. Chương trình xử lý đọc giá trò trả về từ bộ biến
đổiA/D, chuyển đổi kết quả rồi đọc một trong tám cờ nhớ lưu trữ trong RAM nội .
Cờ nào được đặt sẽ phản ánh công tắc hay bộ công tắc nào đã bò đóng, dựa trên
tám tầm của điện áp sụt trên các điện trở.
+5

47K

A

1k
2.2K
47K

INT3

B

1K
47K

C
1K

Phân tích kỹ ta thấy đây chỉ là một mạch cộng điện áp, miễn là dòng điện
chảy từ nguồn 5V qua điện trở 2.2K và hai điện trở 1K xuống mass lớn hơn nhiều
so với dòng chảy vào bất cứ phần nào của mạch. Điện áp nguồn được lấy ra tại
các điểm 1/4, 1/2, 1 lần điện áp nguồn , do đó điện áp tổng sẽ là 1/3 x(A+B+C)
(trong đó mổi điểm A,B,C được nối vào các điểm ra tương ứng hoặc xuống mass).

Vì bộ biến đổi A/D cho ra các giá trò số từ 0-255 nên điện áp đọc được sẽ là 1/3
của 255 lần điện áp tổng từ các công tắc. Ví dụ, khi chỉ có công tắc A bò đóng (nối
xuống mass), giá trò đọc được từ A/D sẽ là:
1/3x255x(0+1/2+1/4)=64


h
Khi các công tắc B,C bò đóng giá trò đọc là 85.

5.4 Các cảm biến vò trí và hướng :
Bộ mã hóa trục quay (shaft encoder)
Shaft encoder là một cảm biến đo vò trí hoặc tốc độ quay của một trục. Thông
thường, shaft encoder được gắn trên trục ra của motor dẫn động. Tín hiệu phát ra
bởi cảm biến này có thể là mã tương ứng với vò trí nào đó của trục quay (còn gọi
là bộ mã hóa tuyệt đối) hoặc là một chuỗi xung. Bộ mã hóa phát ra một chuỗi
xung được gọi là bộ mã hóa tăng dần. Mỗi lần trục quay một góc nhỏ,trạng thái
ngõ ra của nó thay đổi từ mức cao xuống mức thấp hoặc ngược lại. Do đó, tốc độ
các xung được phát ra tương ứng với tốc độ quay của trục.
Một biến trở có thể được dùng như bộ mã hóa tuyệt đối. Mỗi vò trí của trục
xoay có một trở kháng duy nhất. Mã hóa tuyệt đối dùng để xác đònh vò trí của
cánh tay robot.
Mã hóa tăng dần thường được dùng để phản hồi vò trí của robot trong không
gian (bánh xe được quay bao xa) hay để đồng nhất vận tố của 2 bánh xe (mỗi bánh
được gắn một bộ mã hóa). Có 2 loại mã hóa tăng dần phổ biến: photoreflector
hoặc photointerrupter.
• Photointerrupter :
Loại này chứa một đóa xoay trên đó có khắc các rãnh. Đóược gắn trên trục
động cơ và xoay cùng với nó. Một Led hồng ngoại được đặt ở một phía của đóa và
một phototransistor ở phía còn lại. Khi đóa quay, ánh sáng xuyên qua đóa bò ngắt
bởi các khe chuyển động. Do đó tại ngõ ra của phototransistor tín hiệu sẽ có dạng

chuỗi xung. Chuỗi xung này được đếm bằng bộ vi xử lý. Toàn bộ hệ thống gồm :
Led phát hồng ngoại và photodetector được gắn ở hai bên của đóa xoay được gọi
là bộ photointerrupter.
• Loại photoreflector :
Loại này dựa trên nguyên lý phản xạ của chùm tia hồng ngọai. Chùm hồng
ngoại từ một Led phát, chiếu lên một đóa có các vạch đen trắng xen kẽ nhau và
phản xạ về một phototransistor. Tùy thuộc vào vạch đen hay trắng mà tia hồng
ngïoại có phản xạ trở lại đến phototransistor hay không, do đó tại ngõ ra của
phototransistor, tín hiệu có dạng chuỗi xung. Ưu điểm của photoreflector là hệ
thống thu và phát được đặt cùng một phía với đóa quay. Đóa quay không nên mỏng
quá, nếu không năng lượng phát ra từ Led hồng ngoại có thể xuyên qua giấy


h
mỏng, và không thể phản xạ lại trở lại bộ thu, nó có thể đơn giản là một đóa nhựa
trắng trên đó có sơn các vạch đen. Đóa mã dưới đây có 8 vạch trắng và 8 vạch đen
xen kẽ nhau, càng nhiều vạch thì độ phân giải càng lớn, tuy nhiên bề rộng của
mỗi vạch không nên hẹp quá.



×