• Welcome to LusoRobótica - Robótica em Português.
 

Osciloscópio com o Arduino - Só para Linux por agora

Started by metRo_, 31 de October de 2009, 22:43

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

metRo_

Aqui fica um Osciloscópio para o vosso pc que usa para aquisição do sinal o Arduino.







http://github.com/alvieboy/arduino-oscope/

Fifas



pyterpalooza

GTK+? Blearghh...

Mas a implementação está impec!  :o

metRo_

Porque te referes ao GTK desta maneira "GTK+? Blearghh..."

alphacore

GTK+ RULES  ;D


WINFORMS ... sucks :S

Muito bom trabalho !!!!  =)

TigPT

Também desgosto do GTK+, há APIs bastante superiores.

Quanto ao projecto, parece-me bastante interessante. Alguém pode testar os rages que isso aguenta e comprara os resultados obtidos com um osciloscópio? Era uma review interessante.

Njay

Esta tabela é um excerto da tabela de características do ADC dos AVR:



Entre outras coisas, ela diz-nos que a frequência máxima de sinais que ele consegue amostrar são 38.5 KHz. Contudo, estes sinais teriam que ser ondas próximas de sinusóides; na prática, para ondas mais complexas como ondas quadradas, ocorre uma "distorção" (falta de fiabilidade), e é por isso que este valor máximo de frequência se situa mais nos 19.2 KHz (e mesmo assim...).

Com estas frequências ele serve para analizar audio, as linhas da porta série até 19200 bps, talvez 38400bps), as saídas PWM do arduino, e outros sinais de baixa frequência.

Outra coisa que a tabela nos diz é que a tensão de referência interna varia, de chip para chip, entre 1 e 1.2V, portanto não se podem fiar em absoluto no valor de tensão medido a não ser que calibrem o software (medir a tensão da referência no chip que se está a usar e usar esse valor em vez de 1.1V, que é um valor "nominal").

Quanto a comparar com um osciloscópio, até os fraquinhos tipicos osciloscópios de PC de 5MHz de largura de banda estão milhas à frente deste com Arduino...

Deixo a ideia de fazerem antes um analizador lógico ou frequencímetro, que pode chegar aos 4 MHz com um Arduino. Com este limite de 4MHz já é possivel "ver" praticamente todos os sinais SPI, UART e I2C que um arduino pode gerar.


Njay

Aí o limite passa a ser as características desse ADC e o quão depressa consegue o AVR ler as amostras do ADC. Se conseguirmos gastar apenas uns 5 clocks do AVR para ler uma amostra e guardá-la na memória interna, podemos ter uma frequência máxima de amostragem de cerca de 16000000 / 5 ~ 3.2 MHz, portanto para sinais até 800 KHz ou, na melhor das hipóteses, 1.6 MHz. Ainda assim fica aquém do osciloscópio de PC de 5 Msps de amostragem / 5MHz de largura de banda.

Tyran

Pois... essas contas que fizeste foi por causa da frequência mínima de amostragem recomendada não é? Pelo menos 2x mas mesmo assim...

Então com avr's de 8bit tá muito limitado dado que só vão até 16Mhz?


Njay

Na verdade desde a penúltima geração que podem ir até 20 MHz.

Tyran

Pois, era isso que queria dizer lol Mas também já li que se podia meter até cristais maiores só que tanto podia estar a dar bem como deixar de dar...

pyterpalooza

Quote from: metRo_ on 01 de November de 2009, 02:58
Porque te referes ao GTK desta maneira "GTK+? Blearghh..."

Qt4 FTW!!!


GTK+ - não menosprezando o esforço de quem o desenvolveu - é tão agradável como uma hemorróida. =p Estou a brincar, claro... mas é uma API escrita em C, mas com uma camada de abstracção para objectos. Ou seja, utiliza a ferramenta errada. Se for necessário aperfeiçoar um algoritmo na API, o resto quebra todo - o que não acontece com uma API escrita em C++, como a Qt, ou noutra qualquer linguagem OO. Além disso, a Qt é considerada um dos melhores toolkits existentes - é usada por uma data de empresas e instituições de topo, é subsidiada pela Nokia (guito, guito, guito!!!), é LGPL até ao tutano e - last but not least - é realmente cross-platform!!! Mais alguma por aí, assim?

GTK+? Nem por isso.
WinForms ? LOL!
WPF? Bahahahah!
Cocoa? Sim, sim...

Mono? Humm... não conta bem... e estar dependente de um padrão definido, quase exclusivamente, pela Microsoft não joga muito a seu favor...

Motif? xD


[[[[[[[]]]]]]]]