Primeiros Passos com o Netduino

Page 1

Primeiros Passos com o Netduino Chris Walker

Novatec


Authorized Portuguese translation of the English edition of titled Getting Started with Netduino, First Edition ISBN 9781449302450 © 2012 Secret Labs LLC. This translation is published and sold by permission of O'Reilly Media, Inc., the owner of all rights to publish and sell the same. Tradução em português autorizada da edição em inglês da obra Getting Started with Netduino, First Edition ISBN 9781449302450 © 2012 Secret Labs LLC. Esta tradução é publicada e vendida com a permissão da O'Reilly Media, Inc., detentora de todos os direitos para publicação e venda desta obra. © Novatec Editora Ltda. 2012. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem prévia autorização, por escrito, do autor e da Editora. Editor: Rubens Prates Tradução: Rafael Zanolli Revisão gramatical: Débora Facin Editoração eletrônica: Carolina Kuwabata ISBN: 978-85-7522-305-5 Histórico de impressões: Maio/2012 Primeira edição Novatec Editora Ltda. Rua Luís Antônio dos Santos 110 02460-000 – São Paulo, SP – Brasil Tel.: +55 11 2959-6529 Fax: +55 11 2950-8869 E-mail: novatec@novatec.com.br Site: www.novatec.com.br Twitter: twitter.com/novateceditora Facebook: facebook.com/novatec LinkedIn: linkedin.com/in/novatec

Dados

Internacionais de Catalogação na Publicação (Câmara Brasileira do Livro, SP, Brasil) Walker, Chris Primeiros passos com o Netduino / Chris Walker ; [tradução Rafel Zanolli]. -- São Paulo : Novatec Editora ; Sebastopol, CA : O'Reilly, 2012. Título original: Getting started with Netduino. ISBN 978-85-7522-305-5 1. Eletrônicos - Processamento de dados 2. Engenharia de protótipos 3. Microsoft NET Framework 4. Microsoft Visual BASIC 5. Netduino (Linguagem de computador) 6. Netduino - Plataforma 7. Sistemas operacionais (Computadores) I. Título.

12-06179

CDD-005.268 Índices para catálogo sistemático: 1. Netduino : Linguagem de computador : Processamento de dados 005.268

(CIP)


capítulo 1

Apresentando o Netduino

O Netduino é uma plataforma de eletrônica. Utilizando o Netduino, hobbistas e programadores podem criar projetos de eletrônica (e projetos de arte com base em eletrônica) com facilidade. Várias placas Netduino estão disponíveis, as quais eu explorarei em detalhes mais adiante neste capítulo. Aplicativos Netduino utilizam o .NET Micro Framework. Esse framework de programação da Microsoft é fácil de começar a usar; para iniciantes, escrever código .NET é tão fácil como criar simples animações JavaScript para uma página web. E para os milhões de programadores que já escrevem código .NET, o .NET Micro Framework fornece um conjunto incrivelmente poderoso de recursos (como eventos, threading e depuração linha a linha). Um código tradicional de microcontrolador consiste em um loop fixo no qual o código verifica as condições e realiza ações com base nessas condições. Em contraste, o .NET Micro Framework permite que você quebre as tarefas de seus aplicativos em rotinas mais simples. Você pode executar essas rotinas depois de um período específico de tempo ou em resposta a ações do hardware. Você pode até realizar multitarefas! Esses recursos permitem que você construa aplicativos muito sofisticados utilizando um código fácil de entender. A Microsoft fornece ferramentas de software gratuitas para criação de aplicativos Netduino. Tudo que você precisa para dar seus primeiros passos é de um Netduino, um computador e sua 19


20

Primeiros Passos com o Netduino

imaginação. À medida que você progride pelos projetos deste livro, apresentarei shields de expansão e componentes elétricos que você pode adicionar ao seu Netduino para criar projetos maiores.

DICA: se você utiliza um computador Mac ou Linux, o projeto Mono fornece um conjunto alternativo de ferramentas de programação .NET. Ainda que os exemplos deste livro utilizem ferramentas do Visual Studio Express da Microsoft, o apêndice B explica como você pode programar um Netduino utilizando o Mono em um computador Mac ou Linux.

Por fim, a comunidade do Netduino é formada por dezenas de milhares de experimentadores, muitos dos quais compartilham seus próprios projetos e ajudam uns aos outros nos fóruns da comunidade do Netduino (http://forums.netduino.com). À medida que você dá seus primeiros passos com o Netduino, eu o convido a se juntar a essa crescente comunidade.

DICA: o Netduino também é de fonte aberta. Isso significa que o código-fonte para o firmware do Netduino é fornecido (mediante licenças de código aberto Apache 2.0 e BSD). Os arquivos de projeto do hardware – incluindo os arquivos de esquemas e de layout de engenharia – também são fornecidos (mediante uma licença Creative Commons-Attribution). Muitos engenheiros desenvolverão protótipos de novos produtos de eletrônica utilizando o Netduino – e depois criarão projetos de hardware personalizados com base nesses arquivos de código aberto. E muitos programadores de software acrescentarão novos elementos ao código-fonte para criar novos recursos para o Netduino – e depois compartilharão essas melhorias com seus amigos.

Conheça a família Netduino A família Netduino consiste em três placas eletrônicas: Netduino, Netduino Plus e Netduino Mini.


Capítulo 1 ■ Apresentando o Netduino

21

A placa Netduino (Figura 1.1) é a mais básica da família Netduino.

Figura 1.1 – Netduino.

A placa Netduino é formada de vários componentes e conectores eletrônicos, mais notavelmente:

Microcontrolador ARM Atmel Esse é o processador principal, e ele contém o espaço de armazenamento de código e a RAM utilizada por seu aplicativo Netduino. Os pinos do microcontrolador estão conectados aos pinos azuis de cabeçalho, permitindo que seu aplicativo Netduino conecte-se aos componentes externos e aos shields de expansão.

6 cabeçalhos de entrada analógica • Você pode conectar sensores a esses cabeçalhos (de luz, temperatura, movimento, pressão etc.). • Cabeçalhos de entrada analógica também podem operar em modo de E/S (entrada/saída) digital (explicado a seguir).


22

Primeiros Passos com o Netduino

14 cabeçalhos de entrada/saída digital • Você pode conectar entradas de ligado/desligado a esses cabeçalhos (interruptores, botões de pressão e sensores de ligado/desligado). • Você pode conectar saídas de ligado/desligado a esses cabeçalhos (LEDs, interruptor de relé etc.). • Vários cabeçalhos de E/S digital podem se comunicar utilizando protocolos-padrão de comunicação: I2C, SPI e UART (serial). • Alguns cabeçalhos de E/S digital podem pulsar eletricidade para alterar a velocidade de motores, controlar a intensidade de LEDs e mais.

Botão de pressão • Por padrão, o botão de pressão reinicia o Netduino e seu aplicativo. Isso pode ser útil para reiniciar a sequência de ações efetuadas por seu aplicativo. • De modo alternativo, o botão de pressão pode ser utilizado como uma entrada: quando pressionado, seu aplicativo pode então efetuar várias ações. • Por fim, ao segurar o botão de pressão enquanto liga seu Netduino, você colocará temporariamente o microcontrolador em modo de programação (para atualizações de firmware).

LEDs de energia e usuário • O LED branco de energia fica iluminado enquanto o Netduino está ligado. • O LED azul de usuário acende brevemente quando o Netduino é ligado pela primeira vez e depois apaga para informar-lhe que a placa foi reiniciada. Você pode acender e apagar esse LED em seu aplicativo Netduino.


Capítulo 1 ■ Apresentando o Netduino

23

Conectores de alimentação • O Netduino pode ser alimentado por uma fonte AC para DC com um plugue de 5,5 mm (externo) / 2,1 mm (interno). Tensões permitidas estão entre 7,5 V e 12 V, e a polaridade do plugue deve ser polo central positivo. • Para ajudar a protegê-lo, caso você acidentalmente conecte um adaptador “centro negativo” em vez de um “centro positivo”, a placa tem um fusível de proteção de tensão inversa. Esse fusível autorreiniciará assim que resfriar.

Circuitos de regulação de alimentação Reguladores de alimentação onboard convertem as tensões recebidas nos 3,3 V necessários para o controlador. Eles também fornecem alimentação para os cabeçalhos dos pinos de 5 V e 3,3 V, para uso por componentes externos e shields de expansão.

Porta MicroUSB • A porta MicroUSB conecta o Netduino à porta USB de seu computador. • Você também pode fornecer a alimentação para o Netduino a partir de seu computador (ou de uma fonte USB) pela porta MicroUSB. • Por padrão, a conexão MicroUSB é utilizada para implantar aplicativos em seu Netduino e depurar esses aplicativos interativamente. • De modo alternativo, a conexão MicroUSB pode ser utilizada para transformar seu Netduino em um dispositivo USB (teclado, mouse, dispositivo de comunicação bidirecional etc.).

Erase pad • O erase pad é um pequeno quadrado dourado localizado diretamente abaixo do pino digital 0.


24

Primeiros Passos com o Netduino

• Conectando um fio entre o cabeçalho de 3,3 V e o erase pad, você apagará completamente o seu Netduino. O Netduino está projetado para facilitar o trabalho de programadores e o erase pad deixa que você comece do zero ou que recondicione seu Netduino como uma placa de desenvolvimento com microcontrolador ARM. • Apagando seu Netduino você pode instalar sistemas operacionais alternativos, escrever código C++ nativo em seu Netduino, atualizar o firmware do Netduino a partir do zero e assim por diante. O Netduino Plus (Figura 1.2) é uma versão aprimorada do Netduino, acrescentando recursos de armazenamento e rede.

Figura 1.2 – Netduino Plus.

A placa Netduino Plus acrescenta os seguintes componentes:

Conector Ethernet • O conector Ethernet permite que seu Netduino Plus conecte-se com a internet por meio de um roteador de rede. • Depois de conectar seu Netduino Plus à internet, você pode postar dados de sensores no Twitter, interagir com um aplicativo de telefone móvel, comunicar-se com Netduinos a distância etc.


Capítulo 1 ■ Apresentando o Netduino

25

Slot MicroSD • O slot MicroSD permite que você adicione armazenamento persistente a seu aplicativo Netduino. Você pode registrar dados do ambiente, armazenar páginas web (para servir para a internet) e muito mais. • Usuários avançados podem armazenar código compilado em cartões MicroSD para execução pelo Netduino Plus ou por um Netduino com um add-on de leitor de cartão. O Netduino Mini (Figura 1.3) é basicamente uma versão do Netduino pequenina, simplificada e compatível com protoboards:

Figura 1.3 – Netduino Mini.

• O Netduino Mini tem 4,65 cm2. • O Netduino Mini tem quatro pinos analógicos, em vez de seis, e dois pinos digitais a menos que o Netduino. • O Netduino Mini é projetado para variações industriais de temperatura (-40° C a 85° C). • O Netduino Mini é programado por meio de um cabo serial (RS232 ou TTL) em vez de USB.


26

Primeiros Passos com o Netduino

De que você precisa? Para construir os projetos dos capítulos a seguir, você precisará de um Netduino ou de um Netduino Plus. Se você tem um Netduino Mini, a maioria desses exemplos funcionará – mas você precisará ajustar os números dos pinos analógicos e digitais em seu código para refletir o fator de forma do Netduino Mini.

NOTA: por favor, note que o capítulo 8 explorará aplicativos conectados à internet utilizando o Netduino Plus (que tem um conector Ethernet embutido). Também é possível adicionar componentes a um Netduino “regular” ou a um Netduino Mini e se conectar à internet; consulte a comunidade online para orientação sobre como fazer isso. Você aprenderá sobre alguns elementos fundamentais de programação à medida que avança pelos capítulos deste livro. Programadores experientes podem pular esses parágrafos se assim quiserem. Minha meta é garantir que todos os leitores adquiram o conhecimento necessário para construir com sucesso seus próprios projetos de eletrônica.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.