ARDX circuit 3 conflict with circuit 5

For other supported Arduino products from Adafruit: Shields, accessories, etc.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
User avatar
kashken
 
Posts: 36
Joined: Sat May 14, 2011 10:30 pm

ARDX circuit 3 conflict with circuit 5

Post by kashken »

I have circuit 5 installed on a full breadboard. I also have circuit 3 intalled on the same breadboard.

When I run the motor of circuit 3, it causes the lights from circuit 5 to flash on and off.

When I pull the wire from shift register 10 (to VCC, marked reset on the layout), then the flashing stops.

Question: does running the motor of circuit 3 induce feedback into the VCC circuit such as to interfer with other items connected to VCC (power rail) on the breadboard? If yes, what can be done to eliminate this? How does such activity affect other circuitls that may be on the breadboard?

Interestingly enough, when I pull the data pin (pin2 connected to shift register pin 14), the lights also stop flickering. It seems the shift register is picking up something from digital pin 2 on the board. In fact, when I disconnect VCC from the breadboard (power rails), the shift register continues to flicker the LEDs. It seems the shift register chip is drawing power from somewhere. Maybe I have a bad breadboard?

adafruit
 
Posts: 12151
Joined: Thu Apr 06, 2006 4:21 pm

Re: ARDX circuit 3 conflict with circuit 5

Post by adafruit »

please email info@oomlout (the address should appear in the booklet) for personalized tech support, he's the designer of the exercises!

User avatar
kashken
 
Posts: 36
Joined: Sat May 14, 2011 10:30 pm

Re: ARDX circuit 3 conflict with circuit 5

Post by kashken »

I have sent the question to oomlout and am waiting for their reply. Will post when that happens.

User avatar
kashken
 
Posts: 36
Joined: Sat May 14, 2011 10:30 pm

Re: ARDX circuit 3 conflict with circuit 5

Post by kashken »

I am still waiting for a reply from oomlout, but I did perform one more test.

I pulled the entire motor circuit from the breadboard in question, and installed circuit 3 on a separate breadboard.

When I run jumper wires from the first breadboard to the second breadboard for ONLY VCC & GRND, the behavior is the same. Only by disconnecting the shift register chip from the power on the first breadboard, does the behavior go away (the flashing lights no longer flash).

So, it appears that the power draw by the motor circuit is affecting other components on the same breadboard or at least on the same power rail.

Does anyone have any information about discussions on this? I suspect that I need to filter the power source for the shift register or the motor circuit to prevent this situation.

Your help is appreciated.

User avatar
adafruit_support_bill
 
Posts: 85434
Joined: Sat Feb 07, 2009 10:11 am

Re: ARDX circuit 3 conflict with circuit 5

Post by adafruit_support_bill »

Motors are electrically noisy devices with peaky current demands. It is not unusual for motor operation to interfere with other circuits. In the case of the Adafruit MotorShield, we always recommend using separate power supplies for logic and motors.

User avatar
kashken
 
Posts: 36
Joined: Sat May 14, 2011 10:30 pm

Re: ARDX circuit 3 conflict with circuit 5

Post by kashken »

In the ARDX documentation, I did not find any recommendation about using a separate power supply. That probably means any robotic implementations would have to have multiple power supplies. Can you point out discussion of this particular anomoly so I can avoid it when the time comes, in particular if there are different considerations for setting up the circuit because a separate power supply is used (or necessary).

Would such a recommendation about motors also apply to servos, or possibly anything else that requires use of a transistor in the circuit?

Are there any other types of circuits that have this type of consideration?

Is there anything that can be added to the existing ARDX Circuit #3 layout to compensate for the noise that is generated by running the motor (a power rail feedback filter or some such).

By the way, I did test with a much smaller unit (a toy motor) and it produces significantly less "noise", almost to the point of no flickering LEDs.

Your feedback is much appreciated.

User avatar
adafruit_support_bill
 
Posts: 85434
Joined: Sat Feb 07, 2009 10:11 am

Re: ARDX circuit 3 conflict with circuit 5

Post by adafruit_support_bill »

