Índice:

Arduino trabalhando com vários arquivos (READ / WRITE): 4 etapas
Arduino trabalhando com vários arquivos (READ / WRITE): 4 etapas

Vídeo: Arduino trabalhando com vários arquivos (READ / WRITE): 4 etapas

Vídeo: Arduino trabalhando com vários arquivos (READ / WRITE): 4 etapas
Vídeo: ARDUÍNO #40: APRENDA COMO LER DADOS DA SERIAL (PARTE 1) 2024, Julho
Anonim
Arduino trabalhando com vários arquivos (READ / WRITE)
Arduino trabalhando com vários arquivos (READ / WRITE)

Ola pessoal

Hoje estou apresentando a vocês o projeto Arduino que trabalha com escudo RTC que pode armazenar dados. A principal tarefa deste projeto é trabalhar com vários arquivos armazenados no cartão sc. Este projeto contém código que trabalha com três arquivos que são armazenados diretamente no cartão SD com arduino e escudo RTC. Como este projeto funciona com o escudo DataLogger, esses dados também serão armazenados exatamente ao mesmo tempo em que estão em seu PC.

Este projeto é uma versão atualizada do meu último projeto. Esse projeto pode ser encontrado no site instructables com o nome Arduino Data Logger Shield Small Project. Se você tiver alguns problemas para entender este projeto, sugiro que veja o mais fácil primeiro.

A principal diferença entre esses dois projetos é que este projeto usa 3 arquivos de texto, também desta vez lemos os dados de dois deles. Como podemos ler os dados, podemos obter os valores médios de umidade e temperatura, que são armazenados no cartão SD. Isso também será mostrado no LCD conectado ao Arduino.

Mais uma vez, se você é novo no Arduino e este é seu primeiro projeto que usa DataLogger, sugiro ir e verificar este link https://www.instructables.com/id/Arduino-Data-Logg… e quando você conseguir tudo sobre isso, venha aqui e divirta-se mais um pouco. Vamos começar.

Etapa 1: Peças

Peças
Peças
Peças
Peças
Peças
Peças

Como toda vez que escrevo projetos como este, começarei com todas as partes que usei neste projeto. Também vou sugerir alguns dos sensores que podem ser usados e podem tornar este projeto um pouco diferente.

Partes:

  • Arduino uno rev3
  • Escudo do registrador de dados Arduino
  • Cartão de memória SD
  • Display LCD 1602 verde com I2C (você pode usar qualquer outro display)
  • DHT22 (DHT11 também funciona bem, mas a precisão dele não é a mesma do dht22)
  • Poucos cabos de ligação
  • Tábua de pão
  • Bateria 9v

Você pode alterar algumas partes. O lado bom desse projeto é que ele pode ser usado para armazenar dados de qualquer outro sensor. Eu tentaria trabalhar com sensor de fumaça ou sensor infravermelho. Funciona com qualquer outro sensor. Você também pode alterar seu Arduino, mas tenha em mente que o Arduino é o melhor para o Data logger.

Etapa 2: conectando todas as partes juntas

Conectando todas as partes juntas
Conectando todas as partes juntas

Este é fácil de conectar. Mesmo o esquema é o mesmo que o projeto mais fácil. Mas eu diria que você precisa observar qual pino usará. Sempre verifique a folha de dados do Data logger para ver quais pinos são os melhores para usar, porque pelo que me lembro alguns pinos já estão definidos e quando tentei usar meu sensor em um dos pinos definidos não funcionou.

No topo desta etapa, você pode ver o esquema feito com fritzing. O mais fácil é que você precisa conectar seu registrador de dados no topo do seu arduino. Conecte seu cartão SD ao registrador de dados e a última coisa que você precisa fazer é conectar o sensor dht e o LCD. Usamos 5V do arduino para a parte + na placa de ensaio, GND para a parte - e, seguindo essas linhas, você conecta também a linha + do sensor e o lcd para a linha + da placa do pão. O mesmo vale para - as peças, eles apenas seguem a linha que se segue -. O sensor Dht está conectado ao pino 7 desta vez. LCD é conectado a A4 e A5. Fácil, não é?

LCD:

  • VCC para 5V (+ parte na placa de ensaio)
  • GND para gnd (-parte no breadboard)
  • SDA para pino analógico A4
  • SCL para pino analógico A5

DHT22:

Eu usei dht com placa em que existem três pinos a serem usados:

  • + a 5V
  • - para GND
  • para o pino digital 7

Etapa 3: Codding

Este código de tempo é mais complexo. Boa parte dela é comentada para que você possa entender com facilidade.

Vou explicar esse código em algumas partes curtas.

1. Em primeiro lugar, tenha em mente que este código necessitará de poucas bibliotecas instaladas no seu PC. São eles: Time (TimeLib), Wire, LiquidCrystal, DHT, OneWire, SPI, SD, RTClib. Você provavelmente pode usar algumas outras bibliotecas, mas essas bibliotecas funcionaram para mim.2. Depois disso, estamos definindo tudo o que é necessário para este projeto. O sensor DHT é fácil de definir, basta dizer o pino ao qual o sensor está conectado e o tipo de sensor. Depois disso, você precisa definir alguns pinos que serão usados para o cartão SD e o pino RTC. E depois disso você pode ver as variáveis usadas para este projeto.

3. O projeto usa poucos métodos e todos eles são para trabalhar com o sensor DHT. Se você está trabalhando em um projeto com este tipo de sensor, você pode usá-lo. Esses métodos são getTemperature (), getMidTemperature (), getHumidity (), getMidHumidity (), readSensorData (), printLcdTemperature (), printHumidity (), printLcdMidTemperature (), printMidHumidity ().

4. Na configuração, há algumas coisas que precisam ser feitas. Em primeiro lugar, você precisa definir o tempo. Como estamos usando RTC aqui, queremos ter o tempo adequado quando nosso Arduino salva os dados do sensor. Essa parte será comentada em código. Se você remover o comentário //RTC.adjust(DateTime(_DATE_, _TIME_)); linha você pode definir o tempo em seu projeto. Depois de definir o tempo adequado, você pode comentar essa parte novamente e pode usar seu arduino sem computador. Isso é legal porque você pode usar seu sensor de temperatura em outra sala e controlar a temperatura sem a necessidade de seu computador. A segunda parte a ser feita é usar o cartão SD no qual haverá dados armazenados. O Shield tentará ver se há cartão e inicializá-lo. Caso contrário, a mensagem de erro será mostrada na tela Serial do Arduino IDE.

Na configuração é a primeira etapa onde trabalhamos com a gravação de arquivos no cartão de memória. A primeira coisa que é escrita no cartão está no arquivo datalog.txt. Desta vez, escrevemos apenas o tempo de registro do nosso dispositivo e também criamos uma pequena linha de nomes (variáveis usadas para salvar, e também o tempo)

A última parte da configuração é inicializar o LCD e o sensor dht.

5. A parte do loop é a parte principal do projeto. Trabalhar com o sensor desta vez é muito fácil porque ele usa apenas um método que é ler os valores que o sensor obtém. A parte do LCD também é muito fácil. A próxima parte é aquela que precisamos explicar aqui. Este projeto faz algo a cada minuto. Em um minuto, ele armazena dados em datalog.txt. Esses dados podem ser lidos por quem nem sabe programar arduinos. Por outro lado. Um minuto ele economiza temperatura em datalogB.txt e um minuto ele economiza umidade em datalogC.txt. Precisamos de datalogB.txt e dataLogC.txt para que possamos ler de nosso cartão de memória. Portanto, se continuarmos lendo nosso código, você poderá ver também que este código lê os valores médios de temperatura e umidade e os armazena em uma linha. Eu queria fazer um dispositivo que levasse apenas os últimos dez dígitos do arquivo. Portanto, este projeto percorre sempre os valores do cartão, e salva os últimos dez dígitos. Esses dígitos armazenados nas linhas são usados para que possamos obter o valor médio da temperatura e o valor médio da umidade. Que também são mostrados em nosso LCD depois de algum tempo

Etapa 4: usando o Arduino e o cartão SD posteriormente

Usando o Arduino e o cartão SD posteriormente
Usando o Arduino e o cartão SD posteriormente
Usando o Arduino e o cartão SD posteriormente
Usando o Arduino e o cartão SD posteriormente
Usando o Arduino e o cartão SD posteriormente
Usando o Arduino e o cartão SD posteriormente
Usando o Arduino e o cartão SD posteriormente
Usando o Arduino e o cartão SD posteriormente

Aqui você pode ver o que é mostrado no LCD e como o projeto funciona. Também estou colocando aqui fotos dos datalogs que salvei. Datalog.txt é aquele que pode ser usado para ver como o dispositivo armazena cada valor. DatalogB e datalogC estão lá para que você possa ver como eles se parecem. Eles são escritos dessa forma para que você possa usar o método de análise e ler os dados sem problemas.

O objetivo deste projeto é a manipulação dos arquivos que estão no cartão SD. Às vezes precisamos de dispositivos que possam armazenar memória e leitura de temperatura também é uma vez assim. O bom é que esse escudo usado neste aparelho também possui um módulo RTC, que é a melhor coisa para o tempo. Quando podemos ler em tempo real e armazenar dados com nosso dispositivo, isso significa que ele pode ser portátil.

Obrigado pessoal por ler este projeto. Espero que ajude você. Obrigada.

Com todos os cumprimentos Sebastian

Recomendado: