Os diagramas permitem ter uma visão global e detalhada de um projeto ou programa em micro:bit. Os arquitetos usam planos e desenhos para saber o que querem construir. O mesmo vale para diagramas na programação de microcontroladores. Neste artigo vamos conhecer os símbolos e diagramas usados para programar projetos feitos com micro:bit. Diagramas são desenhos que indicam aos programadores e usuários como o projeto é construído.

 

O placa micro:bit é um pequeno sistema de computador que pode controlar sistemas e circuitos eletrônicos.

 


 

 

Utilizamos o editor gráfico Makecode para programar esta placa.

 


| Clique na imagem para ampliar |

 

Além disso, é necessário saber como um projeto é montado, ou seja, ter um diagrama do que se quer montar na placa microbit. Para saber isso, é necessário saber construir diagramas e quais são utilizados em projetos micro:bit. A seguir está uma lista de diagramas usados em projetos micro:bit:

- Diagramas de Casos de Uso.

- Diagramas de atividades.

- Diagrama de Dados.

- Diagramas de estado.

Alguns destes diagramas são utilizados para grandes computadores e como o placa microbit é um pequeno computador e o ambiente de desenvolvimento: "Makecode" é gráfico, eles foram modificados para adequá-los a estas características.

 

DIAGRAMAS DE CASOS DE USO.

Os diagramas de: "Casos de Uso" são usados para indicar ou informar de forma bem global o que o projeto deve fazer. Em um diagrama de caso de uso, existem 3 elementos utilizados para sua elaboração:

- Autor.

- Caso de uso.

- Sistema.

O “Ator” pode ser entendido como a pessoa que utilizará o projeto. Em alguns livros ou textos eles o chamam de: “Usuário”. O autor é representado nos diagramas de casos de uso, com uma figura como a seguinte:

 


 

 

O Caso de Uso pode ser entendido como os processos que o autor executará e se representa nos diagramas de casos de uso com uma figura como a seguinte, onde Xxxxx representa algum texto dscrevendo o processo que será realizado no projeto.

 


 

 

O “Sistema” pode ser entendido como processos realizados pelo placa microbit e é representado nos diagramas de casos de uso, com uma figura como a seguinte:

 


 

 

Um exemplo de diagrama de caso de uso pode ser muito semelhante ao mostrado na figura a seguir:

 


| Clique na imagem para ampliar |

 

 

Vamos realizar um projeto para entender na prática como desenvolver um diagrama de casos de uso. Suponha um projeto de uma “lanterna” onde o usuário liga e desliga. Além disso, quando a lanterna está desligada, a temperatura é exibida. Assim, temos 3 processos a executar:

1- Ligue a lanterna.

2- Desligue a lanterna.

3- Mostrar a temperatura.

O diagrama de caso de uso pode ser mostrado na figura a seguir:

 


| Clique na imagem para ampliar |

 

 

Depois de fazer o diagrama de casos de uso, podemos fazer o diagrama de atividades, onde são mostradas as ações que o projeto deve executar, do ponto de vista do programador.

 

DIAGRAMAS DE ATIVIDADES.

O "Diagrama de Atividades" mostra as ações que o projeto deve executar. Os elementos básicos usados em um diagrama são:

- Começo.

- Atividade

- Conector.

- Junção

- Decisão.

- Condição

- Conclusão.

 

O "início" representa o início do projeto e seu símbolo de representação é:

 


 

 

A "Atividade" representa resumidamente um processo e seu símbolo de representação é:

 


 

 

 

O “conector” é uma seta que indica quando uma atividade começa ou termina. Seu símbolo de representação é:

 


 

 

 

A “junção” são setas e barras que podem indicar atividades paralelas. Seu símbolo de representação é:

 


| Clique na imagem para ampliar |

 

 

A “decisão” é usada para representar 2 caminhos a seguir. As decisões geralmente dependem de uma condição, ou seja, o processo será executado se a condição for atendida. Seu símbolo de representação é:

 


 

 

 

A “condição” é uma regra lógica ou aritmética que deve ser cumprida, para que a atividade ou processo seja realizado. Seu símbolo de representação é:

 


 

 

 

