Mục lục:

Máy quét laser Raspberry Pi: 9 bước (có hình ảnh)
Máy quét laser Raspberry Pi: 9 bước (có hình ảnh)

Video: Máy quét laser Raspberry Pi: 9 bước (có hình ảnh)

Video: Máy quét laser Raspberry Pi: 9 bước (có hình ảnh)
Video: DIY Scanning Laser Microscope 2024, Tháng bảy
Anonim
Image
Image
Máy quét Laser Raspberry Pi
Máy quét Laser Raspberry Pi

Máy quét Laser là một thiết bị hệ thống nhúng Raspberry Pi có thể số hóa các đối tượng thành các tệp lưới.obj để tái tạo bằng cách sử dụng in 3D. Thiết bị thực hiện điều này bằng cách sử dụng tia laser vạch và PiCam tích hợp để thực hiện thị giác máy tính. Tia laser được đặt lệch 45 độ so với tia laser và chiếu một đường màu đỏ tươi lên một lát dọc của vật thể. Máy ảnh phát hiện khoảng cách của lát từ tâm để đưa ra lát lưới. Đối tượng được quay trên khay quay và quá trình này được lặp lại cho đến khi toàn bộ đối tượng được quét. Tệp.obj được tạo cuối cùng cũng được gửi qua email cho người dùng, làm cho hệ thống hoàn toàn độc lập và được nhúng.

Có thể hướng dẫn này sẽ hướng dẫn cách thiết bị được tạo ra, một số kết quả và các bước trong tương lai.

Bước 1: Truyền cảm hứng

Nguồn cảm hứng
Nguồn cảm hứng
Nguồn cảm hứng
Nguồn cảm hứng

Là một người đam mê sản xuất, tôi đã in 3D và tạo mô hình rắn được vài năm. Tôi đã làm việc với rất nhiều công cụ tạo mẫu khác nhau từ bộ định tuyến CNC đến máy cắt laser đến máy in 3D. Một thiết bị mà không gian sản xuất địa phương của tôi vẫn chưa mua là máy quét 3D - và tôi có thể cho bạn biết lý do tại sao.

Những cái rẻ hơn (vài trăm đô la) không đáng tin cậy, yêu cầu điều kiện hoàn hảo và vẫn tạo ra kết quả khá tồi tệ. Những chiếc đắt tiền thì… tốt, đắt tiền, lên đến vài nghìn đô la, khiến chức năng của nó trong nhiều trường hợp không có giá trị. Trên hết, tôi chọn thực hiện các phép đo và thiết kế một mô hình từ đầu thay vì xử lý lưới bề mặt được tạo ra từ quá trình quét.

Vì lý do này, tôi muốn xây dựng một máy quét độc lập giá rẻ để xem tôi có thể quét một đối tượng tốt như thế nào khi sử dụng các thành phần trên kệ.

Sau khi thực hiện một số nghiên cứu, tôi thấy rằng nhiều máy quét 3D đã sử dụng một nền tảng xoay và sau đó là một loạt các cảm biến khác nhau để đo khoảng cách từ trung tâm nhằm xây dựng một mô hình quay. Nhiều người trong số này đã sử dụng camera kép tương tự như của Kinect. Cuối cùng tôi tình cờ gặp Yscanner, một máy quét có độ phân giải thấp sử dụng tia laser. Nhìn vào tính đơn giản và tính khả thi, kỹ thuật laser này, trong đó tia laser được chiếu sáng bù so với máy ảnh để đo khoảng cách từ trung tâm, trông giống như một con đường rõ ràng về phía trước.

Bước 2: Công cụ và bộ phận

Các bộ phận:

  • Raspberry Pi $ 35,00
  • Máy ảnh Raspberry Pi V2 $ 30,00
  • Đèn LED, Điện trở và Dây điện
  • Dây tóc in 3D
  • 12x12x0.125 tấm gỗ
  • Phần cứng M3
  • Động cơ bước - $ 14
  • Laser dòng - $ 8
  • Trình điều khiển động cơ bước LN298 - $ 2,65
  • Nút bấm kim loại - $ 5

