Phần cứng bên phát tín hiệu

Một phần của tài liệu Thiết kế phần cơ sở của robot tự hành (Trang 28)

3.3.1 Sơ lược v IC mã hoá PT2262:

đây là IC tắch hợp, ựi cặp là IC giải mã PT2272. Có chức năng mã hóa dữ liệu và ựịa chỉ dạng song song thành mã dạng nối tiếp ựể phù hợp với các module phát vô tuyến và hồng ngoại. Nó có tất cả 12 chân ựịa chỉ 3 trạng thái từ ựó cung cấp số mã ựịa chỉ lên ựến 531.441 (3 mũ 12). Vì thế nó nâng cao tắnh bảo mật và tránh trường hợp truyền sai ựịa chỉ hoặc trùng ựịa chỉ.

Hình 3.2 Ờ IC PT2262

Tên chân I/O Mô tả

A0-A5 I - 6 chân ựịa chỉ từ A0-A5.

- Mỗi chân có thể có 3 trạng thái: 0, 1 hoặc f (ựể nổi).

A6/D5-A11/D0 I - Vừa 6 chân ựịa chỉ từ A6-A11, vừa 6 chân dữ liệu từ D0-D5. - Khi những chân này ựược dùng làm chân ựịa chỉ, chúng có

thể có 3 trạng thái: 0,1 hoặc f.

- Khi những chân này ựược dùng làm chân dữ liệu, chúng chỉ có thể có 2 trạng thái: 0 hoặc 1.

/TE I - Chân cho phép truyền tắn hiệu, tắch cực mức thấp.

- PT2262 sẽ xuất mã xung tới chân DOUT khi chân TE ựược kéo xuống mức thấp.

OSC1 O

OSC2 I

- 2 chân tạo dao ựộng bên trong.

- Một ựiện trở ựược kết nối giữa 2 chân này ựể xác ựịnh tần số cơ bản cho PT2262.

DOUT O - Mã xung ựược xuất ra theo từng kỳ tới chân này.

- Khi PT2262 không truyền tắn hiệu, DOUT ở mức ựiện áp thấp. Vcc - - Chân cấp nguồn. Vss - - Chân nối mát. Bảng 3.1 Ờ Chức năng các chân IC PT2262 3.3.2 Quy tc mã hoá vi IC PT2262: Biểu diễn Bit code mã hóa

Cơ bản PT2262 sử dụng mỗi Bit gồm 3 trạng thái 0,1 và f. Mỗi trạng thái sẽ có 1 kiểu mã hóa Bit code khác nhau. Mỗi Bit code mã hóa chứa trong 32 chu kỳ tần số mã hóa của OSC (32α).

Chương 3: điều khiển robot từ xa Bit ựồng bộ (Synchronous Bit)

Là Bit ựược thêm vào trong 1 khung truyền ựể giúp ựồng bộ hóa quá trình mã hóa/giải mã. độ dài của Sync Bit là bằng 4 lần ựộ dài 1 bit ựịa chỉ/dữ liệu tức 128α.

Hình 3.4 Ờ Biểu diễn Bit ựồng bộ

Từ mã (Code Word)

Cấu trúc việc truyền các Bit ựịa chỉ/ dữ liệu và Bit ựồng bộ của PT2262 ựược xác ựịnh như sau:

Hình 3.5 Ờ Biễu diễn từ mã

Với dòng PT2262 sử dụng 6 bits ựịa chỉ và 6 bits dữ liệu thì từ mã này ựược biểu diễn:

Như vậy với các dòng PT2262 với số ựường ựịa chỉ/dữ liệu khác nhau ta có các Code Word khác nhau theo dạng sau:

Khung truyền (Code Frame)

Một khung truyền bao gồm 4 từ mã (Code Word) phát liên tục nhau ra chân DOUT của PT2262 khi chân /TE là tắch cực(/TE tắch cục mức thấp).

Hình 3.6 Ờ Biễu diễn khung truyền

điện trở dao ựộng (Resistor Oscillator)

Tần số bộ dao ựộng tiêu biểu với nhiều giá trị ựiện trở cho cả PT2262 lẫn PT2272 ựược cho thấy ở bên dưới:

3.3.3 Cách thc mã hoá d liu ca PT2262

Khi chân /TE ở mức tắch cực (/TE tắch cực thấp), PT2262 phát liên tục 4 code word ra chân DOUT, với 1 code word bao gồm Bit ựịa chỉ + Bit dữ liệu + Bit ựồng bộ (số lượng bit ựịa chỉ và bit dữ liệu tùy thuộc vào từng dòng sản phẩm).

3.3.4 Remote 8 nút tắch hp IC PT2262:

Chương 3: điều khiển robot từ xa

Khối phát lệnh ựiều khiển: là 8 nút bấm ựược kết nối tới 4 chân dữ liệu (D0, D1, D2, D3) của IC mã hóa PT2262. Mức logic của 4 chân dữ liệu khi nhấn các nút như sau:

Nút D0 D1 D2 D3 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 0 1 0 1 6 0 1 1 0 7 0 1 1 1 8 1 0 0 0 Bảng 3.2 Ờ Mức logic của 4 chân dữ liệu 3.4 Phn cng bên thu tắn hiu: 3.4.1 Sơ lược v IC gii mã PT2272:

Hoàn toàn tương tự như IC mã hóa PT2262, ta có sơ ựồ chân của IC giải mã PT2272:

Tên chân I/O Mô tả A0-A5 I - 6 chân ựịa chỉ từ A0-A5.

- Mỗi chân có thể có 3 trạng thái: 0, 1 hoặc f (ựể nổi).

A6/D5-A11/D0 I/O - Vừa 6 chân ựịa chỉ từ A6-A11 (input), vừa 6 chân dữ liệu từ D0-D5 (output), phụ thuộc loại PT2272 ựược dùng.

- Khi ựược dùng làm các chân ựịa chỉ (input) thì mỗi chân có thể có 3 trạng thái: 0, 1 hoặc f.

- Khi ựược dùng làm các chân dữ liệu (output), các chân này sẽ ựược lái lên Vcc nếu ựịa chỉ giải mã từ mã xung nhận ựược trùng với ựịa chỉ thiết lập tại các chân ựịa chỉ ở PT2272 và bit dữ liệu tương ứng nhận ựược là bit Ộ1Ợ. Ngược lại, chúng ựược lái lên Vss.

DIN I - Chân nhận dữ liệu từ bộ thu sóng.

OSC1 O

OSC2 I

- 2 chân tạo dao ựộng bên trong.

- Một ựiện trở ựược kết nối giữa 2 chân này ựể xác ựịnh tần số cơ bản cho PT2272.

VT O - PT2272 nhận ựược mã xung truyền tới hợp lệ sẽ ựưa chân VT lên mức cao.

Vcc - - Chân cấp nguồn.

Vss - - Chân nối mát.

Chương 3: điều khiển robot từ xa

3.4.2 Cách thc gii mã d liu ca PT2272

IC PT2272 sẽ trong trạng thái chờ khi bật nguồn, khi có tắn hiệu từ bộ mã hoá thì sẽ xuất hiện một tắn hiệu ở ngõ DIN cho phép nhận tắn hiệu. Sau ựó dựa vào cách thức mã hóa của PT2262 ựể giải mã thành dữ liệu. địa chỉ ựưa vào sẽ ựược so sánh phần ựịa chỉ ựã ựược quy ựịnh sẵn trên các chân ựịa chỉ của PT2272. Sau khi so sánh nếu ựịa chỉ giống nhau thì sẽ thực hiện giải mã ựể xuất ra tắn hiệu song song 4 bit ựồng thời chân VT ựược kắch ựể thông báo rằng dữ liệu là hợp lệ.

3.4.3 Mch thu sóng tắch hp IC PT2272:

CHƯƠNG 4

Gii thiu v Matlab và xnh

4.1 Gii thiu chung v phn mm Matlab:

4.1.1 Khái nim v Matlab:

