Descrição

Blog desenvolvido durante a disciplina de Fundamentos de Engenharia de Computação na UFS, ministrada pelo professor Renê Pereira de Gusmão. É alimentado pelos alunos Denisson Silva, Gustavo Bezerra, João Marcos, Leonam Matheus e Yann Trabuco

quinta-feira, 13 de outubro de 2016

Algumas das melhores Single Board Computers de 2016




 NOTA/DISCLAIMER: esta é uma tradução de parte da publicação de Cabe Atweel no EE Times, econtrado livremente na internet aqui. Este post não possui fins lucrativos, somente didáticos. O post não será monetizado. Para melhor legibilidade da tradução e completude dos fins do post, algumas informações serão omitidas, porém nenhuma será adicionada. Todos os direitos são reservados ao autor.

Desde de que as single board computers se tornaram populares, a cada ano mais e melhores SBC’s são lançadas, comparas com o ano anterior; e 2015 não ficou pra trás nessa corrida. Agora estamos em 2016, e aqui está a nossa seleção das melhores single-board computers. Observação: esta liste não pretende avaliar profundamente cada placa. Vamos somente fazer um pequeno resumo de cada uma, informá-lo onde achá-las e seu preço aproximado. Eu explicarei a minha decisão e quais fatores à influenciaram.

BeagleBone Green

a beaglebonegreen é um sucessor de 6 camadas da beagleBoneBlack. Com um preço de $39, A placa é construida ao redor de um processador AM335x 1GHz ARM Cortex-A8 Vem com 512MB de DDR3 RAM e 4GB memória flash eMMC. Infelizmente, não tem slot para Micro SD.

a BBG tem duas entradas e conta ainda com duas placas para periféricos.