Công cụ:

  • Hàn sắt
  • Máy cắt laser
  • máy in 3D
  • Cái vặn vít
  • Kìm

Bước 3: Thiết kế cấp cao

Thiết kế cấp cao
Thiết kế cấp cao
Thiết kế cấp cao
Thiết kế cấp cao

Thành phần trung tâm trong thiết kế này là tia laser chiếu lên một lát dọc của các vật thể. Phép chiếu này có thể được chụp trên picamera, có hiệu chỉnh phối cảnh và sau đó được lọc trước khi xử lý hình ảnh. Trong xử lý ảnh, có thể thu thập khoảng cách giữa từng đoạn của đường thẳng từ tâm của đối tượng. Trong tọa độ xuyên tâm, hình ảnh này sẽ mang lại cả thành phần r và z. Sau đó, kích thước thứ ba, Θ, đạt được bằng cách xoay đối tượng sang một lát cắt mới. Khái niệm này được thể hiện trong hình đầu tiên.

Để thực hiện các hành động được mô tả ở trên, tôi đã sử dụng Raspberry Pi làm đơn vị tính toán trung tâm của chúng tôi. Tôi đã gắn động cơ bước và trình điều khiển động cơ vào Pi, được cấp nguồn bởi nguồn 5V bên ngoài và được điều khiển bởi các chân GPIO của Pi. Một tia laser vạch được đặt trên đường 3,3 V trên Pi và một PiCam được gắn vào đầu vào máy ảnh trên Pi. Cuối cùng, một nút kéo xuống đơn giản đã được cài đặt và một đèn LED trạng thái để cho người dùng biết hệ thống đang ở trạng thái nào. Toàn bộ hệ thống được tóm tắt trong sơ đồ khối hệ thống.

Ngay từ đầu, nó đã được lên kế hoạch đặt các thiết bị điện tử trong một hộp cắt laser được giữ cùng với các khe cắm T và phần cứng M3. Các thiết bị điện tử sẽ được giấu khỏi tầm nhìn trong một ngăn dưới cùng và một nắp sẽ cho phép dễ dàng tiếp cận vị trí đặt vật trên khay xoay. Nắp này là cần thiết để giảm thiểu lượng ánh sáng lọt vào hệ thống, vì ánh sáng bên ngoài này có thể tạo ra tiếng ồn trong lần quét cuối cùng.

Bước 4: Phần cứng

Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng

Như đã thấy ở trên, trước khi bắt đầu cắt laser hoặc in 3D, tôi đã sử dụng Autodesk Fusion 360 để tạo mô hình 3D chi tiết cho thiết kế của chúng tôi. Nhìn tổng quan, thiết bị là một chiếc hộp đơn giản với nắp đậy có bản lề cắt laser. Có hai lớp chính của thiết bị: lớp điện tử và lớp chính, có lỗ để dây dẫn chạy giữa hai lớp.

