Arduino e CylonJS

Olá, meus queridos caiçaras! Hoje é quarta-feira e gostaria de compartilhar com vocês, uma ferramenta bem interessante, que vale a pena o aprendizado. Já ouviu falar de protocolo Firmata? Sabia que é possível programar seu Arduíno em outras linguagens, além do Wiring? Conheça o CylonJS…

Você conhece o CylonJS

Basicamente, ele é um framework javascript, que suporta 43 plataformas diferentes como Arduíno, Intel Edson,etc. Você pode trabalhar com leds, botões, sensores com a linguagem javascript, utilizando o protocolo de comunicação Firmata.

Como instalar o CylonJS?

Primeiramente, você deve ter o NodeJS instalado em seu computador. Para Windows, a instalação é bastante simples, apenas baixe o executável e instale-o. Além disso, no próprio site do NodeJS  tem as instruções para instalação no MacOS e Linux.

Após isso, abra o prompt de comando e instale o CylonJS e alguns módulos para poder se comunicar com o seu Arduíno:

$ npm install cyloncylon-firmatacylon-gpio cylon-i2c

Finalizando a instalação, faça o seguinte teste: digite o script.js abaixo e salve-o no local onde instalou o CylonJS.

Após isso, no prompt de comando executa o comando node <nomedoscript.js>, para exemplificar:

Como mencionado, além de funcionar no Windows, também funciona no Linux (no caso estou utilizando o ElementaryOS):

Só não vai dar para testar com o MacOS, pois não tenho o mesmo(sou pobre rs) :(.

Agora que você instalou e testou o CylonJS, deve estar se perguntando: por que utilizar esse framework?Pois bem…

Porque utilizar CylonJS

Graças ao protocolo Firmata, conseguimos programar o Arduíno com outras linguagens de programação, como C# e, no nosso caso, em Javascript. Particularmente, eu não uso o protocolo Firmata e nem javascript, mas creio que todo aprendizado é bem vindo e, pra quem tem afinidade com essa linguagem e quiser experimentar, em conjunto com o Arduíno ou outras das plataformas, que são suportadas por tal framework. Não citarei as vantagens e desvantagens do protocolo, pois a intenção aqui é só mostrar uma aplicação simples, tudo bem?

Alguns preparativos. ..

A maneira mais fácil de exemplificar, o uso de CylonJS com o Arduíno, é com o exemplo mais simples, o blink led. Para isso, precisaremos apenas do seu Arduino e um cabo USB, pois utilizaremos o led embutido no mesmo.

Antes de tudo, é necessário preparar seu Arduíno para comunicar com o CylonJS. Como esse protocolo é comumente utilizado, existe a biblioteca padrão e o sketch pronto para enviar ao seu Arduíno.Para isso, abra a IDE e vá na aba File >Examples>Firmata>StandardFirmata e, por fim, clique em Upload. Aguarde a IDE terminar de carregar o arquivo para sua placa e pronto, agora o Arduíno está pronto.

Agora que fez o upload do Firmata, será necessário o GortIO que terá a responsabilidade de fazer o upload do script para a placa.

Com o Gort instalado e seu Arduíno devidamente conectado no computador, execute o seguinte comando:

$ gort scan serial

Isso demonstrará a porta serial, onde seu Arduíno estará conectado.Após isso, execute o seguinte comando:

$ gort arduino install

Ao finalizar esse comando, digite o seguinte comando, em que o último parâmetro é a porta onde seu Arduíno está conectado:

$ gort arduino upload firmata /dev/ttyACM0

No caso do Windows a porta é <COMX>, defina o número da COM (x foi apenas um exemplo).

Com tudo dando certo, o processo ocorrerá conforme a imagem abaixo:

Agora, finalmente vamos piscar o led rs.

Blink LED

O script, que vou utilizar,é o mesmo que está no exemplo do site do Cylonjs. Inclusive, as instruções de instalação do Cylon e do Gort estão disponíveis de forma detalhada lá, caso você tenha alguma dificuldade ou necessite ver com maiores detalhes. Entretanto, está em inglês (nada como o Google Translator não resolva, rs), sem mais delongas veja o script:

Finalizando o script, no meu caso, deixei o nome como blink.js. Abra o prompt de comando e digite o comando node blink.js. Em seguida, o programa será executado e a mensagem ficará, confirme imagem abaixo:

Bom galera esse é o exemplo, mais simples, de utilização de CylonJS com Arduino.Creio que, seja válido para um bom aprendizado e quem já está habituado a trabalhar com javascript, tem uma opção vantajosa para alguns testes, tenho mais alguns exemplos com CylonsJS no meu Github. São exemplos simples  com leds, relays, de um curso que fiz na Udemy.

Bom, eu espero que o artigo tenha lhe auxiliado! Se gostou da postagem, tem alguma dúvida ou sugestão, não deixe de comentar aqui embaixo! Terei o prazer de responder e, juntos, aprender um pouco mais sobre o quão incrível pode ser a Engenharia.

Gostou? Compartilhe e de seu feedback! Isso é fundamental para melhorarmos nosso conteúdo e produzir, ainda mais, artigos para ajudar mais e mais pessoas.

Muito obrigado e até a próxima!

Yhan Christian

 

0 Comentários

Deixe seu comentário.