Sweden
Asked — Edited

Telepresence

I have been building robots for a long time, PIC, Basic stamp, Arduino and even the Evolution Robotics ER1. And Always wanted to build a good robot that i could drive across my house and interact with my wife and kid while I'm on businesstrips.

So my suggestion to DJ is like this. Maybe some kind of webserver inside of ARC. Then you or your friends connect to the ARC and command the robot via webGUI. Much like the Rovio or spykee robots. But you get all the EZB goodies. And speech and visionrecognition would continue to work.

Then i really could scrap me Spykee for parts because it Always hits something and falls over when Im not at home(lack of intelligence and videolag).


ARC Pro

Upgrade to ARC Pro

ARC Pro is your passport to a world of endless possibilities in robot programming, waiting for you to explore.

PRO
Synthiam
#9  

The EZ-B doesn't shut down outputs when the connection is lost. If the Arduino is controlling the movement by listening to commands from the EZ-B, the arduino can also watch the bumper switches. This way, if there is a disconnection from ARC, the Arduino will stop the robot - without needing to power down the EZ-B.

#10  

Then I have to rewire the arduino to use serial connection to ezb and then make a script that stream serial data to the arduino. If the stream is lost motors stopp. Or is there another way to do it. Maybe program the arduino to work like a sabertooth.

PRO
Synthiam
#11  

Ah, okay so let me pitch this idea. This idea keeps the EZ-B always on, so that you can always connect to the camera or audio to "see what's up" or "ask for help":)

So here's what i recommend..

  1. Connect SaberTooth to EZ-B v4 for direction movement control

  2. Connect one of the Arduino's digital pins to a high amperage relay that provides power to the sabertooth. By default, the relay is ON

  3. Connect Arduino to monitor bumper stopper in a constant loop. When bumper stopper is triggered, disable relay. Disabling the relay will STOP the sabertooth in it's tracks because the relay is what provides power to the sabertooth.

  4. In the Arduino's "monitor bumper stopper loop", also add a check to receive a serial command from the EZ-B to "re-enable relay". This way, if you ever wish to STOP and RE-ENABLE the Sabertooth remotely, you can still do that from ARC by sending a serial command to the arduino.

This whole setup only needs...

  • 1 wire from ez-b to arduino
  • 1 wire from arduino to bumper switch
  • 1 wire from arduino to sabertooth relay
  • 7 lines of code on arduino

Voila! What do you think?:)

#12  

To re-affirm what @DJ said... if you do use a sabertooth make sure power to it is via a relay... The sabertooth continues to do what its last command told it to do... So if you issued a forward command and then lose wifi connection to the ezb, the robot would continue forward until the sabertooth either gets another command, hits something or as mentioned power is cut... Of course a different way to do it is you can have the ardunio control the sabertooth. The arduino would monitor the connection status of the ezb... If the ezb drops wifi and therefore communication to the arduino, the arduino issues a stop command to the sabertooth... This is a cool project by the way....

On second thought... I think DJ's method would be more elegant and efficient...

#13  

Its not a sabertooth in this robot. Its a custom Stepperdriver I built from leftovers from a 3d printer build. Its using an arduino nano and 2 pololu stepperdrivers. The code on the arduino makes it work like a regular H-bridge with pwm. It also uses that control in ARC.

My idea was to rewrite some of the code in the arduino to accept sabertooth commands from ARC via serial instead. Doing it this way I can use the sabertooth controller in ARC instead of writing my own.

And I will make DJ's relay thingy, but with dual relays. Because sometimes ezb looses connection with the server but remains on wifi. And I can´t reconnect without rebooting. Maybe a firewall issue also.