Arduino VIC resonator

zchiotis

Arduino VIC resonator
« on April 7th, 2013, 03:26 PM »Last edited on April 26th, 2013, 04:13 AM by zchiotis
Hi there everybody.!!

I am here to purpose a new way of replicating Stanley Meyer's work.
Something that could cost less and may make our lives easier.
We all live in a more digital world than yesterday and all here have seen replications of the step charging electrostatic effect in water.

So I thought of a new way to develop a module that will oscillate, scan a range of frequency, find the highest amplitude, and lock into that value.

This is the updated version 0.2.10
Watch in HD

https://www.youtube.com/watch?v=u48kOGoTQjg

https://www.youtube.com/watch?v=t_RMh9v-8mk

Code: [Select]
// FREQUENCY GENERATOR / RESONATOR
// v 0.1.0alpha
//Designed on purpose of replicating the Stanley Meyer WFC with VIC technology. Reference video: http://youtu.be/F-FgsE7s4YY?t=28m13s
//This program was designed in arduino Leonardo with a cheap LCD(16x2) screen, and will start to oscillate on pin 9
//as soon as you plug in power. Frequency generation will start at 1000hz and climb up to 15000hz and then decrease
//from 15000hz to 1000hz. In this period of frequency scanning, the best voltage found on pin A0 will be stored in a variable
//so does the the frequency value that the voltage was found in. After scanning has finished oscillator will come back
//on the best frequency found, and hold there until you press the button on pin 8. Then start over.
//This code was developed by Zissis Chiotis and is given in open source.
//You may change or distribute this code for a better world.


It is nothing much complicated...
Intergrated for LCD support, tested on Leonardo R3.
It will start oscillating in the range of 500Hz to 18000Hz and back,
store the best value of amplitude given at exact frequency,
and then lock the oscillator at the best found frequency.
The oscillating frequency may not be so clear on the scope or may need some kind of filters.

This code needs some alpha testers who have an assembled vic coil and a scope and may try the code to see its progress.
Any suggestions or help about improving the code is appreciated.!

Parts.:
- trimmers are 10kΩ
- R at button is 1kΩ
- other resistors are 220Ω or less
- Diode is Zener at 5v to protect the arduino's analog input
- Transistor is any NPN audiophile transistor that can handle your WFC. (ex.2N3055)
WARNING..!!!
Please measure the voltage output of your pulse pickup coil, and configure the voltage divider before connecting to the microprocessor.

Updade ver.0.2.10alpha
- Improved code stability and timing
- Added Duty cycle option on the gating frequency
- More info: http://www.open-source-energy.org/?tid=1097&pid=14742#pid14742
- https://www.youtube.com/watch?v=u48kOGoTQjg

UPDATE ver. 0.2.9 alpha Recommended
- Added Gating function at 50% duty cycle for now (software, but it is functioning good)
- Added potentiometer to control the gating frequency
- Added LEDs - Scanning, Locking and gating indicators
- Added Checkpoint before locking
- Added function, After frequency lock, if the voltage drops off 10% of the max voltage value found, system will scan again for the best frequency  
- Voltage is now printed in LCD with values from 0.0 to 5.0 volts
- Improved UI
- Improved code quality
- Added full comments inside the code, so there is no schematic needed if you know arduino basics. I will try to find sime time to make a full schematic.

DDS version is removed because of unnecessity. The goal is the KISS method
Quote
UPDATE ver. 0.3.7 alpha
- Added a Digital synthesizer (cheap ebay DDS module) Very clear sin wave.
- Added another check point before locking
- Added "Scan" led and "Locked" led
- Improved UI
- Added function to start scan again if resonant voltage after lock, drops 10% of the Vmax found when scanned.
- Still working on Gating function.
Have a nice day,
Zissis.!

~Russ

RE: Arduino VIC resonator
« Reply #1, on April 7th, 2013, 04:56 PM »
Quote from zchiotis on April 7th, 2013, 03:26 PM
Hi there everybody.!!

