Cấu trúc của hệ thống gồm 3 thành phần được cài đặt trên 3 nền tảng phần cứng khác nhau:
- RobotLego NXT: Đóng vai trò điều khiển chuyển động cơ bản: Tiến, lùi, quay. Robot còn được trang bị thêm sensor Ultrasonic để đo khoảng cách đến vật cản. PC Hệ điều hành: Windows Nhiệm vụ: - Client giám sát - Remote
Giao tiếp: Wifi
SMART PHONE Hệ điều hành: Android Nhiệm vụ: - Đo góc (Cảm biến từ trường) - Thực thi các thuật toán SLAM - Điều khiển LEGONXT - Http server
Giao tiếp: Bluetooth, Wifi ROBOT LEGO NXT Hệ điều hành: LEJOS Nhiệm vụ: -Chuyển động -Đo khoảng cách (Cảm biến Utrasonic)
- Smart phone: Được gắn trên robot để điều khiển các hoạt động của robot, thực hiện thuật toán SLAM. Cảm biến từ trường tích hợp trong smartphone được sử dụng như la bàn để đo góc xoay của robot. Ngoài ra smartphone còn đóng vai trò server để gửi nhận trạng thái robot cho các máy trạm.
- Client PC: Chương trình phía client nhận dữ liệu bản đồ từ robot và hiển thị lên giao diện người dùng, ngoài ra người sử dụng máy client còn có thể điều khiển được robot bằng các lệnh đơn giản.
Ngôn ngữ sử dụng: Java, C#. Chương trình chạy trên Lego và Smartphone được viết bằng ngôn ngữ Java. Phần mềm giám sát chạy trên nền tảng Windows được viết bằng C#.NET để tận dụng ưu thế về xử lý giao diện, vẽ đồ họa.
3.2. Robot Lego NXT 3.2.1. Giới thiệu
Lego Mindstorms NXT là một bộ robot lập trình được phát hành bởi Lego vào cuối tháng 7 năm 2006. Trong đó NXT đóng vai trò bộ não của robot Mindstorms là một máy tính thông minh kiểm soát các mảnh ghép Lego cho phép một robot Mindstorms trở nên sống động và thực hiện các hoạt động khác nhau.