Need basic info to make a circuit for multi-function 4 wheel steering in RC cars

Thread Starter

Sazzlefrats

Joined Jan 10, 2020
5
I know how to solder pretty good, but I'm at a complete loss on how to find information on how to make a basic circuit board that can toggle between 4 different steering modes for a radio control car with 4 wheel steering. (the modes are front steer, rear steer, 4 wheel steer and crab steer).
In RC cars a servo controls the steering, it has 3 wires, one being the signal wire. In 4 wheel steering you have a y adapter and servo reverser cable. But to create a circuit board that gives 4 functions using a dedicated channel, that I'm unsure of. Can anyone steer me in the right direction? (no pun intended)

Thanks in advance.

Mod: Deleted your email address, you could be spammed.
 
Last edited by a moderator:

KeithWalker

Joined Jul 10, 2017
675
I need to know what are you planning to use on the transmitter to change between the four modes before I can suggest ways of implementing it at the receiver. Are you going to select the mode with a four position switch or are you going to step through the modes in a fixed sequence, using a single push-button?
Regards,
Keith
 
Last edited:

Thread Starter

Sazzlefrats

Joined Jan 10, 2020
5
I need to know what are you planning to use on the transmitter to change between the four modes before I can suggest ways of implementing it at the receiver. Are you going to select the mode with a four position switch or are you going to step through the modes in a fixed sequence, using a single push-button?
Regards,
Keith
Fixed sequence. Will be using a 3rd channel on transmitter. There is a kit already out there on amazon, but I want to make my own if I can.
 

MisterBill2

Joined Jan 23, 2018
5,216
What you will need is a kind of multiplexer controlled by a counter. But since I have no knowledge of the voltage or current powering and controlling the 3-wire servos it is not clear just what it will take to do the switching.
So please provide more information. If you can provide the circuit of that "Y" cable that would help. Is the control line a digital signal or an analog signal? Given enough information we can certainly provide the design that you ask for. But beware of "guesses" based on incomplete information.
 

KeithWalker

Joined Jul 10, 2017
675
Is the transmitter digital or PPM? How is the sequencer on the transmitter activated? What signals are transmitted on the third channel when it is and is not activated? It is necessary to know this information before we can consider designing the electronics at the receiving end.
By far the simplest solution would be by using an Arduino microprocessor module. They operate on 5V DC and use TTL logic levels which are directly compatible with an R/C receiver. The sequencer channel output and the steering channel output would be connected directly to Aarduino input pins and the four steering servo inputs would be connected to output pins. A fairly simple program would use the steering signal to generate non-inverted and inverted signals and would decode the sequencer signal to rout the correct steering signals to the four servos. An Arduino micro is about 4.5 cm x 1.8 cm and weighs a few grams.Chinese clones cost less than $5.00 including shipping.

NOTE: I have been building and flying model aicraft for over 50 years. I am an electronics engineer and have designed and built my own R/C transmitters and receivers, servos, servo reversers and electric motor speed controllers plus a host of other R/C electronic gadgets..
 

Thread Starter

Sazzlefrats

Joined Jan 10, 2020
5
Not sure what ppm is, but pretty much everyone is using 2.4ghz transmitters these days, so I'm guessing digital.

I know the layout is going to be a board, which needs to handle centering the servos, have 4 steering modes and has 2 outputs signal wires, 1 for the front servo, 1 for the rear servo. I gather we're running the voltage through the board as well, so power in and power out wires for the wires through the board.

This is what I want to make.
https://www.amazon.com/Bastens-QuadSteer-steering-control-transmitters/dp/B00JQKJ6K0
 

MisterBill2

Joined Jan 23, 2018
5,216
An arduino has no part of such a project. There is no need for it. I am guessing that the selection channel will be an off/on type of signal, and that the position signals are pulse proportion types with 50% duty cycle representing straight ahead. Given that, it is a matter of a bit of digital switching and providing a means to keep the non-selected servos in the straight ahead mode. So the remaining question is about the amplitude and impedance of the steering signal source and load. I am thinking that CMOS gates will be the best choice. Why junk-up a model car with a processor for such a simple function?
 

KeithWalker

Joined Jul 10, 2017
675
That is what you need. I didn't know they marketed a kit for this. It does exactly what I described above. It is already programmed so you don't have to write one. The PC board is an Arduino mini. good luck.
 

KeithWalker