Matlab là một ngôn ngữ lập trình thực hành bậc cao ựược sử dụng ựể giải các bài toán về kỹ thuật. Matlab tắch hợp ựược việc tắnh toán, thể hiện kết quả, cho phép lập trình, giao diện làm việc rất dễ dàng cho người sử dụng. Dữ liệu cùng với thư viện ựược lập trình sẵn cho phép người sử dụng có thể có ựược những ứng dụng sau ựây:

Sử dụng các hàm có sẵn trong thư viện, các phép tắnh toán học thông thường.

Cho phép lập trình tạo ra những ứng dụng mới.

Cho phép mô phỏng các mô hình thực tế.

Phân tắch, khảo sát và hiển thị dữ liệu.

Với phần mềm ựồ hoạ cực mạnh.

Cho phép phát triển, giao tiếp với một số phần mềm khác như C++, Fortran.

4.1.2 Cu trúc d liu ca Matlab và các ng dng:

Matlab là một hệ thống tương giao, các phần tử dữ liệu là một mảng (mảng này không

ựòi hỏi về kắch thước). Chúng cho phép giải quyết các vấn ựề liên quan ựến lập trình bằng máy tắnh, ựặc biệt sử dụng các phép tắnh về ma trận hay vectơ và có thể sử dụng ngôn ngữ C hoặc Fortran lập trình rồi thực hiện ứng dụng lập trình ựó bằng các câu lệnh gọi từ

Matlab. Matlab ựược viết tắt từ chữ ỘMATrix LABoratoryỢ tức là thư viện về ma trận, từ ựó phần mềm Matlab ựược viết nhằm cung cấp cho việc truy cập vào phần mềm ma trận một cách dễ dàng, phần mềm ma trận này ựược phát triển bởi các công trình Linpack và Eispack. Ngày nay Matlab ựược phát triển bởi Lapack và Artpack tạo nên một nghệ thuật phần mềm cho ma trận.

Dữ liệu của Matlab thể hiện dưới dạng ma trận (hoặc mảng - tổng quát), và có các kiểu dữ liệu ựược liệt kê sau ựây:

Ớ Kiểu ựơn single, kiểu này có lợi về bộ nhớ dữ liệu vì nó ựòi hỏi ắt byte nhớ hơn, kiểu dữ liệu này không ựược sử dụng trong các phép tắnh toán học, ựộ chắnh xác kém hơn.

Ớ Kiểu double kiểu này là kiểu thông dụng nhất của các biến trong Matlab. Ớ Kiểu Sparse.

Ớ Kiểu uint8, uint8, uint16, uint64,... Ớ Kiểu char vắ dụ ỘHelloỢ.

Ớ Kiểu cell. Ớ Kiểu Structure.

Chương 4: Giới thiệu về Matlab và xử lý ảnh Matlab tạo ựiều kiện thuận lợi cho:

Ớ Các khoá học về toán học.

Ớ Các kỹ sư, các nhà nghiên cứu khoa học.

Ớ Dùng Matlab ựể tắnh toán, nghiên cứu tạo ra các sản phẩm tốt nhất trong sản xuất. Toolbox là một công cụ quan trọng trong Matlab. Công cụ này ựược Matlab cung cấp cho phép ứng dụng các kỹ thuật ựể phân tắch, thiết kế, mô phỏng các mô hình.

Ta có thể tìm thấy toolbox ở trong mô trường làm việc của: Ớ Mạng nơron.

Ớ Logic mờ. Ớ Simulink.

4.1.3 H thng Matlab:

Hệ thống giao diện của Matlab ựược chia thành 5 phần: Ớ Môi trường phát triển.

đây là nơi ựặt các thanh công cụ, các phương tiện giúp chúng ta sử dụng các lệnh và các file, ta có thể liệt kê một số như sau:

+ Desktop.

+ Command Window. + Command History.

+ Browsers for viewinghelp.

Ớ Thư viện, các hàm toán học bao gồm các cấu trúc như tắnh tổng, sin cosin atan, atan2 etc..., các phép tắnh ựơn giản ựến các phép tắnh phức tạp như tắnh ma trận nghich ựảo, trị riêng, chuyển ựổi fourier, laplace, symbolic library.

Ớ Ngôn ngữ Matlab. đó là các ngôn ngữ cao về ma trận và mảng, với các dòng lệnh, các hàm, cấu trúc dữ liệu vào, có thể lập trình hướng ựối tượng.

Ớ đồ hoạ trong Matlab. Bao gồm các câu lệnh thể hiện ựồ họa trong môi trường 2D và 3D, tạo các hình ảnh chuyển ựộng, cung cấp các giao diện tương tác giữa người sử dụng và máy tắnh.

Ớ Giao tiếp với các ngôn ngữ khác. Matlab cho phép tương tác với các ngôn ngữ

4.2 Gii thiu khái quát vnh s:

4.2.1 Các khái nim cơ bn vnh:

Ảnh số là tập hợp hữu hạn các ựiểm ảnh với mức xám phù hợp dùng ựể mô tảảnh gần với ảnh thật. Sốựiểm ảnh xác ựịnh ựộ phân giải của ảnh. Ảnh có ựộ phân giải càng cao thì càng thể hiện rõ nét các ựặt ựiểm của tấm hình càng làm cho tấm ảnh trở nên thực và sắc nét hơn.

a) điểm ảnh (Picture Element)

điểm ảnh (Pixel) là một phần tử của ảnh số tại toạựộ (x, y) với ựộ xám hoặc màu nhất ựịnh. Kắch thước và khoảng cách giữa các ựiểm ảnh ựó ựược chọn thắch hợp sao cho mắt người cảm nhận sự liên tục về không gian và mức xám (hoặc màu) của ảnh số gần nhưảnh thật. Mỗi phần tử trong ma trận ựược gọi là một phần tửảnh.

b) Mức xám của ảnh

Mức xám là kết quả của sự biến ựổi tương ứng 1 giá trịựộ sáng của 1 ựiểm ảnh với 1 giá trị nguyên dương. Thông thường nó xác ựịnh trong [0, 255] tuỳ thuộc vào giá trị mà mỗi ựiểm ảnh ựược biểu diễn. Các thang giá trị mức xám thông thường: 16, 32, 64, 128, 256 (Mức 256 là mức phổ dụng. Lý do: từ kỹ thuật máy tắnh dùng 1 byte (8 bit) ựể biểu diễn mức xám. Mức xám dùng 1 byte biểu diễn: 28 =256 mức, tức là từ 0 ựến 255).

c) độ phân giải của ảnh

định nghĩa: độ phân giải (Resolution) của ảnh là mật ựộựiểm ảnh ựược ấn ựịnh trên một ảnh sốựược hiển thị.

Theo ựịnh nghĩa, khoảng cách giữa các ựiểm ảnh phải ựược chọn sao cho mắt người vẫn thấy ựược sự liên tục của ảnh. Việc lựa chọn khoảng cách thắch hợp tạo nên một mật ựộ phân bổ, ựó chắnh là ựộ phân giải và ựược phân bố theo trục x và y trong không gian hai chiều.

Vắ dụ: độ phân giải của ảnh trên màn hình CGA (Color Graphic Adaptor) là một lưới ựiểm theo chiều ngang màn hình: 320 ựiểm chiều dọc * 200 ựiểm ảnh (320*200). Rõ ràng, cùng màn hình CGA 12Ợ ta nhận thấy mịn hơn màn hình CGA 17Ợ ựộ phân giải 320*200. Lý do: cùng một mật ựộ (ựộ phân giải) nhưng diện tắch màn hình rộng hơn thì

Chương 4: Giới thiệu về Matlab và xử lý ảnh

4.2.2 Các kiu nh trong Matlab:

a) Ảnh ựược ựịnh chỉ số (Indexed Images)

Một ảnh chỉ số bao gồm một ma trận dữ liệu X và ma trận bản ựồ màu map. Ma trận dữ liệu có thể có kiểu thuộc lớp uint8, uint16 hoặc kiểu double. Ma trận bản ựồ màu là một mảng m x 3 kiểu double bao gồm các giá trị dấu phẩy ựộng nằm giữa 0 và 1. Mỗi hàng của bản ựồ chỉ ra các giá trị mà: red, green và blue của một màu ựơn. Một ảnh chỉ số

