Announcements

From sunburn to sun earn – we’ve got the power! Watch our #poweringgreen videos now.

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Gaston
Level 1
Level 1
5 sign-ins Welcome! First reply posted

Hi, i'm testing the IFX007 motor control shield with a little (2.5W) brushed motor at 12V. The full-bridge .ino example works as expected but I cannot measure a proportional (is) current sense on the arduino board. I've also measured the voltage at the (is_rc) pin from duty cycle 0 to max (255) and the result is always 40mV.

What's is the problem to read the is current? How can I sense the high/low side mosfet currents?

thanks in advance,
gaston

0 Likes
1 Solution
lock attach
Attachments are accessible only for community members.
Sahil_K
Moderator
Moderator
Moderator
250 replies posted First like given 100 solutions authored

Hi @Gaston ,

1)Unexpected reset may occur due to some interference\improper connection. So kindly connect only those pins which are being used by the H-bridge code through jumpers between the Arduino and Shield. For instance, INU-D11(Uno), INV-D10, INHU-D6, INHV-D5, GND-GND and IS-A4 to drive the bidirectional motor at the UV terminal.

2)For the issue of high current drawn in the reverse direction could you please let us know more details:

>>Is this high current continuous in reverse direction operation?

>>Could you please modify the code to run in the reverse direction only and check if the current drawn is high?

3)For reading the IS via Arduino I am attaching the code, kindly have a look.

Note:-

>>Current measurement via Arduino will have poor accuracy due to millivolt measurement across resistor R4.

>>R4: Resistors to generate a current sensing voltage from the IS current. According to different applications, the value of R4 could be adjusted to achieve a better current sense performance. Could you use a 1k resistor?

 

Best Regards,

Sahil Kumar

View solution in original post

0 Likes
4 Replies
Sahil_K
Moderator
Moderator
Moderator
250 replies posted First like given 100 solutions authored

Hi @Gaston ,

Please let us know the following details:-

>>  How is your hardware set up?

>>Have you made some changes to the code?

>> How are you measuring the voltage is_rc pin?

 

Best Regards

Sahil Kumar

0 Likes
Gaston
Level 1
Level 1
5 sign-ins Welcome! First reply posted

Hi Sahil,

Here's my hardware setup (I've updated the DC motor to a 12V car wiper):

Selection_023.png

[Vin=12V, current limitation 16.77A]
Brushed motor connected to U and V terminals of J2

I've not change the 'for_H_bridge' software

Comments:

  • In the first loop 'Accelerate forwards' (PWM 0->255) the max motor current is about 4A and measured current on is_rc=170mV (using a multimeter).  Sometimes the arduino is reset suddenly.
  • In the second loop 'Brake forwards' the arduino is sometimes reset suddenly  too.
  • In the third loop 'Accelerate backwards(PWM 0->255) the max motor current is 10A. Measured current on is_rc=250mV (using a multimeter)
  • In the fourth loop  'Brake backwards' everything work as expected.

Questions:

  • Why sometimes an unexpected reset occurs?
  • Why the current consumption when the motor rotates forward is 4A while when it rotates backwards it is 10A?
  • In which part of the program do I have to read the current? Inside the loop?

regards,
gaston

0 Likes
lock attach
Attachments are accessible only for community members.
Sahil_K
Moderator
Moderator
Moderator
250 replies posted First like given 100 solutions authored

Hi @Gaston ,

1)Unexpected reset may occur due to some interference\improper connection. So kindly connect only those pins which are being used by the H-bridge code through jumpers between the Arduino and Shield. For instance, INU-D11(Uno), INV-D10, INHU-D6, INHV-D5, GND-GND and IS-A4 to drive the bidirectional motor at the UV terminal.

2)For the issue of high current drawn in the reverse direction could you please let us know more details:

>>Is this high current continuous in reverse direction operation?

>>Could you please modify the code to run in the reverse direction only and check if the current drawn is high?

3)For reading the IS via Arduino I am attaching the code, kindly have a look.

Note:-

>>Current measurement via Arduino will have poor accuracy due to millivolt measurement across resistor R4.

>>R4: Resistors to generate a current sensing voltage from the IS current. According to different applications, the value of R4 could be adjusted to achieve a better current sense performance. Could you use a 1k resistor?

 

Best Regards,

Sahil Kumar

0 Likes
Gaston
Level 1
Level 1
5 sign-ins Welcome! First reply posted

Hi Sahil,

1) Yes I think unexpected reset may occur due to some interference. In fact there is no filter  attached on IFX007 outputs as suggested in application notes.

2) I think is a motor issue.  It's an older wiper BDC motor.

3) I've running the attached code. Okay, I can see Is values through serial monitor. This is enough to make some testing. Thanks!

BR
gaston

0 Likes