Cảm biến màu sử dụng ánh sáng phản chiếu để phát hiện màu sắc, giá trị màu sắc, giá trị thang độ xám, độ sáng và độ gần của đối tượng.
Cảm biến màu VEX IQ có trong VEX IQ Super Kit và cũng có thể được mua tại đây.
Bạn đang sử dụng Robot VEX IQ thế hệ thứ 2? Xem tổng quan về cảm biến thế hệ thứ 2 tại đâyvà thông tin về Cảm biến quang học , phiên bản Cảm biến màu thế hệ thứ 2.
Mô tả cảm biến màu
Cảm biến màu VEX IQ có nhiều chế độ, cho phép nó thu thập các loại thông tin khác nhau từ môi trường của nó. Thông tin mà nó thu thập bị ảnh hưởng bởi điều kiện ánh sáng của môi trường cũng như khoảng cách giữa cảm biến và vật thể hoặc bề mặt mà nó đang đọc.
Cảm biến màu hoạt động như thế nào
Cảm biến màu có thể phát hiện cả màu sắc và độ gần.
Phát hiện màu sắc
Khi ở chế độ sáng, Cảm biến màu được sử dụng để phát hiện cường độ của tất cả ánh sáng trong môi trường của robot. Càng nhiều ánh sáng chạm tới Cảm biến màu khi nó hoạt động thì giá trị phần trăm được gửi đến Bộ não Robot càng cao.
Nếu phần trăm độ sáng được phát hiện thấp hoặc không đáng tin cậy, bạn có thể bật đèn của Cảm biến màu hoặc tăng phần trăm độ sáng của đèn bằng cách sử dụng cài đặt đèn sau để chặn:
Cảm biến màu có thể báo cáo màu mà nó nhìn thấy dưới dạng giá trị màu hoặc giá trị màu sắc.
Giá trị màu.Có 14 màu được liệt kê mà Cảm biến màu có thể phát hiện. Các màu bị thiếu trong hình ảnh của khối là đỏ, lục, lam, trắng và vàng.
Giá trị màu sắc.Giá trị Hue giống như giá trị màu nhưng là số. Giá trị màu nằm trong khoảng từ 0 đến 360, như độ. Các giá trị màu được liệt kê ở trên có phạm vi giá trị màu tương đương riêng.
Điều quan trọng khi phát hiện màu sắc và sắc độ là Cảm biến màu có lượng ánh sáng thích hợp để làm việc đó. Hãy nhớ kiểm tra, còn được gọi là hiệu chỉnh, Cảm biến màu của bạn ở các mức ánh sáng khác nhau và với đèn được đặt ở các mức khác nhau để xác định cài đặt nào đáng tin cậy nhất cho Cảm biến màu của rô-bốt.
Phát hiện tiệm cận
Cảm biến màu bao gồm một bộ phát cảm biến hồng ngoại. Bộ phát hồng ngoại chiếu ánh sáng vô hình và sau đó phát hiện sự phản xạ của nó. Nếu phần lớn ánh sáng hồng ngoại dội ngược về phía cảm biến, nó sẽ báo cho Bộ não Robot biết rằng có một vật thể đang ở gần.
Công dụng phổ biến của cảm biến màu
Cảm biến màu được sử dụng trong nhiều ứng dụng công nghệ trong đó việc có màu sắc cụ thể trên màn hình hoặc sản phẩm là rất quan trọng.
Một số ứng dụng phổ biến trong cuộc sống hàng ngày bao gồm:
- Công cụ hiệu chỉnh màu sẽ kiểm tra xem màn hình kỹ thuật số có hiển thị màu chính xác hay không, sau đó điều chỉnh cài đặt hiển thị nếu cần. Điều quan trọng đối với các nghệ sĩ đồ họa và bất kỳ nhà thiết kế nào làm việc với màu sắc trên màn hình kỹ thuật số là có thể nhìn thấy chính xác màu sắc được hiển thị. Sự hiểu lầm và lãng phí nguồn lực xảy ra khi màu sắc không chính xác.
- Máy ảnh và máy quay phim sử dụng cảm biến màu để điều chỉnh cài đặt dựa trên điều kiện ánh sáng, nhằm nâng cao chất lượng ảnh và video bằng cách tối đa hóa mức độ ánh sáng và cải thiện các màu xỉn. Những cảm biến này cũng cho phép nhiếp ảnh gia tập trung vào các màu cụ thể trong ảnh của họ.
- Cảm biến màu đôi khi được sử dụng trong sản xuất để nhanh chóng kiểm tra xem sản phẩm có đúng màu hay không trước khi giao cho khách hàng. Ví dụ: trái cây và rau quả chuyển màu khi chín hoặc sẵn sàng để ăn có thể được quét để đảm bảo rằng chúng có đúng màu để gửi ra thị trường.
Một số cách sử dụng phổ biến với Robot VEX IQ bao gồm:
- Cảm biến này có thể được sử dụng để phát hiện màu sắc của vật thể. Xem hình ảnh động này để thấy robot di chuyển về phía trước cho đến khi Cảm biến màu phát hiện ra Khối lập phương màu xanh lá cây.
- Cảm biến này có thể được sử dụng để phát hiện và/hoặc theo dõi một đường dây. Xem hình ảnh động này để thấy một con rô-bốt sử dụng Cảm biến màu để di chuyển dọc theo một đường đã đánh dấu.
- Cảm biến này có thể phát hiện xem một vật thể có ở gần hay không.
Cảm biến màu trên Robot cạnh tranh
Hãy nhớ rằng, điều quan trọng khi phát hiện màu sắc và sắc độ là Cảm biến màu có lượng ánh sáng thích hợp để làm việc đó. Hãy nhớ kiểm tra, còn được gọi là hiệu chỉnh, Cảm biến màu của bạn mỗi khi bạn đến địa điểm thi đấu mới vì các mức ánh sáng khác nhau có thể ảnh hưởng đến cách Cảm biến màu của bạn hoạt động. Kiểm tra dự án của bạn với bộ đèn ở các mức độ khác nhau để xác định cài đặt nào đáng tin cậy nhất cho Cảm biến màu của rô-bốt.
Thông tin được Cảm biến màu thu thập rất hữu ích cho việc lập trình rô-bốt cạnh tranh để phản ứng với nhiều điều kiện khác nhau. Cảm biến màu có thể giúp robot thi đấu tốt hơn theo những cách sau:
- Nó cho phép robot phát hiện màu sắc của vật thể gần cảm biến. Điều này rất hữu ích nếu bạn muốn rô-bốt sắp xếp các vật thể có màu khác nhau, tiếp cận một vật thể có màu cụ thể hoặc phát hiện màu sắc của vật thể khi chúng đi ngang qua cảm biến.
- Nó cho phép robot phát hiện lượng ánh sáng phản xạ trở lại cảm biến. Điều này cho phép rô-bốt của bạn lái xe cho đến khi chạm tới một vạch trên bề mặt hoặc thậm chí đi theo vạch đó.
- Nó cho phép robot biết liệu một vật thể hoặc bề mặt có ở gần hay không. Điều này rất hữu ích trong việc xác định xem màu được phát hiện là kết quả đọc từ một vật thể ở gần hay có khả năng là kết quả bất thường của bề mặt hoặc ánh sáng ở xa.
Mã hóa cảm biến màu theo khối
Khối <Found an object> là khối báo cáo Boolean báo cáo một điều kiện là đúng hoặc sai. Các khối Boolean, như khối <Found an object> , nằm gọn bên trong các khối có đầu vào hình lục giác (sáu mặt) cho các khối khác.
Khối Boolean <Found an object> báo cáo 'true' nếu 'true' nếu cảm biến Màu phát hiện một vật thể và 'false' nếu cảm biến không phát hiện được. Để tìm hiểu thêm về các khối Boolean, hãy truy cập bài viết Trợ giúp hoặc Hình dạng khối và Ý nghĩa.
Trong ví dụ này, khối <Found an object> được sử dụng để phát hiện khoảng cách cùng với khối [Đợi cho đến khi], để khiến rô-bốt di chuyển về phía trước cho đến khi phát hiện được vật thể.
Khối <Color detects> cũng là khối báo cáo Boolean báo cáo một điều kiện là đúng hoặc sai. Khối <Color detects> báo cáo 'đúng' nếu 'đúng' nếu cảm biến Màu phát hiện màu đã chọn và 'sai' nếu cảm biến phát hiện bất kỳ màu nào khác. Để tìm hiểu thêm về các khối Boolean, hãy truy cập bài viết Trợ giúp hoặc Hình dạng khối và Ý nghĩa.
Trong ví dụ này, khối <Color detects> được sử dụng cùng với khối [Đợi cho đến khi] để khiến rô-bốt di chuyển về phía trước cho đến khi Cảm biến màu phát hiện vật thể màu xanh lá cây. Robot sau đó sẽ dừng lái xe. Điều này được minh họa trong video đầu tiên ở trên.
Khối (Độ sáng của) báo cáo lượng ánh sáng được Cảm biến màu phát hiện. Nó là khối phóng viên được sử dụng bên trong các khối khác có không gian hình tròn.
Khối (Độ sáng của) báo cáo phạm vi từ 0% đến 100%.
Trong ví dụ này, khối (Độ sáng của) được sử dụng để rô-bốt phát hiện và đi theo một đường, như minh họa trong video thứ hai ở trên.
Khối (Hue of) báo cáo sắc độ của màu được Bộ cảm biến màu phát hiện. Nó là khối phóng viên được sử dụng bên trong các khối khác có không gian hình tròn.
Khối (Độ sáng của) báo cáo phạm vi từ 0 đến 360.
Trong ví dụ này, khối (Hue of) được sử dụng để yêu cầu rô-bốt kiểm tra một loạt giá trị màu sắc tương ứng với màu đỏ và quay sang phải 90 độ nếu cảm biến phát hiện những giá trị đó. Nếu phát hiện bất kỳ giá trị màu sắc nào khác, robot sẽ rẽ trái 90 độ.
Khối (Hue of) có thể hữu ích khi robot cần phát hiện một số màu nhất định khi điều kiện ánh sáng xung quanh có thể không nhất quán.
Mã hóa cảm biến màu bằng Python
Lưu ý:Để mã hóa Công tắc bội thu VEX IQ (thế hệ 1) trong Python, nó phải được kết nối với Brain VEX IQ (thế hệ 2). Brain VEX IQ (thế hệ 1) không hỗ trợ Python.
color_3.is_near_object()
Lệnh color.is_near_object báo cáo Đúng khi Cảm biến màu phát hiện một vật thể hoặc bề mặt gần phía trước cảm biến và Sai khi Cảm biến màu thực hiện chứ không phải phát hiện một vật thể hoặc bề mặt gần phía trước cảm biến cảm biến.
Lưu ý:Tên của Cảm biến màu xuất hiện trong lệnh tương ứng với tên được đặt trong cấu hình.
drivetrain.drive(FORWARD) |
| Trong ví dụ này, vòng lặpWhile với điều kiện không phải được sử dụng với lệnh color.is_near_object để khiến robot di chuyển về phía trước cho đến khi Cảm biến màu phát hiện một vật thể ở gần phía trước cảm biến. |
màu_3.màu()
Lệnh color.color báo cáo màu hiện đang được Bộ cảm biến màu phát hiện.
drivetrain.drive(FORWARD) |
| Trong ví dụ này, vòng lặpWhile với điều kiện không phải được sử dụng với lệnh color.color để khiến robot tiến về phía trước cho đến khi Cảm biến màu phát hiện ra vật thể màu xanh lá cây. Robot sau đó sẽ dừng lái xe. Điều này được minh họa trong video đầu tiên ở trên. |
màu_3.độ_sáng()
Lệnh color.brightness báo cáo lượng ánh sáng được Cảm biến màu phát hiện. Nó báo cáo một phạm vi giá trị từ 0% - 100%.
color_3.set_light(25, PERCENT) |
| Trong ví dụ này, lệnh color.brightness được dùng để robot phát hiện và đi theo một đường thẳng, như minh họa trong video thứ hai ở trên. |
màu_3.sắc thái()
Lệnh color.hue báo cáo sắc độ của màu được Bộ cảm biến màu phát hiện. Nó báo cáo một loạt các giá trị màu sắc từ 0 đến
brain.screen.print(color_3.hue()) |
|
Trong ví dụ này, lệnh color.hue được dùng để yêu cầu rô-bốt kiểm tra một loạt giá trị màu sắc tương ứng với màu đỏ và rẽ phải 90 độ nếu cảm biến phát hiện những giá trị đó. Nếu phát hiện bất kỳ giá trị màu sắc nào khác, robot sẽ rẽ trái 90 độ. Lệnh color.hue có thể hữu ích khi robot cần phát hiện một số màu nhất định khi điều kiện ánh sáng xung quanh có thể không nhất quán. |