Mục lục:

Tôi có thể sử dụng TinyLiDAR trong Scratch không?: 3 bước
Tôi có thể sử dụng TinyLiDAR trong Scratch không?: 3 bước

Video: Tôi có thể sử dụng TinyLiDAR trong Scratch không?: 3 bước

Video: Tôi có thể sử dụng TinyLiDAR trong Scratch không?: 3 bước
Video: Cách sử dụng 2 hoặc nhiều hơn cảm biến khoảng cách Laser VL53L0X 2024, Tháng bảy
Anonim
Tôi có thể sử dụng TinyLiDAR trong… Scratch không?
Tôi có thể sử dụng TinyLiDAR trong… Scratch không?

Thỉnh thoảng, chúng tôi nhận được yêu cầu để hỏi xem tinyLiDAR có hoạt động trên nền tảng máy tính cụ thể của họ hay không. Mặc dù tinyLiDAR được thiết kế như một cảm biến LiDAR đơn giản để sử dụng cho Arduino UNO, nhưng không có gì ngăn cản nó được sử dụng trên các nền tảng khác như Raspberry Pi (như được hiển thị trong hướng dẫn trước ở đây). Nghĩa là, nếu nền tảng có bus I2C và có thể hỗ trợ tính năng kéo dài xung nhịp của thông số I2C. Vậy - điều gì sẽ xảy ra nếu hội đồng quản trị của bạn thậm chí không hỗ trợ I2C? - đừng bận tâm đến những thứ kéo dài đồng hồ… Chà, đó sẽ là một kịch bản đầy thách thức nhưng trên thực tế, nó thực sự tồn tại cho ngôn ngữ lập trình hình ảnh cực kỳ phổ biến được gọi là "Scratch".

Google nó nếu bạn chưa từng nghe nói về nó trước đây nhưng nói tóm lại, nó là một ngôn ngữ đầu tiên tuyệt vời cho bất kỳ ai có thể tham gia vào lĩnh vực lập trình. Scratch được tạo ra bởi MIT Media Lab và đã tồn tại hơn 16 năm. Đó là ngôn ngữ goto để dạy trẻ em viết mã trên khắp thế giới. Bất kỳ ai cũng có thể bắt đầu sử dụng miễn phí - vì nó thường chạy trên máy tính để bàn của bạn trong trình duyệt web. Kiểm tra nó ra ở đây nếu bạn thích.

Phiên bản TL; DR

ĐÚNG! Với một tính năng mới được gọi là "Chế độ giả lập siêu âm" trong phiên bản tinyLiDAR f / w 1.3.9

Bước 1: Cào cái gì?

Có rất nhiều hương vị của Scratch trong tự nhiên bây giờ. Những người đam mê robot có xu hướng sử dụng các phiên bản tập trung GPIO như ScratchGPIO hoặc các phiên bản sửa đổi khác như ScratchX có thể được tạo ra để hỗ trợ bất kỳ 'phần cứng thử nghiệm' nào. Tất cả những điều này đều tuyệt vời cho người dùng nâng cao nhưng các phiên bản chính thống được cài đặt theo mặc định trên pi sẽ là trọng tâm của chúng tôi cho hướng dẫn này vì chúng có các tùy chọn phần cứng khá hạn chế.

Máy tính để bàn Raspbian Stretch của pi đi kèm với hai phiên bản Scratch được cài đặt sẵn. Cụ thể là "Scratch" và "Scratch 2". Chúng tôi sẽ sử dụng cái đầu tiên hay còn gọi là "Scratch 1.4 (NuScratch)" và sẽ sử dụng nó "ngoại tuyến" để chúng tôi có thể sử dụng tính năng máy chủ GPIO.

Bạn có thể tải xuống hình ảnh máy tính để bàn pi chính thức tại đây.

Vì bất cứ lý do gì, những người sáng tạo Scratch đã quyết định chỉ hỗ trợ một số cảm biến phổ biến nhất hiện có từ các công ty lớn như Lego, v.v. Điều thú vị là họ cũng quyết định thêm hỗ trợ cho HC-SR04. Tất nhiên, đây là cảm biến khoảng cách siêu âm phổ biến, chỉ đơn giản là xuất ra một độ rộng xung duy nhất tỷ lệ với khoảng cách đo được.

Độ chính xác của phép đo có thể thay đổi một chút tùy thuộc vào nhiệt độ không khí, độ ẩm và vật liệu mục tiêu như đã đề cập ở đây, ở đây và ở đây. Nhưng nói chung, chỉ cần bất kỳ nền tảng nào cũng có thể đo được đầu ra độ rộng xung của thiết bị này.

Bước 2: Tính năng mới

Tính năng mới
Tính năng mới

Việc xuất ra các xung chính xác ở quy mô micro giây không phải là vấn đề đối với chúng tôi trên tinyLiDAR vì chúng tôi có bộ hẹn giờ phần cứng có độ phân giải cao dự phòng bên trong micro 32bit trên bo mạch. tinyLiDAR cũng luôn tự động hiệu chỉnh nhiệt độ khi nó hoạt động mạnh nên không cần điều chỉnh thêm cho môi trường hoạt động.

Hãy làm nó

Được rồi - chúng tôi có thể vì vậy chúng tôi đã thêm một tính năng mới vào tinyLiDAR (kể từ phần sụn 1.3.9) được gọi là "Chế độ giả lập siêu âm". Bạn có thể truy cập nó bằng cách sử dụng lệnh "u" từ tinyLiDAR GUI Terminal được cập nhật.

Việc sử dụng nó sẽ thay đổi cài đặt trong bộ nhớ không bay hơi, vì vậy nó sẽ làm cho tinyLiDAR trông giống như một cảm biến siêu âm thông thường ngay cả khi bạn đã ngắt nguồn. Bạn có thể thay đổi nó trở lại chế độ I2C bình thường bằng cách nhấn nút đặt lại và ra lệnh "az". Các chi tiết khác có trong hướng dẫn sử dụng.

Để làm cho cuộc sống trở nên đơn giản hơn nữa, chúng tôi đang đặt sẵn cảm biến LiDAR tí hon cho Chế độ mô phỏng siêu âm mới này từ trang web của chúng tôi. Chỉ cần đặt hàng phiên bản "-u".

Nhìn Ma, Không hàn

Không cần hàn và cũng không cần bảng mạch vì cáp "Grove to Female 4pin" đi kèm sẽ cắm trực tiếp vào các chân tiêu đề Raspberry pi. Chân kích hoạt là dây Vàng và chân echo là dây Trắng. Tất nhiên, màu đen và màu đỏ dành cho quyền lực. Tham khảo hình ảnh chính ở trên để biết chi tiết.

Btw, chúng tôi đã tiến thêm một bước nữa và làm cho chân Vàng hoạt động giống như cảm biến PING))) sử dụng một dây duy nhất cho cả tín hiệu kích hoạt và tín hiệu dội lại.

Do đó, giờ đây bạn có thể thực hiện các phép đo với tinyLiDAR bằng cách sử dụng bản phác thảo siêu âm "PING" mặc định đi kèm với mọi IDE Arduino mà không cần bất kỳ thay đổi mã nào! Bạn có thể thử nó mà không bị chậm trễ.

Tất nhiên, bạn có thể đặt các thông số như độ chính xác cao, khoảng cách xa, v.v. cho các phép đo LiDAR của mình trước khi chọn lệnh "u" và sau đó nó sẽ thực hiện các phép đo đó mỗi khi thấy chốt kích hoạt giảm xuống như thể hiện trong sơ đồ trên.

Nguy hiểm, Will Robinson

Lưu ý rằng cảm biến siêu âm SR04 cần một số điện trở để ngăn nguồn cung cấp + 5v làm hỏng số pi của bạn. Nhưng vì tinyLiDAR chạy nguyên bản từ + 3.3v, nên không cần bất kỳ điện trở nào để giao tiếp với pi:)

Bước 3: Mã hóa nó

Mã hóa nó
Mã hóa nó
Mã hóa nó
Mã hóa nó

Vậy thì, chính xác thì mã chúng ta cần để tinyLiDAR hoạt động trong Scratch là gì?

Rất vui vì bạn đã hỏi!

Nó chỉ là vấn đề kéo một vài khối phát sóng đơn giản như trong hình trên.

Để kích hoạt các chân GPIO, chúng ta có thể sử dụng "broadcast gpioserveron" Sau đó, để cấu hình chân kích hoạt, chúng ta sử dụng "broadcast config16out" Tiếp theo, chúng ta có thể cấu hình chân echo bằng "broadcast config26in" và sau đó bắt đầu các phép đo bằng "broadcast ultrasonictrigger16echo26". Điều này sẽ làm cho các phép đo được thực hiện liên tục ở một nhịp 140ms. Bạn có thể đọc dữ liệu đo bằng cách sử dụng khối cảm biến "giá trị cảm biến khoảng cách siêu âm".

Vậy là xong rồi, cảm ơn bạn đã đọc và nhớ xem chương trình demo Scratch nhỏ vui nhộn (được chia sẻ ở đây) mà chúng tôi đã thực hiện có tên "tinyLiDAR_catch_me" và… Scratch On!;)

Đề xuất: