Tài liệu Đề tài Nghiên cứu thiết kế thiết bị điều khiển từ xa hồng ngoại (irda) cho các hệ cơ điện tử: 1
NGHIÊN CỨU THIẾT KẾ THIẾT BỊ ĐIỀU KHIỂN TỪ XA HỒNG NGOẠI (IRDA) CHO
CÁC HỆ CƠ ĐIỆN TỬ
Ks. Mai Thị Phương Thảo, Ks. Chu Ngọc Liêm
Ks. Phan Minh Tân, TSKH. Phạm Thượng Cát
Phßng c«ng nghƯ Tù §éng Hãa - ViƯn C«ng NghƯ Th«ng Tin
Tel: 84-4-8363484, Fax: 84-4- 8363485 e-mail: ptcat@ioit.ncst.ac.vn
Tĩm tắt:
Sự ra đời của Hiệp hội dữ liệu hồng ngoại (Infrared Data Association) và nhu cầu kết nối khơng dây khoảng cách
ngắn và chi phí thấp đã và đang kích hoạt sự phát triển của các thiết bị thu phát hồng ngoại. Với mục tiêu nội địa
hố và giảm giá thành sản phẩm bằng cách ứng dụng cơng nghệ hiện đại PSoC, phịng cơng nghệ tự động hố của
viện Cơng nghệ thơng tin đã nghiên cứu chế tạo được thiết bị thu pháp sử dụng cơng nghệ IrDA với độ tin cậy cao,
gọn nhẹ và giá thành hạ. Thiết bị thu phát này cĩ thể được ứng dụng rộng rãi trong nhiều lĩnh vực như cơng nghiệp,
quốc phịng, và đặc biệt là trong các ứng dụng dân dụng, các sản phẩm gia dụng cơ điện tử.
Research and Deve...
6 trang |
Chia sẻ: ntt139 | Lượt xem: 1500 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Đề tài Nghiên cứu thiết kế thiết bị điều khiển từ xa hồng ngoại (irda) cho các hệ cơ điện tử, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1
NGHIÊN CỨU THIẾT KẾ THIẾT BỊ ĐIỀU KHIỂN TỪ XA HỒNG NGOẠI (IRDA) CHO
CÁC HỆ CƠ ĐIỆN TỬ
Ks. Mai Thị Phương Thảo, Ks. Chu Ngọc Liêm
Ks. Phan Minh Tân, TSKH. Phạm Thượng Cát
Phßng c«ng nghƯ Tù §éng Hãa - ViƯn C«ng NghƯ Th«ng Tin
Tel: 84-4-8363484, Fax: 84-4- 8363485 e-mail: ptcat@ioit.ncst.ac.vn
Tĩm tắt:
Sự ra đời của Hiệp hội dữ liệu hồng ngoại (Infrared Data Association) và nhu cầu kết nối khơng dây khoảng cách
ngắn và chi phí thấp đã và đang kích hoạt sự phát triển của các thiết bị thu phát hồng ngoại. Với mục tiêu nội địa
hố và giảm giá thành sản phẩm bằng cách ứng dụng cơng nghệ hiện đại PSoC, phịng cơng nghệ tự động hố của
viện Cơng nghệ thơng tin đã nghiên cứu chế tạo được thiết bị thu pháp sử dụng cơng nghệ IrDA với độ tin cậy cao,
gọn nhẹ và giá thành hạ. Thiết bị thu phát này cĩ thể được ứng dụng rộng rãi trong nhiều lĩnh vực như cơng nghiệp,
quốc phịng, và đặc biệt là trong các ứng dụng dân dụng, các sản phẩm gia dụng cơ điện tử.
Research and Development of Infrared Remote Control Device for Mechatronic Systems
Abstract:
The formation of Infrared Data Association and the need of low-cost, short-range wireless data link continue booting
up the development of Send/Receive IrDA devices. Aiming to build Vietnamese devices and to reduce production cost
by using new technology PSoC, Department for Automation and Technology of Institute of Information Technology
has researched and developed sucessfully send/receive IrDA devices, which are reliable, light weight, and low cost.
These IrDA devices can be use broadly in industry, defence and security, and especially in consumer and
mechatronics products.
1 Cơng nghệ IrDA:
Chuẩn hồng ngoại IR từ lâu đã được dùng để phát
triển các kết nối khơng dây với khoảng cách ngắn và
chi phí thấp. Cơng nghệ này được sử dụng nhiều
trong điều khiển từ xa của vơ tuyến, điều hồ nhiệt
độ, trong máy tính, máy tính cầm tay, các thiết bị y tế
và cả trong máy in...
Trước năm 1993, cơng nghệ hồng ngoại phát triển
khơng đồng bộ trong các cơng ty lớn vì thiếu chuẩn
chính thức. Để trung hồ vấn đề này, Hiệp hội dữ liệu
hồng ngoại (Infrared Data Association – IrDA) được
thành lập. Ngày nay, chuẩn IrDA định nghĩa giao
thức truyền thơng tin cho rất nhiều các ứng dụng
hồng ngoại.
2 Giới thiệu chung về điều khiển từ xa
sử dụng cơng nghệ IrDA:
Như đã nĩi ở trên, chuẩn hồng ngoại IrDA cung cấp
cho người sử dụng một giao thức thực tế với chi phí
thấp để truyền dẫn tín hiệu. Thêm vào đĩ, nhu cầu
truyền dữ liệu giữa các dụng cụ động và tĩnh bằng các
thiết bị điều khiển từ xa trong thời đại tự động hố đã
kích hoạt sự phát triển và phổ biến của truyền dẫ tín
hiệu sử dụng tia hồng ngoại.
Nhận rõ tầm quan trọng và phổ biến của cơng nghệ
IrDA, Hãng Cypress đã cung cấp 2 user module
IrDATX và IrDARX trong chip PSoC
(Programmable System on Chip) để hỗ trợ các ứng
dụng truyền và nhận tín hiệu hồng ngoại. Sử dụng các
user module này, hai bảng mạch đã được phát triển,
một hoạt động để nhận tín hiệu (sẽ được gắn trong
thiết bị được điều khiển), một hoạt động trong vai trị
là bộ điều khiển từ xa (remote control), gửi tín hiệu
đến bảng mạch thứ nhất để điều khiển hoạt động của
thiết bị đĩ.
3 Nguyên lý hoạt động
3.1 Bộ điều khiển từ xa hồng ngoại (remote
control):
Module phát được thiết kế (như hình 1) bao gồm:
! Bàn phím: gồm 13 phím bấm để nhận lệnh
điều khiển từ người sử dụng
2
! Màn hình hiển thị LCD: hiển thị các lệnh
đang được thực hiện
! Transitor (NPN C2383, độ khuyếch đại 114)
và IrLED để truyền tín hiệu hồng ngoại.
! Chíp PSoC để nhận lệnh từ người sử dụng,
xử lý và phát lệnh đến dụng cụ được điều
khiển.
Chíp đặc trưng PSoC được thiết kế sử dụng 4 user
module là: Counter8, LCD,
PWM8, và IrDATX. Counter và PWM được sử dụng
để lần lượt tạo tín hiệu cho BaudClk và BitTimerClk
của IrDATX module. Các giá trị của Clock và
Processor được đặt để tốc độ truyền dẫn tín hiệu trên
kênh hồng ngoại đạt được là 2.4kbps. Trên lý thuyết,
tốc độ truyền dẫn tín hiệu trên kênh hồng ngoại cĩ thể
đạt tới 115kbps. Nhưng thực tế thử nghiệm cho thấy
tại 2.4kbps kênh hồng ngoại điều khiển bởi PSoC
chạy ổn định nhất, do đĩ thiết bị hồng ngoại được
mặc định tại giá trị này. Với các kết quả đã đạt được
chúng tơi đang tiếp tục phát triển để tạo ra chip
chuyên dụng cho bộ điều khiển xa hồng ngoại của
máy lạnh hai cục.
Hình 1: Sơ đồ mạch của bộ điều khiển xa
3.2 Module nhận
Module nhận (hình 2) gồm cĩ:
! chip nhận hồng ngoại
! LCD để hiển thị dữ liệu nhận được từ điều
khiển từ xa
! Chíp PSoC để xử lý dữ liệu
Dựa vào các dữ liệu nhận được, máy điều hồ sẽ cĩ
các lệnh tương ứng để cho máy hoạt động.
Module nhận cũng sử dụng 4 module người sử dụng
là PWM8, counter8, LCD và IrDARX. Cấu hình cài
đặt của các module này giống hệt các module ở trong
phần module phát, tạo điều kiện cho việc đồng bộ
giữa bộ phận thu và phát.
3
Hình 2: Sơ đồ mạch thu
3.3 Phần mềm
Chương trình vận hành của module thu và nhận được
viết bằng ngơn ngữ lập trình C,
dịch và chạy trên mơi trường PSoC Designer cung
cấp bởi Cypress.
Module phát
4
Hình 6: Lưu đồ của module phát
Trong module phát này, Chương trình main chỉ làm
nhiệm vụ scan keyboard (khi mà keycode bằng 0) và
gọi hàm hiển thị các phím đã được ấn (khi đĩ
keycode sẽ khác 0).
Hàm keyscan() là hàm cĩ nhiệm vụ quét bàn phím để
kiểm tra xem người sử dụng cĩ ấn phím nào khơng.
Hàm này hoạt động dựa trên nguyên tắc của bàn phím
cĩ cấu tạo như sau:
Hình 7: Cấu tạo của keyboard
Từ đặc điểm cấu tạo của bàn phím, ta cĩ thể viết ra
hàm quét bàn phím bằng cách đọc vào các giá trị từ
cổng 2 của PSoC.
Hình 8: Mã nguồn của chương trình quét bàn phím
Giá trị của hàm readkeydelay() hiện tại là 300ms. Giá
trị này là giá trị cĩ được dựa trên thực tiễn thử
nghiệm, cho giá trị khá chính xác của phím bị nhấn.
Sở dĩ ta cần sử dụng hàm này là để chip cĩ thể nhận
dạng đúng phím bị ấn, tránh trường hợp nhiễu do mơi
trường tạo ra tại port 2 của PSoC chip.
Hàm Codeout() được sử dụng để truyền dữ liệu khi
một trong những phím lệnh trên thiết bị điều khiển từ
xa đã được ấn. Hàm này cĩ nhiệm vụ tạo ra hai Byte
lệnh, cmdSend, trong đĩ cmdSend[1] = 0x06 và
cmdSend[2] được gán giá trị tuỳ theo việc phím nào
đã được ấn (ví dụ khi phím 1 được ấn thì cmdSend[2]
= 0x90. khi phím 2 được ấn thì cmdSend[2] =
0x91...). Các giá trị khác nhau của cmdSend[2] được
gán bằng cách sử dụng lệnh Switch(keycode), với
keycode khác nhau, ta sẽ cĩ các giá trị khác nhau
của cmdSend[2].
Sau khi cmdSend đã được gán giá trị, hàm
IrDASend() sẽ được gọi để phát đi giá trị của nĩ trên
kênh hồng ngoại. ở đây, cĩ một lưu ý nhỏ là: tuy
cmdSend chỉ chứa cĩ 2 byte giá trị, ta cần khai báo nĩ
là một mảng gồm 3 byte vì hàm IrDASend() chỉ dừng
phát tín hiệu khi nĩ pointer của mảng là bằng NULL
(mặc định nếu như ta định nghĩa một string). Byte
thứ 3 của cmdSend sẽ cĩ giá trị là 0 để hàm
IrDASend khơng bị
lỗi. Hình 9 là một đoạn trong hàm IrDASend, kiểm
tra giá trị của con trỏ để quyết định xem cĩ tiếp tục
gửi dữ liệu đi khơng.
5
Hình 9: Giải thuật của hàm IrDASend
Ví dụ ở bộ điều khiển xa hồng ngoại cho máy lạnh,
khi muốn gửi đi giá trị của Giờ và Phút sau khi đã gửi
lệnh BEFORE_HAND, ta phải định nghĩa 1 mảng
gồm 3 byte time[3]. Khi time[0] = 1, module nhận sẽ
đọc giá trị của time[1] là giờ, và nếu time[0] = 2 thì
module nhận sẽ đọc giá trị của time[1] là phút. Giá trị
của time[2] luơn luơn bằng 0 để ngăn chặn việc hàm
IrDASend gửi đi các mã lệnh ngồi ý muốn.
Module thu
Lưu đồ cho chương trình thu tín hiệu được thể hiện ở
hình 10.
Hình 10: Lưu đồ của chương trình thu tín hiệu
Dựa vào lưu đồ, ta cĩ thể thấy, chương trình
nhận chỉ loop trong vịng while để đợi tín
hiệu tới.
Đầu tiên, chương trình kiểm tra xem là Bit mở đầu
của một chuỗi tín hiệu 8 bít đã được nhận ra chưa?
Nếu được nhận rồi, chương trình sẽ chuyển xuống
bước tiếp theo. Nếu chưa cĩ bit mở đầu nào được
nhận thì nĩ sẽ ở đĩ để chờ.
Sau khi bit mở đầu đã được nhận, chương trình sẽ đợi
cho đến khi một lệnh 8 bit được nhận đủ. Điều kiện
để nhận biết là bit RX_COMPLETE trong Control
Register được set. Khi bit này bằng 1, cĩ nghĩa là
buffer để chứa 1 byte dữ liệu của module nhận đã
đầy, ta sẽ phải đọc dữ liệu để tránh trường hợp buffer
overflow.
Trong phần xử lý tín hiệu, việc xử lý lệnh sẽ chỉ được
thực hiện sau khi chương trình đọc đủ 2 byte, trong
đĩ byte đầu là 0x06. Sau đĩ cĩ 2 trường hợp:
! Trường hợp thứ nhất: khi lệnh truyền tới
khơng phải là lệnh BEFORE_HAND
(0xA1). Trong trường hợp này, ta sẽ tuỳ theo
mã lệnh mà thực hiện các nhiệm vụ mà
người điều khiển muốn làm.
! Trường hợp thứ hai: khi lệnh truyền tới là
lệnh BEFORE_HAND (0xA1). Trong
trường hợp này, ta sẽ phải đợi để đọc thêm
dữ liệu về giờ và phút (mỗi lần đặt giờ hoặc
phút sẽ cĩ 2 byte dữ liệu gửi đến)
4 Kết luận
Sử dụng chip PSoC với cơng nghệ hồng ngoại IrDA,
ta cĩ thể chế tạo thiết bị thu phát điều khiển từ xa với
độ tin cậy cao, gọn nhẹ và giá thành thấp. Ứng dụng
của thiết bị thu phát là rất nhiều trong lĩnh vực cơng
nghiệp, dân dụng và an ninh quốc phịng bởi nĩ cung
cấp cho người sử dụng độ linh động cao rất phù hợp
trong thời điểm hiện nay.
6
5 Tài liệu tham khảo
[1] IrDA information. [Online]
[2] CY8C25122, CY8C26233, CY8C26443,
CY8C26643” Device data sheet, Cypress
MicroSystem, 2002
[3] “PSoC Designer. Integrated Development
Environment User Guide”, Cypress MicroSystem,
2002
Các file đính kèm theo tài liệu này:
- tailieu.pdf