Phần lớn hộp của chúng tôi được sản xuất bằng máy cắt laser, với các thiết kế được sản xuất bằng Fusion 360 và được cắt trên máy cắt laser Epilog Zing 40 W. Thiết kế của chúng tôi được hiển thị trong các hình trên. Từ trên cùng bên trái di chuyển sang phải, các miếng là giường chính, giường điện tử, hai miếng cho nắp, miếng sau, miếng trước và hai miếng bên. Trong giường chính, có ba lỗ chính: một để gắn động cơ bước, một để định tuyến dây dẫn từ tia laser và một để định tuyến cáp rộng của PiCam. Phần giường có các lỗ gắn để cố định Pi, breadboard và trình điều khiển động cơ và một phần cắt lớn hơn để tiếp cận động cơ bước. Các miếng nắp bắt vào nhau đơn giản để tạo thành miếng hình tam giác được nhìn thấy ở trên và bản lề là một đùn đơn giản có chiều rộng bằng đường kính của lỗ của bảng bên. Mặt sau và một trong các miếng bên có các khe ở bên cạnh để các cổng của Pi (HDMI, USB, Ethernet, Nguồn) có thể được truy cập dễ dàng. Mặt trước là một phần đơn giản mà cuối cùng tôi đã tạo lỗ bằng máy khoan cầm tay để gắn nút và đèn LED. Đây là phương pháp giữ các miếng cắt bằng laser một cách trực giao và an toàn. Vây của các miếng thẳng hàng với các khe của các miếng khác và vết cắt hình chữ t trên các cạnh tạo khoảng trống cho đai ốc M3 bị kẹt vào chúng mà không quay. Điều này cho phép chúng tôi sau đó sử dụng vít M3 để khóa các mảnh lại với nhau với rất ít chỗ lung lay mà không cần lắp ráp hoàn toàn cố định.

Tôi đã chọn làm phần lớn các tác phẩm của chúng tôi bằng máy cắt laser do tốc độ và sự dễ dàng của nó. Tuy nhiên, tôi vẫn phải in 3D một số mảnh do hình dạng 3D của chúng sẽ khó tạo hơn trên máy cắt. Bộ phận đầu tiên là giá đỡ tia laser. Phần này sẽ được gắn trên giường chính ở góc 45 độ so với tầm nhìn của máy ảnh và có một lỗ để tia laser có thể ma sát vừa khít vào nó. Tôi cũng phải tạo một giá đỡ động cơ vì trục của động cơ quá dài. Ma sát của ngàm phù hợp với các mảnh cắt bằng laser và hạ thấp mặt phẳng mà động cơ được gắn vào sao cho bệ quay ngang bằng với giường chính.

Bước 5: Điện tử

Thiết bị điện tử
Thiết bị điện tử

Phần cứng đi dây của dự án này rất đơn giản vì máy quét 3D không yêu cầu quá nhiều thiết bị ngoại vi. Cần có động cơ, nút bấm, đèn LED, tia laser và máy ảnh để kết nối với Pi. Như được hiển thị, tôi đã đảm bảo kết nối các điện trở nối tiếp với mỗi chân mà chúng tôi đã sử dụng để bảo vệ các chân. Một chân GPIO dành riêng để điều khiển đèn LED trạng thái, đèn LED này sẽ sáng khi thiết bị sẵn sàng được sử dụng và xung với PWM khi thiết bị đang hoạt động. Một chân GPIO khác được kết nối với một nút kéo lên, đăng ký CAO khi không nhấn nút và THẤP khi nhấn nút. Cuối cùng, tôi dành riêng bốn chân GPIO để điều khiển động cơ bước.

Vì động cơ của chúng tôi chỉ phải bước đến một mức độ nhất định mà không yêu cầu kiểm soát tốc độ, nên chúng tôi đã chọn trình điều khiển động cơ bước đơn giản hơn (L298N) chỉ cần bước lên các đường điều khiển để đưa vào đầu vào của động cơ. Để tìm hiểu về cách vận hành động cơ bước ở mức rất thấp, chúng tôi đã tham khảo cả bảng dữ liệu L298N và thư viện Arduino. Động cơ bước có lõi từ tính với các ngón tay nhô ra của các cực xen kẽ. Bốn dây được quấn để điều khiển hai nam châm điện, mỗi nam châm này cung cấp năng lượng cho các ngón tay đối nghịch nhau trong động cơ. Do đó, bằng cách chuyển đổi cực của các ngón tay, chúng ta có thể đẩy bước lên một bước. Với kiến thức này về cách các bước hoạt động từ cấp độ phần cứng, chúng tôi có thể kiểm soát các bước dễ dàng hơn nhiều. Chúng tôi đã chọn cấp nguồn động cơ bước của mình từ nguồn điện 5V trong phòng thí nghiệm thay vì Pi vì dòng điện tối đa của nó là khoảng 0,8 A, nhiều hơn mức mà Pi có thể cung cấp.

