Show Posts
Pages: [1] 2 3 ... 9
1  International / Portugues / Re: Ajuda com redução de código on: April 17, 2014, 06:53:34 pm
LOL
http://labdegaragem.com/forum/topics/ajuda-com-redu-o-de-c-digo?%3ATopic%3A346134
2  International / Portugues / Re: Arduino RTC DS1307 on: October 07, 2013, 11:05:32 am
Então eu fiz o quote do que ele disse, o unico problema que vi foi a impressão da hora duas vezes...
Fica difícil ajudar se não sabemos direito o que acontece... mesmo depois de varias mensagens eu ainda não entendi se o erro é esse que falei ou se atrasa,  e se atrasa, quanto tempo atrasa...
Também sobre o cristal, ele disse que era igual à imagem do fritzing, mas nunca vi cristal de caneca em 32768Hz, só o cilindrozinho...
Você comprou online? se sim mande os links para analisarmos, tenta trocar de CI, cristal, protoboard, fios...

coloque o cristal diretamente na coluna da breadboard que dá nos pinos do oscilador do RTC, assim:
http://forum.arduino.cc/index.php?topic=8833.msg73029#msg73029
3  International / Portugues / Re: Arduino RTC DS1307 on: October 07, 2013, 08:20:20 am
Estou a utilizar a própria alimentação do Arduino e não tenho mais nada ligado para além do RTC.
A unica coisa que troquei até agora foram os fios.
Aqui esta o extrato de uma falha;
Code:
Data: 5/10/13 Hora : 21:2:36, Sabado
Data: 5/10/13 Hora : 21:2:37, Sabado
Data: 5/10/13 Hora : 21:2:38, Sabado
Data: 5/10/13 Hora : 21:2:39, Sabado
Data: 5/10/13 Hora : 21:2:40, Sabado
Data: 5/10/13 Hora : 21:2:40, Sabado
Data: 5/10/13 Hora : 21:2:41, Sabado


O erro que apresenta é esse? duas linhas com o mesmo segundo?
Dependendo do codigo, o arduino pode fazer duas requisições dentro do mesmo segundo, dando a impressão que o relogio não andou... para tirar a duvida coloque um led no clock out do RTC e acompanhe os tics...
Qual a procedência do chip e do cristal?
4  International / Portugues / Re: Arduino RTC DS1307 on: October 04, 2013, 09:30:29 am
se importaria de postar o codigo completo em que isso ocorre?
5  International / Portugues / Re: ajuda em programação na memoria EEPROM on: September 09, 2013, 03:14:17 pm
Obrigado Hugo estarei realizando teste com esse codigo, mais ja me informei que a memoria EEPROM tem um valor maximo para gravações e no maximo 100mil ciclos estou analisando que no caso a memoria do arduino vai ter um desgaste muito grande pois ira realizar gravações contantemente, por isso veio a ideia do cartao microSD.
os limites de gravação se referem ao pior caso na pior das hipóteses... no link abaixo o cara relata que a EEPROM aguentou 1.200.000 de ciclos de escritas. Um SD tem a mesma vida util da flash do arduino... menor que a EEPROM...
http://tronixstuff.com/2011/05/11/discovering-arduinos-internal-eeprom-lifespan/
6  International / Portugues / Re: Comunicação RF-Protocolo on: August 28, 2013, 01:06:44 pm
para checksum faz duas variaveis, uma variavel faz xor em toda array e a outra faz um sum, no final some ou "xore" as duas, a probabilidade de de má recepção alterar os dados e o checksum é muito pequena... se usar um byte de checksum 1 em 256 possibilidades, e com dois bytes 1 em 65536.
7  International / Portugues / Re: Diferença de fase on: August 28, 2013, 12:58:56 pm
aqui:
http://en.wikipedia.org/wiki/Laser_rangefinder
basicamente solta um pulso no laser  e espera o fotodiodo sentir o reflexo,
a velocidade da luz é aprox 300 000 m/s,  em um clock do arduino(16MHz) é 62,5 ns, ela avança 0,019 m ou 19 cm, sendo ida e volta dá 9,5cm a resolução, se trabalhar bem o código, escrever em assembler pode chegar a uma precisão de 3 a 4 clocks, conseguirá medir em intervalos de 30 a 40cm, (edit: se usar o capture input do timer1? conseguirá a resolução igual ao clock, 9,5cm) até onde a sensibilidade do sensor permitir ou o overflow do timer1 que é 16bits. que dá aprox 6,2km.
 se usar C, será pior... se usar o millis medirá em incremetos de 150metros, e com o micros() a resolução minima é 4us, uma resolução de 60 centimetros.
 o arduino due se sairá melhor com seu clock de 84MHz.