I am here to purpose a new way of replicating Stanley Meyer's work.
Something that could cost less and may make our lives easier.
We all live in a more digital world than yesterday and all here have seen replications of the step charging electrostatic effect in water.

So I thought of a new way to develop a module that will oscillate, scan a range of frequency, find the highest amplitude, and lock into that value.

Here is an arduino code I wrote...

Code: [Select]

// FREQUENCY GENERATOR / RESONATOR
// v 0.1.0alpha
//Designed on purpose of replicating the Stanley Meyer WFC with VIC technology. Reference video: http://youtu.be/F-FgsE7s4YY?t=28m13s
//This program was designed in arduino Leonardo with a cheap LCD(16x2) screen, and will start to oscillate on pin 9
//as soon as you plug in power. Frequency generation will start at 1000hz and climb up to 15000hz and then decrease
//from 15000hz to 1000hz. In this period of frequency scanning, the best voltage found on pin A0 will be stored in a variable
//so does the the frequency value that the voltage was found in. After scanning has finished oscillator will come back
//on the best frequency found, and hold there until you press the button on pin 8. Then start over.
//This code was developed by Zissis Chiotis and is given in open source.
//You may change or distribute this code for a better world.

#include
LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
int hz = 500;
int freq = 0;
int volt = 0;
int vmax = 0;
int intval = 0;

void setup()
{
  lcd.begin(16, 2);
  lcd.print("VIC Scan Circuit");
  lcd.setCursor(0,1);
  lcd.print("ver. 0.1.0alpha");
  delay(5000);
  //Serial.begin(9600);
  pinMode(9, OUTPUT);                  //pin that tones will be sent from
  pinMode(A0, INPUT);                   //voltage reading pin
  pinMode(8, INPUT);                     //button pin
}

void loop()
{
vmax = 0;                             //comment if you want to keep the best frequency of all scans
intval = 0;                             //comment if you want to see the frequency found intervals added from all scans
lcd.clear();
lcd.print("   Scanning... ");
lcd.setCursor(11,1);
lcd.print("Hz");
for (hz=1000; hz<=15000; hz=hz+10)       //start from 1khz to 15khz to oscillate the circuit
{
  tone(9,hz);                              //will send a tone at first
  delay(1);                                //wait for a millisecond
  volt = analogRead(A0);             //then read the voltage
  if (vmax < volt)                      //if there is a resonant point, voltage should have the highest value on this frequency
  {
    vmax = volt;
    freq = hz;                        //remember that frequency
    intval = intval++;              //times found a nice frequency interval during search
    lcd.setCursor(0,1);
    lcd.print(intval);
  }
  lcd.setCursor(5,1);
  lcd.print(hz);
  }
  for (hz=15000; hz>=1000; hz=hz-10)      //do a descent scan
  {
    tone(9,hz);  
    volt = analogRead(A0);
  delay(1);
  if (vmax < volt)
  {
  vmax = volt;
  freq = hz;
  intval = intval++  ;
  lcd.setCursor(0,1);
  lcd.print(intval);
  }
  if (hz < 10000)
  {
  lcd.setCursor(9,1);
  lcd.print(" ");
  }
  lcd.setCursor(5,1);
  lcd.print(hz);
  }
  tone(9,freq);                      //output the frequency found with higher voltage reading
  lcd.clear();
  lcd.print("Resonance found");
  lcd.setCursor(4, 1);
  lcd.print("@");
  lcd.setCursor(6, 1);
  lcd.print(freq);
  lcd.setCursor(12, 1);
  lcd.print("Hz");
  delay(3500);
  lcd.clear();
  lcd.print("Vres =      v");
  lcd.setCursor(7,0);
  lcd.print(volt);
  lcd.setCursor(0,1);
  lcd.print("Fres =      Hz");
  lcd.setCursor(7,1);
  lcd.print(freq);
  //Serial.println(vmax);
  //Serial.println(freq);
  // delay(15000)                                //wait for 15 seconds for the next scan. This can be set to whatever you like
  while (digitalRead(8) == LOW)           //or wait for button to be pressed to start the new scan
  {
  volt = analogRead(A0);
  lcd.setCursor(7,0);
  lcd.print("   ");
  lcd.setCursor(7,0);
  lcd.print(volt);
  delay(100);
  }
 

}