O maior problema com a BBG é o fato de que, ao contrário de outras SBCs, ela não vem cuom uma saída de de display. Para ter acesso, você terá que comprar um cabo HDMI e conectar na placa.



 (Source and image: http://beagleboard.org/green)

Raspberry Pi 2

  O raspbarry Pi 2é equipado com processador ARM Cortex-A7 quadcore de 900MHz e 1 GB de RAM. Hoje é possivel encontrá-la por $35. Não possui memória flash embutuda, porém tem slot para Micro SD, então é bastante fácil adicionar memória a placa.


Se você decidir utilizar a raspbarry pi 2, você não estará sozinho; A comunidade desenvolvedores é ampla na plataforma.





(Source and image: https://www.raspberrypi.org/blog/raspberry-pi-2-on-sale/

 Banana Pi

Com um processador ARM A83T Cortex-A7 de 8 cores e 2GB de DDR3 RAM, a placa é pequena porém poderosa.

Possui Wi-Fi, Bluetooth, interface de câmera, 10/100/1000 Ethernet, entrada e saída de áudio, portas USB, slot para MicroSD, porta SATA, pinos 40 GPIO e porta HDMI. A Banana Pi roda a mesma gama de sistemas operacionais de outras SBCs, além de rodar Raspbian. Para usuários que já são familiarizados com com a Paspbarry Pi e querem conhecer uma nova placa com interface parecida, está é uma boa opção. Disponível na Amazon por $100 e na Tiny One Systems por $88. 






(Source and image: http://www.banana-pi.com/eacp_view.asp?id=87

quinta-feira, 6 de outubro de 2016

Lógica Booleana, Operadores Básicos e Tabela-Verdade

              Saindo um pouco do nosso foco, as single boards computers, vamos falar um pouco sobre lógica booleana, operadores básicos e tabela-verdade. Como eu disse, estamos nos afastando só um pouquinho do nosso foco, pois os estudos de Boole são fundamentais para que os microcontroladores e microprocessadores "decidam" o que fazer diante de determinadas demandas.

Lógica booleana
                                             
Nós, humanos, utilizamos o sistema decimal, que possui dez dígitos (0 ao 9). Por que escolhemos esse sistema numérico? Simples, quantos dedos temos somando ambas as mãos? Dez! Coincidência? Não, conveniência! Cada um usa o sistema numérico que mais lhe convêm.


Resultado de imagem para George boole
George Boole foi um filósofo britânico, criador da álgebra booliana, fundamental para o desenvolvimento da computação moderna.


             Mas, você nunca viu um processador com dez dedos, viu?! Os computadores de uma forma geral, e qualquer outra máquina controlada por um processador, trabalham com sistema binário, composto apenas pelos números um e zero. E foram estes dois números que deram origem à lógica booleana.

Como vimos em um dos nossos primeiros posts, o sistema de numeração binária é composto apenas por uns e zeros. Os computadores, na verdade, trabalham apenas com esse sistema de numeração.

Se você pudesse abrir um processador e ver como ele trabalha, seriam zeros e uns para todos os lado, uma verdadeira "Matrix" binária. Assim como bem e mal, claro e escuro, fácil e difícil, certo e errado são opostos, com 0 e 1 não seria diferente.

Na lógica Booleana, o zero representa falso, enquanto o um representa verdadeiro. Para trabalhar com esses valores e torná-los algo lógico, que possa ser aplicado, são necessárias as chamados operadores lógicos.


Operadores lógicos

         As operações lógicas são ensinadas em vários cursos de tecnologia de diferentes formas, por exemplo, em cursos de eletrônica é ensinado portas lógicas, já em programação aprendemos os operadores lógicos. Mas no fundo é a mesma coisa e se você entender a ideia das operações lógicas você pode usar esse conhecimento em qualquer área da tecnologia.

As operações lógicas trabalham sobre valores booleanos, tanto os valores de entrada como o de saída são desse tipo. Os operadores lógicos são: E, OU, NÃO, NÃO-E, NÃO-OU, OU-EXCLUSIVO E NÃO-OU-EXCLUSIVO. Abaixo uma explicação de cada um.



      Resultado de imagem para o que é logica booleana

  • O Operador “E” ou “AND” resulta em um valor VERDADEIRO se os dois valores de entrada da operação forem VERDADEIROs, caso contrário o resultado é FALSO.
  • O Operador “OU” ou “OR” resulta em um valor VERDADEIRO se ao menos UM dos dois valores de entrada da operação for VERDADEIRO, caso contrário o resultado é FALSO.
  • O Operador “NÃO” ou “NOT” é o único operador que recebe como entrada apenas um valor, e sua função é simplesmente inverter os valores. Ou seja, se o valor de entrada for VERDADEIRO, o resultado será FALSO e se o valor de entrada for FALSO, o resultado será VERDADEIRO.
  • O Operador “NÃO-E” ou “NAND” é o contrário do operador E (AND), ou seja, resulta em VERDADEIRO, se ao menos um dos dois valores for FALSO, na verdade este é o operador E (AND) seguido do operador NÃO (NOT).
  • O Operador “NÃO-OU” ou “NOR” é o contrário do operador OU (OR), ou seja, resulta em VERDADEIRO, se os dois valores forem FALSO, na verdade este é o operador OU (OR) seguido do operador NÃO (NOT).
  • O Operador “OU-EXCLUSIVO” ou “XOR” é uma variação interessante do operador OU (OR), ele resulta em VERDADEIRO se apenas um dos valores de entrada for VERDADEIRO, ou seja, apenas se os valores de entrada forem DIFERENTES. 
  • O Operador “NÃO-OU-EXCLUSIVO” ou “XNOR” é o contrário do operador OU-EXCLUSIVO (XOR), ou seja, resulta VERDADEIRO se os valores de entrada forem IGUAIS. 
Operadores lógicos nas linguagens de programação

               
          Cada linguagem de programação tem uma forma de representar os operadores lógicos. A simbologia mais encontrada são ANDOR e NOT em linguagens como Pascal, Visual Basic e SQL, e &&|| e ! em linguagens como: Java, C/C++ e C#.

Algumas linguagens oferecem operadores lógicos para o nível de bit (também chamado de operadores bitwise). Ou seja, podemos fazer operações lógicas com os bits de dois números. Em java, por exemplo esses operadores são & e |. 

Tabela-Verdade

          A tabela-verdade é usada para determinar o valor lógico de uma proposição composta, sendo os valores das proposições simples já são conhecidos, pois o valor lógico da proposição composta depende do valor lógico da proposição simples.

Resultado de imagem para tabela verdade

       Conhecer a lógica booleana, os operadores lógicos e a tabela-verdade é muito importante para qualquer área da tecnologia que você for trabalhar. Em programação por exemplo, utilizamos essas ferramentas praticamente o tempo todo, principalmente para controle de fluxo de execução e tomadas de decisão. Então, estude e revise com frequência esses tópicos.

             
Referências:
www.techmundo.com.br
www.dicasdeprogramacao.com.br
www.wikipedia.com
www.ufes.br


terça-feira, 4 de outubro de 2016

Segurança Doméstica

Segurança Doméstica


Continuando a nossa jornada através das single board computers, nós do blog-sbc percebemos que um dos tipos de projetos que mais se faz é justamente sobre segurança doméstica. Com a facilidade que uma sbc oferece, pessoas com pouco conhecimento na área de computação podem colocar em prática projetos que tenham em mente. 
Mostraremos alguns pequeno projetos utilizando o Raspberry Pi e o Arduino, ambos com as maiores comunidades ativas. O intuito deste post é fazer com que o leitor perceba que não é difícil implementar um sistema de segurança na sua residência, e que com um pouco de pesquisa, qualquer pessoas deve ser capaz de conseguir.

Este pequeno vídeo que vemos abaixo esta em inglês, como a maioria do conteúdo disponível, mas dispensa tradução para entender. O projetista abre a porta e mostra que se em 15 segundos a senha não for digitada, o alarme dispara. Assim que a senha é inserida, o alarme para. Vamos assistir o vídeo?


Agora perceba que o projeto acima esta em apenas uma maquete, mas isso pode ser facilmente transportado para a vida real. O que pode ser feito também, é mudar o layout do dispositivo, adicionar funções, regular o tempo, entre outras coisas que cada projetista pode imaginar. Reforçando: seu potencial com uma single board computer depende exclusivamente da sua imaginação.

Nesse outro vídeo, nós vemos uma tranca de porta automatizada com um Raspberry Pi. O projetista tem um chip implantado na sua mão, e este é lido pelo sistema e destranca a porta. A opção de usar a chave é mantida, e em casos de emergência, o sistema pode ser levantado para o usuário utilizar a porta normalmente. Esse projeto vem sendo usado com sistema de alarme na casa do projetista durante mais de meio ano, e funciona perfeitamente. Vamos ver o vídeo para que você tire suas próprias conclusões.



Por último, esse outro vídeo utiliza o Arduino como sistema de segurança. Existe um painel que contém uma tela, e um teclado. Ao acionar um sensor de movimento ou separar dois sensores magnéticos o alarme é acionado, e somente para após a senha correta ser inserida. Nesse vídeo é mostrado também que dá pra mudar a senha que desarma o alarme. Vamos dar uma conferida:





O projetista disponibilizou o processo de montagem e os códigos, estes estarão nas referências deste post! Portanto, está aí um prato cheio para os hobbistas, ou preocupados com os adeptos da comunidade DIY (assunto para as próximas postagens).

Referências:
1. Youtube - www.youtube.com
2. Instruções para construir sistema 3 - Disponível em: http://www.instructables.com/id/Arduino-Password-Security-System-With-Magnetic-Doo/