If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
Hell All
When I first wrote the previous code to pulse the motors on multiple lines, I was not concerned about how we did it in code, but that it worked. We got that. As GChilders so eloquently pointed out, the previous code does not follow current methods of code and function. I have rewritten the basic pulse program for those who are not up to date yet to use until they catch up. This is a basic, pot controlled setup that will run from one to six pulse lines for any motor. I have tested both the previous code and this new code and the difference in function is the same, but the new code is correct and smaller as well as how we get the pulses. This code has a frequency of 490 Hz and only duty is changed. Copy into Arduino and (Save). Change the (pulsecount ) to what number of pulse feeds you require and put 10K pot on (A1). Output pins used, depending on your (pulsecount ) run from top down in the list as 5,6,9,10,11 and 12. You can change these as you require.
I have updated the programs I am working on to this method as well. Thank You GChilders for getting my head out of my As*.
Dana
/*
MultiPulser2_0
This example shows how to pulse 4 signals on pins 6, 9, 10 and 11
using the analogWrite() function.
This example code is in the public domain.
*/
int pulsecount = 4; // Change count to the number of pulses you need
// Use pins from top down to your count
int first=5;
int second=6;
int third = 9;
int forth = 10;
int fifth = 11;
int sixth=12;
int StartNumber =5;
int TopNumber = 253;
int wait = 25;
int dutypin = A1;
int dutyValue = 0;
void setup() {
// declare pins 6, 9, 10, 11 to be an output:
pinMode(first, OUTPUT);
pinMode(second, OUTPUT);
pinMode(third, OUTPUT);
pinMode(forth, OUTPUT);
pinMode(fifth, OUTPUT);
pinMode(sixth, OUTPUT);
I am not new to this thread but have not thought that I had anything to contribute being a fellow student of this technology. But I have a suggestion for Dana and Hitby3K and Sampojo. The pwm pins can have a duty cycle of 0 to 255. This is utilized by the fade program to fade the intensity of the leds. In order to use this effectively for motor control try turning off the leds after the wait period. This would enable you to use the full range of the duty cycle to increase the voltage at the base of the mosfets which will allow more voltage to go to the motor coils. This would increase the torque going to the motor when the gen head gets a larger load and slows the rpms down. If combined with a tachometer you could get automatic speed control by using a select case coupled with several loops that would increase the duty cycle from its current point by say 5 point increments and if the rpms drop below 3400 say 10 point increments . You would be able to determine the appropriate wait period and duty cycle for the load.
Here is a simple program that demonstrates the idea.
/*
Fade 4 LED
This example shows how to fade an 4 LEDs on pins 6, 9, 10 and 11
using the analogWrite() function.
This example code is in the public domain.
*/
int blueLED = 11;
int greenLED=10;
int redLED = 9;
int yellowLED = 6; // the pin that the LED is attached to
int brightness = 0; // how bright the LED is
int fadeAmount = 5; // how many points to fade the LED by
int wait = 100;
// the setup routine runs once when you press reset:
void setup() {
// declare pins 6, 9, 10, 11 to be an output:
pinMode(blueLED, OUTPUT);
pinMode(greenLED, OUTPUT);
pinMode(yellowLED, OUTPUT);
pinMode(redLED, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop() {
// set the brightness of pin 11:
analogWrite(blueLED, brightness);
// wait for milliseconds to see the dimming effect
delay(wait);
// turn off led
analogWrite(blueLED, 0);
// set the brightness of pin 10:
analogWrite(greenLED, brightness);
// wait for milliseconds to see the dimming effect
delay(wait);
// turn off led
analogWrite(greenLED, 0);;
// set the brightness of pin 9:
analogWrite(redLED, brightness);
// wait for milliseconds to see the dimming effect
delay(wait);
// turn off led
analogWrite(redLED, 0);
// set the brightness of pin 6:
analogWrite(yellowLED, brightness);
// wait for milliseconds to see the dimming effect
delay(wait);
// turn off led
analogWrite(yellowLED, 0);
// change the brightness for next time through the loop:
brightness = brightness + fadeAmount;
// reverse the direction of the fading at the ends of the fade:
if (brightness == 0 || brightness == 255) {
fadeAmount = -fadeAmount ;
}
}
This program increases the intensity of the leds every 1/10 of a second or 100 milliseconds. it clearly demonstrates the on and off of each pin. If you want to see a more dramatic fade effect more quickly then reduce the wait period to 10 milliseconds.
OK I replaced all of the Bidirectional Diodes and soldered them in and the original Mosfets .
I then reduced the Aux power to 12v connected the circuit to an Un modified "MY 250w motor" it was running it OK I then connected it up to a "MY1000watt motor" also un modified it went OK too the Mosfets were just a bit warm I tied to stop each motor by pressing a piece of soft wood against the shaft they both almost stopped but the amps of each motor only increased by a bit under 1 amp extra on each motor. and the amps to the driver did not really change.
I am very pleased with the results and will make some videos to show the results when I clean up my work bench and find my wife's Video camera.
.
I will keep you all posted.
G'day et al
I finally cleaned up my shed and set up my Monster driver to make a video
I connected everything up and switched it on
The motor turned once then stopped I switched it off checked everything and switched on again it turned once and stopped
I thought I would disconnected all the wires and check the Mosfets I discovered that the Negative to the circuit was really not connected It only looked like it was.
I connected it securely this time and switched on again this time it spun up BUT as I turned the pot the speed didn't change.
I tested the output of the Oscillator it was reading OK so the monster Driver must have something Blown the MIC 4452YN was hot so I think it is the problem
I have to fix it and Make another Monster driver
Kindest Regards to you all
Kogs slowly but getting there
@jimm
UFO always had us looking at his extra sets of brushes as a generator as we built his asym motor designs. The voltages there were always lower than input. The Imperial has 4 staters. This translates to the motor having 4 brush pairs, of which in the original usage as a motor-generator, it would use 2 pairs for generator output. I think much of the BEMF is generally being used as a coil rotates off a commutator element, to assist in rotation and what voltage left behind that we have been trying to use is essentially like waste heat of a furnace going up the chimney. Not much there. Now recently I have come to understand that UFO has instructed replicators to use all 4 brush pairs to drive the machine. It seems the lady as we affectionately call radiant energy, rewards this activity in higher multiples... As long as it is a pulsed input.
PS: the "clacker" was just how UFO had to introduce and clarify how the two threads worked together, and how his motors must be pulsed to realize the dream. Circuitry at that time could not drive the Imperial And the monster driver circuit had not been developed yet.
Last edited by sampojo; 07-02-2013, 12:44 AM.
Reason: Typo
Thanks for the condensed explanation, now it makes more sense.
The "turbo boost" concept is very "Tesla-like with harmonic timed pulses.
The PWM is good idea to avoid runaway with load variations.
That "clacker" has to go! I 'm sure some adequate mosfets can be employed there. You may even consider back emf recovery circuits that siphoned it off and re-inject it into the the power system rather than the standard D-S diode shunt.
However, I know a guy who was doing experiments on another interesting concept who called me up saying that "he had done it". I went over to see, only to discover that the test methods were inaccurate, leading him to improper conclusions.
Those instruments are not recoding everything that is going on like a a DSO might.
The pulse and driver system energy has to considered as well as the main power draw. Judging by the wires, it appears to be substantial.
If everything pans out, this is a very cool twist on DC motors. It could mean long range electric vehicles!
Hi Jimm, this is just a super tough PWM that can handle huge spikes of back emf radiant energy without frying, hence Monster Driver. At the beginnig of the thread Ufo shows how to reveal the presence and draw out Radiant energy in a static coil. This pulsing concept is now being applied to multiple dynamic coils in his asymmetric motor thread. We are making the motor convert the Radiant energy into mechanical energy, and then drive a convention AC brushless generator head with it. The machine becomes what is known as a prime mover in power generation
the circuits posted here resemble standard boost regulator concepts used in electronic power conversion.
The only difference, as I think as I understand it, is that max V is desired due to the lack of a LC circuit or specific timing.
V = L (dI/dt)
Where is the "free" anything?
It takes power to run the circuit, and the energy was was stored in the magnetic field until it suddenly collapses, resulting in a HV spike. the steeper the square wave (fast rise, fall times) the better.
BTW look into the MUR360 fast recovery diodes (50ns) for better results. You may have to put several in series if you get large spikes. The in4007 is way too slow.
Arrangements being made to post on OshPark Store URL. No details yet. Be able to order the PCB board (only) to 1ea., i.e. or as many as you want.
This is produced from the gerber files of the MD V5.1 T3001 files in Dana's post 1981
The OSHPark system required that a copy of the bottom layer file be added, renamed as a top layer file since the Monster driver is single layer and the OP system default is double layer.
Improvement should be collected for follow-on versions. Dana has mentioned some tight assembly areas and traces burning up as they may be too thin at some junctions.
Thanks Wayne! These guys do Gerber data! And reasonably priced! Well I am intimately familiar with the circuit now putting it in ExpressPCB tools anyway. It has helped doing dry runs with the circuit diagrams and filled in some blanks for me on the BOM. Here is a comparison of pricing models.
OSHPark 20 monster drvr boards ($1/sq.in.) $200 $10/bd 150sq.in. min lots of 10
ExPCB 20 monster drvr boards $235 $11.75/bd proto pricing, have not investigated production pricing
No running design unde EcPCB still.
To get the Gerber data files, you must install Target 3001, load the JS/prochiro/DH files and extract the gerber files.
Hey Sampojo, if you use OSHPark, can you please ask them to allocate a part number to the Monster board, so everyone can order without having to send all the files.
If any of you are open to checking out an alternate PCB manufacturer with low prices, you might want to explore Eagle Cad Free edition and OSHPark.com. I have used them recently and with good results.
Thanks Wayne! These guys do Gerber data! And reasonably priced! Well I am intimately familiar with the circuit now putting it in ExpressPCB tools anyway. It has helped doing dry runs with the circuit diagrams and filled in some blanks for me on the BOM. Here is a comparison of pricing models.
OSHPark 20 monster drvr boards ($1/sq.in.) $200 $10/bd 150sq.in. min lots of 10
ExPCB 20 monster drvr boards $235 $11.75/bd proto pricing, have not investigated production pricing
No running design unde EcPCB still.
To get the Gerber data files, you must install Target 3001, load the JS/prochiro/DH files and extract the gerber files.
@ Sampojo
One thing that I see in your design is that your hookups are located on all corners. If you are planning on stacking all four into a small area or box you have a nightmare to hookup all those wires without taking them all apart. Having all wires possible in one location and possibly with a multi-plug it a good way to go. This is an example of what you will find when you buy a circuit without having it proofed first. Your circuit may work but with all those locations, you can not fit them together in the end the way you wanted too. JS has put a lot of time into his design and it shows much forethought and experience. This circuit, as machine is finding out, must be built, taken apart for study -testing-repair many times so functionality is important also. To do all this takes experience which means build several first then order a fleet.
Dana
Leave a comment: