1 bình luận

 
GN⁺ 2024-10-27
Các ý kiến trên Hacker News
  • Trước đây tôi cũng từng thấy một cách khác là thêm IMU vào cánh tay robot. Việc kết hợp hai loại cảm biến khác nhau được gọi là sensor fusion, và cách dùng IMU cùng GPS rồi gắn thêm bộ lọc Kalman để thu được giá trị vị trí rất chính xác là khá phổ biến
    Điểm đặc biệt hay trong video này là họ gắn cảm biến mới vào bên trong động cơ, nhờ đó có thể làm toàn bộ hệ thống nhỏ gọn và chắc chắn hơn nhiều
    [1] https://en.wikipedia.org/wiki/Inertial_measurement_unit
    [2] https://en.wikipedia.org/wiki/Sensor_fusion
    [3] https://en.wikipedia.org/wiki/Kalman_filter

  • Nếu bạn muốn thử làm thứ như vậy, Raspberry Pi Pico 2 mới có hiệu năng cao hơn con chip dùng ở đây vài bậc độ lớn, còn giá thì khoảng một nửa
    Hiện tại, với vai trò thiết bị nhúng ARM/RISC 32-bit nhập môn, nó có vẻ có hiệu năng/giá cực kỳ áp đảo

    • Cần lưu ý rằng theo errata số 9, phải dùng điện trở kéo xuống bên ngoài thay vì pull-down nội bộ
    • Dù giờ đã tương đối cũ, Teensy 4.1 vẫn cho hiệu năng tuyệt vời. Giá khoảng 30 USD, hơi đắt hơn một chút, nhưng chạy Cortex M7 600MHz và cung cấp khá nhiều I/O cũng như giao thức
    • Nghe hay đấy, nhưng vậy trade-off là gì?
  • Một số robot công nghiệp cỡ lớn cũng dùng encoder phụ để tăng độ chính xác “ngay khi lấy ra khỏi hộp” cho các tác vụ khó hơn
    Họ kết hợp phản hồi khớp phụ với mô hình động học của kết cấu robot và phần cơ khí để dự đoán chính xác hơn đầu công cụ thực sự của robot đang ở đâu
    https://electroimpact.com/Products/Robots/AchievingAccuracy

    • Vậy encoder chính dùng để làm gì?
  • Không thể đánh giá độ rơ chỉ bằng cách nhìn robot lặp đi lặp lại đúng cùng một cụm chuyển động. Làm vậy thì theo định nghĩa, hysteresis đã bị loại khỏi bài toán

    • Có vẻ không phải cùng một chuyển động mà? Lần di chuyển thứ hai đi theo hướng ngược lại đấy chứ
  • Hay thì hay, nhưng chẳng phải con robot đó không thật sự làm việc gì sao?
    Tôi khó hình dung việc tăng độ chính xác vị trí của một hệ thống có độ rơ lớn khi không tải sẽ dẫn tới ứng dụng hữu ích nào. Có thể chỉ là tôi thiếu trí tưởng tượng
    Dạo này có xu hướng rằng dù tạo ra hoặc mua phần cứng tệ thì phần mềm sẽ giải quyết được, nhưng tôi chưa thấy nó mang lại nhiều kết quả. Tôi nghĩ đến trường hợp Tesla dùng webcam cho tự lái, hay Boeing thiết kế máy bay rồi dùng cảm biến tư thế có lỗi
    Nếu robot làm được việc gì hữu ích thì chắc đã ấn tượng hơn nhiều, và tôi nghi ngờ khả năng áp dụng thực tế của nó sẽ khá hạn chế

    • Tôi nghĩ ví dụ Boeing bị đơn giản hóa quá mức. Mục tiêu là tạo ra một máy bay hiệu quả để cạnh tranh với Airbus, nhưng tránh chi phí và trì hoãn do chứng nhận kiểu loại mới
      Để làm vậy, họ phải gắn động cơ lớn hơn lên cùng một thân máy bay, và kết quả là động cơ phải được đặt về phía trước hơn, làm thay đổi đặc tính bay và cần huấn luyện lại. Việc huấn luyện lại sẽ cực kỳ bất lợi cho doanh số, nên họ gắn thêm một hệ thống phần mềm để khiến nó có vẻ bay giống 737 đời cũ
      Nhờ vậy phi công có thể nâng cấp chỉ bằng một khóa đào tạo trên iPad. Hệ thống hiệu chỉnh này phải khiến phi công không nhận ra vấn đề máy bay sắp thất tốc ở góc tấn lớn, vì vậy MCAS dùng cảm biến AoA để hạ mũi dựa trên góc tấn đo được
      Cảm biến AoA vốn không được thiết kế để làm đầu vào cốt lõi trực tiếp liên quan sống còn, và đôi khi bị kẹt hoặc hỏng. MCAS chỉ dùng một trong số đó làm đầu vào. Nếu MCAS nhầm rằng cần hạ mũi và phi công phản ứng theo đúng cách được huấn luyện trên 737, thì đó sẽ là chuyến bay cuối cùng của họ. Chiếc máy bay sẽ rơi
      Rốt cuộc, Boeing đã giết người để kiếm thêm tiền ở mọi bước của kế hoạch kinh khủng này. Tôi đồng ý với luận điểm ban đầu, nhưng Boeing gần như là ví dụ tệ nhất về thiết kế ác ý, nên nên được xếp riêng
    • Một ứng dụng robot cần chuyển động cực kỳ chính xác mà không cần mang tải là các hệ thống đo lường bằng robot như máy đo tọa độ: https://en.wikipedia.org/wiki/Coordinate-measuring_machine
    • Trong các video sau đó có cảnh servo nâng một quả nặng ở đầu một cánh tay dài
  • Tôi có câu hỏi cho những ai từng dùng loại đồng hồ đo analog này. Trước khi camera phóng to để đọc giá trị hiển thị, kim chỉ có vẻ quay một vòng; vậy video này có thật sự chứng minh được độ chính xác mà nó tuyên bố không?

    • Tôi chưa xem toàn bộ video, nhưng có lẽ họ cho “di chuyển x từ 0.00 đến 10.00” và đồng hồ cho thấy vị trí di chuyển cuối cùng thực ra là 10.05
      Xét việc thiết bị đó mềm oặt như vậy thì khá ấn tượng
      Tuy nhiên, để đo chuyển động theo chiều âm bằng loại đồng hồ này, cần đặt tải trước để ép nó vào trong dải “dương”. Trông có vẻ họ đã làm vậy, nhưng nếu không phân tích sâu hơn thì tôi không thể chắc chắn 100%
      Ngoài ra, bản thân đồng hồ cũng tạo ra một mức tải trước nhất định, nên có thể đã loại bỏ đáng kể độ lỏng của hệ thống và làm độ chính xác trông tốt hơn thực tế
    • Đúng vậy. Quả cầu ở đầu có bán kính cố định, và khi quả cầu đó bị đẩy đúng bằng bán kính của nó, tức điểm tiếp xúc nằm đúng trên đường tâm, kim chỉ sẽ lại về 0
      Nếu đang ở trạng thái mất tiếp xúc, điều đó gần như có nghĩa là nó đã lệch khỏi điểm đáng lẽ phải ở ít nhất 1mm
      Thông thường sẽ có kim thứ hai cho biết bạn đang ở tình huống nào trong hai tình huống này, nhưng trong bối cảnh dùng thiết bị kiểu này, nếu lệch tới 1mm thì tình hình rất rõ ràng, nên có lẽ họ cho rằng không cần
  • Một robot 3 trục có thể mua với giá 100 đô la, tức máy in 3D, làm thế nào đạt được độ chính xác tĩnh 0,05 mm?
    Đây không phải là vấn đề của lý thuyết điều khiển, mà là vấn đề về kết cấu cơ khí và động cơ bước

    • Đó là một sự đánh đổi giữa kết cấu gantry và kết cấu cánh tay
    • Đúng, nhưng nó không phải là cánh tay robot nên kém thú vị hơn. Chiều dài cánh tay sẽ khuếch đại sai số, vì vậy để tạo một cánh tay dựa trên “kết cấu cơ khí và động cơ bước” có độ chính xác vị trí như máy in, động cơ phải chính xác hơn nhiều, hoặc nếu dùng giảm tốc thì độ rơ phải cực thấp như cánh tay robot công nghiệp
    • Tôi tò mò cách tốt nhất để tái tạo một hệ thống x/y, và tùy chọn z, có độ chính xác dưới 0,05 mm là gì. Tất nhiên với điều kiện không hy sinh tốc độ
  • Tôi luôn thắc mắc vì sao khi cần độ chính xác, người ta không dùng pantograph nhiều hơn trong robot
    Đây là phương pháp được dùng cho cắt gỗ chính xác hoặc khắc gỗ/kim loại
    https://en.wikipedia.org/wiki/Pantograph
    https://youtu.be/s56J_Rnh_Co
    Nếu dẫn động phía “lớn” để di chuyển phía “nhỏ”, có thể đạt được độ chính xác cao

    • Feynman có bàn về pantograph và vấn đề độ chính xác ở trang 6–7 trong https://calteches.library.caltech.edu/1976/1/1960Bottom.pdf. Tôi chưa tự suy nghĩ sâu về chuyện này
    • Pantograph thường hữu ích trong 2 chiều, và nếu là robot chỉ cần 2 chiều thì dùng ray trượt sẽ chính xác hơn
  • Đây là một mẹo encoder thật sự xuất sắc. Tôi không nghĩ nó sẽ tốt đến mức này, nhưng qua video thì đúng là trông rất ổn

    • Điều video này cho thấy phần lớn là độ chính xác lặp lại khi lặp theo cùng một hướng, chứ không phải độ chính xác tĩnh tuyệt đối. Có thể bù độ rơ của từng động cơ, nhưng không thể bù độ lỏng hoặc độ uốn của các khâu liên kết
      Ở đây họ dùng động cơ DC. Nếu dùng servo 3 pha hiện đại, có thể biết nhiều hơn về việc động cơ thực sự đang làm gì