sử dụng ánh xạ trực tiếp giữa giá trị của pixel ảnh tới giá trị trong bản ựồ màu. Màu sắc của mỗi pixel ảnh ựược tắnh toán bằng cách sử dụng giá trị tương ứng của X ánh xạ tới một giá trị chỉ số của map. Giá trị 1 chỉ ra hàng ựầu tiên, giá trị 2 chỉ ra hàng thứ hai trong bản ựồ màu Ầ

Một bản ựồ màu thường ựược chứa cùng với ảnh chỉ số và ựược tựựộng nạp cùng với ảnh khi sử dụng hàm imread ựểựọc ảnh. Tuy nhiên, ta không bị giới hạn khi sử dụng bản ựồ màu mặc ựịnh, ta có thể sử dụng bất kì bản ựồ màu nào.

Hình 4.2 Ờ Ảnh Index

b) Ảnh Grayscale

Một ảnh ựược biểu diễn bởi một ma trận hai chiều, trong ựó giá trị của mỗi phần tử

cho biết ựộ sáng ( hay mức xám ) của ựiểm ảnh ựó. Ma trận này có thể một trong các kiểu uint8, uint16 hoặc double. Ảnh biểu diễn theo kiểu này còn gọi là ảnh trắng ựen.

Chương 4: Giới thiệu về Matlab và xử lý ảnh

c) Ảnh nhị phân (Binary Images)

Ảnh ựược biểu diễn bởi một ma trận hai chiều thuộc kiểu logical. Mỗi ựiểm ảnh chỉ có thể nhận một trong hai giá trị là 0 (ựen) hoặc 1 (trắng).

Hình 4.4 Ờ Ảnh nhị phân

d) Ảnh RGB (RGB Images)

Một ảnh RGB - thường ựược gọi là true-color, ựược lưu trữ trong Matlab dưới dạng một mảng dữ liệu có kắch thước 3 chiều mxnx3 ựịnh nghĩa các giá trị màu red, green và blue cho mỗi pixel riêng biệt. Màu của mỗi pixel ựược quyết ựịnh bởi sự kết hợp giữa các giá trị R, G, B (Red, Green, Blue) ựược lưu trữ trong một mặt phẳng màu tại vị trắ của pixel. định dạng file ựồ hoạ lưu trữảnh RGB giống như một ảnh 24 bits trong ựó R, G, B chiếm tương ứng 8 bit một. điều này cho phép nhận ựược 16 triệu màu khác nhau.

Một mảng RGB có thể thuộc lớp double, uint8 hoặc uint16. Trong một mảng RGB thuộc lớp double, mỗi thành phần màu có giá trị giữa 0 và 1. Một pixel mà thành phần màu của nó là (0, 0, 0) ựược hiển thị với màu ựen và một pixel mà thành phần màu là (1, 1, 1 ) ựược hiển thị với màu trắng. Ba thành phần màu của mỗi pixel ựược lưu trữ cùng với chiều thứ 3 của mảng dữ liệu. Chẳng hạn, giá trị màu R, G, B của pixel (10, 5) ựượlưu trữ trong RGB(10, 5, 1), RGB(10, 5, 2) và RGB(10, 5, 3) tương ứng.

để tắnh toán màu sắc của pixel tại hàng 2 và cột 3 chẳng hạn, ta nhìn vào bộ ba giá trịựược lưu trữ trong (2, 3, 1:3). Giả sử (2, 3, 1) chứa giá trị 0.5176; (2, 3, 2) chứa giá trị

0.1608 và (2, 3, 3) chứa giá trị 0.0627 thì màu sắc của pixel tại (2, 3) sẽ là (0.5176, 0.1608, 0.0627).

Chương 4: Giới thiệu về Matlab và xử lý ảnh

4.3 Xnh vi Matlab:

4.3.1 Xnh:

Một phần của tài liệu Thiết kế phần cơ sở của robot tự hành (Trang 28)