Ir ao conteúdo
  • Cadastre-se

limitador de RPM com arduino


Posts recomendados

Oi pessoal este é o novo tópico para continuar o antigo, este aqui:

 

 

O tópico anterior estava muito longo, e agora consegui fazer um teste prático mesmo usando o esquema antigo, gravei um video e coloquei no youtube:

 

 

 

Vamos lá algumas observações:

 

Essa programação foi para teste mesmo é que estou bematarefado aqui, mas no fim de semana vou reescrever o código para usar a função interrupt, começarei do zero primeira coisa é fazer o arduino contar certinho os pulsos do hall e mostrar no display, depois disso colocar pra ligar desligar o rele, usar o botão, potênciometro e por aí vai...

 

Algumas considerações:

 

O video foi curto mas programei pra ligar e desligar o rele quando chegasse em 66Hz ou 2000RPM só para teste mesmo e como dá pra ver no video ele conseguiu manter, mas variou bastante se afundar o pé no acelerador de uma vez ele chega quase a 3000RPM antes de limitar e fazer cair para 2000, creio que isso seja porque está programado para contar os pulsos durante meio segundo multiplicar por 2 e aí dar a frequência, não sabia mas meio segundo dá pro motor girar bem mais do que está programado, e além de poder perder pulsos por não usar ininterrupt creio que esteja variando assim também porque acho que o relê leva bastante tempo pra ligar e desligar, no video dá pra ouvir quando ele liga e desliga.

 

Então pensei:

 

O ideal é trocar o rele por um transistor de potencia para ligar e desligar mais rápido?

Usar a função ininterrupt para contar os pulsos é importantissímo, em breve tentarei programar para usar essa função.

Contar os pulsos dentro de um tempo menor, 100 ou 200ms, porque  500ms é tempo demais, nesse caso 66Hz seriam 13.2 pulsos a cada 100ms, mas aí sem usar interrupt com esse código antigo vai fazer a margem de erro aumentar né?

 

 

Link para o comentário
Compartilhar em outros sites

@ComandateGustavo ,

 

Um relé comum demora entre 10 e 50 milissegundos para acionar.... não vejo muito sentido em trocar por um transistor de potência.

 

Quanto a diminuir o tempo de contagem, isso é fundamental para ter uma resposta mais rápida, mas como você mesmo já percebeu, torna a contagem cada vez mais susceptível a erros causados pelo funcionamento do programa.

 

Por exemplo, se você usar uma nova base de tempo de contagem de 100 milésimos de segundo, uma simples escrita no display LCD vai consumir cerca de 20 mseg... e dependendo de como seu programa funciona, pode causar um erro de 20% de sua medida ...

 

Via de regra, cada vez que os tempos envolvidos ficam mais críticos, mais fundamental é o uso das interrupções e contagens por hardware. 

 

Paulo

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

  • Membro VIP
2 horas atrás, aphawk disse:

cada vez que os tempos envolvidos ficam mais críticos, mais fundamental é o uso das interrupções e contagens por hardware

... o que na minha concepção artística é muito mais fácil de implementar do que o RTOS 1/2 boca que você está se embolando com ele.

''RTOS: É um sistema operacional mais especializado onde o tempo de resposta é mais importante do que executar centenas de tarefas simultaneamente. O tempo de resposta não precisa necessariamente ser o mais rápido possível, como o nome pode sugerir, mas deve ser previsível, logo, “Real-Time” pode ser uma resposta de vários minutos ou nanos segundos, dependendo da forma que seu sistema funciona. As tarefas do RTOS contam com tempo limite para serem executadas, então é comumente chamado de “Time Critical”.''

https://www.embarcados.com.br/rtos-sistema-operacional-de-tempo-real/

 

2 horas atrás, aphawk disse:

Um relé comum demora entre 10 e 50 milissegundos para acionar.... não vejo muito sentido em trocar por um transistor de potência.

O sentido que vejo é o de não haver limite teórico pro número de acionamentos, tamanho reduzido e também o tradicional fator preço. Em tempo: o tempo de acionamento do relé não tem relação com os tempos em questão.

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

10 horas atrás, ComandateGustavo disse:

começarei do zero primeira coisa é fazer o arduino contar certinho os pulsos do hall

 

Lembre-se : o hardware do Timer 0 ( contador de 8 bits )  ou do Timer1 ( contador de 16 bits ) podem fazer a contagem para você ... sugiro usar o do Timer1 que pode contar até 65535 e fica mais simples. Basta aplicar a saída do Opto à entrada T0 ou T1, dependendo de qual Timer for utilizar. Eu ligaria em T1 pois usaria o Timer1 como contador.

 

Use o Timer0  para fazer a sua base de tempo. No Arduino usando Prescaler de 256 você consegue obter uma base precisa de 2 ou de 4  milisegundos. 

 

Supondo que você use 4 milisegundos e use a amostragem de 0,2 segundos :

 

Implemente um contador dentro de sua interrupção do Timer0 , e a cada interrupção incremente ele e teste o valor. Quando essa contagem chegar a 50 ( 50 x 4 = 200 milisegundos ), leia o conteúdo do contador do Timer1 e guarde numa variável para ser usada no programa principal. A seguir, sinalize por um flag ao programa principal que a variável com a contagem do Timer1 já pode ser usada, zere o contador do Timer1, e zere o seu contador de interrupções, e saia da interrupção.

 

O seu programa principal simplesmente fica esperando o flag ser acionado; quando o flag estiver acionado, desative esse flag, leia a variável com a contagem dos pulsos e faça a sua matemática para converter em frequência; mostre no display, e faça o que tem de fazer com os Leds e o relé. 

Após, isso, volte a esperar o flag para fazer tudo de novo.

 

É bem simples.... mas não sei como fazer isso nessa linguagem...

 

Paulo

 

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

6 minutos atrás, aphawk disse:

É bem simples...

Rapaz se isso aí for simples imagina o que for complicado kkkkk eu entendi mais ou menos Paulo, bom na teoria o frequencimetro nada mais é do que um contador de pulsos por um determinado tempo.

 

Por exemplo se for programado para contar os pulsos durante meio segundo ele vai contar os pulsos armazenar na memória e vai zerar o contador para começar uma nova contagem, ao mesmo tempo ele vai multiplicar por 2 os pulsos do tempo anterior para mostrar no display a frequência, o problema é que isso for feito como está sem usar a interrupt na hora de multiplicar por 2 o contador pode perder pulsos e bagunçar tudo, correto?

 

 

 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Penso que não precisa de flag pois o par interrupt + valor da contagem (variável global) deixam o valor o tempo todo a disposição do main(). Um frequencímetro minimalista:
 

unsigned int freq;

void interrupt1S() // a cada segundo
{
freq=TIMER1; //16 bits com entrada num pino
TIMER1=0;
}


main()
{
...//setup hw ... não detalho. Consulte d.s. do seu mc e/ou help do seu compilador
for(;;)
	{
	printf(freq);
	}
}

 

Link para o comentário
Compartilhar em outros sites

3 horas atrás, .if disse:

...//setup hw ... não detalho

 

Legal você ein kkkkkkk ! Vai deixar a bucha para o autor do tópico....

 

Vou ajudar no valor do Preload para gerar a interrupção de 4 milisegundos :

 

image.png.d3ea7ed50311aa1b7eb38cba4e1aca80.png

 

 

Se quiserem eu posto a inicialização do Hardware em Basic kkkkk

 

Paulo

 

 

Link para o comentário
Compartilhar em outros sites

9 minutos atrás, aphawk disse:

Legal você ein kkkkkkk ! Vai deixar a bucha para o autor do tópico....

vocês dois sabem que eu provavelmente não vou conseguir fazer isso né? Kkkkkk

 

 

Vou tentar e ver o que vai dar, eu geralmente apreendo melhor quando vejo alguém fazendo e tento fazer igual ou alterar algumas coisas, mas enfim o jeito é tentar.

 

28 minutos atrás, aphawk disse:

Basic

Flag, Basic, main, é tudo grego pra mim kkkkk

 

 

  • Haha 1
Link para o comentário
Compartilhar em outros sites

@ComandateGustavo ,

 

Eu desconfiava disso sim kkkkkkk !

 

De noite vou pesquisar se tem alguma coisa feita nessa linguagem e te passo se achar.

 

Realmente a parte de inicializar o hardware é um pouco chatinha mas é só escrever a coisa certa em uma meia dúzia de registradores .....

 

Achei isto aqui que usa o Timer1 como eu te falei, já é um excelente ponto de partida :

 