A “Conclusão” é utilizada para representar o fim das atividades e seu símbolo de representação é:

 


 

 

 

Como dito anteriormente, o diagrama de atividades mostra os processos que o projeto deve executar. É necessário relacionar alguns elementos do diagrama de atividades com os blocos disponíveis no ambiente de desenvolvimento "Makecode".

 

Fluxos ou sequências.

Para entender por que o diagrama de atividades utiliza fluxos ou sequências, é necessário entender um pouco como o placa microbit executa os blocos de programação. A ordem é sempre de cima para baixo. Além disso, é muito importante entender o símbolo de: “decisão”.

 


 

 

 

Na sequência acima, o programa faz uma avaliação, se o resultado for falso, o bloco é executado, se for verdadeiro, pula o bloco e continua a sequência abaixo. Além disso, uma avaliação pode ser feita, como a seguinte:

 


 

 

 

Vejamos um exemplo prático. Suponha que temos uma variável booleana chamada: "LanternOn" e quando ela tiver um valor de: "false", mostre a temperatura. A sequência será a seguinte:

 


 

 

 

Ou seja: quando a lanterna está acesa, não é necessário mostrar a temperatura. Os blocos para fazer isso seriam assim:

 


 

 

 

Lembre-se que os blocos para decisões (condicionais) encontram-se no menu: "Lógica", conforme a imagem a seguir:

 


 

 

 

É muito importante saber como criar variáveis ??booleanas. Para isso acesse o menu: “Variáveis” e crie uma variável conforme a imagem a seguir:

 

 


 

 

 

Em seguida, selecione o bloco: “definir LaternarLigada para” e arraste-o até que caiba no bloco: “at startup” conforme a imagem a seguir:

 

 


| Clique na imagem para ampliar |

 

 

Agora, vá ao menu: “Logica” e selecione um bloco que retorne um valor booleano, arraste-o até o bloco: “definir LaternaLigada para”, conforme a imagem a seguir:

 

 

 


 

 

 

Outro bloco utilizado para a tomada de decisão é: “se então”, conforme a imagem a seguir:

 


| Clique na imagem para ampliar |

 

 

Este fluxo mostra como algum processo será executado, tanto na verificação falsa quanto na verdadeira.

 


 

 

 

A forma como é desenhado depende do estilo adotado por cada programador, mais as 2 sequências ou fluxos são válidos. O bloco para fazer esse tipo de verificação está no menu: "Lógica" e é mostrado na imagem a seguir:

 


| Clique na imagem para ampliar |

 

 

Para usar esse bloco na prática, suponha que queremos atrasar uma determinada ação por um tempo. Podemos criar uma variável do tipo inteiro e enquanto ela for maior que zero (0) diminuí-la. Quando a variável chegar a zero, ela pulará para a outra atividade. A figura a seguir ilustra isso:

 


 

 

 

Os blocos usados para fazer este diagrama seriam semelhantes ao mostrado na figura a seguir:

 


 

 

 

Observe que quando a variável: "timer" valer 1, será a última vez que passará por essa verificação, pois ainda é maior que zero. Na próxima passagem por esse processo, a variável é zero e a outra condição é atendida.

Outro tipo de sequência utilizada em microbits é realizada quando múltiplas verificações devem ser feitas conforme a figura a seguir:

 


| Clique na imagem para ampliar |

 

 

Como exemplo prático podemos pensar em uma variável do tipo inteiro chamada: "contador" a qual queremos realizar alguma atividade quando vale: 2, 7, 8 e 12. O diagrama pode ser semelhante ao mostrado na figura a seguir :

 


| Clique na imagem para ampliar |

 

Para fazer isso com os blocos Makecode, acesse o menu: “Logica” selecione o bloco: “se então, se não”, conforme a imagem a seguir:

 


 

 

 

Em seguida, clique no símbolo: "+" até ficar semelhante ao mostrado na imagem a seguir:

 


| Clique na imagem para ampliar |

 

 

Agora vá para os blocos de comparação e arraste-os conforme mostrado na imagem a seguir:

 


 

 

 