It is nothing much complicated...
Intergrated for LCD support, tested on Leonardo R3.
It will start oscillating in the range of 1000Hz to 15000Hz and back,
store the best value of amplitude given at exact frequency,
and then lock the oscillator at the best found frequency.
Note.: GATING IS NOT YET AVAILABLE
There are many holes in the code, such as the voltage readings are in digital mode (0 - 1023)
The oscillating frequency may not be so clear on the scope or may need some kind of filters.

This code needs some alpha testers who have an assembled vic coil and a scope and may try the code to see its progress.
Any suggestions or help about improving the code is appreciated.!

Have a nice day,
Zissis.!
Grate work my friend! Will play with this!

Nice work and thank you for sharing!

Will give my feedback when I get time to play!

Also do you have a schmatic pin out!!


Blessings! ~Russ

firepinto

RE: Arduino VIC resonator
« Reply #2, on April 7th, 2013, 05:29 PM »
Very nice!  I wonder if it will work on an UNO?  :cool::cool:

Nate

zchiotis

RE: Arduino VIC resonator
« Reply #3, on April 8th, 2013, 12:29 AM »
Quote from firepinto on April 7th, 2013, 05:29 PM
Very nice!  I wonder if it will work on an UNO?  :cool::cool:
Of course it will work on any arduino. its a very simple code and there are no special features.
Quote from  ~Russ/Rwg42985'
Also do you have a schmatic pin out!!
My bad...
Although it is very simple the right thing to do is to make one.!!

Thanks.!

zchiotis

RE: Arduino VIC resonator
« Reply #4, on April 8th, 2013, 05:11 AM »
I edited the first post.

Added a schematic on how to connect, and some values.


Jean-Alexandre

RE: Arduino VIC resonator
« Reply #6, on April 11th, 2013, 05:52 AM »
very nice job.
It's great that this project continues to live.

Jean-ALexandre

Gunther Rattay

RE: Arduino VIC resonator
« Reply #7, on April 11th, 2013, 06:15 AM »
Quote from zchiotis on April 8th, 2013, 05:11 AM
I edited the first post.

Added a schematic on how to connect, and some values.
Well done the wireing diagram. It looks very close to the real one ...

If you want to make a circuit diagram please use a more abstract format to make component usage more transparent.

tools to do so are i.e. kicad and LTSpice.




zchiotis

RE: Arduino VIC resonator
« Reply #8, on April 12th, 2013, 08:08 AM »
Added a new Update for vic resonator.

I edited the first post. Download the zip file 0.2.4
If you have a DDS module download the DDS version 0.3.7

I need some help with the gating.
Anyone with arduino or C++ experience that could help, please contact me.

Thanks!

Matt Watts

RE: Arduino VIC resonator
« Reply #9, on April 12th, 2013, 09:29 AM »Last edited on June 2nd, 2013, 04:14 PM by Matt Watts
Closely related is JL Naudin's pulse motor Arduino controller.  Check it out at:
http://jnaudin.free.fr/dlenz/DLE23en.htm

Having these kind of digital processors in your toolbox is invaluable for energy research and testing.

My version of the PulseGen app that does include gating.
http://open-source-energy.org/?tid=1200

It uses the USB serial for communication with a laptop since I didn't have a display on my UNO device.  If nothing else, it will give you some code examples of how I handled pulse, duty cycle and gating.  I managed to hit a wall with the limited memory I had available to go much further, but with bigger Arduinos, you can take this out as far as you want.

zchiotis

RE: Arduino VIC resonator
« Reply #10, on April 12th, 2013, 11:32 AM »Last edited on June 2nd, 2013, 04:15 PM by Matt Watts
Quote from Dog-One on April 12th, 2013, 09:29 AM
It uses the USB serial for communication with a laptop since I didn't have a display on my UNO device.  If nothing else, it will give you some code examples of how I handled pulse, duty cycle and gating.  I managed to hit a wall with the limited memory I had available to go much further, but with bigger Arduinos, you can take this out as far as you want.
I saw your code... very nice approach but it still put out a dirty signal such as mine. I use tone function.

