Hi, I was wandering if anyone has tried to have their robots work together to complet a task? An example would be one robot built to carry a hevy load, another robot that can unload the first and maybe one to visually monitor the others.My class project just turned into a two term class from a one term class. I'm planning to do just that, but do not know how program robots. I have two ez-b boards as of now, but I read you can have only five conected at a time. I thought about using my laptop and an old laptop I have so I could add five more to the mix and the system would have ten total. Is this even possible with the ez-b? To have them all work together? A friend who will help me with programing thinks I should go with arduino but I love how in a few weeks time with the ez-b I had a robot built and moving (also that is how I got the second term class added) but I don't fully understand what I'm doing yet.
I guess my question is when two or more ez-boards are conected to a laptop can they exchange information? Or another way to put it, can they react to each other if programed to do so? I very much want my laptop to be the hub that information is exchanged and sent back out to each ez-b.
I'm a design student and can build a robot all day long and twice on sunday, but stuggle with programing. I'm also the kind of person who jumps in without looking. So, I have a hexy that just came in, two wowwee roboquads, two robopets as well as a few others coming in soon. All ebay finds with a defect or two that made them cheap. I plan on using them as a base to my designs. Its cheaper and faster than starting form scratch. Any and all comments are welcome from that's crazy to that is never going to happen, I take it all in and go go with it, but if any can say as to how such a thing could be done I will be all ears.
I am aware of "swarm robotics" but not sure this is the same as I want to dictate to the robots what I want done through my laptop, but then they would work together to do it. It feels different because they would not make all the choices, just some. Example would be robot one is loaded and six inches from me (robot two) get ready to lift load off of robot one.
Thanks in advance for any comments,
Upgrade to ARC Pro
Get access to the latest features and updates with ARC Early Access edition. You'll have everything that's needed to unleash your robot's potential!
a) Using the HTTP Server
b) Using the EZ-Cloud Push/Pull variables
The second (b) hasn't come out yet. It is completed - except for the user interface. In most programming languages, you have the ability to define a variable as being Public or Private. That means, the variable is available within the entire program, or isolated part of the program....
ARC is pretty awesome - because we do something really cool. When you mark a variable as Public, that means it's public across the Internet. If you mark a variable as Private, that means it is available for your User Account on any ARC instance on the Internet.
That means your robots do not even need to be on the same computer, or in the same physical location. They merely need an internet connection
If you don't have an internet connection, the HTTP server will work great. You can execute EZ-Script commands, etc..
Wait a week or two for the EZ-Cloud Variables to be completed. Only the web interface is missing. The functionality works great. If you load ARC, look in the examples folder for Push/Pull variable example project.
However to get to your question, The current version of EZB boards (Ver 3) don't really exchange information with other EZB boards. They are all controlled independently from the ARC software on your laptop. Using the controls or scripts in ARC, the software on your laptop sends each board the information it needs to make the motors and servos move. Each board will send back info to ARC from any sensors or switches attached to it. ARC seamlessly threads all this together to make it appear the different board are working as one. My B9 has three EZB control boards installed and interacting with each other seamlessly. I have one on each level of the robot; the brain/bubble, torso, and down in the leg section. I didn't want to run control wire through twisting, bending and turning sections to motors and switches. Actually if you want to break it down I have three separate robots here that either act independently or with each other. I can have the bubble rise up, have the waist turn, his hips bend over, spin his sensor ears, rotate the radar back and forth and say something and lots more actions all at the same time, in sequence or by themselves. ARC even has a personality generator that will trigger scripts to make it appear he has a mind of his own. Here's a link to my project thread if your interested:
There's no way I could have done all this with one arduino let alone three. The programming in ARC is really easy and once you learn the basics of how the scripts and controls interact with other the rest falls in place quickly. The people on this forum always seem to be here to help if needed.
Stick with EZ Robots and you may just learn something along with the kids. Your all in for a fun and amazing ride.