Bước 6: Phần mềm

Phần mềm
Phần mềm
Phần mềm
Phần mềm
Phần mềm
Phần mềm
Phần mềm
Phần mềm

Phần mềm cho dự án này có thể được chia thành bốn thành phần chính tương tác với nhau: Xử lý hình ảnh, Điều khiển động cơ, Tạo lưới và Chức năng nhúng.

Như một bản tóm tắt về phần mềm, chúng ta có thể nhìn vào hình đầu tiên. Khi hệ thống khởi động,.bashrc tự động đăng nhập vào Pi và bắt đầu chạy mã python của chúng tôi. Hệ thống sẽ sáng đèn trạng thái để người dùng biết rằng nó đã được khởi động chính xác và chờ nhấn nút. Sau đó, người dùng có thể đặt mục cần quét và đóng nắp. Sau khi nhấn nút, đèn LED phát xung để cho người dùng biết thiết bị đang hoạt động. Thiết bị sẽ lặp lại giữa xử lý hình ảnh và điều khiển động cơ cho đến khi hoàn tất quá trình quay và tất cả dữ liệu đối tượng được thu thập. Cuối cùng, lưới được tạo và tệp được gửi qua email đến một email đã chọn trước. Thao tác này sẽ khởi động lại chu trình và máy đã sẵn sàng thực hiện một quá trình quét khác chỉ bằng một nút bấm.

Đang xử lý hình ảnh

Điều đầu tiên được thực hiện là xử lý một hình ảnh đã chụp để trích xuất thông tin được lưu trữ trong hình ảnh thành một dạng có thể được sử dụng để tạo một mảng các điểm trong không gian. Để làm điều này, tôi bắt đầu bằng cách chụp ảnh đối tượng trên nền tảng cùng với tất cả nhiễu nền được tạo ra bởi tia laser chiếu vào mặt sau của hộp và phân tán. Bức tranh này có hai vấn đề chính ở dạng thô. Đầu tiên, đối tượng được nhìn ở một góc có phối cảnh trên cao và thứ hai, có rất nhiều tiếng ồn xung quanh. Điều đầu tiên tôi cần làm là tính đến góc xem này vì việc sử dụng ảnh như vậy sẽ không cho phép chúng tôi xác định chiều cao đối tượng nhất quán. Như đã thấy trong hình thứ hai, chiều cao của hình chữ “L” lộn ngược là nhất quán; tuy nhiên do một bên dài hơn bên kia nên chúng dường như có chiều cao khác nhau ở cạnh gần nhất với người xem.

Để khắc phục điều này, tôi phải biến đổi không gian làm việc trong hình ảnh thành một hình chữ nhật từ hình thang mà nó đã có trước đó. Để thực hiện việc này, tôi đã sử dụng mã được cung cấp bởi liên kết này, mã này khi được cung cấp một hình ảnh và bốn điểm, cắt hình ảnh giữa bốn điểm và biến đổi hình ảnh đã cắt để bù cho phối cảnh. Phép biến đổi này sử dụng bốn điểm để tạo ra một hình chữ nhật thay vì một hình dạng hình thang như trong hình thứ ba.

Vấn đề tiếp theo cần được giải quyết là nhiễu xung quanh dưới dạng ánh sáng bên ngoài và ánh sáng bị phản xạ bởi chính tia laser. Để làm điều này, tôi đã lọc ánh sáng bằng cách sử dụng hàm inRange () của OpenCV. Tôi đặt ngưỡng chỉ được vượt đèn đỏ ở một mức nhất định. Để có được giá trị chính xác, tôi bắt đầu với một ngưỡng khoan dung và tiếp tục tăng mức ngưỡng cho đến khi ánh sáng duy nhất được nhận là ánh sáng laser trên vật thể được quét. lấy một dòng một pixel trên mỗi hàng giáp với phía bên trái nhất của đường laser. Mỗi pixel sau đó được chuyển đổi thành một đỉnh trong không gian 3D và được lưu trữ trong một mảng, như được mô tả trong phần tạo lưới. Kết quả của các bước này có thể được nhìn thấy trong hình thứ tư.

