[MUSICA]
Oi. Sou Patrick, sou de Sydney
e sou desenvolvedor web.
Estive pesquisando sobre como usar
JavaScript para controlar dispositivos
Como Arduinos, Elite Emotion, Ninja Blocks
e espero ver isso em breve, Pebble Watch.
Hoje eu irei mostrar sobre
o básico controlador Arduino
usando Node.
Nós iremos cobrir a conexão com o
computador, realizando a comunicação com o
Arduino, e esperando, bem no final,
fazer uma lâmpada de LED piscar.
Eu irei aderir ao básico absoluto aqui,
então nós
não iremos fazer nada
avançado, eu espero.
nos próximos tutoriais, falarei sobre isso
e será um pouco complicado.
Mas, para este, nós iremos mostrar
como dar o pontapé inicial.
Então, vamos lá.
O que é Arduino?
muitas pessoas leram ou já ouviram
esta palavra pela internet,
mencionada, mas nem todos viram
um em ação, então é isto.
Ela é uma placa micro controlada que
é open source e que basicamente você pode
controlar eletrônicos em uma plataforma
que você um pode construir ou consertar.
As pessoas no Arduino estão loucas para
ter seu código aberto, o que
significa que vocêpode fazer sua própria
Placa Arduino que realmente querem.
Este aqui, em particular, é a
Arduino Uno.
É uma uma variedade, de diferentes modelos
que pessoas loucas por Arduino tem
realizado.
Você pode ter muitos componentes
conectado a ele, também, como a luz LED
lâmpadas, sensores,
e até mesmo shields, que são tipos de
coisas que você
coloca no Arduinos para adicionar mais
funcionalidade.
Este em particular é um MIDI, shield
que tem
a capacidade de reproduzir sons, como um
Teclado MIDI.
O que é Node.js?
Node.js é uma plataforma que usa
JavaScripts, uma linguagem de script mais
comumente usado
em páginas da web, desde que você não
faça aplicações de rede, como servidores.
Hoje o usaremos, para executar um servidor
web que vou falar com nosso Aduino.
Se você nunca tiver usado Node.js
antes, comece
indo para Node.js.org, que eu estou
mostrando aqui na tela.
Clique no botão Instalar e o
tenha instalado
depois execute-o no seu computador, de
modo que você vai
seja capaz de continuar e seguir junto com
o código de exemplo que estarei colocando.
[AUDIO EM BRANCO]
Então, por que Node.js e Arduinos?
Por que ligar as duas tecnologias juntas?
Bem, um dos pontos fortes do JavaScript
é que existem muito poucas APIs
Além do que, você pode juntar diferentes
formas de fazer as idéias ganharem vida.
Quer desenvolver um robô que leva
instruções de seus seguidores no Twitter,
ou uma
máquina de café que faz um tipo diferente
de café, dependendo do clima
lá fora?
Se você quiser adicionar uma ação como um
dispositivo de entrada
ou alimentação em dados de seu Jawbone
ou produtos de fitness FitBit.
As possibilidades estarão sempre.
E JavaScript está se tornando uma ponte
fácil de usar entre as tecnologias,
porque nós temos um monte de APIs
para acessar.
E o que é Johnny-Five?
Johnny-Five, é uma dessas APIs abertas
que faz com que tais JavaScript
seja uma linguagem valiosa para desenvolver
esse tipo de coisa.
Ela permite que você controle seu Arduino
utilizando
funções muito semelhantes às que você
gostaria de usar
se você tivesse programando-a apenas
usando a Plataforma Arduino que vem com o
próprio Arduino.
Estaremos fazendo várias dessas coisas no
tutorial que ele está explicando aqui,
portanto não se preocupe muito.
Mas você pode ver, há muitas coisas legais
que as pessoas já fazem
com isso.
Nodebot Kinnect sem fio, controlado por
braço de Robô e Running Man LCD.
Então, você sabe, as possibilidades
ficarão emocionante.
Ok, para começar vamos precisar conectar
nosso Arduino ao computador.
Então, vamos fazer isso conectando o nosso
Arduino em uma porta USB.
Ele serve como a fonte para o
Arduino, e a
maneira de fazer upload de software para o
nosso Arduino.
Como você pode ver, uma vez que você
o liga, você
vai ver que as luzes piscam, o que é um
bom sinal.
Nesta demostração de hoje, vou estar fazendo um
exemplo básico de como ligar e desligar
a luz LED.
Eu já coloquei o jumper onde
deveriam estar.
Então, se precisa fazer uma pausa, que este seja
capaz de acompanhar, sinta-se livre para
pause-o agora, e coloque o jumper,
da maneira que eu tenho feito.
Conectar-se o Arduino é muito
simples.
Conecte o verde aqui, ao pino 13
no seu Arduino.
Em seguida, conecte o vermelho no
pino 5 volts
E, finalmente, conecte o preto,
no pino terra.
Realmente não se preocupe com as cores,
você pode
usar fio da cor que você preferir.
Agora que está tudo feito, estamos prontos
para ir para a parte de software do
tutorial com o código que tenho que
executar e onde se comunicar com o Arduino.
O Aplicativo Node é extremamente simples.
Nós só temos dois arquivos, um arquivo índice
JavaScript e um arquivo pacote JSON.
Se para você o pacote de arquivos Jason
é novo, o usaremos para dar mais detalhes
sobre o aplicativo, e outros módulos Node
que são necessários para o aplicativo.
Pra começar, eu vou passar por cima deste
pacote de
arquivos JSON, e mostrar-lhe o que
está acontecendo.
Então, aqui nós temos que o nome de
nosso aplicativo é, neste caso, Node em
Johnny-Five.
Pode dar um nome que você preferir,
mas mantenha-o todo com uma só palavra.
Ele parecem não gostar espaços.
Vai começar a reclamar de você, assim
fique com apenas uma palavra.
Nós temos o número de uma versão.
Mais uma vez, você pode usar qualquer
número de versão
que você preferir, realmente, para simples
aplicações básicas de teste.
Vou chamá-lo de 0.0.1, porque este
aplicativo é muito,
de estágios iniciais e não vai ter
muito o que fazer.
Então, estou deixando-o em uma versão
mais recente.
Então a coisa mais importante, que vai
definitivamente evitar
nossa aplicação trabalhar com Arduinos é
nossa seção de dependência aqui.
Este é o lugar onde nós dizemos o que outros módulos
precisam de,
executar em nosso aplicativo para que Node
funcione.
Então, a gente só precisa de Johnny-Five,
que é o módulo eu estava mostrando antes.
E esta aqui é a versão.
Então, neste caso, queremos a versão mais recente
Johnny-Five desse módulo.
Basicamente, estamos fazendo coisas
simples, tornarem-se apenas o básico
uma luz LED acesa e apagada, não é
provável que altere.
Então, vamos supor que, em todas as
versões futura do
Johnny-Five, vai ser compatível com o que
nós vamos estar fazendo aqui.
Assim, não precisa ser especificamente,
de qual versão estamos esperando.
Agora vamos para o índice do arquivo
JavaScript
Nossos índices do arquivo JavaScript tém todas
as funcionalidades, apesar do
aplicativo node
Então, essa é praticamente a nossa nota
do aplicativo
em 19 linhas, das quais duas são Console
toras.
Assim, muito, pequeno aplicativo aqui.
Eu vou passar isso passo a passo e
explicar o que tudo é e porque é lá.
Primeiramente, temos nossa variável cinco.
Nossa variável cinco exige apenas o
Módulo Johnny-Five.
Mais uma vez, a razão de temos isso
aqui, bem como no arquivo do pacote Jason,
é que está atribuindo a todos
objetos diferentes e funcionalidade.
Isso é o que ganhamos com o módulo
Johnny-Five para esta variável cinco,
para que possamos acessá-lo durante todo
a aplicativo node.
Um exemplo disso é a nossa próxima
linha aqui, qual é placa.
Nossa variável a bordo, está criando
uma nova placa de objeto
que faz parte do módulo Johnny-Five
Então, nós estamos olhando para o Johnny-Five
o objeto que temos aqui é necessário, e nós estamos pegando
o objeto da placa.
O que é toda a parte do módulo Johnny-Five.
Nós não temos que nos preocuparmos com nada disso.
Não temos que criar nada disso.
Tudo está lá
Agradecemos aos gênios que vieram
antes de nós.
Em seguida, presentaremos um pouco mais de
variáveis que usaremos mais tarde,
por isso estamos dizendo a variável LED, e
a variável de estado de alternância.
Explicarei isso um pouco mais tarde.
[ÁUDIO EM BRANCO]
Para começar, olha isso aqui, na verdade.
Este é um passo importante, porque este é
o que
virá em primeiro lugar, quando executamos
nosso aplicativo.
É só um registro do console dizendo que está
esperando o dispositivo para conectar.
O que isso significa é que, que aparecerá
primeiro, assim que o aplicativo conhecido
é iniciado apenas para nos informar que o
novo aplicativo está, em execução.
Mas nós não sabemos ainda se o
nosso Arduino
conectou-se, e se podemos nos comunicar
com ele.
O que acontece, é, usando esta transmissão
variável aqui que criamos.
O que é uma placa-objeto Johnny Five.
Afirmamos, estar pronto, o que significa
que, quando temos
o caso pronto excluído do diretório,
significa que.
A placa é muito rápida, envia qualquer
tipo de comandos e pedidos para ele.
Nós ativamos esta função aqui, e isso
começa com uma placa de registo do console
dizendo estar pronto.
Isso só vamos saber, se formos
acompanhando o console enquanto
nosso aplicativo node está executando,
e que a placa está pronta para receber.
Nosso pedido.
É também uma boa maneira de saber, ou não
se o console está conectado corretamente.
Você está fazendo uma placa.
Em seguida, usamos essa variável LED
que nós declarado anteriormente, e
criamos um novo LED, mais uma vez parte do
módulo Johnny-Five.
Nós estamos, apenas deixando-o saber que
temos um LED
No pino 13, que é o que havíamos plugados
anteriormente.
Então chegamos ao bit JavaScript que
é, estamos definindo um intervalo usando a
função JavaScript que muitos de vocês
podem ter
usado se vocês são gurus de JavaScript.
O intervalo definido significa que estamos
utilizando esta função aqui, alternar LED.
A cada 200 milissegundos, e você pode
jogar por aí com
esse número se você preferir mais tarde,
apenas por experiência, e mudar
a forma como muitas vezes o LED vai
alternar ligado e desligado,
mas vamos dizer, para executar esta
função a cada 200 milissegundos.
O que não é bem essa função, a
função aqui tem.
Três linhas e uma linha de vida que é
apenas para a leitura do usuário.
Basicamente, usar essa variável aqui, no
estado de alternância,
que montamos primeiramente para ser falso.
E em cada alternância de tempo que é executado, o LED vai mudar
o valor do estado de
alternância de verdadeiro para falso ou de
falso para verdadeiro.
Então, apenas mudamos o
oposto do que se tratava.
Se o estado total é verdade, ligamos nosso
LED emissor de luz, se não, o desligamos.
Então, basicamente, mantemos a alternância
estado liga e desliga, liga e desliga,
por sua vez, transformando o LED
liga e desliga e ligado e desligado.
[AUDIO EM BRANCO]
Você tem
Você está seguindo agora este tipo e,
visualizando a execução da sunção em sua
cabeça.
Se você vai perceber que não há nada que
desligue
o LED, por isso vai continuar teoricamente
sempre girando continuamente
ligando e desligando, ligando e desligando,
até que enfim
desconecte o Arduino ou que desative esse
aplicativo node.
E eu vou mostrar-lhe como fazer isso.
Teoricamente, você poderia incluir algumas
outras funcionalidades, no
erro para desligar o, Intel, limpando o
Intel se você
preferir, mas neste tutorial mantem as
coisas simples,
nós apenas vamos dar o básico que eu estou
mostrando pra vocês.
Isto é como você pode controlar o Arduino
do node, e
você pode adicionar tanta funcionalidade
quanto você preferir.
Além de tudo isso e ter um pouco de diversão.
Agora que temos esses dois ficheiros
e pronto para rodar o aplicativo Node, nós
temos que ter certeza que essas dependências que
falamos, estão lá e prontos para ser executado.
Então, o que eu tenho feito é abrir um
túnel, e eu tenho ido para
a mesma pasta que nós colocamos os dois
arquivos para provar isso para você.
Eu só vou te mostrar lá.
Então, você tem o arquivo JavaScript índice,
e seu arquivo de pacote JSON.
Então
Como você costuma executar um aplicativo
node é apenas index.js node.
E nós vamos tentar executá-lo.
E o que vemos aqui é o que diz,
não consegue encontrar Módulo Johnny-Five.
O que é justo.
Temos dito que no arquivo Índice do JavaScript
Que não vai ter um módulo node chamado
Johnny-Five e ele foi e procurou por
ele e não pode encontrar e agora está muito chateado
por nós termos mentido para ele.
Então, precisamos tê-lo instalado.
Para instalá-lo, você pode usar um incrível
gerenciador de pacotes chamado MPM.
MPM apenas executa seu package.json através do
arquivo
e instala todas as dependências que você
tem listado.
Se você não tem MPM em sua máquina apenas
fazer uma
pesquisa rápida no Google para MPM, e instale-o
no seu computador.
É um processo muito simples, por isso não vou
citá-lo aqui.
Então, uma vez que tem o MPM instalado,
você digita no espaço instalar do MPM.
E, ele vai procurar o arquivo através de
nosso pacote JSON.
Também tem um bom punhado de avisos,
dizendo que
não temos alguns daqueles que pudéssemos
ter.
Descrição eu acho e alguns outros.
Então, basicamente, é passado e
instalado
nossos módulos aqui, então temos todos os
módulos Johnny-cinco, e todas essas outras
coisas
que considera necessário para executar o
aplicativo.
Então, agora eu vou
limpar isto, mas antes de executar o nosso
atual.
O Aplicativo que vamos precisar para
montar Arduino, de modo
que seja capaz de receber a comunicação
do nosso aplicaivo Arduino.
Para obter essa comunicação de trabalho
entre nosso Arduino e o computador,
só precisa carregar um pequeno código para
nosso Arduino.
Arduino chama essas partes de esboços de código.
Que você carrega e, em seguida, instala no
Arduino e, em seguida, o Arduino sabe
o que precisa fazer, no nosso caso nós não
precisamos do Arduino para fazer muito.
A maioria da funcionalidade está no Node,
tudo o que precisamos fazer é instalar um
código para garantir que ele possa entender
como se comunicar com o computador.
Em primeiro lugar, antes de instalá-lo,
se você não usou o software Arduino
antes, verifique que a porta serial
está apontando para a porta USB correta.
Você pode precisar fazer uma tentativa
e errar com
isto se você não tiver certeza qual
porta USB é a correta.
Mas no meu caso, foi este modem USB TTY.
Faça uma tentativa de erro para verificar
quais vão funcionar
se você está tendo problemas com
o carregamento do código do seu Arduino.
Definitivamente verifique a configuração.
Eu também tenho o console criado para ser configurado
para qualquer placa Arduino
[Inaudível].
Em seguida carregue o sketch.
Nós estamos indo para o arquivo, exemplos.
E então você vai ter isso também em sua
Fermata, queremos que o padrão Fermata,
esboce aqui, e
isso como se diz aqui é um protocolo genérico
para se comunicar com os micro-controladores,
do software no computador.
Isso é conveniente, porque é exatamente
isso o que queremos fazer.
Queremos comunicar a partir de suas anotações
do software
para o nosso micro-controlador, que é o
Arduino.
Assim, para carregar o nosso Arduino,
Certifique-se que você de
que ainda esteja conectado ao computador,
e clique em upload.
Ele irá compilar o sketch.
Vai enviá-lo para o Arduino.
E, em poucos segundos deve ser
concluído.
Aí vamos nós.
Então, é feito o upload, o que significa
agora você que tem
o software padrão Fermata ou um
esboço do padrão Fermata.
No Arduino, o que significa que estamos
prontos agora, para passar para o
próximo e excitante forma de executar o
código Note e se comunicar com o Arduino.
Temos a nossa configuração dois arquivos.
Nosso índice de JavaScript que tem todo o
código para o nosso aplicativo Node.
Nós instalamos todas as suas dependências,
utilizando MPM.
Nós também temos nosso Arduino conectado e
executando o padrão Fermata, código do esboço;
que significa que
agora está pronto para aceitar todos os comandos
que virá a ele do nosso computador.
Então, tudo o que resta estar no nosso
terminal
e digite no Node index.js, e quando
executamos isto,
nós temos o nosso, à espera do dispositivo
para conectar mensagem, juntamente
com algumas mensagens que vêm do
Módulo Johnny-Five.
Encontrado nossa porta serial, que é a
porta USB que temos o Arduino
conectado.
O seu um pode ser muito diferente disso.
Mas realmente não importa.
A coisa mais importante, é que o nosso
registo de console
que montamos, que diz, placa pronta,
apareceu.
E se você ligar a sua luz LED de sua face,
você vai ver que ele não está piscando.
Que maravilha.
Isso significa que o código está funcionando.
Estamos enviando comandos para o 13º
pino, dizendo-lhe
para que uma luz LED seja ligado e desligado.
E por isso está ligando e desligando,
e assim por ligar e desligar.
Assim como nós pedimos pra ele.
A única questão importante é como você
consegue desligar?
Como é que você o pára executando
constantemente?
Esta anotação do aplicativo.
Se voltar para o terminal aqui, o que você
tem que fazer é apenas pressione Ctrl C e
depois Ctrl C novamente e isso vai fechar a
placa e ele vai parar de piscar a luz.
Se você temporizar corretamente,
a luz será apagada.
Se o temporizar de forma um pouco diferente,
a luz vai ficar acesa.
E isso é realmente bom.
Não é grande coisa.
Se você quiser desligá-lo completamente,
você pode simplesmente desconectar o
USB do computador, e ele vai desligar
toda a força do seu Arduino.
Isso não vai prejudicá-lo de forma alguma.
É apenas uma maneira rápida de fazê-lo.
Pare de fazer o que estava fazendo que
você realmente não quer que ele faça.
E isso, meus amigos, é como você virar um
Diodo emissor de luz ligando e desligando,
ligando e desligando em um loop infinito usando
Node Johnny-Five e Arduino.
Se você seguiu junto, agora você deve ter
uma
luz LED, inclinando-se para o
aplicativo node como correto.
Bom trabalho
Isto é o básico
Há muito mais a fazer a partir daqui.
Se você tiver alguma dúvida, ou se há
tudo o que
eu esqueci, não hesite em entrar em contato
comigo.
Mais uma vez, meu nome é Patrick Catanzariti.
Estou no Twitter como thatpatrickguy e tenho
também um site Patcat.me.
Então, não hesite em entrar em contato, se
você fizer algo muito legal com Arduinos
acompanhado deste tutorial,
definitivamente entre
em contato, nós adoraríamos vê-lo.
Obrigado por tomar seu tempo, e eu
espero que você tenha aprendido algo novo.
Até logo.