Pesquisar aqui

terça-feira, 17 de dezembro de 2019

O Robô cão de Boston Dynamics já está a venda




A empresa cuja as suas criações já conquistaram o mundo com milhões de visualizações no YouTube decidiu, já à alguns meses, vender um dos seus mais famosos robôs, Spot.
Este robô autónomo pode ser visto no seu vídeo de lançamento (que pode-se ver ao carregar na imagem) a navegar por terrenos desafiadores, apanhando objetos de construção, passando por mau tempo e até levantando-se depois de cair. No website de Boston Dynamics podemos encontrar as capacidades de Spot. Por exemplo o robô poderá correr até 1.6 metros por segundo, tem uma câmera de 360 graus, é a prova de poeira e água e pode operar em temperaturas que variam entre -20 e 45 graus Celsius.
Infelizmente para quem esperava ter um robô "pet" vai ter que esperar alguns anos. Spot no momento só esta a ser entregue a early customers, empresas, que o usarão para construção de obras, instalação de gás e segurança pública.

Arduino IoT Cloud

A Arduino IoT Cloud é uma aplicação que ajuda os Makers a criar projetos conectados à internet de forma fácil, rápida e segura. Os usuários têm a possibilidade de conectar diversos dispositivos uns aos outros, possibilitando a troca de dados entre eles em tempo real. Para além disso é também possível ao utilizador monitorizar todo o processo e controlar os dispositivos a partir de qualquer sítio, necessitando apenas de um smarthpone, tablet ou computador, tudo isto usando uma interface muito simples e intuitiva.

A maior vantagem desta plataforma é a facilidade de uso. Esta foi precisamente criada com o objetivo de ajudar pessoas inexperientes na área a criar projetos e a deixar a sua criatividade e ideias florir. A app cria automaticamente o código, sendo depois possível alterá-lo e enviá-lo para o Arduino. A sua única desvanatgem é o facto de que esta app não funciona em todos os Arduinos, apenas os da linha MKR (que possuem capacidade de conexão à internet), ou através da utilização de shields de conexão à internet (estes são peças compradas à parte que podem ser instaladas no Arduino para lhe acrescentar funcionalidades).

É importante frisar que este aplicativo é extremamente recente (estando ainda em fase Beta), porém, já existem centenas de projetos desenvolvidos por outros utilizadores, os quais estão disponibilizados para aprendizagem. A empresa Arduino também dispões diversos tutoriais e guias para tornar a iniciação e aprendizagem de IoT fácil. Considero esta plataforma excelente para quem quer entra neste mundo da tecnologia, sendo um ponto de partida simples mas com um grande leque de possibilidades.


fontes:


imagem:
  • URL
  • consultada no dia 08/12/2019

segunda-feira, 16 de dezembro de 2019

Windows 10 IoT

O windows 10 IoT é um sistema operativo desenvolvido pela microsoft e dedicado aos chamados "sistemas embarcados". Estes são sistemas em que o computador é completamente dedicado ao sistema controlado. Em oposição os computadores de uso geral, como os computadores pessoais, um sistema embarcado realiza um conjunto de tarefas predefinidas, geralmente com requisitos específicos. A vantagem deste tipo de sistema é que por realizar tarefas tão específicas, pode ser otimizado para as mesma, reduzindo tamanho, recursos computacionais e custos.

Este SO é gratuito (na versão Core) e serve como uma infra-estrutura em que é possível desenvolver diversas aplicações com base na internet das coisas. Para além de desenvolvimento de apps, também é possível controlar os dispositivos remotamente (incluindo fazer debugging), recolher dados e colocá-los na Cloud,... Uma das suas maiores vantagens é a sua segurança. Este SO vem equipado com diversas medidas que ajudam a manter os dispositivos controlados pelos mesmos seguros, para além disso, estas medidas são todas configuráveis.

É de notar que este sistema operativo está dividido em dois. O Windows 10 IoT Core que é voltado para dispositivos inteligentes de pequenas dimensões e projetos simples, com a capacidade de apenas rodar uma aplicação de cada vez. O Windows 10 IoT Enterprise por sua vez é uma versão completa do Windows 10, com maiores capacidades e virado para a indústria (IIoT). Ambas as versões suportam headless (não é necessário a informação estar sempre a ser projetada num display) e vêm equipadas com a assistente pessoal inteligente "Cortana".


fontes:


imagem:
  • URL
  • consultada no dia 07/12/2019

C++ - Desafio de Natal


O Natal e o Ano Novo aproximam-se e porque não dar-lhes as boas vindas completando um desafio em C++?

O objetivo é criar um programa que faz output da mensagem:
"Feliz Natal!Feliz 2020!"

Mas em vez de escrever direto, vai fazendo vários outputs, começando no carácter do meio ("!"), e a cada nova linha de output adicionando mais 1 carácter de cada lado, de modo a criar uma árvore de natal.
Ou seja, 1 carácter, 3 carácteres, 5 carácteres... Começando no centro.
    1
  212
32123

Se a mensagem fosse "hello", o programa faria:
     l
   ell
 hello

A última linha deve então conter a mensagem completa "Feliz Natal! Feliz 2020!".

Será que consegues?
Output esperado:
           !
          l!F
         al!Fe
        tal!Fel
       atal!Feli
      Natal!Feliz
      Natal!Feliz 
    z Natal!Feliz 2
   iz Natal!Feliz 20
  liz Natal!Feliz 202
 eliz Natal!Feliz 2020
Feliz Natal!Feliz 2020!

Minha solução:
#include <iostream>

using namespace std;

int main()
{
    string message = "Feliz Natal!Feliz 2020!";
    
    //A mensagem tem 23 carácteres, 11 para cada lado, um no meio
    
    //Loop principal (linha a linha)
    for(int i = 0; i < 12; i++){
        //Escrever os espaços (depende do número da linha)
        for(int space = 11; space > i; space--){
            cout << " ";
        }
        
        //Escrever os carácteres à esquerda do centro
        for(int left = i; left > 0; left--){
            cout << message[11-left];
        }
        
        //Escrever o "!", carácter central
        cout << message[11];
        
        //Escrever os carácteres à direita do centro
        for(int right = 1; right <= i; right++){
            cout << message[11+right];
        }
        
        //Finalizar a linha, criando uma nova em baixo
        cout << endl;
    }
}

O desafio e solução são de completa autoria minha.
Quaisquer dúvidas que tenham fico muito feliz por responder e ajudar!

Referências

Python - Interrupção

Devido à época festiva que se avizinha, não haverá publicações de programação em Python até dia 6 de Janeiro de 2020, assim desejo a todos umas boas festas e um bom começo de ano que virá com muita programação em Python esperemos!



Referências: