ShapeLab / SwarmUI

Necessary material to build and use Zooids to create Swarm User Interfaces
http://shape.stanford.edu/research/swarm/
Creative Commons Attribution Share Alike 4.0 International
1.52k stars 246 forks source link

Can someone explain how the mini robots understands its location #10

Open helxsz opened 7 years ago

helxsz commented 7 years ago

a sequence of gray-coded patterns are projected onto a flat surface. Then, the photodiodes on the robot independently decodes into a location within the projected area.

If I am right, the projector just sends out a gray-coded pattern message (a map), it doesn't know the coordinates of the robots and it doesn't communicate with other parts . And the mini bots will use the photodiodes to get the pattern and decode the pattern to know where it is in the projected area (map). When it is received the command from the receiver, it will compare with the goal and its current coordinate decoded from the projector to adjust its tracks.

How the gray-coded pattern is generated and how mini bots can use photodiode to sense its location, is there any speciality about the photodiode on the bots?

newsoftxmc commented 7 years ago

What I get like this(just for reference,error maybe): 1)DLP projects coded picture on the surface; for every dot in the picture there is a (x,y),represent with different gray level(?I guess so.) for any robot in the range of picture, there is a (x,y) for it, that is the position for this robot. 2)The diode on the top of robot decodes the gray-coded light and gets the (x,y); Now, robot knows where it is. And robot send this (x,y) to server by radio wave, server will know too. 3)Server send order to robot by radio wave, e.g. new position to go; Robot moves to new position; While moving, the diode will keep decoding the gray-coded light it received, so,the server and robot will keeping be aware of where it is. So, server will guide the robots until they get the target.

My understands.

helxsz commented 7 years ago

@newsoftxmc Thanks.

watershade commented 6 years ago

see here to find how : https://github.com/ShapeLab/SwarmUI/tree/master/Hardware/Projector%20Tracking%20Setup