domingo, 30 de dezembro de 2018
sábado, 15 de dezembro de 2018
sábado, 8 de dezembro de 2018
quinta-feira, 6 de dezembro de 2018
terça-feira, 4 de dezembro de 2018
sexta-feira, 30 de novembro de 2018
domingo, 18 de novembro de 2018
domingo, 21 de outubro de 2018
sábado, 13 de outubro de 2018
Conversor HX711: Balança Digital com Sensor de Peso e Arduino Uno
As balanças Digitais eletrônicas são utilizadas para diversas finalidades em diversas áreas como:
Indústria alimentícia;
Pesagem de caminhões;
Pesagem de aeronaves;
Contagem de peças;
Indústria química;
Metalúrgica;
Construção civil.
Uma balança digital é basicamente formada por célula de carga, amplificador e conversor AD (Conversor HX711).
A Célula de Carga
A Célula de carga nada mais é que um sensor de força. São capazes de medir deformações mecânicas, ou seja, à medida que o corpo sofre uma deformação a resistência fixada no corpo dessa célula é alterada.
Célula de Carga
Com a alteração da resistência é possível determinar a deformação causada pela força aplicada, essa resistência é um circuito ponte de Wheatstone. Veja a ponte na figura abaixo:
Ponte de Wheatstone
Quando R1=R2=R3=R4 a ponte estará em equilíbrio, assim o valor medido pelo voltímetro (Vm) será de 0V, mas quando variamos o potenciômetro R4 a ponte entra em desequilíbrio assim o voltímetro acusará um valor de tensão. Obviamente que na célula de carga não teremos esse potenciômetro e sim como já citado uma resistência que será variada de acordo com a deformação do corpo da célula. A célula de carga dispõe de meia ponte, e para completar uma ponte foram utilizadas duas células de carga.
Módulo Conversor HX711
O módulo conversor HX711 é um conversor analógico digital de 24 bits que também funciona como um amplificador, assim mantendo o nível de sinal dentro da faixa de operação do conversor.
Módulo conversor HX711
Pinagem do módulo conversor HX711:
E+: pino que alimentará a célula (+);
E-: pino que alimentará a célula (-);
A+: sinal da célula de carga;
A-: sinal da célula de carga;
VCC: alimentação positiva;
GND: alimentação negativa;
DOUT: conectada ao pino digital do Arduino;
SCK: conectada ao pino digital do Arduino.
Tela Osciloscópio Com Canal 1 e Canal 2
No canal 1 (amarelo) do osciloscópio temos conectado o pino DOUT e no canal 2 (azul) temos conectado o pino SCK do módulo conversor HX711. O pino SCK envia 25 pulsos sendo que o 24º pulso indica o fim da conversão e o 25º pulso indica que a próxima conversão tem que ser no canal A com ganho de 128. No pino DOUT temos a informação já convertida em digital e quando o pino SCK envia o 24º indicando que a conversão terminou o pino DOUT vai para nível lógico alto.
Quando o pino DOUT vai para nível lógico baixo, significa que o mesmo está pronto para a conversão aguardando o primeiro pulso do SCK para que esta conversão seja iniciada.
Montando o Circuito da Balança com o Arduino
Abaixo, segue o esquema elétrico da ligação das células de carga, a ligação do Arduino com o Módulo Conversor HX711 e as células de carga e a fixação das células:
Ligação do Arduino, Módulo Conversor HX711 e Células de Carga
Células de Carga Sob a Plataforma
Materiais Utilizados
2 Unidades – Sensores de Peso 50Kg Célula de Carga
1 Unidade –Módulo Conversor HX711
1 Unidade – Plataforma 9 cm x 16 cm
1 Unidade – Arduino Uno
1 Unidade – Jumpers (Macho – Fêmea)
É importante que a parte inferior fique suspensa para que o efeito de deformação obtenha efeito, neste caso foi utilizada fita dupla face.
Programação
Será necessário desenvolver duas programações, uma para calibrar a balança e outra para mostrar o peso.
Para calibrar a balança é necessário seguir os passos abaixo:
Colocar um peso conhecido sobre a plataforma;
Através das teclas, ajustar o valor deste peso (você verá o valor do peso pelo monitor serial);
Retirar o peso da plataforma e zerar o peso da balança pela tecla t ( tara);
Repetir os 3 primeiros passos até obter o peso correto
Quando sua balança estiver pesando corretamente, guarde o valor de fator de calibração e utilize – o no programa seguinte para mostrar o peso correto no monitor serial.
Calibração
#include "HX711.h" #define DOUT 2 #define CLK 3 HX711 peso(DOUT, CLK); // instancia Balança HX711 float calibration_factor = 34730; // fator de calibração para teste inicial void setup() { Serial.begin(9600); Serial.println(); Serial.println("Calibracao da Balança"); peso.set_scale(); // configura a escala da Balança zerapeso (); // zera a Balança }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "HX711.h"
#define DOUT 2
#define CLK 3
HX711 peso(DOUT, CLK); // instancia Balança HX711
float calibration_factor = 34730; // fator de calibração para teste inicial
void setup()
{
Serial.begin(9600);
Serial.println();
Serial.println("Calibracao da Balança");
peso.set_scale(); // configura a escala da Balança
zerapeso (); // zera a Balança
}
Explicando o Código de Calibração
#include "HX711.h" #define DOUT 2 #define CLK 3 HX711 peso(DOUT, CLK); // instancia Balança HX711 float calibration_factor = 34730; // fator de calibração para teste inicial
1
2
3
4
5
6
7
8
#include "HX711.h"
#define DOUT 2
#define CLK 3
HX711 peso(DOUT, CLK); // instancia Balança HX711
float calibration_factor = 34730; // fator de calibração para teste inicial
No trecho acima foi incluída a biblioteca do módulo Conversor HX711 através deste link.
Foram definidos quais pinos do Arduino serão ligados os pinos do HX711 DOUT e CLK. Em seguida foi criado o objeto peso HX711 peso(DOUT, CLK) para os pinos DOUT e CLK, ou seja, este objeto poderá estar dentro de funções e enviar ou guardar dados.
Temos também o valor do fator de calibração para testes iniciais float calibration_factor = 34730.
void setup() { Serial.begin(9600); Serial.println(); Serial.println("Calibracao da Balança"); peso.set_scale(); // configura a escala da Balança zerapeso (); // zera a Balança }
1
2
3
4
5
6
7
8
9
void setup()
{
Serial.begin(9600);
Serial.println();
Serial.println("Calibracao da Balança");
peso.set_scale(); // configura a escala da Balança
zerapeso (); // zera a Balança
}
No trecho acima configuramos a porta serial do Arduino e “printamos “ no monitor serial da IDE uma mensagem inicial de calibração. A escala da balança é configurada peso.set_scale() e a rotina de zerar o peso é chamada.
void zerapeso () { Serial.println(); peso.tare(); // zera a Balança Serial.println("Zerando a Balança "); }
1
2
3
4
5
6
void zerapeso ()
{
Serial.println();
peso.tare(); // zera a Balança
Serial.println("Zerando a Balança ");
}
Temos a rotina de zerar o peso com a função peso.tare()e em seguida é enviada para o monitor serial uma mensagem de que a balança foi zerada.
void loop() { peso.set_scale(calibration_factor); // ajusta fator de calibração Serial.print("Peso: "); Serial.print(peso.get_units(), 2); // imprime peso da balança com 3 casas decimais Serial.print(" kg"); Serial.print(" Fator de Calibração: "); // imprime no monitor serial Serial.println(calibration_factor); // imprime fator de calibração delay(500) ;
1
2
3
4
5
6
7
8
9
void loop()
{
peso.set_scale(calibration_factor); // ajusta fator de calibração
Serial.print("Peso: ");
Serial.print(peso.get_units(), 2); // imprime peso da balança com 3 casas decimais
Serial.print(" kg");
Serial.print(" Fator de Calibração: "); // imprime no monitor serial
Serial.println(calibration_factor); // imprime fator de calibração
delay(500) ;
Logo a seguir se inicia o programa principal onde o fator de calibração é ajustado de acordo com a sua seleção, depois o peso é impresso no monitor serial com duas casas decimais Serial.print(peso.get_units(), 2), o valor do fator de calibração também é enviado para o monitor serial Serial.println(calibration_factor)
if (Serial.available()) // reconhece letra para ajuste do fator de calibração { char temp = Serial.read(); if (temp == '+' || temp == 'a') // a = aumenta 10 calibration_factor += 10; else if (temp == '-' || temp == 'z') // z = diminui 10 calibration_factor -= 10; else if (temp == 's') // s = aumenta 100 calibration_factor += 100; else if (temp == 'x') // x = diminui 100 calibration_factor -= 100; else if (temp == 'd') // d = aumenta 1000 calibration_factor += 1000; else if (temp == 'c') // c = diminui 1000 calibration_factor -= 1000; else if (temp == 'f') // f = aumenta 10000 calibration_factor += 10000; else if (temp == 'v') // v = dimuni 10000 calibration_factor -= 10000; else if (temp == 't') zerapeso (); // t = zera a Balança } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
if (Serial.available()) // reconhece letra para ajuste do fator de calibração
{
char temp = Serial.read();
if (temp == '+' || temp == 'a') // a = aumenta 10
calibration_factor += 10;
else if (temp == '-' || temp == 'z') // z = diminui 10
calibration_factor -= 10;
else if (temp == 's') // s = aumenta 100
calibration_factor += 100;
else if (temp == 'x') // x = diminui 100
calibration_factor -= 100;
else if (temp == 'd') // d = aumenta 1000
calibration_factor += 1000;
else if (temp == 'c') // c = diminui 1000
calibration_factor -= 1000;
else if (temp == 'f') // f = aumenta 10000
calibration_factor += 10000;
else if (temp == 'v') // v = dimuni 10000
calibration_factor -= 10000;
else if (temp == 't') zerapeso (); // t = zera a Balança
}
}
No trecho acima se tivermos algum dado na serial if (Serial.available() as funções abaixo serão executadas. Essas funções se referem ás teclas do computador que irão aumentar ou diminuir o valor do fator de calibração, onde:
a,s,d,f irão aumentar respectivamente o fator de calibração em : 10,100,1000 e 10000.
z,x,c,v irão diminuir respectivamente o fator de calibração em: 10,100,1000 e 10000.
A letra t irá zerar o peso da balança.
Explicando o Código: Valor do Peso no Monitor Serial
#include "HX711.h" #define DOUT 2 #define CLK 3 HX711 bau(DOUT, CLK); // instancia Balança HX711 float calibration_factor = 34730; // fator de calibração aferido na Calibração void setup() { Serial.begin(9600); bau.set_scale(calibration_factor); // ajusta fator de calibração bau.tare(); // zera a Balança } void loop() { Serial.print("Peso: "); Serial.print(bau.get_units(), 2); // imprime peso na balança com duas casas decimais Serial.println(" kg"); // imprime no monitor serial delay(500) ; if (Serial.available()) // se a serial estiver disponivel { char temp = Serial.read(); // le carcter da serial if (temp == 't' || temp == 'T') // se pressionar t ou T { bau.tare(); // zera a balança Serial.println(" Balança zerada"); // imprime no monitor serial } } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "HX711.h"
#define DOUT 2
#define CLK 3
HX711 bau(DOUT, CLK); // instancia Balança HX711
float calibration_factor = 34730; // fator de calibração aferido na Calibração
void setup()
{
Serial.begin(9600);
bau.set_scale(calibration_factor); // ajusta fator de calibração
bau.tare(); // zera a Balança
}
void loop()
{
Serial.print("Peso: ");
Serial.print(bau.get_units(), 2); // imprime peso na balança com duas casas decimais
Serial.println(" kg"); // imprime no monitor serial
delay(500) ;
if (Serial.available()) // se a serial estiver disponivel
{
char temp = Serial.read(); // le carcter da serial
if (temp == 't' || temp == 'T') // se pressionar t ou T
{
bau.tare(); // zera a balança
Serial.println(" Balança zerada"); // imprime no monitor serial
}
}
}
A diferença desta programação para a anterior é que não teremos a rotina de zerar a balança e nem das teclas de ajuste de fator de calibração para calibrar a balança. Agora teremos somente a tecla tara para zerar o valor do peso.
Imagem do Circuito Montado Com Peso
Valores no monitor serial sem a balança sem peso
Que tal adicionar um display LCD nesta balança ou até implementá-la em uma aplicação industrial?
Monte uma balança com 4 células de carga (uma em cada ponta da plataforma) para aumentar a precisão da sua balança.
Envie seu projeto para nós usando a hashtag #ProjetoComBau e visite nossa loja.
http://blog.baudaeletronica.com.br/conversor-hx711-para-balanca-eletronica/
sábado, 6 de outubro de 2018
domingo, 1 de julho de 2018
terça-feira, 19 de junho de 2018
Repetidor de sinal Multilaser RE051 é bom? Veja especificações e preço
Por Isabela Giantomaso, para o TechTudo
18/06/2018 06h01 Atualizado há 23 horas
O RE05 é um repetidor de sinal da Multilaser à venda no Brasil pelo preço de R$ 80. O aparelho pode ajudar a aumentar o alcance do sinal de Internet dentro de casa ou no escritório. Com 300 Mb/s, o modelo promete alta velocidade na transferência de dados e conta com instalação simples, precisando apenas acionar um botão no roteador principal do ambiente.
Antes de investir no repetidor, veja a seguir a análise completa das especificações do Multilaser RE05. Descubra se o equipamento vale a pena para o tipo de uso que você deseja.

Repetidores: saiba como ampliar o sinal Wi-Fi da sua casa
Ficha técnica
Preço oficial: R$ 80
Preço no varejo: R$ 68
Cor: branco
Peso: 200 g
Dimensões: 11 x 6 x 8,6 cm
Velocidade: 300 Mbps
Frequência: 2.4 GHz
Protocolo wireless: b/g/n
Função WPS: sim
Garantia: 12 meses
/i.s3.glbimg.com/v1/AUTH_08fbf48bc0524877943fe86e43087e7a/internal_photos/bs/2018/1/h/0MXGtDTC24P84Ch56KeQ/multilaser-re051.png)
Repetidor RE051 tem 300 Mbps e pode ser encontrado por preço médio de R$ 74 (Foto: Divulgação/Multilaser)
Potência e alcance
A principal função do repetidor é aumentar o alcance da Internet em pontos da casa ou do escritório em que o sinal está fraco. Para isso, o RE051 oferece 300 Mb/s de velocidade com largura de banda de 2.4 GHz para rápida transferência de dados.
O aparelho da Multilaser conta com antena interna e é compatível com os protocolos wireless b/g/n, padrões encontrados em grande parte dos roteadores domésticos. Além disso, o modelo tem tecnologia MIMOpara auxiliar na transmissão de sinal sem fio.
/i.s3.glbimg.com/v1/AUTH_08fbf48bc0524877943fe86e43087e7a/internal_photos/bs/2018/F/O/4MAQ2MSGemGBPOTiTj9g/multilaser-repetidor-re051.png)
RE051 trabalha com 2.4 GHz para ajudar a repetir o sinal de internet (Foto: Divulgação/Multilaser)
Para definir prioridades de acesso, o repetidor também oferece tecnologia QoS (Quality of Service, ou Qualidade de Serviço), por meio do qual o usuário pode direcionar a rede para um ou mais aparelhos específicos. É uma ferramenta útil, por exemplo, para um local com muitos usuários em que alguns precisam de uma velocidade superior por conta do serviço realizado.
Segurança
A proteção de dados com o RE051 fica por conta da função WPS (Wi-Fi Protected Setup, ou Configuração de Wi-Fi Protegido). O recurso é útil para liberar acessos na rede de forma rápida sem precisar de senhas. No entanto, deve ficar sempre desativado para evitar invasões de hackers no aparelho.
/i.s3.glbimg.com/v1/AUTH_08fbf48bc0524877943fe86e43087e7a/internal_photos/bs/2018/H/j/3YzEh3RAaisfu3k1tfCg/multilaser-re051-instalacao.png)
Botão WPS pode ajudar na segurança, além de participar da instalação do aparelho (Foto: Divulgação/Multilaser)
Instalação
O aparelho, disponível apenas na cor branca, tem instalação fácil e prática. Segundo a Multilaser, basta pressionar o botão WPS no roteador principal por três segundos e depois pressionar o botão WPS do RE051 por até dez. O aparelho que vai "esticar" o sinal deve ser colocado em uma tomada próxima a um ponto com conexão fraca no ambiente.
Para fazer outras configurações e conferir se o aparelho está funcionando, o modelo traz também um cabo e uma porta RJ-45, botão para resetar e indicadores Power, Wireless, WPS e LAN.
Preço e garantia
/i.s3.glbimg.com/v1/AUTH_08fbf48bc0524877943fe86e43087e7a/internal_photos/bs/2018/A/p/AiSB1YSo2quVKYeWwvvA/multilaser-re051-leds.png)
Repetidor RE051 tem indicadores de funções e pode ser conectado com cabo RJ-45 (Foto: Divulgação/Multilaser)
Na loja da Multilaser, o repetidor RE051 está disponível para comprar por R$ 80. Já no varejo nacional, o modelo está à venda por R$ 68. A fabricante promete garantia de até 12 meses. Na caixa do produto, além do aparelho, o usuário recebe um cabo RJ-45 e um guia rápido para instalação.
Concorrentes
O RE051 trabalha de forma semelhante ao concorrente da TP-Link, o TL-WA850RE. O repetidor também promete velocidade de 300 Mb/s e custa cerca de R$ 75. Para quem quer uma opção um pouco mais avançada que o modelo da Multilaser, o D-Link DAP-1325, à venda por R$ 109, tem antena externa e protocolo 802.11 ac.
Qual é o repetidor mais barato? Saiba no Fórum do TechTudo.
https://www.techtudo.com.br/noticias/2018/06/repetidor-de-sinal-multilaser-re051-e-bom-veja-especificacoes-e-preco.ghtml
sexta-feira, 15 de junho de 2018
Como fazer um Alarme com Arduino e sensor de movimentos PIR.
Olá! hoje vou ensinar como montar um alarme usando o Arduino e um sensor de movimento PIR. O sensor PIR (Passive InfraRed sensor) é um sensor eletrônico que mede a luz infravermelha irradiada de objetos. O sensor PIR também é conhecido como sensor de presença ou sensor de movimentos, e ao conectá-lo ao Arduino você terá como controlar este sensor e disparar diversas ações ao detectar movimentos.
Este projeto de alarme é capaz de detectar movimentos em um ambiente disparando um sinal sonoro e acendendo um led. Pode ser usado por exemplo na porta de entrada da sua casa ou em algum cômodo e quando alguém passar por lá o alarme será disparado. Então se você necessita ser avisado da presença de alguém em um determinado lugar este projeto é uma opção interessante e fácil de fazer.
O sensor PIR é fácil de se encontrar, a maioria das lojas virtuais e físicas que vendem Arduinos e/ou componentes eletrônicos normalmente possuem este sensor. Só verifique se o sensor PIR que você pretende adquirir possui controle de sensibilidade da detecção de movimentos. Este que usei no projeto do alarme possui três pinos, controle de sensibilidade e controle de tempo que o sensor fica "ligado" quando detecta algum movimento.
Para desenvolver o projeto Alarme com Arduino e sensor de movimentos PIR você vai precisar de:
- Arduino;
- sensor de movimentos/presença PIR;
- led;
- buzzer de 5 volts;
- 2 resistores de 220 ohms;
- protoboard;
- bateria de 9 volts;
- suporte para bateria com plug para ligar no Arduino;
- fios para interligar os componentes.
O Arduino que usei neste projeto foi um xing ling, que mostrei no polêmico post diferenças entre um Arduino verdadeiro e falso. Olha o cristal de quartzo dele, tá torto!
Segue abaixo o esquema detalhado do projeto do Alarme com Arduino e sensor de movimento PIR. Através deste esquema fica mais fácil de se ter uma visão geral, e de como montar corretamente o projeto. Este esquema foi montado no software Fritzing.
Abaixo segue o código fonte do projeto, prontinho e testado, é só copiar, colar, compilar e fazer o upload para o Arduino.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
| /* Projeto Arduino - Alarme com Arduino e sensor de movimento PIR Por Jota ---------------------------------------- --=<| www.ComoFazerAsCoisas.com.br |>=-- ---------------------------------------- */ //Declaração das variáveis referentes aos pinos digitais. int pinBuzzer = 7 ; int pinSensorPIR = 8 ; int pinLed = 9 ; int valorSensorPIR = 0 ; void setup() { Serial.begin( 9600 ); //Inicializando o serial monitor //Definido pinos como de entrada ou de saída pinMode(pinBuzzer,OUTPUT); pinMode(pinSensorPIR,INPUT); pinMode(pinLed,OUTPUT); } void loop() { //Lendo o valor do sensor PIR. Este sensor pode assumir 2 valores //1 quando detecta algum movimento e 0 quando não detecta. valorSensorPIR = digitalRead(pinSensorPIR); Serial.print( "Valor do Sensor PIR: " ); Serial.println(valorSensorPIR); //Verificando se ocorreu detecção de movimentos if (valorSensorPIR == 1 ) { ligarAlarme(); } else { desligarAlarme(); } } void ligarAlarme() { //Ligando o led digitalWrite(pinLed, HIGH); //Ligando o buzzer com uma frequencia de 1500 hz. tone(pinBuzzer, 1500 ); delay( 4000 ); //tempo que o led fica acesso e o buzzer toca desligarAlarme(); } void desligarAlarme() { //Desligando o led digitalWrite(pinLed, LOW); //Desligando o buzzer noTone(pinBuzzer); } |
E para concluir segue abaixo o vídeo do Alarme com Arduino e sensor de movimentos PIR em funcionamento e disparando sempre que detecta algum movimento. Veja!
E se você gostou, curta, compartilhe, dê um joinha no vídeo e inscreva-se no nosso canal do YouTube para sempre estar por dentro e acompanhar os novos projetos e nos dar aquela força. Um grande abraço e valeu!
Retirado de:
http://www.comofazerascoisas.com.br/como-fazer-um-alarme-com-arduino-sensor-de-movimentos-pir.html
Assinar:
Postagens (Atom)
-
As balanças Digitais eletrônicas são utilizadas para diversas finalidades em diversas áreas como: Indústria alimentícia; Pesagem de cam...
-
Olá! hoje vou ensinar como montar um alarme usando o Arduino e um sensor de movimento PIR. O sensor PIR (Passive InfraRed sensor) é um sen...