Chương 1. TỔNG QUAN.7
1.1. Ngôn ngữdấu hiệu.7
1.1.1. Ngôn ngữdấu hiệu là gì ?.7
1.1.2. Một sốchuẩn trên thếgiới và Việt Nam.8
1.1.3. Mục tiêu của khoá luận.9
1.2. Các phương pháp nhận biết ngôn ngữdấu hiệu.10
1.2.1. Nhận biết ngôn ngữbằng phân tích hình ảnh.10
1.2.2. Nhận biết bằng cảm biến.15
1.2.3. Nguyên tắc vận hành của việc sửdụng cảm biến.16
1.2.4. So sánh haiphương pháp.25
Chương 2. TÌM HIỂU VỀCẢM BIẾN VÀ VI ĐIỀU KHIỂN.26
2.1. Tìmhiểu vềcảm biến gia tốc.26
2.1.1. Nguyên lý làm việc của cảm biến.26
2.1.2. Sensor gia tốc ADXL202.26
2.1.3. Phương pháp chuẩn.31
2.2. Tìmhiểu vềvi điều khiển BasicStamp.32
2.2.1. Nguyên lý vận hành.32
2.2.2. Phần cứng.32
2.2.3. Ngôn ngữBasicStamp.34
Chương 3. XÂY DỰNG THIẾT BỊGĂNG TAY CẢM NHẬN GIA TỐC.35
3.1. Thiết kếphần cứng.35
3.2. Chuẩn hoá sensor.36
3.3. Xây dựng phần mềm.40
3.3.1. Viết chương trình cho vi điều khiển BasicStamp.40
3.3.2. Chương trình trên máy tính.40
63 trang |
Chia sẻ: lethao | Lượt xem: 1817 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Xây dựng hệ thống nhận biết ngôn ngữ dấu hiệu sử dụng cảm biến vi cơ điện tử, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
i thấp hơn của chuỗi. Người ra
hiệu di chuyển cánh tay của họ tới một số vị trí nhưng năng lượng dư thừa phần lớn
giảm xuống từ sự di chuyển tay trong hai vùng này. Hệ số năng lượng dư thừa trong
vùng này liên quan tới mức thấp.
1.2.1.6. Kết luận
Từ kết quả thực nghiệm người sử dụng ngôn ngữ dấu hiệu đã đưa ra một sự
phù hợp trong phương pháp nhận biết của họ, điều này phù hợp với tất cả các vật thể
và tương ứng với sự quan sát trong khi nghiên cứu ngôn ngữ dấu hiệu. Việc chọn vị trí
sẽ cải thiện chất lượng của việc mã hoá chuỗi ngôn ngữ dấu hiệu hình ảnh. Sự quan
tâm của người sử dụng là tập trung trên những vùng có đặc điểm tốt quanh người ra
hiệu, với những cử chỉ bất ngờ của tay người. Những dấu hiệu này có thể dành những
vùng ưu tiên của hình ảnh có trong không gian và biểu thị thời gian.
1.2.2. Nhận biết bằng cảm biến
Ở đây người ta dùng một hệ gồm nhiều sensor gắn với vi điều khiển và máy
tính. Thiết bị này được mô ta bởi hình sau.
15
Đinh Duy Chương Khóa luận tốt nghiệp
Hình 10: Sơ đồ kết nối hệ đo với vi điều khiển và máy tính
Hệ nhận biết bằng cảm biến bao gồm các thành phần:
9 Một máy tính PC
9 Một vi điều khiển
9 Hệ thống loa
9 Hệ sensor
1.2.3. Nguyên tắc vận hành của việc sử dụng cảm biến
1.2.3.1. Hệ thống
9 Hệ sensor sẽ truyền tín hiệu cho vi điều khiển. Vi điều khiển sẽ đọc tín hiệu
này và truyền dữ liệu cho máy tính sử lý và kết quả sẽ được đưa ra loa. Hoặc hiển thị
dạng text.
9 Cụ thể là từ tín hiệu xung của hệ sensor vi điều khiển sẽ đọc tín hiệu đó và xử
lý, tiếp theo vi điều khiển sẽ gửi dữ liệu dưới dạng ASCII cho máy tính qua cổng
COM.
9 Thành phần của hệ thống là Accele Glove, cung cấp cách đo vị trí của các
ngón tay tương ứng với véc tơ trọng trường.
9 Bằng việc sử dụng lối ra số của sensor gia tốc MEMS gắn trên các ngón tay
và sử dụng vi điều khiển. Máy tính PC được sử dụng cho việc phân tích dữ liệu và
thực hiện các thuật toán. Khi lập trình với các thuật toán, vi điều khiển sẽ chuyển tới
bộ tạo ngưỡng tiếng nói với những ký tự ASCII, bởi vậy mà trên thực tế người ra hiệu
những từ “speaks out” và những câu ngắn.
16
Đinh Duy Chương Khóa luận tốt nghiệp
1.2.3.1.1. Định vị sensor
Tay người có 17 điểm tích cực trên cổ tay: 3 trên mỗi ngón trỏ, ngón giữa,
ngón nhẫn và ngón út, 3 trên ngón cái và pitch roll trên cổ tay. Những điểm cần thiết
giữa những dấu hiệu là nhân tố chủ yếu, nếu hệ thống có thông tin đầy đủ, không rõ
ràng sẽ giảm tốc độ nhận dạng. Gắn liền với 5 trục sensor trên đầu ngón tay, những
điểm của ngón tay và điểm đầu của ngón tay cái, ngoại trừ tình trạng có nhiều nghĩa
cho 26 dáng điệu của bảng chữ cài ASL. Việc định vị trục được chỉ ra trên hình sau:
Hình 11: Các trục trên sensor khi gắn lên tay
1.2.3.1.2. Tín hiệu thu được
Vị trí đọc được là chu kỳ của tín hiệu lối ra. Khi một sensor ở vị trí ngang chu
kỳ là 50%. Khi góc nghiêng của nó từ +90o tới –90o chu kỳ biến đổi từ 37.5% tới
62.5%. Vi điều khiển giám sát lối ra và đo trong khoảng thời gian lối ra ở mức cao,
nếu sử dụng bộ đếm 10 ms thì giải đo được sẽ là từ (375/10) = 37 count với 90o tới tối
đa là (625/10) = 62 count với –90o, một span là 25 count. Sự không tuyến tính và bão
hoà hai đặc tính này của thiết bị làm giảm dải sử dụng xuống còn . Vì thế độ
phân giải là 6.5
o80±
o. Lỗi của một số lần đo được tìm thấy là 1± bít, hay . Sai số này
lớn hơn so với Wise (5
o5.6±
o) và nhỏ hơn Quam (11o). CyberGlove có thể được hiệu chỉnh
đo những dải khác nhau của những biến tố sử dụng 8 bit, nhưng độ chính xác bị giảm
xuống, giảm sự lặp lại.
1.2.3.1.3. Thu thập dữ liệu
9 Độ rộng 10 xung được đọc bởi vi điều khiển, bắt đầu với trục X tiếp theo là Y
lần đầu là ngón cái. Đưa ra 10 ms là tập trung tất cả các vị trí của ngón tay. Trong suốt
quá trình phân tích trạng thái của các ngón tay thì vị trí được gửi như một gói dữ liệu
10 byte qua cổng nối tiếp của PC và được ghi lại dưới file text.
17
Đinh Duy Chương Khóa luận tốt nghiệp
9 Mọi ký tự dấu hiệu của bảng chữ cái. Ký tự “J” và “Z” được lấy mẫu ở vị trí
cuối cùng. Điều này cho phép bắt được những sự khác nhau và những người ra hiệu
tương tự trong 26 file với ma trận 10x10.
1.2.3.2. Lựa chọn tính năng và nguồn gốc
9 Tập hợp 10 quá trình đo, hai trục trên một ngón tay, đưa ra một véc tơ của dữ
liệu. Như đã được chỉ ra trong lời phần trên: Uras đưa ra đặc điểm diễn biến của sự
việc, Lamar rút ra được “eigenvalues” và “eigenvalue” từ những hình ảnh. Kramer
không thử đặc tính ban đầu, nhưng làm việc với véc tơ dữ liệu, như khi Shahabi làm,
ông khẳng định lần đầu tiên sử dụng hàng loạt quyết định cho việc phân tích dữ liệu
căn cứ vào xúc giác, ông cũng khẳng định lần đầu tiên sử dụng “Bavesian Classifier”
cho phân tích dữ liệu căn cứ vào xúc giác và sử dụng việc so sánh “Back Propagation
Neural Networks” với “Bayesian Decision Tree” để nhận ra dữ liệu tĩnh. Trái với kết
quả này ông cho rằng “Decision trees” không phù hợp với việc nhận dạng dấu hiệu, ta
phải chỉ rõ và xác minh sự trái ngược này.
9 Mục tiêu là rút ra một tập hợp những đặc điểm để đưa ra cử chỉ mà không có
sự tối nghĩa trong “Posture Space”. Nếu Stokoe và Costello đã định nghĩa cử chỉ như
là sự kết hợp của hình ảnh và hướng của tay, và hai tính năng này phù hợp để đưa ra
một số ký tự dễ hiểu, sau đó việc xử lý rút ra những đặc trưng sẽ lấy lại hai thành phần
này từ dữ liệu đơn giản. Accele Glove khác với tất cả thiết bị khác được tìm thấy,
trong đó nó có thể không chỉ đo độ uốn của ngón tay mà còn xác định hướng của tay
mà không cần sensor khác ở bên ngoài như bộ theo dõi từ trường. Hay bộ theo dõi siêu
âm của Mattel’s. Ở đây ta định nghĩa một véc tơ P trong không gian cử chỉ.
9 P=[hình ảnh tay, hướng lòng bàn tay]
9 P là sản phẩm của véc tơ dữ liệu đơn giản D bằng việc chuyển đổi ma trận T:
P=D*T=[Xg Yg yi] (1)
9 Véc tơ dữ liệu đơn giản ở đây là:
D = [xt yt xi yi xm ym xr yr xp yp] (2)
9 T = ngón cái, I = ngón trỏ, M = ngón giữa, R = ngón nhẫn, P = ngón út
9 Hình ảnh tay được chia thành hai phần con, Xg và Yg. Phần đầu tiên đo độ
cuộn tương ứng với cổ tay, phần thứ hai đo độ lên xuống của ngón tay. Thành phần
khác của không gian cử chỉ là hướng của lòng bàn tay yi, lớp cử chỉ chia thành 3 lớp
18
Đinh Duy Chương Khóa luận tốt nghiệp
con: closed, horizontal và vertical (hay open). Chỉ số vị trí y được sử dụng cho những
cử chỉ này. Ma trận chuyển vị:
T
T
0000001000
1010101010
0101010101
= (3)
9 Tổng hợp các thành phần cử chỉ
{ }∑ ∈= prmitnXX ng ,,,,,
{ }∑ ∈= prmitnyY ng ,,,,,
[ ]4Datayi =
9 Những thành phần trên được gọi: vị trí tổng quan X (Xg), vị trí tổng quan Y
(Yg), và hướng yi (lớp con)
9 Thành phần đầu Xg được đưa ra bằng tổng của những tín hiệu x trên véc tơ
ban đầu, điều này cho chúng ta biết về hướng của lòng bàn tay, đo sự quay của tay khi
trong vị trí “horizontal” và đo sự lên xuống của ngón tay khi các ngón tay ở vị trí
“Vertical”. Thành phần thứ hai, Yg, mô tả hoàn toàn hình ảnh của tay như tổng số các
khớp ngón tay, điều này đạt được bằng cách cộng tất cả 5 tín hiệu y. Thành phần thứ
ba của véc tơ D là yi. Với các tính năng mới này, các mẫu này được hình dung một
cách dễ dàng như là các điểm trong không gian 3 chiều.
1.2.3.3. Phân loại
9 Không gian mẫu bao gồm 50 véc tơ cử chỉ cho mỗi ký tự trong 26 ký tự. Hình
12 chỉ ra giá trị trung bình 50 mâu của một ký tự trong 26 ký tự trong không gian cử
chỉ.
19
Đinh Duy Chương Khóa luận tốt nghiệp
Hình 12: Các cử chỉ trong không gian
9 Hình 13 chỉ ra giá trị trung bình được chiếu trên trục “Vertical”, vị trí y của
ngón trỏ yi ứng với trục này.
Hình 13: Chiếu lên trục “Vertical”
9 Nói chung, việc giải quyết một số vấn đề nhận dạng đa lớp có thể thực hiện
được với phân loại đơn. Tuy nhiên việc phân loại này sẽ có độ phức tạp cao, như đã
được tìm thấy trong phần trên. Thay vào đó ta chia không gian sử dụng thành hai phần,
20
Đinh Duy Chương Khóa luận tốt nghiệp
tạo ra 3 lớp con chính được nhóm rõ ràng trong hình 13: “Vertical”, “Horizontal”, và
“Closed”.
9 Sau khi phân biệt thứ tự đầu tiên này, độ phức tạp của việc phân loại giảm đi,
và dễ dàng thực thi sử dụng một vi điều khiển BasicStamp đơn chíp. Và quá trình nhận
dạng một cử chỉ có thể được mô tả như sau:
• Bước 1: Các lớp con được phân biệt sử dụng hai phần xác định bởi vị trí
ngón trỏ trong hình 13
• Bước 2: Các thành phần của mỗi lớp con được chiếu lên mặt phẳng xác
định lớp con. Nói một cách khác, chỉ Xg và Yg được đưa vào sau tính
toán trong xử lý phân loại. Hình 14.a,b,c chỉ ra sự suy giảm mới trong kích
thước.
21
Đinh Duy Chương Khóa luận tốt nghiệp
Hinh 14: Sự suy giảm
• Bước 3: Nếu việc thực hiện mới không đủ để phân biệt một ký tự sử dụng
một quy tắc đơn giản (quy tắc Bayes, hàm tuyến tính), thì một lớp con mới
được gửi tới phân loại khác để tìm kiếm những khác biệt riêng từ dữ liệu
ban đầu.
9 Lớp con “Vertical” được định nghĩa bởi tất cả những lớp dưới mặt phẳng xác
định bởi yi = 9. Những ký tự ‘B’, ‘D’, ‘K’, ‘L’, ‘R’, ‘U’, ‘V’, và ‘W’ thuộc lớp con
này. Lớp con “Horizontal” được đặt giữa mặt phẳng xác định bởi yi = 9 và mặt phẳng
xác định bởi yi = 12. Những ký tự ‘C’, ‘E’, ‘G’, ‘H’, ‘J’, ‘P’, ‘T’, ‘X’, và ‘Z’ thuộc lớp
con này. tất cả những lớp với yi > 12 sẽ thuộc lớp con “Closed”. Đó là trong trường
hợp cho các ký tự ‘A’, ‘F’, ‘I’, ‘M’, ‘N’, ‘O’, ‘Q’, ‘S’, và ‘Y’.
9 Lưu ý rằng, mặc dù dấu hiệu ‘F’ không giống như sử dụng một nắm tay khép
kín, và ‘D’ không giống như bàn tay mở ở vị trí dọc, chúng được phân loại như trên vì
việc phân loại chỉ dựa trên trạng thái của ngón tay trỏ.
22
Đinh Duy Chương Khóa luận tốt nghiệp
1.2.3.4. Cấu trúc có thứ tự
Dưới đây là sơ đồ cấu trúc có thứ tự
Hình 15: Sơ đồ cấu trúc có thứ tự
Hàng loạt quyết định sử dụng ký hiệu được đưa ra bởi Erenshteyn. Khối đầu
tiên trong trật tự này liên quan tới “feature extraction” ở đó Xg, Yg, và yi được tính
toán sử dụng phương trình (1), (2), và (3), các mẫu không gian 3 chiều được tạo dạng.
“Dispatcher” đầu tiên thực hiện một sự so sánh đơn giản trên Yi để phân biệt ba lớp
con được chỉ ra trên hình 15. Mức thứ hai của “Dispatchers” sẽ phân biệt xa hơn tới
các bộ phận khác của các lớp con dựa trên các tính năng tương tự của chúng, như cử
chỉ ‘flat’ and ‘rolled’ trong hình 15. Người nhận dạng sẽ nhìn vào các thuộc tính trong
không gian tính năng để cuối cùng nhận ra các ký tự từ tập hợp các lớp con. Ví dụ như
trong hình 15, ký tự ‘F’ dễ dàng nhận từ phần còn lại bằng việc vẽ một đường tại Yg =
45. Giống như ‘F’, nhiều ký tự được nhận ra trong hai bước trong khi đó càng về cuối
thì càng khó khăn.
23
Đinh Duy Chương Khóa luận tốt nghiệp
1.2.3.5. Kết quả
9 Phương thức phân loại đã được thực thi như một chuỗi các câu lệnh ‘if-then-
else’ sử dụng Matlab, và đã được kiểm tra sử dụng tổng tất cả 1300 mẫu để đo tốc độ
nhận dạng, trước khi vi điều khiển được lập trình với các thuật toán. 21 trong 26 ký tự
đạt tới tốc độ nhận dạng 100% sử dụng phương thức thay thế lại. Ký tự ‘I’ và ‘Y’
trùng khớp với nhau, như được chỉ trên hình 15. Để nhận ra hai ký tự này, quy tắc
Bayes đã được áp dụng như sau: mẫu x được quy cho lớp wI nếu:
9 P(x|wI) p(wI) > p(x|wY) p(wY) (7)
9 Trong đó p(wI) là xác suất ưu tiên của ký tự ‘I’ và p(wY) là xác suất ưu tiên
của ký tự ‘Y’. Để ước lượng xác suất điều kiện p(x|wI) và p(x|wY), ta sử dụng biểu đồ
phân phối lớp trên Xg.
9 Tốc độ “misclassification” được đưa ra từ quy tắc Bayes, dựa trên biểu đồ,
được ước lượng như là phần trăm của các mẫu được phân loại. Nói một cách cụ thể,
hai mẫu của Y được “missclassified” như những thành phần của lớp I, tốc độ lỗi là:
E(Y) = 2 / 50 = 4%.
9 Ký tự ‘R’, ‘U’, và ‘V’ là trường hợp khó khăn nhất, khi các phân phối lớp của
chúng trùng nhau, do đó không thể chỉ một hàm tuyến tính để phân biệt chúng mà
không xảy ra lỗi, hai thành phần của lớp ‘U’, và một thành phần từ lớp ‘V’ và lớp ‘R’
được “misclassification” làm giảm độ chính xác tới 90%, 78% và 96% một cách tương
ứng. Tính năng được sử dụng để lắp ráp biểu đồ trong trường hợp này là vị trí X của
ngón trỏ, hay sự giạng ra của ngón tay.
1.2.3.6. Kết luận về phương pháp này
Với hiểu biết của chúng ta, việc sử dụng sensor gia tốc tại các điểm nối PIP
trong hệ thống “self-contained” để nhận ra bảng chữ cái ASL chỉ là lý thuyết. Việc đưa
những dấu hiệu như là tập hợp các mẫu 3-D và phép chiếu sau đó lên mặt phẳng cho
phép khắc phục vấn đề về chiều cũng như tiếp cận lý thuyết trong việc nhận dạng hình
ảnh của tay. Hệ thống đã chứng minh tính linh động và chính xác cho dấu hiêu nhận
dạng từ những người sử dụng khác nhau thậm chí họ là những người chưa có kinh
nghiệm trong vấn đề ra hiệu. Không giống như CyberGlove và DataGlove, độ chính
xác không phụ thuộc vào người sử dụng, kích thước tay. Vấn đề chính của việc sử
dụng sensor gia tốc như là các sensor vị trí góc là chúng đáp ứng sự thay đổi với véc tơ
trọng trường, nhưng chúng không nhạy cảm với cử động quay. Do đó sử dụng Accele
Glove với dấu hiệu “Horizontal” là khó có thể thực hiện, cũng như với các dấu hiệu
24
Đinh Duy Chương Khóa luận tốt nghiệp
NASA. Một thuận lợi của phương pháp chiếu là sau khi phép chiếu của một lớp con
lên mặt phẳng tương ứng của nó, có thể tìm ra khoảng trống ở đó dấu hiệu mới có thể
được đưa ra. Đó là trường hợp với ‘space’ được thêm vào bảng chữ cái ASL để phân
biệt giữa các từ, và ‘enter’ để việc phân biệt các từ hay các câu được hoàn thành. Hai
lệnh này thực sự chuyển đổi hoàn toàn hệ thống này thành Finger Spelling tới bộ tạo ra
tiếng nói.
1.2.4. So sánh hai phương pháp
9 Phân tích hình ảnh
• Ưu điểm
Không bị cản trở bởi chuyển động
Độ nhạy không bị mất bởi việc tiếp cận
• Nhược điểm
Dễ bị nghẽn dữ liệu
Với camera đa chức năng có thể gặp khó khăn và tốn thời gian
Bị ảnh hưởng bởi ánh sáng
Giá thành cao
9 Phân tích bằng cảm biến
• Ưu điểm
Dữ liệu thu được chính xác
Có thể thu thập được hướng, vị trí và dữ liệu xúc giác
Không bị nghẽn dữ liệu
Giá thành thấp
• Nhược điểm
Yêu cầu nguồn cung cấp
Độ nhạy bị suy giảm bởi việc tiếp cận
Có thể bị hạn chế bởi chuyển động
Từ việc phân tích các phương pháp trên, em thấy rằng phương pháp dùng cảm
biến là phù hợp cho việc xây dựng một hệ thống nhỏ gọn
25
Đinh Duy Chương Khóa luận tốt nghiệp
Chương 2. TÌM HIỂU VỀ CẢM BIẾN VÀ VI ĐIỀU
KHIỂN
2.1. Tìm hiểu về cảm biến gia tốc
2.1.1. Nguyên lý làm việc của cảm biến
Có nhiều loại cảm biến có thể đo được các thông số khác nhau. Trong đó việc
đo góc là được yêu cầu trong nhiều lĩnh vực như trong tự động hoá và trong công
nghiệp. Sensor có thể được chia thành nhiều loại theo nguyên lý chung như: Từ
trường, quang và điện dung.
2.1.2.Sensor gia tốc ADXL202
Có rất nhiều loại sensor có thể áp dụng được trong lĩnh vực này. Song hiện
nay sensor gia tốc ADXL202 được dụng khá phổ biến và đặc biệt là sự tiện lợi của
sensor này nên trong đề tài em dùng sensor ADXL202.
2.1.2.1. Tính năng
9 Sensor này được tích hợp trên một chíp đơn
9 Đo được cả gia tốc động và tĩnh
9 Người sử dụng có thể điều chỉnh được chu kỳ lối ra
9 Nguồn cung cấp thấp < 0.6mA
9 Đáp ứng nhanh
9 Dải thông có thể hiệu chỉnh nhờ một tụ đơn. Có độ phân giải 5mg ở dải thông
60Hz
9 Điện áp vận hành +3V tới +5.25V
9 Độ sốc là 1000g
2.1.2.2. Ứng dụng
9 Đo đọ nghiêng
9 Ghép nối máy vi tính
9 Hệ thống bảo mật
26
Đinh Duy Chương Khóa luận tốt nghiệp
2.1.2.3. Mô tả chung
9 ADXL202 gia thành thấp, nguồn cung cấp nhỏ. Có dải đo gia tốc gg 10/2 ±±
có thể đo được cả hai gia tốc động và tĩnh
9 Lối ra là tín hiệu số tương ứng với gia tốc trên hai trục. Lối ra có thể đo trực
tiếp nhờ bộ đếm của vi điều khiển mà không cần bộ biến đổi AD hay một bộ logic nào.
Chu kỳ lối ra được hiệu chỉnh từ 0.5ms tới 10ms thông qua một điện trở (Rset). Nếu
điện áp lối ra được đề cập thì điện áp này sẽ cân xứng với gia tốc sẵn có từ hai chân
XFilt và YFilt của sensor
9 Dải thông của ADXL202 có thể được đặt từ 0.01 Hz tới 5 kHz thông qua hai
điện trở Cx và Cy. Nhiễu nền điển hình là Hzg /500µ cho phép tín hiệu dưới 5mg
được giải quyết cho dải thông dưới 60 Hz.
9 Dải nhiệt độ làm việc của sensor là 0oC tới +70oC, tuy nhiên trong công
nghiệp lại là từ -40oC tới +85oC
2.1.2.4. Sơ đồ khối chức năng
Dưới đây là sơ đồ khối chức năng của sensor ADXL202.
Hình 20: Sơ đồ khối chức năng
27
Đinh Duy Chương Khóa luận tốt nghiệp
2.1.2.5. Cấu hình chân
Hình 21: Cấu hình chân
2.1.2.6. Nguyên lý vận hành
9 Lối ra của bộ giải điều chế điều khiển trạng thái bộ điều chế chu kỳ công suất
thông qua một điện trở 32kΩ. Ở điểm này một chân sẵn có trên trên một kênh cho
phép người sử dụng dặt dải thông của tín hiệu của thiết bị bằng một tụ điện thêm vào
đó. Bộ lọc này cải tiến độ phân giải của phép đo và chống nhiễu xuyên kênh.
9 Sau khi qua bộ lọc thông thấp, tín hiệu được biến đổi thành tín hiệu điều chế
chu kỳ công suất bởi trạng thái DCM. Một điện trở sẽ được đặt để quyết định đến chu
kỳ của T2, ở đó T2 biến đổi trong khoảng 0.5ms đến 10ms. Ở gia tốc 0g tương ứng với
50% chu kỳ công suất. Tín hiệu gia tốc có thể được quyết định bởi việc đo độ rộng
xung của T1 và T2 bằng bộ đếm hay bộ định thời của vi điều khiển.
9 Điện áp lối ra tương tự được lưu trữ bằng bộ đệm tín hiệu từ chân XFilt và
YFilt, hay thông qua tín hiệu chu kỳ công suất thông qua bộ lọc RC tạo thành tín hiệu
một chiều.
9 ADXL202 sẽ vận hành với điện áp cung cấp 3.0V đến 5.25V
9 T1 và T2 được biểu diễn bằng hình sau
Hình 22
2.1.2.7. Các thành phần phụ trợ
Ứng dụng chủ yếu là một tụ điện đơn 0.1µF, CDC, sẽ bỏ được nhiễu do nguồn
cung cấp. Tuy nhiên trong một số trường hợp thiết bị số như vi điều khiển chia sẻ
giống như nguồn cung cấp, nhiễu trên nguồn có thể gây nên nhiễu trên lối ra của
28
Đinh Duy Chương Khóa luận tốt nghiệp
ADXL202. Điều này thường thấy như hiện tượng gợn sóng của điện áp ở chân XFilt và
YFilt. Nếu thêm vào một số thiết bị cần thiết như một điện trở 100Ω hay một thanh
ferit, những thiết bị này có thể được chèn vào đường cung cấp nguồn cho ADXL202
2.1.2.8. Thiết kế một số thủ tục cho ADXL202
9 Thiết kế thủ tục cho việc sử dụng ADXL202 với lối ra chu kỳ công suất và tụ
lọc. Một số vấn đề liên quan đến dải thông độ phân giải của tín hiệu và yêu cẩu về mặt
thời gian được xem xét trong những phần sau:
9 Vdd: ADXL202 có 2 chân cung cấp nguồn 13 và 14. Hai chân này sẽ được
nối trực tiếp với nhau
9 COM: chân 4 và 7, hai chân này được nối trực tiếp với nhau và chân 7 được
nối tới đất.
9 Vtp: Chân này liên quan đến việc kết nối của sensor
9 Tụ CDC
9 ST
9 Giải mã chu kỳ công suất: Gia tốc tỉ lệ với T1/T2
2.1.2.9. Đặt dải thông cho ADXL202 sử dụng Cx và Cy
9 Dải thông của ADXL202 có thể đặt một cách đơn giản nhờ công thức:
),(
3
5
YX
dB C
FF µ=−
9 Từ công thức trên ta có bảng sau:
Dải thông Giá trị của tụ
10 Hz
50 Hz
100 Hz
200 Hz
500 Hz
5 kHz
0.47 µF
0.10 µF
0.05 µF
0.027 µF
0.01µF
0.001 µF
29
Đinh Duy Chương Khóa luận tốt nghiệp
Bảng 1
2.1.2.10. Đặt DCM với RSET
9 Để thay đổi T2 ta dùng công thức
Ω
Ω=
M
RT SET
125
)(2
9 Từ công thức trên ta có bảng thông số sau:
T2 RSET
1 ms
2 ms
5 ms
10 ms
125 kΩ
250 kΩ
625 kΩ
1.25 MΩ
Bảng 2
2.1.2.11. Sử dụng ADXL202 để đo độ nghiêng
9 Một trong những ứng dụng phổ biến của ADXL202 là đo độ nghiêng. Gia tốc
sử dụng lực trọng trường như là một véc tơ đầu vào để quyết định hướng của vật thể
trong không gian
9 Gia tốc là nhạy nhất trong đo độ nghiêng khi trục nhạy của nó trực giao với
lực trọng trường, i.e., song song với bề mặt của trái đất. Ở hướng nhạy sẽ thay đổi độ
nghiêng lớn nhất. Khi gia tốc được định hướng trên trục lực trọng trường, i.e., gần với
việc đọc +1 g hay –1 g của nó. Khi gia tốc vuông góc với lực trọng trường, lối ra của
nó sẽ thay đổi gần như 17.5 mg trên một độ nghiêng, đặc biệt với trường hợp là 450 thì
gia tốc chỉ thay đổi 12.3 mg trên độ nghiêng và độ phân giải giảm xuống.
9 Sensor gia tốc ADXL202 có hai trục đo được thể hiện trên hình vẽ.
30
Đinh Duy Chương Khóa luận tốt nghiệp
Hình 23: Trục đo của sensor
2.1.2.12. Biến đổi gia tốc thành độ nghiêng
9 Khi gia tốc được định hướng cả hai trục X và Y song song với bề mặt của trái
đất sensor này có thể sử dụng hai trục để đo Roll và Pitch. Một tín hiệu lối ra từ gia tốc
được biến đổi thành giá trị biến thiên từ -1 g tới +1 g. Góc nghiêng được tính toán
bằng công thức:
9 Pitch = ASIN (Ax/1 g)
9 Roll = ASIN (Ay/1 g)
9 Để không vượt quá phạm vi tính toán có thể cho gia tốc lối ra lớn hơn ± 1 g
để giảm độ rung, độ sốc hay một gia tốc khác.
2.1.2.13. Đo góc quay 360o
Ta có thể đo được đầy đủ 360 o của hướng quay quanh lực trọng trường bằng
cách sử dụng hai hướng gia tốc vuông góc với nhau.
Hình 24: Đo góc quay 3600
2.1.3.Phương pháp chuẩn
Như ta đã biết lổi ra số của sensor có dạng
31
Đinh Duy Chương Khóa luận tốt nghiệp
9 Trường hợp này ứng với cả hai kênh X và Y
9 Trong đó: T2 là chu kỳ dữ liệu lối ra trên các trục X và Y, T1 là độ rộng xung
tỷ lệ với góc nghiêng. Đặc biệt T2 có thể đặt được (10ms)
9 Có nhiều cách đo độ rộng của T1, tuy nhiên khi ghép nối với vi điều khiển
BasicStamp ta thường dùng bộ đếm của vi điều khiển để do T1 tương đối chính xác
9 Điều quan trọng là xác định được quy luật của sự phụ thuộc của tín hiệu xung
vào góc nghiêng, tức là ta phải xác định được một hàm biểu diễn được số xung lối ra
phụ thuộc vào góc nghiêng.
9 Về dạng đồ thị chúng như nhau nhưng pha lại lệch nhau 90o nên có cùng một
dạng hàm. Ở đây nếu dùng phần mềm Origin ta sẽ fit được hàm có dạng
⎟⎠
⎞⎜⎝
⎛ −=
w
xxAy cπsin
. Trong đó y là số xung lối ra trên kênh X hoặc Y, x là góc nghiêng
của sensor, còn w và xc và A là hằng số nào đó tuỳ thuộc vào sensor.
2.2. Tìm hiểu về vi điều khiển BasicStamp
Vi điều khiển BasicStamp được đưa vào sử dụng bởi các kỹ sư lần đầu tiên
vào năm 1992. Tháng 11 năm 2004 hãng Parallax đã đưa ra hàng triệu modul
BasicStamp vào quá trình sử dụng. Qua 12 năm họ đã đưa ra 6 mẫu và rất nhiều kiểu
đóng gói. Vi điều khiển này có rất nhiều đặc điểm thuận lợi cho người sử dụng, cụ thể
sẽ được giới thiệu ở phần sau.
2.2.1.Nguyên lý vận hành
9 Modul BasicStamp là vi điều khiển được thiết kế cho rất nhiều ứng dụng.
Nhiều đề tài yêu cầu gắn hệ thống với một vài thiết bị thông minh sử dụng modul
BasicStamp để điều khiển.
9 Mỗi vi điều khiển BasicStamp được tích hợp trên một chíp đơn bộ nhớ trong
RAM và EEPROM, bộ hiệu chỉnh thế 5V, một số chân vào ra I/O (mức TTL, 0 – 5V).
Modul BasicStamp có thể chạy vài nghìn lệnh trên một giây và có thể lập trình đơn
giản, tuỳ theo dạng ngôn ngữ lập trình của Basic và gọi là PBASIC.
2.2.2.Phần cứng
9 Sơ đồ phần cứng và cấu hình chân của BasicStamp 2sx
32
Đinh Duy Chương Khóa luận tốt nghiệp
Hình 25: Sơ đồ phần cứng
Vi điều khiển BasicStamp có một số đặc điểm chính sau:
9 Kích thước nhỏ
9 Trình biên dịch BASIC được tích hợp sẵn bên trong
9 Chương trình được lưu trữ trong bộ nhớ cố định (nhưng có thể xoá được)
9 Có nhiều chân vào ra có thể giao tiếp được với nhiều thiết bị khác
9 Có thể thiết lập thành các modul hoặc các thành phần riêng biệt
9 Hiện nay có rất nhiều module BasicStamp nhưng chủ yếu được chia làm 2
loại: BS1 và BS2
9 Bản mạch vi điều khiển này bao gồm các khối chính sau:
• Chíp hợp dịch PBASIC
• Bộ nhớ chương trình: EEPROM với BS1 là 256byte, với BS2 là 2kbyte,
có thể ghi và xoá được
• Nguồn nuôi: Cho phép lối vào từ 6 – 15V, sau đó có bộ chuyển đổi thành
5V, nguồn 5V cũng dùng để cung cấp cho vi điều khiển
• Vi điều khiển này còn có mạch Reset
33
Đinh Duy Chương Khóa luận tốt nghiệp
9 Tuy nhiên trong đề tài này ta dùng BS2SX đây là sự mở rộng của BS2 về tốc
độ và bộ nhớ. Bộ vi điều khiển này hoạt động ở tần số 50MHz, với tốc độ nhanh hơn
2.5 lần so với BS2 do đó có thể thực hiện được 10000 lệnh trong một giây. Đồng thời
bộ nhớ EEPROM cũng tăng lên thành 16kbyte và chia làm 8 khối ngoài ra còn có
thêm 63 byte RAM dùng để lưu dữ liệu tạm thời.
2.2.3.Ngôn ngữ BasicStamp
9 Sự phát triển PBASIC cho ta cấu trúc đơn giản, dễ lập trình rất phù hợp cho
cấu trúc này và dễ dàng trong việc ghép nối điều khiển. Bao gồm nhiều cấu trúc lệnh
như: GOTO, FOR...NEXT, IF...THEN...ELSE,...
9 Hoặc để gửi dữ liệu từ vi điều khiển qua cổng COM
Again:
Debug cls, “Pin is: ”, dec in0
Pause 100
Goto Again
9 Đặc biệt có lệnh Pulsin để đo độ rộng xung lối ra của sensor khi ta ghép
sensor với vi điều khiển
9 Đo độ rộng xung trên lối vào chân 0 ở trạng thái cao
Pulsin 0,1,var1
9 Đo độ rộng xung trên lối vào chân 0 ở trạng thái thấp
Pulsin 0,0,var2
9 Code của chương trình đọc dữ liệu từ 6 sensor bằng vi điều khiển BasicStamp
và gửi dữ liệu qua máy tính ở
Các file đính kèm theo tài liệu này:
- Xây dựng hệ thống nhận biết ngôn ngữ dấu hiệu sử dụng cảm biến vi cơ điện tử.pdf