Điều khiển động cơ

Sau khi có thể xử lý thành công một hình ảnh duy nhất để có được lát cắt của đối tượng, tôi cần có khả năng xoay đối tượng để chụp một bức ảnh mới với một góc khác. Để làm điều này, tôi đã điều khiển động cơ bước bên dưới nền tảng mà đối tượng được quét nằm trên đó. Tôi đã xây dựng nền tảng của chức năng bước của chúng tôi bằng cách tạo một biến để theo dõi trạng thái của động cơ và bước vi mô bằng cách chuyển đổi từng đầu vào trong số bốn đầu vào động cơ.

Mesh Creation Để tạo lưới từ tất cả các hình ảnh đã xử lý, trước tiên tôi phải chuyển đổi từng pixel màu trắng trong hình ảnh đã xử lý thành một đỉnh trong không gian 3D. Bởi vì tôi đang thu thập các lát cắt riêng lẻ của vật thể có đối xứng hình trụ, nên bắt đầu thu thập các tọa độ hình trụ là rất hợp lý. Điều này có ý nghĩa vì chiều cao của hình ảnh có thể đại diện cho trục z, khoảng cách từ tâm của bàn quay có thể đại diện cho trục R và chuyển động quay của động cơ bước có thể đại diện cho trụcta. Tuy nhiên, vì tôi đã lưu trữ dữ liệu của mình ở dạng tọa độ trụ, nên tôi phải chuyển đổi từng đỉnh này thành tọa độ Cartesian.

Khi các đỉnh này được tạo, chúng được lưu trữ trong một danh sách và danh sách đã nói được lưu trữ trong một danh sách khác có chứa danh sách đỉnh được tạo cho mỗi hình ảnh được chụp. Khi tất cả các hình ảnh đã được xử lý và chuyển đổi thành các đỉnh, tôi phải chọn các đỉnh mà tôi thực sự muốn được thể hiện trong lưới cuối cùng. Tôi muốn đỉnh trên cùng và đỉnh dưới cùng được bao gồm và sau đó dựa trên độ phân giải, tôi chọn một số đỉnh cách đều nhau để sử dụng cho mỗi hình ảnh. Bởi vì không phải tất cả các danh sách đỉnh đều có cùng độ dài, tôi phải chia đều chúng bằng cách tìm danh sách có số đỉnh nhỏ nhất và loại bỏ các đỉnh khỏi tất cả các danh sách khác cho đến khi tất cả chúng đều. tạo lưới. Tôi đã chọn định dạng lưới của chúng tôi theo tiêu chuẩn tệp.obj vì nó đơn giản và có thể in 3D.

Chức năng nhúng

Sau khi thiết bị hoạt động, tôi đã đánh bóng nó bằng cách thêm chức năng nhúng đầy đủ. Điều này có nghĩa là xóa bàn phím, chuột và màn hình và yêu cầu nó gửi không dây tệp.obj cho chúng tôi sau khi xử lý xong. Để bắt đầu, tôi đã thay đổi mã.bashrc để tự động đăng nhập và khởi chạy chương trình python chính khi khởi động. Điều này được thực hiện bằng cách sử dụng sudo raspi-config và chọn “Console Autologin” và bằng cách thêm dòng “sudo python /home/pi/finalProject/FINAL.py” vào /home/pi/.bashrc. Ngoài ra, tôi cũng đã thêm một nút và đèn LED trạng thái cho đầu vào và đầu ra của người dùng. Nút này sẽ cho phép người dùng cho thiết bị biết khi nào bắt đầu quét và đèn LED sẽ cho người dùng biết trạng thái của máy. Nếu đèn LED bật sáng, thiết bị đã sẵn sàng để bắt đầu một quá trình quét mới. Nếu đèn LED đang phát sáng, thiết bị hiện đang quét. Nếu đèn LED văn phòng, có lỗi phần mềm, đang kêu gọi khởi động lại hệ thống. Cuối cùng, tôi đã cho phép thiết bị gửi tệp.obj qua email. Điều này được thực hiện bằng cách sử dụng thư viện smtplib và email. Khả năng gửi email này đã mang lại cho chúng tôi một cách rất thuận tiện và không dây để cung cấp tệp đã sản xuất cho người dùng để truy cập trên nhiều nền tảng khác nhau.