Joined Jul 10, 2017
675
Mister Bill, I beg to differ:
Each channel of a PPM R/C receiver outputs a pulse which has an amplitude of +5V, which varies in length from 1mS to 2mS, depending on the position of the control on the transmitter. The signals repeat every 18mS. It is not a simple task to design a circuit that will reverse the operation of one of those channels. It needs to create signal that will vary from 2mS to 1 mS from a signal that is varying from 1mS to 2mS. I know because I designed and built one many years ago. The device will need four of those plus a 1.5mS pulse generator plus the sequencer and logic to route the required signals to the correct servos, depending on the mode selected.
An arduino is the simplest, smallest and most easy to design solution. It runs on the same power source as the R/C receiver. The output signals from the receiver are connected directly to the input pins and the servos are connected directly to the output pins of an Arduino. No interface circuitry is needed. The Arduino can monitor the mode and steering signals, invert PPM signals and change sequences to route the correct steering signals to the servos. It can do all of that on a PC board module that is 1 1/4" x 3/4" x 3/16". The hardware development time is zero. The building time is minimal. The program is relatively simple. I could write and de-bug it in less than an hour.
Regards,
Keith
 
Last edited:

MisterBill2

Joined Jan 23, 2018
5,216
Writing code that actually works correctly is not a trivial task at all. Code writing demands a good understanding of just what every line will be doing, and being aware of all of the existing hardware constraints. And writing a program and loading it into a controller requires a computer and a compiler and a good understanding of the programming language.
Designing CMOS logic is far simpler and requires no additional tools except for pencil and paper. Building CMOS IC hardware does certainly demand some fair soldering skills and an ability to correctly find the right pin number.
It may be that my guess of the pulse width versus position was a bit off, no challenge on that part. But CMOS logic can run on the voltage available in the RC servo system if it is within the range of 3 to 15 volts. And it draws only microamps when not changing the outputs.
 

MaxHeadRoom

Joined Jul 18, 2013
20,024
. The building time is minimal. The program is relatively simple. I could write and de-bug it in less than an hour.
Agree completely , I would balk at attempting to implement 4 servo's using descrete logic, compared to writing and de-bugging code.
Also implementing the varying logic that it would take for the variable pulses required for the four RC servo's.
Max.
 

Thread Starter

Sazzlefrats

Joined Jan 10, 2020
5
That is what you need. I didn't know they marketed a kit for this. It does exactly what I described above. It is already programmed so you don't have to write one. The PC board is an Arduino mini. good luck.
So I assuming I want to make this from scratch and not buy a pre-made kit. I would have to learn to code to program the circuit? Is it complex?
 

KeithWalker

Joined Jul 10, 2017
675
This is an example of what is involved. I was experimenting with an R/C tracked vehicle that I made. I needed to take the forward/reverse speed control channel and mix it with the steering servo channel to control two motors driving the tracks. The software does that, providing full speed, direction and steering control for the tracks. The software is minimal and was written and de-bugged in half an hour. See the program listing and illustrations below:

//This program mixes channel one and two from an RC receiver and drives two track motors.
int pin1 = 7;
int pin2 = 8;
int motor1 = 9;
int motor2 = 10;
int length1;
int length2;
int chanA;
int chanB;

void setup()
{
pinMode(pin1, INPUT);
pinMode(pin2, INPUT);
pinMode(motor1, OUTPUT);
pinMode(motor2, OUTPUT);
digitalWrite (motor1, LOW);
digitalWrite (motor2, LOW);
}

void loop()
{
length1 = pulseIn(pin1, HIGH); //get channel 1 signal and map it
length1 = map (length1, 900, 1800, 1000, 2000);
length2 = pulseIn(pin2, HIGH); //get channel 2 signal and map it
length2 = map (length2, 900, 1800, 1000, 2000);
chanA = (length2 + (length1 - 1500)); //Mix for left track
if (chanA > 2000) //Check left signal limits
{chanA = 2000;}
if (chanA < 1000)
{chanA = 1000;}
chanB = (length2 - (length1 - 1500)); //Mix for right track
if (chanB > 2000) //Check right signal limits
{chanB = 2000;}
if (chanB < 1000)
{chanB = 1000;}

digitalWrite (motor1, HIGH); //Output PWM signal for left track
delayMicroseconds (chanA);
digitalWrite (motor1, LOW);
digitalWrite (motor2, HIGH); //Output PWM signal for right track
delayMicroseconds (chanB);
digitalWrite (motor2, LOW);

delay (10);
}
 

Attachments

KeithWalker

Joined Jul 10, 2017
675
So I assuming I want to make this from scratch and not buy a pre-made kit. I would have to learn to code to program the circuit? Is it complex?
You are correct. If you have never done any programming before, there is quite a steep learning curve.On the other hand, there are lots of good tutorials and examples on the internet. Unless this is a long-term project, I would recommend that you buy the kit. The price is very good and you will be sure of getting the results you want. If you really are up to the challenge, why dont you do both - buy the kit and learn how to build and program your own. I am sure you could always use a spare.
Regards,
Keith
 
Top