http://interface.khm.de/index.php/lab/interfaces-advanced/arduino-frequency-counter-library/index.html

 

Boa diversão !

 

Paulo

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
Link para o comentário
Compartilhar em outros sites

@.if ,

 

Existe um monte de sites calculadores de valores de Timers e até do Baud Rate , pois se usarmos apenas o datasheet, é um baita saco fazer aquelas contas ..... eu baixei calculadores disso tudo também, tá doido ficar fazendo na unha ....

 

Bom, para ajudar eu posso fazer a configuração do Timer0 e do Timer1 ( na função de Counter claro ) no Basic, e passo os valores a serem colocados nos Registradores , ou posso passar direto as instruções em Assembly , eu sei que elas podem ser colocadas diretamente na IDE do Arduino..., claro para facilitar o nosso colega , que embora deva estar sofrendo bastante, deve também estar aprendendo bastante !

 

Paulo

 

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP
1 minuto atrás, aphawk disse:

Existe um monte de sites calculadores de valores de Timers

'Cadê-los?' ... cite 1 😁. De fato já os vi também mas memória(*) né .. já sabe kk. No meu limitado . de vista, como tais registros são relativamente fáceis de programar, penso que a olhadela no d.s. seja suficiente.

(*) acho que no compilador do stm32cubeide tem algo do gênero. Um configurador gráfico dos registros. Ele gerava funções chatas em c e não necessariamente escrita direta nos registros por isso pra mim não serviu.. mas claro não lhe tiro o mérito...

Link para o comentário
Compartilhar em outros sites

1 hora atrás, aphawk disse:

claro para facilitar o nosso colega , que embora deva estar sofrendo bastante, deve também estar aprendendo bastante !

Claro que sim @aphawk a primeira vez que usei Arduino foi para montar uma CNC, mas não entendia nadinha só montei a máquina joguei o código pronto no Arduino e já era.

 

No tópico anterior aprendi bastante porque não tendo osciloscópio conseguimos montar um frequencimetro que apesar de ser meio capenga já deu uma ideia de qual seria a frequência que eu iria encontrar no hall do distribuidor e isso serviu de base para a criação do outro código, com a ajuda de todos mesmo ele sendo lento e com problemas funcionou.

 

Assim aprendi mais sobre a função If, ll, map,tone... Que vocês já estão acostumados, mas é que pra mim é tudo novo, esse contador mesmo que o @.if comentou pelo que entendi ele faz o cálculo com hardware certo? Nem sabia que daria pra fazer isso, achei que tudo o que o Arduino faz era através do software, isso é completamente novo pra mim.

 

Quando fiz o teste do circuito anterior fiquei bem contente porque fiz alguma coisa que funcionou e não explodiu nem pegou fogo kkkkk tenho pouco tempo livre por causa do trabalho, mas não vou desistir estamos cada vez mais perto.

Link para o comentário
Compartilhar em outros sites

@ComandateGustavo ,

 

A plataforma Arduino foi feita para que todos possam fazer coisas legais mesmo sem ter o conhecimento mais profundo sobre o funcionamento interno de todos os módulos existentes dentro de um Atmega.

 

Repare que você fez bastante coisa sem entender nada do hardware! 

 

Mas claro que entender todo o hardware ajuda muito para que tudo funcione sem os famosos errinho.. .

 

Sobre os Timers

 

O Atmega328 tem dentro 3 módulos chamados Timers, sendo dois deles de 8 bits e um deles de 16 bits.

Dois deles também podem ser configurados como Counters ( contadores ) possuindo um pino de entrada para que a contagem seja feita diretamente pelo hardware, isto é, uma vez configurado para Isso, cada vez que ocorrer uma transição na entrada o contador é incrementado, sem precisar de nenhum software para Isso, o processador pode estar com as interrupções desativadas, pode estar em Halt , e ainda assim a contagem continua !

Não é um "cálculo" , é apenas um incremento em um contador existente no hardware.

 

O que você pode fazer é ler essa contagem, ou gravar um novo valor para ela, que continuará sendo incrementado.

 

Já quando programamos o Timer como Timer mesmo, ele usa o sinal de Clock dividido por 256 ( chama-se Prescaler e pode ter vários valores ) como  entrada do contador, e assim ele segue contando até chegar no valor máximo programado ou em zero, e nesse instante ele gera uma interrupção. 

 

