Pages: 1 2 [3]   Go Down
Author Topic: RC Car Robot  (Read 4658 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


I'm not sure what that means; if you are under the impression that things "output" current, you are mistaken. Current is "pulled" from a device, not "pushed" to it. That's the best layman's way I can put it. It depends on the resistance of the circuit and the supply of the voltage across that resistance - ohm's law - I=V/R - so if you have -zero- resistance (ie, a short) the current effectively becomes "infinite". If you have a break (an open), thus "infinite" resistance, then the current effectively becomes zero.

Now - if you do "cut the trace" between the output of the RX2 IC and the base resistor, and you can stick you meter in between and measure the current flow; that might be helpful (once you know the voltage output) - to know if by hooking up the circuit you'll pull more current than what the Arduino (or whatever you use) can supply (in that case, you might need to include a buffer circuit or something to help supply more current).

My recollection of current is that it is analogous to flow (of, say, water), measured in coloumbs/second, which I know is amperes. Voltage is joules/coloumb, and specifies how much "punch" each unit of charge has.

In any case, I was under the impression that too much current through a circuit would fry something. For example, let's say the RX chip outputs 5V for pushing the car forward. Can I really just connect a wire from an output on the Arduino to the location on the board where the chip was outputting its 5V signal and everything will work? Do I need a resistor in there? If I understand you, the answer is no, and the circuit itself will dictate the current.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


If you can in some manner, check the voltages without the outputs of the IC connected to the base resistors; likely the rest of the circuit is "getting in the way".


Any idea how I can do this?
Logged

the land of sun+snow
Offline Offline
Faraday Member
**
Karma: 149
Posts: 2790
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
My recollection of current is that it is analogous to flow (of, say, water), measured in coloumbs/second, which I know is amperes. Voltage is joules/coloumb, and specifies how much "punch" each unit of charge has.

This is a good analogy. The next sentence should logically read something like "Therefore, it's obvious that a tiny diameter
pipe connected to the water source will have a very high resistance, and therefore the flow into it will be small, while a
large diameter pipe will have a low resistance to water flow".
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


This is a good analogy. The next sentence should logically read something like "Therefore, it's obvious that a tiny diameter
pipe connected to the water source will have a very high resistance, and therefore the flow into it will be small, while a
large diameter pipe will have a low resistance to water flow".


True enough. I take it, then, that resistance is a result of both the wire itself and by things like resistors and the motors. In that case, assuming the output voltage for my Arduino matches that of the IC output, the only concern becomes whether or not the Arduino outputs can allow *enough* current to pass to meet the requirements of the motor control board, which I believe is something that cr0sh pointed out earlier. Do I have that right(ish)?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I also drew a rough sketch of how I believe the circuit is designed for the motor controller. F_ic and B_ic are forward and back on the IC, respectively, and M_f and M_b are motor forwards and backwards, respectively. I'm sure I violated all sorts of standards for circuit diagrams, so forgive me, but I think the general idea is there.


* Scan.jpeg (46.11 KB, 597x374 - viewed 14 times.)
« Last Edit: October 21, 2012, 04:35:17 pm by TheWumpus » Logged

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

In any case, I was under the impression that too much current through a circuit would fry something. For example, let's say the RX chip outputs 5V for pushing the car forward. Can I really just connect a wire from an output on the Arduino to the location on the board where the chip was outputting its 5V signal and everything will work? Do I need a resistor in there? If I understand you, the answer is no, and the circuit itself will dictate the current.

It may work, if the circuit doesn't pull more current than the Arduino can safely supply on a pin (about 25-30 mA tops; 40 mA is max, but you don't want to go there). If it pulls more current than that - poof goes the pin (well, the ouput driver in the Arduino).

Usually, you want a resistor in there somewhere; start with about 1K, then drop if needed (no lower than 220 ohms). You can probably calculate it, but without knowing the specs of the transistor you are driving, it may not be possible.
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.

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


If you can in some manner, check the voltages without the outputs of the IC connected to the base resistors; likely the rest of the circuit is "getting in the way".


Any idea how I can do this?

Well - you need to locate the base resistor, assuming one exists. Trace from the output pin on the RX2 IC to the transistor it drives - hopefully somewhere there is a base resistor. Then you need to open the circuit at this point - by cutting a trace, or some other method. Then measure the output of the pin to ground. You may want to try first (just in case I'm wrong) to open the circuit -after- the base resistor, and measure the voltage from that point to ground. In case going directly to ground (even with a meter in between) draws too much current (and poof goes the output stage of the IC).
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.

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

I also drew a rough sketch of how I believe the circuit is designed for the motor controller. F_ic and B_ic are forward and back on the IC, respectively, and M_f and M_b are motor forwards and backwards, respectively. I'm sure I violated all sorts of standards for circuit diagrams, so forgive me, but I think the general idea is there.

In general it looks OK, though you show the output to the motors from the base of the transistors, and it's not really the "standard diagram" of an h-bridge you normally see, but close enough I think. You might want to compare it to the reference diagram in the PDF of the datasheet (I also note not seeing any flyback diodes - which is crucial in an h-bridge design based on transistors - unless those are -not- transistors, and are mosfets instead, which have an in-built diode across the source-drain; this would explain some things)...

I noticed you drew on one pair of transistors the base resistors, but not the ones between the RX2 IC and the first set of transistors - were there no resistors?

Looking at your diagram, the transistors F(ic) and B(ic) are probably being used in a couple of ways: 1) as a means to switch -opposite pairs- of the transistors in the h-bridge on/off (to prevent shoot-thru - which is bad - causes lost smoke), and 2) probably as a way to boost the output current of the RX2 IC to drive the larger transistors in the h-bridge.

If you can figure out or read the part number of these "buffer" transistors, it would be best to know that information. You can then determine (from the datasheet for the transistor) whether you can use it with the Arduino, what kind of base resistor would be needed, etc. Knowing the part number and such for the main drive transistors would also be helpful (especially if they are mosfets and not bipolars, which I am starting to seriously suspect).

You might be able to drive those transistors via their base resistors (I'm also surprised here where two of the other base resistors went?); it would use four digital outputs, of course (you might want to use a buffer driver IC in between), and you would have to code things carefully so that they get switched on/off properly without leaving two of the transistors on the same side of the bridge "on" (shoot-thru). Port manipulation would be best here (with all pins on the same port), or you might be able to carefully craft the software so that, knowing the last state of the pins, it would know how to set the state properly to avoid the shoot-thru condition...
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.

Pages: 1 2 [3]   Go Up
Jump to: