README incompleto !!!
-
Raspberry Pi Pico (RP2040 Micro Controlador): Um poderoso micro controlador que conta com diversas portas programaveis e compatíveis com diversos protocolos típicos de aplicações em automação e IoT (internet das coisas), geralmente programado em MicroPython uma versão do Python3 otimizada para microcontroladores deste porte, contando também com documentações e projetos afins na internet.
-
DS18B20 (Sensor de Temperatura): Um sensor de temperatura digital que opera em ambientes secos, umidos e até submerso (no modelo tipo sonda), tem uma faixa de -55°C a 125°C e uma precisão de 0.5°C, cada sensor carrega um ID 64bits possibilitando associar multiplos sensores no mesmo barramento e fazendo a separação das coletas através do código do micro controlador.
-
MPU6050 (Módulo Acelerômetro 3 Eixos): Um MEMS (Micro-Electro-Mechanical Systems) que conta com um sensor de temperatura, um giroscópio de 3 eixos e um acelerômetro de 3 eixos (o foco deste projeto), entrega com grande precisão e velocidade seus dados de forma digital através do protocolo I2c.
-
ACS712 (Sensor de Corrente 20A max): Realiza a leitura de corrente alternada (AC) e contínua (DC). Este sensor utiliza efeito hall para fazer a detecção do campo magnético que é gerado pela passagem da corrente e no pino de saída é gerada uma tensão analógica proporcional à entrada.
-
ESP-01 (ESP-8266 Conexão Wi-Fi): Um módulo Wireless, compacto e de baixo custo que possibilita que um microcontrolador mais poderoso possa de conectar a uma rede WiFi podendo também hospedar aplicação própria respeitando suas limitações.
protocolos de conexão utilizados
GPIO (General Purpose Input/Output) - Portas programáveis de entrada e saída de dados que são utilizadas para prover uma interface entre os periféricos e os microcontroladores/microprocessadores.
I2C (Inter-Integrated Circuit) - Um barramento serial multimestre que é usado para conectar periféricos de baixa velocidade ao sistema embarcado num mesmo barramento (desde que estes tenham endereços diferentes).
ADC (Analog to Digital Converter) - Gera uma codificação digital a partir de um nível de tensão ou intensidade de corrente analogica de um sensor.
UART (Universal Asynchronous Receiver/Transmitter) - Como o próprio nome diz, é um protocolo assíncrono que possibilita a comunicação serial entre dois dispositivos de forma full-duplex.
(Pinagem da placa Raspberry Pi Pico)
(montagem do ds18b20)
(montagem do mpu6050)
(montagem do acs712)
(montagem do esp-01)
#importação das bibliotecas
import machine, oneWire, ds18x20, time
pinoTemp = machine.Pin(6) #define o pino utilizado na montagem (GPIO6 - pino 9)
sensTemp = ds18x20.DS18X20(oneWire.OneWire(pinoTemp)) #define protocolo
idTemp = sensTemp.scan() #identifica endereço dos sensores conectados
print("Sensores encontrados:",idTemp)
while True:
sensTemp.convert_temp() #realiza conversão de temperatura (min 750ms)
time.sleep_ms(750)
for i in idTemp:
print(sensTemp.read_temp(i), "oC") #realiza leitura de cada sensor
time.sleep(1)
#importação das bibliotecas
import machine, time, mpu6050
#define pinos i2c utilizados na montagem (GPIO21 - pino 27) (GPIO20 - pino 26)
i2c = machine.I2C(0, scl= machine.Pin(21), sda= machine.Pin(20), freq=400000)
mpu6050.mpu6050_init(i2c) #inicia configurações do mpu6050 na porta i2c escolhida
#loop de leitura de dados
while True:
print("Temperature:\t", mpu6050.mpu6050_get_temp(i2c), "°C") #temperatura
print("Accelerometer:\t", mpu6050.mpu6050_get_accel(i2c), "g") #aceleração 3 eixos
print("Gyroscope:\t", mpu6050.mpu6050_get_gyro(i2c), "°/s") #giroscópio 3 eixos
time.sleep_ms(500)
print("Hello World !!!")
print("Hello World !!!")
test!!!
README incompleto !!!