Projeto de monitoramento meteorológico desenvolvido para a APS da UNIP (4º semestre). Sensores conectados a um Arduino coletam dados ambientais, que são processados em C, armazenados no SQL Server e exibidos em tempo real por uma interface web em Java.
O sistema é baseado na programação orientada a objetos (POO), com código Java modularizado e de fácil manutenção. A interface web utiliza XML para estruturação e CSS para o design visual, seguindo boas práticas de separação entre lógica e apresentação.
| Funcionalidade | Descrição |
|---|---|
| 🌡️ Coleta de Dados Climáticos | Sensores DHT11 e de precipitação capturam temperatura, umidade e chuva |
| 🔄 Monitoramento Contínuo | Leituras frequentes e envio automático dos dados |
| 🌐 Interface em Java | Página web orientada a objetos e estilizada com XML + CSS |
| 🗃️ Armazenamento em SQL | Histórico de dados salvos para análises futuras |
- Arduino C – Linguagem utilizada para programar o microcontrolador
- Sensor DHT11 – Sensor responsável pela medição de temperatura e umidade
- Sensor de Precipitação – Utilizado para detectar e medir o volume de chuva
- Java – Lógica da aplicação orientada a objetos e controle de dados
- XML + CSS – Estruturação e estilização da interface web
- SQL Server – Banco de dados utilizado para armazenar as informações coletadas pelos sensores
estacao-meteorologica/
├── src/
│ └── main/
│ └── java/
│ └── com/
│ ├── DAL/ → Acesso a dados (DAO e Hibernate)
│ │ ├── HibernateUtil.java
│ │ └── VariaveisDAO.java
│ ├── ManagedBeans/ → Beans gerenciados para interação com a interface
│ └── Modelo/ → Lógica da aplicação e representação dos dados
│ ├── ApsEstacao.dbschema
│ ├── Controle.java
│ ├── Estaticos.java
│ ├── Serial.java
│ ├── Validacao.java
│ └── Variaveis.java
├── resources/ → Recursos auxiliares (não exibidos na imagem)
├── webapp/ → Arquivos da interface web (JSP/XML/CSS)
├── target/ → Diretório gerado na compilação
│ ├── ApsEstacao-1.0-SNAPSHOT/
│ ├── classes/
│ ├── maven-archiver/
│ ├── maven-status/
│ └── ApsEstacao-1.0-SNAPSHOT.war → Arquivo empacotado para deploy
├── nb-configuration.xml → Configurações do NetBeans
└── pom.xml → Configuração do Maven- Instale o Arduino IDE (ou o NetBeans, no caso da interface Java) e conecte corretamente os sensores ao Arduino
- Faça o upload do código para o microcontrolador utilizando a IDE do Arduino
- Configure a conexão com o banco de dados SQL Server para armazenar os dados recebidos
- Compile e execute a interface em Java para visualizar as informações em tempo real
- Monitore as condições climáticas com facilidade por meio do painel interativo 🌦️
| Componente | Função |
|---|---|
| arduino/ | Lê os dados dos sensores e envia para o banco |
| java-interface/ | Exibe os dados meteorológicos em tempo real para o usuário final |
| database/ | Estrutura do banco de dados e comandos SQL utilizados |
Contribuições são sempre bem-vindas! Você pode colaborar sugerindo melhorias, relatando problemas ou enviando funcionalidades:
- Faça um fork do repositório
- Crie uma nova branch:
git checkout -b feature/minha-feature - Realize os commits:
git commit -m "feat: adiciona nova funcionalidade" - Faça o push:
git push origin feature/minha-feature - Abra um Pull Request 🚀
Desenvolvido por Ricardo Andreotti Gonçalves 🧑💻
