Druida Tool’s Suite – Atualização de Compatibilidade On-Line

Na última grande atualização do Druida, foi acrescentado uma plataforma on-line de aprendizado, porém para isso foi utilizado uma tecnologia que era exclusividade do Windows 10, e do .Net Framework 4.7.1, recursos nem sempre disponíveis em todas as máquinas.

O que foi feito?

Para resolver este problema, a plataforma de treinamento foi migrada para um controle do Internet Explorer 10, que é um software presente em todas as máquinas com o Sistema Operacional Windows 7 ou superior instalado.

Além disso, foi possível realizar o downgrade do Framework para a versão 4.0. O windows 7 tem incluído o Framework 3.5, mas a maioria dos software modernos usa a versão 4.0, o que torna indispensável a atualização desse mecanismo para os usuários desse sistema.

O que muda?

Não foi eliminado ou adicionado nenhum recurso do programa, as novas alterações vão permitir uma robustez maior no que diz respeito a compatibilidade do software com os sistemas operacionais mais utilizados atualmente.

Download

Para realizar o download da versão atualizada clique neste link.

Anúncios

Introdução ao Druida IDE Lite

Selecione uma das categorias abaixo em tópicos de ajuda, para navegar diretamente a algum artigo de seu interesse.

Bem vindo ao Druida IDE Lite

O Druida IDE Lite, se trata de uma plataforma de desenvolvimento gratuita voltada para programação de placas baseadas em Arduino. Através dele, você será capaz de editar, compilar e depurar o seu código, bem como enviá-lo para sua placa através de uma interface simples e intuitiva. Além de possuir o editor e o depurador padrão presentes na IDE convencional do Arduino, também estão inclusas ferramentas para auto-preenchimento de código, gerenciador de erros, gerenciador de placas, sistema serial data-logger, e uma infinidade de outros recursos para facilitar o desenvolvimento do seu projeto.

A imagem acima, demonstra a tela inicial do software. A sua área de trabalho, pode ser dividida em cinco partes principais as quais serão descritas abaixo:

1 – Barra de Ferramentas: No topo da tela, apresenta as principais ferramentas do programa divididas em seis categorias

2 – Arquivos (lateral esquerda): Apresenta os arquivos do seu projeto

3 – Objetos (lateral inferior esquerda): Apresenta os objetos detectados no seu código pelo sistema intellisense. Com um duplo clique você pode ser levado diretamente a qualquer um desses itens

4 – Editor de código (parte central): Local onde é demonstrado e editado o conteúdo de um dos arquivos do seu projeto. É possível abrir vários arquivos ao mesmo tempo, e navegar entre eles através das abas.

5 – Janela de saída (parte inferior): Local por onde o Druida irá enviar informações gerais como erros, avisos, ou mesmo dados detectados na porta serial. Esta tela é dividida em três categorias.

Índice

  1. Recursos adicionais
  2. Instalação do Software
  3. Criando e enviando um projeto
  4. Utilizando o IntelliSense

1 – Recursos adicionais

1 – IntelliSense: Se trata de um mecanismo capaz de apresentar informações acerca da estrutura do código fonte diretamente no editor.

2 – Gerenciador de Exemplos: Uma janela capaz de apresentar em formato de árvore, todos os exemplos detectados nas pastas definidas, bem como o seu código fonte, descrição e esquemático, caso tais informações existam na pasta do exemplo selecionado.

3 – Lista de erros: Exibe os erros detectados pelo compilador em forma de lista, com sua descrição em português, bem como o nome do arquivo fonte, e a linha em que o erro foi detectado. Leva o usuário diretamente ao erro no código fonte através de um duplo-clique.

4 – Serial Data-Logger: Consegue registrar informações importantes como data, hora, e origem de uma mensagem recebida pela porta serial, permitindo que o usuário possa salvar facilmente essas informações no projeto.

5 – Gerenciador de Placas: Exibe as placas instaladas em forma de árvore, bem como sua imagem e descrição resumida. Permite selecionar placas favoritas, para que elas possam ser exibidas na tela-inicial do software e possam ser selecionadas facilmente.

2 – Instalação do Software

Para começar a utilizar o programa, realize o seu download através deste link. Após o download, descompacte o conteúdo do arquivo para a pasta “Arquivos de Programas” do seu sistema operacional, normalmente presente neste diretório: “C:\Program Files (x86)”. Feito isso, você pode iniciar o programa através do executável “Druida IDE Lite”. Se desejar, você pode criar um atalho na área de trabalho clicando com o botão direito do mouse e selecionando Enviar para > Área de Trabalho (Criar Atalho). Dê um clique duplo no executável “Druida IDE Lite”.