Agora faça o mesmo para os outros blocos conforme a imagem a seguir:

 


 

 

 

Crie uma variável chamada: “counter” e arraste até o bloco: “if not, if then” e edite os valores para comparar conforme a imagem a seguir:

 


 

 

 

Agora você está pronto para colocar os processos ou blocos a serem executados quando a condição for verdadeira. Outra forma de fazer o fluxograma pode ser como a mostrada na imagem a seguir:

 


 

 

 

Entende-se que os conectores possuem uma condição para que sejam executados. Se desejar, também pode ser resumido ou reduzido ao diagrama mostrado na imagem a seguir.

 


| Clique na imagem para ampliar |

 

 

Tomando como exemplo o projeto “Lanterna”, visto no diagrama de casos de uso, desenvolveremos a partir deste projeto, o diagrama de atividades. O diagrama a seguir mostra as atividades que o projeto "Lanterna" deve processar:

 


| Clique na imagem para ampliar |

 

 

Como podemos ver, há uma atividade para o início. A seguir, entramos em um join onde existem 3 atividades que podem ser executadas em paralelo. Uma atividade para exibir a temperatura, outra atividade para ligar a lanterna e outra atividade para desligar a lanterna. Em seguida, entramos em outro entroncamento e a partir daí chegamos ao entroncamento superior e repetimos o loop. Podemos ver que as atividades são muito semelhantes aos casos de uso. Pode-se dizer que um diagrama de caso de uso pode ser entendido por qualquer pessoa. O diagrama de atividades é compreendido pelos programadores.

Vamos adicionar uma funcionalidade ao projeto “Lanterna”: que, ao desligar a lanterna, o placa microbit demora 10 segundos para exibir a temperatura. Para isso vamos criar uma variável booleana chamada: “FlashlightOn” e uma variável inteira chamada: “timer”. Assim, você pode verificar quando a lanterna está desligada e fazer um atraso de 10 segundos para exibir a temperatura. A atividade: “Mostrar temperatura” pode ser desenvolvida de forma mais aprofundada e ser algo como o esquema a seguir:

 


| Clique na imagem para ampliar |

 

 

Os diagramas de atividades são muito flexíveis na hora de serem desenvolvidos. Por exemplo, o diagrama a seguir é semelhante ao visto acima.

 


| Clique na imagem para ampliar |

 

 

O programa para o projeto: "Lanterna" seria semelhante a este:

 


 

 

 

 

 


| Clique na imagem para ampliar |

 

 

A seguir estão as telas que veremos no projeto: “Lanterna”.

 

 


 

 

 

DIAGRAMAS DE DADOS.

Diagramas de dados mostram as variáveis ??usadas no projeto. Por exemplo, para o projeto: “lanterna”, utilizamos 2 variáveis, uma do tipo booleana chamada: “LinternaPrendida” e outra do tipo inteiro chamada: “timer”. O diagrama de dados pode ser como o seguinte:

 

 


 

 

 

Se o projeto for muito grande, você pode agrupar as variáveis ??dentro de caixas ou retângulos para classificá-las. Então, podemos nomear o quadrado ou retângulo para generalizar que essas variáveis ??pertencem a uma determinada classe, conforme exemplo a seguir de um sensor de temperatura com alarmes de nível baixo e alto:

 


| Clique na imagem para ampliar |

 

 

DIAGRAMAS DE ESTADO.

Diagramas de estado são usados ??para descrever o comportamento de um projeto. Esse diagrama pode dar ao projeto alguma inteligência ao ser capaz de programar da maneira que queremos que o projeto se comporte. O diagrama a seguir mostra um estilo de desenho para diagramas de estado:

 


| Clique na imagem para ampliar |

 

 

Este é outro estilo usado em textos de programação:

 


 

 

 

Por ser importante conhecer bem os diagramas de estado, eles serão estudados em um próximo capítulo. Como conclusão, podemos nos familiarizar com os diferentes diagramas vistos e usá-los para o desenvolvimento de projetos. Você também pode usar a criatividade para adaptar esses diagramas ao seu jeito ou estilo de programação. Bons projetos!

 

 

NO YOUTUBE


NOSSO PODCAST