Bước 7: Tích hợp

Hội nhập
Hội nhập

Sau khi sản xuất các phần khác nhau của thiết bị, tôi đã lắp ráp chúng lại với nhau. Hình trên cho thấy theo thứ tự:

(a) hộp lắp ráp bên ngoài

(b) hộp lắp ráp bên trong có máy ảnh và tia laser

(c) tầm nhìn bên trong của giường điện tử

(d) mặt sau của Pi với quyền truy cập vào các cổng Pi và đầu vào động cơ 5V

(e) nút nhấn với vòng LED và đèn trạng thái ở phía trước thiết bị

Bước 8: Kết quả

Kết quả
Kết quả
Kết quả
Kết quả
Kết quả
Kết quả
Kết quả
Kết quả

Máy quét 3D laser có thể quét các vật thể với độ chính xác khá. Các đặc điểm của đối tượng là khác biệt và dễ nhận biết và các bộ phận rất dễ in 3D bằng phần mềm cắt như Repetier. Các hình trên cho thấy một số bản quét mẫu của một miếng gỗ và một con vịt cao su.

Một trong những phát hiện và thành công lớn nhất của chúng tôi mà tôi phát hiện ra trong quá trình thử nghiệm là tính nhất quán của thiết bị. Trong suốt nhiều lần thử nghiệm cùng một đối tượng, máy quét có thể tạo ra một tệp.obj rất giống nhau mỗi lần, ngay cả khi chúng tôi thay đổi một chút vị trí của đối tượng. Như đã thấy trong ba lần quét riêng biệt, tất cả chúng trông rất giống nhau, chụp cùng một chi tiết và cùng một lượng chi tiết. Nhìn chung, tôi rất ấn tượng với tính nhất quán và mạnh mẽ của hệ thống của chúng tôi.

Một trong những biến mà tôi thực sự có thể điều chỉnh là độ phân giải của các lần quét. Vì có 400 bước trong bước, tôi có thể chọn độ lớn của mỗi ΔΘ để chỉ định độ phân giải góc. Theo mặc định, tôi đặt độ phân giải góc là 20 lần lặp, nghĩa là mỗi khung hình, động cơ quay 20 bước (400/20 = 20). Điều này được chọn chủ yếu vì quan tâm đến thời gian - mất khoảng 45 giây để hoàn thành quá trình quét theo cách này. Tuy nhiên, nếu tôi muốn quét chất lượng cao hơn nhiều, tôi có thể tăng số lần lặp lên đến 400. Điều này mang lại nhiều điểm hơn để xây dựng mô hình, giúp cho quá trình quét chi tiết hơn nhiều. Ngoài độ phân giải góc, tôi cũng có thể điều chỉnh độ phân giải dọc, hoặc bao nhiêu điểm khác nhau tôi chọn để thăm dò dọc theo lát laser. Đối với sở thích tương tự về thời gian, tôi đặt mặc định này thành 20 nhưng tôi có thể tăng nó để có kết quả tốt hơn. Khi chơi với các thông số này về độ phân giải góc và độ phân giải không gian, tôi đã có thể biên dịch các kết quả của các lần quét khác nhau dưới đây trong hình cuối cùng. Mỗi nhãn được định dạng sao cho nó là độ phân giải góc x độ phân giải không gian. Như đã thấy trong cài đặt quét mặc định, các đặc điểm của vịt có thể nhận biết được nhưng không chi tiết. Tuy nhiên, khi tôi tăng độ phân giải, các đặc điểm chính xác riêng lẻ bắt đầu hiển thị, bao gồm mắt, mỏ, đuôi và cánh trên con vịt. Hình ảnh có độ phân giải cao nhất mất khoảng 5 phút để quét. Nhìn thấy độ phân giải cao có thể đạt được này là một thành công rất lớn.