In the ARDX documentation, I did not find any recommendation about using a separate power supply. That probably means any robotic implementations would have to have multiple power supplies. Can you point out discussion of this particular anomoly so I can avoid it when the time comes, in particular if there are different considerations for setting up the circuit because a separate power supply is used (or necessary).
The ARDX is an oomlaut product. We did not write the documentation for it. Nevertheless, it is genrerally accepted good practice to power motors separately and if you search these forums and our MotorShield documentation we always recommend separate power for good isolation.
Would such a recommendation about motors also apply to servos, or possibly anything else that requires use of a transistor in the circuit?

Are there any other types of circuits that have this type of consideration?
The same applies to servos, relays and solenoids. Transistors are not the issue here. It is more an issue of the inductive load and/or brush noise in operation.
Is there anything that can be added to the existing ARDX Circuit #3 layout to compensate for the noise that is generated by running the motor (a power rail feedback filter or some such).
Some small ceramic capacitors (0.01-0.1uF) at the motor terminal lugs can help tame the brush noise. One between the two motor terminals at a minimum. For better filtering, add one more between each motor terminal and the motor casing. It can be difficult to solder to the motor casing. Sometimes it helps to rough up a spot with a file or sandpaper.

User avatar
kashken
 
Posts: 36
Joined: Sat May 14, 2011 10:30 pm

Re: ARDX circuit 3 conflict with circuit 5

Post by kashken »

Thanks for the feedback.

I still have not received any feedback from oomlout. They provide variants of the ARDX kit for other suppliers as well so maybe the question impacts their overall product line.

I did find a write-up about using a capacitor across the power rails to address a situation that caused the Arduino to shut down. It is listed as optional on the CIRC-03 diagram. However, it had little or no effect on the flashing LEDs.

I have a breadboard power supply jack, so that will be used on my motor install on a separate breadboard.

Thanks again.

User avatar
kashken
 
Posts: 36
Joined: Sat May 14, 2011 10:30 pm

Re: ARDX circuit 3 conflict with circuit 5

Post by kashken »

I did receive a reply from oomlout. In part...

"I'm afraid you've come across one of the more frustrating elements of electronics that while it's easy to get one component working getting two or more cooperating in tandem can be infuriating.

The re-setting could be helped by using a decoupling capacitor close to the 74HC595 chip, (small ceramic the one provided is electrolytic which is fast enough to keep the board from resetting but not fast enough or close enough to the 74hc595 chip to keep it from resetting).

I'm afraid the complex interactions mean that most applications need to be played around with and seen as to what works and what doesn't."

I would try a ceramic decoupling capacitor but need to know where to insert it in the CIRC-05 diagram to be effective.

For now, I am working up a regulated power supply interface on the breadboard (waiting on a 7805 regulator and associated capacitors to make this work).

User avatar
adafruit_support_bill
 
Posts: 85434
Joined: Sat Feb 07, 2009 10:11 am

Re: ARDX circuit 3 conflict with circuit 5

Post by adafruit_support_bill »

Brush noise is best dealt with at the motor - not on the breadboard power rails. Although additional filtering on the power rails can be helpful. Separate power supplies protects against voltage sags and inductive spikes.

User avatar
kashken
 
Posts: 36
Joined: Sat May 14, 2011 10:30 pm

Re: ARDX circuit 3 conflict with circuit 5

Post by kashken »

I am intrigued by this last response with regard to brush noise. Doesn't the AdaFruit motor shield provide this type of protection for connecting multiple motors? It would be interesting to isolate the protections that the motor shield provides for this type of situation, so the information (logic and components) are available for prototypers to use in their projects. I have not run across any motors advertised with built-in feed back or brush noise protection, or any notes that the motor shield only supports motors of that type.

User avatar
adafruit_support_bill
 
Posts: 85434
Joined: Sat Feb 07, 2009 10:11 am

Re: ARDX circuit 3 conflict with circuit 5

Post by adafruit_support_bill »

There is no one-size-fits-all solution. There are many different motors with different noise characteristics. Many small motors will run fine without modification.
When brush-noise is a problem, it is better dealt with at the motor. Otherwise, the motor leads make excellent antennae for radiating the noise over a wider area. Many manufacturers of quality DC motors offer options for built-in filter capacitors.

User avatar
kashken
 