This is the reason I purchased a digital syntesizer module (ver 0.3.x see video)
This waveform itself is very very clear.

But there is a way to gate the output from the synthesizer with a tone function from the arduino pin but still has a lot of noise.

Maybe we need to use a digital timer chip (ex. HTC555) that will gate the frequency output.

any ideas appreciated.!
Zissis

rangeroverdan

RE: Arduino VIC resonator
« Reply #11, on April 15th, 2013, 12:53 PM »
Awesome work ! I'm a total newbie to hho, arduino and this forum but I'm getting there. Any chance of a schematic for the dds from arduino?

zchiotis

RE: Arduino VIC resonator
« Reply #12, on April 15th, 2013, 05:15 PM »
Quote from rangeroverdan on April 15th, 2013, 12:53 PM
Awesome work ! I'm a total newbie to hho, arduino and this forum but I'm getting there. Any chance of a schematic for the dds from arduino?
All you say are cooming soon.!! Stay tuned.!

Next hours I will be posting a version with gating and a schematic for the DDS module.

Matt Watts

RE: Arduino VIC resonator
« Reply #13, on April 15th, 2013, 08:37 PM »
Quote from zchiotis on April 12th, 2013, 11:32 AM
I saw your code... very nice approach but it still put out a dirty signal such as mine. I use tone function.

This is the reason I purchased a digital syntesizer module (ver 0.3.x see video)
This waveform itself is very very clear.

But there is a way to gate the output from the synthesizer with a tone function from the arduino pin but still has a lot of noise.

Maybe we need to use a digital timer chip (ex. HTC555) that will gate the frequency output.

any ideas appreciated.!
Zissis
You are correct, the signals are not pure.  To overcome the limitation of the Arduino, I have since moved on to the Cypress PSoC 5LP.  This thing rocks:
http://www.cypress.com/?rID=51577


Haven't found anything yet it can't do well.  Granted it is more complicated, but the only limitations I have found so far come from the developer, not the board.

Here are the specs:
http://www.cypress.com/?docID=42882

Gunther Rattay

RE: Arduino VIC resonator
« Reply #14, on April 16th, 2013, 09:58 AM »Last edited on June 2nd, 2013, 04:16 PM by Matt Watts
Quote from zchiotis on April 12th, 2013, 11:32 AM
Quote from Dog-One on April 12th, 2013, 09:29 AM
It uses the USB serial for communication with a laptop since I didn't have a display on my UNO device.  If nothing else, it will give you some code examples of how I handled pulse, duty cycle and gating.  I managed to hit a wall with the limited memory I had available to go much further, but with bigger Arduinos, you can take this out as far as you want.
I saw your code... very nice approach but it still put out a dirty signal such as mine. I use tone function.

This is the reason I purchased a digital syntesizer module (ver 0.3.x see video)
This waveform itself is very very clear.

But there is a way to gate the output from the synthesizer with a tone function from the arduino pin but still has a lot of noise.

Maybe we need to use a digital timer chip (ex. HTC555) that will gate the frequency output.

any ideas appreciated.!
Zissis
What do you mean by dirty signal and by lot of noise? please explain.

Matt Watts

RE: Arduino VIC resonator
« Reply #15, on April 16th, 2013, 10:24 AM »
Quote from bussi04 on April 16th, 2013, 09:58 AM
What do you mean by dirty signal and by lot of noise? please explain.
The Arduino is creating the signal via software and as such has a fair amount of jitter due to the way the processor executes the code.  By jitter I mean the spacing of the pulses are not always identical; some even fall way short of the desired timing or run long.  The PSoC board on the other hand can be coded in such a way to use full hardware timing that is dedicated to making every pulse exactly correct (clocked) to whatever resolution/accuracy you need.  The processor and software code on the PSoC board essentially just initializes the hardware and tells it what to do, but doesn't actually generate the signals.

If you put the output of the Arduino on the scope and measure all the pulse spacing, you can see that it works fairly well, but certainly isn't exact.  For the purposes of the VIC, it may well be good enough; that is yet to be determined.

Gunther Rattay

RE: Arduino VIC resonator
« Reply #16, on April 16th, 2013, 01:04 PM »Last edited on April 17th, 2013, 02:18 AM by bussi04
Quote from Dog-One on April 16th, 2013, 10:24 AM
Quote from bussi04 on April 16th, 2013, 09:58 AM
What do you mean by dirty signal and by lot of noise? please explain.
The Arduino is creating the signal via software and as such has a fair amount of jitter due to the way the processor executes the code.  By jitter I mean the spacing of the pulses are not always identical; some even fall way short of the desired timing or run long.  The PSoC board on the other hand can be coded in such a way to use full hardware timing that is dedicated to making every pulse exactly correct (clocked) to whatever resolution/accuracy you need.  The processor and software code on the PSoC board essentially just initializes the hardware and tells it what to do, but doesn't actually generate the signals.

If you put the output of the Arduino on the scope and measure all the pulse spacing, you can see that it works fairly well, but certainly isn't exact.  For the purposes of the VIC, it may well be good enough; that is yet to be determined.
Correct, that´s a common problem of interrupt driven uC. I assume that Arduino has interrupts implemented in it´s c++ library for general I/O as for display service, controls etc.

The propeller uC I use is an 8 core processor without need for interrupts. that way one core makes real time pulsing without sloppy timescheme and other cores realize I/O, communication etc in parallel: http://open-source-energy.org/?tid=469&pid=9806#pid9806
There are up to 3 pulsing channels in parallel and programming is an easy going and works like a charme :-)


of course there are other powerful implementations in hardware like the hybrid board you are using. I assume that coding and programming there is a little bit more complicated but according to your datasheet I think it´s really powerful.

Good choice!


Gunther Rattay

RE: Arduino VIC resonator
« Reply #17, on April 17th, 2013, 02:15 AM »Last edited on April 17th, 2013, 02:28 AM by bussi04
Dog,

I didn´t find the programming language for the uC and for the array. Can you please give me a short overview?
Quote from zchiotis on April 12th, 2013, 11:32 AM
Quote from Dog-One on April 12th, 2013, 09:29 AM
Also attached is my version of the PulseGen app that does include gating.  It uses the USB serial for communication with a laptop since I didn't have a display on my UNO device.  If nothing else, it will give you some code examples of how I handled pulse, duty cycle and gating.  I managed to hit a wall with the limited memory I had available to go much further, but with bigger Arduinos, you can take this out as far as you want.
I saw your code... very nice approach but it still put out a dirty signal such as mine. I use tone function.

This is the reason I purchased a digital syntesizer module (ver 0.3.x see video)
This waveform itself is very very clear.

But there is a way to gate the output from the synthesizer with a tone function from the arduino pin but still has a lot of noise.

Maybe we need to use a digital timer chip (ex. HTC555) that will gate the frequency output.

any ideas appreciated.!
Zissis
@Zissis
Try to switch off software interrupts for the time of pulse generation and use a hardware interrupt signal line to interrupt pulse generation for user interaction.


zchiotis

RE: Arduino VIC resonator
« Reply #18, on April 17th, 2013, 04:58 PM »Last edited on April 17th, 2013, 05:17 PM by zchiotis
Hi there everybody, sorry for the delay.!

Here is an update. Good news is that I measured the arduino's tone() function output on a friend's scope and looks really nice square waves. They are a bit noisy but I do not think that this would be a problem for the VIC.

I got rid of the Digital Synthesizer.
Stanley meyer said Keep It Simple Stupid.

I made a version WITH GATING that can be utilized with a bare arduino. Even if you haven't an LCD screen.

All you need is a couple of LEDs a TACT switch or any button, some resistors, and potentiometer to control the gating.