Hạn chế

Mặc dù kết quả thành công của dự án, vẫn còn một số hạn chế trong thiết kế và thực hiện. Với việc sử dụng tia laser, có rất nhiều vấn đề về cách ánh sáng phân tán. Nhiều đối tượng mà tôi cố gắng quét trong mờ, sáng bóng hoặc rất tối đã tỏ ra rắc rối với cách ánh sáng phản chiếu ra khỏi bề mặt. Nếu vật thể trong mờ, ánh sáng sẽ bị hấp thụ và phân tán, làm cho việc đọc các lát cắt rất ồn. Trong các vật thể sáng bóng và tối, ánh sáng sẽ bị phản xạ hoặc bị hấp thụ đến mức khó nhận ra. Hơn nữa, vì tôi đang sử dụng máy ảnh để chụp các đặc điểm của vật thể nên khả năng cảm nhận của nó bị giới hạn bởi đường ngắm, nghĩa là các vật thể lõm và góc nhọn thường bị các phần khác của vật thể chặn lại. Điều này được thể hiện trong ví dụ về vịt cao su của chúng tôi vì đôi khi đuôi sẽ mất đi độ cong trong quá trình quét. Máy ảnh cũng chỉ có thể phát hiện cấu trúc bề mặt nghĩa là không thể chụp được các lỗ hoặc hình dạng bên trong. Tuy nhiên, đây là một vấn đề phổ biến mà nhiều giải pháp quét khác cũng gặp phải.

Bước tiếp theo

Mặc dù tôi rất vui với kết quả của dự án của chúng tôi, nhưng có một số điều có thể được thực hiện để làm cho nó tốt hơn. Đối với người mới bắt đầu, ở trạng thái hiện tại, độ phân giải quét chỉ có thể được thay đổi bằng cách thay đổi các biến độ phân giải được mã hóa cứng trong mã của chúng tôi. Để làm cho dự án được nhúng nhiều hơn, một chiết áp độ phân giải có thể được bao gồm để người dùng có thể thay đổi độ phân giải mà không cần phải cắm màn hình và bàn phím vào máy quét. Ngoài ra, máy quét tạo ra hình ảnh đôi khi có thể trông như răng cưa. Để khắc phục điều này, các kỹ thuật làm mịn lưới có thể được thực hiện để làm mịn các điểm bất thường và các góc khắc nghiệt. Cuối cùng, tôi thấy rằng tọa độ pixel không chia tỷ lệ tốt trong thế giới thực. Các mắt lưới tôi tạo ra lớn hơn vật thể thực từ 6 đến 7 lần. Trong tương lai, sẽ rất thuận lợi nếu thực hiện một cách chia tỷ lệ các mắt lưới để chúng chính xác hơn với kích thước thực của đối tượng.

Bước 9: Tài nguyên

Tôi đã bao gồm mã, tệp STL để in và tệp DXF để cắt cho toàn bộ dự án.

Cuộc thi Raspberry Pi 2020
Cuộc thi Raspberry Pi 2020
Cuộc thi Raspberry Pi 2020
Cuộc thi Raspberry Pi 2020

Giải nhất Cuộc thi Raspberry Pi 2020

Đề xuất: