Thank you very much for explaining that!So this is basically how it will work:Transmitter sends signal to receiver>> signal arrives at receiver >> servo cable from receiver to the Arduino >> Arduino serial cable to servocontroller >> servocontroller controls the servo's that I want.
I don't understand how the receiver can tell the Arduino to interact with the servocontroller.
I've got a few questions about it:-Is the Wild Thumper Motorcontroller also a servocontroller? I can see it has outputs for servo's on it. Altough, I don't know if it is possible to control the servo-outputs with RC receiver?
-How can I connect a servo cable, from the receiver, to the Arduino?
-I'll use the Wild Thumper 15A motor controller, and it has an onboard Arduino(ATmega168) on it. So that means that I'll have to connect the Arduino from the motorcontroller to the servocontroller, to send the serial signals. I don't see a useable serial output on the motorcontroller? Maybe the USB?
Pretty much; note that I was thinking of something like the servo controller Pololu sells, which typically communicate using TTL serial (thus, you would use something like a software serial connection, or an Arduino that provided more than one hardware serial port).
Well - you have to decode the servo commands from the receiver; I know there are people who have done this (there may even be a library available). Essentially, you are converting the PPM signal from the receiver servo channels into a numeric value.
Unfortunately, I think the 168 might be too limited to allow you to implement anything like the OSD menu-type system for video like I noted earlier, unless you are able to write some very tight code; I really don't know. You would need both that tight code, and some kind of OSD board that used TTL serial or such for commands to draw the characters, with pass-thru for the video (camera->OSD->video transmitter).
Good idea! I've also found a library for it:http://arduino.cc/hu/Reference/SoftwareSerial
I'll take a look at this, and search for some tutorials/library's.
I think that is a limitation for me, the code is probably going to be big, so the 168 might have to less memory.
I'll think about it, and otherwise, there is an alternative:http://www.dimensionengineering.com/products/sabertooth2x12rcShould 2x12A be enough, as each motor requires 5.5A( 3 x 5.5A = 16.5A)?
As I said above - the WildThumper does everything you need to do, it is just limited in memory; all of the code is published on the site (download it and read thru it - it is very basic and easy to understand, and commented well). The code already handles taking PPM input from the RC receiver, and decoding it for output to the motor driver.
it is difficult to say what you need or what you can use, without knowing your complete specs of what you plan to do ultimately. For simple RC control, etc - a single Uno would suffice; you could probably even get the OSD stuff I was talking about working as well. But, adding other things like GPS or other peripherals will expand memory requirements, and you might find yourself running low with a 328.
(there are 6 motors on that chassis, btw, not 3)
Ah - reading on the controller page for the WildThumper controller indicates that indeed - it is 5.5A stall current for -EACH- motor; or 33A total for all motors stalled - so you could go with (at minimum) two sabertooth 2x12 controllers; one controlling 4 motors (two per side), the other controlling the remaining two - or use 3 sabertooths, one per pair of motors - or try to find a different suitable h-bridge to handle the motors (about 16.5A per side of 3 motors).
To be honest, you would probably be better off sticking with the WildThumper controller, and using a separate Arduino for the extra peripheral stuff, communicating with it via the 168 on the WildThumper controller via software serial or I2C (or, have the serparate Arduino be the master, controlling the WildThumper using I2C or serial; your call).
The UGV needs to be 'modular', so I can always remove or add accessories on it.These are some accessories I'm thinking about:-Video streaming
-Remote control Airsoft gun(for Airsoft games)-Robot claw-OSD overlay(with GPS)-Spotlights-...So that will need some memory.
Indeed, but there are 3 motors on each side, and the sabretooth can handle 2x12A, so that means it can handle 12A on each side of the UGV?
I'm not going to do that, that will be way to expensive cost, as 1 sabretooth is around $65.
I'll probably do it this way, altough I don't know much about using 2 arduino's, so I'll look up some information about it.
By "streaming" - what do you mean?
you could just control the robot/Arduino via wifi
All of these items are doable, certainly - but they require not only more memory, but more pins - so you need to keep that in mind; you may want to go with a Mega for both. Just realize that if you intend to use shields, they may not all work with a Mega (depends on their functionality) as shields (though if you mount them seperately and jumper them together, most should work ok, with appropriate code bashing, too).
Well, the WT controller is already programmed to listen for another microcontroller (in this case, it would be your external Arduino), so you can just look at the code to see how it is using serial input to achieve this. On the Mega, there is already extra hardware serial ports, so you don't even need to use a software serial library (offhand, I am not sure how you control the extra hardware serial ports, but I am guessing it is fairly easy). You could modify the code on the WT controller to allow you to send commands over the serial connection to control the servos on the WT controller. You could also hook up servos and other things to your external Arduino (and control them with the Servo library). To read commands from the RC receiver, you just need to study how the WT controller is doing it for its motor control (very simple).
The camera will not be connected to an Arduino, but it will have his own circuit.The only way it will be in touch with the Arduino is to remotely switch the camera on or off.
I assume I need a wifi connection to control the robot using wifi, and that isn't in the woods? And the range would be reduced very much.So I'll stick with RC, as it got much more range.
I also think this is going to be the best way. So I will take a look at code, and see how it does it all.
I'll use 2.4Ghz for controlling the UGV, because FM radio controlling can get disturbed by other radio signals, and that is not the problem with 2.4Ghz.
I'm going to make a summary of everything I know right now, and then see how I will put it all together.
I've read that I can't use 2.4Ghz on my camera receiver if I'm already using 2.4Ghz for the UGV receiver, I think that isn't true, because 2.4Ghz signals can't get disturbed, as I mentioned above?
Do you really expect this to be a problem out in the woods? I mean, at a landing field with multiple R/C planes, I could see the issue, but out in the middle of nowhere (unless these "woods" are closer to a population center than I am imagining?
Even so, it's a good question, and something to definitely research.
Hi,Lots about interfacing RC equipment to Arduino on my blog including a comparison of signal performance from a 2.4ghz system and older 27mhz am system -Rcarduino.blogspot.comDuane B