https://makecode.microbit.org/_8a8c4dTc9Uc2
Ano: 6º ano
Unidade Temática: Vida e Ambiente
Objeto de Conhecimento: Cadeias alimentares e relações ecológicas
Habilidade BNCC:
- EF06CI08 – Relacionar os seres vivos, incluindo o ser humano, aos componentes físicos e químicos do ambiente, reconhecendo o ambiente como um sistema dinâmico em interação.
- EF07CI08 – Avaliar como os impactos provocados por catástrofes naturais ou mudanças nos componentes físicos, biológicos ou sociais de um ecossistema afetam suas populações, podendo ameaçar ou provocar a extinção de espécies, alteração de hábitos, migração etc.
Pilar do Pensamento Computacional: Algoritmos / Abstração / Eventos
-------------
📄 Descrição do Projeto
Este projeto simula um ecossistema marinho e terrestre com criaturas representadas por sprites no micro:bit. A ideia é demonstrar relações ecológicas como predação, reprodução e extinção, usando eventos como som e movimento para disparar mudanças no ecossistema. Os alunos visualizam como pequenos eventos (como a extinção de um peixe) afetam toda a cadeia.
🧠 Por que está interligado com a habilidade?
A BNCC propõe que os alunos compreendam a dinâmica dos sistemas vivos e suas relações. Este projeto permite observar interações simuladas em um sistema digital, incentivando a análise de causa e efeito e a compreensão de relações ecológicas.
🔧 Passo a Passo no MakeCode (Blocos ou JavaScript)
- Crie sprites que representam animais:
- Peixe, Macaco, Golfinhos, Orcas, Gorilas
- Ao iniciar:
- Ao sacudir o micro:bit:
- De forma aleatória, cria novos animais ou remove ("preda") um
- Ao detectar som alto:
- Eventos como extinção de espécies ou surgimento de predadores
- Ao tocar o logo:
🛠️ Código JavaScript (MakeCode)
input.onLogoEvent(TouchButtonEvent.Pressed, function () {
control.reset()
})
input.onGesture(Gesture.Shake, function () {
_2 = randint(0, 5)
_50 = randint(0, 1)
_20 = randint(0, 10)
if (_50 == 1) {
if (!Peixe.isDeleted()) {
Golfinho = game.createSprite(0, 0)
Golfinho_2 = game.createSprite(2, 1)
Golfinho_3 = game.createSprite(3, 0)
}
if (!Macaco.isDeleted()) {
Macaquinho = game.createSprite(2, 2)
Macaquinho_2 = game.createSprite(1, 0)
Macaquinho_3 = game.createSprite(2, 0)
}
}
if (_20 == 10 && !Peixe.isDeleted()) {
Peixe.delete()
basic.showIcon(IconNames.Skull)
} else if (_2 == 5 && !Macaco.isDeleted()) {
Macaco.delete()
basic.showIcon(IconNames.Skull)
}
})
input.onSound(DetectedSound.Loud, function () {
_2 = randint(0, 5)
_50 = randint(0, 1)
_20 = randint(0, 10)
if (!Peixe.isDeleted() && _50 == 1) {
if (!Golfinho.isDeleted()) Golfinho.delete()
if (!Golfinho_2.isDeleted()) Golfinho_2.delete()
if (!Macaquinho_3.isDeleted()) Macaquinho_3.delete()
basic.showIcon(IconNames.Skull)
}
if (!Macaco.isDeleted() && _2 == 5) {
if (!Golfinho_3.isDeleted()) Golfinho_3.delete()
if (!Macaquinho.isDeleted()) Macaquinho.delete()
if (!Macaquinho_2.isDeleted()) Macaquinho_2.delete()
basic.showIcon(IconNames.Skull)
}
if (_20 == 10) {
if (!Golfinho.isDeleted() || !Golfinho_2.isDeleted() || !Golfinho_3.isDeleted()) {
Orca = game.createSprite(1, 3)
Orca_2 = game.createSprite(2, 3)
}
if (!Macaquinho.isDeleted() || !Macaquinho_2.isDeleted() || !Macaquinho_3.isDeleted()) {
Gorila = game.createSprite(4, 0)
Gorila_2 = game.createSprite(4, 1)
}
}
})
let _20 = 0
let _50 = 0
let _2 = 0
let Gorila_2: game.LedSprite = null
let Gorila: game.LedSprite = null
let Orca_2: game.LedSprite = null
let Orca: game.LedSprite = null
let Macaquinho_3: game.LedSprite = null
let Macaquinho_2: game.LedSprite = null
let Macaquinho: game.LedSprite = null
let Golfinho_3: game.LedSprite = null
let Golfinho_2: game.LedSprite = null
let Golfinho: game.LedSprite = null
let Macaco: game.LedSprite = null
let Peixe: game.LedSprite = null
Peixe = game.createSprite(1, 1)
Macaco = game.createSprite(3, 3)
Golfinho = game.createSprite(6, 6)
Golfinho_2 = game.createSprite(6, 6)
Golfinho_3 = game.createSprite(6, 6)
Macaquinho = game.createSprite(6, 6)
Macaquinho_2 = game.createSprite(6, 6)
Macaquinho_3 = game.createSprite(6, 6)
Orca = game.createSprite(6, 6)
Orca_2 = game.createSprite(6, 6)
Gorila = game.createSprite(6, 6)
Gorila_2 = game.createSprite(6, 6)
🏫 Implementação na Sala de Aula
- Apresente aos alunos conceitos de cadeia alimentar, predador e presa
- Mostre como os eventos disparam mudanças no sistema (como um som representando um distúrbio ambiental)
- Alunos observam e discutem o comportamento emergente
- Podem modificar as regras para testar hipóteses (ex: o que acontece se removermos os peixes?)
⚡ Resultados Esperados
- Compreensão de interações entre seres vivos e o ambiente
- Visualização concreta de dinâmicas ecológicas
- Raciocínio lógico e pensamento computacional em contexto científico
- Estímulo à investigação e formulação de perguntas
🔄 Possíveis Extensões
- Criar sistema com energia (nível de alimento)
- Simular cadeia alimentar com mais níveis
- Associar imagens externas ou ilustrações para enriquecer a visualização
- Registrar resultados e montar relatórios de observação