Tutorial

Apresentamos aqui uma coleção de artigos contendo instruções de como entender como funciona e até como implementar funções, projetos ou transformar a teoria em prática.

Para melhor organização e ajudar na busca, dividimos estes artigos em categorias e usaremos tags para auxílio na sua busca.

A Eletronica é um conhecimento necessário para aqueles que se envolvem com automação e robótica mas que nem todos dominam. Muitos iniciantes imaginam poder montar os seus projetos sem conhecer o suficiente, apenas, copiando os projetos postados na internet e substituindo componentes por outros sem um cálculo ou conhecimento prévio e está sujeito a provocar desastres.

Sub áreas:

  • Tutoriais básicos;
  • Componentes e Datasheets (Folhas de especificações);
  • Sensores e atuadores;
  • Módulos e dispositivos;
  • Instrumentação e ferramentas;
  • Motores (DC, AC, Brushless, Step) e solenóides;
  • Links úteis

A Informatica e Internet são parte da nossa vida e ao nos propor a conhecer o mundo dos microcontroladores e embarcados, acabamos nos interessando em fazê-los comunicar através de redes e internet pois são seguros, fáceis de implementar e tem longo alcance sem falar nos dispositivos que já existem e podem cooperar com seus projetos.

Sub áreas:

  • Tutoriais básicos;
  • Protocolos;
  • Serviços;
  • Provedores;
  • Ferramentas;
  • Links úteis.

Programação e Lógica são conhecimentos básicos para quem deseja desenvolver aplicativos e sketchs de MCUs(tais como o PIC, Arduino, ESP8266, Raspberry, STM32), assim como aplicativos e serviços para Android, PC ou Servidores e até para rodar na nuvem.

Sub áreas:

  • Linguagens;

NodeJS

MCU - Micro Controller Unit

MCUs (Micro Controller Unit) são derivados das CPUs contendo além da unidade de processamento, memória, portas de entradas e saídas e até conversores e controladores de comunicação, normalmente encapsulados em um único chip.

  • PIC possui várias famílias de microcontroladores fabricados pela Microchip Technology e vem sendo muito utilizado em indústrias pela sua confiabilidade.
  • Atmel também possui várias famílias de microcontroladores, principalmente aqueles denominados ATMega.
  • ARM vem atuando fortemente e popularizou com sua família de embarcado STM e é utilizado em celulares, set top boxes, roteadores e outros sistemas pequenos mas poderosos.
  • Intel recentemente está tentando entrar no mundo dos embarcados com seu projeto Edison.

Embarcados são pequenos módulos contendo MCUs (Micro controladores) ou SoCs (Sistemas em um só chip) contendo GPU (processador gráfico) e alguns componentes auxiliares para facilitar o uso ou desenvolvimento de sistemas robóticos ou de automação.

Estes sistemas embarcados vem ganhando popularidade pois facilita drasticamente o desenvolvimento e utilização dos MCUs, principalmente para os iniciantes os quais possuem poucos recursos financeiros, poucas ferramentas e conhecimento limitado.

O Arduino é uma implementação de microcontroladores da Atmel e se popularizou por ser mais fácil de se desenvolver os projetos as custas de confiabilidade e limitação da utilização de todo o poder dos chips ATMega. Visite nossa Página de Referência.

O ESP8266 é um poderoso e minúsculo componente contendo um microcontrolador de 32 bits memória flash e comunicação WiFi com antena integrada. Este módulo, apesar de ser poderoso e mais completo do que o Arduíno, tem o custo bem menor e a facilidade de programação é tanta que ele suporta comandos AT, desenvolvimento de sketch usando IDE do próprio Arduino e LUA com NODEMCU. Tutorial interessante em http://br-arduino.org/2015/08/nodemcu-esp8266.html

STM32 é uma serie de MCUs da ARM que vem sendo popularizado rapidamente pois além de serem poderosos, são baratos, possibilitam o debug e estão disponíveis em forma de modulos de produção e de desenvolvimento.

  • Instalação do ambiente usando eclipse http://www.davidrojas.co.uk/stm32f3discovery-on-mac-os-x-using-eclipse-gcc-arm-and-openocd/
  • Ambiente completo http://electronics.stackexchange.com/questions/205869/how-to-start-with-stm32f103c8t6-board

