Pesquisar neste blog:

18/12/2023

Sensor de distância com visor e buzina no Arduino Uno.


Materiais necessários. 

Quantidade Material
1 Arduino Uno R3
1 Módulo Display 7 Segmentos - TM1637
1 Buzina 5v
1 Sensor ultrassônico

Sugestão de código: Exibe a distância em centímetros no visor e começa a "buzinar" ao chegar próximo de um obstáculo. A buzina é acionada em 30 cm e aumenta a frequência ao diminuir a distância.

Clique aqui para baixar o código.


30/09/2023

Backup do Firestore/Firebase localmente no Windows.

Ao utilizar o "Export" do "Google Cloud" para criar um backup o nome do arquivo terá ":", exemplo: "2023-09-30T14:08:15_75111". Por conta destes dois pontos, ao tentar baixá-lo no Windows com o "gsutil", você receberá a mensagem:

 "A sintaxe do nome do arquivo, do nome do diretório ou do rótulo do volume está incorreta:"

Considerando que você: 

  1. Já está no plano Blaze:
  2. O G-Suit  já está instalado: https://cloud.google.com/sdk/gcloud?hl=pt-br 
    Já entrou com a sua "conta de e-mail" e selecionou o "projeto".
  3. Já criou um "Bucket" na mesma região do banco de dados ( exemplo: "southamerica-east1")  https://console.cloud.google.com/storage

Agora, em dois passos, seu problemas serão solucionados:

Passo 1) Exportar o backup do banco de dados com um nome coerente (sem :)

https://cloud.google.com/sdk/gcloud/reference/firestore/export

Exemplo:

  • Bucket: backupgeral
  • Pasta que será criada dentro do bucket: 2023set
gcloud beta firestore export gs://backupgeral/2023set

Após o comando acima, todos  os dados do Firestore irão para a pasta "2023set" dentro do bucket "gbackupgeral". Abra  https://console.cloud.google.com/storage e verifique o sucesso.

Passo 2) Para fazer download navegue até a pasta desejada onde será feito o download exemplo: 
"cd C:\Users\meunome\Desktop" e digite o seguinte comando:

gsutil -m cp -r "gs://backupgeral" .

Pronto... será criada a pasta localmente em seu computador com o nome "backupgeral" e terá tudo que foi criado no "passo 1".

Espero que tenha conseguido baixar os seus arquivos. 
Um abraço.




07/07/2023

APP de Controle de Notas Fiscais enviadas.

APP grátis com ferramentas para vendedores. (clique na imagem abaixo)

  • Leitor de código de barras das notas fiscais com redirecionamento para SEFAZ (opção 44 - NOTAS FISCAIS) ;
  • Grave os dados escaneados (bipados) e tenha o controle de quando  (data e hora) foi bipado;
  • Se o código já estiver no banco de dados, receberá o aviso de que o código foi bipado;
  • Banco de dados local (fica somente no celular);
  • Possibilidade de exportar/importar os dados em ".csv"  (arquivo separado por vírgulas que abre no Excel);

 

06/06/2023

Bingo do Corpo Humano

Clique aqui para baixar o PDF

O bingo do corpo humano contém 40 cartelas, e apresenta 27 órgãos do corpo humano embaralhados. Nas cartelas estão os nomes dos órgãos em letra bastão e cursiva. Jogo especial para o 6º ano do Ensino Fundamental.
Cartela de bingo com os órgãos humanos.

As "pedras" que serão sorteadas possuem dicas que definem os órgãos. Por exemplo:

  • BEXIGA URINÁRIA: Órgão responsável por armazenar a urina.
  • BRÔNQUIOS: Órgãos que são as principais vias que conduzem o ar para dentro e para fora dos pulmões.
Recomendações:
  • Combinar com antecedência os prêmios (quem preencher toda a cartela primeiro ganhará...);
  • Distribuir uma cartela por aluno e agrupá-los em duplas ou trios para jogar.

Bom trabalho!!!

23/05/2023

Começando um projeto em Python no Windows.

