Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Controlling robot from PC, using wireless LAN and USB camera

Status
Not open for further replies.

keops_777

New Member
Hi,

I'm at the very beginning of a hobby project:

I intend to build a remote controlled car (1.5 foot length) that can be easily controlled from a normal PC. Only basic movement forward/back/right/left.
At first it will be manually controlled, but intend to make it autonomous using artificial intelligence software (of my own design).
The input to the AI will be solely based on images from 2 webcams mounted on the vehicle - which will be used to create a 3D interpretation of the terrain in the software "brain".

My big problem is that I am completely new to robotics (and electronics), and so do not know what would be a good solution to this.

My completely naive proposal for a technical/physical solution is:

- AI software communicates with the wireless network card in the PC.
- The wireless network card communicates with a wireless ethernet to USB adapter in the vehicle.
- The USB adapter connects to a USB hub in the vehicle.
- The USB hub connects to 2 webcameras.
- The USB hub connects to a USB-to-serial-adapter.
- The serial adapter communicates with some kind of servo controller.
- The servo controller controls the steering and the electromotor. (Is the motor controlled in the same way as the steering btw? I'm completely green on this.)

How does this look?

Am I completely out on the fields here, or could this work?

Any suggestions for the "wireless ethernet to USB" adapter?
Any suggestions for the "USB to serial adapter"?
Any suggestions for just about anything below that?

I would be very grateful for any advice or suggestions concerning this.


- Jonas
 
see at www.lvr.com for USB communication. great site for communication.


find OpenCV on google and come to sourceforge.net to see how to get camera information with VC++. This is a wonderful image processing tool. Everything you need with 2 camera is in openCV. Many filter algorithms are embeded in this tool.

connect a uC to your PC via RS232 and use your uC to control all the motors you need. PC only need to send the velocity or position commanded to uC.

Try to search for some source code on .. I don't know, but somewhere they post many source code of C and C++ that you can find how to control via internet, and via wireless nets. Sorry, so long time, I don't remember this site.
 
Thanks for advice!

Thanks for great advice, Falleaf !

Most of what you write is of course completely unfamiliar to me, but now I have a great jumping point to doing furter research on this matter.

If anyone else have suggestions or alternatives, please post them too.
I'm open to just about any technical solution, as long as it does not require indepth knowledge of electronics, and can provide the PC with input from 2 on-vehicle cameras. (An option might be to use 1 camera eith 4 small mirrors, btw.)


- Jonas
 
Via sells Pentium compatable x86 motherboards for embedded applications (nano-itx i think they call it). They have a new one that is about 4 inches square and probably about 200$. Getting all the USB and wireless stuff working some other way probably won't work. Embeded USB hosts arn't easy to build and the WiFi stuff is probably going to be just as hard. With a x86 board you can use your windows knowledge for the project. The hardest part is going to be finding a power supply to run the x86 board from a battery. But you can probably buy something that will work - the embedded board only needs a couple watts.
 
bmcculla said:
Via sells Pentium compatable x86 motherboards for embedded applications (nano-itx i think they call it). They have a new one that is about 4 inches square and probably about 200$. Getting all the USB and wireless stuff working some other way probably won't work. Embeded USB hosts arn't easy to build and the WiFi stuff is probably going to be just as hard. With a x86 board you can use your windows knowledge for the project. The hardest part is going to be finding a power supply to run the x86 board from a battery. But you can probably buy something that will work - the embedded board only needs a couple watts.
good idea !
so keops would have the Pc to Pc communions part worked out..,then all he would have to do is get the motors to turn the correct number of times in the correct direction.
one suggestion though ,how about using an older pc M/board it would be less expensive. of course it may not fit on your car.
Motor controller boards can be found at
Rmv electronics
kae
pontech
scott edwards electronics..
 
The probelm with using an old PC motherboard is the power requirements. Desktop processors are super power hungry. The embedded boards use much less power.
 
On-board PC

I was really hoping to find a relatively simple solution where the vehicle was only a remote controlled drone, and let everyting be done by the pc.

But I'm definately seeing the benefits of the vehicle based pc solution.
I will certainly explore that possibility further.
Thanks for advice!

BTW: What about power supply for an on-board pc?
Can I simply plug the motherboard into a small 12v battery?
 
You will probably have to buy a power supply (DC-DC converter) for the motherboard. Batteries have all sorts of bad properties that might cause probelms if pugged directly into motherboard. An x86 board will need very clean well regulated power. It also might need some other voltages - you'll have to check the datasheet for the board.
 
Re: On-board PC

keops_777 said:
I was really hoping to find a relatively simple solution where the vehicle was only a remote controlled drone, and let everyting be done by the pc.

But I'm definately seeing the benefits of the vehicle based pc solution.
I will certainly explore that possibility further.
Thanks for advice!

BTW: What about power supply for an on-board pc?
Can I simply plug the motherboard into a small 12v battery?
i have an idea use two 12V batteries connect the negetives together( this will be ground) desegnate one battery +12 the other --12 and use a 7905 for --5V and a 7805 for +5V.
Using an AT M/board..

if i could suggest using a 386 M/board they were pretty compact by then
approx. 8 by 9 or ten inches.

this is the pinout of an AT M/board.

1. Power Good (output from PS which tells that output voltages are OK)
2. +5Vdc
3. +12Vdc
4. -12Vdc
5. Ground
6. Ground

7. Ground
8. Ground
9. -5Vdc
10. +5Vdc
11. +5Vdc
12. +5Vdc

the ATX requiers 3.3V And is a little to useful still ,to be messing with

https://xtronics.com/reference/atx_pinout.htm

One more thing ,About the +5v it may be asking too much of the little TO 220 package that the 7805 regulator comes in to provide more than an Amp , .. BUT i'm not sure how much juce the M/Board You end up with will use.
So Pick the M/Board First
Apply Power ..
Measure The Current Consumption..
this way you can figure how long your batteries will last..
 
Setup

This is my current proposal for on-vehicle pc setup :

- Via EPIA 5000 Mini-ITX motherboard with fanless 533MHz CPU ()
- Powersupply: "High Green Powerkit 55W" (**broken link removed**) or "PW-60A-MINI-ITX" (**broken link removed**)
- 12V battery
- 512 MB bootable USB-memorystick/pendrive (instead of harddisk)
- 256MB RAM
- Wireless network card (alternatively USB dongle)
- 2 simple webcams
- Operating system: Windows 2000/XP (possibly Linux later)

That should hopefully take care of the pc part.
(Suggestions for alternative setup are welcome.)

Then comes the part where I still am completely clueless:
What parts to use for manuvering the vehicle itself.

I prefer to keep tinkering with circuit boards and electronics to a minimum.

Is using 2 stepper motors the easiest way to go?
(Stopping or reversing one to turn the vehicle.)

What specific motors would be suitable?
(Make/model/links..?)

What controller/interface to the pc would be suitable for controlling the motors?
(Make/model/links..?)

EDIT:
And how do I get the power the motors?
Does the battery connect to the controll, which transfer to the motor, or does the motor connect directly to battery?

Any suggestion for a hands-on tutorial for setting up hardware for drive/control?

BTW:
I'm planning to use java to program the navigational/controlling software.


- Keops
 
I think the best way to do motor control would be to use the serial port to control a microcontroller running motor control software. You should be able to buy Microcontroller kits and motor drive boards so you don't have to build any hardware.

DC brush mtors are probably the best type of motor for your drive wheels. You can use the battery as the supply for the motros but be aware thet if the motors draw too much current the battery voltage will sag - you have to be careful that this doesn't reset your motherboard.

We have one of the VIA motherboards here at work. One of my coworkers got it booting from compact flash with a compact flash to IDE converter board. This solution is probably easier than USB because it doesn't need any drivers.

We have an eveluation copy of Embedded XP. it might be worth seeing if you can get ahold of the eval too. It lets you strip out all the stuff you don't need.

You should probably look at C++ for your control and navigation software. Image processing is really processor intensive. With a 533MHz CPU Java might have a little too much overhead. As a bonus you will be able to program your microcontroller in C.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top