olá amigos estou iniciando agora com arduino ja tenho uma certa experiencia em plc. preciso montar um programa que me informe o nivel da caixa dagua por ex usando 5 sensores cada um indicando uma quantidade de agua e que seja mostrado na tela ou atraves de leds.se alguem puder me ajudar eu agradeço obrigado
Tags:
Marcio Cardoso,
Você não precisa usar 5 sensores pra saber com exatidão os níveis de uma caixa d' agua, ao menos não utilizando arduino.
Basta você utilizar um modulo sensor ultrasonico e ele informará o nível em que a caixa se encontra.
O truque da precisão do sensor trata-se de um efeito de retardo, onde se lê várias vezes o resultado do sensor e se tira a média, tipo, fazer 30 leituras, somar e dividir por 30, o resultado será a média, isso de forma muito rapida.
Tá aqui um tutorial de como usa-lo:
http://www.oarduino.com/tutorial-sensor-ultrassonico-no-arduino/
muito bom weider,vou começar a praticar e estudar mais um pouco sobre programaçáo pois em c eu estou meio devagar.
mais uma perguntinha voce poderia me informar se da para montar um supervisorio neste caso. desde ja agradeço pelaatenção
Claro que dá pra montar um supervisório.
Supervisorios se baseiam em parametros de sensores, nesse caso você pode ligar o arduino ao PC e enviar os dados.
Eu ainda não precisei montar um supervisorio com o arduino, mas sei que o caminho é o mesmo que com CLPs.
Eu estudei o Elipse Scada junto com CLPs antes de estudar arduino, mas ele é pago, ai complica as coisas.
Existe o Scada BR que é gratuito, e existem uma porrada de tutoriais ensinando a ligar o arduino a ele, se não me engano é por protocolo MODBUS.
.
valeu meu camarada,muito obrigado pelas dicas.
esse exemplo do video:
https://www.youtube.com/watch?v=ezULc37xi1Q&feature=player_deta...
equema elétrico do sensor de chuva:
Quanto a comunicação com o pc, pode usar essa biblioteca e um programa supervisório como Elipse Scada, ou o ScadaBR
http://code.google.com/p/simple-modbus/
usando o arduino como slave
Márcio,
Fiz um projetinho deste semana passada, usando um arduino Uno + sensor Ultrassom + display lcd.
é uma caixa dagua qe tem 'x' de profundidade, e precisava saber qual o nivel de agua. O sensor ultrassom reflete na agua e me manda essa distancia, aí processo esse sinal e vizualizo em um display lcd 16x2. . . Se tiver interesse te passo o codigo e a simulação no Proteus ISIS, aí é só vc montar.
Abraços
me interessa sim se puder me enviar eu lhe agradeço.desde ja lhe agradeço pela atenção
marcio_cardoso2008@hotmail.com
Desculpa a demora Marcio, não te mando por email porque essa duvida pode ser de outros, então os aquivos estão anexados. . . Qualquer duvida me fala.
Abaixo o código:
// Projeto : Medidor de nivel com HC-SR04
//
// Criado Por Eduardo Pinheiro (edupinheiro.silva@gmail.com)
// **** Por favor ao publicar o projeto não esquecer de citar o autor *****
//
/** Incluindo Bibliotecas **/
#include <LiquidCrystal.h> //Carrega a biblioteca LCD
LiquidCrystal lcd(9, 8, 5, 4, 3, 2); //Define os pinos que serão ligados ao LCD
/** Definindo nome e numero dos pinos **/
#define echoPin 7 // Pino 7 recebe o pulso do echo do Sensor 1
#define trigPin 6 // Pino 6 envia o pulso para gerar o echo do Sensor 1
int prfdde = 135; // profundidade da caixa (aqui vc coloca a pronfudidade
// da caixa em CM)
void setup()
{
/* Define os pinos como INPUT ou OUTPUT */
pinMode(echoPin, INPUT); // define o pino 7 como entrada (recebe)
pinMode(trigPin, OUTPUT); // define o pino 6 como saida (envia)
/* Inicializa LCD */
lcd.begin(16, 2); //inicia o lcd
Serial.begin(9600); //inicia a porta serial
}
void loop()
{
/* Rotina de funionamento para o Sensor Ultrasson 1 */
digitalWrite(trigPin, LOW); // seta o pino 6 com um pulso baixo "LOW"
delayMicroseconds(2); // delay de 2 microssegundos
digitalWrite(trigPin, HIGH); // seta o pino 6 com pulso de "HIGH"
delayMicroseconds(10); // delay de 10 microssegundos
digitalWrite(trigPin, LOW); // seta o pino 12 com pulso baixo novamente
long duration = pulseIn(echoPin,HIGH); // pulseIn lê o tempo entre a chamada e o pino entrar em high
long distancia = duration /29 / 2 ; // Esse calculo é baseado em s = v . t, lembrando que o tempo vem dobrado// porque é o tempo de ida e volta do ultrassom
/* Calculo do percentual do nivel da caixa */
long nivel = distancia * 100 / prfdde; // variave nivel atribui o a valor da distancia e calcula
// o percentual de acordo com a prfdde
/* Motra na Serial monitor o nivel em % */
Serial.print("Nivel: ");
Serial.println(nivel);
/*** Interface do display ***/
lcd.clear();
lcd.print("Nivel: "); // Mostra a mensagem "Nivel:"
lcd.print(nivel); // Mostra o valor da variavel "distancia" em centímentros
lcd.print("%"); // Mostra o simbolo de porcentagem
delay(300); // Espera 0,3 segundo para fazer a leitura novamente
}
No arquico do ISIS, não esqueça de carregar o .hex do sensor ultrassom simulado, pois senão ele nao funciona.
Abraços
muito bom ,bem detalhado os comentários . Agora vou providenciar o material e executar essa terefa e aproveitando para treinar um pouco a linguagem de prog. muito obrigado pela ajuda um grande abraço
Se precisar de literaturas sobre arduino, como programação e projetos de exemplos, vejo no link abaixo:
https://drive.google.com/folderview?id=0B8uct2ZLTQkFb0NrLVowa2ZMNXM...
Abraços
Eduardo,
Parabéns pelo projetor, tentei simular no Isis, mas me da um erro, como se o .HEX fosse para um PIC e não para o Arduino, sera que tem alguma confusão no arquivo enviado ou sou eu que estou fazendo algo errado.
Um abraço.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por