Mục lục:
- Bước 1: Tài nguyên
- Bước 2: Hiểu cách hoạt động của tính năng phát hiện tia hồng ngoại (Tùy chọn)
- Bước 3: Lắp ráp đèn LED hồng ngoại
- Bước 4: Kiểm tra các cặp hồng ngoại - Mạch
- Bước 5: Kiểm tra các cặp hồng ngoại - Mã cơ bản
- Bước 6: Kiểm tra các cặp hồng ngoại - Phần cứng + Phần mềm
- Bước 7: Khắc phục sự cố (Đối với các vấn đề ở bước cuối cùng)
- Bước 8: Cặp IR thứ hai
- Bước 9: Phát hiện nhiễu hồng ngoại (Tùy chọn)
- Bước 10: Thêm các cặp IR khác
- Bước 11: Năm cặp IR - Mạch
- Bước 12: Năm cặp IR - Mã
Video: Boe-Bot với đầu dò hồng ngoại: 12 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:33
Tài liệu hướng dẫn này sẽ trình bày cách xây dựng và mã hóa một Boe-Bot có thể điều hướng một mê cung bằng cách sử dụng máy dò hồng ngoại để tránh chướng ngại vật. Đây là một hướng dẫn dễ làm theo cho phép bạn dễ dàng sửa đổi cho phù hợp với nhu cầu của mình. Điều này đòi hỏi sự hiểu biết cơ bản về mạch và lập trình. Bạn sẽ cần phải có phần mềm BASIC Stamp IDE cho dự án này. Tải xuống miễn phí tại đây. Cũng như Robot Boe-Bot
Bước 1: Tài nguyên
Linh kiện điện tử
Boe-Bot với cáp kết nối Parallax Store - BoeBot Kit
5 Cửa hàng thị sai của đèn LED hồng ngoại - Bộ lắp ráp máy phát hồng ngoại
5 cụm lá chắn hồng ngoại
5 đầu dò hồng ngoại Cửa hàng thị sai - BoeBot IR Receiver
Điện trở
- (2) 4,7 kΩ ABRA Electronics - 4,7 kΩ
- (5) Điện tử ABRA 220 Ω - 220 Ω
- (2) 1 kΩ ABRA Electronics - 1 kΩ
- (5) 2 k ABRA Điện tử - 2 kΩ
Hệ thống dây điện các loại ABRA Electronics - 22 Gauge Wire
3 LED của ABRA Electronics - LED đỏ 5mm
Ủng hộ
Máy vi tính
Trình chỉnh sửa tem CƠ BẢN - (Phần mềm miễn phí)
Công cụ
Máy cắt dây ABRA Electronics - Máy cắt dây (Tùy chọn)
Wire Stripper ABRA Electronics - Máy rút dây
Misc
Tường (để xây dựng mê cung)
Bước 2: Hiểu cách hoạt động của tính năng phát hiện tia hồng ngoại (Tùy chọn)
Đèn pha hồng ngoại
Hệ thống phát hiện vật thể hồng ngoại mà chúng tôi sẽ xây dựng trên Boe-Bot giống như đèn pha của ô tô ở một số khía cạnh. Khi ánh sáng từ đèn pha ô tô phản chiếu các chướng ngại vật, mắt của bạn sẽ phát hiện chướng ngại vật và bộ não của bạn xử lý chúng và làm cho cơ thể của bạn dẫn đường cho xe theo đó. Boe-Bot sẽ sử dụng đèn LED hồng ngoại cho đèn pha. Chúng phát ra tia hồng ngoại, và trong một số trường hợp, tia hồng ngoại phản xạ lại các vật thể và phản xạ trở lại theo hướng của Boe-Bot. Con mắt của Boe-Bot là thiết bị dò tia hồng ngoại. Các đầu dò hồng ngoại gửi tín hiệu cho biết chúng có phát hiện ra tia hồng ngoại phản xạ từ một vật thể hay không. Bộ não của Boe-Bot, Tem BASIC, đưa ra quyết định và vận hành động cơ servo dựa trên đầu vào cảm biến này. Hình 7-1 Phát hiện vật thể bằng đèn pha IR Các đầu dò IR có bộ lọc quang học tích hợp cho phép rất ít ánh sáng ngoại trừ tia hồng ngoại 980 nm mà chúng tôi muốn phát hiện bằng cảm biến photodiode bên trong của nó. Đầu báo hồng ngoại cũng có một bộ lọc điện tử chỉ cho phép các tín hiệu xung quanh 38,5 kHz đi qua. Nói cách khác, máy dò chỉ tìm kiếm tia hồng ngoại bật và tắt 38, 500 lần mỗi giây. Điều này ngăn cản sự can thiệp của IR từ các nguồn thông thường như ánh sáng mặt trời và ánh sáng trong nhà. Ánh sáng mặt trời là nhiễu DC (0 Hz) và ánh sáng trong nhà có xu hướng bật và tắt ở tần số 100 hoặc 120 Hz, tùy thuộc vào nguồn điện chính trong khu vực. Vì 120 Hz nằm ngoài tần số vượt qua dải tần 38,5 kHz của bộ lọc điện tử, nó hoàn toàn bị bộ phát hiện IR bỏ qua.
-Hướng dẫn Sinh viên Paralax
Bước 3: Lắp ráp đèn LED hồng ngoại
Chèn đèn LED hồng ngoại vào phần lớn hơn của vỏ
Bao bọc phần trong của đèn LED với phần nhỏ hơn của vỏ
Bước 4: Kiểm tra các cặp hồng ngoại - Mạch
Trước khi đi quá sâu vào bất cứ điều gì, chúng tôi sẽ kiểm tra để đảm bảo rằng cặp IR hoạt động (Một đèn LED hồng ngoại và một đầu dò hồng ngoại).
Bắt đầu bằng cách xây dựng mạch ở trên trên breadboard được gắn trên đầu Boe-Bot của bạn
Bước 5: Kiểm tra các cặp hồng ngoại - Mã cơ bản
Tất nhiên, chúng tôi sẽ cần viết mã để các cặp IR của chúng tôi hoạt động
Để làm điều này, will sẽ sử dụng lệnh FREQOUT. Lệnh này được thiết kế cho âm thanh, tuy nhiên nó có thể được sử dụng để tạo ra các tần số trong phạm vi hồng ngoại. Đối với bài kiểm tra này, chúng tôi sẽ sử dụng lệnh:
FREQOUT 8, 1, 38500
điều này sẽ gửi một tần số 38,5 kHz kéo dài 1 ms đến P8. Mạch LED hồng ngoại kết nối với P8 sẽ phát tần số này. Nếu ánh sáng hồng ngoại bị phản xạ trở lại Boe-Bot bởi một đối tượng trên đường đi của nó, máy dò hồng ngoại sẽ gửi cho Dấu hiệu CƠ BẢN một tín hiệu để cho nó biết rằng ánh sáng hồng ngoại phản xạ đã được phát hiện.
Chìa khóa để làm cho một cặp IR hoạt động là gửi 1 ms của 38,5 kHz FREQOUT và ngay lập tức lưu trữ đầu ra của bộ dò IR trong một biến.
Ví dụ này cho thấy việc lưu trữ giá trị IR Detector trong một biến bit có tên là irDectectLeft
FREQOUT 8, 1, 38500
irDetectLeft = IN9
Trạng thái đầu ra của máy dò IR khi không thấy tín hiệu IR cao. Khi máy dò IR nhìn thấy sóng hài 38500 Hz được phản xạ bởi một đối tượng, đầu ra của nó ở mức thấp. Đầu ra của bộ phát hiện IR chỉ ở mức thấp trong một phần của mili giây sau khi lệnh FREQOUT gửi xong sóng hài, vì vậy điều cần thiết là phải lưu đầu ra của bộ dò IR trong một biến ngay sau khi gửi lệnh FREQOUT. Giá trị được lưu trữ bởi biến sau đó có thể được hiển thị trong Debug Terminal hoặc được sử dụng cho các quyết định điều hướng của Boe-Bot.
Bước 6: Kiểm tra các cặp hồng ngoại - Phần cứng + Phần mềm
Bây giờ bạn đã biết những điều cơ bản, chúng ta có thể đặt phần cứng và Phần mềm lại với nhau để kiểm tra một cặp với nhau và nhận phản hồi theo thời gian thực từ những gì IR Pair đang phát hiện
Bạn có thể thử và tự tạo mã hoặc sử dụng mã bên dưới
'{$ STAMP BS2}
'{$ PBASIC 2.5} irDetectLeft VAR Bit DO FREQOUT 8, 1, 38500 irDetectLeft = IN9 DEBUG HOME, "irDetectLeft =", BIN1 irDetectLeft PAUSE 100 LOOP
- Để Boe-Bot được kết nối với cáp nối tiếp, vì bạn sẽ sử dụng Thiết bị đầu cuối GỬI để kiểm tra cặp IR của mình.
- Đặt một đối tượng, chẳng hạn như bàn tay của bạn hoặc một tờ giấy, cách cặp IR bên trái khoảng một inch
- Xác minh rằng khi bạn đặt một đối tượng trước cặp IR, Thiết bị đầu cuối gỡ lỗi hiển thị số 0 và khi bạn xóa đối tượng khỏi cặp IR, nó sẽ hiển thị số 1.
- Nếu Thiết bị đầu cuối gỡ lỗi không hiển thị các giá trị mong đợi, hãy thử các bước trong Bước xử lý sự cố.
Bước 7: Khắc phục sự cố (Đối với các vấn đề ở bước cuối cùng)
DEBUG Terminal hiển thị các giá trị không mong muốn
Kiểm tra mạch điện xem có chập, cắm sai hoặc thiếu kết nối, linh kiện bị hỏng, điện trở không chính xác hoặc bất kỳ vấn đề có thể nhìn thấy nào khác không
Kiểm tra chương trình khỏi lỗi logic hoặc lỗi cú pháp - Nếu bạn đã sử dụng mã của riêng mình cho bước cuối cùng, hãy xem xét sử dụng mã được cung cấp
Luôn nhận được 0, ngay cả khi không có đối tượng nào được đặt trước Boe-Bot
Kiểm tra xem có bất kỳ vật thể nào gần đó đang phản xạ tín hiệu hồng ngoại hay không. Cái bàn phía trước Boe-Bot có thể là nguyên nhân. Di chuyển Boe-Bot vào không gian mở để đèn LED hồng ngoại và máy dò không thể phản chiếu từ bất kỳ vật thể nào gần đó.
Đọc phần lớn thời gian khi không có đối tượng ở phía trước Boe-Bot, nhưng thỉnh thoảng nhấp nháy về 0
Có thể bị nhiễu từ ánh sáng huỳnh quang gần đó; Tắt bất kỳ đèn huỳnh quang nào gần đó và lặp lại các thử nghiệm của bạn. Nếu sự cố vẫn tiếp diễn, bước 9 có thể tiết lộ sự cố
Bước 8: Cặp IR thứ hai
Bây giờ bạn đã có chương trình cho IR bên trái, đến lượt bạn tạo mạch và lập trình cho IR Pair bên phải
- Thay đổi câu lệnh DEBUG, tiêu đề và nhận xét để tham chiếu đến cặp IR phù hợp.
- Thay đổi tên biến từ irDetectLeft thành irDetectRight. Bạn sẽ cần phải làm điều này ở bốn vị trí trong chương trình.
- Thay đổi đối số Ghim của lệnh FREQOUT từ 8 thành 2.
- Thay đổi thanh ghi đầu vào được giám sát bởi biến irDetectRight từ IN9 thành IN0.
- Lặp lại các bước kiểm tra trong hoạt động này cho cặp IR phù hợp; với mạch IR LED được kết nối với P2 và bộ tách sóng được kết nối với P0.
Bước 9: Phát hiện nhiễu hồng ngoại (Tùy chọn)
Cho dù bạn đang gặp sự cố với việc phát hiện các tín hiệu không được phát hiện hay bạn dự định chứng minh khả năng phát hiện IR của mình ở một vị trí thay thế, bạn có thể muốn kiểm tra xem có bị nhiễu hay không.
Khái niệm của chương trình thử nghiệm này khá đơn giản, bạn phát hiện các tín hiệu hồng ngoại mà không cần gửi bất kỳ tín hiệu nào ra ngoài.
Bạn có thể sử dụng cùng một mạch nhưng bạn sẽ phải thay đổi mã. bạn có thể chọn viết mã của riêng mình, nhưng bạn có thể sử dụng mã được cung cấp bên dưới:
'{$ STAMP BS2}
'{$ PBASIC 2.5} irDetectLeft VAR Bit DO irDetectLeft = IN9 irDetectRight = IN0 NẾU IN9 = 0 HOẶC IN0 = 0 SAU ĐÓ "Đã phát hiện can thiệp" TẠM NGỪNG 100 LOOP
Nếu bạn gặp phải sự can thiệp, hãy xác định nguồn có khả năng xảy ra và tắt / xóa nó hoặc chuyển vị trí bạn vận hành Boe-Bot của mình.
Bước 10: Thêm các cặp IR khác
Nếu bạn muốn độ chính xác hơn trong chuyển động của Boe-Bot, bạn có thể muốn thêm nhiều Cặp IR hơn. 3 Cải thiện đáng kể hiệu suất so với hai; bạn có thể sử dụng cặp trung tâm để quét vật cản trực tiếp và sử dụng IR hai bên để xác định mức độ cần rẽ. Tuy nhiên, điểm yếu của thiết kế 3 cặp IR là bạn có thể biết khi bạn đang trượt vào tường, vì cặp IR trung tâm được sử dụng để phát hiện chướng ngại vật. Để giải quyết vấn đề này, bạn có thể thêm một cặp IR cho mỗi bên với giá trị điện trở cao - do đó và tín hiệu hồng ngoại sẽ chỉ được phát hiện nếu Boe-Bot ở gần bên hoặc bức tường ở một góc nghiêng.
Bước 11: Năm cặp IR - Mạch
Hãy cẩn thận khi hướng hai đèn LED hồng ngoại ở bên cạnh vì việc xoắn chúng có thể khiến dây dẫn chạm vào và gây ra đoản mạch.
Bước 12: Năm cặp IR - Mã
Bạn có thể muốn thử lập trình Boe-Bot của mình trước khi sử dụng mã này:
'{$ STAMP BS2}' {$ PBASIC 2.5} 'Năm mã phát hiện cặp IR' Matthew Shaw 'ngày 8 tháng 5 năm 2019 (Phiên bản 7)' Phát hiện đối tượng và xử lý logic cơ bản để giải quyết mê cung
irDetectLeft VAR Bit 'Biến cho bên trái
irDetectCentre VAR Bit 'Biến cho trung tâm irDetectRight VAR Bit' Biến cho bên phải irDetectLSide VAR Bit 'Biến cho bên trái irDetectRSide VAR Bit' Biến cho bên phải irDetectLSideFar VAR Bit 'Biến cho điện trở thấp bên trái irDetectRSideFar VAR Bit' Biến cho điện trở thấp bên phải
mLoop VAR Word
Lmotor PIN 15 'Động cơ bên trái được kết nối với chân 14, xung đi qua đây
Mã PIN Rmotor 14 'phải = 15
'tốc độ là -> 650-750-850
LFast CON 850 'Conastant cho động cơ trái ở tốc độ tối đa RFast CON 650' Conastant cho động cơ phải ở tốc độ tối đa
LStop CON 750 'Conastant cho động cơ trái ở tốc độ tối đa
RStop CON 650 'Conastant cho động cơ bên phải ở tốc độ tối đa
LMid CON 830 'Conastant cho động cơ trái ở tốc độ trung bình
RMid CON 700 'Conastant cho động cơ bên phải ở tốc độ trung bình
LSlow CON 770 'Conastant cho động cơ trái ở tốc độ tối thiểu
RSlow CON 730 'Conastant cho động cơ bên phải ở tốc độ tối thiểu
LRev CON 650 'Conastant cho động cơ trái ở tốc độ tối đa ngược lại
RRev CON 850 'Conastant cho động cơ trái ở tốc độ tối đa ngược lại
FREQOUT 7, 1, 38500 'bên trái
irDetectLeft = IN8
FREQOUT 6, 1, 38500 'trung tâm
irDetectCentre = IN5
FREQOUT 3, 1, 38500 'bên phải
irDetectRight = IN2
FREQOUT 10, 1, 38500 'Đóng trái
irDetectLSide = IN11
FREQOUT 1, 1, 38500 'phải Đóng
irDetectRSide = IN0
FREQOUT 9, 1, 38500
irDetectLSideFar = IN11
FREQOUT 4, 1, 38500 'bên phải
irDetectRSideFar = IN0
IF irDetectLSide = 0 AND irDetectRSide = 0 THÌ main 'LỆNH KHỞI ĐỘNG vẫy tay qua hai đầu dò bên để bắt đầu chương trình
Chủ chốt:
TẠM DỪNG 1000 DO
PULSOUT Lmotor, động cơ trái của LFast 'chạy với tốc độ tối đa
PULSOUT Rmotor, RFast 'Động cơ bên phải chạy với tốc độ tối đa
FREQOUT 6, 1, 38500 'trung tâm
irDetectCentre = IN5
FREQOUT 10, 1, 38500 'Đóng trái
irDetectLSide = IN11
FREQOUT 1, 1, 38500 'bên phải
irDetectRSide = IN0
NẾU irDetectLSide = 0 VÀ irDetectRSide = 1 THEN
DO PULSOUT Lmotor, LFast
FREQOUT 6, 1, 38500 'trung tâm
irDetectCentre = IN5 NẾU irDetectCentre = 0 THÌ xu
FREQOUT 10, 1, 38500 'Đóng trái
irDetectLSide = IN11
FREQOUT 3, 1, 38500 'bên phải
irDetectRight = IN2
LOOP ĐẾN KHI irDetectLSide = 1 HOẶC irDetectRSide = 0
ELSEIF irDetectLSide = 1 VÀ irDetectRSide = 0 THEN
LÀM PULSOUT Rmotor, RFast
FREQOUT 6, 1, 38500 'trung tâm
irDetectCentre = IN5 NẾU irDetectCentre = 0 THÌ xu
FREQOUT 10, 1, 38500 'Đóng trái
irDetectLSide = IN11
FREQOUT 3, 1, 38500 'bên phải
irDetectRight = IN2
LOOP ĐẾN KHI irDetectLSide = 0 HOẶC irDetectRSide = 1
'ENDIF
NẾU irDetectCentre = 0 THÌ 'BẮT ĐẦU
FREQOUT 7, 1, 38500 'phía bên trái irDetectLeft = IN8
FREQOUT 6, 1, 38500 'trung tâm
irDetectCentre = IN5
FREQOUT 3, 1, 38500
irDetectRight = IN2
PAUSE 1000 'tạm dừng để hiển thị tín hiệu được phát hiện
IF (irDetectLeft = 1 AND irDetectRight = 0) THEN 'đánh giá thời lượng
GOSUB turnLeft
ELSEIF (irDetectLeft = 0 VÀ irDetectRight = 1) THÌ
GOSUB turnRight
ELSEIF (irDetectLeft = 1 VÀ irDetectRight = 1) THÌ
GOSUB turnDecide
KHÁC
GOSUB lần lượt Đảo ngược
ENDIF
ENDIF 'KẾT THÚC
VÒNG
KẾT THÚC
rẽ trái:
DO PULSOUT Lmotor, LRev FREQOUT 8, 1, 38500 irDetectLeft = IN9 FREQOUT 5, 1, 38500 irDetectCentre = IN4 FREQOUT 2, 1, 38500 irDetectRight = IN0 LOOP UNTIL IN0 = 1 RETURN
rẽ phải:
DO PULSOUT Rmotor, RRev FREQOUT 8, 1, 38500 irDetectLeft = IN9 FREQOUT 5, 1, 38500 irDetectCentre = IN4 FREQOUT 2, 1, 38500 irDetectRight = IN0 LOOP UNTIL IN9 = 1
TRỞ LẠI
turnReverse:
FOR mLoop = 0 ĐẾN 50 PULSOUT Rmotor, RRev PULSOUT Lmotor, LRev TẠM DỪNG 20 PULSOUT Lmotor, LRev TẠM DỪNG 20 TIẾP THEO DO PULSOUT Rmotor, RRev FREQOUT 8, 1, 38500 irDetectLeft = IN9 FREQOUT 5, 1, 38500 ir = 1, 38500 irDetectRight = IN0 LOOP ĐẾN KHI IN9 = 1
TRỞ LẠI
turnDecide: 'sử dụng điện trở thấp hơn để xem thêm
FREQOUT 9, 1, 38500
irDetectLSideFar = IN11
FREQOUT 4, 1, 38500 'bên phải
irDetectRSideFar = IN0
IF (irDetectLSideFar = 1 VÀ irDetectRSideFar = 0) THEN 'đánh giá thời lượng
GOSUB turnLeft
ELSEIF (irDetectLSideFar = 0 VÀ irDetectRSideFar = 1) THÌ
GOSUB turnRight
ELSEIF (irDetectLSideFar = 1 VÀ irDetectRSideFar = 1) THÌ
GOSUB turnLeft
KHÁC
GOSUB lần lượt Đảo ngược
ENDIF
TRỞ LẠI
Đề xuất:
Máy ảnh hồng ngoại hình ảnh nhiệt tự làm: 3 bước (có hình ảnh)
Máy ảnh hồng ngoại hình ảnh nhiệt tự làm: Xin chào! Tôi luôn tìm kiếm các Dự án mới cho các bài học vật lý của mình. Hai năm trước, tôi đã xem một báo cáo về cảm biến nhiệt MLX90614 từ Melexis. Loại tốt nhất chỉ với 5 ° FOV (trường nhìn) sẽ phù hợp với máy ảnh nhiệt tự chế
Đèn chiếu sáng hồng ngoại (Hồng ngoại) Part-2: 3 bước
Đèn chiếu sáng hồng ngoại (Hồng ngoại) Phần 2: Xin chào các bạn, tôi đã trở lại với Phần 2 của Đèn chiếu sáng hồng ngoại (Hồng ngoại) Có thể hướng dẫn. Nếu bạn chưa xem Phần 1, hãy BẤM VÀO ĐÂY Bắt đầu … Một Mạch Chiếu Sáng IR đơn giản để hỗ trợ tầm nhìn ban đêm của Camera CCTV. IR Illuminator Night Vision, với tư cách là
Đèn chiếu sáng hồng ngoại (Hồng ngoại) Phần 1: 5 bước
Đèn chiếu sáng hồng ngoại (Hồng ngoại) Phần 1: Xin chào … Trong phần hướng dẫn này, chúng ta sẽ tìm hiểu một chút về Tầm nhìn ban đêm, các cách khác nhau để đạt được tầm nhìn ban đêm và Mạch đèn chiếu hồng ngoại đơn giản để hỗ trợ tầm nhìn ban đêm của Camera quan sát. hình cho thấy sơ đồ mạch của IR Illumina
Máy ảnh nhiệt hồng ngoại M5Stack sử dụng cảm biến hình ảnh mảng hồng ngoại AMG8833: 3 bước
Máy ảnh nhiệt M5Stack IR sử dụng cảm biến hình ảnh mảng hồng ngoại AMG8833: Giống như nhiều người, tôi đã bị mê hoặc với máy ảnh nhiệt nhưng chúng luôn nằm ngoài tầm giá của tôi - cho đến nay !! Mô-đun ESP32 và một
CÁCH LÀM MỘT MÁY ẢNH HỒNG NGOẠI VỚI ĐÈN LED IR: 5 bước (có hình ảnh)
CÁCH ĐẶT MÁY ẢNH HỒNG NGOẠI VỚI ĐÈN LED IR: Tôi đã nhận ra một máy ảnh Hồng ngoại để sử dụng nó trong hệ thống chụp chuyển động. Với nó, bạn cũng có thể có được loại hình ảnh tuyệt vời này: các vật thể sáng bóng trong tầm nhìn của máy ảnh là điều bình thường trong thực tế. Bạn có thể nhận được kết quả khá tốt với một mức giá rẻ