• Thứ Tư, 28/07/2004 02:58 (GMT+7)

    Điều khiển PC từ xa


           Sơ đồ nguyên lý

    Điều khiển PC từ xa trước đây là khả năng độc quyền của các ổ CD-ROM Creative và một số card TV cắm trong với một số chức năng hạn chế. Giờ đây, với những thông tin và phần mềm được cung cấp miễn phí trên internet, bạn hoàn toàn có thể tận hưởng sự tiện lợi này với một chi phí không đáng kể và các chức năng gần như không có giới hạn như nghe nhạc, xem phim hay trình diễn các minh hoạ v.v...Để sử dụng được tính năng này, các bạn cần có thiết bị nhận tín hiệu hồng ngoại (InfraRed-receiver). Trên internet có rất nhiều sơ đồ hướng dẫn làm thiết bị này, nhưng đa số sơ đồ này sử dụng các chíp giải mã chuyên dụng và rất khó kiếm ở Việt Nam (nếu có cũng không rẻ). Ở đây tôi xin giới thiệu với các bạn cách làm một thiết bị nhận tín hiệu hồng ngoại đơn giản (có thể nói là sơ đồ đơn giản nhất) kết nối với máy tính thông qua cổng COM của tác giả Igor Secko (www.cesko.host.sk). Thiết bị này có thể dùng với hầu như tất cả các loại điều khiển từ xa (ĐKTX) mà các bạn đang sử dụng trong gia đình, tôi đã thử nghiệm thành công.


    Hình 3

    Các linh kiện cần thiết:

    - IC1: Mắt nhận hồng ngoại 3 chân (IR-detector)

    - R1: điện trở 3,3 Wk

    - D1: đi-ốt ổn áp 5,1 V

    - C1: tụ 100 Fm

    - Giắc cái DB-9

    - Dây tín hiệu: 1m, loại lõi 3 sợi (có thể dùng dây điện thoại loại 4 sợi).


    Hình 5

    Cả 3 linh kiện: D1, R1 và C1 đều có thể dễ dàng bố trí gọn vào trong giắc DB-9 như hình 2.

    Trong trường hợp không dùng dây dẫn, thiết bị có thể nhỏ gọn đến mức như hình 3, nhưng bạn sẽ phải quay lưng thùng máy về phía ĐKTX – khá bất tiện.

    Và nếu máy tính của bạn chỉ còn 1 cổng COM giắc DB-25 (25 chân) trống, bạn có thể thay giắc DB-9 trong sơ đồ trên bằng giắc DB-25 theo sơ đồ đấu dây sau:

     

    Tên DB-9                 DB-25

    GND chân 5              chân 7

    DSR chân 6             chân 6

    RTS chân 7             chân 4

    CTS chân 8             chân 5

    RI    chân 9              chân 22

    Và đây là sản phẩm đã hoàn thành (hình 5).

    Thiết bị này hoạt động với phần mềm Girder của tác giả Ron Bessems, được cung cấp miễn phí tại địa chỉ http://www.girder.nl/downloadn.php, với plugin của Igor Secko tại địa chỉ http://www.cesko.host .sk/downloads/Igor Plug1_07.zip


    Hình 6

    Phần mềm Girder có thể download dạng .zip (giải nén và chạy luôn) hoặc dạng .exe (bộ cài đầy đủ). Sau khi giải nén hoặc cài đặt xong, các bạn giải nén file Igorplug1_07.zip vào thư mục…/ Girder3x/Plugins/ rồi chạy chương trình (Girder.exe). Các bạn vào File -> Settings -> Plugins, chọn Igor SFH-56 device rồi nhấn vào nút Settings. Sau khi chọn đúng cổng COM mà thiết bị đang kết nối, nhấn OK để đóng hộp thoại Igor Config, nếu dòng Status trong cửa sổ Settings thông báo Plugin is loaded in memory (sending events) thì xin chúc mừng, bạn đã thành công (hình 6).

     Các bạn có thể kiểm tra bằng ĐKTX, nhấn 1 nút bất kỳ trên ĐK, bạn sẽ thấy đèn xanh ở góc dưới bên phải cửa sổ Girder chớp vàng và ở giữa dòng trạng thái ở đáy cửa sổ sẽ hiển thị mã điều khiển mà chương trình nhận được.

    Khả năng của Girder rất rộng, hoàn toàn do các bạn khai thác. Các bạn có thể đọc Online Help và tìm hiểu thêm tại trang chủ http://www.girder.nl.

     

    Một Ví dụ điển hình: Tạo lệnh Volume Mute

    Vào Edit / Add Command, một lệnh mới có tên “New” thuộc nhóm “New” sẽ được tạo ra. Bạn có thể đổi tên (nhấn F2) của nhóm và lệnh mới này (trong VD này là “Volume Control” và “Mute”). Chọn lệnh Mute trong danh sách, nhấn tab O.S., chọn Volume Mute Toggle trong danh sách thả xuống, nhấn Apply, sau đó nhấn nút Learn Event (cho Girder “học” lệnh), chĩa ĐKTX vào mắt nhận, nhấn một nút mà bạn muốn gán lệnh Mute, Girder sẽ tạo ra một EventString tương ứng với nút đó, đồng thời trên bảng hiển thị dạng LED ở giữa cửa sổ hiện chuỗi ký tự biểu thị mã của lệnh, xong. Bạn có thể thử lại bằng cách chơi 1 bản nhạc và nhấn ĐKTX để kiểm tra.

     

    Thủ Thuật


    Hình 7

    Bạn nên nhấn nút trên ĐKTX vài lần trước khi nhấn Learn Event và nhìn xuống dòng trạng thái để xem chuỗi “mã đúng” của nút đó là gì vì độ chính xác của thiết bị không phải tuyệt đối, nhưng khi đã nhận đúng thì nó hoạt động khá ổn định (hình 7).

    Trên đây là cách chế tạo và thực hiện thiết bị ĐKTX máy tính cá nhân đơn giản. Hy vọng với thiết bị này, các bạn sẽ có những giây phút thư giãn thoải mái với chiếc PC của mình mà không bị những vướng víu với bàn phím và chuột.

    Lợi ích: Điều khiển PC bằng các loại DKTX của thiết bị gia dụng. (Tăng sự tiện nghi khi sử dụng PC xem phim, nghe nhạc, trình diễn)

    Chi phí:      

     Mắt nhận hồngl ngoại 10.000đ

     Đi-ốt ổn ápl 5,1vôn:     300đ

    :WĐiện trở 3,3 kl          100đ

    F:m Tụ gốm 100 l         2000đ

     Giắc cái DB-9:l           5000đ

     Dây tính hiệu 3l sợi dài 1m:             2000đ

    Tổng cộng:                  19.400đ

    Trình độ tay nghề: trung bình.

    Thời gian: 30 phút - 1 giờ.

    Dụng cụ: Mỏ hàn, thiếc hàn, vặn vít dẹt, kìm bấm, đồng hồ vạn năng (nếu có).

    Phần mềm: Girder (www.girder.nl), IgorPlug (www.cesko.host.sk).ÿ

    Nguyễn Việt Hà

    (hanv@cybervn.net)

     

    Chú Thích

    TẤT CẢ CÁC LINH KIỆN trên đều có thể mua ở các hàng bán linh kiện điện tử (chợ Hoà Bình ở Hà Nội, chợ Nhật Tảo ở TP.HCM) với giá chưa tới 20.000đ.

    Tụ và điện trở không cần phân biệt chân, quan trọng nhất là cách xác định chân cho IC1. Hầu hết mắt nhận hồng ngoại có bán trên thị trường đều không có ký hiệu, người bán thường cũng không biết cách xác định các chân của IC này. Theo kinh nghiệm của tôi, các bạn có thể xác định chân theo 2 cách sau:

     Dùng đồng hồl vạn năng: để đồng hồ ở nấc x 100©, đo từng cặp 2 chân một. Chân nào khi đo bằng que đỏ (+) có điện trở rất lớn (kim đồng hồ chỉ nhúc nhích hoặc đứng im) so với 2 chân còn lại thì chân đó là GND. Đo 2 chân còn lại, chân nào khi đo bằng que đỏ có điện trở nhỏ (kim vọt lên nhiều) thì chân đó là VCC, chân còn lại là OUT.

     Nếu không cól đồng hồ vạn năng thì bạn xác định theo “hình dạng”: trên thị trường thường có 2 loại hình dạng và có các cách bố trí chân như hình 4:


    Hình 4

    Loại (1) khá phổ biến, dễ nhận dạng bởi chân GND và VCC gần nhau, thấu kính hội tụ hình trụ. Loại (2) và (3) trông khá giống nhau, chỉ có thể phân biệt nếu có ký hiệu hoặc đấu thử. Trên thị trường có bán loại (2) với ký hiệu SH36B – là loại duy nhất có ký hiệu (tuy đây là loại có tần số định danh là 36 kHz, nhưng có thể làm việc tốt với những ĐKTX thông dụng có tần số khoảng 38 kHz. Trên thực tế, tất cả các mắt nhận hồng ngoại tôi mua được đều hoạt động tốt với sơ đồ này.

    Và nếu không có đồng hồ vạn năng, bạn vẫn có thể xác định chân của đi-ốt D1: vòng tròn mầu thẫm là cực + (nối với chân số 7 & 8 của giắc DB-9). Tụ 100 nF còn có ký hiệu là 104, có thể gỡ từ chuột hỏng ra (kích cỡ nhỏ hơn nhiều loại mua ở ngoài).

     

    Căn bản về điều khiển từ xa bằng hồng ngoại

    Chỉ Cần Một Vài Linh Kiện Điện Tử Đơn Giản Rẻ Tiền, một chút hiểu biết về điện tử cộng với một ít vốn lập trình hệ thống là bạn có thể điều khiển máy tính của mình như tivi, đầu máy thông thường...

    Điểm qua một số linh kiện cần dùng:

    1. Transitor: Ắt hẳn bạn đã từng được làm quen với linh kiện này hồi còn học phổ thông. Transitor có 3 chân B,E và C sắp xếp theo thứ tự nhất định. Một trong số những transitor npn thông dụng nhất là C828 (khoảng 500đ một con). Ta có thể sử dụng nó như một khoá điện trong mạch điện. Sơ đồ nguyên lý như hình vẽ:

       Mối nối CE của transitor npn bình thường không dẫn điện, khi cấp dòng cho B (đóng khóa k, nối cực B với điện thế) thì sẽ trở thành dẫn điện làm đèn sáng. Nếu chân B mất dòng (mở khóa k), CE sẽ trở về trạng thái ban đầu, mạch bị ngắt.

     

    2. PhotoDiode: Mối nối PN của PhotoDiode không cho dòng điện đi qua khi phân cực nghịch, nhưng lại rất nhạy cảm với ánh sáng, đặc biệt là ánh sáng hồng ngoại. Khi phân cực nghịch rồi chiếu tia hồng ngoại từ Remote vào, Diode sẽ dẫn điện và có tác dụng như một cái khóa điện điều khiển bằng ánh sáng. Tôi dùng loại LED thu hồng ngoại trong các máy

    gia dụng, khoảng 2000đ một con.

    3. Đầu nối máy in: Đầu nối 25 chân dùng để cắm máy in (parallel connector). Trong đầu nối này  các chân 10,11,12,13,15 dùng để nhận tín hiệu, các chân này đều mang điện thế +5V. Khi nối điện thế đất cho một trong các chân này (hay nối vào các chân 18-25) thì 1 byte ở cổng 379h sẽ thay đổi. Ta sẽ lập trình nhận biết sự thay đổi này để ra các lệnh điều khiển. Để hiểu rõ hơn, bạn nên tìm sơ đồ cổng và cách sử dụng (có ở khắp nơi trên internet).

    Bạn có thể dùng ngay dây cáp máy in hoặc tìm mua đầu nối máy in với giá khoảng 5000đ một cái.

     

    4. Sơ đồ mạch: Sơ đồ nguyên lý như hình vẽ. PhotoDiode chỉ có khả năng mở cổng khi phát hồng ngoại bằng Remote trong phạm vi vài cm nên ta phải mắc thêm transitor.

    Chân 11 và 18 nối vào chân C-E, cấp nguồn +V cho chân x (chân điện trở). Bình thường diode phân cực nghịch nên không có dòng ở B, C-E không dẫn điện. Khi có tia hồng ngoại chiếu vào, Diode dẫn điện và cấp dòng ở B làm C-E dẫn, nối chân 11 với chân 18 (điện thế đất), điện thế trên chân 11 bị “rớt”, bit 7 của cổng 379h thay đổi làm giá trị của byte này cũng thay đổi theo.

    Để đơn giản, tôi dùng luôn điện thế trên chân số 10 để cấp nguồn cho X (nối chân X với chân số 10 trên cổng máy in). Điện trở dùng trong khoảng 500k-1M. Bên trong cổng đã có điện trở hạn dòng nên không cần mắc thêm điện trở hạn dòng cho cực C. Mạch điện nhỏ gọn, lắp vào bên trong đầu nối máy in, chỉ kéo thêm 2 sợi dây nhỏ để đưa LED ra ngoài nhận tín hiệu.

     

    5. Điều khiển: Mạch điện điều khiển bằng bất kỳ remote phát tia hồng ngoại nào. Nếu không tìm được remote, bạn mua thêm một con LED phát hồng ngoại (2000đ) rồi lắp một mạch điện cực kì đơn giản như hình vẽ. Mỗi lần đóng khoá k, LED phát ánh sáng hồng ngoại. Ở đầu thu, LED nhận tia hồng ngoại, transitor dẫn điện, giá trị cổng 379h thay đổi… Tùy vào số lần nhận tín hiệu, khoảng thời gian giữa hai lần nhận liên tiếp ta sẽ phát lệnh điều khiển tương ứng.

     

    6. Xử lý: Việc cuối cùng là viết chương trình nhận tín hiệu từ cổng 379h. Đoạn chương trình viết bằng Pascal sau đây sẽ in giá trị cổng 379h ra màn hình.

    uses crt;

    Begin

       repeat

         write(port[$379],’  ‘#13);

       until keypressed;

    end.

    Bạn thử bấm remote xem, nếu số trên màn hình thay đổi thì mạch điện đã hoạt động tốt.

    Đến đây, công việc còn lại của bạn là lập trình nhận biết sự thay đổi giá trị của cổng 379h rồi phát các lệnh điều khiển máy như tắt máy, tăng giảm volume, xuất các mã bàn phím để điều khiển chương trình chơi nhạc....

    Chúc các bạn thành công!


    Phạm Thế Anh

    (theanhpham@yahoo.com)

    SV khoa CNTT ĐH.KHTN

    ID: A0211_104