i am working on project for which i need to drive a pair of 5-wire Maxon EC 32 flat motors (http://test.maxonmotor.com/docsx/Download/Product/Pdf/EC_32_flat_353400_Operating-Instruction_en.pdf (http://test.maxonmotor.com/docsx/Download/Product/Pdf/EC_32_flat_353400_Operating-Instruction_en.pdf)), using a high voltage capable MotoMama V2.0 shield and an arduino uno.
The motor runs on 10..24V, i feed 20V into the MotoMama from an external source. Now, according to the MotoMama Spec whatever is fed into Vin should be available at the Motor outputs, however using the "analogWrite()" command i get not more than 4.8 V on the outputs.
Sadly, the motor will not run with less than 9V, and if i use its control input (feeding power to the motor directly, and using the MotoMama output to drive the speed control wire, which is prepared to receive between 0.33 and 10 V), then i won't be able to get to more than 50% speed.
am i missing something? i should say here that this is my first arduino project...
any help is greatly appreciated, also any suggestions on how i could alter the setup to get an easier and better result.
Now, according to the MotoMama Spec whatever is fed into Vin should be available at the Motor outputs
No, that's not the case. The L298 chip, which is what a MotoMama uses, always loses 2V minimum, going to 3V at 1A and 5V at 2A... check the L298 datasheet.
But that said, if your'e putting 20V in you should get at least 15V out, 18V under no load.
Suggest you post a schematic or a Fritzing of what you've got hooked up.
however using the "analogWrite()" command i get not more than 4.8 V on the outputs.
.... not sure what you mean here. Are you measuring voltage with the analogRead() (did you mean?) in which case you shouldn't be putting more than 5V in the first place.
thank you very much for this.
i've attached a schematic, sorry for not having more professional tools for this.
however, the motor load is 1.4 A at max, the power supply delivers 4.5 A, so here we're safe.
with "analogWrite()" i meant that i use the PWM on pin 10, with the sketch command "analogWrite(10, 255);", when i run this on the arduino i measure 4.8V on the MotoMama out. with "analogWrite(10, 128);" i get about 3V.
so i was wondering if a PWM output is never above 5V regardless of what i'm feeding, and that i should probably use another command set (which i don't know) in the sketch?
so i was wondering if a PWM output is never above 5V regardless of what i'm feeding
No, it's never over 5V
edit... I can't open the pdf... says it's damaged
Well according to that pic, there's a whole lot missing....
You need to provide 5v and ground to the MM to give it power, and you need to provide control signals to that section called Control Zone in the middle.
What exactly are you pwm-ing?.... have you shown all connections?
And your code too, would probably help
Edit... if you look at the manual, you need to provide a high/low or low/high pair it In1/In2, as well as high to EnA... the EnA high can be pwm'd, it's what gives the motor it's speed control....
Sorry that's mostly crap... I don't use mine as a shield, I have it loose... yours is obviously plugged on top...
So forget that previous post of mine...
Have you got In1 and In2 set high and low via pins 8 and 9 to give it direction?
Edit... and this is me never having used the MM as a shield, always loose... don't you need to give the MM 5V and ground at the screw terminals to drive the board?- or does it take power from the Arduino underneath? (The Vin is the motor power and not to drive the MM)
yes its a shield, arduino underneath.
arduino gets power from MM, which at rhe moment gets only those 20V.
yes i set In1 and In2, and i get correct direction feedback from the indicator leds on the MM. and i get carious different voktages depending on what i send, but always 15V to little.
so i guess that the MM is fine & well fed with the 20V & GND, and it also drives the arduino, since it works without USB connection.
do you get higher voltage in & out?
i will get a 5V supply to the MM tmrw and try...
any other ideas?
Are you sure the MM gets its power from the 20V?.... I'm pretty sure that 20V is just fed to the 298's pin that drives the motors, and that it needs a different supply of 5V to drive the logic side of the 298 chip itself. The manual lists Vlogic and Vsupply as separate items....
Certainly, when I ran mine (again, loose not as a shield) I took 5V and ground from the Arduino to the 5V and ground screw terminals on the MM board.
The motor listed has integrated driver electronics - you _cannot_ PWM its supply at all, that is going to cause all sorts of
problems. Don't do it.
The 5-wire version has an analog 0..10V input to control speed - that's how you can control speed, which means
you'll need to generate a 0 to 10V control voltage. You can generate 0 to 5V by passing a PWM signal through an
RC low-pass filter.
Direction is via a TTL-compatible logic signal.