Thanks Geoff!
I have the day off so I'm tinkering some.
I managed to get a big 12v DC motor (Pulls about 15 amps) working using the "fade" example here:
-------------------------------------------------------------------------------------------------------------------------------------------------------------
/*
Fading
This example shows how to fade an LED using the analogWrite() function.
The circuit:
* LED attached from digital pin 9 to ground.
Created 1 Nov 2008
By David A. Mellis
modified 30 Aug 2011
By Tom Igoe
http://arduino.cc/en/Tutorial/Fading This example code is in the public domain.
*/
int ledPin = 9; // LED connected to digital pin 9
void setup() {
// nothing happens in setup
}
void loop() {
// fade in from min to max in increments of 5 points:
for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
// sets the value (range from 0 to 255):
analogWrite(ledPin, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(500);
}
// fade out from max to min in increments of 5 points:
for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
// sets the value (range from 0 to 255):
analogWrite(ledPin, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(500);
}
// fade in from min to max in increments of 5 points:
for(int fadeValue = 0 ; fadeValue <= 155; fadeValue +=5) {
// sets the value (range from 0 to 100):
analogWrite(ledPin, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(500);
}
// fade out from max to min in increments of 5 points:
for(int fadeValue = 155 ; fadeValue >= 0; fadeValue -=5) {
// sets the value (range from 0 to 255):
analogWrite(ledPin, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(500);
}
// fade in from min to max in increments of 5 points:
for(int fadeValue = 0 ; fadeValue <= 55; fadeValue +=5) {
// sets the value (range from 0 to 100):
analogWrite(ledPin, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(500);
}
// fade out from max to min in increments of 5 points:
for(int fadeValue = 55 ; fadeValue >= 0; fadeValue -=5) {
// sets the value (range from 0 to 255):
analogWrite(ledPin, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(500);
}
}
-------------------------------------------------------------------------------------------------------------------------------------------------------------
I fooled with the code some to get a feel for it. I still have some weirdness going on like the motor "singing" and my flyback diode getting hot but it looks promising!
I think I need to explore serial input to the computer (I think that's correct) so I can see what's going on with the code.
I really need to start doing a better job of documentation to help me along.
Thanks again for the help! This is really great fun and very satisfying!
Hoff