Simulação de uma célula de manufatura industrial utilizando FreeRTOS, com máquinas e robôs que interagem através de filas (queues) compartilhadas, modelando o fluxo de produção e transporte de peças.
Implementação de um sistema de manufatura com:
- 3 máquinas de produção (M1, M2, M3)
- 4 robôs transportadores (R1–R4)
- Controle de concorrência com filas do FreeRTOS
- Logs detalhados em tempo real com coloração ANSI
- Pressione
Ctrl + Shift + P - Selecione
Tasks: Run Build Task
.\manufacturing_cell.exe- Robôs (R1–R4): Responsáveis por transportar peças entre as máquinas.
- Máquinas (M1, M2, M3): Realizam etapas do processo produtivo.
- Consumidor: Representa a saída final da célula de manufatura.
- Fila de saída: Monitora a conclusão de peças, com contador total.
vTaskR1: Carrega peças e as entrega na entrada da M1.vTaskR2: Transporta peças de M1 para M2.vTaskR3: Transporta peças de M1 para M3.vTaskR4: Retira peças de M2 ou M3 e finaliza o processo.
vTaskM1: Recebe peças de R1, processa, e decide entre enviar para M2 ou M3.vTaskM2: Processa peças vindas da M1 via R2.vTaskM3: Processa peças vindas da M1 via R3.
vTaskStatusDisplay: Imprime o estado atual de cada elemento (robôs e máquinas) com coloração ANSI e timestamps.
- Semáforos binários garantem que apenas um robô ou máquina acesse um recurso por vez (ex: entrada/saída de máquina).
- Evitam colisões e deadlocks entre tarefas concorrentes.
colorir_estado(): Aplica cor ANSI conforme o estado atual de cada entidade.total_pecas: Contador global de peças finalizadas pelo R4.