Ir ao conteúdo
  • Cadastre-se

Programa de PIC


Agricio

Posts recomendados

Assunto sôbre PIC é o que não falta por aqui, mas, assim mesmo eu não consigo entender nada desses códigos aí.

Preciso de um programa que possa ser gravado em um PIC qualquer, desde que o mesmo possa me fornecer na saída uma tensão entre 0 volts a 3 volts tipo gerador de escadas ou rampa.

É necessário que essa tensão seja comandada por duas teclas µP e Down, para que eu possa aumentar ou diminuir a rotação de um motor de 2HP LINEARMENTE.

Estou fazendo esse controle com um potenciômetro que alimenta o gate de um FET, o qual, altera a largura de um PWM.

Detalhe: Funciona perfeitamente com o potenciometro.

Caso alguém conheça algum C.I. que já tenha essa característica e puder me passar eu agradeço

O Gravador/leitor de PICs e E²prom que eu tenho é o da figura abaixo e trabalha com o PONYPROG ou ICPROG.

Eu tenho aqui o PIC 16F628A

Link para o comentário
Compartilhar em outros sites

Angelo

O circuito já está todo montado e funcionando perfeitamente com o potenciômetro, então fica mais fácil p/ mim, "eu acho" apenas acrescentar esse controle. Mas estou aceitando idéias e palpites sem dúvidas. Se tem como fazer assim do jeito que você diz, por que não fazer?!

Link para o comentário
Compartilhar em outros sites

Preciso de um programa que possa ser gravado em um PIC qualquer, desde que o mesmo possa me fornecer na saída uma tensão entre 0 volts a 3 volts tipo gerador de escadas ou rampa.

É necessário que essa tensão seja comandada por duas teclas µP e Down, para que eu possa aumentar ou diminuir a rotação de um motor de 2HP LINEARMENTE.

Estou fazendo esse controle com um potenciômetro que alimenta o gate de um FET, o qual, altera a largura de um PWM.

Detalhe: Funciona perfeitamente com o potenciometro.

Esqueça, nem PIC, nem nenhum outro microcontrolador fornece uma saida analógica diretamente, ele so pode receber informações analógicas, se quiseres isso que procuras, teraas de implantar via hardware um conversor digital - analógico do tipo R2R por exemplo ou um conversor D/A controlador pela SPI, ou em ultimo caso usar o PWM do PIC e aplicar o sinal a um filtro passa - baixa, mas atenção, esse ultimo caso so vale se trabalhar com o PIC rodando a 20MHz caso contrario com um PWM de frequencia muito baixa, tera de usar um filtro de 8 ordem pra remover completamente a portadora e reconsruir o sinal pra analógico.

Se funciona bem com o potenciometro, por que queres usar um PIC?

abs.

Link para o comentário
Compartilhar em outros sites

Acho que eu não me expressei direito (vou tentar corrigir)

O motor está ligado em um circuito de alta potência que suporta até 36 ampéres.

O MOSNFET de potência é o IRFP264 que tem seu gate disparado por um circuito pré-amplificador composto de outros 5 transistores comuns "tipo BC547".

Na entrada desse pré-amplificador está acoplado um circuito PWM feito com o 4093 e cujo controle de largura de pulso desse PWM está sendo feita por um "FET", o BF245 cujo gate recebe uma variação de tensão entre 0 volts a 3 volts via potenciômetro

Eu só preciso de um C.I. que forneça essa difernça de tensão no gate desse "FET" para substituir o potenciômetro por teclas µP e Down.

Como o original era o COP8SAA720NB e parece que se tornou obsoleto, eu estou tentando adaptar outro dispositivo no lugar e acredito que algum PICxxxxx deva resolver o problema.

Não está havendo perda de torque, de tensão nem de potência e essa parte do circuito está às mil maravilhas.

Link para o comentário
Compartilhar em outros sites

Salve, Agricio.

você não pode usar um potenciômetro digital e um FET como drive desses 3V?

O gate do FET vai ligado aos 3V. O dreno é ligado na saída do pot, e source será o sinal de 3V que você precisa. Já experimentou isso? A Microchip fabrica pots digitais. Não sei se você encontra fácil aqui.

Outra solução é usar DAs acoplados ao seu PIC. Daí, você controla digitalmente tanto as teclas, como as saídas. Liga a saída do DA, no FET.

[]´s

Link para o comentário
Compartilhar em outros sites

Bom, se o que é necessário é apenas gerar a tensão de 0 a 3 volts de forma linear, mediante uma chave up e uma chave down, sugiro o seguinte :

Um simples PIC, com uma rede R-2R fazendo a conversão digital-analógica ligado em uma das portas de I/O com saida de 0 a 5 Volts, e na saida dessa rede um simples ampop com ganho menor do que 1, para ajustar a saida entre 0 e 3 Volts.

Programa e hardware super-simples, e pode usar um PIC de 18 pinos sem problema.

Paulo

Link para o comentário
Compartilhar em outros sites

APHAWK (Você matou a pau)

É exatamente isso que eu quero. Até já adaptei um operacional CA741 p/ experiência usando a carga e descarga de um capacitor via teclas µP e Down, funciona relativamente bem mas contudo, o capacitor se descarrega muito rápido e consequentemente a rotação do motor acompanha essa descarga.

Agora, como fazer esse programa e jogar dentro do PIC???? Essa é minha questão.

Eu tenho o gravador/leitor que coloquei lá em cima e uso p/ fazer leitura e gravacão de E²proms e PICs. Fazer o programa com aquele monte de detalhes e comentários, venho tentando faz muito tempo e não consigo.

Se der p/ dar uma força, eu agradeço.

Link para o comentário
Compartilhar em outros sites

Opa, se é só isso, eu mesmo faço o programa em Basic e te envio ele já em .hex para voce gravar ok ?

Só me explica se tem de ter um valor inicial para a tensão, ou pode ser a partir do zero mesmo.

Felipe, a função do ampop na saída da rede R-2R é fazer a conversão de nível E servir de buffer, SEM sobrecarregar a rede R-2R.

Vou fazer o esquema rapidinho aqui no escritório mesmo e posto para vocês darem uma olhada e sugerirem alguma melhoria ok ?

Paulo

Link para o comentário
Compartilhar em outros sites

Acha mesmo necessário fazer conversão de nível? pois eles quer uma saida de 0 a 3 volts? isso a rede R2R poderia forncercer diretamente, bastando usar o seguidor para dar um ganho de potencia no sinal de saida, e para evitar que a saida ultrapasse os 3 volts poderiamos limitar o valor maximo de ADRESH que vai se passar para a Rede R2R

abs.

Link para o comentário
Compartilhar em outros sites

Opa excelente ideia... não tinha pensado nisso !

Aliás, se vai ser ligado direto na porta de um MOSFET, nem precisamos usar ampop, que que voce acha ?

Fazemos uma rede R-2R com resistores de 10K e 20K, e ligamos direto na porta do Mosfet.

Vamos usar uma rede de 6 bits, e poderemos ajustar pelo menos 5 bits ( 32 niveis ) com certeza, mais alguns niveis até chegar em 3 volts ok ?

Paulo

Link para o comentário
Compartilhar em outros sites

Sim concordo, daria até pra dispensar OPAMP, mas mesmo sendo saturado por tensão, os MOSFETs ainda assim precisam de uma pequena corrente na porta para operação correta, agora questao fica por qual MOSFET usar e qual a ordem dessa corrente, pra ficar universal (usa MOSFET ou ate Bipolares que são mais baratos )_ seria interessante manter o operacional.

Tem mais um detalhes, como iremos saturar um MOSFET com apenas 3V, o maximo que conseguiremos é manter ele na regiao ativa, provocando aquecimento, não seria legal fazer um drive com um bipolar da serie BC?

abs.

Link para o comentário
Compartilhar em outros sites

Caros amigos:

Trata-se do gate de um "FET" (BF245) e não MOSNFET que fica lá na saída e que está funcionando muito bem

Essa tensão variável pode ser de 0 volts até 5 volts que não há problemas, pois, depois eu posso colocar divisores resistivos no acoplamento p/ adapatar até a tensão de 1 volt até um máximo de 3 volts.

Por que de 0 volts a 3 volts?

Simples, pois com o potenciômetro eu monitorei a alimentação no gate do "FET" e o mesmo começa a conduzir a partir de exatos 1 volt e atinge o máximo próximo de 3 volts

Rotação mínima 1 volt e rotação máxima 3 volts

É preciso que comece sempre do 0 (zero) e que quando seja desligado, não importa em que rotação esteja seja resetado para o mínimo novamente e assim ao ligar o aparelho o motor esteja parado.

Muito importante: Vou atuar somente no gate do FET (BF245) que fica lá na entrada, no PWM e não no gate do MOSNFET IRFP264 que fica lá na saída.

Depois de tudo pronto e aprovado eu termino o esquema do circuito e coloco aqui para todos.

Obrigado

Link para o comentário
Compartilhar em outros sites

Ok Agrício, entendido ! A impedãncia de entrada desse seu transistor é altíssima, podemos ligar direto a saida da rede R-2R nela.

Inicialmente terá 0 volts na saida. vamos poder variar a tensão entre pouco menos de 1 volt até 3 volts, mas vou deixar no programa fonte indicado onde voce pode alterar para mudar isto ok ?

Vou usar o PIC que voce citou, para te facilitar , pena que não consigo fazer agora de tarde seu projeto, mas farei de noite e posto aqui o circuito do PIC, o código-fonte em Basic, o programa compilado em .HEX, e voce manda pau na montagem ok ?

Paulo

Link para o comentário
Compartilhar em outros sites

olá APHAWK

Eu estou terminando a montagem do circuito e me deparei com uma dúvida quanto à polarização do resistor "R13" de 20K!! Sendo "R14" ligado à massa não teria que ser o "R13" ser ligado ao +5 volts? (Ambos estão ligados à massa)

Dê uma verificada no circuito, por favor.

Estou montando como está no diagrama, mas ainda não fiz nenhum teste.

Qual programa você usa p/ simular o funcionamento desse circuito?

Seria o PIC SIMULATOR IDE?

Obrigado

---------------------------------------------------------------

Quanto ao software aparece a seguinte mensagem:

-------------ERROR

-------------VERIFY FAILED AT ADRESS 0000h

Devo ter feito alguma coisa errada aqui, com certeza. Se puder

me dar uma "mão", agradeço.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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...