OBS.: É importante ressaltar que é necessário possuir a IDE padrão do Arduino já instalada na máquina, pois a mesma possui arquivos e drivers necessários para a correta comunicação entre o Druida e a sua placa.

3 – Criando e enviando um projeto

1 – Para criar um novo projeto, clique no botão novo na barra de ferramentas superior.

2 – Informe o título do projeto, e nome do arquivo-fonte principal do projeto, e clique em “Criar Projeto”

Feito isso, será exibido a tela principal de edição do seu código fonte, conforme demonstrado abaixo.

Observe que o arquivo principal do código fonte, é automaticamente criado com os dois procedimentos principais do Arduino já inclusos (setup e loop). Você pode expandir ou ocultar trechos de código delimitados por colchetes (“{}”) utilizando os botões ‘-‘ e ‘+’ respectivamente. Os objetos presentes no seu código, serão listados na lista de objetos, e irão de ajudar a navegar mais facilmente pelo seu código.

3 – Você pode selecionar o modelo da placa utilizada na barra de ferramentas, na aba “Projeto”. Por padrão, o Druida lista os três modelos de placa mais utilizadas do mercado que são a NANO, UNO e MEGA.


Caso seja necessário selecionar outra placa, é possível encontrar outros modelos clicando no botão “Hardware” na mesma seção da barra de ferramentas superior.

No gerenciador de placas, você pode expandir ou ocultar um grupo de placas clicando nos botões ‘+’ e ‘-‘. Para selecionar uma placa, basta clicar sobre o seu nome, e para adicioná-la ou remove-la aos favoritos basta clicar na estrela. As placas adicionadas aos favoritos aparecem na barra de ferramentas superior, permitindo uma seleção mais rápida da mesma.

Note que a seleção da sua placa, ficará salva no seu projeto. Dessa forma, você só precisa selecioná-la uma vez, mesmo que trabalhe com vários modelos diferentes em outros projetos.

4 – Você pode selecionar a porta de comunicação na barra de ferramentas superior, na seção “Projeto”.

Caso não exista nenhum outro dispositivo conectado a uma porta serial do seu computador, o programa irá selecionar a porta da sua placa automaticamente, no momento em que você ligar o cabo USB. Para verificar e selecionar a porta correta, observe que o programa gera uma notificação de dispositivo detectado informando a porta, no momento em que é plugado o cabo USB.

5 – Para enviar o código, utilize o botão “Upload”, também presente na barra de ferramentas superior na guia “Projeto”.

Feito isso, o código será enviado para a placa. No caso, o led da “porta 13” e os leds das portas “RX” e “TX” deverão manter-se apagados após o envio, pois os procedimentos do código-fonte do projeto estão completamente vazios.

4 – Utilizando o IntelliSense

1 – Vamos criar nosso primeiro código, cujo o objetivo será piscar o led da placa no intervalo de 1 segundo. Dentro do void setup, iremos configurar o pino onde está conectado o led da placa como saída. Digite a letra ‘p’ dentro do ‘void setup’ e navegue até o comando ‘pinMode’ na lista gerada pelo IntelliSense.

Perceba, que temos uma descrição detalhada do objetivo desse comando, bem como dos parâmetros necessários para o seu uso. Pressione a tecla “TAB” ou a tecla “Enter” para selecionar o comando “pinMode”. Para o parâmetro ‘pino’, utilizaremos a constante “LED_BUILTIN”, que obtém em qual pino está ligado o led da placa (normalmente o pino 13). Para o parâmetro ‘modo’, utilizaremos a constante “OUTPUT”, para configurar o pino como saída. Note que ambas as constantes, e suas descrições estão presentes no Intellisense. O nosso ‘void setup()’ deverá ficar da seguinte forma:

void setup()
{
  // coloque aqui o seu código de configuração para ser executado uma vez:
  pinMode(LED_BUILTIN, OUTPUT);
}

2 – Agora vamos criar o código responsável por piscar o led. Dentro do ‘void loop()’ acrescente as seguintes linhas de código:

digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);

Feito isso, o código está pronto. Segue abaixo o arquivo completo para referência:

//*************************************************************************************************/
//   Projeto    : Novo Projeto
//   Arquivo    : NovoProjeto.ino
//   Descrição  : Configurações e loop principal
//   Data       : 24/03/2019
//*************************************************************************************************/

