I have a Zumo Robot built using a FRDM-kl25z instead Arduino. I bought 150rpm motors but they go too slow and that’s the same for buzzer. They don’t even have 150 rotations per minute, only around 60 from what I have counted. The hole robot looks like it would be under powered. If I plug in the robot the buzzer is fine (is sounds normal and far loader than unplugged) but of course that is not the same for motors because they don’t get power from USB because they would burn it. I don’t think my code is wrong, anyway this is the code I use for controlling the PwmOut (I use Mbed):
motorDirection = 0;
motorPin.period_us(100); // Modyfing this parameter doesn't make my motors faster
I am not very familiar with that Freescale board, but from your description, it sounds like the problem might be a power issue, or the signals from the Freescale board are not what you are expecting. Do you have access to an oscilloscope? If you do, could you try measuring the PWM signals from the Freescale board and post the results? You might also check to make sure that your batteries are fully charged or fresh.
By the way, from my understanding of PwmOut, it looks like you are defining a period that is half the length of your pulse width. I am not sure what output this would result in, but you might consider changing the pulse width to match the period so that it should be set to a 100% duty cycle.
Hello Brandon, thanks for your reply.
I have solved the problem with the motors, actually I found out that my motors speed was 60rpm so it goes as it should, even though I thought I bought 320rpm motors.
The problem with buzzer is still, and I am going to measure with an oscilloscope today and post the results. It looks like it is a power problem, but my batteries are new and I have measured the power from batteries, 6V as it should. I don’t know why connecting the usb on Freescale board changes the power of buzzer, as the power supply would be redirected. The code is not a problem, because otherwise it wouldn’t work with the usb connected. I will post the results of the oscilloscope today.
Could you post a video showing the difference between the way the buzzer sounds with and without the USB connected? If you have an Arduino Leonardo or Arduino Uno, could you try using it on the Zumo with the “ZumoBuzzer” example? You can find the Zumo shield Arduino library on the “Zumo Shield Libraries” GitHub page. Please note that you might need to change the buzzer control jumper depending on what Arduino you use. You can find more about this jumper in the “Jumper settings” section of the Zumo Shield for Arduino User’s Guide, which is located under the “Resources” tab of the Zumo product pages.
Also, have you had any time to get the oscilloscope captures?
have you added a 5V DC-DC converter to the Zumo shield? Running from batteries, the FRDM-KL25Z board does not generate/provide the needed 5V to the Zumo, so you need to add a DC-DC converter.
The following articles could be helpful for you:
mcuoneclipse.com/2013/01/31/the- … umo-robot/
This one describes how to add the DC-DC converter:
mcuoneclipse.com/2013/02/08/zumo … rdm-kl25z/
If you have a RevE board, you can easily add a Pololu 5V DC-DC converter:
mcuoneclipse.com/2013/06/09/frdm … d-arrived/
And keep in mind that the FRDM-KL25Z is a 3.3V board: so you need to change the voltage of the reflectance sensor too, as noted in above articles, otherwise you might damage your board.
I hope this helps,