CHƯƠNG 1 XÁC ĐỊNH MỤC TIÊU Mục tiêu: nghiên cứu, thử nghiệm giải thuật; xây dựng mô hình mobile robot đơn giản ứng dụng thị giác máy tính có thể: - Phát hiện nho. - Phân loại nho sống hoặc nho chín. - Thu hoạch nho. Phạm vi đề tài, phương hướng thực nghiệm Với đồ án này, nhóm không đặt nặng việc thiết kế chế tạo cơ khí mà tập trung chủ yếu vào các giải thuật cho robot nên robot sẽ được thiết kế và thực nghiệm trong môi trường phòng lab.
Nhóm sẽ bố trí robot cách líp nho 0.3m và chiều cao nho cách mặt đất trung bình 0. Nhóm tiến hành thưc nghiệm tương tự mô hình sau: Hình 1. 1 Phương hướng thực nghiệm ( Nguồn: https://www.com/watch?v=ssWetc3PHkY ) 1 CHƯƠNG 2 TỔNG QUAN 2.1 Các nghiên cứu, sản phẩm đã có 2.1 Design and test of robotic harvesting system for cherry tomato Dự án argbot [10] là một hệ thống rebot thu hoạch cà chua bi. Robot bao gồm một stereo camera, bộ phận công tác cuối, cánh tay máy, giỏ đựng cà chua và đường.
Với cấu hình như trên, stereo camera cho phép robot phát hiện được cà chua trên cây, có thể nhận biết được cà chua sống hay chín để thu hoạch. Bộ phận công tác cuối để giữ vàtách cà chua khỏi cuốn. Thêm vào đó, robot có thể di chuyển trong vườn nho với quỹ đạo đã được định sẵn với các thanh ray. 1 Bản vẽ phác thảo của robot ( Nguồn: http://ldp.to/tomato_harvesting_robot ) 2 Hình 2.
2 Bản mẫu của robot ( Nguồn: http://ldp.to/tomato_harvesting_robot ) Ưu điểm: - Robot có thể tự động di chuyển trên đường ray, xác định và định vị chùm chín và thu hoạch. Nhược điểm: - Hiệu suất thu hoạch robot còn thấp chưa phù hợp cho thương mại. - Tỉ lệ robot thu hoạch thành công chỉ 83%.2 Vineyard Terrestrial Robot for Multiple Applications as Part of the Innovationof Process and Product. Robot [11] có thể theo dõi được sức khỏe của cây trồng, xác định đường đi trong vườnnho và phân phối các chất dinh dưỡng vi lượng cho nho.
3 Bản mẫu của robot ( Nguồn: http://ldp.to/Vineyard_Terrestrial_Robot ) 3 Ưu điểm: - Tiết kiệm được vật tư và chi phí lao động. - Ước tính giảm tới 30% lượng thuốc và tiết kiệm 120 lít/ha so với quy trình thủ công. Nhược điểm: - Robot không di chuyển được nhanh và linh hoạt quanh khu vườn.3 A Reliable Robot for Steep Slope Vineyards Monitoring. Robot [12] có thể tự hành và điều hướng, thực hiện các nhiệm vụ giám sát và thu hoạch ở những vườn nho có độ dốc lớn.
Robot có thể thực hiện công việc ở các điều kiện ánh sáng khác nhau như ban đêm hoặc ban ngày. 4 Bản mẫu của robot ( Nguồn: http://ldp.to/Slope_Vineyards_Monitoring ) Ưu điểm: - Tiết kiệm được vật tư và chi phí lao động. - Robot có thể thu thập và xử lý dữ liệu trang trại theo cách sao cho các kết quả được sắp xếp để đưa giải pháp cho từng trang trại. Nhược điểm: - Tuy nhiên, để tận dụng tối đa lợi thế từ Nông nghiệp 5.0, cần phải đào tạo sâu cho người sử dụng.4 A Robot System for Pruning Grape Vines.
[13] là một robot tự hành được thiết kế để tự động cắt tỉa cành nho, dùng hệ thống “stereo-vision” để trích xuất mô hình không gian ba chiều (3D) của cây nho và một cánh tay robot với nhiệm vụ cắt tỉa. 5 Bản mẫu của robot ( Nguồn: http://ldp.to/Pruning_Grape_Vines ) Ưu điểm: - Tiết kiệm được chi phí lao động. - Robot có thể làm việc cả ngày lẫn đêm để cắt tỉa tới 600 cây nho mỗi ngày. Nhược điểm: - Giá thành robot cao mức giá 25.
VineRobot [14] là một robot tự hành trong vườn nho, được lắp các cảm biến cần thiết để có thể di chuyển theo lối đi, kiểm tra theo dõi sức khỏe, độ ẩm, sự phát triển của nho,đánh giá điều kiện dinh dưỡng và năng suất của cây. Tất cả những thông tin này được gửi đến màn hình điện thoại hoặc máy tính bảng của người nông dân theo thời gian thực. Từ đó nông dân có thể chủ động trong việc chăm sóc cây trồng. 5 Một số hình ảnh về VineRobot Hình 2.
6 Cách thức hoạt động và tính năng của VineRobot ( Nguồn: http://ldp.to/vine_robot ) Hình 2. 7 Bản mẫu của VineRobot ( Nguồn: http://ldp.to/vine_robot ) Ưu điểm: - Robot có khả năng kiểm tra thành phần của nho và đo độ ẩm, theo dõi sự phát triển sinh dưỡng và đánh giá năng suất. - Robot có khả năng ghi nhận những nơi nho có độ chín tốt. - Tiết kiệm đáng kể thời gian và độ chính xác cao hơn cho việc giám sát nho.
Nhược điểm: - Giá thành cao.1 Phần cứng - Thiết kế phần cứng và gia công cơ khí. - Thực nghiệm dựa trên phần cứng đã thiết kế.2 Phần mềm - Tìm hiểu về máy tính nhúng (Raspberry Pi, Jetson Nano, …). - Tìm hiểu và sử dụng hệ điều hành ROS để xây dựng robot. - Tìm hiểu cấu trúc của mạng CNN và áp dụng cho bài toán object detection.
- Tìm hiểu, sử dụng stereo camera để dự đoán chiều sâu của vật thể, kết hợp với model CNN để xác định vị trí của nho trong không gian ba chiều. Từ đó, điều khiển cánh tayrobot gắp và thu hoạch nho. 7 CHƯƠNG 3 LỰA CHỌN PHƯƠNG ÁN 3.1 Máy tính nhúng Máy tính nhúng (Embedded Computer) là một thiết bị, một hệ thống được thiết kế để phục vụ cho một yêu cầu, một bài toán, ứng dụng, một chức năng nhất định nào đó và được ứng dụng nhiều trong lĩnh vực công nghiệp, tự động hóa điều khiển, quan trắc và truyền tin… Máy tính nhúng sử dụng trong công nghiệp còn được gọi với tên khác là máy tính công nghiệp.1 Rasberry Pi CPU ARM Cortex-A53, 1.4GHz quad core GPU Broadcom VideoCore IV RAM 1GB DDR2 Nối mạng Wifi, BLE 4.1, Ethernet 1 Gigabit Cổng kết nối 4xUSB, HDMI, Camera connector Pins 40-Pin GPIO Giá $35 Hình 3. 1 Thiết bị Rasberry Pi Bảng 3.
1 Thông số Raspberry Pi ( Nguồn: https://www.2 Jetson Nano CPU ARM Cortex-A57, MP Core, 1.43GHz quad core GPU Nvidia Maxwell 128-core CUDA RAM 4GB DDR4 25.6 GB/s Nối mạng Gigabit Ethernet, M.2 Key E Cổng kết nối 4xUSB 3.0, HDMI, DisplayPort, Camera connector, M.2 Pins 40-Pin GPIO Hình 3. 2 Thiết bị JetsonNano Giá $99 Bảng 3. 2 Thông số Jetson Nano ( Nguồn: https://www.com/ ) 8 Từ so sánh trên, Jetson Nano là lựa chọn tốt và tối ưu hơn cả trong các tác vụ xử lý đồ họa, đặc biệt là chạy các mô hình deep learning. Cấu hình phần cứng và các gói hỗ trợ trên Jetson Nano là tốt hơn rất nhiều so với Rasberry Pi.
Vì vậy, nhóm sẽ sử dụng Jetson Nano.2 Phương pháp điều khiển Robot 3DOF Điều khiển Robot có các phương pháp như sử dụng ROS, tính toán động học robot. Nhóm lựa chọn ROS để thực hiện việc điều khiển robot. ROS (Robot Operating System) là một hệ thống phần mềm mã nguồn mở được sử dụng để điều khiển robot. Với ROS, người dùng có thể điều khiển robot trong nhiều môi trường khác nhau, từ robot di động đơn giản cho đến robot công nghiệp phức tạp.
ROS có nhiều tính năng hữu ích cho việc điều khiển robot. Đầu tiên, nó cung cấp một loạt các gói phần mềm được xây dựng sẵn để hỗ trợ việc lập trình robot, bao gồm các gói liên quan đến điều khiển chuyển động, cảm biến và truyền thông. Thứ hai, ROS cung cấp một môi trường mô phỏng linh hoạt để kiểm tra các ứng dụng của robot trước khi triển khai thực tế. Cuối cùng, ROS có khả năng tích hợp với nhiều loại robot khác nhau, từ robot nhỏ nhắn cho đến robot công nghiệp lớn.
Việc sử dụng ROS để điều khiển robot đang trở thành một xu hướng phổ biến trong cộng đồng robot. Với cộng đồng lập trình viên đông đảo, ROS đã trở thành một nền tảng phát triển robot đáng tin cậy và mở rộng. Điều khiển robot sử dụng ROS có nhiều lợi ích so với các phương pháp điều khiển khác, bao gồm: 1. Tính mở rộng: ROS là một hệ thống phần mềm mở rộng, có khả năng tích hợp với nhiều loại robot khác nhau, từ robot nhỏ đến robot công nghiệp lớn.
Việc tích hợp các thiết bị và phần mềm mới vào ROS rất dễ dàng, giúp cho người dùng có thể mở rộng và phát triển ứng dụng điều khiển robot dễ dàng hơn. Tính linh hoạt: ROS cung cấp một môi trường lập trình linh hoạt và dễ dàng sử dụng. Với ROS, người dùng có thể lập trình và kiểm tra các ứng dụng robot trên 9 các môi trường mô phỏng trước khi triển khai thực tế. Điều này giúp giảm thiểu rủi ro và chi phí cho việc phát triển robot.
Độ chính xác cao: ROS được thiết kế để đảm bảo tính chính xác cao trong việc điều khiển robot. Với các tính năng điều khiển chuyển động, cảm biến và truyền thông được tích hợp sẵn, ROS giúp giảm thiểu sai số trong quá trình điều khiển robot. Tuy nhiên, cũng có một số hạn chế của việc sử dụng ROS để điều khiển robot. Đầu tiên, ROS đòi hỏi người dùng có một số kiến thức về lập trình để có thể sử dụng và triển khai các ứng dụng robot.
Thứ hai, việc tích hợp ROS với các thiết bị và phần mềm mới có thể đòi hỏi thời gian và kỹ năng kỹ thuật. Tóm lại, ROS là một lựa chọn tốt cho việc điều khiển robot, đặc biệt là khi bạn muốn mở rộng và phát triển ứng dụng robot của mình.1 Giới thiệu chung ROS Robot operating system (ROS) là một hệ thống phần mềm có tính linh hoạt và chuyên dụng cao dùng để lập trình và điều khiển robot. ROS bao gồm các thư viện, công cụ hỗtrợ lập trình, công cụ đồ họa, các công cụ hỗ trợ giao tiếp điều khiển trực tiếp với phần cứng cũng như các thư viện hỗ trợ việc lấy dữ liệu từ các cảm biến và các thuật toán phổ biến trong lập trình điều khiển robot. Về cơ bản, ROS có những đặc tính thiết yếu của một hệ điều hành như khả năng thực hiện các tác vụ (task) song song, giao tiếp, trao đổi dữ liệu với nhau giữa các tác vụ, quản lý dữ liệu,…ROS còn được phát triển riêng biệt về các thư viện, công cụ hỗ trợ việc vẽ đồ thị, lưu dữ liệu, hiển thị model 3D của robot,… ROS được phát triển dưới dạng module.
Từ đó, để nghiên cứu có thể chỉ chuyên sâu vào một lĩnh vực như vẽ bản đồ hay định vị robot vẫn có thể xây dựng một hệ thống robot hoàn chỉnh khi tái sử dụng những module đã được phát triển trước đó.2 Cấu trúc của ROS 3.1 Cấu trúc mô hình ROS được phân thành ba cấp: - Cấp thứ nhất là Filesystem: giải thích về các dạng hình thức bên trong, cấu trúc thư mục và các tập tin tối thiểu để ROS hoạt động.