void setup()
{
  // coloque aqui o seu código de configuração para ser executado uma vez:
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop()
{
  // coloque seu código principal aqui, para executar repetidamente:
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}

Agora basta enviar o código, e verificar o seu funcionamento através do led da placa, que deverá piscar dentro do intervalo de 1 segundo. Com essas dicas básicas, você já está pronto para começar a utilizar o Druida IDE Lite.

Druida IDE Lite – Lançamento oficial

É com muito prazer que anunciamos oficialmente o lançamento do nosso primeiro software em sua versão final, o Druida IDE Lite. O no sistema se trata de uma plataforma de desenvolvimento para placas baseadas em Arduino totalmente gratuita, focada em desenvolvimento do código fonte.

Recursos da plataforma

Esse novo sistema, possui uma infinidade de facilidades, que irão acelerar a construção do código fonte, facilitar a organização da estrutura do programa, bem como auxiliar o usuário no processo de aprendizado. Segue abaixo os principais recursos que você pode obter, ao migrar para nossa plataforma:

  1. Intellisense: Apresenta todos os trechos de código compatíveis com c++, e com o Arduino, bem como a sua descrição detalhada, durante a digitação do usuário.
  2. Dicas rápidas: Basta posicionar o mouse sobre um trecho de código, para obter uma descrição rápida de qual é a função daquela estrutura.
  3. Sistema totalmente dinâmico: Existe uma inteligência por trás da interface, que analisa o código conforme o usuário adiciona linhas de programação, interpretando essas linhas e realimentando o sistema Intellisense.
  4. Lista de erros organizada: os erros encontrados, são automaticamente organizados na forma de uma lista, e para ser levado ao trecho de código em que foi detectado o erro, basta um duplo-clique em qualquer item listado.
  5. Gerenciamento inteligente de código: Todos os elementos criados são listados em forma de árvore, na qual podem ser aplicados filtros, que permitem uma percepção e uma navegação mais simplificada do código.
  6. Gerenciamento de arquivos: Divida códigos maiores em vários arquivos diferentes, cada um responsável por uma parte do seu projeto.

Download

Para acessar a página de download do programa, clique neste link.

Não esqueça de deixar nos comentários as suas impressões a respeito do programa, a sua opinião é muito importante para nós!

Druida Tool’s Suite 1.3.2 já está on-line

Hoje está sendo lançado oficialmente a versão 1.3.2. Foi implementada uma melhoria significativa, duas melhorias menores, e corrigido dois erros mais simples do programa.

A principal melhoria dessa versão, é a integração entre o nosso web-site, e a ferramenta de desenvolvimento. Além de tornar a interface extremamente elegante, essa melhoria permite que o usuário possa realizar downloads, acessar tutoriais, bem como ficar por dentro das últimas notícias. Também é possível reportar algum bug, direto da tela inicial, o que provavelmente vai acelerar muito a correção de erros, e o desenvolvimento do software.

Veja abaixo o relatório dessa atualização:

  1. Melhorias significativas:
    1. Integração da plataforma windows, com o website.
  2. Melhorias simples:
    1. O preset de arquivo padrão do Druida, agora vem com baud rate de 115200 e tempo de aquisição de 10ms, valores que são mantidos estáveis devido a melhorias no protocolo de comunicação.
    2. Alteração nos ícones das sugestões de código se adequando ao padrão mais utilizado na maioria dos programas de desenvolvimento.
    3. Acrescentado recurso que realiza a leitura dos arquivos “.h” criados pelo usuário, listando-os nas sugestões de código.
  3. Correção de erros:
    1. Remoção do caracter “;” que aparecia nas sugestões de código originadas de arquivos “.h”

Segundo o planejamento realizado, essa se trata da última melhoria de grande porte, realizada na fase Beta. Por esse motivo, a versão saiu de 0.X para 1.X.X. Agora, os esforços irão se voltar para eliminar os bugs, e tornar a plataforma o mais estável possível.

Lançamento oficial do Druida FREE EDITION

Hoje se deu o lançamento oficial da versão gratuita, da nova plataforma de programação para o Arduino, o Druida Tool’s Suite. Após uma intensa bateria de testes e melhorias finais, foi possível perceber que o software já está robusto o suficiente para possibilitar o uso pleno das suas ferramentas mais relevantes.

Vídeo demonstrando uma visão geral da plataforma

Esse novo sistema apresenta uma infinidade de ferramentas, capazes de auxiliar usuários recém chegados ao universo da programação e da automação, bem como oferecer novas possibilidades aos desenvolvedores mais experientes. Em resumo, a plataforma é uma verdadeira ‘caixa de areia’ para aqueles que pretendam utilizar o Arduino em seus projetos.

Dentre os principais recursos da nova IDE, podemos destacar o sistema integrado de desenvolvimento para interfaces de controle e monitoramento. O grau de conforto entre arrastar um botão virtual para a tela, e vislumbrar o Druida gerar automaticamente o código de programação do componente para o Arduino, é imenso. Além disso, o programa já possui um protocolo lógico de comunicação implementado, o que significa que o usuário só precisa se preocupar com o próprio código fonte, e esquecer as dores de cabeça geradas quando se é necessário programar uma rede de comunicação do zero.

O programa esta sendo lançado em sua fase ‘Alpha’, o que significa que ainda existem vários bugs e problemas a serem corrigidos. Ainda assim, é possível utilizar a grande maioria dos recursos, sem grandes problemas. A versão gratuita do Druida, disponibiliza todas as suas ferramentas por tempo ilimitado, tendo como única limitação a impossibilidade de salvar o projeto. Para liberar esse recurso, é necessário realizar a pré-venda do programa, o que pode ser feito clicando aqui.

Para começar a utilizar o programa, acesse a seção ‘Downloads’ do site, clicando aqui.

Gostou do post? Deixe seu comentário logo abaixo! Leva pouco tempo, e vai motivar quem o criou, a continuar o seu trabalho.

Druida Tool’s Suite: A plataforma ideal para iniciantes em Arduino

Após mais de seis meses de desenvolvimento, foi anunciado hoje que a versão Alpha do Druida Tool’s Suite está pronta para se utilizada. Isso significa que em breve teremos disponível o link para o download do programa, mas afinal, quais seriam os interessados em iniciar o uso desse novo sistema? Na realidade, inicialmente a plataforma nasceu para possibilitar que indivíduos sem o mínimo de conhecimento em programação, conseguissem criar aplicações Windows, capazes de controlar dispositivos conectados ao Arduino. É notável, que esse aspecto foi perdendo status de protagonista ao longo do desenvolvimento do software, mas ele não foi abandonado.

Tela inicial do Druida Tool’s Suite

Assim que o programa é aberto, ele apresenta uma opção para que o usuário escolha o método de programação: “Simples” ou “Avançado”. O método “Simples”, se trata de uma porta de abertura, que permiti-rá ao usuário criar telas de comando, sem que exista o mínimo contato com linhas de código. É claro, que se torna impossível desenvolver um sistema autônomo, ou um processo automatizado, mas ainda assim as possibilidades tragas são imensas. Projetos como um sistema de monitoramento e controle de uma residência, ou o comando de um robô móvel através do teclado e até de um joystick conectados ao computador, se tornam possíveis, sem absolutamente nenhuma dor de cabeça com programação.

Interface de configuração do Druida Tool’s Suite

A interface do programa, é altamente amigável, possuindo uma pequena quantidade de ícones, com os quais é possível realizar uma imensa quantidade de ações. Para desenvolver um projeto funcional o usuário precisa seguir três passos simples:

  1. Configurar o Arduino: Na interface de configuração, o usuário seleciona o modelo da placa entre o ‘NANO’ ou o ‘UNO’, configura as portas do Arduino, e envia a configuração para a placa. Caso seja a primeira vez, o software irá realizar a atualização do firmware.
  2. Construção das interfaces de controle: Na janela de controle, o usuário pode criar várias telas, e posicionar vários componentes, vinculando-os as portas do Arduino, de forma fácil e simples.
  3. Conectar-se a placa: Por fim, através do botão “Conectar”, as interfaces passam a se comunicar com o Arduino. Os componentes criados já se tornam funcionais, podendo o usuário realizar acionamentos ou monitorar sinais através deles.
Interface de Edição do Druida Tool’s Suite no Modo Simples

Para um usuário iniciante, se deparar com uma plataforma que lhe dê tamanho poder criativo, antes mesmo de se deparar com o ‘monstro’ que talvez ele acredite ser a programação, acaba sendo um fator crucial para o seu aprendizado. Isso permitirá que ele possa entender melhor como funciona o hardware do Arduino, o que é possível fazer com suas portas digitais e analógicas, além de manter um contato inicial mais amigável, o que possivelmente o motivará a se aprofundar nesse universo.

Vídeo de demonstração do Druida Tool’s Suite no Modo Simples

O Início de Tudo

No dia 6 de Junho de 2018, se deu início ao primeiro projeto da BINARY_QUANTUM: O Druida Tool’s Suite. O primeiro software, ainda em desenvolvimento na data de postagem desse artigo, começou de uma pequena ideia. A intenção era facilitar a união entre uma das placas de prototipagem mais utilizadas no planeta, o Arduino; com um computador convencional. Em suma, o software a ser produzido, deveria permitir que seus usuários construíssem interfaces de comando, sendo elas capazes de realizar acionamentos no Arduino através de periféricos conectados ao computador. Mas ao longo do seu desenvolvimento, idéias ambiciosas surgiram, e na medida que apareciam, iam sendo implementadas no programa.

Desenvolvimento das primeiras telas do software, no ambiente do Visual Studio

O seu desenvolvimento, iniciou-se no ambiente do Visual Studio, sendo utilizada a versão gratuita, o Visual Studio Community 2017. A linguagem utilizada permanece até o momento, sendo o Visual Basic.

O primeiro grande desafio do projeto, foi desenvolver a lógica de um protocolo de comunicação dinâmico, capaz de permitir a troca de informações entre o programa desenvolvido no Visual Studio, e o Arduino. É possível encontrar vários protocolos abertos na internet, como o Modbus por exemplo. Porém, a ideia era desenvolver um protocolo próprio, para que o desenvolvedor tivesse completo domínio do seu funcionamento. Além disso, foi estabelecido que o seu código fonte, deveria ser o mais didático possível, para facilitar a sua compreensão por parte dos futuros usuários do programa.

Após várias xícaras de café, e algumas dezenas de linhas de código revisadas, deu-se forma ao protocolo BqBusCmd. Com um código de programação que não ultrapassava a 200 linhas, ele se mostrou capaz de estabelecer uma comunicação dinâmica, trafegando até 256 palavras de dados, em uma rede serial ponto a ponto.

Sua lógica é bem simples, as palavras de rede são separadas por pontos, e o final da comunicação é sinalizado com um travessão.

Teste do protocolo BqBusCmd no Serial Monitor do Arduino

O segundo desafio, foi tornar o software capaz de enviar um programa para o microcontrolador da placa. Através de uma pesquisa rápida na internet, fica claro que a forma mais simples de enviar um programa para o Arduino fora do seu ambiente de desenvolvimento, é através de ‘linhas de comando’ executadas pelo CMD do Windows, em conjunto com o software ‘avrdude.exe’.

Tela de atualização do firmware, onde é enviado o arquivo ‘.hex’ para o Arduino

O último desafio enfrentado nas etapas iniciais do projeto, foi criar um editor de interfaces, que permitisse ao usuário criar componentes, ajustar o seu tamanho e sua posição, e que fosse possível salvar/carregar as informações no disco rígido do computador. Essa foi certamente a etapa mais complexa. Para conseguir resolver esse problema, foi criada uma ‘engine’ dentro do Visual Studio, capaz de gerenciar controles personalizados. Sua principal função é realizar o escaneamento da tela, e obter os principais atributos dos controles criados pelo usuário, os manipulando de acordo com a operação realizada. É ela que executa as funções “Desfazer”, “Refazer”,”Copiar”, “Recortar”, “Colar”, e as operações responsáveis por “Salvar” ou “Carregar” a tela criada pelo usuário.

Edição de uma interface com o Druida Tool’s Suite

Após essas três etapas, o fluxo do desenvolvimento foi direcionado basicamente para a inclusão de ferramentas com o objetivo de trazer diferenciais para o programa. Existe uma quantidade imensa de softwares dedicados a interligar o Arduino a uma interface de controle e monitoramento, porém o grande diferencial que foi incluído no Druida Tool’s Suite, é a possibilidade de desenvolver a interface e o código fonte do Arduino, utilizando uma única plataforma.

O que parecia inicialmente um projeto simples, acabou se tornando extremamente ambicioso, e provavelmente a coletânea dos maiores desafios enfrentados no desenvolvimento de um software ao longo da minha carreira. Até onde ele pode chegar, confesso que não sou capaz de imaginar, mas posso afirmar, que a experiência obtida já valeu cada segundo gasto em seu desenvolvimento.

Gostou do post? Deixe seu comentário logo abaixo! Leva pouco tempo, e vai motivar quem o criou, a continuar o seu trabalho.