Shop OBEX P1 Docs P2 Docs Learn Events
Question about the H-Bridge in the MSR-1 Controller — Parallax Forums

Question about the H-Bridge in the MSR-1 Controller

GeorgeCollinsGeorgeCollins Posts: 132
edited 2009-12-24 00:59 in Robotics
I do not seem to be getting power out of the socket of the motor A or motor B plug of my MSR-1 Robot Controller board. I am running it on two NiMH batteries (at 14.4 v 1600mAh) connected into the power plug. The board seems to be operating fine on this power, I have run it with two Ping Sensors and two continuous rotation servos and it works great. But when I tried to run a motor off the H-Bridge, no response.

Here is the code I was using:
CON
    _clkmode = xtal1 + pll16x                           
    _xinfreq = 5_000_000                              
PUB Init
  dira[noparse][[/noparse]27..24] := %1111 ' Set P24 Through P27 To Output
  outa[noparse][[/noparse]24] := 0  
  outa[noparse][[/noparse]25] := 1 
  outa[noparse][[/noparse]26]:=0
  outa[noparse][[/noparse]27]:=1
  waitcnt(clkfreq * 30 + cnt) '30 Second Pause





I have been using this motor servocity.com/html/303_rpm_gear_motor.html plugged into the motor A socket. No motion from the code above or the stingray sample code.

I tried unplugging the motor and connecting a volt meter to the motor A and motor B socket pins, testing each one in case their was a problem with the motor or the plug. The volt meter registers nothing positive or negative when the code above is started or finishes.

Any suggestions? Could I have burned out the H bridge? Are those batteries too much? Does it matter that I am using one motor socket and have nothing plugged into the second one?

Thanks,
George

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
My Robots

Comments

  • GWJaxGWJax Posts: 267
    edited 2009-12-21 17:54
    George, The program looks fine. One thing is did you turn the switch to power on/motor on position. This location is all the way over to the right. The motors are fine for this board and the batteries you have connected is correct as well. If this does not work post a quick video and or a photo of your setup. The L6205 has a thermal shutdown protection and works at a freq of up to 100kHz. Keep us informed.

    Jax

    update:
    Try removing the outa[noparse][[/noparse]24] and the outa[noparse][[/noparse]26] from your list if you are just trying to move the motors.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    If a robot has a screw then it must be romoved and hacked into..

    Post Edited (GWJax) : 12/21/2009 6:06:28 PM GMT
  • GeorgeCollinsGeorgeCollins Posts: 132
    edited 2009-12-23 08:02
    GWJax,
    I doubled checked and yes I have the switch in the power on/ motor on position. I put a picture of the board layout and a video of testing with a motor and a VOM at the bottom of www.trailofdestruction.com/combot.htm.

    I tried this with the code for outa[noparse][[/noparse]24] & outa[noparse][[/noparse]26] in and out. It did not seem to matter. I am not sure what you mean by the frequency, do you mean the interval at which you change pin states? In the video I set the pin states as above, wait 15 seconds, and then run the servo forward (so I know when 15 seconds are up.) It also shows that the power is working.

    Thank you very much for your help. Any ideas?


    George

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    My Robots
  • Chris SavageChris Savage Parallax Engineering Posts: 14,406
    edited 2009-12-23 19:54
    George,

    It's unlikely there's an issue with the H-Bridge, but being we're so close to being closed until January, it might be a good idea to call Tech Support as soon as possible.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Chris Savage

    Parallax Engineering
    Check out the new Savage Circuits TV!
    ·
  • GeorgeCollinsGeorgeCollins Posts: 132
    edited 2009-12-23 21:05
    Chris,
    Thanks, I will probably call after the holiday. Just wanted to check first in case their was something simple.

    G

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    My Robots
  • Chris SavageChris Savage Parallax Engineering Posts: 14,406
    edited 2009-12-23 22:09
    George,

    Rest assured, if something is wrong with it we will take care of it. I apologize it took us so long to get this far. It may just be one of those weird things.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Chris Savage

    Parallax Engineering
    Check out the new Savage Circuits TV!
    ·
  • GWJaxGWJax Posts: 267
    edited 2009-12-24 00:59
    OK George, I read your site and you stated that you plan to use 3 of your battery packs, One for the servos and 2 for the motor. With this board you can only input no more than 15v on the J8 [noparse][[/noparse]Vin] connector. This will power all your servos and your motor. Another thing is that your motor is only rated MAX at 12vDC. If you apply more than that this will break down the motor faster. I see that your only using Motor A to drive this motor so the code you wrote does not need any code for pin 26 and 27. Now to the fun stuff, using your DMM with the board powered on and the motor on put your ground {Black Lead} to any part of system Ground, your battery lead would be great. Next place the Red Lead on pin 2 of IC U8 which is your L6205 Dual Hbridge chip. Make sure you have the same voltage as your battery that is connected to the board. This is a direct connection. Next check pin 19 of the same chip U8, this voltage should be the same. If you have no voltage here then there is a bad connection from the battery to this chip. Another check if you do not want measure the voltage and risk shorting out your board from a small slip of the hands you can do the same thing using a continuity test. First unplug your battery then turn your power switch on that includes the motor on. Check from the ground pin of your Vin and touch pin 1,8,10,11,13 and 20 on the U8 chip. These connections should be a direct short for the ground. Next move your lead to the Positive end of the Vin and check on U8 pin 2,19 again you should have a direct short if these quick test fail then there is bad solder joint some where on the board or a broken lead line. At this point I would contact Parallax and get an exchange. If all is good then let me know and we'll do more testing to resolve your issues.

    Here is a shorten version of your program that works great..

    CON
    _clkmode = xtal1 + pll16x
    _xinfreq = 5_000_000
    PUB Init
    dira[noparse][[/noparse]25..24] := %11 ' Set P24 Through P25 To Output
    outa[noparse][[/noparse]25] :=1 'Start motor A forward
    waitcnt(clkfreq * 30 + cnt) '30 Second Pause
    outa[noparse][[/noparse]25] :=0 'Stop motor A
    repeat

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    If a robot has a screw then it must be romoved and hacked into..
Sign In or Register to comment.