Raspberry Pi é um módulo do tamanho de um cartão de crédito baseado no chip da Broadcom contendo processador ARM, GPU, controlador Ethernet e WiFi, controlador de HD, cartão SD e portas I/O.

O projeto IOTON é um dos projetos participando no catarse, e esperamos que tenha sucesso pois a proposta de facilidade de desenvolvimento é muito interessante.

Outros sistemas embarcados que podem chamar a atenção e, quem sabe, obter sucesso e até concorrer com o PIC, Arduino e ESP8266.

As Bibliotecas são conjuntos de códigos prontos para funções específicas que são muito úteis para o reúso dos códigos desenvolvidos pelos especialistas em cada assunto. Existem milhares de bibliotecas disponíveis pela internet e muitas são obsoletas ou nem tão interessante ou de boa qualidade. Portanto, a lista de bibliotecas interessantes pode ser útil para todos. Esta pasta conterá links para artigos de outras áreas para evitar redundâncias.

CNC - Comando Numérico Computadorizado

As máquinas CNC já existem há muito tempo mas recentemente vem se popularizando entre os iniciantes hobbystas e até veteranos da robótica. Além de ser mais fácil montar os equipamentos, estão surgindo muitos projetos e kits baixando os custos e diversificando os tipos disponíveis.

Por favor, enviem sugestões e críticas construtivas

Supervisório

Gerenciadores de dispositivos

  • ScadaBR é um aplicativo supervisório super completa de código aberto JAVA muito popular baseado em outro projeto chamando Mango. ScadaBR é capaz de monitorar e controlar dispositivos IoT e embarcados através de vários protocolos e também possui um mecanismo de controle baseado em scripts;
  • MQTT Message Queue Telemetry Transport especial para ser pequeno, economizar trafego e facilitar comunicação assíncrona;
  • Mosquitto http://mosquitto.org/ Distribuidor de mensagens MQTT da IBM, free e roda até no raspberry;
  • Active MQ https://activemq.apache.org/apollo/ Apache Apollo é a próxima geração de messaging provendo vários protocolos e com várias funções;
  • Eclipse Paho http://www.eclipse.org/paho/ Eclipse Paho oferece implementações de código aberto para clientes MQTT e MQTT-SN para plataformas em C, Java com Lua, Python, C++ e JavaScript;
  • Modbus existente desde os anos 80
  • https://sourceforge.net/projects/j2mod/ Biblioteca JAVA que implementa várias modalidades do Modbus;
  • Cayenne - gerencia dispositivos IoT pela Internet com ambiente amigável, fácil de usar;
  • ThingSpeak

Inovação

Aqui apresento vários sites que venho conhecendo contendo idéias, novidades, que poderiam iluminar nossas cabeças e, quem sabe, até nos inspirar a inventar algo realmente inovador e interessante:

  • http://makeblock.com/en - Makeblock blocos para montar dispositivos embarcados
  • http://www.logicamecatronica.com/?p=808 Projetos open source de braços roboticos de baixo custo feitos por impressoras 3D
  • https://github.com/Jeija/esp8266-smartwatch Interessantíssimo relógio de pulso Smart baseado no ESP8266
  • http://www.oomi.com/ Automação residencial
  • http://www.dashbon.com/ Fone de ouvido que possui em sua alça monitores com resolução de 1366-por-768 pixels para cada olho
  • http://www.aivvy.com/ Fones de ouvido que cria o perfil para musicas e atualiza enquanto é carregado
  • https://cagebot.com/ Kit de robotic reforçado e inovador
  • http://molt.kr/ M Stick Bastão de luz inteligente com bluetooth renderizando até palavras, iluminando e sinalizando
  • https://prota.info/ Automação residencial muito prático com microbots que apertam botões
  • http://www.ekkoaudio.com/ Conecte audio para varias pessoas sem fio em qualquer lugar
  • http://www.poweruptoys.com/ Aviões de papel com camera dirigivel por controle remoto
  • http://www.smartnora.com/ Infla travesseiros evitando roncar durante o sono
  • https://gest.co/ Sensores de movimentos do dedos das mãos para automação ou jogos
  • http://www.skybuds.com/ Minusculos phones de ouvido bluetooth que se carregam em capa de celular que também é bateria externa
  • http://vufine.com/ Mini monitor display acoplavel aos óculos
  • http://skreens.com/ Divida seu monitor para mostrar várias fontes de vídeo
  • http://makerarm.com/ Incrível CNC que é impressora 3D, grava, desenha, corta e monta circuitos
  • http://www.imerciv.com/ Clip que avisa proximidade de objetos ou obstáculos para cegos através de vibração
  • https://shop.soloshot.com/ Camera que segue a pessoa automaticamente

Desenvolvimento

Plataformas de Desenvolvimento e frameworks

  • https://code.org/ Qualquer um é capaz de codificar com esta plataforma
  • http://appinventor.mit.edu/explore/ MIT App Inventor codifique através de objetos gráficos em seu Browser
  • https://www.dreamfactory.com/ Transforma quaisquer bancos de dados em plataforma de APIs REST
  • http://www.lua.org/ Linguagem poderosa, rápida, leve, robusta e confiável
  • https://nodejs.org/en/ Node.js é um ambiente para executar javascript no Chrome leve e eficiente capaz de realizar acessos I/O não bloqueantes orientados por eventos
  • http://nodemcu.com/ Firmware capaz de executar Lua Script no estilo do Node.js em um dispositivo ESP8266
  • http://www.gwtproject.org/ Google Web Toolkit Kit para gerar aplicativos usados nos principais serviços do Google
  • https://eclipse.org/che/ Próxima geração do Eclipse, baseado nos ambientes Docker
  • https://www.processing.org/ Sketch as part of Sketchbook for development of Graphical 2D, 3D apps able to run on Win, Linux and Mac. Its IDE is able to simulate apps on the fly.
  • https://www.docker.com/ Plataforma aberta para aplicações distribuídas
  • https://jquery.com/ Framework de desenvolvimento RAD Exemplos: http://respostas.guj.com.br/noticias/434-jqueryui-exemplos-praticos-dessa-biblioteca-
  • https://eclipse.org/scout/ Projeto do Eclipse que gera aplicativo multiplataforma rápidamente e fácil de aprender
  • http://jfxtras.org/ Bibliotecas com componentes incríveis para JavaFX, gauges, botões, listas, tabelas, etc
  • https://developers.google.com/maps/documentation/javascript/?hl=pt-br Google Maps API
  • https://ifttt.com/ Crie scripts para automatizar a troca de informação de seus aplicativos e do seu projeto IOT
  • https://zapier.com/ Outra ferramenta para automatizar a troca de informação de seus aplicativos e do seu projeto IOT
  • https://thingspeak.com/ Ferramenta que mostra graficos sobre os dados que voce envia pelo Arduino
  • http://www.pushingbox.com/ Mais outra ferramenta para automatizar a troca de informação de seus aplicativos e do seu projeto IOT
  • http://www.open-electronics.org/how-send-data-from-arduino-to-google-docs-spreadsheet/ dica de envio de dados direto pro Google Forms
  • https://www.patreon.com/jantje?ty=h Plugin do Eclipse CDT para se tornar IDE do Arduino, ESP8266 e outros modulos
  • https://marketplace.eclipse.org/content/arduino-c-ide Plugin do Eclipse CDT para o Arduino do próprio CDT
  • https://learn.sparkfun.com/tutorials Tutoriais SparkFun

Treinamento

Treinamentos e Cursos:

  • http://www.globalcode.com.br/ Treinamentos e cursos excelentes para JAVA e IoT - Cursos presenciais e online
  • http://www.devmedia.com.br/cursos/ Cursos oferecidos pela Devmedia pagando assinatura mensal em vez de pagar cada curso
  • http://www.softblue.com.br/ Cursos online oferecendo certificados e ótimas formas de pagamento

Apreciamos comentários e sugestões que contribuam com crescimento ou melhoria nos tópicos dos tutoriais. Agradecemos a sua participação neste site.

Muito obrigado,

'Labirito Master