Claro que isso tudo é complicado para quem vê pela primeira vez, mas com o uso você vai achar isso cada vez mais fácil.

 

Quando você tiver a experiência dinossáurica da @.if , que chegou a fazer pisca - pisca com duas válvulas triodo e duas lâmpadas de filamento de 20W , e usando Rabo Quente para gastar pouco  ( kkkk ) vai saber de cor como usar tudo que tem no Atmega !

 

Paulo

  • Haha 1
Link para o comentário
Compartilhar em outros sites

30 minutos atrás, aphawk disse:

Quando você tiver a experiência dinossáurica da @.if , que chegou a fazer pisca - pisca com duas válvulas triodo e duas lâmpadas de filamento de 20W , e usando Rabo Quente para gastar pouco  ( kkkk ) vai saber de cor como usar tudo que tem no Atmega !

Pra eu fazer isso aí e tirar coelho da cartola é a mesma coisa, tem jeito não kkkkkkkkk 

 

Eu fiz SENAI de eletricista de manutenção a 11 anos atrás e no curso teve aulas de eletrônica analógica e digital, mas era bem básico o foco era comandos elétricos de máquinas, Relês, contatores, motores... Eu aprendi muita coisa lá, mas em eletrônica aprendi mais estudando por conta própria, atualmente pra mim eletronica é hobby, trabalho com algo bem diferente, mas ainda me interesso bastante pelo assunto, inclusive eu que fico inventando moda de fazer esses projetos doidos estou pensando em adquirir algum osciloscopio simples e baratinho, quase não tenho utilidade pra ele, mas dessa vez que precisei e não tinha deu bem mais trabalho e fez muita falta kkkkk

 

31 minutos atrás, aphawk disse:

O Atmega328 tem dentro 3 módulos chamados Timers, sendo dois deles de 8 bits e um deles de 16 bits.

Dois deles também podem ser configurados como Counters ( contadores ) possuindo um pino de entrada para que a contagem seja feita diretamente pelo hardware, isto é, uma vez configurado para Isso, cada vez que ocorrer uma transição na entrada o contador é incrementado, sem precisar de nenhum software para Isso, o processador pode estar com as interrupções desativadas, pode estar em Hall, e ainda assim a contagem continua !

 

O que você pode fazer é ler essa contagem, ou gravar um novo valor para ela, que continuará sendo incrementado.

 

Já quando programados o Timer como Timer mesmo, ele usa o sinal de Clock como a entrada do contador, e assim ele segue contando até chegar no valor máximo programado ou em zero, e nesse instante ele gera uma interrupção. 

Ahnnnn eu tirei umas conclusões me corrija se estiver errado:

 

Os timers são contadores que podem ser usados para contar pulsos, mas também podem ser configurados para contar tempo, no caso precisamos usar um para contar os pulsos e o outro para contar o tempo e tendo o tempo e os pulsos teremos então a frequência correto?

 

E o sinal de clock que você comentou vem do cristal soldado na placa do arduino né? Olhei nele e está estampado 16.000 então suponho que seja ele mesmo a base de tudo...

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

O clock de conta tempo sim, pode ser oriundo do cristal. O clock de frequencia ou rpm ou pulsos vem de um pino do mc... só chovi no molhado.

 

8 horas atrás, ComandateGustavo disse:

adquirir algum osciloscopio simples e baratinho

Certa feita comprei um kit pra montar osciloscópio dso baratinho na china uns U$10,00 mas o governo me taxou em U$20😡.. Sério ndv este lance de menos que $50 sem impostos.  ... queimei ele sem antes mesmo de ligar 😢... fiz uma cagadinha na ligação 😁

  • Curtir 1
  • Haha 1
Link para o comentário
Compartilhar em outros sites

9 horas atrás, .if disse:

Certa feita comprei um kit pra montar osciloscópio dso baratinho na china uns U$10,00 mas o governo me taxou em U$20😡.. Sério ndv este lance de menos que $50 sem impostos.  ... queimei ele sem antes mesmo de ligar 😢... fiz uma cagadinha na ligação 😁

era esse mesmo que estava pensando em comprar kkkkk na china estou achando por 100 a 120 reais e aqui no mercado livre achei ele por 190 reais já montado (o que é bom porque não tem risco de eu montar errado e torrar tudo kkkkkk)

 

Pelo preço ele parece ser bem básico, mas pra hobby creio que seja o ideal, eu me lembrava que era caro mas pesquisando por aí tem OSC de mais de 2000 reais, Eu ein kkkkkk com certeza seria para trabalho mesmo esse tipo de coisa.

 

9 horas atrás, .if disse:

O clock de conta tempo sim, pode ser oriundo do cristal. O clock de frequencia ou rpm ou pulsos vem de um pino do mc... só chovi no molhado.

O clock de tempo pode ser baseado no cristal, agora o clock da frequência vai para um pino do MC e ao contrário do clock do cristal que é fixo o clock da frequência pode variar, no meu caso vai aumentar a freq quanto maior a rotação do motor, certo?

 

 

Ahn sim posso usar a saida de som do PC para gerar sinais, onda quadrada, senoidal e por aí vai... É bom para testar o circuito, esse OSC de pc é bem capenga mas a saida de áudio do PC pode ser bem util pra algumas coisas.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP
7 minutos atrás, ComandateGustavo disse:

O clock de tempo pode ser baseado no cristal, agora o clock da frequência vai para um pino do MC e ao contrário do clock do cristal que é fixo o clock da frequência pode variar, no meu caso vai aumentar a freq quanto maior a rotação do motor, certo?

Apesar da declaração simplista, é isso sim amigo. Só espero não ter que digitar de novo que pra esta façanha você deve preparar o hardware preferencialmente entendendo o que está fazendo , ok?

 

Quero dar uma volta neste treco voador aí hein...

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

44 minutos atrás, ComandateGustavo disse:

O clock de tempo pode ser baseado no cristal, agora o clock da frequência vai para um pino do MC e ao contrário do clock do cristal que é fixo o clock da frequência pode variar, no meu caso vai aumentar a freq quanto maior a rotação do motor, certo?

 

 

Faltou pouco para tirar 10 , tá vendo como já tá aprendendo a cada dia ?

 

O clock do cristal tem valor fixo, mas cada um dos Timers tem o tal de Prescaler que eu falei acima, por exemplo o do Timer0 pode dividir o valor do clock da CPU pelos valores 1, 8, 64, 256 e 1024. Assim facilita bastante termos uma combinação que seja mais adequada às  nossas necessidades.

 

A contagem desses ciclos já divididos pelo Prescaler pode ser utilizada para gerar uma interrupção, não só quando ela ultrapassa 65535, mas também quando atingir um determinado numero , assim facilita bastante como base de tempo.

 

Por ultimo, o pino externo de contagem do Timer não é utilizado quando se usa o clock da Cpu como base de tempo, o que permite ele ser utilizado como I/O comum.

 

Outra coisa legal que pouca gente lembra é que quase todos os pinos dos Ports internos do Atemga328 podem gerar interrupção, e essa entrada do Timer também pode mesmo se ela for utilizada como entrada do contador !

 

Paulo

 

  • Haha 1
Link para o comentário
Compartilhar em outros sites

21 horas atrás, aphawk disse:

Quando você tiver a experiência dinossáurica da @.if , que chegou a fazer pisca - pisca com duas válvulas triodo e duas lâmpadas de filamento de 20W , e usando Rabo Quente para gastar pouco  ( kkkk ) vai saber de cor como usar tudo que tem no Atmega !

@aphawk reza a lenda que ela fez um pisca pisca com led para colar no retrovisor do carro, largou em alguma gaveta e ele esta piscando até hoje mais de 10 anos.

 

3 horas atrás, ComandateGustavo disse:

Ahn sim posso usar a saida de som do PC para gerar sinais, onda quadrada, senoidal e por aí vai... É bom para testar o circuito, esse OSC de pc é bem capenga mas a saida de áudio do PC pode ser bem util pra algumas coisas.

 

Compra um gerador de funções simples no MercadoLivre, tem alguns baratinhos com display que varia frequência e etc. 

Em 28/04/2021 às 18:28, ComandateGustavo disse:

Assim aprendi mais sobre a função If, ll, map,tone... Que vocês já estão acostumados, mas é que pra mim é tudo novo, esse contador mesmo que o @.if comentou pelo que entendi ele faz o cálculo com hardware certo? Nem sabia que daria pra fazer isso, achei que tudo o que o Arduino faz era através do software, isso é completamente novo pra mim.

Antigamente (ou nem tanto)na época do @.if else, tinhamos que usar todos os recursos do micro, a contagem por hardware deixava o micro livre para outras coisas, hoje o arduino usa muitas funções presas ao timer0 e timer1, as vezes voce vai implementar algo na unha e acaba apresentando problemas o resto. O arduino te coloca nesse mundo dos microcontroladores, cabe a você se aprofundar mais @ComandateGustavo e uma dica que eu ja dei muito valiosa e você não pode perder: debugador e simulador, olhar codigo e debugar "no zoio" é legal quando temos mais experiencia, mas uma ferramenta debuger ajuda bastante e nos faz entender melhor o codigo, uma gratuita para se especializar é o THINKERCAD, o Proteus (encontrado de forma Oliginau na internet!) simula circuitos e varios microcontroladores, tem debuger também fantastico!

  • Curtir 1
  • Haha 1
Link para o comentário
Compartilhar em outros sites

25 minutos atrás, mlegnari disse:

 reza a lenda que ela fez um pisca pisca com led para colar no retrovisor do carro, largou em alguma gaveta e ele esta piscando até hoje mais de 10 anos.

 

Sim, essa história é famosa aqui no CDH, ela criou um circuito parecido com o 2N2646 só que com uma corrente média bem baixa, e funcionava com duas baterias tipo CR2032 ! 

 

Ela deve ter montado mais de uma centena de pisca-piscas .... reparou que quase todo post de algum iniciante ela primeiro recomenda que ele faça um Led piscar ?  ( agora que cutuquei a onça lá vem chumbo... )

 

Sobre simuladores de Arduino, eu tinha baixado um aplicativo pro IPhone que quebrava um bom galho, eu como sou usuário do Proteus já faz bastante tempo uso a simulação do Isis de uma forma bem completa, e olha, para microcontroladores é algo fantástico !

 

Eu desenvolvi um controle inteligente de rotor de antenas fazendo uma conexão entre o rádio e o meu projeto no Proteus  usando uma porta serial virtual do Isis ligada ao rádio ( que tem uma porta USB ) e quando terminei o projeto o aparelho funcionou direitinho no mundo real ligado ao rádio. Isso me economizou algumas semanas de trabalho.

 

Eu ouvi falar bem desse simulador do Thinkercad, vou ver como isso funciona.

 

Paulo

  • Haha 1
Link para o comentário
Compartilhar em outros sites

5 minutos atrás, aphawk disse:

Sim, essa história é famosa aqui no CDH, ela criou um circuito parecido com o 2N2646 só que com uma corrente média bem baixa, e funcionava com duas baterias tipo CR2032 ! 

e funcionou sem trocar pilhas por 10 anos? 😳

 

45 minutos atrás, mlegnari disse:

uma dica que eu ja dei muito valiosa e você não pode perder: debugador e simulador, olhar codigo e debugar "no zoio" é legal quando temos mais experiencia, mas uma ferramenta debuger ajuda bastante e nos faz entender melhor o codigo, uma gratuita para se especializar é o THINKERCAD

O thinkercad eu uso algumas vezes para simular arduino é bem interessante, agora debugador não sabia que ele tinha essa função vou me aprofundar nisso.

 

10 minutos atrás, aphawk disse:

reparou que quase todo post de algum iniciante ela primeiro recomenda que ele faça um Led piscar ? 

quando criei o primeiro tópico aqui sobre o limitador de RPM no fim do ano passado ela recomendou não pule a etapa do pisca led!  eu achei curioso o apelido ser .if achava que era abreviação do nome alguma coisa assim, aí depois quando comecei a programar fui aprendendo algumas funções e seus nomes como: tone, map, else, if... aí quando escrevi iF no código parei e pensei  if é uma função de programação e também é o apelido aí pensei assim:

 

 

 

17 minutos atrás, aphawk disse:

Eu desenvolvi um controle inteligente de rotor de antenas fazendo uma conexão entre o rádio e o meu projeto no Proteus  usando uma porta serial virtual do Isis ligada ao rádio ( que tem uma porta USB ) e quando terminei o projeto o aparelho funcionou direitinho no mundo real ligado ao rádio. Isso me economizou algumas semanas de trabalho.

Rotor de antenas por acaso tem haver com aquele motorzinho que fica na ponta da antena parabólica? Desmontei um quando era pequeno e fiquei pensando porque tem um motor na antena? kkkkkkk

 

e realmente a simulação ajuda mesmo a fazer as coisas principalmente projetos novos, eu mesmo "simulei" a rotação do motor usando outro arduino para gerar a mesma frequência do hall do distribuidor em determinadas RPM, isso foi extremamente util se não  fosse assim toda vez que eu mudasse o código iria ter que ir no carro ligar o motor e ficar acelerando pra ver se funciona...

 

1 hora atrás, mlegnari disse:

Antigamente (ou nem tanto)na época do @.if else, tinhamos que usar todos os recursos do micro, a contagem por hardware deixava o micro livre para outras coisas

 

4 horas atrás, aphawk disse:

Faltou pouco para tirar 10 , tá vendo como já tá aprendendo a cada dia ?

demais! É que não tenho muito tempo livre para estudos mas no fim de semana principalmente domingo vou estudar isso, já está até aberto no navegador os links que me mandaramr, falando nisso essa parte de interrupt e contagem por hardware usando arduino pelo que percebi não tem muitos projetos na internet, isso é porque contagem por hardware e interrupção é bem mais complexo de se programar do que a programação comum que usa apenas o software?

  • Haha 1
Link para o comentário
Compartilhar em outros sites

18 minutos atrás, ComandateGustavo disse:

O thinkercad eu uso algumas vezes para simular arduino é bem interessante, agora debugador não sabia que ele tinha essa função vou me aprofundar nisso.

Tb não achei ferramenta de debug no thinkercad

 

 

14 horas atrás, .if disse:

Sério ndv este lance de menos que $50 sem impostos

Meio off, mas a lei diz que presentes dados para você até 50 doletas não serão taxados. Toda compra deveria ser taxada pela lei. Na prática, eles olham caixas grandes para taxar, o que é engraçado hoje em dia, já que um processador top custa mais que uma bicicleta.
 

Link para o comentário
Compartilhar em outros sites

 

@aphawk É mais para iniciante, pois o Proteus é mais complexo principalmente a simulação! o que eu gostei no Debuger do

THINKERCAD é que você não precisa abrir uma tela com as varias variáveis e olhar o valor na frente, basta colocar o mouse em cima da variável e aparece o valor dela na tela, isso é muito pratico!

 

39 minutos atrás, ComandateGustavo disse:

 funcionou sem trocar pilhas por 10 anos?

@ComandateGustavo ainda funciona! mas brincadeiras de lado, as fitas de nintendo 64 usam bateria CR2032 para armazenar os saves, e tem fita ai de mais de 20 anos salvando ainda! (ela não é recarregada durante o funcionamento do cartucho)

 

44 minutos atrás, ComandateGustavo disse:

eu achei curioso o apelido ser .if achava que era abreviação do nome alguma coisa assim, aí depois quando comecei a programar fui aprendendo algumas funções e seus nomes como: tone, map, else, if... aí quando escrevi iF no código parei e pensei  if é uma função de programação e também é o apelido aí pensei assim:

 

Eu creio que é abreviação do nome Isadora Ferraz, mas é uma incógnita, nem o google achou ela, as vezes eu penso que é uma inteligência artificial ou algo do tipo.

 

46 minutos atrás, ComandateGustavo disse:

demais! É que não tenho muito tempo livre para estudos mas no fim de semana principalmente domingo vou estudar isso, já está até aberto no navegador os links que me mandaramr, falando nisso essa parte de interrupt e contagem por hardware usando arduino pelo que percebi não tem muitos projetos na internet, isso é porque contagem por hardware e interrupção é bem mais complexo de se programar do que a programação comum que usa apenas o software?

 

Não é questão de complexidade, é apenas comodidade, alguém cria, vem outro e da crtl+c ctrl+v, o arduino fez muitas pessoas ingressarem nos micro controladores de maneira positiva e negativa. Me perguntaram um vez em uma empresa que visitei, se eu sabia programar mesmo ou se eu tinha código pronto... demorei a responder, como assim código pronto?? até descobrir que o ultimo programador deles vivia copiando coisas da internet e não sabia tirar os bugs ...

 

Os micro controladores possuem muito mais recursos do que memoria e processamento de dados, existe algumas funções especificas por exemplo para realizarem cálculos matemáticos usando hardware de maneira mais eficiente, o ideal para você entender isso seria pegar um micro 8051 e algum livro de curso completo (tem vários em português) que explane como usar todos os recursos ou começando por um pic16f da vida.

 

Os micros atuais, cito o esp32 para exemplo, possui recursos avançadíssimos, tem até integração para ler e escrever em protocolo CAN, é possível até com um cabo simples liga-lo na TV via cabo RCA, tem muita coisa e as vezes por não explorar tudo deixamos passar

  • Curtir 1
  • Haha 1
Link para o comentário
Compartilhar em outros sites

10 minutos atrás, mlegnari disse:

as fitas de nintendo 64 usam bateria CR2032 para armazenar os saves, e tem fita ai de mais de 20 anos salvando ainda! (ela não é recarregada durante o funcionamento do cartucho)

dessa eu não sabia! e olha que joguei super nintendo ein, mas essas baterias devem ser de vida bem longa também, ou os circuitos que usam ela devem puxar uma corrente baixíssima creio eu.

 

13 minutos atrás, mlegnari disse:

Eu creio que é abreviação do nome Isadora Ferraz, mas é uma incógnita, nem o google achou ela, as vezes eu penso que é uma inteligência artificial ou algo do tipo.

Ué Isadora Ferraz eu lembro, a uns tempos atrás ela me ajudou em uns parangolés que eu queria fazer em um tópico que já nem me lembro mais, mas era escrito o nome todo não apenas if e tinha a foto do mr bean se não me engano... bom voltamos ao zero entendi mais nada kkkkkkk

 

 

17 minutos atrás, mlegnari disse:

Os micro controladores possuem muito mais recursos do que memoria e processamento de dados, existe algumas funções especificas por exemplo para realizarem cálculos matemáticos usando hardware de maneira mais eficiente, o ideal para você entender isso seria pegar um micro 8051 e algum livro de curso completo (tem vários em português) que explane como usar todos os recursos ou começando por um pic16f da vida.

@mlegnari é uma ótima ideia o bom é que nem precisaria comprar o micro 8051 daria pra simular em algum programa como o protheus certo? e o pic16f  eu tenho um PIC12F675 aqui, usei ele pra fazer um pisca led kkkkkk Era um esqueminha com leds para ficar acendendo e apagando estilo supermáquina, mas não desenvolvi nada do zero foi só copiar e colar o código do blog do lários:

 

http://picsource.com.br/archives/5821

 

Falando nisso a programação para PIC não é o mesmo do arduino né? Se não me engano a IDE do arduino usa linguagem C e dos pics eu nem imagino qual seja...

 

A principal vantagem de saber essas coisas é que pode economizar dinheiro em determinados sistemas ou evitar problemas usando um PIC com mais funções, por exemplo usar um MC como o Atmega328 para ler um sensor de presença e acender uma lampada acaba sendo um desperdício porque existem outros MC com menos recursos porém mais baratos que conseguiriam fazer essa mesma função, correto?

 

Falando nisso já sei qual vai ser o próximo projeto, mas vou terminar esse primeiro, o outro vai ser mais difícil kkkkkk

 

1 hora atrás, Thiago Miotto disse:

Meio off, mas a lei diz que presentes dados para você até 50 doletas não serão taxados. Toda compra deveria ser taxada pela lei. Na prática, eles olham caixas grandes para taxar, o que é engraçado hoje em dia, já que um processador top custa mais que uma bicicleta.

@Thiago Miotto Off: atualmente estão taxando bem mais coisas, a uns 3 anos comprei minha placa de video no aliexpress, paguei menos da metade do que ela custava aqui e era nova veio na caixa original rapidinho e não foi taxado, mas outra vez comprei um celular bem simples que era mais barato que a placa de video e ele foi taxado e a taxa é salgada ein? Vai entender, atualmente ser taxado ou não depende simplesmente de pura sorte...

15 horas atrás, .if disse:

fiz uma cagadinha na ligação 😁

isso me lembra no SENAI era pra montar um treco que nem me lembro direito só lembro que usava uns 4 ou 5 CI e era sobre portas lógicas, tinha jumper na protoboard toda e eu conferindo cada jumper pra não ter risco de ligar errado, levei umas 3h pra montar tudo, montei conferi os cabos pra ter certeza que não ia dar errado então pensei está pronto vou ligar! aí inverti positivo e negativo na fonte que alimentava a protoboard, ou seja QUEIMOU TUDO, nem preciso falar que virei piada né? kkkkkkk

  • Haha 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!