8  International / Portugues / Re: Diferença de fase on: August 28, 2013, 07:20:54 am
talvez ajude:
http://www.instructables.com/id/Arduino-Frequency-Detection/
9  International / Portugues / Re: serial printer na mesma linha on: August 20, 2013, 10:02:37 am
qual é o valor da resistencia de pullup dos DS18B20? Qual a distancia que está cada sensor, o ambinete é industrial/com motores/solda? Use um reistor de 1K e veja se resolve
10  International / Portugues / Re: Comunicação RF-Protocolo on: August 17, 2013, 06:40:37 am
Existe uma biblioteca que faz o refinamento dos dados da serial, trata argumentos e liga comandos a funções,

https://github.com/kroimon/Arduino-SerialCommand
http://awtfy.com/2011/05/23/a-minimal-arduino-library-for-processing-serial-commands/

11  International / Portugues / Re: Comunicação RF-Protocolo on: August 14, 2013, 06:17:03 am

Acho que primeiro deve aprofundar seus conhecimentos, uma coisa importante é  máquina de estados, isso ajuda muito a desmembrar as tarefas do programa, esse código que te passei tem um bugzinho, o tamanho da array errado, mas ão impede que o programa funcione, esse código tem alguns linhas que faz duas verificações/ações, isso ajuda a não torná-lo claro o suficiente.
OK, você não entendeu o funcionamento mas ele funciona sim.
Todo programa é fácil de fazer, basta enumerar as necessidades e limitações, quando diz quero "um programa que transmita comandos da serial por RF", a explicação é simples mas a implementação não.
Vou dar uma clareada no algoritmo:
-inicializa a serial
-zera as variaveis

- se não pode enviar, escuta a serial, se tem dado:
     se o dado for \n chegou o fim da mensagem, marca o fim da mensagem com \0, sinaliza que pode enviar. senão
          se o dado for \r descarta senão
               se o buffer não está cheio salva o dado no buffer

- se pode enviar
    prepara os dados usando o buffer
    envia os dados
    aguarda o envio
    limpa o buffer
    zera as variaveis
    sinaliza que não pode enviar

-outras coisas podem ser colocadas em seguida que ele executará
 
 
12  International / Portugues / Re: Comunicação RF-Protocolo on: August 13, 2013, 06:19:45 am
dei uma olhada no seu historico, você está quebrando a cabeça com RF desde junho, fez crossposting, e nada?
Não estou te julgando, mas porque não começa a ler blogs por aí e tente entender como funciona o codigo dos outros, eu te postei um código master/slave que faz exatamente isso, fica verificando a serial, trata do \r e assim que vê \n trata os dados e prossegue o programa.
http://forum.arduino.cc/index.php?topic=180671.msg1344485#msg1344485

o setup() que configura o virtualwire eu modifiquei até funcionar corretamente, verifiquei no "saleae"(analizador lógico), te mandei um código 100% correto, você não reaproveitou nada dele? Não usou porque não sabia o que o código fazia. Faça funcionar uma parte por vez, primeiro a parte serial, depois a conversão em partes, depois o RF, e por ultimo junte tudo...
13  International / Portugues / Re: Comunicação RF-Protocolo on: August 12, 2013, 12:19:20 pm
Falta a você conhecimento em array e a forma de envio de dados seriais,
todo array tem a obrigação de conter 0 (* zero em seu ultimo elemento, que no ultimo codigo você esqueceu, a função atoi() só vai parar de ler quando encontrar um NULL byte que é o zero...

No windows, mais precisamente no Serial monitor do arduino, sempre que aperta ENTER, ele manda os caracteres digitados, seguidos de '\r' '\n' que simbolizam os bytes 13 e 10,
exemplo:
quero enviar HELLO [enter] ---> vai sair  H E L L O \r \n.
no seu ultimo programa  até funciona certo na primeira vez, na proxima não porque você esqueceu que o \r \n está tambem no buffer do arduino. Seu codigo não previa o tratamento de caracteres não-numericos...
14  International / Portugues / Re: Comunicação RF-Protocolo on: August 09, 2013, 01:20:34 pm
Entao vou enviar a sequencia 001001001?Depois coloco buf[0]=001,buf[1]=001 e buf[2]=001?

Isso. Era aqui que me referia, que o valor só vai até 255 em decimal (1 byte).
15  International / Portugues / Re: Automação residencial em módulos on: August 09, 2013, 11:10:28 am
o fio longo pode alterar pouco, mas a captção da rede eletrica, ruido, microondas, celulares, induzirão um erro maior na leitura, para diminuir só fazendo tipo vinte leituras e tirando a média...
Pages: [1] 2 3 ... 9