GIỚI THIỆU
Tính cấp thiết của đề tài
Xu hướng hiện đại hóa công nghiệp hóa đang diễn ra mạnh mẽ trên toàn cầu, với việc tự động hóa ngày càng được áp dụng trong hầu hết các lĩnh vực Các công ty hiện nay thường sử dụng máy móc và dây chuyền tự động để thay thế lao động tay chân, nhằm gia tăng năng suất Trong lĩnh vực lưu trữ hàng hóa, tự động hóa cũng đang được áp dụng, đặc biệt phổ biến ở các nước phát triển như châu Âu, Mỹ, Nhật Bản, và cả Trung Quốc Hệ thống lưu trữ và truy xuất tự động đang cách mạng hóa quy trình lưu kho truyền thống và thực hiện đơn đặt hàng, thay thế các kho chứa hàng truyền thống bằng robot và máy trạm Mặc dù có nhiều hệ thống kho thông minh, nhưng tại Việt Nam, ứng dụng này vẫn còn hạn chế, đặc biệt là cho hàng hóa vừa và nhỏ trong không gian hẹp Do đó, nhóm đề xuất một mô hình kho thông minh có khả năng tăng khối lượng hàng hóa lưu trữ mà không cần mở rộng diện tích, với ứng dụng cụ thể trong lĩnh vực y tế, giúp việc lưu trữ và lấy thuốc dễ dàng hơn Mô hình này sẽ sử dụng nhiều robot hoạt động đồng thời, được điều khiển bằng máy tính trung tâm để nâng cao năng suất và độ chính xác.
Ý nghĩa khoa học và thực tiễn của đề tài
Mô hình nhà kho thông minh mới được giới thiệu không chỉ làm phong phú thêm lĩnh vực logistics mà còn thúc đẩy quá trình công nghiệp hóa và hiện đại hóa đất nước.
- Mô hình này có thể là đề tài nghiên cứu và phát triển thêm sau này Ý nghĩa thực tiễn:
- Tiết kiệm và tận dụng không gian để làm kho bãi
- Tăng năng suất trong việc lưu trữ và truy xuất hàng hóa
- Giúp con người giảm đi chi phí, thời gian và công sức
- Ứng dụng được ở quy mô doanh nghiệp tư nhân vừa và nhỏ làm thúc đẩy kinh tế.
Mục tiêu nghiên cứu của đề tài
Căn cứ vào những vấn đề được đặt ra ở trên, nhóm đã quyết định đưa ra các mục tiêu chính cho đề tài như sau:
- Thiết kế, chế tạo robot có thể tự động vận hành độc lập
- Thiết kế, lập trình hệ thống điều khiển tối ưu để vận hành cũng như theo dõi vận hành của robot
- Lập trình hệ thống máy chủ tính toán các đường đi cho robot và có giao diện để nhận lệnh của người dùng
- Lập trình hệ thống theo dõi trực quan cơ sở dữ liệu theo dạng 3D.
Đối tượng và phạm vi nghiên cứu
Robot vận chuyển mang lại khả năng hoạt động linh hoạt và nhanh chóng, đồng thời sở hữu giao diện điều khiển dễ sử dụng cho người dùng Bên cạnh đó, chi phí thiết kế của robot cũng rất hợp lý.
- Khung đỡ chắc chắn và có thể dễ dàng tháo lắp
1.4.2 Phạm vi nghiên cứu Ứng dụng đề tài này trong các kho hoặc tiệm thuốc tây để lưu trữ và quản lý các loại thuốc hiệu quả hơn cũng như phục vụ khách hàng nhanh chóng hơn.
Phương pháp nghiên cứu
1.5.1 Cơ sở phương pháp luận
- Phương pháp nghiên cứu tài liệu
- Phương pháp phân tích tổng hợp
- Phương pháp thu thập thông tin, dữ liệu
1.5.2 Các phương pháp nghiên cứu cụ thể
Phương pháp nghiên cứu tài liệu từ các bài báo khoa học, bằng sáng chế và video phân tích trên Internet là cách hiệu quả để tìm kiếm và thu thập kiến thức Việc khai thác nguồn tài liệu đa dạng này giúp người nghiên cứu có cái nhìn sâu sắc hơn về chủ đề cần tìm hiểu Sử dụng các nguồn tài liệu đáng tin cậy không chỉ nâng cao chất lượng thông tin mà còn hỗ trợ trong việc phát triển ý tưởng và giải pháp mới.
Phương pháp phân tích ưu nhược điểm của từng hệ thống và phương án đã được đề xuất, sau đó tổng hợp các thành phần của robot đã được phân tích thành một tổng thể thống nhất.
- Phương pháp thực nghiệm để vận hành thử hệ thống, kiểm tra, đánh giá để có thể chỉnh sửa và hoàn thiện
Phương pháp thu thập thông tin và dữ liệu là rất quan trọng để lấy các thông số cần thiết cho việc tinh chỉnh PID từ đồ thị dữ liệu vận tốc của robot Ứng dụng này giúp cải thiện khả năng điều khiển robot một cách hiệu quả hơn.
1.6 Kết cấu của đồ án tốt nghiệp
Nội dụng báo cáo bao gồm 8 chương:
Chương 2 TỔNG QUAN NGHIÊN CỨU ĐÈ TÀI
Chương 3 CƠ SỞ LÝ THUYẾT
Chương 4 PHƯƠNG HƯỚNG VÀ GIẢI PHÁP
Chương 5 TÍNH TOÁN VÀ THIẾT KẾ CƠ KHÍ
Chương 6 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG ĐIỆN ĐIỀU KHIỂN
Chương 7 CHƯƠNG TRÌNH TÌM KIẾM ĐƯỜNG ĐI CHO ROBOT
Chương 8 KẾT QUẢ – ĐÁNH GIÁ
TỔNG QUAN NGHIÊN CỨU ĐỀ TÀI
Giới thiệu
Mô hình nhà kho của nhóm sử dụng hệ thống lưới lập phương với các đường ray trên cao, cho phép robot chuyển hàng hoạt động hiệu quả Các thùng chứa hàng được xếp chồng trong từng ô lưới, với vị trí được đánh số theo hệ tọa độ 3 chiều (Dài x Rộng x Cao) Khi cần lấy hàng, robot sẽ thả cơ cấu gắp từ trên ô chứa và nâng thùng hàng lên Sau đó, robot di chuyển đến các cổng để nhập hoặc xuất hàng, hoàn tất chu trình làm việc Nhiều robot hoạt động đồng thời dưới sự điều khiển của một máy tính trung tâm, giúp tối ưu hóa đường đi và phân chia nhiệm vụ hợp lý.
Kết cấu của hệ thống
Kết cấu của hệ thống bao gồm:
- Robot vận chuyển hàng hóa
- Khung lưới lập phương có đường ray phía trên đóng vai trò như kho lưu trữ hàng hóa và để robot di chuyển phía trên
- Hệ thống máy chủ điều khiển và giám sát robot.
Tình hình nghiên cứu trong và ngoài nước
2.3.1 Tình hình nghiên cứu ngoài nước
Trên toàn cầu, nhiều quốc gia đã và đang triển khai hệ thống lưu trữ tự động Dưới đây là một số ví dụ tiêu biểu mà nhóm đã nghiên cứu.
Amazon Robotics đã phát triển hệ thống kho tự động để nâng cao hiệu quả giao hàng của mình Các robot, được gọi là Amazon Robotic Drive Units (ARDUs), sử dụng bánh xe đa hướng cho phép di chuyển linh hoạt trong không gian kho Thiết kế của ARDUs giúp nâng các kệ và vận chuyển hàng hóa một cách dễ dàng, góp phần tối ưu hóa quy trình lưu trữ và phân phối của Amazon.
Dematic là một công ty hàng đầu trong lĩnh vực công nghệ kho hàng, với kinh nghiệm phong phú trong việc xây dựng các hệ thống kho tự động cho nhiều khách hàng trên toàn cầu Sản phẩm nổi bật của họ là robot vận chuyển tự động, hay còn gọi là AGV (Automated Guided Vehicles), được thiết kế như các xe nâng hạ hàng hóa nhưng có khả năng di chuyển độc lập theo lộ trình đã được lập trình sẵn AGV của Dematic còn có tính năng nhận dạng và né tránh vật cản trong quá trình di chuyển, nâng cao hiệu quả và an toàn trong kho bãi.
Vanderlande là công ty chuyên cung cấp giải pháp robot tự động cho quy trình sắp xếp hàng hóa Các robot của họ, được gọi là Robot Sorting, có khả năng phân loại và định vị hàng hóa một cách hiệu quả.
Robot tự động hóa quy trình xử lý hàng hóa, nâng cao hiệu suất và độ chính xác trong việc sắp xếp Chúng sử dụng công nghệ thị giác máy tính và hệ thống nhận dạng để xác định hàng hóa Với cơ cấu di chuyển phức tạp cùng ứng dụng bánh xe và các cơ cấu nâng hạ đa dạng, robot mang lại giải pháp hiệu quả cho việc quản lý hàng hóa.
Hình 2 3 Robot Sorting của Vanderlande
Hệ thống Swisslog Autostore là một giải pháp quản lý kho hàng tiên tiến, sử dụng robot tự động với cấu trúc hình lưới lập phương để tổ chức và lưu trữ hàng hóa hiệu quả Các robot di động nhỏ gọn, gọi là Rovers, có khả năng lấy một kiện hàng mỗi lần thực hiện và hoạt động hoàn toàn tự động Mỗi robot được trang bị một bàn làm việc trên đỉnh cùng với hệ thống bánh xe cơ động, cho phép chúng di chuyển linh hoạt theo chiều ngang và dọc trong hệ thống Grid.
Hình 2 4 Robot Rovers của Swisslog Autostore
2.3.2 Tình hình nghiên cứu trong nước Ở Việt Nam, việc ứng dụng nhà kho tự động còn khá ít, có thể kể tới:
Viettel Logistics đã phát triển hệ thống kho bãi hiện đại tương tự như Amazon, đánh dấu bước tiến quan trọng trong việc áp dụng công nghệ tiên tiến Các robot được thiết kế và sản xuất trong nước nhằm tăng cường tự động hóa, nâng cao hiệu suất quản lý kho hàng và logistics.
Hình 2 5 AGV của Viettel Logistics
Tập đoàn Kỹ thuật và Công nghiệp Việt Nam InTech Robot AGV chuyên cung cấp robot di chuyển tự động (AGV) cho kho hàng và logistics Các AGV của InTech được trang bị công nghệ điều khiển tự động và định vị, giúp chúng di chuyển hiệu quả trong không gian kho Chúng có khả năng phát hiện và tránh vật cản, đồng thời tuân theo các tuyến đường đã được định sẵn hoặc có thể được điều khiển từ xa.
Cách tiếp cận
Nghiên cứu và phân tích ưu nhược điểm của các mẫu hệ thống kho tự động tại các quốc gia tiên tiến cũng như các hệ thống trong nước là cần thiết để phát triển thiết kế phù hợp với nhu cầu của khách hàng nội địa.
- Nghiên cứu các hệ thống điều khiển, giao tiếp đã ứng dụng trong ngành robot để ứng dụng cho đề tài
- Nghiên cứu về các thuật toán tìm kiếm và tạo đường đi cho robot để ứng dụng vào điều khiển robot
- Nghiên cứu nhu cầu, khả năng của khách hàng để đưa ra thiết kế phù hợp
Để đề ra phương án thiết kế phù hợp, cần tìm hiểu khả năng về kinh phí và độ phức tạp của mô hình, cũng như điều kiện công nghệ chế tạo hiện có của chúng ta.
Giới hạn đề tài
- Robot di chuyển trên đường ray dạng lưới được thiết kế sẵn
- Robot có kích thước (Dài × Rộng × Cao): 470mm x 370mm x 485mm
- Khối lượng robot ước tính: 35kg
- Khối lượng tải ước tính tối đa: 3kg
- Vận tốc di chuyển tối đa: 1m/s
- Thời gian hoạt động ước tính: 1h
- Phạm vi hoạt động: Trong các kho hoặc nhà thuốc tây
Kế hoạch thực hiện
- Nghiên cứu hệ thống trong và ngoài nước
- Đưa ra phương án thiết kế theo nhu cầu thực tế
- Tính toán chọn động cơ và bộ truyền động
- Tính toán thiết kế trục (chọn vật liệu, kiểm nghiệm bền)
- Thiết kế khung xe robot, kiểm bền cho khung xe robot
- Tìm hiểu về động học robot
- Nghiên cứu và thiết kế các nguyên lý truyền động cho robot
- Thiết kế mạch điện điều khiển
- Nghiên cứu, lập trình hệ thống điều khiển robot
- Thiết kế khung lưới nhà kho
- Lập trình hệ thống theo dõi dữ liệu nhà kho
- Lập trình hệ thống truy xuất dữ liệu kho
- Chế tạo và chạy thử hệ thống
- Chỉnh sửa và hoàn thiện lại hệ thống
CƠ SỞ LÝ THUYẾT
Giới thiệu cơ sở lý thuyết
Để chế tạo mô hình nhà kho thông minh với cấu hình khối lập phương, trước tiên cần tìm hiểu các kiến thức liên quan như Multi Agent Path Finding, UART và cơ sở dữ liệu Nhóm đã tiến hành nghiên cứu sâu về những vấn đề cụ thể này để xây dựng nền tảng lý thuyết vững chắc cho dự án.
3.1.1 Thuật toán tìm kiếm đường đi (Multi Agent Path Finding)
Bài toán tìm đường đi cho đa đối tượng (Multi Agent Path Finding - MAPF) đã thu hút sự chú ý của các nhà khoa học trong những năm gần đây (Standley 2010; Bartak, Svancara, và Vlk 2018; Cohen et al 2018a; Li et al 2019) Nhiệm vụ của MAPF là lập kế hoạch đường đi cho nhiều đối tượng sao cho chúng không va chạm với nhau và vẫn đến được đích mong muốn Các thuật toán được sử dụng sẽ tính toán đường đi ban đầu cho robot, đồng thời phát hiện các va chạm có thể xảy ra để điều chỉnh lộ trình, nhằm loại bỏ hoàn toàn các va chạm giữa các đối tượng.
Hình 3 1 Minh họa bài toán tìm kiếm đường đi
Trong hình a, các hình tròn đại diện cho các đối tượng ở điểm bắt đầu trước khi di chuyển tới điểm đích là các hình vuông Mỗi hình tròn và hình vuông cùng màu tương ứng với điểm bắt đầu và điểm đích của cùng một đối tượng Hình b cho thấy các đường đi của đối tượng được vẽ ra ngay từ lúc bắt đầu tính.
Trong bài toán MAPF, khi các đối tượng bắt đầu di chuyển, chúng sẽ va chạm tại hình c, thể hiện qua vùng màu đỏ, cho thấy rằng các đối tượng không thể di chuyển theo đường đi này do xung đột Do đó, đường đi ở hình d là hợp lý nhất vì không có va chạm hay cản trở nào xảy ra Mặc dù ví dụ chỉ có ba đối tượng, MAPF có khả năng tính toán cho nhiều đối tượng hơn trong không gian lớn hơn Đây là cách giải thích khái quát về bài toán MAPF.
Trong bài toán này, có hai kiểu di chuyển chính của đối tượng: di chuyển đa hướng trong không gian và di chuyển theo dạng lưới Đề tài của nhóm tập trung vào việc cho các đối tượng di chuyển theo dạng lưới trên các ray của các ô hàng Ngoài ra, MAPF còn có nhiều ứng dụng hiện đại khác như phương tiện tự hành, máy bay không người lái, kiểm soát không lưu, robot, và đặc biệt là trong lĩnh vực nhà kho tự động.
Do sự đa dạng trong các ứng dụng, có nhiều nghiên cứu khác nhau về bài toán MAPF nhằm phục vụ cho các mục đích khác nhau Điều này khiến nhóm gặp khó khăn trong việc tìm kiếm các nghiên cứu liên quan đến các ứng dụng cụ thể Một số phương pháp giải quyết bài toán MAPF mà nhóm đã tìm thấy bao gồm: CBS (Conflict-Based Search), GWAS (Generalized Wavefront Algorithm Search), PPA (Prioritized Planning Algorithms), ICTS (Increasing Cost Tree Search) và EPEA* (Enhanced Partial Expansion A*).
Hình 3 2 So sánh các thuật toán tìm kiếm đường đi
Based on the comparison of algorithms presented in the paper "Conflict-based Search for Optimal Multi-Agent Pathfinding" by Guni Sharon, Roni Stern, Ariel Felner, and Nathan R Sturtevant, it is evident that CBS is the most optimal and widely used algorithm for grid-based pathfinding problems Therefore, our team has chosen this algorithm to address the path selection issue for robots In the following sections, we will delve deeper into this algorithm.
Thuật toán CBS, được đề xuất bởi Sharon và các cộng sự vào năm 2015, là một phương pháp tìm đường hai cấp, bao gồm tìm kiếm cấp cao và cấp thấp Nó sử dụng thuật toán A* cho tìm kiếm cấp thấp nhằm xác định các đường đi ban đầu với chi phí tối ưu và số bước duyệt tối thiểu A* là một thuật toán tối ưu, mở rộng từ Dijkstra, sử dụng hàm heuristic để cung cấp thông tin về khoảng cách từ nút mục tiêu Thuật toán này tìm kiếm qua các nút lân cận và chọn nút tiếp theo có giá trị f(x) = g(x) + h(x) nhỏ nhất để tiếp tục quá trình tìm kiếm Tìm kiếm cấp cao của CBS giải quyết các xung đột như va chạm giữa các đối tượng và ràng buộc tài nguyên, từ đó xây dựng các giải pháp tối ưu cho bài toán tìm đường trong môi trường có xung đột.
Khoảng cách 'g' biểu thị chiều dài cần thiết để di chuyển từ điểm bắt đầu đến một ô vuông cụ thể trên lưới, theo con đường mà thuật toán đã xác định.
- 'h' là kinh nghiệm, là ước tính khoảng cách cần thiết để đi đến vạch đích từ ô vuông đó trên lưới
- ‘f ' là chi phí tổng thể ước lượng của đường đi qua ô vuông hiện tại đến vạch đích
Heuristic là những phỏng đoán đã được huấn luyện trước, giúp xác định hướng đi trong quá trình tìm kiếm Đối tượng không thể biết khoảng cách đến điểm kết thúc cho đến khi tìm ra tuyến đường do có nhiều vật cản xuất hiện.
1 Khởi tạo danh sách mở
2 Đặt nút bắt đầu vào danh sách mở (để f của nút này bằng không) Khởi tạo danh sách đóng
3 Thực hiện các bước sau cho đến khi danh sách mở không còn trống: a Tìm nút có f nhỏ nhất trong danh sách mở và đặt tên là "q" b Xóa q khỏi danh sách mở c Tạo ra tám nút con của q và đặt q làm nút cha của chúng d Đối với mỗi nút con: i) Nếu tìm thấy một nút kế nhiệm là mục tiêu, dừng tìm kiếm ii) Ngược lại, tính toán giá trị g và h cho nút kế nhiệm
Để thực hiện thuật toán, nếu 𝑓(𝑥) = 𝑔(𝑥) + ℎ(𝑥), cần bỏ qua nút kế nhiệm nếu danh sách Mở đã có nút cùng vị trí với giá trị f thấp hơn Tương tự, nếu danh sách Đóng có nút cùng vị trí nhưng giá trị f thấp hơn, nút kế nhiệm cũng sẽ bị bỏ qua Nếu không, nút sẽ được thêm vào cuối danh sách mở Cuối cùng, đưa q vào danh sách đóng và kết thúc vòng lặp while.
Cần phải xác định giá trị chính xác của h:
1 Trước khi sử dụng thuật toán A*, tính toán trước khoảng cách giữa mọi cặp ô
2 Sử dụng công thức khoảng cách, chúng ta có thể trực tiếp xác định giá trị chính xác của h trong trường hợp không có ô bị chặn hoặc cản trở
Sau đây để giải thích một cách dễ hiểu hơn về thuật toán A*
Hình 3 3 Bài toán A* Ở ví dụ trên:
- Số được viết trên các đường thẳng đại diện cho khoảng cách giữa các nút
Số trên nút biểu thị giá trị Heuristics, với nhiệm vụ tìm đường đi ngắn nhất và hiệu quả về chi phí từ nút A đến nút G, trong đó A là điểm khởi đầu và G là điểm đích.
Từ A có thể đi đến B hoặc E, vì thế chúng ta có thể tính toán được 𝑓(𝑥) của mỗi đường đi như sau:
Có thể thấy di chuyển từ A đến B là ngắn hơn và tiết kiệm chi phí hơn từ
Để tính toán 𝑓(𝑥), ta bắt đầu từ nút B, từ đó có thể di chuyển đến các nút C hoặc G Nhờ vậy, chúng ta có thể xác định giá trị 𝑓(𝑥) cho từng lộ trình khác nhau.
Ta thấy được 𝑓(𝑥) = 11 khi đi 𝐴 → 𝐵 → 𝐺 Bây giờ hãy xem xét nút con
E xem thế nào Từ E có thể đi đến D và rồi đến G, vì thế chúng ta có thể tính toán được 𝑓(𝑥) của đường đi như sau:
So sánh hai kết quả cho thấy rằng lộ trình từ 𝐴 → 𝐸 → 𝐷 → 𝐺 ngắn hơn và tiết kiệm chi phí hơn so với lộ trình 𝐴 → 𝐵 → 𝐺 Do đó, lộ trình tối ưu cho bài toán này là 𝐴 → 𝐸 → 𝐷 → 𝐺 Đây là ứng dụng của thuật toán tìm kiếm cấp thấp A* Tiếp theo, chúng ta sẽ giải thích về thuật toán tìm kiếm cấp cao.
PHƯƠNG HƯỚNG VÀ GIẢI PHÁP
Chức năng hệ thống
Mô hình này giúp cải thiện quản lý hàng hóa (thuốc) tồn kho, tối ưu hóa không gian, giảm chi phí lao động và hạn chế tổn thất do trộm cắp và thất lạc Nó mang lại khả năng kiểm soát toàn diện thông qua việc xác định và theo dõi sản phẩm một cách hiệu quả.
Nó cung cấp khả năng lưu trữ hiệu quả, thời gian lưu trữ và truy xuất ngắn, vận chuyển chính xác, hạn chế hư hỏng, giám sát từ xa các hoạt động trong kho và chi phí vận hành thấp.
Yêu cầu kĩ thuật
Hệ thống cơ sở dữ liệu lưu trữ có khả năng lưu trữ toàn bộ thông tin về hàng hóa, bao gồm thời gian nhập kho, loại hàng hóa và số lượng hàng hóa còn lại Nó cũng cho phép truy xuất thông tin để điều khiển hệ thống robot khi cần thiết cho quá trình xuất nhập hàng.
+ Tự động di chuyển khi có hàng hóa nhập kho, xuất kho
+ Chính xác và liên tục
- Hệ khung chứa lưu trữ hàng hóa:
+ Khung chắc chắn, có thể chịu được tải trọng của xe
+ Các thùng hàng nằm trong khung được sắp xếp ngay ngắn
+ Khung có thể lắp ráp được để dễ dàng trong việc vận chuyển
Giao diện người dùng được thiết kế thân thiện và tối ưu, giúp người dùng dễ dàng thực hiện các yêu cầu xuất nhập kho Nhiệm vụ chính của giao diện là cho phép người dùng truy xuất thông tin về loại thuốc, số lượng và vị trí, sau đó gửi dữ liệu này đến hệ thống điều khiển kho Hệ thống sẽ tiếp nhận và thực hiện nhiệm vụ theo thông tin đã cung cấp.
Nguyên lý hoạt động
Nhà kho thông minh là một hệ thống phức tạp bao gồm nhiều thành phần quan trọng như trạm đưa hàng hóa, hệ thống tự sạc pin cho robot, và hệ thống giám sát thực tế Trong đồ án này, nhóm sẽ tập trung vào hệ thống điều khiển robot và phân công nhiệm vụ cho chúng, nhằm tối ưu hóa quy trình quản lý hàng hóa trong kho.
25 chúng cũng như một phần đơn giản của hệ thống quản dữ liệu và truy xuất hàng hóa Nguyên lý hoạt động của chúng như sau:
Hàng hóa cụ thể, như thuốc, sẽ được tìm kiếm trên giao diện người dùng và hiển thị số lượng từ cơ sở dữ liệu Giao diện có nút “Thực thi” để người dùng quyết định có thực hiện tìm kiếm hay không Khi bấm nút “Thực thi”, máy chủ sẽ lấy dữ liệu từ yêu cầu của khách hàng, tính toán đường đi cho robot và chuyển dữ liệu đó vào robot Robot sẽ thực hiện lệnh lấy hàng, cập nhật vị trí thực tế lên giao diện để người dùng giám sát Sau khi đến vị trí lấy hàng, robot sẽ chuyển hàng về vị trí người nhận, hoàn tất chu trình làm việc.
Phương án thiết kế và giải pháp thực hiện
4.4.1 Phương án thiết kế và định hình máy
• Phương án thiết kế tổng thể robot
Bảng 4 1 Bảng các phương án thiết kế tổng thể robot
Phương án 1: Thiết kế robot có khoang chứa hàng bên trong
Phương án 2: Thiết kế robot có khoang chứa hàng bên ngoài Ưu điểm:
- Tiết kiệm được không gian khi di chuyển
- Nhiều robot có thể cùng vận hành hơn
- Dễ dàng xây dựng thuật toán tìm đường đi hơn
- Robot cân bằng hơn Ưu điểm:
- Dễ kiểm soát và quản lý hơn
- Chiếm không gian khi di chuyển
- Ít robot có thể vận hành cùng lúc
- Xây dựng thuật toán tìm đường đi phức tạp hơn
- Robot khó chế tạo cân bằng hơn
• Phương án thiết kế khung lưới lập phương
Bảng 4 2 Bảng các phương án thiết kế khung lưới lập phương
Phương án 1: Thiết kế khung lưới lập phương bằng thép hộp
Phương án 2: Thiết kế khung lưới lập phương bằng nhôm định hình Ưu điểm:
- Dễ gia công chính xác
- Có các rãnh bắt ốc sẵn, dễ dàng gá các thanh ray lên
- Khó gia công chính xác
- Không có các chỗ bắt ốc sẵn để gác thanh ray lên
4.4.2 Phương án xây dựng hệ thống điều khiển
• Phương án xây dựng thuật toán tìm kiếm đường đi
Bảng 4 3 Bảng các phương án xây dựng thuật toán tìm kiếm đường đi
Phương án 1: Xây dựng thuật toán dựa trên phương pháp Trí tuệ bầy đàn
Phương án 2: Xây dựng thuật toán dựa trên phương pháp Tìm kiếm đường đi cho đa đối tượng (Multi-Agent Path Planning) Ưu điểm:
- Nhiều nguồn kiến thức, dễ tìm kiếm
- Có thầy hướng dẫn về lĩnh vực này Ưu điểm:
- Phù hợp hơn với đề tài
- Có các nghiên cứu chuyên sâu về chính vấn đề của đề tài
- Cần phải có sự nghiên cứu và làm việc lâu dài hơn để xây dựng thuật toán riêng cho đề tài
- Có khá ít thông tin và bài báo nói về vấn đề này
- Không có sự hướng dẫn từ giáo viên
• Phương án xây dựng hệ thống điều khiển để robot đến đúng vị trí
Bảng 4 4 Bảng các phương án xây dựng hệ thống điều khiển để robot đến đúng vị trí
Phương án 1: Xây dựng hệ thống điều khiển sử dụng PID vị trí kết hợp với
Phương án 2: Xây dựng hệ thống điều khiển sử dụng cảm biến lazer kết hợp với RFID Ưu điểm:
- Điều khiển được robot tới đúng vị trí mong muốn
- Không cần lắp đặt thêm thiết bị khác bên trong xe Ưu điểm:
- Dễ thực hiện với phương pháp đơn giản
- Chỉ cần động cơ thường
- Cần có động cơ encoder
- Khó xây dựng hệ thống điều khiển
- Nhiễu từ ánh xạ kim loại trên đường ray
- Cần lắp đặt thêm module bên trong xe.
Lựa chọn giải pháp
Sau khi xem xét nhóm quyết định chọn các phương án như sau
Bảng 4 5 Bảng lựa chọn phương án
Phương án thiết kế tổng thể robot X
Phương án thiết kế khung lưới lập phương X
Phương án xây dựng thuật toán tìm kiếm đường đi X
Phương án xây dựng hệ thống điều khiển để robot đến đúng vị trí
TÍNH TOÁN VÀ THIẾT KẾ CƠ KHÍ
Nghiên cứu lựa chọn và thiết kế lại thùng hàng
Sử dụng thùng hàng có sẵn trên thị trường có nhiều ưu điểm:
- Phổ biến và nhiều sự lựa chọn
- Có sẵn ở các kho hàng lưu trữ, có thể tiết kiệm chi phí
Sau khi khảo sát và thử nghiệm nhiều loại thùng hàng trên thị trường, nhóm đã quyết định chọn thùng nhựa B12 làm thùng chứa cho mô hình của mình nhờ vào tính phù hợp và hiệu quả của sản phẩm này.
• Chất liệu: BJ355 - nhựa PP nguyên sinh nhập khẩu từ Hanwa Total Hàn Quốc
• Kiểu: Thiết kế từ Nhật Bản
• Có thể xếp chồng lên nhau
• Màu sắc: Xanh lam, xanh lá, đỏ, vàng, ghi, đen…
Thùng nhựa sẽ được thiết kế lại để có thể gắp và thả bằng cơ cấu gắp thả của robot.
Tính toán, thiết kế hệ thống dẫn động cụm bánh xe ngắn
Sơ đồ 5 1 Sơ đồ truyền động cụm bánh xe ngắn (Hình chiếu đứng)
Sơ đồ 5 2 Sơ đồ truyền động cụm bánh xe ngắn (Hình chiếu bằng)
5.2.1 Công suất và tốc độ trục công tác
- Vật liệu vận chuyển: Thuốc y tế
- Khối lượng tải tối đa mt(kg): 3
Theo thiết kế sơ bộ ta có:
Tổng tải trọng tối đa xe thiết kế: mxe = mtk + mt = 35 + 3 = 38 (kg)
Chọn vận tốc tối đa khi chịu tải của xe là: vt = 2,3 (m/s) o Công suất trên các bánh xe chủ động
Trong đó: vt : Vận tốc tối đa khi chịu tải của xe
𝐹 𝑘 : Lực kéo tiếp tuyến ở các bánh xe chủ động
𝐺 𝑡𝑏 = 𝑚 𝑥𝑒 𝑔 = 38.9,81 = 372,78 là tổng tải trọng tối đa xe thiết kế f là hệ số cản lăn, 𝑓 = 0,018 (Chọn mặt đường nhựa thay sắt tiếp xúc với bánh xe cao su)
𝐹 𝑖 : Lực cản dốc 𝐹 𝑖 = 0 vì mặt đường ray không có dốc
𝐹 𝜔 : Lực cản không khí.𝐹 𝜔 = 0 vì xe chạy ở tốc độ thấp nên lực cản không khí có thể bỏ qua
𝐹 𝑗 : Lực cản chủ động quán tính
Khi xe chuyển động với tốc độ không ổn định sẽ xuất hiện lực quán tính
Lực bao gồm hai thành phần chính: lực do chuyển động tịnh tiến và lực do chuyển động quay Chuyển động quay thường gặp ở các động cơ và puly; tuy nhiên, do đại lượng này thường nhỏ, nên có thể bỏ qua trong nhiều trường hợp.
Thay những tính toán trên vào công thức tổng ta có:
Lực kéo tổng cộng được tính bằng công thức \( F_k = F_f + F_i + F_j + F_\omega = 6,71 + 0 + 372,78 + 0 = 379,49 \, (N) \) Đây là trường hợp cực đoan của công suất, tuy nhiên trong thực tế, các lực cản này hiếm khi xảy ra đồng thời Chẳng hạn, khi động cơ hoạt động ổn định, lực quán tính có thể được bỏ qua Do đó, lực kéo tiếp tuyến tại các bánh xe chủ động trong trường hợp này cần được tính toán lại.
𝑃 𝑡𝑎𝑖 = 𝐹 𝑘 𝑣 = 6,71.2,3 = 15,43(𝑊) o Tốc độ quay bánh xe
5.2.2 Chọn động cơ và phân phối tỉ số truyền
- Tỉ số truyền của bộ truyền đai răng 1, chọn 𝑢 đ1 =2
- Tỉ số truyền của bộ truyền đai răng 2, chọn 𝑢 đ2 = 3
Tính số vòng quay của động cơ n:
= 4057 (v/ph) Công suất cần thiết trên trục động cơ:
- 𝑃 𝑐 : công suất cần thiết trên trục động cơ (kW)
- 𝑃 𝑡𝑎𝑖 : công suất tính toán trên trục máy công tác (kW)
Moment trên trục động cơ
Bảng 5 1 Bảng Catalog động cơ
Với moment trên trục động cơ 𝑇 đ𝑐 = 49,08 𝑁𝑚𝑚 và 𝑛 = 4056,84( 𝑣
𝑝ℎ), dựa vào catalog chọn động cơ Servo Motors NF5475 với Encoder
Hình 5 2 Servo Motor NF5475 với Encoder
• Phân phối tỉ số truyền
Dựa trên các sản phẩm bộ truyền đai răng hiện có trên thị trường và quá trình tính toán để chọn động cơ, chúng ta có thể xác định tỷ số truyền phù hợp cho hệ thống dẫn động như đã nêu.
- Tỉ số truyền của bộ truyền đai răng 1, chọn 𝑢 đ1 =2
- Tỉ số truyền của bộ truyền đai răng 2, chọn 𝑢 đ2 = 3 o Số vòng quay trên các trục:
𝑝ℎú𝑡) (5.7) o Công suất trên các trục:
Bảng 5 2 Thông số động học
Thông số Động cơ Trục 1 Trục 2
Số vòng quay n (vg/ph) 4057 2028,5 676,17
5.2.3 Tính toán bộ truyền đai răng
Môđun m xác định theo công thức thực nghiệm:
Sử dụng hệ số 35 đối với đai răng thang, 25 đối với đai răng tròn
- 𝑃 đ𝑐 : Công suất động cơ (kW);
- 𝑛 đ𝑐 : Số vòng quay động cơ
Dựa trên thông số đai răng gờ hình tròn phổ biến trên thị trường và kết quả tính toán trên, ta chọn loại đai GT2 bước răng 2mm
Bảng 5 3 Bảng thông số đai
Trong đó: Hệ số chiều rộng đai 𝜓 đ = 9
Dựa trên thông số đai răng gờ hình tròn phổ biến và kết quả tính toán, chúng tôi đã chọn loại đai GT2 với bước răng 2mm và độ rộng 6mm.
Chiều rộng nhỏ nhất của răng: S = (1:1,2).m = (1:1,2) 2
𝜋 = 0,64:0,77 (mm) Chọn S = 0,7 o Xác định thông số bộ truyền
𝜋 và số vòng quay trục dẫn là 𝑛 đ𝑐 = 4057 kết hợp tham khảo bảng chọn số răng của bánh đai răng nhỏ z1 = 20, suy ra z2 = 2.20 = 40
Khoảng cách trục nhỏ nhất: amin = 0,5.(d1 + d2) + C = 0,5.(12,74 + 25,48) + 2 2
Chiều dài đai ngắn nhất:
Số rằng zp tính theo chiều dài đai ngắn nhất:
𝜋 𝜋 = 51,38 Dựa trên kết quả tính toán, thiết kế sơ bộ kết hợp tra bảng, chọn zp = 140
Tính lại chiều dài đai: Lp = 𝜋 𝑚 𝑧 𝑝 = 𝜋 2
𝜋 140 = 280 mm Tính chính xác khoảng cách trục: a =(λ + √λ 2 − 8Δ 2 )
4 = 109,8 mm Đường kính vòng chia bánh đai nhỏ: d1 = m.z1 = 2
𝜋.20 = 12,74 (mm) Đường kính vòng chia bánh đai lớn: d2 = m.z2 = 2
𝜋.40 = 25,48 (mm) Đường kính ngoài bánh đai nhỏ:
𝑑 𝑎 1 = 𝑚 𝑧 1 − 2𝛿 = 12,74 − 2.0,254 = 12,23 (𝑚𝑚) Đường kính ngoài bánh đai lớn:
Với 𝛿là khoảng cách từ đáy răng đến đường trung bình của lớp chịu tải
Số răng đồng thời ăn khớp trên bánh đai nhỏ
Trong đó: Góc ôm trên bánh đai nhỏ 𝛼 1 = 180 − [ 𝑚(𝑧 2 −𝑧 1 )
Kiểm nghiệm đai về lực vòng riêng:
Khối lượng 1m dây đai với chiều rộng 10mm (Tham khảo thông số nhà sản xuất)
Hệ số tải trọng động 𝐾 đ = 1
Lực vòng riêng cho phép (tham khảo thông số nhà sản xuất)
Hệ số kể đến ảnh hưởng của số răng đồng thời ăn khớp 𝐶 𝑧 = 1
Hệ số kể đến ảnh hưởng của truyền động tăng tốc 𝐶 𝑢 = 1
6 + 0,0013 2,7 2 = 1,26 < 4,37 Thỏa mãn điều kiện o Xác định lực căng ban đầu và lực tác dụng lên trục
Lực căng đai ban đầu:
Lực tác dụng lên trục:
Các thông số của bánh đai răng sử dụng thông số từ nhà sản xuất
Bảng 5 4 Bảng thông số bộ truyền đai răng
Thông số Ký hiệu Giá trị Đơn vị
Công suất trên trục dẫn 𝑃 đ𝑐 20,33 (W)
Tốc độ quay trục dẫn 𝑛 đ𝑐 4057 (vòng/phút)
Loại đai Đai răng GT2 rộng 6mm Đường kính bánh đai nhỏ 𝑑 1 12,74 (𝑚𝑚) Đường kính bánh đai lớn 𝑑 2 25,48 (𝑚𝑚)
Lực tác dụng lên trục 𝐹 𝑟1 9 (𝑁)
• Bộ truyền đai răng 2 o Chọn loại đai
Môđun m xác định theo công thức thực nghiệm:
Sử dụng hệ số 35 đối với đai răng thang, 25 đối với đai răng tròn
- 𝑃 1 : Công suất động cơ (kW);
- 𝑛 1 : Số vòng quay động cơ
Dựa trên thông số đai răng gờ hình tròn phổ biến trên thị trường và kết quả tính toán trên, ta chọn loại đai GT2 bước răng 2mm
Bảng 5 5 Bảng thông số đai
𝜋 = 5,73 (𝑚𝑚) Trong đó: Hệ số chiều rộng đai 𝜓 đ = 9
Dựa vào thông số đai răng gờ hình tròn phổ biến và kết quả tính toán, chúng tôi đã chọn loại đai GT2 với bước răng 2mm và chiều rộng 10mm.
Chiều rộng nhỏ nhất của răng: S = (1:1,2).m = (1:1,2) 2
𝜋 = 0,64:0,77 (mm) Chọn S = 0,7 o Xác định thông số bộ truyền
𝜋 và số vòng quay trục dẫn là 𝑛 1 = 2028,5 kết hợp tham khảo bảng chọn số răng của bánh đai răng nhỏ z1 = 20, suy ra z2 = 3.20 = 60
Dựa trên các sản phẩm phổ biến trên thị trường kết hợp thiết kế sơ bộ chọn đai có chiều dài 1000mm
42 Đường kính vòng chia bánh đai nhỏ: d1 = m.z1 = 2
𝜋.20 = 12,74 (mm) Đường kính vòng chia bánh đai lớn: d2 = m.z2 = 2
𝜋.60 = 38,22 (mm) Đường kính ngoài bánh đai nhỏ:
𝑑 𝑎 1 = 𝑚 𝑧 1 − 2𝛿 = 12,74 − 2.0,254 = 12,23 (𝑚𝑚) Đường kính ngoài bánh đai lớn:
Với 𝛿là khoảng cách từ đáy răng đến đường trung bình của lớp chịu tải o Kiểm nghiệm đai
Kiểm nghiệm đai về lực vòng riêng:
Khối lượng 1m dây đai với chiều rộng 10mm (Tham khảo thông số nhà sản xuất)
Hệ số tải trọng động 𝐾 đ = 1
Lực vòng riêng cho phép (tham khảo thông số nhà sản xuất) [𝑞 0 ] = 4,37 (N/mm)
Hệ số kể đến ảnh hưởng của số răng đồng thời ăn khớp 𝐶 𝑧 = 1
Hệ số kể đến ảnh hưởng của truyền động tăng tốc 𝐶 𝑢 = 1
6 + 0,0013 2,7 2 = 2,33 < 4,37 Thỏa mãn điều kiện o Xác định lực căng ban đầu và lực tác dụng lên trục
Lực căng đai ban đầu:
Lực tác dụng lên trục:
Các thông số của bánh đai răng sử dụng thông số từ nhà sản xuất
Bảng 5 6 Bảng thông số bộ truyền đai răng
Thông số Ký hiệu Giá trị Đơn vị
Công suất trên trục dẫn P 1 19,12 (W)
Tốc độ quay trục dẫn n 1 2028,5 (vòng/phút)
Loại đai Đai răng GT2 rộng 10mm Đường kính bánh đai nhỏ d 1 12,74 (mm) Đường kính bánh đai lớn d 2 38,22 (mm)
Lực tác dụng lên trục F r2 15 (N)
Tính toán, thiết kế hệ thống dẫn động cụm bánh xe dài
Sơ đồ 5 3 Sơ đồ truyền động cụm bánh xe dài (Hình chiếu đứng)
Sơ đồ 5 4 Sơ đồ truyền động cụm bánh xe dài (Hình chiếu bằng)
5.3.1 Công suất và tốc độ trục công tác
(Cùng thông số đầu vào với cụm bánh xe ngắn)
(Tương tự phần tính toán công suất và tốc độ trục công tác của cụm bánh xe ngắn)
5.3.2 Chọn động cơ và phân phối tỉ số truyền
- Tỉ số truyền của bộ truyền đai răng 1, chọn 𝑢 đ1 =2
- Tỉ số truyền của bộ truyền đai răng 2, chọn 𝑢 đ2 = 3
Tính số vòng quay của động cơ n:
= 4057 (v/ph) Công suất cần thiết trên trục động cơ:
- 𝑃 𝑐 : công suất cần thiết trên trục động cơ (kW)
- 𝑃 𝑡𝑎𝑖 : công suất tính toán trên trục máy công tác (kW)
Moment trên trục động cơ
Bảng 5 7 Bảng thông số Servo Motors NF5475 với Encoder
Với moment trên trục động cơ 𝑇 đ𝑐 = 50,45 𝑁𝑚𝑚 và 𝑛 = 4056,84( 𝑣
𝑝ℎ), dựa vào catalog chọn động cơ Servo Motors NF5475 với Encoder
• Phân phối tỉ số truyền
Dựa trên các sản phẩm bộ truyền đai răng hiện có trên thị trường và quá trình tính toán để chọn động cơ, chúng ta có thể xác định tỉ số truyền phù hợp cho hệ thống dẫn động.
- Tỉ số truyền của bộ truyền đai răng 1, chọn 𝑢 đ1 =2
- Tỉ số truyền của bộ truyền đai răng 2, chọn 𝑢 đ2 = 3 o Số vòng quay trên các trục:
𝑝ℎú𝑡) o Công suất trên các trục:
Bảng 5 8 Thông số động học
Thông số Động cơ Trục 1 Trục 2
Số vòng quay n (vg/ph) 4057 2028,5 676,17
5.3.3 Tính toán bộ truyền đai răng
(Tính toán bộ truyền tương tự như trong cụm bánh xe ngắn.)
Dựa trên thông số của đai răng gờ hình tròn phổ biến và kết quả tính toán, loại đai GT2 với bước răng 2mm và rộng 6mm được lựa chọn.
Chiều rộng nhỏ nhất của răng: S = (1:1,2).m = (1:1,2) 2
𝜋 = 0,64:0,77 (mm) Chọn S = 0,7 o Xác định thông số bộ truyền
𝜋 và số vòng quay trục dẫn là 𝑛 đ𝑐 = 4057 kết hợp tham khảo bảng chọn số răng của bánh đai răng nhỏ z1 = 20, suy ra z2 = 2.20 = 40
Khoảng cách trục nhỏ nhất: amin = 0,5.(d1 + d2) + C = 0,5.(12,74 + 25,48) + 2 2
Chiều dài đai ngắn nhất:
Số rằng zp tính theo chiều dài đai ngắn nhất:
𝜋 𝜋 = 51,38 Dựa trên kết quả tính toán, thiết kế sơ bộ kết hợp tra bảng, chọn zp = 140
Tính lại chiều dài đai: Lp = 𝜋 𝑚 𝑧 𝑝 = 𝜋 2
𝜋 100 = 200 mm Tính chính xác khoảng cách trục: a = (λ + √λ 2 − 8Δ 2 )
4 = 69,7 𝑚𝑚 Đường kính vòng chia bánh đai nhỏ: d1 = m.z1 = 2
𝜋.20 = 12,74 (mm) Đường kính vòng chia bánh đai lớn: d2 = m.z2 = 2
𝜋.40 = 25,48 (mm) Đường kính ngoài bánh đai nhỏ:
𝑑 𝑎 1 = 𝑚 𝑧 1 − 2𝛿 = 12,74 − 2.0,254 = 12,23 (𝑚𝑚) Đường kính ngoài bánh đai lớn:
Với 𝛿là khoảng cách từ đáy răng đến đường trung bình của lớp chịu tải
Số răng đồng thời ăn khớp trên bánh đai nhỏ
Trong đó: Góc ôm trên bánh đai nhỏ 𝛼 1 = 180 − [ 𝑚(𝑧 2 −𝑧 1 )
Kiểm nghiệm đai về lực vòng riêng:
2,7 = 7,68 (𝑁) Khối lượng 1m dây đai với chiều rộng 10mm (Tham khảo thông số nhà sản xuất)
Hệ số tải trọng động 𝐾 đ = 1
Lực vòng riêng cho phép (tham khảo thông số nhà sản xuất)
Hệ số kể đến ảnh hưởng của số răng đồng thời ăn khớp 𝐶 𝑧 = 1
Hệ số kể đến ảnh hưởng của truyền động tăng tốc 𝐶 𝑢 = 1
6 + 0,0013 2,7 2 = 1,29 < 4,37 Thỏa mãn điều kiện o Xác định lực căng ban đầu và lực tác dụng lên trục
Lực căng đai ban đầu:
Lực tác dụng lên trục:
Các thông số của bánh đai răng sử dụng thông số từ nhà sản xuất
Bảng 5 9 Bảng thông số bộ truyền đai răng
Thông số Ký hiệu Giá trị Đơn vị
Công suất trên trục dẫn 𝑃 đ𝑐 20,73 (W)
Tốc độ quay trục dẫn 𝑛 đ𝑐 4057 (vòng/phút)
Loại đai Đai răng GT2 rộng 6mm Đường kính bánh đai nhỏ 𝑑 1 12,74 (𝑚𝑚)
51 Đường kính bánh đai lớn 𝑑 2 25,48 (𝑚𝑚)
Lực tác dụng lên trục 𝐹 𝑟1 9 (𝑁)
• Bộ truyền đai răng 2 o Chọn loại đai
(Tính toán và lựa chọn tương tự với bộ truyền đai răng 1)
Dựa trên thông số đai răng gờ hình tròn phổ biến và kết quả tính toán, loại đai GT2 với bước răng 2mm và rộng 10mm được chọn lựa.
Chiều rộng nhỏ nhất của răng: S = (1:1,2).m = (1:1,2) 2
𝜋 = 0,64:0,77 (mm) Chọn S = 0,7 o Xác định thông số bộ truyền
(Tính toán tương tự với hệ thống dẫn động cụm bánh xe ngắn)
Bài viết cung cấp thông số kỹ thuật cho bánh đai, bao gồm đường kính vòng chia của bánh đai nhỏ là d1 = 12,74 mm và bánh đai lớn là d2 = 38,22 mm Đường kính ngoài của bánh đai nhỏ được ghi nhận là 𝑑 𝑎 1 = 12,23 mm, trong khi đường kính ngoài của bánh đai lớn là 𝑑 𝑎 2 = 37,71 mm Cuối cùng, việc kiểm nghiệm đai cũng được nhấn mạnh trong nội dung.
(Tính toán tương tự với hệ thống dẫn động cụm bánh xe ngắn)
Thỏa mãn điều kiện o Xác định lực căng ban đầu và lực tác dụng lên trục
(Tính toán tương tự với hệ thống dẫn động cụm bánh xe ngắn)
Bảng 5 10 Bảng thông số bộ truyền đai răng
Thông số Ký hiệu Giá trị Đơn vị
Công suất trên trục dẫn P 1 19,12 (W)
Tốc độ quay trục dẫn n 1 2028,5 (vòng/phút)
Loại đai Đai răng GT2 rộng 10mm Đường kính bánh đai nhỏ d 1 12,74 (mm) Đường kính bánh đai lớn d 2 38,22 (mm)
Lực tác dụng lên trục F r2 15 (N)
Tính toán, thiết kế cụm cơ cấu nâng hạ bánh xe
5.4.1 Phương án thiết kế cơ cấu bánh xe
Robot sẽ di chuyển theo hai phương vuông góc nên khi đổi chiều chuyển động, 4 bánh chuyển động theo chiều ngược lại sẽ được nâng lên
Hình 5 3 Cụm cơ cấu nâng hạ bánh xe
Sơ đồ 5 5 Sơ đồ truyền động cụm cơ cấu nâng hạ bánh xe
5.4.2 Công suất và tốc độ trục công tác
- Vật liệu vận chuyển: Thuốc y tế
- Khối lượng tải tối đa mt(kg): 3
Khi động cơ hoạt động, đai răng chuyển động theo hướng 𝐹⃗ đ, tạo ra lực 𝐹⃗ 𝑘 tác động lên vòng bi, khiến vòng bi di chuyển theo chiều 𝐹⃗ 𝑘 Đồng thời, cụm bánh xe ngắn cũng di chuyển theo hướng 𝑃⃗⃗ 𝑥𝑒, trong khi cụm bánh xe dài di chuyển ngược lại Kết quả là toàn bộ tải trọng của xe được phân bổ lên bốn bánh xe của cụm bánh xe ngắn.
Sơ đồ đặt lực minh họa cơ cấu cam nâng hạ cụm bánh xe ngắn:
Sơ đồ 5 6 Sơ đồ đặt lực minh họa cơ cấu cam nâng hạ cụm bánh xe ngắn
Sơ đồ đặt lực minh họa cơ cấu cam nâng hạ cụm bánh xe dài:
Sơ đồ 5 7 Sơ đồ đặt lực minh họa cơ cấu cam nâng hạ cụm bánh xe dài
Theo thiết kế sơ bộ ta có:
Tổng khối lượng tối đa xe thiết kế: mxe = 38 (kg)
Khối lượng chi tiết cam, các chi tiết định vị cam và bánh xe: mn = 6 (kg)
Khối lượng mỗi lần nâng hạ bánh xe: m = mxe – mn = 38 – 6 = 32 (kg)
Lực ma sát có ích (giữ cho bánh xe k bị lệch khỏi khung) tác dụng lên khung xe (nhôm định hình v-slot):
- f là hệ số cản lăn, 𝑓 = 0,018 (Chọn bánh xe cao su tiếp xúc với nhựa thay thế nhôm).
- N là lực tác dụng của bánh xe v-slot lên khung (8 bánh xe v-slot), có trị số phụ thuộc vào dung sai chi tiết và dung sai lắp ghép, chọn N= 160 (𝑁)
Lực kéo của đai răng cùng phương hành trình cam: 𝐹 𝑘 = 𝐹 đ cos(16)
Lực kéo của đai răng tác dụng lên cụm bánh xe ngắn 𝐹 đ1 (N)
Trọng lực mỗi lần nâng hạ tác dụng cùng phương hành trình cam:
Lực ma sát lăn của vòng bi tác dụng lên bề mặt cam:
𝐹 𝑚𝑠𝑣𝑜𝑛𝑔𝑏𝑖 = 𝑓 𝑚 𝑔 cos(𝜑) = 0,018.32.9,81 cos(16) = 5,43 (𝑁) (5.20) 𝜑:Góc nghiêng rãnh cam, 𝜑 = 16°
Lực kéo của đai răng tác dụng lên cụm bánh xe dài 𝐹 đ2 (N)
Lực ma sát giữa vòng bi và cam 𝐹 𝑚𝑠𝑐𝑎𝑚 = 𝑓 𝑚 𝑛 𝑔 = 0,018.6.9,81 = 1,06 (𝑁)
Trọng lực chi tiết cam, các chi tiết định vị cam và bánh xe tác dụng theo phương ngang:
Do đó: Lực kéo của đai răng tác dụng lên cơ cấu nâng hạ bánh xe:
Chọn vận tốc nâng hạ bánh của xe là: 𝑣t = 0,005 (m/s)
Suy ra: vận tốc vòng bi là:
Công suất tại các vòng bi
Tốc độ quay cam bị dẫn
5.4.3 Chọn động cơ và tỉ số truyền
- 𝑢 đ - tỉ số truyền của bộ truyền đai răng, chọn 𝑢 đ = 1
Tính số vòng quay của động cơ n:
𝑛 = 𝑛 𝑐𝑡 𝑢 = 32,48.1 = 32,48 ≈ 33 (𝑣/𝑝ℎ) Công suất cần thiết trên trục động cơ động cơ:
- 𝑃 𝑐 : công suất cần thiết trên trục động cơ (kW)
- 𝑃 𝑡𝑎𝑖 : công suất tính toán trên trục công tác (kW)
Moment trên trục động cơ
Với Moment trên trục động cơ 1664,02 (Nmm) và 𝑛 = 35( 𝑣
𝑝ℎ), kết hợp các sản phẩm thông dụng trên thị trường, chọn động cơ JGB37-520 12VDC 60RPM
Bảng 5 11 Bảng thông số kỹ thuật động cơ JGB 37-520
Bảng 5 12 Thông số động học
Trục Thông số Động cơ
Số vòng quay n (vg/ph)
Tính toán, thiết kế cụm cơ cấu nâng hạ thùng, kẹp thùng
5.5.1 Cụm cơ cấu nâng hạ thùng
Sơ đồ 5 8 Sơ đồ truyền động cụm cơ cấu nâng hạ thùng hàng
Hình 5 4 Cụm cơ cấu nâng hạ thùng
Cơ cấu quấn dây của hệ thống kẹp giữ thùng và kéo thả hoạt động bằng cách mắc bốn dây theo cặp chéo, cho phép đồng thời di chuyển lên hoặc xuống khi trục quay Hệ thống này sử dụng động cơ Nema23 kết hợp với bộ truyền động đai răng để đảm bảo hiệu suất hoạt động tối ưu.
Sơ đồ 5 9 Sơ đồ phân tích lực tác dụng lên trục nâng hạ
Ta có khôi lượng tải 𝑚 = 𝑚 1 + 𝑚 2 = 3 + 3 = 6𝑘𝑔, bán kính pulley quấn dây
𝑅 1 = 12,5𝑚𝑚, bán kính pulley GT2 của trục 𝑅 2 = 12,8𝑚𝑚 có số răng 𝑇 1 = 40, bán kính pulley trục động cơ 𝑅 3 = 6,11𝑚𝑚 có số răng 𝑇 2 = 20 Tốc độ thả thùng hàng 𝑣 0,5𝑚/𝑠
• Tính toán lực và vận tốc động cơ
Ta có momen tổng tác dụng lên trục:
Tỉ số truyền của pully trục và pully động cơ như sau:
2 = 367,5 𝑁 𝑚𝑚 = 36,75 𝑁 𝑐𝑚 Vận tốc góc của trục:
Vận tốc góc của động cơ:
Số vòng quay của động cơ trong một giây (tần số quay):
Ta có thông số động cơ Nema23 2.4 Amp như sau:
Bảng 5 13 Bảng thông số động cơ
Momen của động cơ là 64Ncm > M 2 = 36,75 𝑁 𝑐𝑚
• Tính toán bộ truyền đai răng
Sơ đồ 5 10 Mô tả bộ truyền đai GT2 o Chọn Pulley
Dựa vào điều kiện làm việc không quá khắt khe nên nhóm chọn Puly và dây đai như sau:
- Puly GT2 20 răng đường kính trục 6.35mm
- Puly GT2 40 răng đường kính trục 8mm
- Dây đai vòng GT2 200mm
Tính toán khoảng cách giữa hai trục (tâm pulley)
Với: L: chiều dài dây đai GT2 a: khoảng cách tâm của 2 puly d1: đường kính puly 1 (pulley trục động cơ) d2: đường kính puly 2 (pulley trục cơ cấu)
5.5.2 Cụm cơ cấu kẹp thùng
Cụm cơ cấu nâng hạ thùng bao gồm hai phần chính: cơ cấu kẹp giữ thùng và cơ cấu nâng hạ Cơ cấu kẹp giữ thùng có nhiệm vụ cố định thùng thông qua hệ thống đòn bẫy, động cơ truyền động, các gờ và trục, đảm bảo việc kẹp chính xác Trong khi đó, cơ cấu nâng hạ sử dụng hệ thống ròng rọc, đai và động cơ bước để thực hiện việc thả dây và nâng hạ thùng một cách hiệu quả.
Cụm cơ cấu kẹp thùng được thiết kế với 4 đầu vít ở góc, giúp định vị chính xác vị trí của thùng hàng, từ đó đảm bảo cơ cấu kẹp có thể kẹp chặt và chính xác.
Hình 5 6 Chi tiết cơ cấu kẹp thùng
Cơ cấu (A) bao gồm bốn thanh vát nhọn ở đầu, được cố định ở bốn góc của thùng, giúp định vị thùng một cách chính xác Điều này đảm bảo rằng các ờ ở bốn cạnh của cơ cấu không bị lệch Mép của tấm đỡ cơ cấu được gập một góc 85 độ để áp sát vào méo thùng.
Cơ cấu (B) sử dụng hai động cơ servo để điều khiển quá trình kẹp và thả thùng thông qua hai trục Đòn bẫy được thiết kế gồm hai mảnh: mảnh đực và mảnh cái Khi lực được tác động từ trục bên phải sang bên trái, hai mảnh sẽ khớp lại với nhau, tạo ra lực kẹp hiệu quả.
Hình 5 7 Bộ truyền động kẹp
Cơ cấu hệ thống bao gồm hai động cơ và hai trục ỉ5, cùng với cỏnh tay đũn để truyền động từ động cơ đến trục ỉ5 Động cơ xoay tạo ra lực động lực, dẫn đến cỏnh tay đũn và tiếp tục truyền động đến đũn bẫy.
Hình 5 8 Phân tích góc xoay động cơ
• Tính góc xoay động cơ
Ta có OA = 15mm, AB = 36mm, CO = 35.14mm, BC = 9.25mm, △L = 4mm Ở trạng thái ban đầu cạnh L1 vuông góc với phương ngang nên:
Khi dịch chuyển điểm B sang phải 1 đoạn có chiều dài là △L thì ta có được hình mới như sau:
Sơ đồ 5 11 Mô hình động học góc xoay động cơ
Xét tam giác vuông BDO vuông tại D:
Ta có góc ở trường hợp 2: 𝐴𝑂𝐶̂ = 𝐵𝑂𝐶̂ + 𝐴𝑂𝐵̂ = 16.365 + 89.6 = 105.965° Vậy góc xoay của động cơ là:
TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG ĐIỆN ĐIỀU KHIỂN
Cụm cơ cấu kẹp giữ và nâng hạ thùng hàng
6.2.1 Sơ đồ khối điều khiển
Sơ đồ 6 1 Sơ đồ khối cụm cơ cấu kẹp giữ và nâng hạ thùng hàng
Cụm cơ cấu kẹp giữ và nâng hạ thùng bao gồm hai servo RC SG90 để kẹp thùng, động cơ bước Nema23 dùng làm dẫn động cho cơ cấu kéo thả thùng, và công tắc hành trình để phản hồi vị trí trong quá trình nâng hạ thùng.
6.2.2 Phần cứng và tính toán
67 o Thông số kỹ thuật của động cơ SG90:
Bảng 6 1 Thông số kỹ thuật của động cơ SG90
Tốc độ vận hành 0.1s/60 degree Điện áp vận hành 4.8 V
Vị trí và xung điều khiển “0°”(1.5 ms pulse); “90°”(2 ms pulse) ;
“-90°”(1 ms pulse) o Tính toán xung điều khiển động cơ:
Tần số xung PWM của vi điều khiển:
F TimerClock : tần số xung clock timer Prescaler: bộ chia trước
Để tạo ra xung 50Hz cho việc điều khiển RC servo, giá trị Prescaler được thiết lập là 159 và CouterPeriod là 999 Góc kẹp và mở của cơ cấu kẹp được xác định là 𝛼 = 50°, với giá trị xung cần thiết để tạo ra tín hiệu là 1.7777 ms Để điều khiển độ rộng xung PWM, giá trị COMPARE được thiết lập là 89.
Hình 6 2 Động cơ bước Nema23 o Thông số kỹ thuật của Động cơ bước Nema23 :
Bảng 6 2 Thông số kỹ thuật của Động cơ bước Nema23
Mômen xoắn giữ (Holding torque) 64 Ncm
Mômen xoắn giữa các bước (Detent 2.7 Ncm
Vị trí và xung điều khiển “0°”(1.5 ms pulse); “90°”(2 ms pulse) ;
Hình 6 3 Biểu đồ thể hiện mối quan hệ giữa mômen xoắn và tốc độ động cơ
Biểu đồ cho thấy mômen xoắn của động cơ giảm khi tốc độ tăng Động cơ được điều khiển ở tốc độ cố định thông qua xung PWM, với tần số được tính toán dựa trên các tham số: Prescaler = 7, CounterPeriod = 999, và F TimerClock = 8000000.
Tốc độ động cơ ở chế độ Full step với PPR = 200 (Pulse per Round: là số xung cần thiết để động cơ quay được một vòng): ω step =F PWM(step)
𝑃𝑃𝑅 = 5𝑅𝑃𝑆 = 300𝑅𝑃𝑀 (6.2) Ở mức tốc độ 300 RPM motor đạt mômen xoắn cao nhất
• Mạch điều khiển động cơ bước A4988
Mạch điều khiển A4988 có thiết kế nhỏ gọn và hỗ trợ nhiều chế độ điều khiển động cơ như full-step, half-step, quarter-step, eighth-step và sixteenth-step Nó cho phép điều chỉnh dòng ra và có tính năng tự động ngắt khi quá nhiệt, đảm bảo hiệu suất và độ bền cho thiết bị.
Thông số kỹ thuật của A4988:
Bảng 6 3 Thông số kỹ thuật của A4988
Nhiệt độ môi trường hoạt động -20 đến 85 Để thuận tiện lắp đặt sử dụng kết hợp với mạch ra chân dành cho A4988:
Sơ đồ 6 2 Sơ đồ kết nối A4988 Module
Chân STEP, DIR và ENABLE được kết nối với vi điều khiển, trong đó chân STEP cung cấp xung điều khiển, chân DIR xác định chiều quay của động cơ, và chân ENABLE sẽ kích hoạt module khi ở mức LOW.
6.2.3 Lưu đồ giải thuật điều khiển
The current state of the process begins with the PICK_UP phase, followed by the initialization of the state machine (state_stm) Next, the CLOSE_GRIPPER state is activated, leading to the RELEASE_STEP, which transitions to a Pending state After this, the OPEN_GRIPPER state is engaged, followed by the ROLL_STEP, and ultimately concluding with the STOP_STEP.
CLOSE_GRIPPER state_stm = RELEASE_STEP
Step_down Đến khi chạm công tắt state_stm = Pending target_state_stm = OPEN_GRIPPER
Nếu change_flag = true change_flag = 0 state_stm = CLOSE_GRIPPER
Nếu cnt>= 200 Reset cnt Chuyển đến target_state_stm
Stop_Step OPNET_GRIPPER state_stm = Pending target_state_stm = ROLL_STEP
Step_up Nếu chạm công tắt state_stm = STOP_STEP
Stop_Step state_stm = Init
Sơ đồ 6 3 Lưu đồ giải thuật điều khiển cụm cơ cấu kẹp và nâng hạ thùng hàng
Khi robot đến vị trí cần thiết, nó sẽ gửi tín hiệu để kích hoạt quá trình gấp thùng, diễn ra qua các bước cụ thể.
- Bước 1: Đóng đầu kẹp - Robot đóng đầu kẹp để khi cơ cấu đi xuống, đầu kẹp rơi chính xác vào lỗ của thùng
- Bước 2: Hạ cơ cấu xuống - Robot sử dụng động cơ step để điều khiển cơ cấu hạ xuống cho đến khi chạm công tắt hành trình
- Bước 3: Gắp thùng - Sau khi cơ cấu chạm công tắt hành trình, đầu kẹp gắp vào thùng và đợi trong 2 giây
- Bước 4: Nâng cơ cấu lên - Sau 2 giây, robot nâng cơ cấu lên trở lại
Kiểm tra công tắt hành trình là bước quan trọng trong quy trình vận hành của robot, khi động cơ step sẽ dừng lại khi cơ cấu chạm vào công tắt Sau khi kiểm tra, robot sẽ chuyển về trạng thái "init" để sẵn sàng cho quá trình tiếp theo.
Quy trình thả thùng hàng cũng tương tự với quy trình gấp thùng nhưng bước đóng đầu kẹp và kẹp thùng được đổi cho nhau.
Cụm cơ cấu nâng hạ bánh xe
6.2.1 Sơ đồ khối điều khiển
L298N Module Limit Switch 1 Limit Switch 2
Sơ đồ 6 4 Sơ đồ khối điều khiển cụm cơ cấu nâng hạ bánh xe
Cụm cơ cấu sử dụng động cơ hộp số DC 12V GB37 được điều khiển bởi module L297N, kết hợp với hệ thống đai, giúp nâng hạ bánh xe và cho phép robot chuyển đổi trục di chuyển Hệ thống còn được trang bị công tắc hành trình để cung cấp hồi tiếp vị trí chính xác.
Để robot di chuyển theo trục x, cần nâng hai bánh xe ở trục y lên và hạ hai bánh xe của trục x xuống Hàm điều khiển sẽ nhận tín hiệu này để thực hiện quá trình di chuyển.
Khi di chuyển vào vị trí 73, động cơ Move_x sẽ quay theo chiều thuận và ngược lại, nhờ vào hệ thống dây và rãnh trượt Hệ thống này có nhiệm vụ nâng bánh xe ở trục y lên và hạ bánh xe ở trục x xuống Công tắc hành trình được lắp đặt để đảm bảo khi bánh xe được nâng hạ hoàn toàn, sẽ chạm vào công tắc.
6.2.2 Phần cứng và tính toán
• Mạch điều khiển động cơ DC L298N
Hình 6 5 Mạch điều khiển động cơ L298N o Thông số kỹ thuật L298N
Bảng 6 4 Thông số kỹ thuật L298N
Nguồn Logic V ss Tối đa 7V
Dòng điện lặp lại với thời gian bật tắt
Dòng điện khi vận hành liên tục 3A
Nhiệt độ hoạt động -25 đên -30°C
Sơ đồ kết nối mạch L298N với vi điều khiển STM23F411
Sơ đồ 6 5 Sơ đồ kết nối mạch điều khiển L298N
Kết nối chân in1, in2 và E của module L298N với GPIO_PIN của vi điều khiển
Bảng 6 5 Tín hiệu điều khiển ứng với từng trạng thái động cơ
Trang thái động cơ In1 In2 E
Quay thuận HIGH LOW HIGH
Quay nghịch LOW HIGH HIGH
6.2.3 Lưu đồ giải thuật điều khiển
Stop motor Reset Lswitch State = init
Sơ đồ 6 6 Lưu đồ giải thuật điều khiển cụm cơ cấu nâng hạ bánh xe
Chương trình khởi đầu từ trạng thái init, không có hoạt động nào diễn ra Khi state = move_x, chương trình chuyển sang trạng thái move_x, trong đó động cơ được điều chỉnh để di chuyển theo trục x và tín hiệu PWM được thiết lập cho yêu cầu di chuyển Tiến hành kiểm tra công tắc hành trình của trục x (LSwitch_x); nếu công tắc hoạt động, chương trình sẽ chuyển sang trạng thái Stop Tại trạng thái Stop, các bánh xe trục x và trục y được đưa về trạng thái không hoạt động, đồng thời tín hiệu PWM cũng được đặt lại về giá trị dừng.
Và tương tự với trục y Sau khi hoàn thành, chương trình quay trở lại trạng thái ban đầu init và lặp lại quá trình.
Cụm động cơ Servo motor trục x và trục y
6.3.1 Sơ đồ khối điều khiển
Sơ đồ 6 7 Sơ đồ khối điều khiển cụm động cơ Servo motor trục x và trục y
Sử dụng mạch cầu H BTS7960 để điều khiển động cơ Servo Nisca NF5475, kết hợp với bộ điều khiển PID và tín hiệu hồi tiếp từ encoder, giúp điều chỉnh chính xác vị trí của động cơ.
6.3.2 Phần cứng và tính toán
• Mạch điều khiển động cơ MKS H2407ND
Hình 6 6 Mạch điều khiển động cơ MKS H2407ND o Thông số kỹ thuật MKS H2407ND
Bảng 6 6 Thông số kỹ thuật MKS H2407ND
Dòng điện khi vận hành liên tục tối đa 50A
Mạch điều khiển động cơ MKS H2407ND là một module điều khiển động cơ
DC kép có khả năng chịu dòng điện vào cao tới 7A trên mỗi kênh đầu ra Nó sử dụng các cổng logic tương tự như L298N và có phương pháp điều khiển tương tự L298N.
Động cơ Servo Nisca NF5475 được sử dụng rộng rãi trong các ứng dụng robot và công nghiệp, nổi bật với độ chính xác cao nhờ vào encoder có độ phân giải 200 xung/vòng.
Hình 6 7 Động cơ Servo Nisca NF5475 o Thông số động cơ Nisca NF5475:
Bảng 6 7 Thông số động cơ Nisca NF5475
Tốc độ không tải 4884 RPM
Momen xoắn Khởi động 506.57 mN.m
Thông số encoder của động cơ Nisca NF5475:
Bảng 6 8 Thông số encoder của động cơ Nisca NF5475 Độ phân giải 200 PPR
Encoder được đọc thông qua chế độ encoder tích hợp sẵn trong vi điều khiển STM32F411RE Bộ đếm của timer có độ rộng 16 bit, cho phép ghi nhận giá trị xung đến một mức nhất định.
65535 giá trị thì sẽ bị tràn bộ nhớ, vì vậy cần phải có thuật toán để xử lý
Hình 6 8 Minh họa việc đọc xung encoder
Trong trường hợp động cơ quay thuận, nếu giá trị trước lớn hơn giá trị sau mà chưa tràn thanh ghi, thì giá trị trước nhỏ hơn giá trị sau sẽ dẫn đến việc thanh ghi bị tràn Ngược lại, khi động cơ quay nghịch, nếu giá trị trước nhỏ hơn giá trị sau thì thanh ghi chưa bị tràn, nhưng nếu giá trị trước lớn hơn giá trị sau, thanh ghi sẽ bị tràn Để kiểm soát hiện tượng này, cần xác định số xung tối đa thu được trong khoảng thời gian lấy mẫu.
Số xung tối đa đọc được trong thời gian lấy mẫu 10ms là 𝑀𝑎𝑥𝑃𝑢𝑙𝑠𝑒 ≈ 138
6.3.3 Lưu đồ giải thuật điều khiển
• Lưu đồ giải thuật đọc encoder:
MaxPulse (Current_data – Pre_data) >= 0
(Current_data – Pre_data) < 0 -(Current_data – Pre_data) 0.1θ p (Điều kiện này được đề xuất bởi Rivera và đồng nghiệp vào năm 1986)
- τ 𝑝 > τ 𝑐 > 0 (Điều kiện này được đề xuất bởi Chien và Fruehauf vào năm
- τ 𝑐 = θ p (được đề xuất bởi Skogestad vào năm 2003)
Bảng 6 11 Phương pháp Direct Synthesis
Bảng 6 12 Phương pháp Chen & Seborg
6.7.3 Phương hướng và giải pháp
Phương pháp điều khiển cascade control là một giải pháp hiệu quả trong việc điều khiển vị trí của robot, giúp cải thiện khả năng đáp ứng của hệ thống Với vòng phụ là điều khiển tốc độ, phương pháp này không chỉ điều chỉnh và ổn định tốc độ mà còn nâng cao độ chính xác và tốc độ của quá trình điều khiển vị trí Điều này cũng giúp giảm thiểu tác động của nhiễu đến vị trí nhờ vào việc xử lý ở vòng vận tốc.
Sơ đồ 6 15 Hàm truyền điều khiển PID sử dụng phương pháp Cascade Control
• Tìm hàm truyền vòng vận tốc o Lấy dữ liệu về sự thay đổi của đáp ứng ngõ ra đối với biến điều khiển
Biến điều khiển (MV) có giá trị từ 0 đến 999 tương ứng với xung PWM từ 0% đến 100%, với đơn vị đo thời gian là ms (mili giây) và ngõ ra được đo bằng RPM (Round Per Minute) Đồ thị phản ánh vận tốc của trục x cho thấy sự thay đổi khi MV tăng từ 400 đến 800.
Hình 6 19 Đồ thị đáp ứng vận tốc của trục x thu được khi tăng MV từ 400 đến 800
Hình 6 trình bày đồ thị đáp ứng vận tốc của trục x khi tăng MV từ 350 đến 650, cùng với đồ thị đáp ứng vận tốc của trục y khi MV tăng từ 300 đến 600 Những thay đổi này cho thấy mối quan hệ giữa giá trị MV và đáp ứng vận tốc của các trục.
Hình 6 21 Đồ thị đáp ứng vận tốc của trục y thu được khi tăng MV từ 300 đến 600
Hình 6 22 Đồ thị đáp ứng vận tốc của trục y thu được khi tăng MV từ 400 đến 800 o Tính toán tìm ra hàm truyền vòng vận tốc của trục x và trục y:
Từ đồ thị đáp ứng vận tốc K p , θ p , τ p của hai trục được thể hiện ở bảng sau (đơn vị thời gian là giây):
Bảng 6 13 Bảng đáp ứng vận tốc của hai trục
Trục x Step change 350 – 650 Step change 400 – 800 Trung bình
Trục y Step change 300 – 600 Step change 400 – 800 Trung bình
Từ bảng trên hàm truyền vận tốc của trục x và trục y được biểu diễn như sau:
0.5972s + 1 o Tìm thông số cho bộ điều khiển PI:
Sử dụng bốn phương pháp đã được nêu ở phần cơ sở lý thuyết là Ziegler-Nichols
1, IMC, Direct Synthesis, Chen & Seborg ta có bảng thông số K c , K i của bộ điều khiển theo các phương pháp như sau:
Bảng 6 14 Bảng thông số tính toán PID của hai trục
• Tiến hành mô phỏng MATLAB để tìm ra bộ thông số tối ưu:
Sơ đồ mô phỏng trục x:
Sơ đồ 6 16 Sơ đồ mô phỏng theo trục x cho vòng vận tốc
Sơ đồ mô phỏng trục y:
Sơ đồ 6 17 Sơ đồ mô phỏng theo trục y cho vòng vận tốc Đồ thị kết quả mô phỏng đáp ứng trục x với setpoint 0, thời gian mô phỏng là 5 giây:
Đồ thị kết quả mô phỏng cho thấy phản ứng của trục x và trục y với setpoint 0 trong vòng vận tốc, thời gian mô phỏng được thiết lập là 1 giây.
Sơ đồ 6 19 Đồ thị mô phỏng đáp ứng trục y cho vòng vận tốc
Phân tích đồ thị cho thấy phương pháp Z-N1 và C&S có độ vọt lố cao không ổn định, trong khi phương pháp IMC lại có thời gian xác lập chậm Do đó, cần lựa chọn thông số phù hợp theo phương pháp này.
DS để làm thông số cho bộ điều khiển PI của vòng vận tốc o Tìm thống số điều khiển cho vòng vị trí:
Sử dụng Matlab để mô phỏng cả vòng vận tốc và vị trí như sau, với thông số điều khiển của vòng vận tốc đã tìm được ở bước trên
Sơ đồ mô phỏng trục x:
Sơ đồ 6 20 Sơ đồ mô phỏng theo trục x cho vòng vị trí
Sơ đồ mô phỏng trục y:
Sơ đồ 6 21 Sơ đồ mô phỏng theo trục y cho vòng vị trí
Sử dụng Matlab mô phỏng nhiều lần thu được thông số điều khiển vòng vị trí của trục x:
Kp = 97.1, của trục y: 80.2 Đồ thị kết quả mô phỏng đáp ứng vận tốc và vị trí của trục x với setpoint vị trí là 50 vòng:
Sơ đồ 6 22 Đồ thị kết quả mô phỏng đáp ứng vận tốc của trục x
Sơ đồ 6.23 trình bày đồ thị kết quả mô phỏng phản ứng vị trí của trục x, cùng với đồ thị mô phỏng phản ứng vận tốc và vị trí của trục y, trong đó setpoint vị trí được đặt ở mức 50 vòng.
Sơ đồ 6 24 Đồ thị kết quả mô phỏng đáp ứng vận tốc của trục y
Sơ đồ 6 25 Đồ thị kết quả mô phỏng đáp ứng vị trí của trục y
CHƯƠNG TRÌNH TÌM ĐƯỜNG ĐI CHO ROBOT
Phần cứng
Chương trình điều phối hoạt động của robot sẽ được chạy trên máy chủ với yêu cầu phần cứng mạnh mẽ Thay vì tìm kiếm phần cứng riêng biệt tốn kém, nhóm quyết định sử dụng laptop cá nhân để điều khiển trực tiếp Máy tính sẽ kết nối qua giao thức MQTT tới Raspberry Pi 3, vi điều khiển trung tâm của robot.
Nhiệm vụ
Người dùng nhập tên thuốc và nhấn nút “Tìm kiếm” để chương trình tìm thông tin trong cơ sở dữ liệu về vị trí và số lượng thuốc Sau khi kiểm tra thông tin, người dùng quyết định có lấy hàng hay không Nếu quyết định lấy hàng, họ sẽ nhấn nút “Thực thi” để bắt đầu quy trình Chương trình sẽ tạo đường đi cho robot dựa trên vị trí hiện tại của robot, vị trí thùng hàng và vị trí cổng giao hàng, sử dụng thuật toán CBS để tính toán Kết quả sẽ là chuỗi dữ liệu bao gồm đường đi của robot và vị trí thùng hàng trên lưới, sau đó được gửi qua MQTT đến bộ xử lý của robot để thực hiện vận hành.
Xây dựng
7.3.1 Xây dựng chương trình giao diện và thuật toán
Giao diện người dùng bao gồm những thành phần sau:
- Label “Nhập tên thuốc”: Dùng để nhập Tên thuốc cần tìm khiếm trong nhà kho
Khi nhấn nút "Tìm kiếm", chương trình sẽ kết nối với cơ sở dữ liệu của hệ thống để tìm kiếm tên thuốc theo yêu cầu, sau đó hiển thị kết quả về vị trí và số lượng trên giao diện.
- Nút “Thực thi”: Khi bấm nút này, chương trình sẽ thực hiện tính toán và gửi lệnh thực hiện nhiệm vụ cho robot
Chương trình Giao diện sẽ thực hiện theo trình tự của lưu đồ sau
Trong giai đoạn khởi tạo của chương trình, bao gồm MQTT Init, Firebase Init và GUI Init, các tài nguyên cần thiết sẽ được chuẩn bị để đảm bảo quá trình thực thi diễn ra suôn sẻ Các bước này đóng vai trò quan trọng trong việc thiết lập môi trường hoạt động cho chương trình.
MQTT Init thiết lập kết nối MQTT cho máy chủ, cho phép thực hiện quá trình xác định vị trí của robot trên khung lưới lập phương Kết quả của quá trình này được lưu vào biến start_found, phản ánh vị trí hiện tại của robot.
- Firebase Init: Kết nối đến Cơ sở dữ liệu cần tìm trên Firebase Ở đây cụ thể là Cơ sở dữ liệu Autostore
- GUI Init: Tạo giao diện
Và lưu đồ sau đây sẽ là các bước thực hiện
Sơ đồ 7 2 Lưu đồ các Hàm con Init ban đầu
Thuật toán tìm đường CBS bắt đầu bằng việc sử dụng khung lưới lập phương để mô hình hóa chuyển động của robot trong môi trường Khung lưới này được chuyển đổi thành bản đồ lưới với các đặc điểm hình học đơn giản hóa, trong đó các thanh ray được biểu thị bằng màu đen và các ô chứa hàng bằng màu trắng Khi khung lưới thực tế được chuyển đổi, bài toán lập kế hoạch đường đi của robot được đơn giản hóa thành bài toán tối ưu hóa đường đi từ điểm bắt đầu đến điểm mục tiêu Để quản lý vị trí của từng ô trong lưới, nhóm quy định vị trí dưới dạng [m, n], với m và n lần lượt là kích thước hàng và cột trong khung lưới Các bước cụ thể bao gồm thiết lập tọa độ phẳng hình chữ nhật xOy, chọn ô phía dưới bên trái của khung lưới làm gốc tọa độ.
Hình 7 1 Hình ảnh khung lưới lập phương thực tế
Hình 7 2 Khung lưới lập phương được bản đồ hóa
Trong quá trình tính toán đường đi cho robot, chương trình sẽ thực thi một file Python có tên là CBS, là thuật toán CBS được phát triển dựa trên các lý thuyết liên quan Thuật toán này sẽ được thực hiện theo trình tự đã được xác định.
▪ Bản đồ: G = (V, E), trong đó V là tập hợp các ô (cells) trên bản đồ và E là tập hợp các cạnh (edges) giữa các ô kề nhau
▪ Danh sách các tác nhân: A = {A₁, A₂, , Aₙ}, trong đó Aᵢ là tác nhân thứ i
▪ Hàm chi phí giữa các ô: cost (v, u), trong đó v và u là hai ô kề nhau trên bản đồ
Hàm tìm kiếm cấp thấp A*:
▪ Input: Tác nhân Aᵢ, ô đầu tiên start, ô đích goal
▪ Output: Đường đi tốt nhất từ start đến goal cho tác nhân Aᵢ
• Khởi tạo cây tìm kiếm rỗng
• Khởi tạo hàng đợi ưu tiên OPEN rỗng
• Khởi tạo tập hợp đường đi đã khám phá (paths) rỗng
2 Đặt s là một nút mới với state là start và cost là 0
3 Đặt g là một nút mới với state là goal và cost là vô cùng
4 Thêm s vào hàng đợi ưu tiên OPEN
5 Trong khi hàng đợi ưu tiên OPEN không rỗng:
• Lấy nút hiện tại cur từ hàng đợi ưu tiên OPEN với f[cur] nhỏ nhất
• Nếu cur là g: o Trả về đường đi tốt nhất từ s đến cur
Duyệt qua các ô kề của cur, đặt next là một nút mới với trạng thái là ô kề và chi phí là cost(cur, next) Nếu next đã tồn tại trong paths, cần bỏ qua Tính toán g[next] bằng cách cộng g[cur] với cost(cur, next).
104 o Nếu next không tồn tại trong hàng đợi ưu tiên OPEN, hoặc g[next] < g[next trong OPEN]:
- Nếu next không tồn tại trong hàng đợi ưu tiên OPEN, thêm next vào hàng đợi ưu tiên OPEN
- Ngược lại, cập nhật f[next] trong hàng đợi ưu tiên OPEN
6 Nếu không tìm thấy đường đi, trả về không tìm thấy
Thuật toán này khi được đưa lên lập trình sẽ được giải thích bằng lưu đồ phía dưới
Sơ đồ 7 3 Lưu đồ Hàm con Thuật toán CBS
Thuật toán CBS sử dụng thuật toán tìm kiếm A* cấp thấp, một thuật toán độc lập cần được phát triển trong một file Python riêng biệt Trong quá trình hoạt động của CBS, thuật toán A* sẽ được gọi khi cần thiết để thực hiện các tìm kiếm hiệu quả.
Sơ đồ 7 4 Lưu đồ Hàm con Thuật toán A
Trong thuật toán trên, hàm heuristic được tính bằng khoảng cách Manhattan (Manhattan distance) và hàm có công thức như sau:
▪ 𝑥 𝑐 , 𝑦 𝑐 lần lượt là vị trí trên khung lưới hiện tại của nút (robot)
▪ 𝑥 𝑔 , 𝑦 𝑔 lần lượt là vị trí trên khung lưới của đích đến
• Mô phỏng thuật toán CBS
Do hạn chế về kinh phí và thời gian, nhóm không thể chế tạo nhiều robot để chứng minh chương trình tính toán đường đi cho các mô hình có hơn 2 robot Thay vào đó, nhóm quyết định thực hiện mô phỏng nhằm chứng minh khả năng vận hành của chương trình tính toán đường đi trên nhiều robot đồng thời trong một khung lưới lập phương Hình mô phỏng minh họa cho khả năng này.
- Hình tròn: Đại diện cho robot
- Hình Vuông: Đại diện cho thùng hàng Số trên thùng tương ứng với số trên robot
- Dấu X: Đại diện cho đích đến Màu của đích đến tương ứng với màu của thùng hàng
- Tên khay: Chứa vị trí của khay theo chiều cao, có dạng “Khay [Số]”
- PORT: Cổng đưa và nhận thùng hàng
- Đường kẻ: Đại diện cho đường đi của robot Màu của đường kẻ đến tương ứng với màu của robot o Thuật toán mô phỏng trên lưới 12x12 ô với 5 robot:
Hình 7 3 Mô phỏng CBS trên lưới 12x12 với 5 robot tại thời điểm bắt đầu
Hình 7 4 Mô phỏng CBS trên lưới 12x12 với 5 robot tại thời điểm robot tới điểm gắp thả thùng
Hình 7 5 Mô phỏng CBS trên lưới 12x12 với 5 robot tại thời điểm robot tới đích đến cuối cùng o Thuật toán mô phỏng trên lưới 20x20 ô với 15 robot:
Hình 7 6 Mô phỏng CBS trên lưới 20x20 với 15 robot tại thời điểm bắt đầu
Hình 7 7 Mô phỏng CBS trên lưới 20x20 với 15 robot tại thời điểm robot tới điểm gắp thả thùng
Hình 7 8 Mô phỏng CBS trên lưới 20x20 với 15 robot tại thời điểm robot tới đích đến cuối cùng o Thuật toán mô phỏng trên lưới 25x25 ô với 20 robot:
Hình 7 9 Mô phỏng CBS trên lưới 25x25 với 20 robot tại thời điểm bắt đầu
Hình 7 10 Mô phỏng CBS trên lưới 25x25 với 20 robot tại thời điểm robot tới điểm gắp thả thùng
Hình 7 11 Mô phỏng CBS trên lưới 25x25 với 20 robot tại thời điểm robot tới đích đến cuối cùng
7.3.2 Xây dựng Chương trình Quản lý nhà kho (Chương trình phụ)
Chương trình này cho phép người dùng theo dõi hệ thống kho bãi một cách trực quan thông qua đồ thị 3D của Matplotlib, trong đó các tên thuốc khác nhau được biểu diễn rõ ràng.
Các màu sắc khác nhau biểu thị số lượng hàng hóa khác nhau thông qua các cấp độ hiển thị Các đường kẻ in đậm phía trên tượng trưng cho các đường ray của robot, trong khi kích thước của lưới sẽ được hiển thị và phân chia theo thang đo.
Xây dựng đồ thị 3D của nhà kho giúp hiển thị trực quan và đơn giản về không gian lưu trữ Chương trình thực hiện việc này qua các bước tuần tự để tạo ra hình ảnh rõ ràng và dễ hiểu.
Sơ đồ 7 5 Lưu đồ Chương trình Quản lý nhà kho
KẾT QUẢ VÀ ĐÁNH GIÁ
Kết quả đạt được
8.1.1 Kết quả thiết kế ban đầu
Hình 8 1 Thiết kế robot ban đầu
Hình 8 2 Thiết kế cơ cấu nâng hạ ban đầu
Hình 8 3 Thiết kế cụm cơ cấu kẹp giữ thùng ban đầu
8.1.2 Kết quả thiết kế sau khi đánh giá và chỉnh sửa
Hình 8 4 Thiết kế cơ cấu nâng hạ sau khi chỉnh sửa
Hình 8 5 Thiết kế cơ cấu kẹp thùng sau khi chỉnh sửa
Hình 8 6 Thiết kế cơ cấu nâng hạ bánh xe sau khi chỉnh sửa
Hình 8 7 Thiết kế robot sau khi chỉnh sửa
Bảng 7 1 Thông số sản phẩm
Khối lượng máy khi chưa có hàng 35 kg
Khối lượng máy khi có hàng 38 kg
Kích thước máy (Dài x Rộng x Cao) 470 mm x 370 mm x 485 mm Tốc độ di chuyển tối đa Vmax 1 (m/s)
Chế độ làm việc 2 chế độ: Nhận hàng và Lấy hàng
Vật liệu khung Nhôm định hình, thép tấm
Kích thước (Dài x Rộng x Cao) 2 x 3 x 2 ô
Khối lượng khung Khoảng 7kg
Chương trình, phần mềm điều khiển
Giao diện chương trình tính toán đường đi cho robot
Chương trình điều khiển cho robot Hoàn thành
Chương trình Quản lý nhà kho Hoàn thành
8.1.4 Kết quả thực nghiệm bộ thông số điều khiển PID Đồ thị kết quả trục x của xe chạy không tải trong điều kiện bánh xe không tiếp xúc với ray của khung lưới lập phương với setpoint vị trí là 50 vòng:
Hình 8 8 Đồ thị vận tốc của trục x của xe chạy không tải
Đồ thị vị trí của trục x và trục y của xe chạy không tải cho thấy sự chuyển động trong điều kiện bánh xe không tiếp xúc với rây, với setpoint vị trí là 20 vòng.
Hình 8 10 Đồ thị vận tốc của trục y của xe chạy không tải
Đồ thị vị trí của trục y của xe chạy không tải và kết quả trục x của xe chạy có tải cho thấy ảnh hưởng của điều kiện tiếp xúc giữa bánh xe và rây, với setpoint vị trí là 20 vòng.
Hình 8 12 Đồ thị vận tốc của trục x của xe chạy có tải
Đồ thị vị trí của trục x và trục y của xe chạy có tải cho thấy sự tiếp xúc giữa bánh xe và rãnh trong điều kiện setpoint vị trí là 10 vòng Kết quả thể hiện rõ sự ổn định và hiệu suất của xe khi hoạt động trên đường ray.
Hình 8 14 Đồ thị vận tốc của trục y của xe chạy có tải
Hình 8 15 Đồ thị vị trí của trục y của xe chạy có tải
8.1.5 Kết quả chương trình Giao diện và Cơ sở dữ liệu
• Giao diện của chương trình khi tìm thấy số lượng
Hình 8 16 Giao diện của chương trình khi tìm thấy số lượng
• Giao diện của chương trình khi không tìm thấy số lượng
Hình 8 17 Giao diện của chương trình khi không tìm thấy số lượng
• Giao diện của chương trình khi Đang thực thi
Hình 8 18 Giao diện của chương trình khi Đang thực thi
• Giao diện của chương trình khi Thực thi xong
Hình 8 19 Giao diện của chương trình khi Thực thi xong
• Các cơ sở dữ liệu đã xây dựng
Hình 8 20 Các cơ sở dữ liệu đã được xây dựng trên Firebase
8.1.6 Kết quả chương trình Quản lý nhà kho
Các số liệu về Tên và Số lượng trong các đồ thị dưới đây được tạo ngẫu nhiên nhằm mô phỏng quy mô lớn hơn của kho, giúp đáp ứng linh hoạt nhu cầu thực tế bên ngoài Đồ thị kho có kích thước 5x5x5 (Dài x Rộng x Cao).
Hình 8 21 Đồ thị nhà kho với kích thước (Dài x Rộng x Cao) là 5x5x5 o Đồ thị nhà kho với kích thước (Dài x Rộng x Cao) là 10x10x10.
Những vấn đề đã khắc phục
Hình 8 22 Đồ thị nhà kho với kích thước (Dài x Rộng x Cao) là 10x10x10
8.2 Những vấn đề đã khắc phục
8.2.1 Cơ cấu nâng hạ bị kẹt giữa hành trình
Góc nghiêng của rãnh trượt cho cơ cấu nâng hạ lớn nên không tối ưu được lực mà động cơ cung cấp dẫn tới trượt đai
Thay rãnh trượt có góc nghiêng nhỏ hơn
8.2.2 RFID không đọc được giá trị
RFID Module đặt quá xa thẻ RFID nên dẫn tới tin hiệu bị yếu không đọc được
Thiết kế và đặt lại vị trí của thẻ và module RFID cho phù hợp với khoảng cách đọc được
8.2.3 Cơ cấu kẹp thùng không kẹp được thùng
Cơ cấu dẫn truyền lực từ servo và cơ cấu kẹp không hoạt động tốt
Thiết kế và lắp đặt lại các cơ cấu này
8.2.4 Thùng khi di chuyển xa dễ bị lắc lư
Tốc độ xe khá cao và có khoảng hở giữ cơ cấu kẹp thùng và khung xe
Thiết kế và lắp đặt bộ phận giữ ổn định cơ cấu kẹp thùng khi di chuyển.
Đánh giá
- Robot có thể hoạt động ổn định, đáng tin cậy, thực hiện nhiều tác vụ hiệu quả và chính xác
- Thuật toán tìm kiếm đường đi có thể chạy tốt và luôn tính toán được đường đi cho robot
- Khung lưới vững chắc, có thể làm tốt nhiệm vụ đỡ cho robot vận hành phía trên.
Hạn chế
Từ kết quả thu được, nhóm nhận thấy đề tài còn nhiều mặt hạn chế như sau:
- Robot chỉ dùng được một loại thùng chỉ chứa cùng một khối lượng hàng hóa
- Khung lưới lập phương tháo lắp khá tốn thời gian
- Robot chạy thời gian lâu sẽ có sự sai lệch về vị trí
- Pin vẫn chưa đủ đáp ứng để hoạt động lâu dài
- Bộ phận nâng hạ bánh xe hoạt động lâu dài sẽ bị dãn dây đai gây ra sai lệch vị trí
- Thuật toán tìm kiếm đường đi vẫn chưa thực sự tối ưu, nhiều lần robot phải chuyển trục làm tốn thời gian cũng như năng lượng
- Robot chưa thể vận hành với yêu cầu thời gian nghiêm ngặt để tránh sự sai lệch cộng dồn của hệ thống
Nhóm cơ bản đã hoàn thành các mục tiêu đề ra ban đầu, bao gồm việc xây dựng hệ thống cơ khí cho robot, khung lưới lập phương, hệ thống điều khiển, quản lý kho, giao diện người dùng và thuật toán tìm đường cho robot Sau nhiều lần cải tiến, hệ thống cơ khí và các chương trình điều khiển hiện tại đã hoạt động ổn định, đáp ứng đầy đủ tiêu chí ban đầu.
Ngoài những thành tựu đạt được, nhóm có những đề xuất, kiến nghị khác để giúp hoạn thiện hơn hệ thống sau này:
- Phát triển nhiều dòng robot hơn cho những loại hàng hóa khác nhau
- Xây dựng các cổng xuất và nhập hàng chuyên biệt để tối ưu việc xuất và nhập hàng hóa
- Thiết kế lại khung lưới lập phương để có thể lắp ráp nhanh và tiện hơn
- Trang bị hệ thống giám sát camera trong kho để theo dõi các robot làm việc, phát hiện và giải quyết sự cố khi cần thiết
- Phát triển chương trình thuật toán phân chia hàng hóa được đặt vào kho để việc xuất nhập trở nên tối ưu nhất
- Tăng kích thước thùng hàng để chứa được nhiều hàng hóa hơn
Để đảm bảo an toàn và hiệu quả cho robot, cần bổ sung các chương trình cảnh báo và xử lý khi phát hiện va chạm Điều này giúp phòng ngừa tình huống khi thuật toán của máy chủ hoặc robot không thực hiện theo kế hoạch đã định sẵn.
- Tối ưu các thông số điều khiển của robot để robot hoạt động với hiệu suất cao hơn
- Thiết kế bổ sung thêm giao diện cần thiết và chuyên biệt cho việc xuất nhập hàng đòi hỏi nhiều thông số hơn
Thiết kế hệ thống trạm sạc tự động cho robot cho phép robot tự động sạc khi năng lượng gần cạn kiệt Hệ thống này cũng chuyển đổi từ ắc quy sang pin lithium, giúp giảm khối lượng và tăng dung lượng pin, nâng cao hiệu suất hoạt động của robot.
Tối ưu hóa thuật toán tìm kiếm đường đi cho robot là rất quan trọng, khi cần cân nhắc nhiều yếu tố như thời gian tìm kiếm, thời gian thực thi, động lực học của robot và năng lượng tiêu thụ Việc này không chỉ giúp tiết kiệm thời gian mà còn giảm chi phí cho hệ thống, nâng cao hiệu quả hoạt động của robot.