Posts: 36
Joined: Sat May 14, 2011 10:30 pm

Re: ARDX circuit 3 conflict with circuit 5

Post by kashken »

I have my configuration to the point where the motor (ARDX Circuit 3) is on a separate breadboard with its own power supply (regulated using a 7805 regulator with 10 uF capacitors appropriately placed as outlined in the arduino.cc documentation for building an arduino on a breadboard with 9 volt input through a barrel jack).

However, attempting to run this arrangement is a failure...UNLESS there is ground continuity from the 2nd breadboard back to the Arduino that is driving the pin 9 variable input (that goes through a resistor to the base pin of the transistor).

As soon as that ground continuity is made, the motor begins to perform as expected with the sketch that is driving the whole show.

Unfortunately, as soon as that ground continuity is made, the LEDs on the first breadboard once AGAIN begin flashing. There are three GND pin locations on the Arduino. Any of them will also work but as long as the Ardunio has ground continuity with both breadboards, the LEDs flash (such ground continuity is needed in order to drive circuits on both breadboards).

Unless I have an appropriately equipped motor, one that controls, minimizes, or eliminates feedback, I believe you cannot implement a situation such as ARDX Circuit 5 and Circuit 3 from the same Arduino.

Interesting sidenote: when my controlling Arduino is unplugged (no USB or external power at its barrel jack), and both breadboards are connected for power and ground continuity, the regulated power coming from my 9 volt input will actually run the Arduino as well. This is the acid test that my regulated power setup is working. Yet, the LEDs on the other breadboard continue to flash while the motor is put through its paces (flashing stops when the motor stops or pin 9 is disconnected). Thus, one can power an Arduino through its 5 volt pin as long as that power is regulated.

In a nutshell, powering the motor ciruit through a separate breadboard is not the answer because the feedback from the motor through ground continuity is still an issue. Thus, one might expect that if you use a motor shield, you cannot run other circuits on another breadboard with that same Arduino.

User avatar
adafruit_support_bill
 
Posts: 85434
Joined: Sat Feb 07, 2009 10:11 am

Re: ARDX circuit 3 conflict with circuit 5

Post by adafruit_support_bill »

However, attempting to run this arrangement is a failure...UNLESS there is ground continuity from the 2nd breadboard back to the Arduino
If you search these forums, you will find that this is one of our most common reminders: When working with multiple power supplies, you need to assure a common ground.
Thus, one can power an Arduino through its 5 volt pin as long as that power is regulated.
Yes. A regulated 5v is all that is required.
In a nutshell, powering the motor ciruit through a separate breadboard is not the answer because the feedback from the motor through ground continuity is still an issue. Thus, one might expect that if you use a motor shield, you cannot run other circuits on another breadboard with that same Arduino.
Your expectations aside. The motor shield does happily coexist with other circuitry in many applications. If you show us your configuration, we may be able to offer you some advice on how to make it work.

User avatar
kashken
 
Posts: 36
Joined: Sat May 14, 2011 10:30 pm

Re: ARDX circuit 3 conflict with circuit 5

Post by kashken »

Appreciate the response.

In a previous response, it was indicated that the motor circuit had to be powered separately. I have done that, but it did not resolve the issue.

Moving on, I am including a photo of my arrangement...

I do have a video of this in operation. I have to get the size reduced (from 100 seconds 27 meg) down to something manageable. However, anybody should be able to reproduce this by installing ARDX circuit 5 and ARDX circuit 3 on the same breadboard, and run the circuit 3 sketch to drive the motor.

I expect the motor shield has isolation components in place for this. I am attempting to determine what I need on a breadboard to accomplish the same objective. Perhaps you could show me a motor shield driving a motor while that same Arduino has a connected breadboard with ARDX Circuit 5 (controlled with pins 2, 3, & 4).

By the way, when this whole arrangement was on a single breadboard, if I disconnected the shift chip ground, the LED flashing also stopped. This reinforces that feedback is coming through the ground continuity
Attachments
IMG_1383_1.JPG
IMG_1383_1.JPG (155.55 KiB) Viewed 3654 times

Locked
Please be positive and constructive with your questions and comments.

Return to “Other Arduino products from Adafruit”