I have been looking into various systems for building a robotic system, and have been interested in both the ez-robot and Raspberry Pi. I have however, been having trouble finding any information on getting ez-robot to communicate with arduino. Is there a way to do this, since I’d like to give an operator control of the bot remotely using a computer. It looks like ez-robot is a much cheaper option, and I’d like to be able to switch it away of using the board at times, so it just uses on board systems if I go that rout.
I’m still new to building more complex robots, but have made small bots with pickaxe and arduino, trying to get into giving them the ability to listen to commands, speak and see.
Would it just be better to look into a Raspberry Pi 2 and some sort of network setup if I want to switch to remote control? Or is there a better option and I’m just a nube?
Wireless communication with robots is quite a challenge and how you do it is very much dependent on your skills and expectations.
Some builders want a “seamless” implementation such as provided by WiFi. For this you would build on top of the network infrastructure provided by the OS (Linux, ROS) and apply standard intra-task methods. The overhead in CPU cycles and memory dictates the remote node be something like a RPi and the host provide as user interface.
Advantages
Documented protocols
Prebuilt multi-vendor and platform solutions
Test using generic work stations
Built in error recovery
Disadvantages:
Cost - you do need more powerful CPU and memory
Power - those CPU features and speed consume electricity
Size
Other builders prefer the opposite extreme. Simple Arduino like remote with low power radio such as Bluetooth, RF69 or nRF24L01. These people need to build enough infrastructure to get a reasonably reliable communication and the host side interface for control.
Advantages:
Cost - nRF24L01 modules are under $3.00US
Size - smaller than Arduino Nano
Power - Under 100mw
Disadvantages:
More software to write
Very difficult to debug the first wireless transmission
Does not migrate easly to other host or robot platforms
In my experience, robot communications closely followsthe 90/10 rule. Any package that promises an “easy” solution probably does 90% of the job in the 10% of the time. Conversely, it will take 90% of the time to do the last 10% for anything outside the standard package.
Suggestions:
Pick a technology that fits you mentality, expectations, and budget.
Find someone either online (LMR) or local who has a common interest or existing project.
Refine your needs and post the details on this forum.
Really appreciate it. I’ve Really appreciate it. I’ve been debating on what to use, but ez-robot, as much as it’s been touted about, seems still pretty limited. Wanted to get only simple rc functions with maybe some feedback to the user in operator mode, and maybe expand in the future to give the robot something like an “animatronic puppet” mode. Otherwise, the robot listens to commands and should be able to have some sort of vision software, though vision is not fully necessary. Would you suggest I look at maybe how the mech warfare robots are made and try to research off of that? Or is there a simpler way? Thanks again for your reply!
I have to wonder if you are being a bit over optimistic with your ambitions. I definitely do not want to deter you from your dreams but most new comers start by:
Getting a CPU such as an Arduino to control 2 motors via a motor driver board.
Add a distance sensor (IR or Sonar) to help avoid bumping into things.
Find they can’t drive in a straight line so they add encoders and the associated software.
Along the way they encounter the pains and frustrations of working with low power batteries, limited memory, and slow CPU chips. They also tend to release the smoke from a few ICs just to make life interesting. Then they take stock of their technology and make adjustments.
In my opinion, wireless and vision are definitely not getting started topics unless they are your field of expertise and you want to apply them to robotics.
LMR has an extensive library of robotic projects. RobotShop and other online retailers have kits, components, tools, and tutorials geared towards helping you succeed (and buy their products).
I actually started a long I actually started a long time ago when I was little with the rcx from lego. You’re comment made me laugh because it reminded me when I would nearly max out the memory all the time. XD
Very used to messing with simple sensors, but really want to start pushing a lot more forward with voice interactions, and eventually vision. Even if the bot itself can’t see, I’d like to eventually relay what it sees to an operator.
I could just keep utilizing my Arduinos to control the bot and keep on using simple sensors like I usually do, but I wanted to add that control ability, and the ability to give commands. Let the robot hear what I want done (robot, recipe for pumpkin disaster soup! D:) and it does it. I also want to have the robot be able to switch to giving the user control directly over the machine. Could possibly hack some servos and use the pots to give me even more control, as I’ve seen done.
But this is where I’ve been having issues. Interfacing with the Arduino directly seems to be impossible with ez-robot software, which has implemented sound and vision. I have to run all servos and sensors it seems from ez-robot, or find some hack to get them to communicate.
Which brings me to the question I started with. Would this be possible, and with the scripting software, would it be viable? I’ve been researching it and playing with the software for a while, and aside from implementations of ezb being able to get data here and there from other things, it seems there’s no real way to get it to interact with an arduino unless I want to do something convoluted. Interested in using it, because I will be able to ease a bit more into voice without as much learning up front initially.
Is it somehow doable, and I just can’t find it, or is there really no way normally, and I’d probably have much better luck with another hardware and software for voice commands and remote control?
I think its pretty easy to communicate from Arduino to EZ-Robot controller, although I haven’t actually done it. I bought an E-Z Robot. When I was reading through the docs, I seem to remember that you can set up a couple pins on the EZ as a Tx/Rx. A lot of people have done it I believe. There are some E-Z Robot / Arduino based robots on this site as well.
Thanks so much for the info! Thanks so much for the info! I found 1 robot from 2011, but no insight on how the arduino was able to communicate. In my research, I’m finding that serial might be the way to go for ezb. If you know anyone and can point them my way, I’d appreciate it! Thanks again!
Arduinos are great for sensors and mechanics, but they aren’t suited for this. Pi 2s have the greatest number of resources and are cheap. There are other micros that could work. Note also the projects using Android devices.
Vision is a completely different matter. It is tough and not really satisfying. Try instead either a PIR, an IR rangefinder, ultrasonic range finder array. Kinect is barely doable. OpenCV doesn’t really get you there and needs more horsepower
Thank you very much! I have Thank you very much! I have looked into the links. I appreciate the time, as it’s helped me learn a bit more about what methods I might consider when building my current machine.