12-09-2018 10:23 PM
Hello Community,
This is my first post and I am very new to robotics, LabVIEW, and algorithm creation in general. The project summary is to construct a differential wheel robot that can autonomously reach 7 waypoints each with a predetermined location. The waypoints are black hockey pucks. There will be randomized obstacles in the form of orange safety cones that the robot must avoid. The robot is a LEGO Mindstorm NXT kit.
These are my tasks for this project:
I want the robot to follow one continuous smooth trajectory to cover all waypoints in a predefined order. The robot can utilize a sonar and photosensor for navigation. How I am approaching this project is to implement a state space trajectory loop, a path planning loop, and an object avoidance loop. Again, I am an absolute beginner and any tips in the right direction are extremely appreciated. Is my approach correct so far?
12-11-2018 08:51 AM
Hi SwiftDrKenny,
Could you elaborate on your approach? Are you planning on having three loops running simultaneously or are these different states of your software?
If these loops are just different states to direct the robot's path, I would recommend looking into State Machine Architecture. Below are links explaining what state machine architecture is and how to implement it in LabVIEW.
Application Design Patterns: State Machines
David F.
Applications Engineering
National Instruments
12-11-2018 11:21 AM
Hi David,
Thank you for the reply. Let me ask you, do you recommend a State Machine Architecture over three simultaneous loops? Given my limited knowledge I could only conceptualize three simultaneous loops at first. In your experience is open loop path planning doomed to fail?
Are my objectives clear enough/do they seem sufficient to complete the task?
12-12-2018 03:16 PM
Hi SwiftDrKenny,
Let me ask you, do you recommend a State Machine Architecture over three simultaneous loops?
Let me ask you a few questions first.
1. Do you need the loops to run simultaneously?
2. Do the loops need to share data?
3. What do you intend the State Space Trajectory loop to do?
In your experience is open loop path planning doomed to fail?
In general, some sort of feedback is needed. Otherwise, you may not achieve the desired result of your action.
12-14-2018 12:38 PM
Those are all very good questions. I'll be honest and say I don't have confident answers.
I have attached an image of what the robot is intended to do. I simply want to hardcode a list of waypoints with known coordinates. I want the robot to travel to each set of coordinates in a set order while simultaneously running an object avoidance algorithm. The objects have known dimensions so the radius of the avoidance maneuver can be constant. I have a light sensor, ultrasonic sensor, and wheel encoders/rotation sensor at my disposal. State space is not a requirement, just something I wanted to explore. Is there a simpler way to program a mapped path and send the robot to each coordinate?
Thank you so much for your assistance.
12-17-2018 03:10 AM
My question will be, is there a way for your robot to know it's actual position once it derive from its original trajectory?
Benoit