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
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
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ì
1 bình luận
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
https://github.com/adamb314/ServoProject/blob/main/Doc/Theor...
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
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
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
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ế
Để 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
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?
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ế
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
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
Đâ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
Ở đâ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ì