Um sistema inteligente para gerenciar e rastrear a manutenção de motocicletas Royal Enfield com base nos manuais oficiais da marca.
Este projeto é um assistente de manutenção desenvolvido especificamente para motocicletas Royal Enfield. O sistema utiliza os dados oficiais de manutenção preventiva da marca para fornecer informações precisas sobre quando e quais serviços devem ser realizados, seja baseado em quilometragem ou tempo de uso.
- Automação: Facilitar o acompanhamento de manutenções preventivas
- Organização: Centralizar informações de manutenção em um local acessível
- Eficiência: Reduzir custos e aumentar a vida útil do veículo
- Conformidade: Seguir rigorosamente as especificações da Royal Enfield
- ✅ Consulta de manutenções por quilometragem
- ✅ Consulta de manutenções por período (meses)
- ✅ Decodificação de símbolos de serviço (I, R, C, L, A)
- ✅ Base de dados completa de serviços de manutenção
- ✅ Scripts de teste e validação
- 🔄 Interface gráfica (GUI) intuitiva
- 🔄 Banco de dados relacional (substituindo CSVs)
- 🔄 Sistema de notificações e lembretes
- 🔄 Histórico de manutenções realizadas
- 🔄 Relatórios de custos e estatísticas
- 🔄 Integração com calendário
- 🔄 Suporte multi-usuário
- 🔄 Backup automático de dados
RE_maintenance_assistant/
├── data/ # Dados de manutenção
│ ├── maintenance_services.csv # Códigos de serviços (I, R, C, L, A)
│ ├── maintenance_schedule_km.csv # Cronograma por quilometragem (códigos)
│ ├── maintenance_schedule_km_translated.csv # Cronograma por quilometragem (texto)
│ ├── maintenance_schedule_months.csv # Cronograma por meses (códigos)
│ └── maintenance_schedule_months_translated.csv # Cronograma por meses (texto)
├── notebooks/ # Jupyter notebooks para análise
│ ├── df_maintenance_km_to_csv.ipynb # Processamento dados km
│ ├── df_maintenance_months_to_csv.ipynb # Processamento dados meses
│ └── df_service_opt_to_csv.ipynb # Processamento códigos serviços
├── tests/ # Scripts de teste e validação
│ ├── info_and_maintenance_km.py # Testes de consulta por km
│ ├── info_and_maintenance_month.py # Testes de consulta por meses
│ ├── look_for_km_service.py # Busca serviços por km
│ └── look_for_month_service.py # Busca serviços por meses
└── README.md # Este arquivo
- Python 3.x: Linguagem principal
- Pandas: Manipulação e análise de dados
- CSV: Armazenamento temporário de dados
- Jupyter Notebook: Análise e prototipagem
- SQLite/PostgreSQL: Banco de dados relacional
- Flask: Interface gráfica
- SQLAlchemy: ORM para banco de dados
- Schedule: Agendamento de tarefas
- Pytest: Testes automatizados
| Símbolo | Ação |
|---|---|
| I | Inspect (Inspecionar) |
| R | Replace (Substituir) |
| C | Clean (Limpar) |
| L | Lubricate (Lubrificar) |
| A | Adjust (Ajustar) |
- Por Quilometragem: 0.5k, 5k, 10k, 15k, 20k, 25k, 30k, 35k, 40k, 45k, 50k km
- Por Tempo: 1.5, 6, 12, 18, 24, 30, 36, 42, 48, 54, 60 meses
# Instalar Python 3.x
# Instalar pandas
pip install pandas# Navegar até o diretório do projeto
cd RE_maintenance_assistant
# Executar consulta por quilometragem
python tests/look_for_km_service.py
# Executar consulta por meses
python tests/look_for_month_service.py
# Visualizar informações detalhadas
python tests/info_and_maintenance_km.py
python tests/info_and_maintenance_month.pyimport pandas as pd
# Carregar dados de manutenção por km
df_km = pd.read_csv('data/maintenance_schedule_km_translated.csv')
# Consultar manutenções aos 10.000 km
maintenance_10k = df_km['10'].dropna()
print(maintenance_10k)- Estrutura básica de dados
- Scripts de consulta
- Validação dos dados
- Documentação inicial
- Design da interface do usuário
- Implementação com Flask
- Sistema de entrada de dados
- Visualização de resultados
- Migração de CSV para SQLite
- Modelagem relacional
- APIs de acesso aos dados
- Sistema de backup
- Sistema de notificações
- Histórico de manutenções
- Relatórios e estatísticas
- Integração com calendário
Contribuições são sempre bem-vindas! Para contribuir:
- Fork o projeto
- Crie uma branch para sua feature (
git checkout -b feature/AmazingFeature) - Commit suas mudanças (
git commit -m 'Add some AmazingFeature') - Push para a branch (
git push origin feature/AmazingFeature) - Abra um Pull Request
- Seguir PEP 8 para código Python
- Adicionar testes para novas funcionalidades
- Atualizar documentação quando necessário
- Usar mensagens de commit descritivas
- Python 3.7+
- 50MB de espaço em disco
- 512MB de RAM
- Python 3.9+
- 200MB de espaço em disco
- 1GB de RAM
- Vinicius Monnerat - Desenvolvedor Principal - @viniciuscmb
- Royal Enfield - Pelos manuais de manutenção oficiais
- Comunidade Python - Pelas ferramentas e bibliotecas
- Motociclistas RE - Por inspirar este projeto
- LinkedIn: Vinicius Monnerat
- GitHub: @viniciuscmb
⚡ Mantenha sua Royal Enfield sempre em perfeito estado! ⚡