Para trabalhar com vários projetos na linguagem Python (https://www.python.org/) em uma mesma máquina e reduzir os problemas de conflitos entre versões dos pacotes é conveniente criar um local virtual de instalação de pacotes. Com este ambiente torna-se fácil a configuração de novos computadores para rodar o seu projeto.

Projeto exemplo ola.py:

Em um arquivo texto escreva o seguinte código e depois renomeie para "ola.py" (tome cuidado para não ficar "ola.py.txt"). O resultado após rodar o código será o máximo entre os valores [1,2,5,3], ou seja, 5:
import numpy as np
a = np.array([1,2,5,3])
print(a.max())


Criar um ambiente virtual no Python:

Crie um arquivo "requeriments.txt", na pasta do seu projeto, com todos os pacotes desejados e as respectivas versões (no projeto exemplo será utilizado apenas o numpy):

numpy >= 1.21.2
opencv-python == 4.7.0.68 

No sistema operacional Windows, execute os seguintes comando no terminal de comandos (cmd), mas antes substitua a primeira linha, parte vermelha, com a localização da pasta do seu projeto.
set "mydir=C:\User\...\TestVenv"
cd %mydir%
py -m venv %mydir%
Scripts\activate
pip install -r requeriments.txt --upgrade 

O comando "py -m venv %mydir%" criará algumas pastas e arquivos, incluindo a pasta Scripts. A linha "Scripts\activate" rodará o arquivo "activate.bat", que está dentro da pasta Scripts, para ativar o ambiente virtual, conforme a Figura 1:

Figura 1: Criando, ativando e instalando pacotes no ambiente virtual python.

Outra opção, se não quiser utilizar o arquivo "requeriments.txt", basta instalar os pacotes desejados conforme o seguinte exemplo:
pip install --upgrade numpy

ou definindo a versão desejada com os comparativos lógicos: ">=", "<=" ou "==", conforme exemplo:

         pip install --upgrade setuptools==60.10.0 


Rodando o "ola.py" no ambiente virtual

Com o ambiente ativado execute "py ola.py" e o programa rodará.

Figura 2: rodando o "ola.py" e obtendo o valor "5" impresso na tela.

Obter uma lista dos pacotes:

No Prompt de Comandos "pip list" listará os pacotes instalados.

Para exportar a lista de patoces, em um arquivo texto, execute "pip list>C:\lista.txt". Aqui será criado lista.txt em C:\ ou em outro local que desejar ao editar o caminho do arquivo que está em vermelho.


Remover  pacotes:

Para remover um pacote específico utilize o commando "pip uninstall <nome pacote>" por exemplo para remover o pacote "numpy": 
 pip uninstall numpy


Permissão de acesso:

O meu projeto, que estava no Desktop, apresentou o problema "PermissionError: [WinError 5] Access is denied" durante a instalação do "setuptools==60.10.0". Para contornar o problema movi o projeto para C:\ e tudo funcionou.

Considerações finais:

Sempre que for instalar um novo pacote no ambiente virtual é necessário ativar o ambiente com o comando "Scripts\activate". Caso contrário o pacote será instalado em seu sistema operacional e não no ambiente virtual.

Utilizo as versões 32 bits do Python e durante a instalação do python habilito o inclusão do path (que habilita o comando "py" no prompt). Ao utilizar versões 32 bits e gerar executáveis os mesmos funcionarão em ambos os sistemas 32 ou 64 bits. Atualmente utilizo a versão 3.8.10 - 32 bits do Python.


Um abraço!!!

14/03/2023

IRRIGAÇÃO OPÇÃO 2 - ARDUINO COM SENSOR DE CHUVA, RELÓGIO E DISPLAY (Especial para hortas verticais)

Assista ao seguinte vídeo:

Esta publicação é ideal para hortas verticais. Em hortas não verticais recomendamos a seguinte postagem: ARDUINO COM SENSOR DE UMIDADE, POTENCIÔMETRO E DISPLAY.

Horta vertical com garrafas PET irrigada mediante a utilização do Arduino.


O projeto de irrigação, utilizando o Arduino, é uma excelente oportunidade para as escolas trabalharem  Cultura Maker, Pensamento Computacional e Robótica. No caso de "irrigação de hortas" existe um grande potencial para a interdisciplinaridade, por exemplo: 

  • Biologia - abordar o desenvolvimento e classificação das plantas;
  • Matemática -  trabalhar os custos de produção e consumo de água;
  • Física - explicar o funcionamento do equipamento e conceitos relacionados à eletricidade;
  • História - discutir a evolução da agricultura ao longo dos anos;
  • Química - pesquisar as características do PH do solo (escala de acidez do solo) e os efeitos da poluição (chuva ácida).
A ideia de colocar as garrafas intercaladas (com terra / com água/ com terra / com água...), bem como o furo para escoamento da água (garantindo uma reserva de água) vieram do canal Vamo Ali, em especial no vídeo HORTA VERTIAL | ALTA PRODUTIVIDADE com garrafas  PET. Já o sistema de irrigação e o código disponibilizado abaixo foram de minha autoria. No fundo da garrafa foi colocado pedras para facilitar o escoamento da água. 

Gotejador acima da garrafa, pedra no fundo da garrafa para facilitar o escoamento e reservatório de água abaixo do furo.


Em uma das garrafas é necessário colocar um sensor de chuva com a função de desligar a irrigação.

MATERIAIS SUGERIDOS

Quant.Materiais
1Arduino Uno R3

kit iniciante (~R$150,00)
Kit iniciante (~R$170,00)
1Sensor de Chuva com módulo. (O sensor oxida com facilidade, e pode ser substituído por um par de fios desencapados ligados no módulo)
 
1RTC (Real Time Clock)

1Display LCD 12x2 com módulo I2C (opcional)
1Protoboard 400 pontos (~R$9,00) ou menor (OPCIONAL, pois os fios podem ser emendados)

1Módulo relé 1 canal 5V 10A (~R$8,00)

1Válvula solenoide (~R$35,00) de máquina de lavar  (110V) *ATENÇÃO: LER O TÓPICO DE SEGURANÇA.

1Plugue macho 2 polos (para ligar na tomada)

2 metrosFio 2,5 mm² (preferencialmente 1 metro de cada cor) ou um cabo com dois fios de 1 metro.
1Fonte bivolt 9V / 1A para Arduino (Plugue P4) (~R$25,00)
2terminal fêmea 6mm (para plugar na válvula solenoide)


2Plugue engate rápido para mangueira (1 para torneira e outro para a válvula solenoide)

Pluge torneira (~R$4,00) + Engate (~R$4,00)
*
Os seguintes materiais dependerão da área, do que será plantado e o esquema de irrigação escolhido:
- Caixa de proteção para colocar o Arduino (Veja uma opção com corte à laser);
- Mangueira e conectores;
- Gotejadores / Aspersores.


ESQUEMA DE LIGAÇÃO
Clique na imagem para abrir o PDF com o esquema.


CÓDIGO (Sugestão):

Clique aqui e baixe a sugestão de código.

Clique aqui e baixe a sugestão 2 de código (adicionou-se tempo máximo de  3 min de irrigação nos horários 10h e 16h49.)

Em resumo, nesse código, a irrigação programada ocorrerá às 8:30, 13:30 e 17:00. Nestes horários, a válvula solenoide será acionada pelo Relê e ficará acionada permitindo o fluxo da água. Quando a água escoar pelo furo da garrafa PET e atingir o sensor de chuva a irrigação será cessada e iniciará novamente no próximo horário agendado. Caso acabe a energia, o relógio possuiu uma bateria interna que manterá o horário atualizado e dará continuidade nos ciclos de irrigação, porém, sempre que a energia voltar o sistema iniciará a irrigação.

É necessário instalar as bibliotecas: LiquidCrystal I2C e RTClib no menu "Ferramentas" - "Gerenciar Bibliotecas...".

Localize e instale a Biblioteca "LiquidCrystal I2C".

Localize e instale a Biblioteca "RTClib".


VISOR EM FUNCIONAMENTO

Embora o visor seja opcional é muito interessante observar da data e horário atual, bem como o próximo horário previsto para irrigação. Além disso o valor do sensor de chuva, que pode ser substituído por um par de fios desencapados, é de grande importância para observar se o sistema está em pleno funcionamento. Na figura abaixo temos a foto do visor:

Visor exibindo a data e horário atual "26/06/2023 - 16:08", valor "1019" que é do sensor de chuva (fios desencapados) e "Prox: 16:49" sendo o próximo horário de irrigação.


SEGURANÇA
  1. Recomenda-se atenção especial para a montagem da válvula solenoide que opera em 127 VCA (voltagem em corrente alternada) por conta de choques elétricos. SEMPRE EFETUAR AS LIGAÇÕES COM A ENERGIA DESLIGADA;
  2. Deixar todo equipamento PROTEGIDO DA ÁGUA (chuva ou irrigação);
  3. Na dúvida procure orientações de profissionais qualificados.
CONSIDERAÇÕES APÓS 5 MESES.
  1. No nosso experimento a cebolinha  e almeirão tiveram uma produtividade boa, já a alface não atingiu o seu tamanho pleno, pois produziu o "pendão floral" de maneira antecipada. A rúcula também não se desenvolveu plenamente. (Infelizmente 😭 o sistema ficou inoperante por três dias ensolarados logo após o plantio, pois desligaram da energia equivocadamente);
  2. Biofertilizantes líquidos proveniente de vermicompostagem (compostagem com minhocas) são recomendados para melhorar a produtividade. 

SIGA-NOS