Ir para conteúdo

Fazendo um controlador de temperatura com arduino


Postagens recomendadas

Um breve tutorial de como programar as curvas no OSPID

 

O arquivo deve ter, ao final, a seguinte extensão e ser salvo na pasta profiles onde está sendo executado o app do OSPIDFRONTEND (mac, win ou linux): reflow.txt.

Por exemplo, se eu quiser criar uma curva que resulte em um café city, o arquivo poderá ser denominado CAFECITY reflow.txt

 

As linhas não devem ser saltadas (não deve ter uma linha em branco debaixo de outra), bem como o número máximo de etapas a serem seguidas é 15. Portanto, o arquivo (...)reflow.txt só pode ter 15 linhas

 

A primeira linha denomina o nome da curva. Por exemplo: CAFECITY

Voce pode usar as barras duplas // para fazer alguma explicação (para lembrar depois porque traçou o parâmetro). Exemplo de primeira linha:

 

CAFECITY // A PRIMEIRA LINHA DEFINE O NOME DA CURVA (PROFILE)

 

Na programação de rampas, o primeiro número define o tipo de parâmetro a ser observado. Há três tipos de parâmetros : Altera o setpoint para determinado valor (3); Determina que a próxima rampa só se inicie quando alcançada determinada temperatura (2); traça determinada rampa, cujo setpoint será alcançado ao final dela (1).

 

Entre o primeiro número (que como já ressaltado define o parâmetro), o segundo número (que define o SETPOINT) e o terceiro número (que é o número de segundos a ser observado), devem ser colocadas vírgulas (,). Exemplifico abaixo, com as devidas observações:

 

3, 30, 0 // Estabelece que o setpoint é 30 (imediatamente), bem como determina que sejam aguardados 0 segundos para passar à próxima linha (etapa)

2, 0, 0 // determina que apenas quando a temperatura equivaler ao setpoint anteriormente fixado (30), a próxima etapa terá início. Com outras palavras, só passa para a próxima etapa (linha) quando a temperatura parâmetro equivalha à temperatura medida.

1, 200, 300 // estabelece uma rampa, partindo da temperatura atual (no caso 30, porque havia a linha 2, 0, 0 logo acima) até a temperatura estabelecida como setpoint, que deve ser alcançada em 300s (5 minutos) - com isso a rampa vai começar em 30 e, durante sua execução, o setpoint será alterado, segundo a segundo, de forma que, no final dela, o setpoint seja 200.

 

Alguns conselhos:

 

Em se tratando de forno (pipoqueira é diferente), cuidado ao traçar rampas para que a temperatura parâmetro seja efetivamente alcançada ao final. Se a rampa for muito rápida ou a temperatura for muito alta, com outras palavras, se a razão de aquecimento do forno não for suficiente para que os parâmetros traçados sejam alcançados, ao final da rampa, o SETPOINT não será atingido (será maior do que o INPUT - TEMPERATURA MEDIDA). Recomendo que, antes de traçar a rampa, o operador do OSPID faça um teste de aquecimento do forno - ver quanto tempo ele demora para que a temperatura x seja alcançada.

 

O mesmo deve ser ressaltado para decréscimo de temperatura. Se o equipamento só possuir resistências elétricas e nenhuma ventoinha que traga ar frio de fora, há que ser observado o tempo que ele demora para perder temperatura, ou seja, desligadas as resistências, quanto tempo o forno demora para partir de uma temperatura x (maior) para outra y (menor).

 

O uso da linha de comando 2, 0, 0 - pelas razões acima expostas - deve ser realizado com sabedoria. Do contrário, uma torra que demoraria x tempo para ser finalizada pode demorar x + muito tempo e, além disso, resultar em um café imbebível.

 

Eu, particularmente, prefiro usá-lo apenas no início, para que a curva seja sempre semelhante, independentemente da temperatura ambiente.

Prefiro, também, usar o comando 1, ao invés do 3, por possibilitar um maior controle das rampas (o PID, com os parâmetros P I D traçados adequadamente, vai assegurar que as temperaturas (dentro do possível) sejam equivalentes às definidas na rampa (tempo x razão de aquecimento/resfriamento).

 

Exemplifico uma curva de torra de café:

 

CAFECITY //first row is Profile Name

3, 30, 0 //Step Setpoint to 30, wait 0 seconds

2, 0, 0 //Wait for PID Input to cross setpoint

1, 200, 420 //Rampa setpoint ate 200, com duração de 7 minutos

1, 160, 120 //Rampa setpoint ate 160, com duração de 2 minutos

1, 195, 240 // Rampa setpoint ate 195, com duração de 4 minutos (aqui voce varia entre 3 e 5 minutos)

1, 180, 60 //Rampa setpoint até 180, com duração de 1 minuto

2, 0, 0 //Wait for PID Input to cross setpoint

1, 30,0 // define para 30 a fim de manter as resistencias desligadas durante o tempo da retirada do cafe

127, 0, 5 //buzz for 5 seconds (alarme para quem instalar o devido hardware no arduino).

 

 

Espero ter ajudado.

 

Abraços

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

Sarisfeito, por ora, larguei um pouco o OSPID de lado. Estou mexendo no sketch do artisan, mas um mais antigo, antes de implementarem o controle por fase. Consegui adapta-lo para ler as temperaturas. Ainda não testei com um relê. Mas, já o fiz com o LCD, que apenas mostra as temperaturas.

Link para o comentário
Compartilhar em outros sites

Guilherme,

 

O OSPid ficou todo zoado, fiquei com preguiça de mexer e resolvi passar para o Roastlogger.

MInha experiência hoje foi muito boa com alguns percalços.

Dei um clear na action list e carreguei sua torra sugerida para um city. Coloquei os parâmetros do PID do OSPid com um detalhe, o kD no Roastlogger máximo é de 150.

Ele tem ainda a opção de escolher os parâmetros para o T1 ou para o RoR, fiquei com o T1 mesmo.

O Roastlogger está conseguindo manter as temperaturas ajustadas de forma muito boa.

Testei duas vezes com o forno vazio. Coloquei o forno em 195 e resolvi re-torrar o monte verde que eu tinha deixado em estado de pão e surpreendentemente ficou um café tomável.

Então resolvi partir para uma torra nova do monte verde. Coloquei a sua curva e parti para o abraço. Logo no começo tive erros de leitura da T1. O engraçado é que era só no PC. No LCD do arduino a temperatura estava lendo normalmente.

 

deixei correndo e no final das contas acho que ficou pouco tempo em 195. No roastlogger a rampa de 160 para 195 é muuuuuito gradual. Demora demais para chegar nos 195, ou seja, ao final dos quatro minutos programados o café só assou.

 

Ficou bem uniforme mas acho que ficou abaixo do esperado em grau de torra. Ouvi um crack muito discreto aos 12 minutos.

 

Reprogramei a curva e com o forno vazio a rampa ficou linda, veja só: Minha idéia é subir em 3 minutos apenas do 160 para o 195 e assim ficar lá até o desejado, quando posso interromper e finalizar com o 180.

 

city.png

 

Vou torrar mais 200 gramas de monte verde e dessa vez queria fazer direito.

Link para o comentário
Compartilhar em outros sites

Acho que ficou boa. No meu estou subindo mais a temperatura no inicio. Deixo subir até uns 200 em cinco minutos, baixo um pouco e torno a subir, até 196, na finalização. Baixo para 180 após o 1• crack

Link para o comentário
Compartilhar em outros sites

11% com a sua curva sugerida anterior, com essa nova não fiz ainda.

Vou baixar para 5min a subida aos 200. A queda aos 160 em 2, subida para 195 em 3 (ou 2?) e depois manter 195 até o primeiro crack.

vou programar essa queda para os 180 nos actions.

Link para o comentário
Compartilhar em outros sites

11% é pouco. Vai ficar um pouco mais ácido e, talvez, sem ter desenvolvido bem a reação de mainlard. A partir de 13% fica bom.

 

Acho que rampa de 3 minutos para 195 é melhor do que dois. Partindo de forno frio, a torra leva entre 13 e 14 min.

Link para o comentário
Compartilhar em outros sites

Poderíamos medir a partir de 30, até 200, nos dois fornos para comparar se as temperaturas/tempo estão batendo. Mas acho que o teste só é válido com o tambor girando, de forma a distribuir melhor o ar quente.

Link para o comentário
Compartilhar em outros sites

Acabei de fazer uma torra aqui. 13min20s, 13,55% de perda de massa. Não chegou a 200 graus na primeira rampa (temperatura que deveria ter sido alcançada em 7min). Acho que é em razão da massa de café verde, que libera vapor nessa fase (desidratação). Chegou a 178 graus ao final desse tempo. Também não voltou a 160 graus. Antes de chegar lá, começou uma rampa para 196, que foi alcançado (chegou a 198). Posto a curva

 

 

CAFCTGUI //first row is Profile Name

3, 35, 0 //Step Setpoint to 30, wait 0 seconds

2, 0, 0 //Wait for PID Input to cross setpoint

1, 200, 400 //RAMPA PARA 200 em 7 minutos

1, 160, 60 //RAMPA PARA 160 em 1 minutos - ate aqui 8 min

1, 196, 150 // RAMPA PARA 196 em 2.5 minutos - ate aqui 10.5 min

1, 196, 30 // MANTEM 196 POR MAIS 30 - ate aqui 11min

1, 180, 150 //Rampa setpoint para 180, em 2 min 30s - ate aqui 13.5min

2, 0, 0 //Wait for PID Input to cross setpoint

1, 30,0

127, 0, 5 //buzz for 5 seconds

Link para o comentário
Compartilhar em outros sites

Acho que o roastlogger deve ser melhor. Mas a falta de espaço para o computador ainda não me convenceu a mudar do OSPID. O Bluetooth é essencial para mim, pelas razões expostas.

Link para o comentário
Compartilhar em outros sites

Rodrigo, utilizando os mesmos componentes, qualquer um pode replicar. Ele colocou um link no video onde vai para o projeto que ele criou no gifthub. Não deve ser fácil fazer, contudo.

Link para o comentário
Compartilhar em outros sites

Léo,

 

testei aqui e demorou 8 minutos para chegar aos 200º.

Antes de eu acrescentar as ventoinhas na lateral do forno, demorava menos. Mas, como é o meu protótipo e ele já sofreu deveras, acho que o vento que está sendo soprado para manter a temperatura da carcaça sobre controle está invadindo um pouco o interior do forno. De qualquer forma, como isso não está atrapalhando as minhas torras (acho que até ajuda um pouco, já que percebi uma maior homogeneidade depois da inclusão das ventoinhas), vou deixar como está. No seu, provavelmente, a temperatura de 200º é alcançada mais rápido. O meu aquece bem rápido nos 3 primeiros minutos, de forma a que o forno acompanha a rampa crescente. Mas, quando chega em 170ºC, a velocidade de subida cai drasticamente. Ao menos, partindo do forno frio.

 

Desisti, por ora, novamente, do sketch do artisan, já que não consegui modificá-lo a contento.

Voltei ao sketch do OSPID. Resolvi todos os problemas, tanto das rampas, como dos artefatos (não sei se o autotune está funcionando). Agora sim!!! kkkkkk

Bom, não tentei conectar a ele via bluetooth do PC, mas funciona muito bem conectando pelo MAC. Acho que vai ser o sistema de PID da minha escolha.

 

 

Segue a versão final (por ora) do OSPID:

 

https://docs.google.com/file/d/0ByeNNDDkmoEEMGd0Rkl0ZXctUnM/edit?usp=sharing

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

NOVO LINK DO OSPIDFRONTEND - AGORA ELE SALVA UM LOG COM DADOS DA TORRA

 

https://docs.google.com/file/d/0ByeNNDDkmoEEV2htYlJ6dHEza28/edit?usp=sharing

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

A propósito, consegui fazer nosso Bluetooth funcionar no windows. O problema era o péssimo gerenciamento do windows. Instalei o software de gerenciamento da toshiba nele e pronto, agora funciona com o ospidfrontend. Falta testar com o roastlogger. Segue o link:

 

http://aps2.toshiba-tro.de/bluetooth/?page=download-toshiba

 

Link para o comentário
Compartilhar em outros sites

eu tinha tentado com esse pacote de drivers toshiba.

Esse BT é de emputecer qualquer um.

 

Hoje fiz mais uma torra do Unique blend, 250g, dessa vez seguindo a sugestão do Guilherme. Já me avisou que esse café é difícil e já percebi. Muito difícil talvez por ter mais de um grão misturado ainda verde, quando na verdade deveria ser torrado em separado e depois sim feito o blend. Mas esse café foi comprado por um colega do trabalho que quis contribuir com meus esforços em oferecer um café melhor que o licitação.

 

Fiz a curva inicial igual a já postada aqui:

 

- 7 minutos até 200º ( na verdade chegou a 176º em 7min00s e continuou subindo até 180º até o final do 8min)

- rampa até 160º em 2min30s minutos (só caiu até 170º nesse tempo)

 

a partir de agora vem a diferença, ao invés de rampa até 195º uma rampa até 230º

 

- rampa até 230º até ouvir o crack (eu marquei o crack errado no roastlogger, na verdade começou com 14min30s aos 225º, foi bom para ver que eu estava fornecendo pouco calor nas primeiras tentativas)

- desligar as resistências, começou uma curva descrescent, o 1C encerrou aos 16min30s

- deixei finalizar até os 180 aos 18min00s

 

segue a curva e o resultado. Achei até bem uniforme para uma torra de dois tipos de grão.

 

uniqueblend2.png

 

IMG_20131009_210857.jpg

 

 

IMG_20131009_210902.jpg

Link para o comentário
Compartilhar em outros sites

a 1ª tentativa de Unique blend que não deu certo eu retorrei para experimentar, ficou quase um viena. Vou comparar com o bem feito no fim de semana.

Link para o comentário
Compartilhar em outros sites

caiu de 250g para 214g, 14% de perda.

Estou esperando uns 3 dias para experimentar.

o re-torrado ficou bem escuro, já está soltando os óleos. Deve estar tomável com leite.

Link para o comentário
Compartilhar em outros sites

Guilherme, comprei a Gaggia Classic do ML. Depois vou pegar umas dicas com você.

Estou esperando chegar para ver quais portafiltros virão. De cara tenho que comprar um tamper, pois o meu é de 53mm.

Link para o comentário
Compartilhar em outros sites

caiu de 250g para 214g, 14% de perda.

Estou esperando uns 3 dias para experimentar.

o re-torrado ficou bem escuro, já está soltando os óleos. Deve estar tomável com leite.

 

Deve ter ficado muito bom.

 

A gaggia é uma boa máquina. Você não vai se arrepender. O João Crispin faz uns muito bons, peso balanceado e boa pegada. Comprei um no ebay mais barato para servir a máquina do Trampo e atesto que não se compara a pegada.

 

 

Link para o comentário
Compartilhar em outros sites

Hoje fiz uma experiência com o roastlogger.

Ainda não havia afinado os parâmetros PID, mas deu para se ter uma boa impressão em relação ao programa. Eis o log da torra, que resultou 13% de perda de massa:

 

 

10291282775_6b99df1464_c.jpg

 

10282870405_dc37c3354a.jpg

Link para o comentário
Compartilhar em outros sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Processando...
×
×
  • Criar Novo...