Electronics advisory: Arduino, PWM expander (PCA9685) and DC motor (3-5V) issue
$10-30 USD
Closed
Posted over 3 years ago
$10-30 USD
Paid on delivery
Looking for an adviser to solve an issue with a simple circuit, controlling a 3-5V DC motor/pump via a PWM signal, using PCA9685 PWM expander and Arduino.
The components involved:
* Mini DC pump (3-5V) [login to view URL]
* Rectifying diode (IN4007)
* Transistor (BC337)
* Resistor (2.2K or other)
* PWM expander module (PCA9685)
* Arduino Due
* 3.3V and 5V sources (with common ground), generated using buck converters, from a 30A 12V power supply.
A simple program runs a sweep on 0-100% PWM signal on port 0.
What works well:
IF I do NOT connect the motor, but instead put some random resistor load, everything works fine.
I can measure across the load resistor a voltage going up from 0 to 5 and back down.
All works 100% fine.
HOWEVER..
What doesn't work:
IF instead, I connected the motor where it should be, the setup stops working.
The PWM stops updating and the serial console debugging clearly shows that something drags down the Arduino (the console stats updating slowly instead of the regular speed), in what seems to be I2C communication related issues (which hints that the PWM expander module is what starts to act up).
Disconnecting the motor at this stage doesn't help. Even then, the PWM doesn't update. The voltage on the 0 port remains stuck at the same level.. same for the motor. Things just get stuck.
Resetting the Arduino doesn't help.
If I disconnect the PWM module, the console logging goes back to regular speed (again, hinting that the PWM module is what is causing the console log drag).
Also, plugging the PWM module back in, doesn't solve the issue right away all the time, even at the beginning. It sometimes needs to "rest" for a bit. Then, once plugged in again it resumes working again like before.. meaning, only for the first second or so, until it stops working again.
At first, I thought it has to do with a voltage created by the engine.. so I've added the rectifying diode. But that didn't help. Same issue persists.
Even stranger, when I changed the motor to a different motor, the problem disappeared completely.
So this indicates, that very clearly, the specific model of the motor itself, is creating some interference that makes the PWM expander stop working.
What I need from you:
I would need you to work with me to solve the issue.
This is an advisory work.
You will need to know how to properly use the stated elements, and make the tiny DC engine work with the other components, as specified.
Hello
I have more than 15 years of experience in the embedded systems design and pcb design and electronics systems design
So let's discuss your project in chat
Hello ,
This is Mohanad Ayman , I am a control design engineer and I have done many projects like this before , I have check your attached image .And I have found something that maybe causing the issue . Please contact me , thanks
Hi , This is Vaishnavi, I am a Electronics Engineer,
I hv total 8 years of experience. I have worked on several Arduino related projects, got it what exact issue with DC water pump and transistor, need to change transistor and related to specific PWM pin, in detail I'll discuss with you . I'm teaching Robotics and coding to school level and collage level students, making projects with Arduino and Raspberry pi and worked on Variable frequency drive ( VFD) with repairing, testing and installation for Yaskawa, delta, Mitsubishi,etc. I'm ready to help you for making Arduino related projects...
I'm interested to hear more about the project and about the subject matter of the power. If you award me the project I'd be very happy to discuss this further and get started for you as soon as possible. Thanks!
Vaishnavi
Hello! I understand your problem and it has a very simple solution which doesn't require any thing to be worried about. You just need to add one component in your circuit and your project will start working flawlessly. I can explain everything on tinkercad as well. I am a mechatronics engineer and have done my masters in computer engineering. I have been a key factor in the team which represented my university in the international completion shell eco marathons. I have an extensive knowledge of electronics and how to interface components with microcontroller. I am looking forward to help you with your project. Please feel free to contact me.
May be I can help resolve or point to the issue at hand, I would require a little more information on the circuit and the source code to analyze the situation.