Estando a testar um novo componente eletrónico que adquiri recentemente voltei, à semelhança do que já me tinha acontecido com o SR04, a defrontar-me com a lentidão imposta pelo S4A na comunicação com o arduino, cuja atualização dos estados dos atuadores e dos sensores é feita a cada 75 ms.
No próprio site do S4A, encontrei uma plataforma de programação de arduino por blocos alternativa, o Snap4Arduino, que está a ser desenvolvida pela mesma equipa do S4A. Os pontos fortes e fracos do Snap4Arduino são, de acordo com a equipa que o desenvolve:
Pontos fortes:
- Corre em praticamente todas as placas Arduino (incluindo a Mega e a Nano);
- Os pinos do arduino podem ser configurados como entradas ou saídas (ao contrário do que acontece no S4A, onde estamos limitados à definição de entradas e saídas imposta pelo firmware);
- Resposta 7 vezes mais rápida que o S4A;
- Interage com várias placas ao mesmo tempo;
- Permite a criação de novos blocos;
- Usa firmware standard Firmata;
- Faz a tradução de pequenos programas para C (ainda em versão experimental - eu tentei e não consegui...).
Pontos fracos:
- Não é compatível com o S4A.
A instalação do Snap4Arduino é feita a partir do respetivo site: http://s4a.cat/snap/
Para que a comunicação entre o Snap4Arduino e a placa de Arduino seja possível, é necessário fazer o upload para a placa arduino do Firmata, pequeno programa que tem a vantagem de estar já incluído nos exemplos do software do próprio Arduino. Assim, há simplesmente que:
- Abrir o software do arduino (caso necessário, fazer o download a partir de: https://www.arduino.cc/en/Main/Software);
- Selecionar o menu "File -- > Examples -- > Firmata -- > StandardFirmata";
- Efetuar o upload do programa para a placa de arduino.
O Snap4Arduino está pronto para comunicar com a placa.
O ambiente do Snap4Arduino é muito parecido com o do S4A e estou convencida que quem trabalha com um, começará a trabalhar com facilidade com outro:
A linguagem de programação é muito idêntica. Um exemplo de um LED ligado à saída 13 a piscar 10 vezes:
Como importante diferença, o facto de podermos escolher as entradas e as saídas:
Com alguma expectativa no uso deste software para controlar componentes mais rápidos. Assim que tiver tempo de o explorar, darei notícias...
Fico no aguardo de noticias
ResponderEliminar