Everything is updated and uploaded in the first post.
Anyone with an arduino and a oscilloscope, please test this setup and please share your results.

Thanks,
Zissis! :)

Matt Watts

RE: Arduino VIC resonator
« Reply #19, on April 17th, 2013, 06:40 PM »
Quote from bussi04 on April 17th, 2013, 02:15 AM
I didn't find the programming language for the uC and for the array. Can you please give me a short overview?
The Cypress PSoC is a pretty well thought out solution.  Cypress provides a thorough development environment, free I might add--only runs on Windows though.  It is designed to be modular with a graphical interface to just drag-n-drop functional blocks and then wire things up.

The microcontroller is coded with C language and custom hardware (PLD) is done with Verilog.  There are a bunch of built-in components that you can use to save development time, but if you need something crazy like a 37-bit PWM, you design it with Verilog and incorporate it as a custom hardware block for future use.

Someplace I ran into an example where a guy actually programmed the gate array to act just like the chip on an Arduino Uno.  That tells me the gate array is large and capable enough to do some really sophisticated and complex projects if you want to.

If you create an account on the Cypress site, you can watch a bunch of training videos to help get you started.
http://www.cypress.com/?id=1162

Now I'm not pushing Cypress products here, but I will endorse it as a very useful addition to your digital design toolkit.

zeropointnine9

RE: Arduino VIC resonator
« Reply #20, on April 17th, 2013, 06:42 PM »
Wow! I signed up when I saw this. Cant wait to try this. Uno is on its way. Scopes broken but Ill post back when I can.
0.99

Gunther Rattay

RE: Arduino VIC resonator
« Reply #21, on April 18th, 2013, 01:46 AM »
Quote from Dog-One on April 17th, 2013, 06:40 PM
Quote from bussi04 on April 17th, 2013, 02:15 AM
I didn't find the programming language for the uC and for the array. Can you please give me a short overview?
The Cypress PSoC is a pretty well thought out solution.  Cypress provides a thorough development environment, free I might add--only runs on Windows though.  It is designed to be modular with a graphical interface to just drag-n-drop functional blocks and then wire things up.

The microcontroller is coded with C language and custom hardware (PLD) is done with Verilog.  There are a bunch of built-in components that you can use to save development time, but if you need something crazy like a 37-bit PWM, you design it with Verilog and incorporate it as a custom hardware block for future use.

Someplace I ran into an example where a guy actually programmed the gate array to act just like the chip on an Arduino Uno.  That tells me the gate array is large and capable enough to do some really sophisticated and complex projects if you want to.

If you create an account on the Cypress site, you can watch a bunch of training videos to help get you started.
http://www.cypress.com/?id=1162

Now I'm not pushing Cypress products here, but I will endorse it as a very useful addition to your digital design toolkit.
I agree. Thx for your useful explanation.


Gunther Rattay

RE: Arduino VIC resonator
« Reply #22, on April 18th, 2013, 04:36 AM »Last edited on April 18th, 2013, 04:15 PM by bussi04
Quote from zchiotis on April 17th, 2013, 04:58 PM
Hi there everybody, sorry for the delay.!

Here is an update. Good news is that I measured the arduino's tone() function output on a friend's scope and looks really nice square waves. They are a bit noisy but I do not think that this would be a problem for the VIC.

I got rid of the Digital Synthesizer.
Stanley meyer said Keep It Simple Stupid.

I made a version WITH GATING that can be utilized with a bare arduino. Even if you haven't an LCD screen.

All you need is a couple of LEDs a TACT switch or any button, some resistors, and potentiometer to control the gating.

Everything is updated and uploaded in the first post.
Anyone with an arduino and a oscilloscope, please test this setup and please share your results.

Thanks,
Zissis! :)
quote:
"they are a bit noisy, but ..."

I hope you are right but I´m not that sure.


Here is why:

the circuit´s pulses induce a forced oscillation on the RLC circuit.

looking for resonance means that the rlc configuration shall react on the induced pulses and then oscillate in itself. once resonance is reached the pulser circuit only induces the energy needed to substitute the energy loss from rlc damping.

now if a single pulse leaves the resonant time scheme the circuit once again takes over the rlc oscillation and reinforces another time scheme and the rlc has to react on that.

but the rlc reacts to the out of phase single impulse in a way that has once more to be corrected after the pulser has reestablished it´s designed pulse frequency.

that way I assume at the RLC being a constant disturbance of natural oscillation behaviour.

and looking at the electron oscillation frequencies they are so much higher than the excitation pulse frequencies we use that ANY derivation from oscillation frequency will have an effect on electrons´ behaviour. we can´t assume that electrons are too dull to take notice of that derivation.


Ways to proceed:

Try to switch off the interrupts at arduino and use native timer functions for pulse generation instead of software loops. I thought about that 2 years ago when I designed an Atmel uC to do that job but it soon became really complicated integrating gating AND user I/O (regulators and displays) without disturbing the pulsing time scheme. It specifically gets tricky if you want to implement something like 2 pulses at 5 us each and then a gating for 30 us. within  2 * 5 us timer controlled there is not too much time for advanced calculations in C/C++ as needed for user I/O. and think about software loops needed to control PLL behaviour. that´s quite a bit of code needed to calculate timer results. then you need a uC architecture that supports those analysis and calculation. As far as I understand Arduino concept it´s an Atmel uC with an easy to use feature rich software library for standard functions needed by users with little programming know how. the uC for "everybody". cheap and easy.

if you want to realize an unusual application like pulse generator with gating and PLL there is little chance that standard library funtions will fit that demand.
sometimes it will be necessary to reimplement an optimized library function to get rid of the built in restrictions. Maybe you have to include some routines written in Assembler language to speed up time critical parts of the application. Another reason for sloppy timing is lack of control for the code produced by the compiler. programming C/C++ means that program statements are transferred to an unknown number of assembler code steps. without using timer support exact timing can only be guaranteed by counting the asm statements produced and calculate the exact amount of time used for the program path. sometimes for parallel program paths NOP statements must be added to adjust timing after if conditional switches.

you can switch off interrupts for some thousand pulses then reactivate interrupts for user I/O for modified freq parameters and then switch off interrupts again. Not too bad. I know that those Atmels have restricted strorage capacity on board and that C and especially C++ code with interrupt and timer control and I/O often needs additional external memory.

think about the fact that powerful uC exist since start of the 80s. there is a reason why Stan Meyer didn´t use those uC but hardware TTL or CMOS logic.

hardware is fast and exact in timing but bad for modifications. so he had to use those many expansion boards to get rid of that disadvantage (easy exchange of modified hardware on a single board submodule). that´s the trap Russ ran into with his Russtic pulse generator now needing to add some modifications for adding duty control management to that board. and that´s the reason why I switched to a uC solution in 2010 and modular design.

But looking for a uC substitute means to precisely emulate hardware behaviour. so uC must be much faster than minimum pulse length or timers or additional hardware must support uC code.

so a combined solution as Dog introduces fits very well because the uC supports hardware UDB on board and makes Universal Digital Block Array more versatile. the UDB realizes the time critical parts of the pulser hardware emulation and the uC adds additional control. Another way might be to use an FPGA added to the uC.

or you take a super fast multi-core uC like propeller (8 x 80 MIPS) as a one for all solution which is designed to emulate other uCs and digital hardware.

both ways you have access to incredible processing power so that you can easlily emulate hardware at our frequencies needed.

I want to share my experiences I made in 2009 and 2010 and the traps and pitfalls I ran into. there is no need to redo those experiences here in 2013. pulse generator is a tool, not a goal. our real goal to be reached is a working VIC for water as fuel. IMO there is no time to be spent for a tool :-) it´s already there ... Because once some time and effort is put into a software solution it´s important that there are no restrictions showing up at the horizon because it´s an expensive way to make a complete switch to another uC solution because of restrictions that can´t be overcome another way. So in case that more processing power is needed in my design I can daisy chain as many propellers in parallel as I need (at $9 each) and at the horizon there is a propeller II (1600 DMIPS) coming up with 4 times the processing power as now.
good times for software developers ... :-)

Keeping all that in mind I decided to choose parallax propeller because it has means to overcome those restrictions I mentioned above. And the pulse generator has become a unique software project fully fledged.

I don´t know any other cheap single chip uC like PropStick which can integrate 4 or 5 independent pulse generators with PLL functionality at 100 kHz and rich user interface in a SINGLE $50 chip ... first KISS we´ll never forget :-) http://open-source-energy.org/?tid=469&pid=9806#pid9806

But I also think about using an Atmel or Arduino uC subsystem for analog signal processing. The smallest Atmels are cheaper than a simple A/D D/A converter chip and much more versatile :-)




adys15

RE: Arduino VIC resonator
« Reply #23, on April 18th, 2013, 03:16 PM »


DDS version is removed because of unnecessity. The goal is the KISS method
Quote
UPDATE ver. 0.3.7 alpha
- Added a Digital synthesizer (cheap ebay DDS module) Very clear sin wave.
- Added another check point before locking
- Added "Scan" led and "Locked" led
- Improved UI
- Added function to start scan again if resonant voltage after lock, drops 10% of the Vmax found when scanned.
- Still working on Gating function.
Have a nice day,
Zissis.![/quote]great work,awesome,you had a skematic with breadboard?or i saw it on a diferent thread?


zchiotis

RE: Arduino VIC resonator
« Reply #24, on April 18th, 2013, 04:16 PM »Last edited on April 18th, 2013, 04:53 PM by zchiotis
Quote from bussi04 on April 18th, 2013, 04:36 AM
I want to share my experiences I made in 2009 and 2010 and the traps and pitfalls I ran into. there is no need to redo those experiences here in 2013. pulse generator is a tool, not a goal. our real goal to be reached is a working VIC for water as fuel. IMO there is no time to be wasted for a tool :-) Because once some time and effort is put into a software solution it´s important that there are no restrictions showing up at the horizon because it´s an expensive way to make a complete switch to another uC solution because of restrictions that can´t be overcome another way. So in case that more processing power is needed in my design I can daisy chain as many propellers in parallel as I need (at $9 each) and at the horizon there is a propeller II (1600 DMIPS) coming up with 4 times the processing power as now.
good times for software developers ... :-)

Keeping all that in mind I decided to choose parallax propeller because it overcomes those restrictions I mentioned above. And the pulse generator has become a unique software project.

I don´t know any other cheap single chip uC like PropStick which can integrate 4 or 5 independent pulse generators with PLL functionality at 100 kHz and rich user interface in a SINGLE $50 chip ... first KISS we´ll never forget :-) http://open-source-energy.org/?tid=469&pid=9806#pid9806

But I also think about using an Atmel or Arduino uC subsystem for analog signal processing. The smallest Atmels are cheaper than a simple A/D D/A converter chip and much more versatile :-)
Dear bussi04,

You've got my two cents for your last post.
I totally agree with you.!!
You have made an excellent work there!! Thank you!

As for the Arduino, my goal isn't to make something too powerful that will be exact and perfect.
What I am trying to do is to make something for the Geek that will try to proof the VIC concept even with low performance.
For someone that may have an arduino sitting there and just put it on, make some coils, make a water bath (capacitor), push a button, and see if it works better than simple electrolysis. So this would encourage him to take it further and find other more effective ways (such as yours, or the analog Stan's circuit) to develop his WFC.

It is just a try.!
I saw the output on my friends oscilloscope and looked pretty much stable but had some gitter (just like the Propstick you tested with PGen), that's all.!!
When I will have the oportunity I will take a better video showing the scope's output.
Quote from adys15
great work,awesome,you had a skematic with breadboard?or i saw it on a diferent thread?
Yes it was in this thread, but had some mistakes, and will be uploaded again soon!
Edit: Breadboard Schematic is uploaded.

Greetings from Greece,
Zissis