Author Topic: Why does my Scope do this, and what specification do I look for to avoid it.  (Read 10614 times)

0 Members and 1 Guest are viewing this topic.

Offline amspire

  • Super Contributor
  • ***
  • Posts: 3802
  • Country: au
Absolutely stunning images.

Also from the smoothness of the lines, your micro A/D is just working perfectly. You could spend a lot of money buying an instrument that could match the performance of your programmed microprocessor.

I have never bothered to look much at processing, but I think now I should. It is obviously not super fast, but it is the results that matter.

Richard.

 

Offline Neutron7Topic starter

  • Contributor
  • Posts: 16
Thank you,

I am very pleased with the result as well, as for processing being slow, my sketch (program) has to get 5 bytes from the serial port before it can draw the next line, I am pretty sure the speed is limited there, rather then by the program itself (sure its slower than native c+, but you can write a PC/MAC/LINUX compatible program as easy as arduino.)
 

Offline IanB

  • Super Contributor
  • ***
  • Posts: 12406
  • Country: us
Stunning images indeed.

I'm not sure why processing seems so slow; you should be able to go much faster than you are reporting.

A good tip would be to do processing in two stages. Firstly collect the data in a file on the PC and store it for later processing. Maybe do a low resolution plot in real time just to get a feel for what you are recording. Once you have collected the data, process it as a whole batch in one go while you experiment with the plot colours and other settings. That gives you many tries to get the best image quality.

For plotting, take a look at gnuplot. You should be able to feed a raw data file into it and get plots just like yours very rapidly.
 

Offline elCap

  • Regular Contributor
  • *
  • Posts: 109
  • Country: jp
Very impressive images!

Can you tell us little about what you are detecting and how it works? Where are the X and Y signals coming from? Is it something easy (DIY possible?) or very expensive and complicated?
 

Offline Neutron7Topic starter

  • Contributor
  • Posts: 16
Very impressive images!

Can you tell us little about what you are detecting and how it works? Where are the X and Y signals coming from? Is it something easy (DIY possible?) or very expensive and complicated?

actually is is something very simple. it is an Arduino connected to some level shifters and a DAC to use with modular synthesizers, but if you wanted to you can directly use these arduino sketches, and use 10 bit PWM out (just skip the GD parts)  pins 9 and 10 can be set to 10 bit PWM instead of 8 bit, by telling counter 1 register to be 16 bit.

http://jlswbs.blogspot.com/2011_10_01_archive.html

I am monitoring it with another Arduino using analogin>serial out  I had to put a capacitor on the vref, to get the analogins decent, and also not use the "fast analogin" trick.

the actual generator is here (*warning, facebook) http://www.facebook.com/pages/Neutron-Shield-Modulator-by-the-original-DeFex/191304900944828
It also generates LFOs, envelopes, sequencers and so on.

As for slowness of processing, i think i know what might be causing it, when i read the data from the serial port it is separated back in to useful values with string manipulation, i should probably use something more efficient but it is the only thing i could get to work on my first go. I am ot quite sure how to send a "stop" byte when the thing could be sending any value (which might accidentally be read as a stop byte)



« Last Edit: October 25, 2011, 12:29:32 pm by Neutron7 »
 

Offline Mechatrommer

  • Super Contributor
  • ***
  • Posts: 11713
  • Country: my
  • reassessing directives...
you can program arduino just like programming other avr bare chip in AVRStudio using what you like, C or asm, compile it and get the hex file sent by avrdude to the arduino, i sniffed what the AVRStudio command sent to avrdude last time for my mega and send the hex file using just DOS and avrdude, maybe different command for your arduino, so you have to work it out. you have to handle all of the comm yourself though (just like programming bare chip remember?) esp the uart Rx and Tx where the USB (FTDI) send data through. i then developed PC app that comm'ed with FTDI (hence the arduino) to make realtime Rx Tx comm. heck you can even build a USB oscilloscope with the arduino.
Nature: Evolution and the Illusion of Randomness (Stephen L. Talbott): Its now indisputable that... organisms “expertise” contextualizes its genome, and its nonsense to say that these powers are under the control of the genome being contextualized - Barbara McClintock
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf