Mục lục:
- Bước 1: Vật liệu
- Bước 2: Lập kế hoạch
- Bước 3: In 3D
- Bước 4: Lắp ráp - Tháo các đèn LED
- Bước 5: Lắp ráp - Thêm thông qua lỗ tiêu đề
- Bước 6: Lắp ráp - Gắn đèn LED
- Bước 7: Lắp ráp - Đính kèm PhidgetIR
- Bước 8: Lắp ráp - Thêm các nút
- Bước 9: Lắp ráp - Kết hợp mọi thứ lại với nhau
- Bước 10: Phần mềm - Mã
- Bước 11: Phần mềm - Lệnh CIR
- Bước 12: Chạy chương trình
- Bước 13: Kết quả
Video: Công nghệ cho ông của bạn: 13 bước (có hình ảnh)
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:35
Đã bao nhiêu lần bạn đến nhà ông bà để nhờ giải quyết một “vấn đề công nghệ” mà cuối cùng là cáp nguồn không được cắm vào, điều khiển từ xa hết pin hoặc không thể chuyển nguồn trên TV của họ? Tôi biết rằng đối với tôi, điều này xảy ra khá thường xuyên. Mặc dù hầu hết các vấn đề của họ có thể được giải quyết bằng cách đơn giản là chạy đến cửa hàng để mua một số AA mới, nhưng đôi khi họ có thể hưởng lợi từ một giải pháp tùy chỉnh hơn.
Ví dụ: ông của bạn gái tôi có một chiếc tivi mới và chúng tôi đã cố gắng dạy ông ấy cách thay đổi nguồn để ông ấy có thể chuyển đổi giữa DVD và TV - nhưng ông ấy không thể tìm ra. Anh ấy cũng đang phải đối mặt với việc thị lực kém và không quá quan tâm đến việc cố gắng ghi nhớ các quy trình phức tạp, anh ấy chỉ muốn xem các chương trình của mình khi anh ấy muốn. Sau khi cố gắng bình tĩnh giải thích các bước trong chuyến thăm cuối cùng của chúng tôi mà không đạt được nhiều thành công, tôi quyết định sẽ chỉ làm cho anh ấy điều khiển từ xa hai nút đơn giản của riêng anh ấy. Điều này sẽ cho phép anh ấy thay đổi nguồn đầu vào trên TV của mình một cách dễ dàng, dễ dàng chuyển đổi giữa các đĩa DVD Matlock yêu thích của anh ấy và Price is Right.
Bước 1: Vật liệu
- PhidgetIR
- PhidgetSBC4 (hoặc bất kỳ máy tính bảng đơn nào như Raspberry Pi)
- Sắt hàn
- Máy cắt bên
- Dụng cụ cắt dây
- Dây nhảy
- Cáp USB
- Cáp Phidget
- Bao vây
- Tiêu đề xuyên lỗ
- Ống co nhiệt
Bước 2: Lập kế hoạch
Để tạo ra điều khiển từ xa, tôi cần khả năng gửi lệnh hồng ngoại (CIR) của người tiêu dùng tới TV. Tôi quyết định sử dụng PhigetIR cho nhiệm vụ này. PhidgetIR là một thiết bị được điều khiển bằng USB có khả năng gửi và nhận các lệnh CIR. Tôi chọn cái này vì một vài lý do:
- Tôi muốn hoàn thành dự án này càng sớm càng tốt và đưa nó vào sử dụng, vì vậy ý nghĩ phá bỏ máy hiện sóng và breadboard của tôi không hấp dẫn. Ngoài ra, khả năng mạch hàn tay của tôi vẫn hoạt động trong một hoặc hai năm là bao nhiêu?
- PhidgetIR có khả năng “học” các lệnh CIR làm cho việc phát triển trở nên cực kỳ đơn giản.
- Bạn có thể sử dụng hầu hết mọi ngôn ngữ lập trình chính thống với PhidgetIR. Điều này có nghĩa là tôi có thể sử dụng Java và hoàn thành mọi việc nhanh chóng.
- Cuối cùng, tôi làm việc cho Phidgets, vì vậy tôi cảm thấy thoải mái với API và luôn có các thiết bị dự phòng đặt xung quanh.
Bởi vì tôi đã chọn sử dụng PhidgetIR, tôi cần một máy tính để chạy nó. Tôi muốn dự án này trở thành một ứng dụng độc lập, giống như một chiếc điều khiển từ xa thông thường, vì vậy máy tính để bàn hoặc máy tính xách tay đã ra đời. Tôi chọn sử dụng PhidgetSBC4 (máy tính một bo mạch chạy Debian Linux), vì nó cho phép tôi giao tiếp với cả hai nút nhấn mà không cần bất kỳ phần cứng bổ sung nào. Đơn giản là chúng có thể được kết nối trực tiếp với VINT Hub tích hợp sẵn. Lưu ý: bạn cũng có thể sử dụng Raspberry Pi cho dự án này. Cuối cùng, ngoài âm thanh về mặt chức năng, tôi muốn dự án này trông tuyệt vời, vì vậy tôi quyết định rằng cần phải có một bao vây in 3D.
Bước 3: In 3D
Đối với dự án này, Geomagic đã được sử dụng để tạo mô hình cho bao vây. Có các tệp bước 3D có sẵn cho cả PhidgetIR và PhidgetSBC4 giúp đơn giản hóa quy trình. Một số quyết định đã được đưa ra trong bước này liên quan đến kích thước và chức năng của bao vây:
- PhidgetIR có hai đèn LED hồng ngoại cần hướng về phía TV để gửi lệnh. Thay vì thiết kế vỏ bọc xung quanh bảng PhidgetIR, các đèn LED hồng ngoại có thể được khử nước và dán vào các lỗ ở mặt bên của vỏ bọc. Sau đó, bảng PhidgetIR có thể được gắn cách xa đèn LED, tận dụng không gian trống.
- Các đầu nối VINT Hub trên PhidgetSBC4 có thể được uốn cong lên trên, điều này vẫn cho phép truy cập vào các kết nối nút bấm và cũng sẽ tránh phải tạo một vỏ bọc lớn hơn.
Tôi cũng quyết định thêm nhãn cho các nút và nhãn cho biết hướng mà nó phải đối mặt để các đèn LED hồng ngoại được hướng đúng hướng. Tôi đã in cục bộ vỏ ngoài bằng nhựa ABS màu đen.
Bước 4: Lắp ráp - Tháo các đèn LED
Các đèn LED hồng ngoại cuối cùng sẽ được dán vào các lỗ ở mặt bên của vỏ máy. Điều này có nghĩa là trước tiên chúng cần được giải mã.
Bước 5: Lắp ráp - Thêm thông qua lỗ tiêu đề
Tiếp theo, các tiêu đề xuyên lỗ đã được thêm vào vị trí của đèn LED, giúp chúng dễ dàng kết nối với dây nhảy 4 chân. Sử dụng ống co nhiệt để tránh tiếp xúc ngẫu nhiên.
Bước 6: Lắp ráp - Gắn đèn LED
Dán các đèn LED vào mặt bên của vỏ máy.
Bước 7: Lắp ráp - Đính kèm PhidgetIR
Gắn PhidgetIR vào vỏ và kết nối các đèn LED.
Bước 8: Lắp ráp - Thêm các nút
Các nút nhấn cần được kết nối với VINT Hub tích hợp trên PhidgetSBC, vì vậy tôi đã cắt một nửa Cáp Phidget và hàn các đầu vào các nút. Lưu ý rằng chỉ yêu cầu dây trắng (tín hiệu) và đen (nối đất).
Bước 9: Lắp ráp - Kết hợp mọi thứ lại với nhau
Một số quản lý cáp được yêu cầu để kết hợp mọi thứ với nhau, tuy nhiên, vỏ bọc hoạt động tốt.
Bước 10: Phần mềm - Mã
Chỉ có một tệp Java duy nhất được yêu cầu cho dự án này mà bạn có thể tìm thấy tại đây. Chương trình sử dụng một đối tượng PhidgetIR và hai đối tượng DigitalInput. Bạn có thể tạo các đối tượng này như thế này:
PhidgetIR ir = new PhidgetIR ();
DigitalInput tvButton = new DigitalInput (); DigitalInput otherButton = new DigitalInput ();
Các đối tượng Đầu vào kỹ thuật số được ánh xạ tới một nút bấm vật lý trên VINT Hub. Các sự kiện đính kèm, tách, lỗi và thay đổi trạng thái cũng được đăng ký với:
tv.setIsHubPortDevice (true);
tvButton.setHubPort (4); tvButton.addAttachListener (onAttachListener); tvButton.addDetachListener (onDetachListener); tvButton.addErrorListener (onErrorListener); tvButton.addStateChangeListener (onStateChangeListener); tvButton.open (); otherButton.setIsHubPortDevice (true); otherButton.setHubPort (5); otherButton.addAttachListener (onAttachListener); otherButton.addDetachListener (onDetachListener); otherButton.addErrorListener (onErrorListener); otherButton.addStateChangeListener (onStateChangeListener); otherButton.open ();
Trình nghe thay đổi trạng thái được đề cập ở trên trông giống như sau:
privatestatic DigitalInputStateChangeListener onStateChangeListener = new DigitalInputStateChangeListener () {@ OverridepublicvoidonStateChange (DigitalInputStateChangeEvent disce) {
DigitalInput ch = (DigitalInput) disce.getSource (); hãy thử {if (ch.getHubPort () == 4 && disce.getState () == true) {tvButtonActiised = true;} if (ch.getHubPort () == 5 && disce.getState () == true) {otherButtonActiised = true;}} catch (PhidgetException ex) {System.out.println ("Lỗi:" + ex.getDescription ());}}};
Khi một nút được kích hoạt, mã sự kiện sẽ thực thi và thiết lập một cờ. Các cờ này sẽ được tham chiếu và đặt lại trong vòng lặp chính. Vòng lặp chính chỉ đơn giản là đợi sự thay đổi trong trạng thái nút và sau đó gửi các lệnh IR bằng cách sử dụng hàm truyền có sẵn từ API PhidgetIR.
while (true) {if (tvButtonActiised) {
tvButtonActiised = false; Log.log (LogLevel. INFO, "THAY ĐỔI NGUỒN - TV"); ir.transmit (sourceButtonString, codeInfo); Thread.sleep (500); ir.transmit (rightButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} if (otherButtonActiised) {otherButtonActiised = false; Log.log (LogLevel. INFO, "THAY ĐỔI NGUỒN - DVD"); ir.transmit (sourceButtonString, codeInfo); Thread.sleep (500); ir.transmit (leftButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} Thread.sleep (250);}
Bước 11: Phần mềm - Lệnh CIR
Dưới đây là một ví dụ về cách tạo một lệnh (lệnh tăng âm lượng trong trường hợp này):
// Mã IR
IRCodeInfo sourceButtonCI = new IRCodeInfo (); String volumeUp = "77e1d0f0"; // Thiết lập nút nguồn sourceButtonCI.bitCount = 32; sourceButtonCI.encoding = IRCodeEncoding. SPACE; sourceButtonCI.gap = 108921; sourceButtonCI.trail = 549; sourceButtonCI.zero = newint [2]; sourceButtonCI.zero [0] = 549; sourceButtonCI.zero [1] = 627; sourceButtonCI.one = newint [2]; sourceButtonCI.one [0] = 549; sourceButtonCI.one [1] = 1755; sourceButtonCI.header = newint [2]; sourceButtonCI.header [0] = 9084; sourceButtonCI.header [1] = 4600; sourceButtonCI.repeat = newint [3]; sourceButtonCI.repeat [0] = 9084; sourceButtonCI.repeat [1] = 2308; sourceButtonCI.repeat [2] = 549; sourceButtonCI.length = IRCodeLength. CONSTANT;
Để lấy thông tin cho lệnh này, tôi chỉ cần sử dụng ví dụ PhidgetIR đi kèm với các thư viện Phidget. Sau khi hướng điều khiển từ xa về phía PhidgetIR và giữ nút tăng âm lượng, IR “học” mã và điền vào ví dụ. Thông tin này sau đó có thể được sao chép vào mã một cách đơn giản.
Bước 12: Chạy chương trình
Tệp Java có thể được viết và biên dịch trên một máy tính bên ngoài. Đặt PhidgetRemote.java và phidget22.jar trong cùng một thư mục và chạy lệnh sau:
Windowsjavac -classpath.; Phidget22.jar PhidgetRemote.java
macOS / Linuxjavac -classpath.: phidget22.jar PhidgetRemote.java
Sau khi biên dịch, hãy sao chép các tệp lớp đã tạo vào PhidgetSBC4 và định cấu hình nó để chạy khi khởi động.
Bước 13: Kết quả
Khi tôi đưa điều khiển từ xa cho ông của bạn gái và chỉ cho ông ấy cách sử dụng nó, ông ấy đã rất ngạc nhiên về sự đơn giản của nó. Hãy xem video để xem nó hoạt động như thế nào!
Giải Ba cuộc thi Điều khiển từ xa năm 2017
Đề xuất:
Làm thế nào để tạo cổng WIFI của riêng bạn để kết nối Arduino của bạn với mạng IP ?: 11 bước (có Hình ảnh)
Làm thế nào để tạo cổng WIFI của riêng bạn để kết nối Arduino của bạn với mạng IP ?: Như nhiều người bạn nghĩ rằng Arduino là một giải pháp rất tốt để thực hiện tự động hóa tại nhà và robot! Nhưng về mặt giao tiếp, Arduino chỉ đi kèm với các liên kết nối tiếp. Tôi đang làm việc trên một rô bốt cần được kết nối vĩnh viễn với một máy chủ chạy ar
Tai nghe cho răng - Bạn có thể nghe bằng răng của mình không ?: 8 bước (có hình ảnh)
Tai nghe cho răng - Bạn có thể nghe bằng răng của mình không?: * - * Tài liệu hướng dẫn này bằng tiếng Anh. Vui lòng nhấp vào đây để xem phiên bản tiếng Hà Lan, * - * Deze Guiductable được sử dụng bởi het Engels. Klik hier voor de Nederlandse versie.Hắn bằng răng. Nghe giống như khoa học viễn tưởng? Không, không phải! Với chiếc headpho 'răng tự làm này
Lưu hình ảnh của bạn cho công việc của bạn: 4 bước (với hình ảnh)
Lưu hình ảnh cho công việc của bạn: 1. Mở tài liệu Google mới và sử dụng trang này để bảo vệ hình ảnh của bạn. Sử dụng ctrl (control) và nút " c " phím để sao chép.3. Sử dụng ctrl (control) và nút " v " chìa khóa để dán
Chuyển đổi tai nghe Bluetooth của bạn thành tai nghe Bluetooth có dây: 5 bước (có hình ảnh)
Chuyển đổi tai nghe Bluetooth của bạn thành tai nghe Bluetooth có dây: Hôm nay tôi sẽ cho bạn biết cách tạo hoặc chuyển đổi tai nghe bluetooth có dây của riêng bạn
Làm cho máy ảnh của bạn thành "chế độ chụp đêm quân sự", thêm hiệu ứng ban đêm hoặc tạo chế độ chụp ảnh ban đêm trên bất kỳ máy ảnh nào !!!: 3 bước
Đặt Máy ảnh của bạn thành "Chế độ chụp đêm quân sự", Thêm Hiệu ứng Ban đêm hoặc Tạo Chế độ Cảnh báo Ban đêm trên Bất kỳ Máy ảnh nào !!!: *** Điều này đã được đưa vào CUỘC THI KỸ THUẬT SỐ DAYS PHOTO , Hãy bình chọn cho tôi ** * Nếu bạn cần bất kỳ trợ giúp nào, vui lòng gửi email: [email protected] Tôi nói tiếng Anh, Pháp, Nhật, Tây Ban Nha và tôi biết các ngôn ngữ khác nếu bạn