robot communication - video capture

May 15, 2007 7 Replies

Hi All I have a tank robot with a embedded PC on it. I communicate with it using 802.11g, i also mounted a wifi amplifier. I want to put a camera on it, can capture video back, what should i do?



!!! buy a wireless camera is not my choice, because the camera's antenna is not good enough. My idea is to buy a video card, insert it into the embedded PC, send the video back through the wireless. But most of the capture card doesn't come with a linux driver and sdk. even it has, how can i streamming the video back? by using what linux tool?



thanks from Peter ( snipped-for-privacy@hotmail.com)



Hi Peter.

My Linux robot uses just a cheap Logitech-clone USB webcam, and the Video4Linux software. I can display video from the robot on a laptop (with an admittedly slow refresh rate) using xawtv (IIRC).

Jeff.

How are you communicating thru 802.11g (UDP packets?)? If you had a serial video stream could you get that over your link? What data rate can you support? I have also been looking into controlling a robot using a wireless network.

I have been considering designing a DSP based video camera system to solve this sort of problem, but I am not sure the amature robotics community would fork up enough dough (list price of over $500 each) to make it worth the rather large investment.

-howy

On 5=A4=EB16=A4=E9, =A4W=A4=C85=AE=C953=A4=C0, howy wr= ote:

i just put a wireless network card to my robot, then i can ping my robot and send some data to it. In the robot, i did a little program to receive the commands.

thanks from Peter

Jeff Shirley =BCg=B9D=A1G

Hi Jeff I have read the xawtv website, it doesn't say that it can transfer the video back through the network. So how can you do it? And what is IIRC?

thanks from Peter ( snipped-for-privacy@hotmail.com)

...

IIRC -- if I remember/recall correctly

Is your SBC capable of running a videolan server?

formatting link
's a full-featured streaming solution.

If not, its rather easy to write a streaming video server (assuming you don't need the greatest compression). I wrote some code that takes a video stream, compresses each frame using jpeg, and then sends the frames out over the network.

formatting link
This code uses the Qt4 GUI system, not exactly an "embedded" library, but the basic idea is simple enough to implement. libjpeg and a little network code should be sufficient.

HTH (hope that helps), Daniel

snipped-for-privacy@hotmail.com wrote: [snip]

[snip]

Peter,

I was not sure I remembered the xawtv program name correctly. Apparently I did.

My laptop runs Linux also, so I just set the DISPLAY variable of my telnet session to the robot to point at the laptop and start xawtv. Voila (ah, the joys of the X window system).

Note that this method is far too inefficient/slow to do much with, but hey, it was easy, and it works. Some sort of UDP-based video feed would undoubtedly perform better.

Jeff.

Thanks for your ideas from Peter

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required