Pages: [1]   Go Down
Author Topic: vision in my robot  (Read 1108 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Full Member
***
Karma: 0
Posts: 122
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset



how I can do to have vision in my robot , I am building a robot explorer and I would like to have a web interface with the wifi shild and I can see where my robot goes.
Logged

Global Moderator
UK
Offline Offline
Brattain Member
*****
Karma: 302
Posts: 26293
I don't think you connected the grounds, Dave.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Put a separate wifi IP camera on the robot.
Logged

"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Belgium
Offline Offline
Edison Member
*
Karma: 68
Posts: 1919
Arduino rocks; but with my plugin it can fly rocking the world ;-)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Put a separate wifi IP camera on the robot.
exactly.
When you think of the whole picture there is another alternative. Much harder to setup (I would say: don't do so if you do not have the Linux/network/programming skills ) but lots easier to use.
Add a wireless router to your robot that is supported by a open linux (like open wrt). Hack the router to run Linux. Connect you Arduino to the router via the serial port.
Run your html on the router who sends and receives information from Arduino via the serial port.
You can then also add any ip cam (does not have to be wifi even-though having a wifi cam frees up bandwidth on the router) to your robot.
The biggest advantage is that you can program the router and the Arduino in such a way you can upload a sketch with the robot in action. (no need to connect any cables to the robot)
In general it is much easier to use and it comes in handy when you need to do a codefix and the robot is "in the field".
I have my robot set up this way and even-though I spend a lot of time to get it to work I'm very pleased I did so.
Best regards
Jantje

PS from a cost perspective a Arduino+router+wifi IP cam can be cheaper than Arduino+wifly+ wifi IP cam
Logged

Do not PM me a question unless you are prepared to pay for consultancy.
Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -

The Netherlands
Offline Offline
Edison Member
*
Karma: 50
Posts: 1662
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Wow great idea.
I have a WRT54GL serving as a network switch at the moment.
Jantjes idea is something to keep in mind for future use, thanks !
Logged

Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

Belgium
Offline Offline
Edison Member
*
Karma: 68
Posts: 1919
Arduino rocks; but with my plugin it can fly rocking the world ;-)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

MAS
I used a WRT54GL only with the serial mod (read: soldering 3 wires and connect to GND RX and TX of the Arduino)
I think the real coolness of the whole thing is how the parts play together.
Below is an image of the web page I use to set/read values. The cool thing about is that the page is generated based on data send by the Arduino sketch. The button "sink with Arduino" changes the HTML page to reflect the Arduino sketch.
Changing the values is worthless if they are not "saved" for the next run. Therefore I added a save functionality using EEPROM.

The only code that I needed to write to show the Power manager upper part is this
Code:
myDataFields[0].set("PowerManager", F("State"),0,(uint16_t*)&myState);
myDataFields[1].set(myDataFields[0].myClassName, F("StateName"),0,&myStateName);
myDataFields[2].set(myDataFields[0].myClassName, F("LoopDuration"),0,&myLoopDuration);
myDataFields[3].set(myDataFields[0].myClassName, F("needsRechargeLevel"),MOD_SAVE|MOD_WRITE,&myNeedsRechargeLevel);
myDataFields[4].set(myDataFields[0].myClassName, F("rechargedLevel"),MOD_SAVE|MOD_WRITE,&myRechargedLevel);
myDataFields[5].set(myDataFields[0].myClassName, F("fullyRechargedLevel"),MOD_SAVE|MOD_WRITE,&myFullyRechargedLevel);
myDataFields[6].set(myDataFields[0].myClassName, F("RechargePin"),0,&myRechargePin);
myDataFields[7].set(myDataFields[0].myClassName, F("LastNewStatus"),0,&myLastNewStatus);


myFields = myDataFields;
myNumFields = NUMFields;
myNumChildren = NUMChildren;
myDataChildren[0] = &myBatteryVoltage;
myDataChildren[1] = &myCharger1Voltage;
myDataChildren[2] = &myCharger2Voltage;
myChildren = myDataChildren;
I'll write some documentation on it when I have the energy.
On the bottom there is a link to the Admin page allowing to upload a new sketch.

Best regards
Jantje
Logged

Do not PM me a question unless you are prepared to pay for consultancy.
Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -

The Netherlands
Offline Offline
Edison Member
*
Karma: 50
Posts: 1662
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

LOL
I could use a MaaiRobot myself too, the green stuff outside is exploding at the moment.
But that'll take some time.
Got a lot to learn to get where you are, but still interesting stuff.
So i'll be that MaaiRobot (MowBot) myself next weekend i guess.
Logged

Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

0
Offline Offline
Tesla Member
***
Karma: 143
Posts: 9601
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Some old tinkering using a Netgear router and Ethernet shield for a bot test setup. If you use a ~$10 5100 Ethernet shield, the router does not need to be modified.

http://www.lynxmotion.net/viewtopic.php?f=20&t=6343
Logged

Consider the daffodil. And while you're doing that, I'll be over here, looking through your stuff.   smiley-cool

Phoenix, Arizona USA
Offline Offline
Faraday Member
**
Karma: 40
Posts: 5578
Where's the beer?
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

The button "sink with Arduino" changes the HTML page to reflect the Arduino sketch.

Jantje, you might want to change that to read "Sync with Arduino" (as in, "synchronize" - I realize english is not your primary language, btw).

Otherwise, people might think you mean for the robot to become a submersible (along with the Arduino or something)...

smiley-grin
Logged

I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.

Belgium
Offline Offline
Edison Member
*
Karma: 68
Posts: 1919
Arduino rocks; but with my plugin it can fly rocking the world ;-)
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@Zoomcat
My first prototype of the robot worked with a Ethernet shield and a netgear wifi router. This has however 3 disadvantages
1) Running your website on the Arduino can take long cycles (load)
2) I could not Upload a new sketch to Arduino. (usability)
3) Maintaining a web site on Arduino turned out to be hard (code)
You can compare my setup with connecting Arduino to a PI with a wifi dongle but completely open source and cheaper  smiley-twist.

@cr0sh
Thanks for pointing that out  smiley-grin.

Best regards
Jantje
Logged

Do not PM me a question unless you are prepared to pay for consultancy.
Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -

Pages: [1]   Go Up
Jump to: