Porquê?mas estares 1 hora com o arduino em pausa em espera é pouco produtivo
Não se faz mais nada desse arduino durante esse tempo?
não sei se há limites para a função delay, mas estares 1 hora com o arduino em pausa em espera é pouco produtivo...quanto ao resto acho que funcionava...no entanto tens de libertar o arduino!
porque não algo deste estilo:
função crono:
overflow e clic duas váriaveis unsigned long, para rebentar uma vez por mês...
void crono(){
clic=millis();
//linhas em baixo verificam se rebentou a contagem, demora como disse uma vez por mês...
//linhas em cima atribui o valor de millis ao clic
if (overflow > clic ){
overflow=clic;
lastTick=overflow;
}
if (clic - lastTick > 1000.0) {
lastTick = lastTick+1000; //duração do segundo
second++;
}
//em cima vai atribuir mais 1000 ao lastick quando passa um segundo, para efeitos de comparação nas linhas em cima, para determinar quando passa um segundo...
bastante simples...
depois é adicionar em baixo comparações do tipo se segundos=60 então incrementa 1 minuto e segundo=0...se minuto=60 então incrementa hora e minuto e segundo=0, se hora =24 então hora =0 etc
bastante simples...
depois chamavas no meio do programa a função cronos...
tipo desde que faças mais que uma vez por segundo a função o atraso é de uns 2-3 segundos isto no meu caso depois da ultima actualização que fiz há uns bons meses atrás...
não uso RTC, mas tenho aqui as peças.
não preciso mesmo posso te arranjar...
Uso UPS logo mesmo quando corta a corrente lá continua a contar...
O segredo é a função millis(), que te dá o tempo que o arduino está ligado, até rebentar a tal unsigned long. vai para zero...por isso tenho a tal "evita isso" na função, tens de inicializar no inicio do programa a variável overflow, com a função millis, basta no inicio uma vez, fora do loop principal.
quando millis vai para zero, fica mais pequeno que overflow...logo rebentou...
Última edição por António Vitor; 14-07-11 às 11:46.
http://www.waterinspiration.blogspot.com
"Nunca tenham medo de inovar, Lembrem-se, a Arca foi construida por amadores, profissionais construiram o Titanic."
-Anónimo.
Porquê?mas estares 1 hora com o arduino em pausa em espera é pouco produtivo
Não se faz mais nada desse arduino durante esse tempo?
O Nuno meteu delay 3600000...
ficava em stand bye até passar esse tempo...isto supondo que não existe um limite para a função delay,
como o arduino até é rápido, no meu caso mesmo crescendo a complexidade enormemente, só coloquei a chamada á função cronos 1 vez no loop principal...garanto que ele deverá ir lá ver umas 10000 vezes por segundo, mas mesmo que o arduino fosse mais lento dava na mesma...
e no resto, ele pode fazer outras coisas, como:
ver pH etc...etc...etc...
Mas funcionava, a ideia do Nuno tem lógica...
http://www.waterinspiration.blogspot.com
"Nunca tenham medo de inovar, Lembrem-se, a Arca foi construida por amadores, profissionais construiram o Titanic."
-Anónimo.
Pronto, mas só tem "problema" se ele quiser depois usar esse arduino para fazer mais alguma coisa...
Mas a tua solução é mais versátil, sem dúvida!
De qualquer forma só não mandei vir ainda o RTC porque há para aí lcd's touch que já o têm incorporado e ainda não me decidi por mandar vir um desses.![]()
Hoje vou receber os leds da ledrise, nem sei se me faltam controladores, vou agora ver...lol...
mas mais 1 semana no máximo e tenho as t5 tiradas.
como tinha dito vou meter leds azuis e não royal blue. vai ficar todo coberto, e nas periferias vai ficar com lentes, para não desperdiçar luz...
Será um bom upgrade...
depois vou simplificar retirando alguns fios da calha...
ficarei com apenas 4 canais. chega e sobra, e vou alterar o programa, escrevendo de novo, o primeiro foi a tal aprendizagem e fui escrevendo e aprendendo no caminho, agora será uma coisa diferente...
vou retirar algumas funções como o tal nascer do sol, ocaso do sol, e implementar outras tantas...nubelosidade e trovoada.
O meu código se alguém o experimentou não funciona, sem alterarem a livraria do LCD shield, alterei os pinos standard... e acho que esqueci-me de o referir...
irei usar a livraria normal, sem alterações com o novo programa, passou 1 ano e já tenho pachorra...
http://www.waterinspiration.blogspot.com
"Nunca tenham medo de inovar, Lembrem-se, a Arca foi construida por amadores, profissionais construiram o Titanic."
-Anónimo.
http://www.waterinspiration.blogspot.com
"Nunca tenham medo de inovar, Lembrem-se, a Arca foi construida por amadores, profissionais construiram o Titanic."
-Anónimo.
Última edição por Nuno Prazeres; 14-07-11 às 14:29.
isso acontece com toda a gente que programa, sem ser em termos profissionais! É feitio, não é defeito!!!
Mas quando temos de programar em teermos profissionais, a coisa já parece mais... profissional!!!
É como comentários! "Vou por comentários para quê se sou eu que estou a fazer isto?".
Programador é um gajo muita estranho. lol![]()
Bom dia
Isso acontece quando o código é criado para uma situação específica.
O mesmo não acontece quando o código é necessário em mais do que uma circunstância.
Quando é necessário utilizá-lo numa 2ª situação, então sim, é optimizado. Se assim não for... então não sabemos programar...
Comentários dos passos...
Comentários da origem da informação...
Comentários das equações matemáticas...
Comentários das rotinas...
Tão importante são os comentários dos passos, quanto os da origem da informação...
Abraço
Pedro Ferrer
Eu posso!
Eu quero!
Eu consigo!
Programar tem a vantagem/desvantagem de não ser uma ciência exacta!
Há várias formas de atingir o mesmo fim.
O importante é que o código seja eficaz, disso não há dúvida, mas só os bons programadores o fazem eficiente!
Eu quando programava de inicio era gozado por fazer sub rotinas com uma linha. Só que depois vinha o "já agora" e o "com isto funciona melhor" e as subs engordavam sucessivamente até que voltava a partir o código em sub subrotinas e por aí em diante.
Era poupado nos comentários até que apanhei um prof (o actual Reitor da Univ. de Coimbra) que dizia que "não há comentário, não percebo o que o aluno pretende com o código".
Os meus programas tinham por isso mais linhas de comentário do que código, LOL!
Normalmente funcionavam bem mas nunca tive jeito para interfaces gráficos todos pipis. Era forte e feio. Bugs havia, claro. E às vezes até eram aos enxames Mas como o código estava sempre arrumadinho normalmente não custava muito descobrir donde vinham.
Gráficos é que não. É por isso que nesta fase nem estou a pensar em displays e teclados.
Já agora, João, fiz uma simulação rudimentar do ciclo de temporização e fiquei nas 24 horas e não nas 23. Isto porque a instrução de "delay" está antes do incremento da variável. Mas posso de facto estar enganado.
Entretanto Hugo. O código que colocaste é para pwm? Não pesco nada das funções do arduino.
Já agora, descobri que ainda tenho para aqui uns relays na caixa das electrónicas pelo que irei tentar testar a minha UPS dos pobres que pretendo fazer com uma pilha de 9v, um relay ou mosfet e um condensador (e um diodo a filtrar). O objectivo é activar a alimentação pela pilha em caso de quebra de corrente e voltar ao transformador quando esta regressar. Isto claro está sem picos ou depressões que causem o reset do arduino.
Boas Nuno.
Estranho, não percebo como obtens o 24.
Aliás, como o Pedro apontou e mt bem, ao fazeres "if (Hora = 23)" Tás na verdade a escrever 23 na variavel Hora, e não a comparar a variavel Hora com 23.
Tens que fazer == qd queres fazer uma comparação.
"
Comparison Operators
== (equal to)
!= (not equal to)
< (less than)
> (greater than)
<= (less than or equal to)
>= (greater than or equal to)
"
Tenho um Arduino Mega e 4 relays TTL para 220V 10A a caminho!
Daqui a duas semanitas vou começar a brincadeira a sério.![]()
Não tinha reparado nisso, e também cometi esse erro, é a prática em outras linguagens...
Amanhã vou iniciar e espero acabar a calha.
problema os gajos da bisalarmes, cortaram o meu dissipador upgrade com apenas 99.3 cms
ou seja quase 1 cm de diferença para os outros 2...
enfim fica uma calha ainda pior amanhada, ok não se vê...mas fica mal amanhada e meio "marreca".
tenho aqui já o acrilico, amanha sem falta.
Tive a minha filha com varicela, e agora veio o meu filho, portanto fico em casa e devo por isso conseguir acabar isto.
não vou mudar o código, programar é giro, mas chateio-me rápido mais vale não mudar o que funciona.
Eu vejo isto como a evolução de vez em quando há saltos qualitativos, mas o lixo evolutivo deixa rastos...
lol
só daqui a algum tempo programo e é se me apetecer...acreditem que é mais chato que conceber a calha...pelo menos para mim.
não vou simplificar o layout disto, apenas unir 2 bucks ao mesmo pin pwm.
e só no do meio e de trás.
porque tar a desfazer dava uma carga de trabalho.
não estragar o que está a funcionar...
como tenho aqui bucks a 1000 mA com fartura (5 bucks), vou retirar um buck dos leds brancos xp-g a 700 mA do centro, e colocar a 1000 mA.
assim fico com 3 bucks de 700 mA (preciso de 3), e só tinha 2.
é material que ficou do inicio da calha.
Os leds a cor, não convém meter mais de 700 mA.
Os outros meto a 1000 mA os xp-g aguentam na boa.
amanhã depois posto fotos...
Um grande problema e que devem ter cuidado, é a ferrugem...
por metodos galvanicos talvez...
por exemplo os parafusos que meti nas ventoinhas vai ser mesmo dificil os tirar, quero usar as mesmas ventoinhas e espalhar estas pelo dissipador triplo (3x bis-95 de 1 metro em paralelo), vai ser mesmo dificil, sem partido as ventoinhas...
a corrosão é mesmo brutal!
só nos parafusos atenção o aluminio está impecável, nos pontos onde existe os dois metais, ferro zincado julgo dos parafusos, existe mais corrosão do aluminio, no acrilico em cima aparece algum pó que cai da calha onde estão os parafusos. curioso, é pouco mas dá para ver.
amanhã tentarei retirar estes parafusos e meter de nylon que também já aqui tenho.
enfim tenham cuidado com estes pormenores...
atenção acço inoxidável tem mais potencial galvânico com o aluminio...
curiosamente.
![]()
Última edição por António Vitor; 16-07-11 às 00:54.
http://www.waterinspiration.blogspot.com
"Nunca tenham medo de inovar, Lembrem-se, a Arca foi construida por amadores, profissionais construiram o Titanic."
-Anónimo.
Lol! Eu sempre fui um bocadinho como tu mas às tantas passei a considerar como fazendo parte do desafio fazer as coisas tão perfeitas quanto possível e não meramente "a funcionar".
As melhoras dos teus filhos!
Já agora... Como é que estás a alimentar o Arduino? Transformador de 9V?
Obrigado!
Estou a alimentar o arduino com as duas baterias "ups" que fiz num anterior DIY( 80 amp/h a 12 V), por causa dos 12V, e para não fritar a longo prazo o arduino tenho aqui um desses integrados que me baixa a tensão para 5 v.
e injecto os 5v, no pin dos 5 volts, (onde sairia 5 volts do arduino, este internamente funciona a 5 volts (pelo menos o meu) com tantas versões...
A electricidade faz o sentido inverso mas alimenta o arduino...não perguntes como mas funciona.
juntei o útil ao agradável, porque o arduino tinha ligação ás baterias, adicionei um divisor de tensão com uma resistência variável, de forma a ter no máximo 5 volts, quando as baterias tivessem tipo 13.6 volts, assim num dos pins analogico, consigo ler a tensão das baterias, sabendo que se baixarem dos 11.5V estão em risco de entrarem em colapso...
se tiver um corte de corrente por vários dias, consigo prever o fim das baterias.
Pelas minhas contas, deverá dar para quase 1 semana.
A tunze que eu tenho a 12v, é bem poupadinha.
atenção o arduino só é alimentado pelas baterias se falha a corrente, é imediato, não tenho relés, nada...
quando falha a corrente, as baterias em vez de receberem carga despejam, mas isto á velocidade da luz, nada apaga.
Ou seja normalmente quem dá a carga para o overflow das baterias, e da bomba e arduino é o carregador (a 13.6 volts).
A carga é tão leve, para permitir que as baterias durem pelo menos 1 decada. sempre carregadas!
o suficiente para materem-se carregadas, sem criar desgaste.
Como estou a alimentar a bomba e o arduino, julgo que o overflow ainda é mais tenuo...
Assim simplifiquei esta trapalhada toda, sem relés e sem artimanhas electronicas, simplificando ganhei mais segurança, e menos condições de avarias.
A verdade é que ainda tenho as baterias em pleno, e passou quase 2 anos.
http://www.waterinspiration.blogspot.com
"Nunca tenham medo de inovar, Lembrem-se, a Arca foi construida por amadores, profissionais construiram o Titanic."
-Anónimo.
Sempre quis fazer uma ups. Será projecto para fazer lá mais para a frente.
Estou a fazer a tal mini ups só para o Arduino para já em laboratório. Estava a montar o único relay que por cá anda mas parti-lhe um raio dum pino a metê-lo no breadboard.
Vou ter que enxertar uns quantos arames no relay à força de ferro de solda.
já fiz isso num pentium 4 ...foi a minha prova de soldadura mais eloquente.
mete aquela resina antioxidante para soldar no resto do pé que restou junto ao relay...
mete depois solda nisso, a resina vai servir também para proteger termicamente o relay, o plástico.
depois de banhada de solda....faz o mesmo num fio...resina e banha com solda, isto antes de unires.
depois de ambas partes terem solda, junta e aqueces.
quando fundir retira antes que queimes o resto, mete mais resina para proteger o relay e soldar melhor antes da união em ambas partes.
http://www.waterinspiration.blogspot.com
"Nunca tenham medo de inovar, Lembrem-se, a Arca foi construida por amadores, profissionais construiram o Titanic."
-Anónimo.
Mini-ups testada! Funciona com leds e ventoinhas.
Peças:
- Relay comutador
- Condensador de 1000 microF
- Pilha de 9V
Ainda vou meter um diodo de protecção.
Resta só saber se a coisa tem poder suficiente para aguentar o Arduino sem que este faça reset.
Obtive entretanto um resultado secundário interessante.
Quando a ventoinha está ligada directamente à fonte 9V DC made in China tem um fluxo bonzinho. Se lhe meto o condensador em paralelo, ela acelera visivelmente.
Conclusão minha: a rectificação destas fontes é feita às 3 pancadas com o respectivo condensador sub dimensionado para ser mais barato.
Se vais soldar leds, aconselho-te a comprares isso...
Até porque a resina que a solda costuma ter pode não chegar, e tens de manter o ferro (a ponta) sempre com solda, e sem sujidade, tipo ferrugens e etc...
A solda e uma esponja humida para retirar o excesso assim limpas a ponta...
Se fizeres isso a ponta dura-te mil anos...
já montei isto dá 267W de leds...
lol
ou seja com t5 gastaria mais ou menos a mesma coisa. 280W +/-
não tinha cola suficiente, e faltou meter um led, num circuito...depois faço isso. agora fica assim.
Como tens as lentes na periferia e lentes mais ajustadas, tenho realmente bastante mais luz.
palpita-me que tenho acima de 300 mesmo em baixo.
Estou quase no 1W/litro...
lol
tenho é o KH a 15 (irra) e o cálcio com bons valores...
tenho de adicionar apenas cloreto de cálcio e ajustar...
magnésio agora tenho baixo.
1150.
enfim...
nitratos fosfatos=0.
portanto com tanta luz, se tiver algum tipo de insucesso é culpa do aquariofilo.
![]()
http://www.waterinspiration.blogspot.com
"Nunca tenham medo de inovar, Lembrem-se, a Arca foi construida por amadores, profissionais construiram o Titanic."
-Anónimo.
Boas,
Prontos ... chegou ontem o Arduíno, o LCD, o Shield, os Relays ...
Estou metido numa carga de trabalhos. O que vale é que vou entrar de férias!
Abraços,
Há 7 Membros navegando neste tópico. (0 registrados e 7 visitantes)