
praetoras
This is my first post here, and I don't have any EZ-Robot parts yet. However, I'm expecting I'll want to get some pretty soon, and I wanted to pick the brains of all you fine folks as to the project I have in mind.
First, my robots purpose: Obviously, to have fun. But basically, a "pet." I'm moving to an apartment, and I honestly can't afford to keep a cat/dog/lizard/kangaroo/pony (etc.). I figured I'd get a robot instead. This affects the features that I'm wanting from it.
Autonomy. While I'd like to be able to give the robot commands, I want it to be primarily autonomous, to be curious, to explore and learn its environment and be able to adapt to changing obstacles (like moved furniture and whatnot. Also, I'd like it to be able to navigate obstacles new or old, to its charging station, and be able to recharge itself whenever its battery gets low. On that note, I'd also like to give it two batteries, but only have it use one, and switch to the other when the first reports rapid drain (basically the battery is old and needs to be replaced).
Camera. I'd like to give it a higher-res camera, preferably in the megapixels. I was told that the higher res, the slower the robot would operate due to the processing time required to run its software on the data, and that's fine, but I was wondering if it'd be possible to upgrade the robot's CPU, or perhaps use a RaspberryPi as the processing unit.
Security. While it might technically be a bit impractical, I'd love to integrate my robot into a home-security system. If the system detects an intrusion, the robot would log the event, go check it out and (using face recognition) either disable the alarm if it's someone it recognizes, or report it, along with pictures of the intrusion. If I were really brave, I'd even like to give it a little bottle of pepper-spray it could deploy, but that wouldn't be too fun to debug. Ideally, I'd be able to give it commands to store the face of someone I want it to recognize as a "friend" (like my landlord) so it doesn't go all nutso if he needs to check something when I'm not there.
Personality. This is a big one for me. I'd like to give it a psuedo-personality, where it can "make choices" based on a personality seed. It might like objects of a certain color, it might like playing with certain shapes, I'd like it to try and interact with objects it doesn't recognize to find out what it can do with them. Object recognition, I know, would take more data, but I've seen it done. That would really give the robot something more to "do" than simply wander around aimlessly and recharge when it needs to. It would be even better if it could store the data of what it achieved with the object and bring it up at a later date when trying to solve obstacle problems.
Space Recognition. I'd like the robot to be able to have a sense of the world around it. This would probably be done through an ultrasonic sensor, but rather than sweeping back and forth, I'd like it to be "attention-oriented." Basically, if the robot is "looking" at an object it sees in its camera, it can scan it with the ultasonic sensor to gather data about it. Normal obstacle-avoidance scanning could be an option of course, but having them work in tandem and giving the robot a sense of depth perception would be grand.
So, someone tell me. Is what I'm suggesting a pipe-dream, or is all of that actually possible with this system? If my head is in the clouds, don't be afraid to tell me, I can handle it. But if it's something feasible, it'll be fun to shoot for.
Welcome @praetoras,
I'm new here too, you'll find a lot of good advice on these forum's as somebodies always willing to help
I'm sure a lot of what you want is feasible although it will take a lot of time, work and money (I'm sure you already know that though)... browse through the various project's and you'll see that people on here take there robots above and beyond. There's alot of members using different software together with EZ-B who are having great success, from robot staircases to full automnous security bots.
As for the camera, I've read on here somewhere that the resolution will change to a set framerate and resolution when running it with EZ-B although I'm sure a more experienced member will correct me if I'm wrong? Not sure about implomenting the raspberry pi although I would be interested to hear if thats possible myself?
Once again welcome and good luck with your robot building.
Ken.
Welcome!
2)By processing unit, do you mean the computer processing the camera? that could work.
3)security could be a little easier. face recognition in ARC cannot recognize individual faces, rather it tracks any face it sees. Plenty people could help you with this.
4)If you find it in the right file type(not sure what ARC can use for tracking), it could work.
5)That is definetly a possibility. Maybe have the camera look at something, and then have the ping sensor on a servo move to look at that same spot. 3d mapping hasent been used in ARC so that part could be a little harder.
Welcome to the community. This is a great bunch of folks that will be happy to help you. I think everything you outlined is very feasible for the EZ Board.
Ping Roam would need some adapting for it to simulate being curious but it could do it. However it's probably more suited for point 5. Autonomous recharging is something that's been mentioned a few times and still in discussions with many different methods in the cooking pot.
ARC can use any camera that shows up in Windows. Depending on what its for you may not need high def. The RasPi cannot be used with the EZ-B, it just doesn't have the power required. You may be able to make it work along side, by putting some functions on to the Pi and "importing" into ARC though but as far as I'm aware this hasn't been done yet.
Face recognition for multiple faces and identification would need third party software which communicates with ARC. @Toymaker has an example of his face recognition which communicates with ARC. I have (undocumented) my Jarvis system which can detect zones of intrusion and send this to ARC which, eventually will have the robot move to the zone to investigate. This is also done by third party software (ZoneMinder).
Personality is pretty straight forward however you will need to either pick the favourite colours, shapes etc. yourself or run a one time script for it to choose. A simple method is by using random numbers;
You can then use the controls for colour tracking etc. to be drawn towards specific colours, be repulsed by others etc.
It's not a pipe dream but some of it does need a lot of work, some needs figuring out and some is ready to go.
praetoras glad to read your first thread. Hope to read of your robotic efforts for many moons. Creativity is rampant in this forum. Welcome !
I like this guy.
Welcome!
@troy true lol , robo pets only eat watts. Nom nom nom
Welcome to the community! You have cool ideas for how you can use a robot. Translation from what that means to application is completely at your fingertips. There are many ways a robot can watch for security purposes. To get what you want you will have lots of trial and error but the ez robot tools man it 10 times easier than arduino uno / max or raspberry pi. Tue software and PC tether through WiFi really makes the big difference. Over 100 built in controls to start experimenting just a click away in ARC.
@praetoras - Welcome to the forum. This is a huge resource for knowledge. Let the fun begin.
@jstarne1 and @troy - robo pets don't make as big of a mess either.(depending on how you keep your work area that is I guess)